diff options
author | Florian Dold <florian.dold@gmail.com> | 2016-10-13 18:22:31 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2016-10-13 18:22:31 +0200 |
commit | 34fe54e83ccbe114ffa144ab1304a53a2147b0c8 (patch) | |
tree | e32bd908c1bd7adff7543f5de2982f7138ef83f0 /lib/emscripten/taler-emscripten-lib.js | |
parent | e4cafe672d07781c4cfcfa3b9d0e062ce367646c (diff) | |
download | wallet-core-34fe54e83ccbe114ffa144ab1304a53a2147b0c8.tar.xz |
rename taler emscripten lib
Diffstat (limited to 'lib/emscripten/taler-emscripten-lib.js')
-rw-r--r-- | lib/emscripten/taler-emscripten-lib.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/emscripten/taler-emscripten-lib.js b/lib/emscripten/taler-emscripten-lib.js new file mode 100644 index 000000000..9e97ae6eb --- /dev/null +++ b/lib/emscripten/taler-emscripten-lib.js @@ -0,0 +1,24 @@ +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);return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function 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){abort("NO_DYNAMIC_EXECUTION=1 was set, cannot eval")}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){assert(args.length==sig.length-1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{assert(sig.length==1);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){if(sig.length===1){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func)}}else if(sig.length===2){sigCache[func]=function dynCall_wrapper(arg){return Runtime.dynCall(sig,func,[arg])}}else{sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,Array.prototype.slice.call(arguments))}}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;assert((STACKTOP|0)<(STACK_MAX|0)|0)|0;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+(assert(!staticSealed),size)|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+(assert(DYNAMICTOP>0),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){abort("NO_DYNAMIC_EXECUTION=1 was set, cannot eval")}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;assert(returnType!=="array",'Return type should not be "array".');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((!opts||!opts.async)&&typeof EmterpreterAsync==="object"){assert(!EmterpreterAsync.state,"cannot start async op with normal JS calling ccall")}if(opts&&opts.async)assert(!returnType,"async ccalls cannot return values");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};cwrap=function cwrap(ident,returnType,argTypes){return(function(){Runtime.warnOnce("NO_DYNAMIC_EXECUTION was set, "+"using slow cwrap implementation");return ccall(ident,returnType,argTypes,arguments)})}}))();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}assert(type,"Must know what type to store in allocate!");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){assert(ptr+i<TOTAL_MEMORY);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){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");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){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){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(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}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 writeStackCookie(){assert((STACK_MAX&3)==0);HEAPU32[(STACK_MAX>>2)-1]=34821223;HEAPU32[(STACK_MAX>>2)-2]=2310721022}function checkStackCookie(){if(HEAPU32[(STACK_MAX>>2)-1]!=34821223||HEAPU32[(STACK_MAX>>2)-2]!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x"+HEAPU32[(STACK_MAX>>2)-2].toString(16)+" "+HEAPU32[(STACK_MAX>>2)-1].toString(16))}}function abortStackOverflow(allocSize){abort("Stack overflow! Attempted to allocate "+allocSize+" bytes on the stack, but stack has only "+(STACK_MAX-asm.stackSave()+allocSize)+" bytes available!")}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){Module.printErr("increasing TOTAL_MEMORY to "+totalMemory+" to be compliant with the asm.js spec (and given that TOTAL_STACK="+TOTAL_STACK+")");TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");if(Module["buffer"]){buffer=Module["buffer"];assert(buffer.byteLength===TOTAL_MEMORY,"provided buffer should be "+TOTAL_MEMORY+" bytes, but it is "+buffer.byteLength)}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(){checkStackCookie();if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){checkStackCookie();callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){checkStackCookie();callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){checkStackCookie();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){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.");chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}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){assert(str.charCodeAt(i)===str.charCodeAt(i)&255);HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval((function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;Module.printErr("still waiting on run dependencies:")}Module.printErr("dependency: "+dep)}if(shown){Module.printErr("(end of list)")}}),1e4)}}else{Module.printErr("warning: run dependency added without ID")}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{Module.printErr("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+77136;__ATINIT__.push({func:(function(){_GNUNET_util_cl_init()})},{func:(function(){_GNUNET_CRYPTO_random_init()})},{func:(function(){_gpg_err_init()})});allocate([0,0,0,0,0,0,0,0,102,154,0,127,199,106,69,159,152,186,249,23,254,223,149,34,17,154,0,127,199,106,69,159,152,186,249,23,254,223,149,51,6,154,0,127,199,106,69,159,152,186,249,23,254,223,149,33,255,255,255,255,255,255,255,255,34,174,40,215,152,47,138,66,205,101,239,35,145,68,55,113,47,59,77,236,207,251,192,181,188,219,137,129,165,219,181,233,56,181,72,243,91,194,86,57,25,208,5,182,241,17,241,89,155,79,25,175,164,130,63,146,24,129,109,218,213,94,28,171,66,2,3,163,152,170,7,216,190,111,112,69,1,91,131,18,140,178,228,78,190,133,49,36,226,180,255,213,195,125,12,85,111,137,123,242,116,93,190,114,177,150,22,59,254,177,222,128,53,18,199,37,167,6,220,155,148,38,105,207,116,241,155,193,210,74,241,158,193,105,155,228,227,37,79,56,134,71,190,239,181,213,140,139,198,157,193,15,101,156,172,119,204,161,12,36,117,2,43,89,111,44,233,45,131,228,166,110,170,132,116,74,212,251,65,189,220,169,176,92,181,83,17,131,218,136,249,118,171,223,102,238,82,81,62,152,16,50,180,45,109,198,49,168,63,33,251,152,200,39,3,176,228,14,239,190,199,127,89,191,194,143,168,61,243,11,224,198,37,167,10,147,71,145,167,213,111,130,3,224,81,99,202,6,112,110,14,10,103,41,41,20,252,47,210,70,133,10,183,39,38,201,38,92,56,33,27,46,237,42,196,90,252,109,44,77,223,179,149,157,19,13,56,83,222,99,175,139,84,115,10,101,168,178,119,60,187,10,106,118,230,174,237,71,46,201,194,129,59,53,130,20,133,44,114,146,100,3,241,76,161,232,191,162,1,48,66,188,75,102,26,168,145,151,248,208,112,139,75,194,48,190,84,6,163,81,108,199,24,82,239,214,25,232,146,209,16,169,101,85,36,6,153,214,42,32,113,87,133,53,14,244,184,209,187,50,112,160,106,16,200,208,210,184,22,193,164,25,83,171,65,81,8,108,55,30,153,235,142,223,76,119,72,39,168,72,155,225,181,188,176,52,99,90,201,197,179,12,28,57,203,138,65,227,74,170,216,78,115,227,99,119,79,202,156,91,163,184,178,214,243,111,46,104,252,178,239,93,238,130,143,116,96,47,23,67,111,99,165,120,114,171,240,161,20,120,200,132,236,57,100,26,8,2,199,140,40,30,99,35,250,255,190,144,233,189,130,222,235,108,80,164,21,121,198,178,247,163,249,190,43,83,114,227,242,120,113,198,156,97,38,234,206,62,39,202,7,194,192,33,199,184,134,209,30,235,224,205,214,125,218,234,120,209,110,238,127,79,125,245,186,111,23,114,170,103,240,6,166,152,200,162,197,125,99,10,174,13,249,190,4,152,63,17,27,71,28,19,53,11,113,27,132,125,4,35,245,119,219,40,147,36,199,64,123,171,202,50,188,190,201,21,10,190,158,60,76,13,16,156,196,103,29,67,182,66,62,203,190,212,197,76,42,126,101,252,156,41,127,89,236,250,214,58,171,111,203,95,23,88,71,74,140,25,68,108,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,133,84,0,0,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,68,88,0,0,2,0,0,0,80,88,0,0,4,0,0,0,92,88,0,0,8,0,0,0,104,88,0,0,16,0,0,0,117,88,0,0,32,0,0,0,127,88,0,0,64,0,0,0,138,88,0,0,128,0,0,0,150,88,0,0,0,1,0,0,163,88,0,0,0,2,0,0,175,88,0,0,0,4,0,0,188,88,0,0,0,8,0,0,198,88,0,0,0,16,0,0,209,88,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,2,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,0,0,0,0,1,0,0,0,17,0,0,0,0,0,0,0,100,17,0,0,156,28,0,0,16,29,0,0,112,32,0,0,176,48,0,0,0,0,0,0,241,139,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,133,95,0,0,200,95,0,0,206,95,0,0,18,96,0,0,85,96,0,0,152,96,0,0,219,96,0,0,224,96,0,0,192,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,235,96,0,0,30,97,0,0,81,97,0,0,132,97,0,0,183,97,0,0,234,97,0,0,29,98,0,0,34,98,0,0,224,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,45,98,0,0,104,98,0,0,163,98,0,0,222,98,0,0,25,99,0,0,84,99,0,0,29,98,0,0,143,99,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,154,99,0,0,221,99,0,0,32,100,0,0,99,100,0,0,166,100,0,0,233,100,0,0,29,98,0,0,44,101,0,0,128,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,55,101,0,0,154,101,0,0,253,101,0,0,96,102,0,0,195,102,0,0,38,103,0,0,29,98,0,0,137,103,0,0,9,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,148,103,0,0,27,104,0,0,162,104,0,0,40,105,0,0,174,105,0,0,53,106,0,0,29,98,0,0,188,106,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,204,106,0,0,247,106,0,0,34,107,0,0,77,107,0,0,120,107,0,0,163,107,0,0,29,98,0,0,206,107,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,222,107,0,0,17,108,0,0,68,108,0,0,119,108,0,0,170,108,0,0,221,108,0,0,29,98,0,0,16,109,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,109,0,0,91,109,0,0,150,109,0,0,209,109,0,0,12,110,0,0,71,110,0,0,29,98,0,0,130,110,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,146,110,0,0,213,110,0,0,24,111,0,0,91,111,0,0,158,111,0,0,225,111,0,0,29,98,0,0,36,112,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,112,0,0,135,112,0,0,218,112,0,0,45,113,0,0,128,113,0,0,211,113,0,0,29,98,0,0,38,114,0,0,128,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,114,0,0,153,114,0,0,252,114,0,0,95,115,0,0,194,115,0,0,37,116,0,0,29,98,0,0,136,116,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,116,0,0,27,117,0,0,158,117,0,0,33,118,0,0,164,118,0,0,39,119,0,0,29,98,0,0,170,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,119,0,0,251,119,0,0,62,120,0,0,129,120,0,0,196,120,0,0,7,121,0,0,29,98,0,0,74,121,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,121,0,0,162,121,0,0,229,121,0,0,40,122,0,0,107,122,0,0,174,122,0,0,29,98,0,0,241,122,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,123,0,0,73,123,0,0,140,123,0,0,207,123,0,0,107,122,0,0,18,124,0,0,29,98,0,0,85,124,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,106,124,0,0,173,124,0,0,240,124,0,0,51,125,0,0,118,125,0,0,185,125,0,0,29,98,0,0,252,125,0,0,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,126,0,0,251,119,0,0,141,126,0,0,16,127,0,0,147,127,0,0,22,128,0,0,29,98,0,0,153,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,128,0,0,44,129,0,0,175,129,0,0,50,130,0,0,181,130,0,0,56,131,0,0,29,98,0,0,187,131,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,131,0,0,78,132,0,0,209,132,0,0,84,133,0,0,215,133,0,0,90,134,0,0,29,98,0,0,221,134,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,134,0,0,118,125,0,0,251,119,0,0,42,135,0,0,109,135,0,0,176,135,0,0,29,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,241,139,0,0,243,135,0,0,224,96,0,0,10,136,0,0,224,96,0,0,30,136,0,0,224,96,0,0,41,136,0,0,224,96,0,0,51,136,0,0,34,98,0,0,60,136,0,0,34,98,0,0,70,136,0,0,34,98,0,0,83,136,0,0,143,99,0,0,92,136,0,0,143,99,0,0,112,136,0,0,143,99,0,0,123,136,0,0,143,99,0,0,133,136,0,0,44,101,0,0,142,136,0,0,44,101,0,0,152,136,0,0,44,101,0,0,165,136,0,0,137,103,0,0,174,136,0,0,137,103,0,0,184,136,0,0,137,103,0,0,197,136,0,0,188,106,0,0,206,136,0,0,206,107,0,0,227,136,0,0,16,109,0,0,248,136,0,0,130,110,0,0,13,137,0,0,36,112,0,0,34,137,0,0,38,114,0,0,55,137,0,0,136,116,0,0,77,137,0,0,170,119,0,0,99,137,0,0,74,121,0,0,116,137,0,0,241,122,0,0,133,137,0,0,85,124,0,0,150,137,0,0,74,121,0,0,167,137,0,0,85,124,0,0,191,137,0,0,74,121,0,0,215,137,0,0,85,124,0,0,232,137,0,0,153,128,0,0,249,137,0,0,187,131,0,0,13,138,0,0,221,134,0,0,33,138,0,0,0,0,0,0,0,0,0,0,45,141,0,0,59,141,0,0,88,141,0,0,163,14,1,9,139,198,219,191,69,105,15,58,126,158,109,15,139,190,162,163,158,97,72,0,143,208,94,68,93,141,0,0,107,141,0,0,116,141,0,0,137,111,177,18,138,187,223,25,104,50,16,124,212,157,243,63,71,180,177,22,153,18,186,79,83,104,75,34,137,141,0,0,152,141,0,0,203,141,0,0,127,179,203,53,136,198,193,246,255,169,105,77,125,106,210,100,147,101,176,193,246,93,105,209,236,131,51,234,224,141,0,0,239,141,0,0,34,142,0,0,108,17,80,104,116,1,60,172,106,42,188,27,179,130,98,124,236,106,144,216,110,252,1,45,231,175,236,90,60,142,0,0,76,142,0,0,131,142,0,0,149,233,160,219,150,32,149,173,174,190,155,45,111,13,188,226,212,153,241,18,242,210,183,39,63,166,135,14,7,143,0,0,24,143,0,0,131,142,0,0,58,133,65,102,172,93,159,2,63,84,213,23,208,179,157,189,148,103,112,219,156,43,149,201,246,245,101,209,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,141,0,0,59,141,0,0,88,141,0,0,91,220,193,70,191,96,117,78,106,4,36,38,8,149,117,199,90,0,63,8,157,39,57,131,157,236,88,185,100,236,56,67,93,141,0,0,107,141,0,0,116,141,0,0,176,52,76,97,216,219,56,83,92,168,175,206,175,11,241,43,136,29,194,0,201,131,61,167,38,233,55,108,46,50,207,247,137,141,0,0,152,141,0,0,203,141,0,0,119,62,169,30,54,128,14,70,133,77,184,235,208,145,129,167,41,89,9,139,62,248,193,34,217,99,85,20,206,213,101,254,224,141,0,0,239,141,0,0,34,142,0,0,130,85,138,56,154,68,60,14,164,204,129,152,153,242,8,58,133,240,250,163,229,120,248,7,122,46,63,244,103,41,102,91,60,142,0,0,76,142,0,0,131,142,0,0,96,228,49,89,30,224,182,127,13,138,38,170,203,245,183,127,142,11,198,33,55,40,197,20,5,70,4,15,14,227,127,84,7,143,0,0,24,143,0,0,131,142,0,0,155,9,255,167,27,148,47,203,39,99,95,188,213,176,233,68,191,220,99,100,79,7,19,147,138,127,81,83,92,58,53,226,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,141,0,0,59,141,0,0,88,141,0,0,175,69,210,227,118,72,64,49,97,127,120,210,181,138,107,27,156,126,244,100,245,160,27,71,228,46,195,115,99,34,68,94,142,34,64,202,94,105,226,199,139,50,57,236,250,178,22,73,93,141,0,0,107,141,0,0,116,141,0,0,175,208,57,68,216,72,149,98,107,8,37,244,171,70,144,127,21,249,218,219,228,16,30,198,130,170,3,76,124,235,197,156,250,234,158,169,7,110,222,127,74,241,82,232,178,250,156,182,137,141,0,0,152,141,0,0,203,141,0,0,136,6,38,8,211,230,173,138,10,162,172,224,20,200,168,111,10,166,53,217,71,172,159,235,232,62,244,229,89,102,20,75,42,90,179,157,193,56,20,185,78,58,182,225,1,163,79,39,224,141,0,0,239,141,0,0,34,142,0,0,62,138,105,183,120,60,37,133,25,51,171,98,144,175,108,167,122,153,129,72,8,80,0,156,197,87,124,110,31,87,59,78,104,1,221,35,196,167,214,121,204,248,163,134,198,116,207,251,60,142,0,0,76,142,0,0,131,142,0,0,78,206,8,68,133,129,62,144,136,210,198,58,4,27,197,180,79,158,241,1,42,43,88,143,60,209,31,5,3,58,196,198,12,46,246,171,64,48,254,130,150,36,141,241,99,244,73,82,7,143,0,0,24,143,0,0,131,142,0,0,102,23,23,142,148,31,2,13,53,30,47,37,78,143,211,44,96,36,32,254,176,184,251,154,220,206,187,130,70,30,153,197,166,120,204,49,231,153,23,109,56,96,230,17,12,70,82,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,141,0,0,59,141,0,0,88,141,0,0,22,75,122,123,252,248,25,226,227,149,251,231,59,86,224,163,135,189,100,34,46,131,31,214,16,39,12,215,234,37,5,84,151,88,191,117,192,90,153,74,109,3,79,101,248,240,230,253,202,234,177,163,77,74,107,75,99,110,7,10,56,188,231,55,93,141,0,0,107,141,0,0,116,141,0,0,135,170,124,222,165,239,97,157,79,240,180,36,26,29,108,176,35,121,244,226,206,78,194,120,122,208,179,5,69,225,124,222,218,168,51,183,214,184,167,2,3,139,39,78,174,163,244,228,190,157,145,78,235,97,241,112,46,105,108,32,58,18,104,84,137,141,0,0,152,141,0,0,203,141,0,0,250,115,176,8,157,86,162,132,239,176,240,117,108,137,11,233,177,181,219,221,142,232,26,54,85,248,62,51,178,39,157,57,191,62,132,130,121,167,34,200,6,180,133,164,126,103,200,7,185,70,163,55,190,232,148,38,116,39,136,89,225,50,146,251,224,141,0,0,239,141,0,0,34,142,0,0,176,186,70,86,55,69,140,105,144,229,168,197,246,29,74,247,229,118,217,127,249,75,135,45,231,111,128,80,54,30,227,219,169,28,165,193,26,162,94,180,214,121,39,92,197,120,128,99,165,241,151,65,18,12,79,45,226,173,235,235,16,162,152,221,60,142,0,0,76,142,0,0,131,142,0,0,128,178,66,99,199,193,163,235,183,20,147,193,221,123,232,180,155,70,209,244,27,74,238,193,18,27,1,55,131,248,243,82,107,86,208,55,224,95,37,152,189,15,210,33,93,106,30,82,149,230,79,115,246,63,10,236,139,145,90,152,93,120,101,152,7,143,0,0,24,143,0,0,131,142,0,0,227,123,106,119,93,200,125,186,164,223,169,249,110,94,63,253,222,189,113,248,134,114,137,134,93,245,163,45,32,205,201,68,182,2,44,172,60,73,130,177,13,94,235,85,195,228,222,21,19,70,118,251,109,224,68,96,101,201,116,64,250,140,106,88,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,30,0,0,176,31,0,0,116,30,0,0,240,31,0,0,48,32,0,0,132,29,0,0,0,0,0,0,156,2,0,0,0,147,0,0,2,0,0,0,5,147,0,0,1,0,0,0,9,147,0,0,8,0,0,0,16,147,0,0,3,0,0,0,26,147,0,0,3,0,0,0,33,147,0,0,9,0,0,0,40,147,0,0,10,0,0,0,47,147,0,0,11,0,0,0,54,147,0,0,5,0,0,0,58,147,0,0,45,1,0,0,62,147,0,0,6,0,0,0,68,147,0,0,7,0,0,0,0,0,0,0,0,0,0,0,28,50,0,0,196,29,0,0,0,0,0,0,7,0,0,0,2,0,0,0,218,147,0,0,164,17,0,0,180,17,0,0,16,0,0,0,128,0,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,222,147,0,0,231,147,0,0,238,147,0,0,0,0,0,0,246,147,0,0,1,0,0,0,13,148,0,0,3,0,0,0,36,148,0,0,5,0,0,0,59,148,0,0,2,0,0,0,0,0,0,0,0,0,0,0,198,99,99,165,248,124,124,132,238,119,119,153,246,123,123,141,255,242,242,13,214,107,107,189,222,111,111,177,145,197,197,84,96,48,48,80,2,1,1,3,206,103,103,169,86,43,43,125,231,254,254,25,181,215,215,98,77,171,171,230,236,118,118,154,143,202,202,69,31,130,130,157,137,201,201,64,250,125,125,135,239,250,250,21,178,89,89,235,142,71,71,201,251,240,240,11,65,173,173,236,179,212,212,103,95,162,162,253,69,175,175,234,35,156,156,191,83,164,164,247,228,114,114,150,155,192,192,91,117,183,183,194,225,253,253,28,61,147,147,174,76,38,38,106,108,54,54,90,126,63,63,65,245,247,247,2,131,204,204,79,104,52,52,92,81,165,165,244,209,229,229,52,249,241,241,8,226,113,113,147,171,216,216,115,98,49,49,83,42,21,21,63,8,4,4,12,149,199,199,82,70,35,35,101,157,195,195,94,48,24,24,40,55,150,150,161,10,5,5,15,47,154,154,181,14,7,7,9,36,18,18,54,27,128,128,155,223,226,226,61,205,235,235,38,78,39,39,105,127,178,178,205,234,117,117,159,18,9,9,27,29,131,131,158,88,44,44,116,52,26,26,46,54,27,27,45,220,110,110,178,180,90,90,238,91,160,160,251,164,82,82,246,118,59,59,77,183,214,214,97,125,179,179,206,82,41,41,123,221,227,227,62,94,47,47,113,19,132,132,151,166,83,83,245,185,209,209,104,0,0,0,0,193,237,237,44,64,32,32,96,227,252,252,31,121,177,177,200,182,91,91,237,212,106,106,190,141,203,203,70,103,190,190,217,114,57,57,75,148,74,74,222,152,76,76,212,176,88,88,232,133,207,207,74,187,208,208,107,197,239,239,42,79,170,170,229,237,251,251,22,134,67,67,197,154,77,77,215,102,51,51,85,17,133,133,148,138,69,69,207,233,249,249,16,4,2,2,6,254,127,127,129,160,80,80,240,120,60,60,68,37,159,159,186,75,168,168,227,162,81,81,243,93,163,163,254,128,64,64,192,5,143,143,138,63,146,146,173,33,157,157,188,112,56,56,72,241,245,245,4,99,188,188,223,119,182,182,193,175,218,218,117,66,33,33,99,32,16,16,48,229,255,255,26,253,243,243,14,191,210,210,109,129,205,205,76,24,12,12,20,38,19,19,53,195,236,236,47,190,95,95,225,53,151,151,162,136,68,68,204,46,23,23,57,147,196,196,87,85,167,167,242,252,126,126,130,122,61,61,71,200,100,100,172,186,93,93,231,50,25,25,43,230,115,115,149,192,96,96,160,25,129,129,152,158,79,79,209,163,220,220,127,68,34,34,102,84,42,42,126,59,144,144,171,11,136,136,131,140,70,70,202,199,238,238,41,107,184,184,211,40,20,20,60,167,222,222,121,188,94,94,226,22,11,11,29,173,219,219,118,219,224,224,59,100,50,50,86,116,58,58,78,20,10,10,30,146,73,73,219,12,6,6,10,72,36,36,108,184,92,92,228,159,194,194,93,189,211,211,110,67,172,172,239,196,98,98,166,57,145,145,168,49,149,149,164,211,228,228,55,242,121,121,139,213,231,231,50,139,200,200,67,110,55,55,89,218,109,109,183,1,141,141,140,177,213,213,100,156,78,78,210,73,169,169,224,216,108,108,180,172,86,86,250,243,244,244,7,207,234,234,37,202,101,101,175,244,122,122,142,71,174,174,233,16,8,8,24,111,186,186,213,240,120,120,136,74,37,37,111,92,46,46,114,56,28,28,36,87,166,166,241,115,180,180,199,151,198,198,81,203,232,232,35,161,221,221,124,232,116,116,156,62,31,31,33,150,75,75,221,97,189,189,220,13,139,139,134,15,138,138,133,224,112,112,144,124,62,62,66,113,181,181,196,204,102,102,170,144,72,72,216,6,3,3,5,247,246,246,1,28,14,14,18,194,97,97,163,106,53,53,95,174,87,87,249,105,185,185,208,23,134,134,145,153,193,193,88,58,29,29,39,39,158,158,185,217,225,225,56,235,248,248,19,43,152,152,179,34,17,17,51,210,105,105,187,169,217,217,112,7,142,142,137,51,148,148,167,45,155,155,182,60,30,30,34,21,135,135,146,201,233,233,32,135,206,206,73,170,85,85,255,80,40,40,120,165,223,223,122,3,140,140,143,89,161,161,248,9,137,137,128,26,13,13,23,101,191,191,218,215,230,230,49,132,66,66,198,208,104,104,184,130,65,65,195,41,153,153,176,90,45,45,119,30,15,15,17,123,176,176,203,168,84,84,252,109,187,187,214,44,22,22,58,81,244,167,80,126,65,101,83,26,23,164,195,58,39,94,150,59,171,107,203,31,157,69,241,172,250,88,171,75,227,3,147,32,48,250,85,173,118,109,246,136,204,118,145,245,2,76,37,79,229,215,252,197,42,203,215,38,53,68,128,181,98,163,143,222,177,90,73,37,186,27,103,69,234,14,152,93,254,192,225,195,47,117,2,129,76,240,18,141,70,151,163,107,211,249,198,3,143,95,231,21,146,156,149,191,109,122,235,149,82,89,218,212,190,131,45,88,116,33,211,73,224,105,41,142,201,200,68,117,194,137,106,244,142,121,120,153,88,62,107,39,185,113,221,190,225,79,182,240,136,173,23,201,32,172,102,125,206,58,180,99,223,74,24,229,26,49,130,151,81,51,96,98,83,127,69,177,100,119,224,187,107,174,132,254,129,160,28,249,8,43,148,112,72,104,88,143,69,253,25,148,222,108,135,82,123,248,183,171,115,211,35,114,75,2,226,227,31,143,87,102,85,171,42,178,235,40,7,47,181,194,3,134,197,123,154,211,55,8,165,48,40,135,242,35,191,165,178,2,3,106,186,237,22,130,92,138,207,28,43,167,121,180,146,243,7,242,240,78,105,226,161,101,218,244,205,6,5,190,213,209,52,98,31,196,166,254,138,52,46,83,157,162,243,85,160,5,138,225,50,164,246,235,117,11,131,236,57,64,96,239,170,94,113,159,6,189,110,16,81,62,33,138,249,150,221,6,61,221,62,5,174,77,230,189,70,145,84,141,181,113,196,93,5,4,6,212,111,96,80,21,255,25,152,251,36,214,189,233,151,137,64,67,204,103,217,158,119,176,232,66,189,7,137,139,136,231,25,91,56,121,200,238,219,161,124,10,71,124,66,15,233,248,132,30,201,0,0,0,0,9,128,134,131,50,43,237,72,30,17,112,172,108,90,114,78,253,14,255,251,15,133,56,86,61,174,213,30,54,45,57,39,10,15,217,100,104,92,166,33,155,91,84,209,36,54,46,58,12,10,103,177,147,87,231,15,180,238,150,210,27,155,145,158,128,192,197,79,97,220,32,162,90,119,75,105,28,18,26,22,226,147,186,10,192,160,42,229,60,34,224,67,18,27,23,29,14,9,13,11,242,139,199,173,45,182,168,185,20,30,169,200,87,241,25,133,175,117,7,76,238,153,221,187,163,127,96,253,247,1,38,159,92,114,245,188,68,102,59,197,91,251,126,52,139,67,41,118,203,35,198,220,182,237,252,104,184,228,241,99,215,49,220,202,66,99,133,16,19,151,34,64,132,198,17,32,133,74,36,125,210,187,61,248,174,249,50,17,199,41,161,109,29,158,47,75,220,178,48,243,13,134,82,236,119,193,227,208,43,179,22,108,169,112,185,153,17,148,72,250,71,233,100,34,168,252,140,196,160,240,63,26,86,125,44,216,34,51,144,239,135,73,78,199,217,56,209,193,140,202,162,254,152,212,11,54,166,245,129,207,165,122,222,40,218,183,142,38,63,173,191,164,44,58,157,228,80,120,146,13,106,95,204,155,84,126,70,98,246,141,19,194,144,216,184,232,46,57,247,94,130,195,175,245,159,93,128,190,105,208,147,124,111,213,45,169,207,37,18,179,200,172,153,59,16,24,125,167,232,156,99,110,219,59,187,123,205,38,120,9,110,89,24,244,236,154,183,1,131,79,154,168,230,149,110,101,170,255,230,126,33,188,207,8,239,21,232,230,186,231,155,217,74,111,54,206,234,159,9,212,41,176,124,214,49,164,178,175,42,63,35,49,198,165,148,48,53,162,102,192,116,78,188,55,252,130,202,166,224,144,208,176,51,167,216,21,241,4,152,74,65,236,218,247,127,205,80,14,23,145,246,47,118,77,214,141,67,239,176,77,204,170,77,84,228,150,4,223,158,209,181,227,76,106,136,27,193,44,31,184,70,101,81,127,157,94,234,4,1,140,53,93,250,135,116,115,251,11,65,46,179,103,29,90,146,219,210,82,233,16,86,51,109,214,71,19,154,215,97,140,55,161,12,122,89,248,20,142,235,19,60,137,206,169,39,238,183,97,201,53,225,28,229,237,122,71,177,60,156,210,223,89,85,242,115,63,24,20,206,121,115,199,55,191,83,247,205,234,95,253,170,91,223,61,111,20,120,68,219,134,202,175,243,129,185,104,196,62,56,36,52,44,194,163,64,95,22,29,195,114,188,226,37,12,40,60,73,139,255,13,149,65,57,168,1,113,8,12,179,222,216,180,228,156,100,86,193,144,123,203,132,97,213,50,182,112,72,108,92,116,208,184,87,66,82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125,1,0,0,0,2,0,0,0,4,0,0,0,8,0,0,0,16,0,0,0,32,0,0,0,64,0,0,0,128,0,0,0,27,0,0,0,54,0,0,0,108,0,0,0,216,0,0,0,171,0,0,0,77,0,0,0,154,0,0,0,47,0,0,0,94,0,0,0,188,0,0,0,99,0,0,0,198,0,0,0,151,0,0,0,53,0,0,0,106,0,0,0,212,0,0,0,179,0,0,0,125,0,0,0,250,0,0,0,239,0,0,0,197,0,0,0,145,0,0,0,2,0,0,0,43,126,21,22,40,174,210,166,171,247,21,136,9,207,79,60,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,107,193,190,226,46,64,159,150,233,61,126,17,115,147,23,42,59,63,217,46,183,45,173,32,51,52,73,248,232,60,251,74,174,45,138,87,30,3,172,156,158,183,111,172,69,175,142,81,200,166,69,55,160,179,169,63,205,227,205,173,159,28,229,139,48,200,28,70,163,92,228,17,229,251,193,25,26,10,82,239,38,117,31,103,163,203,177,64,177,128,140,241,135,164,244,223,246,159,36,69,223,79,155,23,173,43,65,123,230,108,55,16,192,75,5,53,124,93,28,14,234,196,198,111,159,247,242,230,5,0,0,0,43,126,21,22,40,174,210,166,171,247,21,136,9,207,79,60,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,107,193,190,226,46,64,159,150,233,61,126,17,115,147,23,42,59,63,217,46,183,45,173,32,51,52,73,248,232,60,251,74,174,45,138,87,30,3,172,156,158,183,111,172,69,175,142,81,119,137,80,141,22,145,143,3,245,60,82,218,197,78,216,37,48,200,28,70,163,92,228,17,229,251,193,25,26,10,82,239,151,64,5,30,156,95,236,246,67,68,247,168,34,96,237,204,246,159,36,69,223,79,155,23,173,43,65,123,230,108,55,16,48,76,101,40,246,89,199,120,102,165,16,217,193,214,174,94,8,0,0,0,2,0,0,0,58,150,0,0,220,28,0,0,232,28,0,0,16,0,0,0,192,0,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,65,150,0,0,77,150,0,0,0,0,0,0,85,150,0,0,1,0,0,0,109,150,0,0,3,0,0,0,133,150,0,0,5,0,0,0,157,150,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,181,150,0,0,80,29,0,0,92,29,0,0,16,0,0,0,0,1,0,0,248,1,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,188,150,0,0,200,150,0,0,0,0,0,0,208,150,0,0,1,0,0,0,232,150,0,0,3,0,0,0,0,151,0,0,5,0,0,0,24,151,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,48,151,0,0,58,151,0,0,15,0,0,0,184,29,0,0,20,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,184,0,0,0,0,0,0,0,73,151,0,0,88,151,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,220,152,0,0,24,30,0,0,9,153,0,0,12,153,0,0,19,153,0,0,21,153,0,0,23,153,0,0,1,0,0,0,2,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,3,0,0,0,9,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,224,152,0,0,228,152,0,0,240,152,0,0,0,0,0,0,2,0,0,0,2,0,0,0,95,164,0,0,100,164,0,0,15,0,0,0,92,30,0,0,20,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,184,0,0,0,10,0,0,0,115,164,0,0,136,164,0,0,154,164,0,0,168,164,0,0,182,164,0,0,0,0,0,0,11,0,0,0,2,0,0,0,7,165,0,0,14,165,0,0,19,0,0,0,168,30,0,0,28,0,0,0,3,0,0,0,1,0,0,0,3,0,0,0,5,0,0,0,192,0,0,0,11,0,0,0,33,165,0,0,0,0,0,0,152,47,138,66,145,68,55,113,207,251,192,181,165,219,181,233,91,194,86,57,241,17,241,89,164,130,63,146,213,94,28,171,152,170,7,216,1,91,131,18,190,133,49,36,195,125,12,85,116,93,190,114,254,177,222,128,167,6,220,155,116,241,155,193,193,105,155,228,134,71,190,239,198,157,193,15,204,161,12,36,111,44,233,45,170,132,116,74,220,169,176,92,218,136,249,118,82,81,62,152,109,198,49,168,200,39,3,176,199,127,89,191,243,11,224,198,71,145,167,213,81,99,202,6,103,41,41,20,133,10,183,39,56,33,27,46,252,109,44,77,19,13,56,83,84,115,10,101,187,10,106,118,46,201,194,129,133,44,114,146,161,232,191,162,75,102,26,168,112,139,75,194,163,81,108,199,25,232,146,209,36,6,153,214,133,53,14,244,112,160,106,16,22,193,164,25,8,108,55,30,76,119,72,39,181,188,176,52,179,12,28,57,74,170,216,78,79,202,156,91,243,111,46,104,238,130,143,116,111,99,165,120,20,120,200,132,8,2,199,140,250,255,190,144,235,108,80,164,247,163,249,190,242,120,113,198,8,0,0,0,2,0,0,0,43,166,0,0,50,166,0,0,19,0,0,0,228,31,0,0,32,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,5,0,0,0,192,0,0,0,11,0,0,0,69,166,0,0,92,166,0,0,0,0,0,0,10,0,0,0,2,0,0,0,114,166,0,0,121,166,0,0,19,0,0,0,36,32,0,0,64,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,6,0,0,0,224,0,0,0,12,0,0,0,140,166,0,0,163,166,0,0,0,0,0,0,9,0,0,0,2,0,0,0,180,168,0,0,187,168,0,0,19,0,0,0,100,32,0,0,48,0,0,0,6,0,0,0,1,0,0,0,4,0,0,0,6,0,0,0,224,0,0,0,12,0,0,0,206,168,0,0,229,168,0,0,0,0,0,0,10,0,0,0,0,0,0,0,251,168,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,1,0,0,160,16,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,50,188,188,243,33,236,236,198,67,32,32,244,201,179,179,219,3,218,218,123,139,2,2,251,43,226,226,200,250,158,158,74,236,201,201,211,9,212,212,230,107,24,24,107,159,30,30,69,14,152,152,125,56,178,178,232,210,166,166,75,183,38,38,214,87,60,60,50,138,147,147,216,238,130,130,253,152,82,82,55,212,123,123,113,55,187,187,241,151,91,91,225,131,71,71,48,60,36,36,15,226,81,81,248,198,186,186,27,243,74,74,135,72,191,191,250,112,13,13,6,179,176,176,63,222,117,117,94,253,210,210,186,32,125,125,174,49,102,102,91,163,58,58,138,28,89,89,0,0,0,0,188,147,205,205,157,224,26,26,109,44,174,174,193,171,127,127,177,199,43,43,14,185,190,190,128,160,224,224,93,16,138,138,210,82,59,59,213,186,100,100,160,136,216,216,132,165,231,231,7,232,95,95,20,17,27,27,181,194,44,44,144,180,252,252,44,39,49,49,163,101,128,128,178,42,115,115,115,129,12,12,76,95,121,121,84,65,107,107,146,2,75,75,116,105,83,83,54,143,148,148,81,31,131,131,56,54,42,42,176,156,196,196,189,200,34,34,90,248,213,213,252,195,189,189,96,120,72,72,98,206,255,255,150,7,76,76,108,119,65,65,66,230,199,199,247,36,235,235,16,20,28,28,124,99,93,93,40,34,54,54,39,192,103,103,140,175,233,233,19,249,68,68,149,234,20,20,156,187,245,245,199,24,207,207,36,45,63,63,70,227,192,192,59,219,114,114,112,108,84,84,202,76,41,41,227,53,240,240,133,254,8,8,203,23,198,198,17,79,243,243,208,228,140,140,147,89,164,164,184,150,202,202,166,59,104,104,131,77,184,184,32,40,56,56,255,46,229,229,159,86,173,173,119,132,11,11,195,29,200,200,204,255,153,153,3,237,88,88,111,154,25,25,8,10,14,14,191,126,149,149,64,80,112,112,231,48,247,247,43,207,110,110,226,110,31,31,121,61,181,181,12,15,9,9,170,52,97,97,130,22,87,87,65,11,159,159,58,128,157,157,234,100,17,17,185,205,37,37,228,221,175,175,154,8,69,69,164,141,223,223,151,92,163,163,126,213,234,234,218,88,53,53,122,208,237,237,23,252,67,67,102,203,248,248,148,177,251,251,161,211,55,55,29,64,250,250,61,104,194,194,240,204,180,180,222,93,50,50,179,113,156,156,11,231,86,86,114,218,227,227,167,96,135,135,28,27,21,21,239,58,249,249,209,191,99,99,83,169,52,52,62,133,154,154,143,66,177,177,51,209,124,124,38,155,136,136,95,166,61,61,236,215,161,161,118,223,228,228,42,148,129,129,73,1,145,145,129,251,15,15,136,170,238,238,238,97,22,22,33,115,215,215,196,245,151,151,26,168,165,165,235,63,254,254,217,181,109,109,197,174,120,120,57,109,197,197,153,229,29,29,205,164,118,118,173,220,62,62,49,103,203,203,139,71,182,182,1,91,239,239,24,30,18,18,35,197,96,96,221,176,106,106,31,246,77,77,78,233,206,206,45,124,222,222,249,157,85,85,72,90,126,126,79,178,33,33,242,122,3,3,101,38,160,160,142,25,94,94,120,102,90,90,92,75,101,101,88,78,98,98,25,69,253,253,141,244,6,6,229,134,64,64,152,190,242,242,87,172,51,51,103,144,23,23,127,142,5,5,5,94,232,232,100,125,79,79,175,106,137,137,99,149,16,16,182,47,116,116,254,117,10,10,245,146,92,92,183,116,155,155,60,51,45,45,165,214,48,48,206,73,46,46,233,137,73,73,104,114,70,70,68,85,119,119,224,216,168,168,77,4,150,150,67,189,40,40,105,41,169,169,41,121,217,217,46,145,134,134,172,135,209,209,21,74,244,244,89,21,141,141,168,130,214,214,10,188,185,185,158,13,66,66,110,193,246,246,71,184,47,47,223,6,221,221,52,57,35,35,53,98,204,204,106,196,241,241,207,18,193,193,220,235,133,133,34,158,143,143,201,161,113,113,192,240,144,144,155,83,170,170,137,241,1,1,212,225,139,139,237,140,78,78,171,111,142,142,18,162,171,171,162,62,111,111,13,84,230,230,82,242,219,219,187,123,146,146,2,182,183,183,47,202,105,105,169,217,57,57,215,12,211,211,97,35,167,167,30,173,162,162,180,153,195,195,80,68,108,108,4,5,7,7,246,127,4,4,194,70,39,39,22,167,172,172,37,118,208,208,134,19,80,80,86,247,220,220,85,26,132,132,9,81,225,225,190,37,122,122,145,239,19,19,57,57,217,169,23,23,144,103,156,156,113,179,166,166,210,232,7,7,5,4,82,82,152,253,128,128,101,163,228,228,223,118,69,69,8,154,75,75,2,146,224,224,160,128,90,90,102,120,175,175,221,228,106,106,176,221,99,99,191,209,42,42,54,56,230,230,84,13,32,32,67,198,204,204,98,53,242,242,190,152,18,18,30,24,235,235,36,247,161,161,215,236,65,65,119,108,40,40,189,67,188,188,50,117,123,123,212,55,136,136,155,38,13,13,112,250,68,68,249,19,251,251,177,148,126,126,90,72,3,3,122,242,140,140,228,208,182,182,71,139,36,36,60,48,231,231,165,132,107,107,65,84,221,221,6,223,96,96,197,35,253,253,69,25,58,58,163,91,194,194,104,61,141,141,21,89,236,236,33,243,102,102,49,174,111,111,62,162,87,87,22,130,16,16,149,99,239,239,91,1,184,184,77,131,134,134,145,46,109,109,181,217,131,131,31,81,170,170,83,155,93,93,99,124,104,104,59,166,254,254,63,235,48,48,214,165,122,122,37,190,172,172,167,22,9,9,15,12,240,240,53,227,167,167,35,97,144,144,240,192,233,233,175,140,157,157,128,58,92,92,146,245,12,12,129,115,49,49,39,44,208,208,118,37,86,86,231,11,146,146,123,187,206,206,233,78,1,1,241,137,30,30,159,107,52,52,169,83,241,241,196,106,195,195,153,180,91,91,151,241,71,71,131,225,24,24,107,230,34,34,200,189,152,152,14,69,31,31,110,226,179,179,201,244,116,116,47,182,248,248,203,102,153,153,255,204,20,20,234,149,88,88,237,3,220,220,247,86,139,139,225,212,21,21,27,28,162,162,173,30,211,211,12,215,226,226,43,251,200,200,29,195,94,94,25,142,44,44,194,181,73,73,137,233,193,193,18,207,149,149,126,191,125,125,32,186,17,17,100,234,11,11,132,119,197,197,109,57,137,137,106,175,124,124,209,51,113,113,161,201,255,255,206,98,187,187,55,113,15,15,251,129,181,181,61,121,225,225,81,9,62,62,220,173,63,63,45,36,118,118,164,205,85,85,157,249,130,130,238,216,64,64,134,229,120,120,174,197,37,37,205,185,150,150,4,77,119,119,85,68,14,14,10,8,80,80,19,134,247,247,48,231,55,55,211,161,250,250,64,29,97,97,52,170,78,78,140,237,176,176,179,6,84,84,108,112,115,115,42,178,59,59,82,210,159,159,11,65,2,2,139,123,216,216,136,160,243,243,79,17,203,203,103,49,39,39,70,194,103,103,192,39,252,252,180,144,56,56,40,32,4,4,127,246,72,72,120,96,229,229,46,255,76,76,7,150,101,101,75,92,43,43,199,177,142,142,111,171,66,66,13,158,245,245,187,156,219,219,242,82,74,74,243,27,61,61,166,95,164,164,89,147,185,185,188,10,249,249,58,239,19,19,239,145,8,8,254,133,145,145,1,73,22,22,97,238,222,222,124,45,33,33,178,79,177,177,66,143,114,114,219,59,47,47,184,71,191,191,72,135,174,174,44,109,192,192,227,70,60,60,87,214,154,154,133,62,169,169,41,105,79,79,125,100,129,129,148,42,46,46,73,206,198,198,23,203,105,105,202,47,189,189,195,252,163,163,92,151,232,232,94,5,237,237,208,122,209,209,135,172,5,5,142,127,100,100,186,213,165,165,168,26,38,38,183,75,190,190,185,14,135,135,96,167,213,213,248,90,54,54,34,40,27,27,17,20,117,117,222,63,217,217,121,41,238,238,170,136,45,45,51,60,121,121,95,76,183,183,182,2,202,202,150,184,53,53,88,218,196,196,156,176,67,67,252,23,132,132,26,85,77,77,246,31,89,89,28,138,178,178,56,125,51,51,172,87,207,207,24,199,6,6,244,141,83,83,105,116,155,155,116,183,151,151,245,196],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([173,173,86,159,227,227,218,114,234,234,213,126,244,244,74,21,143,143,158,34,171,171,162,18,98,98,78,88,95,95,232,7,29,29,229,153,35,35,57,52,246,246,193,110,108,108,68,80,50,50,93,222,70,70,114,104,160,160,38,101,205,205,147,188,218,218,3,219,186,186,198,248,158,158,250,200,214,214,130,168,110,110,207,43,112,112,80,64,133,133,235,220,10,10,117,254,147,147,138,50,223,223,141,164,41,41,76,202,28,28,20,16,215,215,115,33,180,180,204,240,212,212,9,211,138,138,16,93,81,81,226,15,0,0,0,0,25,25,154,111,26,26,224,157,148,148,143,54,199,199,230,66,201,201,236,74,210,210,253,94,127,127,171,193,168,168,216,224,50,188,117,188,33,236,243,236,67,32,198,32,201,179,244,179,3,218,219,218,139,2,123,2,43,226,251,226,250,158,200,158,236,201,74,201,9,212,211,212,107,24,230,24,159,30,107,30,14,152,69,152,56,178,125,178,210,166,232,166,183,38,75,38,87,60,214,60,138,147,50,147,238,130,216,130,152,82,253,82,212,123,55,123,55,187,113,187,151,91,241,91,131,71,225,71,60,36,48,36,226,81,15,81,198,186,248,186,243,74,27,74,72,191,135,191,112,13,250,13,179,176,6,176,222,117,63,117,253,210,94,210,32,125,186,125,49,102,174,102,163,58,91,58,28,89,138,89,0,0,0,0,147,205,188,205,224,26,157,26,44,174,109,174,171,127,193,127,199,43,177,43,185,190,14,190,160,224,128,224,16,138,93,138,82,59,210,59,186,100,213,100,136,216,160,216,165,231,132,231,232,95,7,95,17,27,20,27,194,44,181,44,180,252,144,252,39,49,44,49,101,128,163,128,42,115,178,115,129,12,115,12,95,121,76,121,65,107,84,107,2,75,146,75,105,83,116,83,143,148,54,148,31,131,81,131,54,42,56,42,156,196,176,196,200,34,189,34,248,213,90,213,195,189,252,189,120,72,96,72,206,255,98,255,7,76,150,76,119,65,108,65,230,199,66,199,36,235,247,235,20,28,16,28,99,93,124,93,34,54,40,54,192,103,39,103,175,233,140,233,249,68,19,68,234,20,149,20,187,245,156,245,24,207,199,207,45,63,36,63,227,192,70,192,219,114,59,114,108,84,112,84,76,41,202,41,53,240,227,240,254,8,133,8,23,198,203,198,79,243,17,243,228,140,208,140,89,164,147,164,150,202,184,202,59,104,166,104,77,184,131,184,40,56,32,56,46,229,255,229,86,173,159,173,132,11,119,11,29,200,195,200,255,153,204,153,237,88,3,88,154,25,111,25,10,14,8,14,126,149,191,149,80,112,64,112,48,247,231,247,207,110,43,110,110,31,226,31,61,181,121,181,15,9,12,9,52,97,170,97,22,87,130,87,11,159,65,159,128,157,58,157,100,17,234,17,205,37,185,37,221,175,228,175,8,69,154,69,141,223,164,223,92,163,151,163,213,234,126,234,88,53,218,53,208,237,122,237,252,67,23,67,203,248,102,248,177,251,148,251,211,55,161,55,64,250,29,250,104,194,61,194,204,180,240,180,93,50,222,50,113,156,179,156,231,86,11,86,218,227,114,227,96,135,167,135,27,21,28,21,58,249,239,249,191,99,209,99,169,52,83,52,133,154,62,154,66,177,143,177,209,124,51,124,155,136,38,136,166,61,95,61,215,161,236,161,223,228,118,228,148,129,42,129,1,145,73,145,251,15,129,15,170,238,136,238,97,22,238,22,115,215,33,215,245,151,196,151,168,165,26,165,63,254,235,254,181,109,217,109,174,120,197,120,109,197,57,197,229,29,153,29,164,118,205,118,220,62,173,62,103,203,49,203,71,182,139,182,91,239,1,239,30,18,24,18,197,96,35,96,176,106,221,106,246,77,31,77,233,206,78,206,124,222,45,222,157,85,249,85,90,126,72,126,178,33,79,33,122,3,242,3,38,160,101,160,25,94,142,94,102,90,120,90,75,101,92,101,78,98,88,98,69,253,25,253,244,6,141,6,134,64,229,64,190,242,152,242,172,51,87,51,144,23,103,23,142,5,127,5,94,232,5,232,125,79,100,79,106,137,175,137,149,16,99,16,47,116,182,116,117,10,254,10,146,92,245,92,116,155,183,155,51,45,60,45,214,48,165,48,73,46,206,46,137,73,233,73,114,70,104,70,85,119,68,119,216,168,224,168,4,150,77,150,189,40,67,40,41,169,105,169,121,217,41,217,145,134,46,134,135,209,172,209,74,244,21,244,21,141,89,141,130,214,168,214,188,185,10,185,13,66,158,66,193,246,110,246,184,47,71,47,6,221,223,221,57,35,52,35,98,204,53,204,196,241,106,241,18,193,207,193,235,133,220,133,158,143,34,143,161,113,201,113,240,144,192,144,83,170,155,170,241,1,137,1,225,139,212,139,140,78,237,78,111,142,171,142,162,171,18,171,62,111,162,111,84,230,13,230,242,219,82,219,123,146,187,146,182,183,2,183,202,105,47,105,217,57,169,57,12,211,215,211,35,167,97,167,173,162,30,162,153,195,180,195,68,108,80,108,5,7,4,7,127,4,246,4,70,39,194,39,167,172,22,172,118,208,37,208,19,80,134,80,247,220,86,220,26,132,85,132,81,225,9,225,37,122,190,122,239,19,145,19,217,169,57,217,144,103,23,144,113,179,156,113,210,232,166,210,5,4,7,5,152,253,82,152,101,163,128,101,223,118,228,223,8,154,69,8,2,146,75,2,160,128,224,160,102,120,90,102,221,228,175,221,176,221,106,176,191,209,99,191,54,56,42,54,84,13,230,84,67,198,32,67,98,53,204,98,190,152,242,190,30,24,18,30,36,247,235,36,215,236,161,215,119,108,65,119,189,67,40,189,50,117,188,50,212,55,123,212,155,38,136,155,112,250,13,112,249,19,68,249,177,148,251,177,90,72,126,90,122,242,3,122,228,208,140,228,71,139,182,71,60,48,36,60,165,132,231,165,65,84,107,65,6,223,221,6,197,35,96,197,69,25,253,69,163,91,58,163,104,61,194,104,21,89,141,21,33,243,236,33,49,174,102,49,62,162,111,62,22,130,87,22,149,99,16,149,91,1,239,91,77,131,184,77,145,46,134,145,181,217,109,181,31,81,131,31,83,155,170,83,99,124,93,99,59,166,104,59,63,235,254,63,214,165,48,214,37,190,122,37,167,22,172,167,15,12,9,15,53,227,240,53,35,97,167,35,240,192,144,240,175,140,233,175,128,58,157,128,146,245,92,146,129,115,12,129,39,44,49,39,118,37,208,118,231,11,86,231,123,187,146,123,233,78,206,233,241,137,1,241,159,107,30,159,169,83,52,169,196,106,241,196,153,180,195,153,151,241,91,151,131,225,71,131,107,230,24,107,200,189,34,200,14,69,152,14,110,226,31,110,201,244,179,201,47,182,116,47,203,102,248,203,255,204,153,255,234,149,20,234,237,3,88,237,247,86,220,247,225,212,139,225,27,28,21,27,173,30,162,173,12,215,211,12,43,251,226,43,29,195,200,29,25,142,94,25,194,181,44,194,137,233,73,137,18,207,193,18,126,191,149,126,32,186,125,32,100,234,17,100,132,119,11,132,109,57,197,109,106,175,137,106,209,51,124,209,161,201,113,161,206,98,255,206,55,113,187,55,251,129,15,251,61,121,181,61,81,9,225,81,220,173,62,220,45,36,63,45,164,205,118,164,157,249,85,157,238,216,130,238,134,229,64,134,174,197,120,174,205,185,37,205,4,77,150,4,85,68,119,85,10,8,14,10,19,134,80,19,48,231,247,48,211,161,55,211,64,29,250,64,52,170,97,52,140,237,78,140,179,6,176,179,108,112,84,108,42,178,115,42,82,210,59,82,11,65,159,11,139,123,2,139,136,160,216,136,79,17,243,79,103,49,203,103,70,194,39,70,192,39,103,192,180,144,252,180,40,32,56,40,127,246,4,127,120,96,72,120,46,255,229,46,7,150,76,7,75,92,101,75,199,177,43,199,111,171,142,111,13,158,66,13,187,156,245,187,242,82,219,242,243,27,74,243,166,95,61,166,89,147,164,89,188,10,185,188,58,239,249,58,239,145,19,239,254,133,8,254,1,73,145,1,97,238,22,97,124,45,222,124,178,79,33,178,66,143,177,66,219,59,114,219,184,71,47,184,72,135,191,72,44,109,174,44,227,70,192,227,87,214,60,87,133,62,154,133,41,105,169,41,125,100,79,125,148,42,129,148,73,206,46,73,23,203,198,23,202,47,105,202,195,252,189,195,92,151,163,92,94,5,232,94,208,122,237,208,135,172,209,135,142,127,5,142,186,213,100,186,168,26,165,168,183,75,38,183,185,14,190,185,96,167,135,96,248,90,213,248,34,40,54,34,17,20,27,17,222,63,117,222,121,41,217,121,170,136,238,170,51,60,45,51,95,76,121,95,182,2,183,182,150,184,202,150,88,218,53,88,156,176,196,156,252,23,67,252,26,85,132,26,246,31,77,246,28,138,89,28,56,125,178,56,172,87,51,172,24,199,207,24,244,141,6,244,105,116,83,105,116,183,155,116,245,196,151,245,86,159,173,86,218,114,227,218,213,126,234,213,74,21,244,74,158,34,143,158,162,18,171,162,78,88,98,78,232,7,95,232,229,153,29,229,57,52,35,57,193,110,246,193,68,80,108,68,93,222,50,93,114,104,70,114,38,101,160,38,147,188,205,147,3,219,218,3,198,248,186,198,250,200,158,250,130,168,214,130,207,43,110,207,80,64,112,80,235,220,133,235,117,254,10,117,138,50,147,138,141,164,223,141,76,202,41,76,20,16,28,20,115,33,215,115,204,240,180,204,9,211,212,9,16,93,138,16,226,15,81,226,0,0,0,0,154,111,25,154,224,157,26,224,143,54,148,143,230,66,199,230,236,74,201,236,253,94,210,253,171,193,127,171,216,224,168,216,47,1,0,0,0,0,0,0,242,176,0,0,0,0,0,0,0,0,0,0,16,0,0,0,128,0,0,0,160,16,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,47,138,66,145,68,55,113,207,251,192,181,165,219,181,233,91,194,86,57,241,17,241,89,164,130,63,146,213,94,28,171,152,170,7,216,1,91,131,18,190,133,49,36,195,125,12,85,116,93,190,114,254,177,222,128,167,6,220,155,116,241,155,193,193,105,155,228,134,71,190,239,198,157,193,15,204,161,12,36,111,44,233,45,170,132,116,74,220,169,176,92,218,136,249,118,82,81,62,152,109,198,49,168,200,39,3,176,199,127,89,191,243,11,224,198,71,145,167,213,81,99,202,6,103,41,41,20,133,10,183,39,56,33,27,46,252,109,44,77,19,13,56,83,84,115,10,101,187,10,106,118,46,201,194,129,133,44,114,146,161,232,191,162,75,102,26,168,112,139,75,194,163,81,108,199,25,232,146,209,36,6,153,214,133,53,14,244,112,160,106,16,22,193,164,25,8,108,55,30,76,119,72,39,181,188,176,52,179,12,28,57,74,170,216,78,79,202,156,91,243,111,46,104,238,130,143,116,111,99,165,120,20,120,200,132,8,2,199,140,250,255,190,144,235,108,80,164,247,163,249,190,242,120,113,198,18,0,0,0,0,0,0,0,3,0,0,0,77,183,0,0,112,50,0,0,107,183,0,0,115,183,0,0,124,183,0,0,127,183,0,0,107,183,0,0,3,0,0,0,7,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,8,0,0,0,20,0,0,0,4,0,0,0,21,0,0,0,9,0,0,0,81,183,0,0,85,183,0,0,91,183,0,0,96,183,0,0,102,183,0,0,0,0,0,0,16,0,0,0,7,0,0,0,22,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,22,0,0,0,37,0,0,0,63,0,0,0,92,0,0,0,117,0,0,0,132,0,0,0,147,0,0,0,161,0,0,0,175,0,0,0,190,0,0,0,205,0,0,0,230,0,0,0,243,0,0,0,2,1,0,0,16,1,0,0,27,1,0,0,41,1,0,0,63,1,0,0,79,1,0,0,109,1,0,0,129,1,0,0,153,1,0,0,179,1,0,0,204,1,0,0,222,1,0,0,231,1,0,0,241,1,0,0,1,2,0,0,14,2,0,0,28,2,0,0,47,2,0,0,71,2,0,0,91,2,0,0,107,2,0,0,122,2,0,0,138,2,0,0,154,2,0,0,171,2,0,0,185,2,0,0,201,2,0,0,228,2,0,0,245,2,0,0,9,3,0,0,28,3,0,0,45,3,0,0,65,3,0,0,77,3,0,0,91,3,0,0,104,3,0,0,120,3,0,0,139,3,0,0,158,3,0,0,178,3,0,0,198,3,0,0,212,3,0,0,234,3,0,0,254,3,0,0,6,4,0,0,10,4,0,0,24,4,0,0,47,4,0,0,55,4,0,0,70,4,0,0,83,4,0,0,98,4,0,0,127,4,0,0,156,4,0,0,179,4,0,0,195,4,0,0,211,4,0,0,231,4,0,0,244,4,0,0,3,5,0,0,20,5,0,0,36,5,0,0,53,5,0,0,70,5,0,0,82,5,0,0,95,5,0,0,126,5,0,0,147,5,0,0,167,5,0,0,188,5,0,0,210,5,0,0,222,5,0,0,237,5,0,0,245,5,0,0,2,6,0,0,11,6,0,0,29,6,0,0,40,6,0,0,51,6,0,0,65,6,0,0,85,6,0,0,98,6,0,0,110,6,0,0,124,6,0,0,136,6,0,0,156,6,0,0,175,6,0,0,195,6,0,0,217,6,0,0,241,6,0,0,6,7,0,0,29,7,0,0,50,7,0,0,65,7,0,0,76,7,0,0,96,7,0,0,109,7,0,0,122,7,0,0,139,7,0,0,161,7,0,0,175,7,0,0,195,7,0,0,211,7,0,0,225,7,0,0,236,7,0,0,0,8,0,0,23,8,0,0,44,8,0,0,59,8,0,0,80,8,0,0,102,8,0,0,118,8,0,0,132,8,0,0,148,8,0,0,162,8,0,0,179,8,0,0,191,8,0,0,223,8,0,0,243,8,0,0,255,8,0,0,9,9,0,0,21,9,0,0,39,9,0,0,60,9,0,0,72,9,0,0,87,9,0,0,104,9,0,0,119,9,0,0,135,9,0,0,149,9,0,0,168,9,0,0,187,9,0,0,210,9,0,0,231,9,0,0,255,9,0,0,17,10,0,0,39,10,0,0,62,10,0,0,80,10,0,0,92,10,0,0,110,10,0,0,127,10,0,0,141,10,0,0,158,10,0,0,173,10,0,0,196,10,0,0,215,10,0,0,228,10,0,0,247,10,0,0,15,11,0,0,42,11,0,0,55,11,0,0,80,11,0,0,91,11,0,0,110,11,0,0,122,11,0,0,138,11,0,0,156,11,0,0,183,11,0,0,190,11,0,0,205,11,0,0,221,11,0,0,237,11,0,0,1,12,0,0,14,12,0,0,26,12,0,0,43,12,0,0,55,12,0,0,72,12,0,0,86,12,0,0,102,12,0,0,129,12,0,0,152,12,0,0,175,12,0,0,198,12,0,0,213,12,0,0,230,12,0,0,248,12,0,0,13,13,0,0,32,13,0,0,63,13,0,0,81,13,0,0,99,13,0,0,121,13,0,0,147,13,0,0,174,13,0,0,191,13,0,0,232,13,0,0,8,14,0,0,46,14,0,0,73,14,0,0,103,14,0,0,133,14,0,0,161,14,0,0,198,14,0,0,222,14,0,0,14,15,0,0,56,15,0,0,96,15,0,0,132,15,0,0,143,15,0,0,161,15,0,0,178,15,0,0,209,15,0,0,230,15,0,0,255,15,0,0,14,16,0,0,38,16,0,0,57,16,0,0,93,16,0,0,114,16,0,0,143,16,0,0,163,16,0,0,190,16,0,0,218,16,0,0,233,16,0,0,244,16,0,0,5,17,0,0,42,17,0,0,87,17,0,0,131,17,0,0,171,17,0,0,209,17,0,0,247,17,0,0,33,18,0,0,67,18,0,0,112,18,0,0,157,18,0,0,170,18,0,0,180,18,0,0,193,18,0,0,228,18,0,0,248,18,0,0,10,19,0,0,33,19,0,0,57,19,0,0,78,19,0,0,106,19,0,0,136,19,0,0,164,19,0,0,184,19,0,0,208,19,0,0,235,19,0,0,253,19,0,0,15,20,0,0,43,20,0,0,58,20,0,0,74,20,0,0,102,20,0,0,125,20,0,0,145,20,0,0,162,20,0,0,190,20,0,0,214,20,0,0,239,20,0,0,3,21,0,0,23,21,0,0,42,21,0,0,71,21,0,0,95,21,0,0,123,21,0,0,150,21,0,0,176,21,0,0,205,21,0,0,229,21,0,0,254,21,0,0,25,22,0,0,54,22,0,0,71,22,0,0,96,22,0,0,119,22,0,0,141,22,0,0,160,22,0,0,182,22,0,0,215,22,0,0,245,22,0,0,12,23,0,0,47,23,0,0,63,23,0,0,83,23,0,0,103,23,0,0,120,23,0,0,147,23,0,0,160,23,0,0,182,23,0,0,202,23,0,0,230,23,0,0,2,24,0,0,21,24,0,0,39,24,0,0,80,24,0,0,120,24,0,0,159,24,0,0,173,24,0,0,208,24,0,0,247,24,0,0,24,25,0,0,51,25,0,0,74,25,0,0,104,25,0,0,135,25,0,0,164,25,0,0,190,25,0,0,213,25,0,0,233,25,0,0,252,25,0,0,22,26,0,0,43,26,0,0,76,26,0,0,113,26,0,0,147,26,0,0,172,26,0,0,201,26,0,0,221,26,0,0,248,26,0,0,28,27,0,0,50,27,0,0,72,27,0,0,100,27,0,0,139,27,0,0,173,27,0,0,195,27,0,0,227,27,0,0,250,27,0,0,31,28,0,0,60,28,0,0,77,28,0,0,105,28,0,0,132,28,0,0,153,28,0,0,180,28,0,0,204,28,0,0,219,28,0,0,247,28,0,0,15,29,0,0,34,29,0,0,56,29,0,0,93,29,0,0,119,29,0,0,145,29,0,0,171,29,0,0,197,29,0,0,223,29,0,0,249,29,0,0,19,30,0,0,45,30,0,0,71,30,0,0,98,30,0,0,125,30,0,0,152,30,0,0,179,30,0,0,206,30,0,0,233,30,0,0,4,31,0,0,27,31,0,0,48,31,0,0,60,31,0,0,7,0,0,0,13,0,0,0,98,0,0,0,99,0,0,0,68,0,0,0,97,0,0,0,11,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,9,0,0,0,77,0,0,0,74,0,0,0,53,0,0,0,0,0,0,0,56,0,0,0,57,0,0,0,59,0,0,0,16,0,0,0,125,0,0,0,10,0,0,0,44,0,0,0,70,0,0,0,103,0,0,0,111,0,0,0,104,0,0,0,0,0,0,0,35,0,0,0,35,0,0,0,89,0,0,0,0,0,0,0,33,0,0,0,73,0,0,0,122,0,0,0,17,0,0,0,14,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,113,0,0,0,43,0,0,0,0,0,0,0,84,0,0,0,115,0,0,0,4,0,0,0,22,0,0,0,5,0,0,0,106,0,0,0,21,0,0,0,120,0,0,0,51,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,79,0,0,0,80,0,0,0,83,0,0,0,82,0,0,0,81,0,0,0,48,0,0,0,40,0,0,0,124,0,0,0,24,0,0,0,31,0,0,0,90,0,0,0,72,0,0,0,36,0,0,0,119,0,0,0,0,0,0,0,100,0,0,0,102,0,0,0,101,0,0,0,23,0,0,0,55,0,0,0,105,0,0,0,50,0,0,0,61,0,0,0,19,0,0,0,2,0,0,0,8,0,0,0,37,0,0,0,67,0,0,0,123,0,0,0,12,0,0,0,42,0,0,0,64,0,0,0,65,0,0,0,92,0,0,0,28,0,0,0,63,0,0,0,60,0,0,0,38,0,0,0,15,0,0,0,107,0,0,0,20,0,0,0,39,0,0,0,118,0,0,0,88,0,0,0,95,0,0,0,25,0,0,0,76,0,0,0,6,0,0,0,95,0,0,0,75,0,0,0,1,0,0,0,96,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,93,0,0,0,91,0,0,0,34,0,0,0,78,0,0,0,66,0,0,0,121,0,0,0,85,0,0,0,30,0,0,0,0,0,0,0,108,0,0,0,94,0,0,0,29,0,0,0,3,0,0,0,69,0,0,0,116,0,0,0,86,0,0,0,62,0,0,0,110,0,0,0,109,0,0,0,26,0,0,0,117,0,0,0,49,0,0,0,87,0,0,0,11,0,0,0,18,0,0,0,54,0,0,0,107,128,0,0,81,128,0,0,127,128,0,0,47,128,0,0,49,128,0,0,104,128,0,0,0,128,0,0,82,128,0,0,11,128,0,0,21,128,0,0,6,128,0,0,138,128,0,0,86,128,0,0,1,128,0,0,36,128,0,0,95,128,0,0,19,128,0,0,35,128,0,0,139,128,0,0,80,128,0,0,97,128,0,0,51,128,0,0,48,128,0,0,75,128,0,0,65,128,0,0,102,128,0,0,134,128,0,0,37,128,0,0,91,128,0,0,126,128,0,0,122,128,0,0,66,128,0,0,109,128,0,0,32,128,0,0,117,128,0,0,28,128,0,0,29,128,0,0,69,128,0,0,83,128,0,0,94,128,0,0,98,128,0,0,63,128,0,0,87,128,0,0,43,128,0,0,22,128,0,0,54,128,0,0,55,128,0,0,56,128,0,0,62,128,0,0,136,128,0,0,78,128,0,0,53,128,0,0,10,128,0,0,14,128,0,0,140,128,0,0,76,128,0,0,16,128,0,0,17,128,0,0,18,128,0,0,93,128,0,0,79,128,0,0,131,128,0,0,92,128,0,0,88,128,0,0,89,128,0,0,119,128,0,0,84,128,0,0,4,128,0,0,128,128,0,0,23,128,0,0,114,128,0,0,68,128,0,0,33,128,0,0,13,128,0,0,106,128,0,0,103,128,0,0,12,128,0,0,118,128,0,0,57,128,0,0,58,128,0,0,61,128,0,0,60,128,0,0,59,128,0,0,45,128,0,0,121,128,0,0,130,128,0,0,137,128,0,0,100,128,0,0,30,128,0,0,67,128,0,0,116,128,0,0,90,128,0,0,115,128,0,0,125,128,0,0,101,128,0,0,105,128,0,0,108,128,0,0,5,128,0,0,2,128,0,0,3,128,0,0,72,128,0,0,74,128,0,0,73,128,0,0,24,128,0,0,26,128,0,0,77,128,0,0,50,128,0,0,96,128,0,0,124,128,0,0,133,128,0,0,132,128,0,0,25,128,0,0,41,128,0,0,42,128,0,0,7,128,0,0,46,128,0,0,129,128,0,0,135,128,0,0,99,128,0,0,70,128,0,0,52,128,0,0,120,128,0,0,34,128,0,0,85,128,0,0,64,128,0,0,20,128,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,5,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,24,0,0,0,61,41,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,61,0,0,228,61,0,0,5,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,24,0,0,0,69,45,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,32,0,0,0,9,0,0,0,10,0,0,0,13,0,0,0,11,0,0,0,12,0,0,0,133,0,0,0,0,32,0,0,1,32,0,0,2,32,0,0,3,32,0,0,4,32,0,0,5,32,0,0,6,32,0,0,8,32,0,0,9,32,0,0,10,32,0,0,40,32,0,0,41,32,0,0,95,32,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,244,63,0,0,0,0,0,0,45,244,81,88,207,140,177,192,70,246,181,203,41,49,3,199,4,91,112,48,180,93,253,32,120,127,139,154,216,89,41,80,104,72,137,171,167,86,3,108,255,183,205,136,63,212,119,180,43,165,163,112,241,186,228,168,252,65,131,253,217,111,225,138,122,47,45,116,150,7,31,13,9,94,3,118,44,112,247,64,165,44,167,111,87,65,168,170,116,223,160,88,100,3,74,199,196,60,83,174,175,95,24,4,21,177,227,109,40,134,171,12,164,191,67,240,233,80,129,57,87,22,82,55,3,0,0,0,3,0,5,0,7,0,11,0,13,0,17,0,19,0,23,0,29,0,31,0,37,0,41,0,43,0,47,0,53,0,59,0,61,0,67,0,71,0,73,0,79,0,83,0,89,0,97,0,101,0,103,0,107,0,109,0,113,0,127,0,131,0,137,0,139,0,149,0,151,0,157,0,163,0,167,0,173,0,179,0,181,0,191,0,193,0,197,0,199,0,211,0,223,0,227,0,229,0,233,0,239,0,241,0,251,0,1,1,7,1,13,1,15,1,21,1,25,1,27,1,37,1,51,1,55,1,57,1,61,1,75,1,81,1,91,1,93,1,97,1,103,1,111,1,117,1,123,1,127,1,133,1,141,1,145,1,153,1,163,1,165,1,175,1,177,1,183,1,187,1,193,1,201,1,205,1,207,1,211,1,223,1,231,1,235,1,243,1,247,1,253,1,9,2,11,2,29,2,35,2,45,2,51,2,57,2,59,2,65,2,75,2,81,2,87,2,89,2,95,2,101,2,105,2,107,2,119,2,129,2,131,2,135,2,141,2,147,2,149,2,161,2,165,2,171,2,179,2,189,2,197,2,207,2,215,2,221,2,227,2,231,2,239,2,245,2,249,2,1,3,5,3,19,3,29,3,41,3,43,3,53,3,55,3,59,3,61,3,71,3,85,3,89,3,91,3,95,3,109,3,113,3,115,3,119,3,139,3,143,3,151,3,161,3,169,3,173,3,179,3,185,3,199,3,203,3,209,3,215,3,223,3,229,3,241,3,245,3,251,3,253,3,7,4,9,4,15,4,25,4,27,4,37,4,39,4,45,4,63,4,67,4,69,4,73,4,79,4,85,4,93,4,99,4,105,4,127,4,129,4,139,4,147,4,157,4,163,4,169,4,177,4,189,4,193,4,199,4,205,4,207,4,213,4,225,4,235,4,253,4,255,4,3,5,9,5,11,5,17,5,21,5,23,5,27,5,39,5,41,5,47,5,81,5,87,5,93,5,101,5,119,5,129,5,143,5,147,5,149,5,153,5,159,5,167,5,171,5,173,5,179,5,191,5,201,5,203,5,207,5,209,5,213,5,219,5,231,5,243,5,251,5,7,6,13,6,17,6,23,6,31,6,35,6,43,6,47,6,61,6,65,6,71,6,73,6,77,6,83,6,85,6,91,6,101,6,121,6,127,6,131,6,133,6,157,6,161,6,163,6,173,6,185,6,187,6,197,6,205,6,211,6,217,6,223,6,241,6,247,6,251,6,253,6,9,7,19,7,31,7,39,7,55,7,69,7,75,7,79,7,81,7,85,7,87,7,97,7,109,7,115,7,121,7,139,7,141,7,157,7,159,7,181,7,187,7,195,7,201,7,205,7,207,7,211,7,219,7,225,7,235,7,237,7,247,7,5,8,15,8,21,8,33,8,35,8,39,8,41,8,51,8,63,8,65,8,81,8,83,8,89,8,93,8,95,8,105,8,113,8,131,8,155,8,159,8,165,8,173,8,189,8,191,8,195,8,203,8,219,8,221,8,225,8,233,8,239,8,245,8,249,8,5,9,7,9,29,9,35,9,37,9,43,9,47,9,53,9,67,9,73,9,77,9,79,9,85,9,89,9,95,9,107,9,113,9,119,9,133,9,137,9,143,9,155,9,163,9,169,9,173,9,199,9,217,9,227,9,235,9,239,9,245,9,247,9,253,9,19,10,31,10,33,10,49,10,57,10,61,10,73,10,87,10,97,10,99,10,103,10,111,10,117,10,123,10,127,10,129,10,133,10,139,10,147,10,151,10,153,10,159,10,169,10,171,10,181,10,189,10,193,10,207,10,217,10,229,10,231,10,237,10,241,10,243,10,3,11,17,11,21,11,27,11,35,11,41,11,45,11,63,11,71,11,81,11,87,11,93,11,101,11,111,11,123,11,137,11,141,11,147,11,153,11,155,11,183,11,185,11,195,11,203,11,207,11,221,11,225,11,233,11,245,11,251,11,7,12,11,12,17,12,37,12,47,12,49,12,65,12,91,12,95,12,97,12,109,12,115,12,119,12,131,12,137,12,145,12,149,12,157,12,179,12,181,12,185,12,187,12,199,12,227,12,229,12,235,12,241,12,247,12,251,12,1,13,3,13,15,13,19,13,31,13,33,13,43,13,45,13,61,13,63,13,79,13,85,13,105,13,121,13,129,13,133,13,135,13,139,13,141,13,163,13,171,13,183,13,189,13,199,13,201,13,205,13,211,13,213,13,219,13,229,13,231,13,243,13,253,13,255,13,9,14,23,14,29,14,33,14,39,14,47,14,53,14,59,14,75,14,87,14,89,14,93,14,107,14,113,14,117,14,125,14,135,14,143,14,149,14,155,14,177,14,183,14,185,14,195,14,209,14,213,14,219,14,237,14,239,14,249,14,7,15,11,15,13,15,23,15,37,15,41,15,49,15,67,15,71,15,77,15,79,15,83,15,89,15,91,15,103,15,107,15,127,15,149,15,161,15,163,15,167,15,173,15,179,15,181,15,187,15,209,15,211,15,217,15,233,15,239,15,251,15,253,15,3,16,15,16,31,16,33,16,37,16,43,16,57,16,61,16,63,16,81,16,105,16,115,16,121,16,123,16,133,16,135,16,145,16,147,16,157,16,163,16,165,16,175,16,177,16,187,16,193,16,201,16,231,16,241,16,243,16,253,16,5,17,11,17,21,17,39,17,45,17,57,17,69,17,71,17,89,17,95,17,99,17,105,17,111,17,129,17,131,17,141,17,155,17,161,17,165,17,167,17,171,17,195,17,197,17,209,17,215,17,231,17,239,17,245,17,251,17,13,18,29,18,31,18,35,18,41,18,43,18,49,18,55,18,65,18,71,18,83,18,95,18,113,18,115,18,121,18,125,18,143,18,151,18,175,18,179,18,181,18,185,18,191,18,193,18,205,18,209,18,223,18,253,18,7,19,13,19,25,19,39,19,45,19,55,19,67,19,69,19,73,19,79,19,87,19,93,19,103,19,105,19,109,19,123,19,129,19,135,19,0,0,0,0,194,1,132,3,70,2,8,7,202,6,140,4,78,5,16,14,210,15,148,13,86,12,24,9,218,8,156,10,94,11,32,28,226,29,164,31,102,30,40,27,234,26,172,24,110,25,48,18,242,19,180,17,118,16,56,21,250,20,188,22,126,23,64,56,130,57,196,59,6,58,72,63,138,62,204,60,14,61,80,54,146,55,212,53,22,52,88,49,154,48,220,50,30,51,96,36,162,37,228,39,38,38,104,35,170,34,236,32,46,33,112,42,178,43,244,41,54,40,120,45,186,44,252,46,62,47,128,112,66,113,4,115,198,114,136,119,74,118,12,116,206,117,144,126,82,127,20,125,214,124,152,121,90,120,28,122,222,123,160,108,98,109,36,111,230,110,168,107,106,106,44,104,238,105,176,98,114,99,52,97,246,96,184,101,122,100,60,102,254,103,192,72,2,73,68,75,134,74,200,79,10,78,76,76,142,77,208,70,18,71,84,69,150,68,216,65,26,64,92,66,158,67,224,84,34,85,100,87,166,86,232,83,42,82,108,80,174,81,240,90,50,91,116,89,182,88,248,93,58,92,124,94,190,95,0,225,194,224,132,226,70,227,8,230,202,231,140,229,78,228,16,239,210,238,148,236,86,237,24,232,218,233,156,235,94,234,32,253,226,252,164,254,102,255,40,250,234,251,172,249,110,248,48,243,242,242,180,240,118,241,56,244,250,245,188,247,126,246,64,217,130,216,196,218,6,219,72,222,138,223,204,221,14,220,80,215,146,214,212,212,22,213,88,208,154,209,220,211,30,210,96,197,162,196,228,198,38,199,104,194,170,195,236,193,46,192,112,203,178,202,244,200,54,201,120,204,186,205,252,207,62,206,128,145,66,144,4,146,198,147,136,150,74,151,12,149,206,148,144,159,82,158,20,156,214,157,152,152,90,153,28,155,222,154,160,141,98,140,36,142,230,143,168,138,106,139,44,137,238,136,176,131,114,130,52,128,246,129,184,132,122,133,60,135,254,134,192,169,2,168,68,170,134,171,200,174,10,175,76,173,142,172,208,167,18,166,84,164,150,165,216,160,26,161,92,163,158,162,224,181,34,180,100,182,166,183,232,178,42,179,108,177,174,176,240,187,50,186,116,184,182,185,248,188,58,189,124,191,190,190,73,0,49,1,83,0,127,1,48,1,105,0,120,1,255,0,129,1,83,2,130,1,131,1,132,1,133,1,134,1,84,2,135,1,136,1,137,1,86,2,138,1,87,2,139,1,140,1,142,1,221,1,143,1,89,2,144,1,91,2,145,1,146,1,147,1,96,2,148,1,99,2,150,1,105,2,151,1,104,2,152,1,153,1,156,1,111,2,157,1,114,2,159,1,117,2,166,1,128,2,167,1,168,1,169,1,131,2,172,1,173,1,174,1,136,2,175,1,176,1,177,1,138,2,178,1,139,2,183,1,146,2,184,1,185,1,188,1,189,1,196,1,198,1,196,1,197,1,197,1,198,1,199,1,201,1,199,1,200,1,200,1,201,1,202,1,204,1,202,1,203,1,203,1,204,1,241,1,243,1,241,1,242,1,242,1,243,1,244,1,245,1,246,1,149,1,247,1,191,1,32,2,158,1,134,3,172,3,136,3,173,3,137,3,174,3,138,3,175,3,140,3,204,3,142,3,205,3,143,3,206,3,153,3,69,3,153,3,190,31,163,3,194,3,247,3,248,3,250,3,251,3,96,30,155,30,223,0,223,0,158,30,223,0,89,31,81,31,91,31,83,31,93,31,85,31,95,31,87,31,188,31,179,31,204,31,195,31,236,31,229,31,252,31,243,31,58,2,101,44,59,2,60,2,61,2,154,1,62,2,102,44,65,2,66,2,67,2,128,1,68,2,137,2,69,2,140,2,244,3,184,3,249,3,242,3,253,3,123,3,254,3,124,3,255,3,125,3,192,4,207,4,38,33,201,3,42,33,107,0,43,33,229,0,50,33,78,33,131,33,132,33,96,44,97,44,98,44,107,2,99,44,125,29,100,44,125,2,109,44,81,2,110,44,113,2,111,44,80,2,112,44,82,2,114,44,115,44,117,44,118,44,126,44,63,2,127,44,64,2,242,44,243,44,125,167,121,29,139,167,140,167,141,167,101,2,170,167,102,2,199,16,39,45,205,16,45,45,118,3,119,3,156,3,181,0,146,3,208,3,152,3,209,3,166,3,213,3,160,3,214,3,154,3,240,3,161,3,241,3,149,3,245,3,207,3,215,3,0,0,0,0,65,0,32,26,192,0,32,31,0,1,1,47,50,1,1,5,57,1,1,15,74,1,1,45,121,1,1,5,112,3,1,3,145,3,32,17,163,3,32,9,0,4,80,16,16,4,32,32,96,4,1,33,138,4,1,53,193,4,1,13,208,4,1,63,20,5,1,19,49,5,48,38,160,1,1,5,179,1,1,3,205,1,1,15,222,1,1,17,248,1,1,39,34,2,1,17,216,3,1,23,0,30,1,149,160,30,1,95,8,31,248,8,24,31,248,6,40,31,248,8,56,31,248,8,72,31,248,6,104,31,248,8,136,31,248,8,152,31,248,8,168,31,248,8,184,31,248,2,186,31,182,2,200,31,170,4,216,31,248,2,218,31,156,2,232,31,248,2,234,31,144,2,248,31,128,2,250,31,130,2,70,2,1,9,16,5,1,3,96,33,16,16,0,44,48,47,103,44,1,5,128,44,1,99,235,44,1,3,64,166,1,45,128,166,1,23,34,167,1,13,50,167,1,61,121,167,1,3,126,167,1,9,144,167,1,3,160,167,1,9,33,255,32,26,0,0,0,0,119,114,97,112,46,99,0,99,111,109,109,111,110,95,97,108,108,111,99,97,116,105,111,110,46,99,0,71,78,85,78,69,84,95,120,109,97,108,108,111,99,95,0,109,97,108,108,111,99,0,71,78,85,78,69,84,95,120,102,114,101,101,95,0,71,78,85,78,69,84,95,120,115,116,114,100,117,112,95,0,71,78,85,78,69,84,95,115,110,112,114,105,110,116,102,0,68,69,66,85,71,0,73,78,70,79,0,87,65,82,78,73,78,71,0,69,82,82,79,82,0,78,79,78,69,0,99,111,109,109,111,110,95,108,111,103,103,105,110,103,46,99,0,37,115,45,37,100,0,37,115,37,100,37,115,0,97,98,0,115,101,116,117,112,95,108,111,103,95,102,105,108,101,0,71,78,85,78,69,84,95,108,111,103,95,115,107,105,112,0,109,121,108,111,103,0,108,111,99,97,108,116,105,109,101,32,101,114,114,111,114,0,37,98,32,37,100,32,37,72,58,37,77,58,37,83,45,37,37,48,54,117,0,77,101,115,115,97,103,101,32,96,37,46,42,115,39,32,114,101,112,101,97,116,101,100,32,37,117,32,116,105,109,101,115,32,105,110,32,116,104,101,32,108,97,115,116,32,37,115,10,0,73,78,86,65,76,73,68,0,37,115,32,37,115,32,37,115,32,37,115,0,96,37,115,39,32,102,97,105,108,101,100,32,111,110,32,102,105,108,101,32,96,37,115,39,32,97,116,32,37,115,58,37,100,32,119,105,116,104,32,101,114,114,111,114,58,32,37,115,10,0,99,114,121,112,116,111,95,115,121,109,109,101,116,114,105,99,46,99,0,115,101,116,117,112,95,99,105,112,104,101,114,95,97,101,115,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,115,121,109,109,101,116,114,105,99,95,101,110,99,114,121,112,116,0,115,101,116,117,112,95,99,105,112,104,101,114,95,116,119,111,102,105,115,104,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,115,121,109,109,101,116,114,105,99,95,100,101,99,114,121,112,116,0,40,112,114,105,118,97,116,101,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,100,32,37,98,41,41,41,0,99,114,121,112,116,111,95,101,99,99,46,99,0,103,99,114,121,95,115,101,120,112,95,98,117,105,108,100,0,113,64,101,100,100,115,97,0,40,112,114,105,118,97,116,101,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,41,40,100,32,37,98,41,41,41,0,100,101,99,111,100,101,95,112,114,105,118,97,116,101,95,101,100,100,115,97,95,107,101,121,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,100,101,99,111,100,101,95,112,114,105,118,97,116,101,95,101,99,100,104,101,95,107,101,121,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,104,101,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,40,103,101,110,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,32,110,111,45,107,101,121,116,101,115,116,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,104,101,95,107,101,121,95,99,114,101,97,116,101,0,103,99,114,121,95,112,107,95,103,101,110,107,101,121,0,107,101,121,95,102,114,111,109,95,115,101,120,112,0,40,103,101,110,107,101,121,40,101,99,99,40,99,117,114,118,101,32,34,69,100,50,53,53,49,57,34,41,40,102,108,97,103,115,32,101,100,100,115,97,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,107,101,121,95,99,114,101,97,116,101,0,40,100,97,116,97,40,102,108,97,103,115,32,101,100,100,115,97,41,40,104,97,115,104,45,97,108,103,111,32,37,115,41,40,118,97,108,117,101,32,37,98,41,41,0,100,97,116,97,95,116,111,95,101,100,100,115,97,95,118,97,108,117,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,115,105,103,110,0,69,100,68,83,65,32,115,105,103,110,105,110,103,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,69,100,50,53,53,49,57,41,40,113,32,37,98,41,41,41,0,40,115,105,103,45,118,97,108,40,101,100,100,115,97,40,114,32,37,98,41,40,115,32,37,98,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,100,100,115,97,95,118,101,114,105,102,121,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,99,117,114,118,101,32,69,100,50,53,53,49,57,41,40,102,108,97,103,115,32,101,100,100,115,97,41,40,113,32,37,98,41,41,41,0,69,100,68,83,65,32,115,105,103,110,97,116,117,114,101,32,118,101,114,105,102,105,99,97,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,99,95,101,99,100,104,0,103,101,116,95,97,102,102,105,110,101,32,102,97,105,108,101,100,0,99,114,121,112,116,111,95,107,100,102,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,107,100,102,95,109,111,100,95,109,112,105,0,99,114,121,112,116,111,95,109,112,105,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,109,112,105,95,112,114,105,110,116,95,117,110,115,105,103,110,101,100,0,96,37,115,39,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,32,119,105,116,104,32,101,114,114,111,114,58,32,37],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([115,10,0,103,99,114,121,95,109,112,105,95,112,114,105,110,116,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,109,112,105,95,115,99,97,110,95,117,110,115,105,103,110,101,100,0,103,99,114,121,95,109,112,105,95,115,99,97,110,0,49,46,54,46,48,0,108,105,98,103,99,114,121,112,116,32,104,97,115,32,110,111,116,32,116,104,101,32,101,120,112,101,99,116,101,100,32,118,101,114,115,105,111,110,32,40,118,101,114,115,105,111,110,32,37,115,32,105,115,32,114,101,113,117,105,114,101,100,41,46,10,0,99,114,121,112,116,111,95,114,97,110,100,111,109,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,105,110,105,116,0,70,97,105,108,101,100,32,116,111,32,115,101,116,32,108,105,98,103,99,114,121,112,116,32,111,112,116,105,111,110,32,37,115,58,32,37,115,10,0,68,73,83,65,66,76,69,95,83,69,67,77,69,77,0,69,78,65,66,76,69,95,81,85,73,67,75,95,82,65,78,68,79,77,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,117,51,50,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,98,108,111,99,107,0,40,103,101,110,107,101,121,40,114,115,97,40,110,98,105,116,115,32,37,100,41,41,41,0,99,114,121,112,116,111,95,114,115,97,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,99,114,101,97,116,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,101,110,99,111,100,101,0,117,116,105,108,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,100,101,99,111,100,101,0,68,101,99,111,100,101,100,32,112,114,105,118,97,116,101,32,107,101,121,32,105,115,32,110,111,116,32,118,97,108,105,100,10,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,69,120,116,101,114,110,97,108,32,112,114,111,116,111,99,111,108,32,118,105,111,108,97,116,105,111,110,32,100,101,116,101,99,116,101,100,32,97,116,32,37,115,58,37,100,46,10,0,40,112,117,98,108,105,99,45,107,101,121,40,114,115,97,40,110,32,37,109,41,40,101,32,37,109,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,97,116,117,114,101,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,0,114,115,97,95,102,117,108,108,95,100,111,109,97,105,110,95,104,97,115,104,0,82,83,65,45,70,68,65,32,70,84,112,115,87,33,0,66,108,105,110,100,105,110,103,32,75,68,70,32,101,120,116,114,97,116,111,114,32,72,77,65,67,32,107,101,121,0,114,115,97,95,98,108,105,110,100,105,110,103,95,107,101,121,95,100,101,114,105,118,101,0,66,108,105,110,100,105,110,103,32,75,68,70,0,110,117,109,101,114,105,99,95,109,112,105,95,97,108,108,111,99,95,110,95,112,114,105,110,116,0,40,100,97,116,97,32,40,102,108,97,103,115,32,114,97,119,41,32,40,118,97,108,117,101,32,37,77,41,41,0,109,112,105,95,116,111,95,115,101,120,112,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,97,116,117,114,101,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,117,110,98,108,105,110,100,0,40,115,105,103,45,118,97,108,32,40,114,115,97,32,40,115,32,37,77,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,118,101,114,105,102,121,0,82,83,65,32,115,105,103,110,97,116,117,114,101,32,118,101,114,105,102,105,99,97,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,58,32,37,115,10,0,115,116,114,105,110,103,115,46,99,0,37,108,108,117,32,37,115,0,102,111,114,101,118,101,114,0,109,115,0,109,0,100,97,121,0,100,97,121,115,0,194,181,115,0,48,32,109,115,0,71,78,85,78,69,84,95,83,84,82,73,78,71,83,95,100,97,116,97,95,116,111,95,115,116,114,105,110,103,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,74,75,77,78,80,81,82,83,84,86,87,88,89,90,0,71,78,85,78,69,84,95,83,84,82,73,78,71,83,95,115,116,114,105,110,103,95,116,111,95,100,97,116,97,0,118,105,115,105,98,105,108,105,116,121,46,99,0,103,99,114,121,95,109,100,95,104,97,115,104,95,98,117,102,102,101,114,0,99,97,108,108,101,100,32,105,110,32,110,111,110,45,111,112,101,114,97,116,105,111,110,97,108,32,115,116,97,116,101,0,103,99,114,121,95,109,100,95,103,101,116,95,97,108,103,111,0,117,115,101,100,32,105,110,32,110,111,110,45,111,112,101,114,97,116,105,111,110,97,108,32,115,116,97,116,101,0,103,99,114,121,95,114,97,110,100,111,109,105,122,101,0,103,99,114,121,95,99,114,101,97,116,101,95,110,111,110,99,101,0,109,105,115,99,46,99,0,95,103,99,114,121,95,102,97,116,97,108,95,101,114,114,111,114,0,10,70,97,116,97,108,32,101,114,114,111,114,58,32,0,70,97,116,97,108,58,32,0,79,104,104,104,104,32,106,101,101,101,101,58,32,0,68,66,71,58,32,0,91,85,110,107,110,111,119,110,32,108,111,103,32,108,101,118,101,108,32,37,100,93,58,32,0,95,103,99,114,121,95,108,111,103,118,0,105,110,116,101,114,110,97,108,32,101,114,114,111,114,32,40,102,97,116,97,108,32,111,114,32,98,117,103,41,0,46,46,46,32,116,104,105,115,32,105,115,32,97,32,98,117,103,32,40,37,115,58,37,100,58,37,115,41,10,0,65,115,115,101,114,116,105,111,110,32,96,37,115,39,32,102,97,105,108,101,100,32,40,37,115,58,37,100,58,37,115,41,10,0,32,0,37,115,58,37,115,0,37,42,115,32,32,0,37,48,50,120,0,32,92,10,0,37,42,115,32,37,42,115,0,32,40,110,117,108,108,41,0,32,91,37,117,32,98,105,116,93,0,32,91,111,117,116,32,111,102,32,99,111,114,101,93,0,45,0,43,0,100,105,118,105,100,101,32,98,121,32,122,101,114,111,0,103,108,111,98,97,108,46,99,0,103,108,111,98,97,108,95,105,110,105,116,0,49,46,55,46,48,45,98,101,116,97,50,51,48,0,118,101,114,115,105,111,110,58,37,115,58,10,0,99,105,112,104,101,114,115,58,37,115,58,10,0,97,101,115,58,116,119,111,102,105,115,104,0,112,117,98,107,101,121,115,58,37,115,58,10,0,114,115,97,58,101,99,99,0,100,105,103,101,115,116,115,58,37,115,58,10,0,115,104,97,50,53,54,58,115,104,97,53,49,50,0,114,110,100,45,109,111,100,58,108,105,110,117,120,58,10,0,99,112,117,45,97,114,99,104,58,58,10,0,109,112,105,45,97,115,109,58,37,115,58,10,0,104,119,102,108,105,115,116,58,0,37,115,58,0,10,0,102,105,112,115,45,109,111,100,101,58,37,99,58,37,99,58,10,0,115,116,97,110,100,97,114,100,0,102,105,112,115,0,115,121,115,116,101,109,0,112,114,105,110,116,95,99,111,110,102,105,103,0,114,110,103,45,116,121,112,101,58,37,115,58,37,100,58,10,0,111,117,116,32,111,102,32,99,111,114,101,32,105,110,32,115,101,99,117,114,101,32,109,101,109,111,114,121,0,92,120,37,48,50,120,0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,48,49,50,51,52,53,54,55,56,57,45,46,47,95,58,42,43,61,0,115,101,120,112,46,99,0,100,111,95,118,115,101,120,112,95,115,115,99,97,110,0,37,100,0,37,117,0,38,92,0,95,103,99,114,121,95,115,101,120,112,95,102,105,110,100,95,116,111,107,101,110,0,95,103,99,114,121,95,115,101,120,112,95,110,116,104,0,3,4,0,8,9,11,10,12,13,34,39,92,0,45,46,47,95,58,42,43,61,0,37,48,50,88,0,37,117,58,0,95,103,99,114,121,95,115,101,120,112,95,115,112,114,105,110,116,0,112,97,100,108,111,99,107,45,114,110,103,0,112,97,100,108,111,99,107,45,97,101,115,0,112,97,100,108,111,99,107,45,115,104,97,0,112,97,100,108,111,99,107,45,109,109,117,108,0,105,110,116,101,108,45,99,112,117,0,105,110,116,101,108,45,98,109,105,50,0,105,110,116,101,108,45,115,115,115,101,51,0,105,110,116,101,108,45,112,99,108,109,117,108,0,105,110,116,101,108,45,97,101,115,110,105,0,105,110,116,101,108,45,114,100,114,97,110,100,0,105,110,116,101,108,45,97,118,120,0,105,110,116,101,108,45,97,118,120,50,0,97,114,109,45,110,101,111,110,0,47,101,116,99,47,103,99,114,121,112,116,47,104,119,102,46,100,101,110,121,0,109,101,109,111,114,121,32,97,116,32,37,112,32,99,111,114,114,117,112,116,101,100,32,40,117,110,100,101,114,102,108,111,119,61,37,48,50,120,41,10,0,109,101,109,111,114,121,32,97,116,32,37,112,32,99,111,114,114,117,112,116,101,100,32,40,111,118,101,114,102,108,111,119,61,37,48,50,120,41,10,0,87,97,114,110,105,110,103,58,32,117,115,105,110,103,32,105,110,115,101,99,117,114,101,32,109,101,109,111,114,121,33,10,0,102,97,105,108,101,100,32,116,111,32,100,114,111,112,32,115,101,116,117,105,100,10,0,115,101,99,117,114,101,32,109,101,109,111,114,121,32,105,115,32,100,105,115,97,98,108,101,100,0,99,97,110,39,116,32,109,109,97,112,32,112,111,111,108,32,111,102,32,37,117,32,98,121,116,101,115,58,32,37,115,32,45,32,117,115,105,110,103,32,109,97,108,108,111,99,10,0,99,97,110,39,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,112,111,111,108,32,111,102,32,37,117,32,98,121,116,101,115,10,0,80,108,101,97,115,101,32,110,111,116,101,32,116,104,97,116,32,121,111,117,32,100,111,110,39,116,32,104,97,118,101,32,115,101,99,117,114,101,32,109,101,109,111,114,121,32,111,110,32,116,104,105,115,32,115,121,115,116,101,109,10,0,79,111,112,115,44,32,115,101,99,117,114,101,32,109,101,109,111,114,121,32,112,111,111,108,32,97,108,114,101,97,100,121,32,105,110,105,116,105,97,108,105,122,101,100,10,0,111,112,101,114,97,116,105,111,110,32,105,115,32,110,111,116,32,112,111,115,115,105,98,108,101,32,119,105,116,104,111,117,116,32,105,110,105,116,105,97,108,105,122,101,100,32,115,101,99,117,114,101,32,109,101,109,111,114,121,10,0,115,101,99,117,114,101,32,109,101,109,111,114,121,32,112,111,111,108,32,105,115,32,110,111,116,32,108,111,99,107,101,100,32,119,104,105,108,101,32,105,110,32,70,73,80,83,32,109,111,100,101,10,0,115,101,99,109,101,109,32,117,115,97,103,101,58,32,37,117,47,37,108,117,32,98,121,116,101,115,32,105,110,32,37,117,32,98,108,111,99,107,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,114,121,112,116,58,32,37,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,114,121,112,116,58,32,37,115,10,0,80,111,119,101,114,45,79,110,0,73,110,105,116,0,83,101,108,102,45,84,101,115,116,0,79,112,101,114,97,116,105,111,110,97,108,0,69,114,114,111,114,0,70,97,116,97,108,45,69,114,114,111,114,0,83,104,117,116,100,111,119,110,0,103,114,97,110,116,101,100,0,100,101,110,105,101,100,0,108,105,98,103,99,114,121,112,116,32,115,116,97,116,101,32,116,114,97,110,115,105,116,105,111,110,32,37,115,32,61,62,32,37,115,32,37,115,10,0,33,100,111,110,101,0,102,105,112,115,46,99,0,95,103,99,114,121,95,105,110,105,116,105,97,108,105,122,101,95,102,105,112,115,95,109,111,100,101,0,33,110,111,95,102,105,112,115,95,109,111,100,101,95,114,101,113,117,105,114,101,100,0,47,101,116,99,47,103,99,114,121,112,116,47,102,105,112,115,95,101,110,97,98,108,101,100,0,47,112,114,111,99,47,115,121,115,47,99,114,121,112,116,111,47,102,105,112,115,95,101,110,97,98,108,101,100,0,114,0,47,112,114,111,99,47,118,101,114,115,105,111,110,0,70,65,84,65,76,58,32,101,114,114,111,114,32,114,101,97,100,105,110,103,32,96,37,115,39,32,105,110,32,108,105,98,103,99,114,121,112,116,58,32,37,115,10,0,70,65,84,65,76,58,32,102,97,105,108,101,100,32,116,111,32,99,114,101,97,116,101,32,116,104,101,32,70,83,77,32,108,111,99,107,32,105,110,32,108,105,98,103,99,114,121,112,116,58,32,37,115,10,0,95,103,99,114,121,95,102,105,112,115,95,109,111,100,101,32,40,41,0,95,103,99,114,121,95,105,110,97,99,116,105,118,97,116,101,95,102,105,112,115,95,109,111,100,101,0,102,97,116,97,108,32,0,44,32,102,117,110,99,116,105,111,110,32,0,110,111,32,100,101,115,99,114,105,112,116,105,111,110,32,97,118,97,105,108,97,98,108,101,0,37,115,101,114,114,111,114,32,105,110,32,108,105,98,103,99,114,121,112,116,44,32,102,105,108,101,32,37,115,44,32,108,105,110,101,32,37,100,37,115,37,115,58,32,37,115,10,0,72,77,65,67,45,0,79,107,97,121,0,32,40,0,108,105,98,103,99,114,121,112,116,32,115,101,108,102,116,101,115,116,58,32,37,115,32,37,115,37,115,32,40,37,100,41,58,32,37,115,37,115,37,115,37,115,10,0,98,97,100,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,103,105,118,101,110,32,116,111,32,95,103,99,114,121,95,99,116,120,95,97,108,108,111,99,10,0,99,84,120,0,98,97,100,32,112,111,105,110,116,101,114,32,37,112,32,112,97,115,115,101,100,32,116,111,32,95,103,99,114,121,95,99,116,120,95,103,101,116,95,112,111,105,110,116,101,114,10,0,119,114,111,110,103,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,114,101,113,117,101,115,116,32,102,111,114,32,99,111,110,116,101,120,116,32,37,112,32,111,102,32,116,121,112,101,32,37,100,10,0,98,97,100,32,112,111,105,110,116,101,114,32,37,112,32,112,97,115,115,101,100,32,116,111,32,103,99,114,121,95,99,116,120,95,114,101,108,97,115,101,10,0,98,97,100,32,99,111,110,116,101,120,116,32,116,121,112,101,32,37,100,32,100,101,116,101,99,116,101,100,32,105,110,32,103,99,114,121,95,99,116,120,95,114,101,108,97,115,101,10,0,103,99,114,121,95,99,105,112,104,101,114,95,99,108,111,115,101,58,32,97,108,114,101,97,100,121,32,99,108,111,115,101,100,47,105,110,118,97,108,105,100,32,104,97,110,100,108,101,0,99,105,112,104,101,114,46,99,0,99,105,112,104,101,114,95,101,110,99,114,121,112,116,0,99,105,112,104,101,114,32,109,111,100,101,32,78,79,78,69,32,117,115,101,100,0,99,105,112,104,101,114,95,101,110,99,114,121,112,116,58,32,105,110,118,97,108,105,100,32,109,111,100,101,32,37,100,10,0,99,105,112,104,101,114,95,100,101,99,114,121,112,116,0,99,105,112,104,101,114,95,100,101,99,114,121,112,116,58,32,105,110,118,97,108,105,100,32,109,111,100,101,32,37,100,10,0,87,65,82,78,73,78,71,58,32,99,105,112,104,101,114,95,115,101,116,105,118,58,32,105,118,108,101,110,61,37,117,32,98,108,107,108,101,110,61,37,117,10,0,99,105,112,104,101,114,95,115,101,116,105,118,0,73,86,32,108,101,110,103,116,104,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,98,108,111,99,107,108,101,110,103,116,104,0,48,120,55,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,68,0,45,48,120,48,49,0,45,48,120,50,68,70,67,57,51,49,49,68,52,57,48,48,49,56,67,55,51,51,56,66,70,56,54,56,56,56,54,49,55,54,55,70,70,56,70,70,53,66,50,66,69,66,69,50,55,53,52,56,65,49,52,66,50,51,53,69,67,65,54,56,55,52,65,0,48,120,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,52,68,69,70,57,68,69,65,50,70,55,57,67,68,54,53,56,49,50,54,51,49,65,53,67,70,53,68,51,69,68,0,48,120,50,49,54,57,51,54,68,51,67,68,54,69,53,51,70,69,67,48,65,52,69,50,51,49,70,68,68,54,68,67,53,67,54,57,50,67,67,55,54,48,57,53,50,53,65,55,66,50,67,57,53,54,50,68,54,48,56,70,50,53,68,53,49,65,0,48,120,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,53,56,0,48,120,48,56,0,78,73,83,84,32,80,45,49,57,50,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,54,52,50,49,48,53,49,57,101,53,57,99,56,48,101,55,48,102,97,55,101,57,97,98,55,50,50,52,51,48,52,57,102,101,98,56,100,101,101,99,99,49,52,54,98,57,98,49,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,57,57,100,101,102,56,51,54,49,52,54,98,99,57,98,49,98,52,100,50,50,56,51,49,0,48,120,49,56,56,100,97,56,48,101,98,48,51,48,57,48,102,54,55,99,98,102,50,48,101,98,52,51,97,49,56,56,48,48,102,52,102,102,48,97,102,100,56,50,102,102,49,48,49,50,0,48,120,48,55,49,57,50,98,57,53,102,102,99,56,100,97,55,56,54,51,49,48,49,49,101,100,54,98,50,52,99,100,100,53,55,51,102,57,55,55,97,49,49,101,55,57,52,56,49,49,0,48,120,48,49,0,78,73,83,84,32,80,45,50,50,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,0,48,120,98,52,48,53,48,97,56,53,48,99,48,52,98,51,97,98,102,53,52,49,51,50,53,54,53,48,52,52,98,48,98,55,100,55,98,102,100,56,98,97,50,55,48,98,51,57,52,51,50,51,53,53,102,102,98,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,49,54,97,50,101,48,98,56,102,48,51,101,49,51,100,100,50,57,52,53,53,99,53,99,50,97,51,100,0,48,120,98,55,48,101,48,99,98,100,54,98,98,52,98,102,55,102,51,50,49,51,57,48,98,57,52,97,48,51,99,49,100,51,53,54,99,50,49,49,50,50,51,52,51,50,56,48,100,54,49,49,53,99,49,100,50,49,0,48,120,98,100,51,55,54,51,56,56,98,53,102,55,50,51,102,98,52,99,50,50,100,102,101,54,99,100,52,51,55,53,97,48,53,97,48,55,52,55,54,52,52,52,100,53,56,49,57,57,56,53,48,48,55,101,51,52,0,78,73,83,84,32,80,45,50,53,54,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,49,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,53,97,99,54,51,53,100,56,97,97,51,97,57,51,101,55,98,51,101,98,98,100,53,53,55,54,57,56,56,54,98,99,54,53,49,100,48,54,98,48,99,99,53,51,98,48,102,54,51,98,99,101,51,99,51,101,50,55,100,50,54,48,52,98,0,48,120,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,98,99,101,54,102,97,97,100,97,55,49,55,57,101,56,52,102,51,98,57,99,97,99,50,102,99,54,51,50,53,53,49,0,48,120,54,98,49,55,100,49,102,50,101,49,50,99,52,50,52,55,102,56,98,99,101,54,101,53,54,51,97,52,52,48,102,50,55,55,48,51,55,100,56,49,50,100,101,98,51,51,97,48,102,52,97,49,51,57,52,53,100,56,57,56,99,50,57,54,0,48,120,52,102,101,51,52,50,101,50,102,101,49,97,55,102,57,98,56,101,101,55,101,98,52,97,55,99,48,102,57,101,49,54,50,98,99,101,51,51,53,55,54,98,51,49,53,101,99,101,99,98,98,54,52,48,54,56,51,55,98,102,53,49,102,53,0,78,73,83,84,32,80,45,51,56,52,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,101,102,102,102,102,102,102,102,102,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,102,102,102,102,102,102,102,99,0,48,120,98,51,51,49,50,102,97,55,101,50,51,101,101,55,101,52,57,56,56,101,48,53,54,98,101,51,102,56,50,100,49,57,49,56,49,100,57,99,54,101,102,101,56,49,52,49,49,50,48,51,49,52,48,56,56,102,53,48,49,51,56,55,53,97,99,54,53,54,51,57,56,100,56,97,50,101,100,49,57,100,50,97,56,53,99,56,101,100,100,51,101,99,50,97,101,102,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,55,54,51,52,100,56,49,102,52,51,55,50,100,100,102,53,56,49,97,48,100,98,50,52,56,98,48,97,55,55,97,101,99,101,99,49,57,54,97,99,99,99,53,50,57,55,51,0,48,120,97,97,56,55,99,97,50,50,98,101,56,98,48,53,51,55,56,101,98,49,99,55,49,101,102,51,50,48,97,100,55,52,54,101,49,100,51,98,54,50,56,98,97,55,57,98,57,56,53,57,102,55,52,49,101,48,56,50,53,52,50,97,51,56,53,53,48,50,102,50,53,100,98,102,53,53,50,57,54,99,51,97,53,52,53,101,51,56,55,50,55,54,48,97,98,55,0,48,120,51,54,49,55,100,101,52,97,57,54,50,54,50,99,54,102,53,100,57,101,57,56,98,102,57,50,57,50,100,99,50,57,102,56,102,52,49,100,98,100,50,56,57,97,49,52,55,99,101,57,100,97,51,49,49,51,98,53,102,48,98,56,99,48,48,97,54,48,98,49,99,101,49,100,55,101,56,49,57,100,55,97,52,51,49,100,55,99,57,48,101,97,48,101,53,102,0,78,73,83,84,32,80,45,53,50,49,0,48,120,48,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,0,48,120,48,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,99,0,48,120,48,53,49,57,53,51,101,98,57,54,49,56,101,49,99,57,97,49,102,57,50,57,97,50,49,97,48,98,54,56,53,52,48,101,101,97,50,100,97,55,50,53,98,57,57,98,51,49,53,102,51,98,56,98,52,56,57,57,49,56,101,102,49,48,57,101,49,53,54,49,57,51,57,53,49,101,99,55,101,57,51,55,98,49,54,53,50,99,48,98,100,51,98,98,49,98,102,48,55,51,53,55,51,100,102,56,56,51,100,50,99,51,52,102,49,101,102,52,53,49,102,100,52,54,98,53,48,51,102,48,48,0,48,120,49,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,97,53,49,56,54,56,55,56,51,98,102,50,102,57,54,54,98,55,102,99,99,48,49,52,56,102,55,48,57,97,53,100,48,51,98,98,53,99,57,98,56,56,57,57,99,52,55,97,101,98,98,54,102,98,55,49,101,57,49,51,56,54,52,48,57,0,48,120,48,48,99,54,56,53,56,101,48,54,98,55,48,52,48,52,101,57,99,100,57,101,51,101,99,98,54,54,50,51,57,53,98,52,52,50,57,99,54,52,56,49,51,57,48,53,51,102,98,53,50,49,102,56,50,56,97,102,54,48,54,98,52,100,51,100,98,97,97,49,52,98,53,101,55,55,101,102,101,55,53,57,50,56,102,101,49,100,99,49,50,55,97,50,102,102,97,56,100,101,51,51,52,56,98,51,99,49,56,53,54,97,52,50,57,98,102,57,55,101,55,101,51,49,99,50,101,53,98,100,54,54,0,48,120,48,49,49,56,51,57,50,57,54,97,55,56,57,97,51,98,99,48,48,52,53,99,56,97,53,102,98,52,50,99,55,100,49,98,100,57,57,56,102,53,52,52,52,57,53,55,57,98,52,52,54,56,49,55,97,102,98,100,49,55,50,55,51,101,54,54,50,99,57,55,101,101,55,50,57,57,53,101,102,52,50,54,52,48,99,53,53,48,98,57,48,49,51,102,97,100,48,55,54,49,51,53,51,99,55,48,56,54,97,50,55,50,99,50,52,48,56,56,98,101,57,52,55,54,57,102,100,49,54,54,53,48,0,98,114,97,105,110,112,111,111,108,80,49,54,48,114,49,0,48,120,101,57,53,101,52,97,53,102,55,51,55,48,53,57,100,99,54,48,100,102,99,55,97,100,57,53,98,51,100,56,49,51,57,53,49,53,54,50,48,102,0,48,120,51,52,48,101,55,98,101,50,97,50,56,48,101,98,55,52,101,50,98,101,54,49,98,97,100,97,55,52,53,100,57,55,101,56,102,55,99,51,48,48,0,48,120,49,101,53,56,57,97,56,53,57,53,52,50,51,52,49,50,49,51,52,102,97,97,50,100,98,100,101,99,57,53,99,56,100,56,54,55,53,101,53,56,0,48,120,101,57,53,101,52,97,53,102,55,51,55,48,53,57,100,99,54,48,100,102,53,57,57,49,100,52,53,48,50,57,52,48,57,101,54,48,102,99,48,57,0,48,120,98,101,100,53,97,102,49,54,101,97,51,102,54,97,52,102,54,50,57,51,56,99,52,54,51,49,101,98,53,97,102,55,98,100,98,99,100,98,99,51,0,48,120,49,54,54,55,99,98,52,55,55,97,49,97,56,101,99,51,51,56,102,57,52,55,52,49,54,54,57,99,57,55,54,51,49,54,100,97,54,51,50,49,0,98,114,97,105,110,112,111,111,108,80,49,57,50,114,49,0,48,120,99,51,48,50,102,52,49,100,57,51,50,97,51,54,99,100,97,55,97,51,52,54,51,48,57,51,100,49,56,100,98,55,56,102,99,101,52,55,54,100,101,49,97,56,54,50,57,55,0,48,120,54,97,57,49,49,55,52,48,55,54,98,49,101,48,101,49,57,99,51,57,99,48,51,49,102,101,56,54,56,53,99,49,99,97,101,48,52,48,101,53,99,54,57,97,50,56,101,102,0,48,120,52,54,57,97,50,56,101,102,55,99,50,56,99,99,97,51,100,99,55,50,49,100,48,52,52,102,52,52,57,54,98,99,99,97,55,101,102,52,49,52,54,102,98,102,50,53,99,57,0,48,120,99,51,48,50,102,52,49,100,57,51,50,97,51,54,99,100,97,55,97,51,52,54,50,102,57,101,57,101,57,49,54,98,53,98,101,56,102,49,48,50,57,97,99,52,97,99,99,49,0,48,120,99,48,97,48,54,52,55,101,97,97,98,54,97,52,56,55,53,51,98,48,51,51,99,53,54,99,98,48,102,48,57,48,48,97,50,102,53,99,52,56,53,51,51,55,53,102,100,54,0,48,120,49,52,98,54,57,48,56,54,54,97,98,100,53,98,98,56,56,98,53,102,52,56,50,56,99,49,52,57,48,48,48,50,101,54,55,55,51,102,97,50,102,97,50,57,57,98,56,102,0,98,114,97,105,110,112,111,111,108,80,50,50,52,114,49,0,48,120,100,55,99,49,51,52,97,97,50,54,52,51,54,54,56,54,50,97,49,56,51,48,50,53,55,53,100,49,100,55,56,55,98,48,57,102,48,55,53,55,57,55,100,97,56,57,102,53,55,101,99,56,99,48,102,102,0,48,120,54,56,97,53,101,54,50,99,97,57,99,101,54,99,49,99,50,57,57,56,48,51,97,54,99,49,53,51,48,98,53,49,52,101,49,56,50,97,100,56,98,48,48,52,50,97,53,57,99,97,100,50,57,102,52,51,0,48,120,50,53,56,48,102,54,51,99,99,102,101,52,52,49,51,56,56,55,48,55,49,51,98,49,97,57,50,51,54,57,101,51,51,101,50,49,51,53,100,50,54,54,100,98,98,51,55,50,51,56,54,99,52,48,48,98,0,48,120,100,55,99,49,51,52,97,97,50,54,52,51,54,54,56,54,50,97,49,56,51,48,50,53,55,53,100,48,102,98,57,56,100,49,49,54,98,99,52,98,54,100,100,101,98,99,97,51,97,53,97,55,57,51,57,102,0,48,120,48,100,57,48,50,57,97,100,50,99,55,101,53,99,102,52,51,52,48,56,50,51,98,50,97,56,55,100,99,54,56,99,57,101,52,99,101,51,49,55,52,99,49,101,54,101,102,100,101,101,49,50,99,48,55,100,0,48,120,53,56,97,97,53,54,102,55,55,50,99,48,55,50,54,102,50,52,99,54,98,56,57,101,52,101,99,100,97,99,50,52,51,53,52,98,57,101,57,57,99,97,97,51,102,54,100,51,55,54,49,52,48,50,99,100,0,98,114,97,105,110,112,111,111,108,80,50,53,54,114,49,0,48,120,97,57,102,98,53,55,100,98,97,49,101,101,97,57,98,99,51,101,54,54,48,97,57,48,57,100,56,51,56,100,55,50,54,101,51,98,102,54,50,51,100,53,50,54,50,48,50,56,50,48,49,51,52,56,49,100,49,102,54,101,53,51,55,55,0,48,120,55,100,53,97,48,57,55,53,102,99,50,99,51,48,53,55,101,101,102,54,55,53,51,48,52,49,55,97,102,102,101,55,102,98,56,48,53,53,99,49,50,54,100,99,53,99,54,99,101,57,52,97,52,98,52,52,102,51,51,48,98,53,100,57,0,48,120,50,54,100,99,53,99,54,99,101,57,52,97,52,98,52,52,102,51,51,48,98,53,100,57,98,98,100,55,55,99,98,102,57,53,56,52,49,54,50,57,53,99,102,55,101,49,99,101,54,98,99,99,100,99,49,56,102,102,56,99,48,55,98,54,0,48,120,97,57,102,98,53,55,100,98,97,49,101,101,97,57,98,99,51,101,54,54,48,97,57,48,57,100,56,51,56,100,55,49,56,99,51,57,55,97,97,51,98,53,54,49,97,54,102,55,57,48,49,101,48,101,56,50,57,55,52,56,53,54,97,55,0,48,120,56,98,100,50,97,101,98,57,99,98,55,101,53,55,99,98,50,99,52,98,52,56,50,102,102,99,56,49,98,55,97,102,98,57,100,101,50,55,101,49,101,51,98,100,50,51,99,50,51,97,52,52,53,51,98,100,57,97,99,101,51,50,54,50,0,48,120,53,52,55,101,102,56,51,53,99,51,100,97,99,52,102,100,57,55,102,56,52,54,49,97,49,52,54,49,49,100,99,57,99,50,55,55,52,53,49,51,50,100,101,100,56,101,53,52,53,99,49,100,53,52,99,55,50,102,48,52,54,57,57,55,0,98,114,97,105,110,112,111,111,108,80,51,50,48,114,49,0,48,120,100,51,53,101,52,55,50,48,51,54,98,99,52,102,98,55,101,49,51,99,55,56,53,101,100,50,48,49,101,48,54,53,102,57,56,102,99,102,97,54,102,54,102,52,48,100,101,102,52,102,57,50,98,57,101,99,55,56,57,51,101,99,50,56,102,99,100,52,49,50,98,49,102,49,98,51,50,101,50,55,0,48,120,51,101,101,51,48,98,53,54,56,102,98,97,98,48,102,56,56,51,99,99,101,98,100,52,54,100,51,102,51,98,98,56,97,50,97,55,51,53,49,51,102,53,101,98,55,57,100,97,54,54,49,57,48,101,98,48,56,53,102,102,97,57,102,52,57,50,102,51,55,53,97,57,55,100,56,54,48,101,98,52,0,48,120,53,50,48,56,56,51,57,52,57,100,102,100,98,99,52,50,100,51,97,100,49,57,56,54,52,48,54,56,56,97,54,102,101,49,51,102,52,49,51,52,57,53,53,52,98,52,57,97,99,99,51,49,100,99,99,100,56,56,52,53,51,57,56,49,54,102,53,101,98,52,97,99,56,102,98,49,102,49,97,54,0,48,120,100,51,53,101,52,55,50,48,51,54,98,99,52,102,98,55,101,49,51,99,55,56,53,101,100,50,48,49,101,48,54,53,102,57,56,102,99,102,97,53,98,54,56,102,49,50,97,51,50,100,52,56,50,101,99,55,101,101,56,54,53,56,101,57,56,54,57,49,53,53,53,98,52,52,99,53,57,51,49,49,0,48,120,52,51,98,100,55,101,57,97,102,98,53,51,100,56,98,56,53,50,56,57,98,99,99,52,56,101,101,53,98,102,101,54,102,50,48,49,51,55,100,49,48,97,48,56,55,101,98,54,101,55,56,55,49,101,50,97,49,48,97,53,57,57,99,55,49,48,97,102,56,100,48,100,51,57,101,50,48,54,49,49,0,48,120,49,52,102,100,100,48,53,53,52,53,101,99,49,99,99,56,97,98,52,48,57,51,50,52,55,102,55,55,50,55,53,101,48,55,52,51,102,102,101,100,49,49,55,49,56,50,101,97,97,57,99,55,55,56,55,55,97,97,97,99,54,97,99,55,100,51,53,50,52,53,100,49,54,57,50,101,56,101,101,49,0,98,114,97,105,110,112,111,111,108,80,51,56,52,114,49,0,48,120,56,99,98,57,49,101,56,50,97,51,51,56,54,100,50,56,48,102,53,100,54,102,55,101,53,48,101,54,52,49,100,102,49,53,50,102,55,49,48,57,101,100,53,52,53,54,98,52,49,50,98,49,100,97,49,57,55,102,98,55,49,49,50,51,97,99,100,51,97,55,50,57,57,48,49,100,49,97,55,49,56,55,52,55,48,48,49,51,51,49,48,55,101,99,53,51,0,48,120,55,98,99,51,56,50,99,54,51,100,56,99,49,53,48,99,51,99,55,50,48,56,48,97,99,101,48,53,97,102,97,48,99,50,98,101,97,50,56,101,52,102,98,50,50,55,56,55,49,51,57,49,54,53,101,102,98,97,57,49,102,57,48,102,56,97,97,53,56,49,52,97,53,48,51,97,100,52,101,98,48,52,97,56,99,55,100,100,50,50,99,101,50,56,50,54,0,48,120,48,52,97,56,99,55,100,100,50,50,99,101,50,56,50,54,56,98,51,57,98,53,53,52,49,54,102,48,52,52,55,99,50,102,98,55,55,100,101,49,48,55,100,99,100,50,97,54,50,101,56,56,48,101,97,53,51,101,101,98,54,50,100,53,55,99,98,52,51,57,48,50,57,53,100,98,99,57,57,52,51,97,98,55,56,54,57,54,102,97,53,48,52,99,49,49,0,48,120,56,99,98,57,49,101,56,50,97,51,51,56,54,100,50,56,48,102,53,100,54,102,55,101,53,48,101,54,52,49,100,102,49,53,50,102,55,49,48,57,101,100,53,52,53,54,98,51,49,102,49,54,54,101,54,99,97,99,48,52,50,53,97,55,99,102,51,97,98,54,97,102,54,98,55,102,99,51,49,48,51,98,56,56,51,50,48,50,101,57,48,52,54,53,54,53,0,48,120,49,100,49,99,54,52,102,48,54,56,99,102,52,53,102,102,97,50,97,54,51,97,56,49,98,55,99,49,51,102,54,98,56,56,52,55,97,51,101,55,55,101,102,49,52,102,101,51,100,98,55,102,99,97,102,101,48,99,98,100,49,48,101,56,101,56,50,54,101,48,51,52,51,54,100,54,52,54,97,97,101,102,56,55,98,50,101,50,52,55,100,52,97,102,49,101,0,48,120,56,97,98,101,49,100,55,53,50,48,102,57,99,50,97,52,53,99,98,49,101,98,56,101,57,53,99,102,100,53,53,50,54,50,98,55,48,98,50,57,102,101,101,99,53,56,54,52,101,49,57,99,48,53,52,102,102,57,57,49,50,57,50,56,48,101,52,54,52,54,50,49,55,55,57,49,56,49,49,49,52,50,56,50,48,51,52,49,50,54,51,99,53,51,49,53,0,98,114,97,105,110,112,111,111,108,80,53,49,50,114,49,0,48,120,97,97,100,100,57,100,98,56,100,98,101,57,99,52,56,98,51,102,100,52,101,54,97,101,51,51,99,57,102,99,48,55,99,98,51,48,56,100,98,51,98,51,99,57,100,50,48,101,100,54,54,51,57,99,99,97,55,48,51,51,48,56,55,49,55,100,52,100,57,98,48,48,57,98,99,54,54,56,52,50,97,101,99,100,97,49,50,97,101,54,97,51,56,48,101,54,50,56,56,49,102,102,50,102,50,100,56,50,99,54,56,53,50,56,97,97,54,48,53,54,53,56,51,97,52,56,102,51,0,48,120,55,56,51,48,97,51,51,49,56,98,54,48,51,98,56,57,101,50,51,50,55,49,52,53,97,99,50,51,52,99,99,53,57,52,99,98,100,100,56,100,51,100,102,57,49,54,49,48,97,56,51,52,52,49,99,97,101,97,57,56,54,51,98,99,50,100,101,100,53,100,53,97,97,56,50,53,51,97,97,49,48,97,50,101,102,49,99,57,56,98,57,97,99,56,98,53,55,102,49,49,49,55,97,55,50,98,102,50,99,55,98,57,101,55,99,49,97,99,52,100,55,55,102,99,57,52,99,97,0,48,120,51,100,102,57,49,54,49,48,97,56,51,52,52,49,99,97,101,97,57,56,54,51,98,99,50,100,101,100,53,100,53,97,97,56,50,53,51,97,97,49,48,97,50,101,102,49,99,57,56,98,57,97,99,56,98,53,55,102,49,49,49,55,97,55,50,98,102,50,99,55,98,57,101,55,99,49,97,99,52,100,55,55,102,99,57,52,99,97,100,99,48,56,51,101,54,55,57,56,52,48,53,48,98,55,53,101,98,97,101,53,100,100,50,56,48,57,98,100,54,51,56,48,49,54,102,55,50,51,0,48,120,97,97,100,100,57,100,98,56,100,98,101,57,99,52,56,98,51,102,100,52,101,54,97,101,51,51,99,57,102,99,48,55,99,98,51,48,56,100,98,51,98,51,99,57,100,50,48,101,100,54,54,51,57,99,99,97,55,48,51,51,48,56,55,48,53,53,51,101,53,99,52,49,52,99,97,57,50,54,49,57,52,49,56,54,54,49,49,57,55,102,97,99,49,48,52,55,49,100,98,49,100,51,56,49,48,56,53,100,100,97,100,100,98,53,56,55,57,54,56,50,57,99,97,57,48,48,54,57,0,48,120,56,49,97,101,101,52,98,100,100,56,50,101,100,57,54,52,53,97,50,49,51,50,50,101,57,99,52,99,54,97,57,51,56,53,101,100,57,102,55,48,98,53,100,57,49,54,99,49,98,52,51,98,54,50,101,101,102,52,100,48,48,57,56,101,102,102,51,98,49,102,55,56,101,50,100,48,100,52,56,100,53,48,100,49,54,56,55,98,57,51,98,57,55,100,53,102,55,99,54,100,53,48,52,55,52,48,54,97,53,101,54,56,56,98,51,53,50,50,48,57,98,99,98,57,102,56,50,50,0,48,120,55,100,100,101,51,56,53,100,53,54,54,51,51,50,101,99,99,48,101,97,98,102,97,57,99,102,55,56,50,50,102,100,102,50,48,57,102,55,48,48,50,52,97,53,55,98,49,97,97,48,48,48,99,53,53,98,56,56,49,102,56,49,49,49,98,50,100,99,100,101,52,57,52,97,53,102,52,56,53,101,53,98,99,97,52,98,100,56,56,97,50,55,54,51,97,101,100,49,99,97,50,98,50,102,97,56,102,48,53,52,48,54,55,56,99,100,49,101,48,102,51,97,100,56,48,56,57,50,0,71,79,83,84,50,48,48,49,45,116,101,115,116,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,52,51,49,0,48,120,48,48,48,48,48,48,48,48,48,48,48],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,55,0,48,120,53,102,98,102,102,52,57,56,97,97,57,51,56,99,101,55,51,57,98,56,101,48,50,50,102,98,97,102,101,102,52,48,53,54,51,102,54,101,54,97,51,52,55,50,102,99,50,97,53,49,52,99,48,99,101,57,100,97,101,50,51,98,55,101,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,53,48,102,101,56,97,49,56,57,50,57,55,54,49,53,52,99,53,57,99,102,99,49,57,51,97,99,99,102,53,98,51,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,50,0,48,120,48,56,101,50,97,56,97,48,101,54,53,49,52,55,100,52,98,100,54,51,49,54,48,51,48,101,49,54,100,49,57,99,56,53,99,57,55,102,48,97,57,99,97,50,54,55,49,50,50,98,57,54,97,98,98,99,101,97,55,101,56,102,99,56,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,65,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,57,55,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,57,52,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,97,54,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,54,99,54,49,49,48,55,48,57,57,53,97,100,49,48,48,52,53,56,52,49,98,48,57,98,55,54,49,98,56,57,51,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,0,48,120,56,100,57,49,101,52,55,49,101,48,57,56,57,99,100,97,50,55,100,102,53,48,53,97,52,53,51,102,50,98,55,54,51,53,50,57,52,102,50,100,100,102,50,51,101,51,98,49,50,50,97,99,99,57,57,99,57,101,57,102,49,101,49,52,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,66,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,99,57,57,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,99,57,54,0,48,120,51,101,49,97,102,52,49,57,97,50,54,57,97,53,102,56,54,54,97,55,100,51,99,50,53,99,51,100,102,56,48,97,101,57,55,57,50,53,57,51,55,51,102,102,50,98,49,56,50,102,52,57,100,52,99,101,55,101,49,98,98,99,56,98,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,53,102,55,48,48,99,102,102,102,49,97,54,50,52,101,53,101,52,57,55,49,54,49,98,99,99,56,97,49,57,56,102,0,48,120,51,102,97,56,49,50,52,51,53,57,102,57,54,54,56,48,98,56,51,100,49,99,51,101,98,50,99,48,55,48,101,53,99,53,52,53,99,57,56,53,56,100,48,51,101,99,102,98,55,52,52,98,102,56,100,55,49,55,55,49,55,101,102,99,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,67,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,99,102,56,52,54,101,56,54,55,56,57,48,53,49,100,51,55,57,57,56,102,55,98,57,48,50,50,100,55,53,57,98,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,99,102,56,52,54,101,56,54,55,56,57,48,53,49,100,51,55,57,57,56,102,55,98,57,48,50,50,100,55,53,57,56,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,48,53,97,0,48,120,57,98,57,102,54,48,53,102,53,97,56,53,56,49,48,55,97,98,49,101,99,56,53,101,54,98,52,49,99,56,97,97,53,56,50,99,97,51,53,49,49,101,100,100,102,98,55,52,102,48,50,102,51,97,54,53,57,56,57,56,48,98,98,57,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,0,48,120,52,49,101,99,101,53,53,55,52,51,55,49,49,97,56,99,51,99,98,102,51,55,56,51,99,100,48,56,99,48,101,101,52,100,52,100,99,52,52,48,100,52,54,52,49,97,56,102,51,54,54,101,53,53,48,100,102,100,98,51,98,98,54,55,0,71,79,83,84,50,48,49,50,45,116,101,115,116,0,48,120,52,53,51,49,97,99,100,49,102,101,48,48,50,51,99,55,53,53,48,100,50,54,55,98,54,98,50,102,101,101,56,48,57,50,50,98,49,52,98,50,102,102,98,57,48,102,48,52,100,52,101,98,55,99,48,57,98,53,100,50,100,49,53,100,102,49,100,56,53,50,55,52,49,97,102,52,55,48,52,97,48,52,53,56,48,52,55,101,56,48,101,52,53,52,54,100,51,53,98,56,51,51,54,102,97,99,50,50,52,100,100,56,49,54,54,52,98,98,102,53,50,56,98,101,54,51,55,51,0,48,120,49,99,102,102,48,56,48,54,97,51,49,49,49,54,100,97,50,57,100,56,99,102,97,53,52,101,53,55,101,98,55,52,56,98,99,53,102,51,55,55,101,52,57,52,48,48,102,100,100,55,56,56,98,54,52,57,101,99,97,49,97,99,52,51,54,49,56,51,52,48,49,51,98,50,97,100,55,51,50,50,52,56,48,97,56,57,99,97,53,56,101,48,99,102,55,52,98,99,57,101,53,52,48,99,50,97,100,100,54,56,57,55,102,97,100,48,97,51,48,56,52,102,51,48,50,97,100,99,0,48,120,52,53,51,49,97,99,100,49,102,101,48,48,50,51,99,55,53,53,48,100,50,54,55,98,54,98,50,102,101,101,56,48,57,50,50,98,49,52,98,50,102,102,98,57,48,102,48,52,100,52,101,98,55,99,48,57,98,53,100,50,100,49,53,100,97,56,50,102,50,100,55,101,99,98,49,100,98,97,99,55,49,57,57,48,53,99,53,101,101,99,99,52,50,51,102,49,100,56,54,101,50,53,101,100,98,101,50,51,99,53,57,53,100,54,52,52,97,97,102,49,56,55,101,54,101,54,100,102,0,48,120,50,52,100,49,57,99,99,54,52,53,55,50,101,101,51,48,102,51,57,54,98,102,54,101,98,98,102,100,55,97,54,99,53,50,49,51,98,51,98,51,100,55,48,53,55,99,99,56,50,53,102,57,49,48,57,51,97,54,56,99,100,55,54,50,102,100,54,48,54,49,49,50,54,50,99,100,56,51,56,100,99,54,98,54,48,97,97,55,101,101,101,56,48,52,101,50,56,98,99,56,52,57,57,55,55,102,97,99,51,51,98,52,98,53,51,48,102,49,98,49,50,48,50,52,56,97,57,97,0,48,120,50,98,98,51,49,50,97,52,51,98,100,50,99,101,54,101,48,100,48,50,48,54,49,51,99,56,53,55,97,99,100,100,99,102,98,102,48,54,49,101,57,49,101,53,102,50,99,51,102,51,50,52,52,55,99,50,53,57,102,51,57,98,50,99,56,51,97,98,49,53,54,100,55,55,102,49,52,57,54,98,102,55,101,98,51,51,53,49,101,49,101,101,52,101,52,51,100,99,49,97,49,56,98,57,49,98,50,52,54,52,48,98,54,100,98,98,57,50,99,98,49,97,100,100,51,55,49,101,0,71,79,83,84,50,48,49,50,45,116,99,50,54,45,65,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,99,55,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,100,99,52,0,48,120,101,56,99,50,53,48,53,100,101,100,102,99,56,54,100,100,99,49,98,100,48,98,50,98,54,54,54,55,102,49,100,97,51,52,98,56,50,53,55,52,55,54,49,99,98,48,101,56,55,57,98,100,48,56,49,99,102,100,48,98,54,50,54,53,101,101,51,99,98,48,57,48,102,51,48,100,50,55,54,49,52,99,98,52,53,55,52,48,49,48,100,97,57,48,100,100,56,54,50,101,102,57,100,52,101,98,101,101,52,55,54,49,53,48,51,49,57,48,55,56,53,97,55,49,99,55,54,48,0,48,120,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,50,55,101,54,57,53,51,50,102,52,56,100,56,57,49,49,54,102,102,50,50,98,56,100,52,101,48,53,54,48,54,48,57,98,52,98,51,56,97,98,102,97,100,50,98,56,53,100,99,97,99,100,98,49,52,49,49,102,49,48,98,50,55,53,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,51,0,48,120,55,53,48,51,99,102,101,56,55,97,56,51,54,97,101,51,97,54,49,98,56,56,49,54,101,50,53,52,53,48,101,54,99,101,53,101,49,99,57,51,97,99,102,49,97,98,99,49,55,55,56,48,54,52,102,100,99,98,101,102,97,57,50,49,100,102,49,54,50,54,98,101,52,102,100,48,51,54,101,57,51,100,55,53,101,54,97,53,48,101,51,97,52,49,101,57,56,48,50,56,102,101,53,102,99,50,51,53,102,53,98,56,56,57,97,53,56,57,99,98,53,50,49,53,102,50,97,52,0,71,79,83,84,50,48,49,50,45,116,99,50,54,45,66,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,54,102,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,54,99,0,48,120,54,56,55,100,49,98,52,53,57,100,99,56,52,49,52,53,55,101,51,101,48,54,99,102,54,102,53,101,50,53,49,55,98,57,55,99,55,100,54,49,52,97,102,49,51,56,98,99,98,102,56,53,100,99,56,48,54,99,52,98,50,56,57,102,51,101,57,54,53,100,50,100,98,49,52,49,54,100,50,49,55,102,56,98,50,55,54,102,97,100,49,97,98,54,57,99,53,48,102,55,56,98,101,101,49,102,97,51,49,48,54,101,102,98,56,99,99,98,99,55,99,53,49,52,48,49,49,54,0,48,120,56,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,49,52,57,97,49,101,99,49,52,50,53,54,53,97,53,52,53,97,99,102,100,98,55,55,98,100,57,100,52,48,99,102,97,56,98,57,57,54,55,49,50,49,48,49,98,101,97,48,101,99,54,51,52,54,99,53,52,51,55,52,102,50,53,98,100,0,48,120,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,50,0,48,120,49,97,56,102,55,101,100,97,51,56,57,98,48,57,52,99,50,99,48,55,49,101,51,54,52,55,97,56,57,52,48,102,51,99,49,50,51,98,54,57,55,53,55,56,99,50,49,51,98,101,54,100,100,57,101,54,99,56,101,99,55,51,51,53,100,99,98,50,50,56,102,100,49,101,100,102,52,97,51,57,49,53,50,99,98,99,97,97,102,56,99,48,51,57,56,56,50,56,48,52,49,48,53,53,102,57,52,99,101,101,101,99,55,101,50,49,51,52,48,55,56,48,102,101,52,49,98,100,0,115,101,99,112,50,53,54,107,49,0,48,120,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,70,70,70,70,70,67,50,70,0,48,120,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,66,65,65,69,68,67,69,54,65,70,52,56,65,48,51,66,66,70,68,50,53,69,56,67,68,48,51,54,52,49,52,49,0,48,120,55,57,66,69,54,54,55,69,70,57,68,67,66,66,65,67,53,53,65,48,54,50,57,53,67,69,56,55,48,66,48,55,48,50,57,66,70,67,68,66,50,68,67,69,50,56,68,57,53,57,70,50,56,49,53,66,49,54,70,56,49,55,57,56,0,48,120,52,56,51,65,68,65,55,55,50,54,65,51,67,52,54,53,53,68,65,52,70,66,70,67,48,69,49,49,48,56,65,56,70,68,49,55,66,52,52,56,65,54,56,53,53,52,49,57,57,67,52,55,68,48,56,70,70,66,49,48,68,52,66,56,0,49,46,51,46,54,46,49,46,52,46,49,46,49,49,53,57,49,46,49,53,46,49,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,51,46,49,46,49,0,112,114,105,109,101,49,57,50,118,49,0,115,101,99,112,49,57,50,114,49,0,110,105,115,116,112,49,57,50,0,115,101,99,112,50,50,52,114,49,0,49,46,51,46,49,51,50,46,48,46,51,51,0,110,105,115,116,112,50,50,52,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,51,46,49,46,55,0,112,114,105,109,101,50,53,54,118,49,0,115,101,99,112,50,53,54,114,49,0,110,105,115,116,112,50,53,54,0,115,101,99,112,51,56,52,114,49,0,49,46,51,46,49,51,50,46,48,46,51,52,0,110,105,115,116,112,51,56,52,0,115,101,99,112,53,50,49,114,49,0,49,46,51,46,49,51,50,46,48,46,51,53,0,110,105,115,116,112,53,50,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,51,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,53,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,55,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,57,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,51,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,48,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,49,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,50,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,51,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,88,99,104,65,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,88,99,104,66,0,49,46,50,46,54,52,51,46,50,46,50,46,51,54,46,48,0,49,46,50,46,54,52,51,46,50,46,50,46,51,54,46,49,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,49,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,50,0,49,46,51,46,49,51,50,46,48,46,49,48,0,48,120,48,52,0,45,112,97,98,103,110,104,0,98,0,103,0,46,120,0,46,121,0,46,122,0,104,0,100,0,101,99,99,32,103,101,116,32,112,97,114,97,109,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,40,112,117,98,108,105,99,45,107,101,121,40,101,99,99,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,41,41,0,103,46,120,0,103,46,121,0,113,46,120,0,113,46,121,0,101,100,100,115,97,95,101,110,99,111,100,101,112,111,105,110,116,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,48,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,68,0,115,99,97,110,110,105,110,103,32,69,67,67,32,112,97,114,97,109,101,116,101,114,32,102,97,105,108,101,100,58,32,37,115,10,0,50,66,56,51,50,52,56,48,52,70,67,49,68,70,48,66,50,66,52,68,48,48,57,57,51,68,70,66,68,55,65,55,50,70,52,51,49,56,48,54,65,68,50,70,69,52,55,56,67,52,69,69,49,66,50,55,52,65,48,69,65,48,66,48,0,101,99,103,101,110,32,32,32,32,32,32,112,107,0,42,32,101,95,112,107,0,32,32,101,95,112,107,0,32,32,32,32,32,109,0,32,32,32,114,0,32,32,32,101,95,114,0,32,72,40,82,43,41,0,32,32,32,101,95,115,0,87,101,105,101,114,115,116,114,97,115,115,0,69,100,119,97,114,100,115,0,83,116,97,110,100,97,114,100,0,69,100,50,53,53,49,57,0,109,112,105,95,112,114,105,110,116,32,102,97,105,108,101,100,58,32,37,115,10,0,109,112,105,95,115,99,97,110,32,102,97,105,108,101,100,58,32,37,115,10,0,70,73,80,83,45,49,57,56,97,44,32,65,46,49,0,83,97,109,112,108,101,32,35,49,0,79,76,163,213,214,139,167,204,10,18,8,201,198,30,156,93,160,64,60,10,0,105,110,118,97,108,105,100,32,116,101,115,116,115,32,100,97,116,97,0,103,99,114,121,95,109,100,95,115,101,116,107,101,121,32,102,97,105,108,101,100,0,103,99,114,121,95,109,100,95,114,101,97,100,32,102,97,105,108,101,100,0,100,111,101,115,32,110,111,116,32,109,97,116,99,104,0,70,73,80,83,45,49,57,56,97,44,32,65,46,50,0,83,97,109,112,108,101,32,35,50,0,9,34,211,64,95,170,61,25,79,130,164,88,48,115,125,92,198,199,93,36,0,70,73,80,83,45,49,57,56,97,44,32,65,46,51,0,83,97,109,112,108,101,32,35,51,0,188,244,30,171,139,178,216,2,243,208,92,175,124,176,146,236,248,209,163,170,0,70,73,80,83,45,49,57,56,97,44,32,65,46,52,0,83,97,109,112,108,101,32,35,52,0,158,168,134,239,226,104,219,236,206,66,12,117,36,223,50,224,117,26,42,38,0,104,109,97,99,0,100,97,116,97,45,50,56,32,107,101,121,45,52,0,119,104,97,116,32,100,111,32,121,97,32,119,97,110,116,32,102,111,114,32,110,111,116,104,105,110,103,63,0,74,101,102,101,0,100,97,116,97,45,57,32,107,101,121,45,50,48,0,72,105,32,84,104,101,114,101,0,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,100,97,116,97,45,53,48,32,107,101,121,45,50,48,0,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,0,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,0,100,97,116,97,45,53,48,32,107,101,121,45,50,54,0,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,0,100,97,116,97,45,53,52,32,107,101,121,45,49,51,49,0,84,101,115,116,32,85,115,105,110,103,32,76,97,114,103,101,114,32,84,104,97,110,32,66,108,111,99,107,45,83,105,122,101,32,75,101,121,32,45,32,72,97,115,104,32,75,101,121,32,70,105,114,115,116,0,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,0,100,97,116,97,45,49,53,50,32,107,101,121,45,49,51,49,0,84,104,105,115,32,105,115,32,97,32,116,101,115,116,32,117,115,105,110,103,32,97,32,108,97,114,103,101,114,32,116,104,97,110,32,98,108,111,99,107,45,115,105,122,101,32,107,101,121,32,97,110,100,32,97,32,108,97,114,103,101,114,32,116,104,97,110,32,98,108,111,99,107,45,115,105,122,101,32,100,97,116,97,46,32,84,104,101,32,107,101,121,32,110,101,101,100,115,32,116,111,32,98,101,32,104,97,115,104,101,100,32,98,101,102,111,114,101,32,98,101,105,110,103,32,117,115,101,100,32,98,121,32,116,104,101,32,72,77,65,67,32,97,108,103,111,114,105,116,104,109,46,0,95,103,99,114,121,95,104,109,97,99,50,53,54,95,110,101,119,32,102,97,105,108,101,100,0,95,103,99,114,121,95,104,109,97,99,50,53,54,95,102,105,110,97,108,105,122,101,32,102,97,105,108,101,100,0,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,105,110,32,115,101,99,111,110,100,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,0,97,108,103,111,114,105,116,104,109,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,111,105,100,46,0,79,73,68,46,0,109,100,46,99,0,109,100,95,119,114,105,116,101,0,109,100,95,101,110,97,98,108,101,58,32,97,108,103,111,114,105,116,104,109,32,37,100,32,110,111,116,32,97,118,97,105,108,97,98,108,101,10,0,77,68,53,32,117,115,101,100,0,79,111,112,115,58,32,109,100,32,100,101,98,117,103,32,97,108,114,101,97,100,121,32,115,116,97,114,116,101,100,10,0,100,98,103,109,100,45,37,48,53,100,46,37,46,49,48,115,0,119,0,109,100,32,100,101,98,117,103,58,32,99,97,110,39,116,32,111,112,101,110,32,37,115,10,0,109,100,95,103,101,116,95,97,108,103,111,0,112,111,115,115,105,98,108,101,32,117,115,97,103,101,32,101,114,114,111,114,0,87,65,82,78,73,78,71,58,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,97,108,103,111,114,105,116,104,109,32,105,110,32,109,100,95,103,101,116,95,97,108,103,111,40,41,10,0,109,111,114,101,32,116,104,97,110,32,111,110,101,32,97,108,103,111,114,105,116,104,109,32,105,110,32,109,100,95,114,101,97,100,40,48,41,10,0,109,100,95,114,101,97,100,0,103,99,114,121,95,109,100,95,111,112,101,110,32,102,97,105,108,101,100,32,102,111,114,32,97,108,103,111,32,37,100,58,32,37,115,0,107,101,121,108,101,110,32,60,61,32,104,100,45,62,99,116,120,45,62,109,97,99,112,97,100,115,95,66,115,105,122,101,0,112,114,101,112,97,114,101,95,109,97,99,112,97,100,115,0,110,111,32,65,83,78,46,49,32,79,73,68,32,102,111,114,32,109,100,32,97,108,103,111,32,37,100,10,0,99,97,110,39,116,32,103,101,110,101,114,97,116,101,32,97,32,112,114,105,109,101,32,119,105,116,104,32,108,101,115,115,32,116,104,97,110,32,37,100,32,98,105,116,115,10,0,95,103,99,114,121,95,109,112,105,95,99,109,112,40,32,40,120,41,44,32,40,110,109,105,110,117,115,49,41,32,41,32,60,32,48,32,38,38,32,95,103,99,114,121,95,109,112,105,95,99,109,112,95,117,105,40,32,40,120,41,44,32,40,49,41,32,41,32,62,32,48,0,112,114,105,109,101,103,101,110,46,99,0,105,115,95,112,114,105,109,101,0,112,114,105,109,101,103,101,110,0,111,118,101,114,102,108,111,119,32,105,110,32,112,114,105,109,101,32,103,101,110,101,114,97,116,105,111,110,10,0,112,115,115,0,114,97,119,0,99,111,109,112,0,111,97,101,112,0,112,107,99,115,49,0,112,97,114,97,109,0,110,111,99,111,109,112,0,114,102,99,54,57,55,57,0,110,111,112,97,114,97,109,0,112,107,99,115,49,45,114,97,119,0,105,103,110,105,110,118,102,108,97,103,0,110,111,45,107,101,121,116,101,115,116,0,110,111,45,98,108,105,110,100,105,110,103,0,117,115,101,45,102,105,112,115,49,56,54,0,117,115,101,45,102,105,112,115,49,56,54,45,50,0,110,98,105,116,115,0,114,115,97,45,117,115,101,45,101,0,115,105,103,45,118,97,108,0,104,97,115,104,45,97,108,103,111,0,115,104,97,49,0,109,100,53,0,115,104,97,50,53,54,0,114,105,112,101,109,100,49,54,48,0,114,109,100,49,54,48,0,115,104,97,51,56,52,0,115,104,97,53,49,50,0,115,104,97,50,50,52,0,109,100,50,0,109,100,52,0,116,105,103,101,114,0,104,97,118,97,108,0,108,97,98,101,108,0,114,97,110,100,111,109,45,111,118,101,114,114,105,100,101,0,100,97,116,97,0,104,97,115,104,0,115,97,108,116,45,108,101,110,103,116,104,0,63,0,112,114,105,118,97,116,101,45,107,101,121,0,112,117,98,108,105,99,45,107,101,121,0,103,101,110,107,101,121,0,97,108,103,111,114,105,116,104,109,32,100,105,115,97,98,108,101,100,0,97,108,103,111,114,105,116,104,109,32,110,111,116,32,102,111,117,110,100,0,110,111,32,115,101,108,102,116,101,115,116,32,97,118,97,105,108,97,98,108,101,0,109,111,100,117,108,101,0,65,69,83,0,82,73,74,78,68,65,69,76,0,65,69,83,49,50,56,0,65,69,83,45,49,50,56,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,0,232,233,234,235,237,238,239,240,242,243,244,245,247,248,249,250,1,75,175,34,120,166,157,51,29,81,128,16,54,67,233,154,103,67,195,209,81,154,180,242,205,154,120,171,9,165,17,189,65,69,83,45,49,50,56,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,49,50,56,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,4,5,6,7,9,10,11,12,14,15,16,17,19,20,21,22,24,25,26,27,29,30,31,32,118,119,116,117,241,242,243,244,248,249,230,231,119,112,113,114,93,30,242,13,206,214,188,188,18,19,26,199,197,71,136,170,65,69,83,45,49,57,50,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,49,57,50,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,8,9,10,11,13,14,15,16,18,19,20,21,23,24,25,26,28,29,30,31,33,34,35,36,38,39,40,41,43,44,45,46,6,154,0,127,199,106,69,159,152,186,249,23,254,223,149,33,8,14,149,23,235,22,119,113,154,207,114,128,134,4,10,227,65,69,83,45,50,53,54,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,65,69,83,45,50,53,54,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,99,102,98,0,110,111,32,116,101,115,116,32,100,97,116,97,32,102,111,114,32,116,104,105,115,32,109,111,100,101,0,111,112,101,110,0,115,101,116,32,107,101,121,0,115,101,116,32,73,86,0,101,110,99,114,121,112,116,32,99,111,109,109,97,110,100,0,101,110,99,114,121,112,116,32,109,105,115,109,97,116,99,104,0,100,101,99,114,121,112,116,32,99,111,109,109,97,110,100,0,100,101,99,114,121,112,116,32,109,105,115,109,97,116,99,104,0,111,102,98,0,99,105,112,104,101,114,0,65,69,83,49,57,50,0,82,73,74,78,68,65,69,76,49,57,50,0,65,69,83,45,49,57,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,50,52,0,65,69,83,50,53,54,0,82,73,74,78,68,65,69,76,50,53,54,0,65,69,83,45,50,53,54,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,49,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,50,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,51,0,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,49,46,52,52,0,82,73,80,69,77,68,49,54,48,0,48,33,48,9,6,5,43,36,3,2,1,5,0,4,20,49,46,51,46,51,54,46,51,46,51,46,49,46,50,0,49,46,51,46,51,54,46,51,46,50,46,49,0,105,32,62,32,48,0,114,115,97,45,99,111,109,109,111,110,46,99,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,102,111,114,95,101,110,99,0,110,32,61,61,32,110,102,114,97,109,101,0,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,50,32,101,110,99,111,100,101,100,32,100,97,116,97,0,118,97,108,117,101,32,101,120,116,114,97,99,116,101,100,32,102,114,111,109,32,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,50,32,101,110,99,111,100,101,100,32,100,97,116,97,0,105,32,62,32,49,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,102,111,114,95,115,105,103,0,80,75,67,83,35,49,32,98,108,111,99,107,32,116,121,112,101,32,49,32,101,110,99,111,100,101,100,32,100,97,116,97,0,95,103,99,114,121,95,114,115,97,95,112,107,99,115,49,95,101,110,99,111,100,101,95,114,97,119,95,102,111,114,95,115,105,103,0,79,65,69,80,32,101,110,99,111,100,101,100,32,100,97,116,97,0,118,97,108,117,101,32,101,120,116,114,97,99,116,101,100,32,102,114,111,109,32,79,65,69,80,32,101,110,99,111,100,101,100,32,100,97,116,97,0,104,108,101,110,0,95,103,99,114,121,95,114,115,97,95,112,115,115,95,101,110,99,111,100,101,0,80,83,83,32,101,110,99,111,100,101,100,32,100,97,116,97,0,95,103,99,114,121,95,114,115,97,95,112,115,115,95,118,101,114,105,102,121,0,82,83,65,0,114,115,97,0,111,112,101,110,112,103,112,45,114,115,97,0,111,105,100,46,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,0,110,101,0,110,101,100,112,113,117,0,97,0,115,0,110,0,100,101,114,105,118,101,45,112,97,114,109,115,0,117,115,101,45,120,57,51,49,0,95,103,99,114,121,95,109,112,105,95,103,101,116,95,110,98,105,116,115,32,40,40,120,112,41,41,32,61,61,32,110,98,105,116,115,0,114,115,97,46,99,0,103,101,110,95,120,57,51,49,95,112,97,114,109,95,120,112,0,95,103,99,114,121,95,109,112,105,95,103,101,116,95,110,98,105,116,115,32,40,40,120,105,41,41,32,61,61,32,49,48,49,0,103,101,110,95,120,57,51,49,95,112,97,114,109,95,120,105,0,88,112,49,0,88,112,50,0,88,112,0,88,113,49,0,88,113,50,0,88,113,0,95,103,99,114,121,95,109,112,105,95,103,99,100,32,40,32,40,103,41,44,32,40,101,41,44,32,40,112,104,105,41,32,41,0,103,101,110,101,114,97,116,101,95,120,57,51,49,0,112,32,97,110,100,32,113,32,97,114,101,32,115,119,97,112,112,101,100,10,0,32,32,113,0,32,32,110,0,32,32,101,0,32,32,100,0,32,32,117,0,115,101,108,102,45,116,101,115,116,32,97,102,116,101,114,32,107,101,121,32,103,101,110,101,114,97,116,105,111,110,32,102,97,105,108,101,100,0,40,109,105,115,99,45,107,101,121,45,105,110,102,111,40,112,45,113,45,115,119,97,112,112,101,100,41,41,0,103,101,110,101,114,97,116,101,95,115,116,100,0,32,32,112,61,32,0,32,32,113,61,32,0,112,104,105,61,32,0,32,32,103,61,32,0,32,32,102,61,32,0,32,32,110,61,32,0,32,32,101,61,32,0,32,32,100,61,32,0,32,32,117,61,32,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,114,115,97,40,110,37,109,41,40,101,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,114,115,97,40,110,37,109,41,40,101,37,109,41,40,100,37,109,41,40,112,37,109,41,40,113,37,109,41,40,117,37,109,41,41,41,32,37,83,41,0,114,115,97,95,116,101,115,116,107,101,121,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,101,110,99,114,121,112,116,32,100,97,116,97,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,110,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,101,0,114,115,97,95,101,110,99,114,121,112,116,32,32,114,101,115,0,40,101,110,99,45,118,97,108,40,114,115,97,40,97,37,98,41,41,41,0,40,101,110,99,45,118,97,108,40,114,115,97,40,97,37,109,41,41,41,0,114,115,97,95,101,110,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,100,101,99,114,121,112,116,32,100,97,116,97,0,110,101,100,112,63,113,63,117,63,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,110,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,101,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,100,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,112,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,113,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,117,0,114,115,97,95,100,101,99,114,121,112,116,32,32,114,101,115,0,40,118,97,108,117,101,32,37,98,41,0,37,109,0,114,115,97,95,100,101,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,115,105,103,110,32,32,32,100,97,116,97,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,110,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,101,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,100,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,112,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,113,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,117,0,114,115,97,95,115,105,103,110,32,32,32,32,114,101,115,0,40,115,105,103,45,118,97,108,40,114,115,97,40,115,37,98,41,41,41,0,40,115,105,103,45,118,97,108,40,114,115,97,40,115,37,77,41,41,41,0,114,115,97,95,115,105,103,110,32,32,32,32,32,32,61,62,32,37,115,10,0,114,115,97,95,118,101,114,105,102,121,32,100,97,116,97,0,114,115,97,95,118,101,114,105,102,121,32,32,115,105,103,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,110,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,101,0,114,115,97,95,118,101,114,105,102,121,32,32,99,109,112,0,114,115,97,95,118,101,114,105,102,121,32,32,32,32,61,62,32,37,115,10,0,99,111,110,118,101,114,116,0,40,112,114,105,118,97,116,101,45,107,101,121,32,40,114,115,97,32,32,40,110,32,35,48,48,101,48,99,101,57,54,102,57,48,98,54,99,57,101,48,50,102,51,57,50,50,98,101,97,100,97,57,51,102,101,53,48,97,56,55,53,101,97,99,54,98,99,99,49,56,98,98,57,97,57,99,102,50,101,56,52,57,54,53,99,97,97,32,32,32,32,32,32,50,100,49,102,102,57,53,97,55,102,53,52,50,52,54,53,99,54,99,48,99,49,57,100,50,55,54,101,52,53,50,54,99,101,48,52,56,56,54,56,97,55,97,57,49,52,102,100,51,52,51,99,99,51,97,56,55,100,100,55,52,50,57,49,32,32,32,32,32,32,102,102,99,53,54,53,53,48,54,100,53,98,98,98,50,53,99,98,97,99,54,97,48,101,50,100,100,49,102,56,98,99,97,97,98,48,100,52,97,50,57,99,50,102,51,55,99,57,53,48,102,51,54,51,52,56,52,98,102,50,54,57,102,55,32,32,32,32,32,32,56,57,49,52,52,48,52,54,52,98,97,102,55,57,56,50,55,101,48,51,97,51,54,101,55,48,98,56,49,52,57,51,56,101,101,98,100,99,54,51,101,57,54,52,50,52,55,98,101,55,53,100,99,53,56,98,48,49,52,98,55,101,97,50,53,49,35,41,32,32,40,101,32,35,48,49,48,48,48,49,35,41,32,32,40,100,32,35,48,52,54,49,50,57,102,50,52,56,57,100,55,49,53,55,57,98,101,48,97,55,53,102,101,48,50,57,98,100,54,99,100,98,53,55,52,101,98,102,53,55,101,97,56,97,53,98,48,102,100,97,57,52,50,99,97,98,57,52,51,98,49,49,32,32,32,32,32,32,55,100,55,98,98,57,53,101,53,100,50,56,56,55,53,101,48,102,57,102,99,53,102,99,99,48,54,97,55,50,102,54,100,53,48,50,52,54,52,100,97,98,100,101,100,55,56,101,102,54,98,55,49,54,49,55,55,98,56,51,100,53,98,100,32,32,32,32,32,32,99,53,52,51,100,99,53,100,51,102,101,100,57,51,50,101,53,57,102,53,56,57,55,101,57,50,101,54,102,53,56,97,48,102,51,51,52,50,52,49,48,54,97,51,98,54,102,97,50,99,98,102,56,55,55,53,49,48,101,52,97,99,50,49,32,32,32,32,32,32,99,51,101,101,52,55,56,53,49,101,57,55,100,49,50,57,57,54,50,50,50,97,99,51,53,54,54,100,52,99,99,98,48,98,56,51,100,49,54,52,48,55,52,97,98,102,55,100,101,54,53,53,102,99,50,52,52,54,100,97,49,55,56,49,35,41,32,32,40,112,32,35,48,48,101,56,54,49,98,55,48,48,101,49,55,101,56,97,102,101,54,56,51,55,101,55,53,49,50,101,51,53,98,54,99,97,49,49,100,48,97,101,52,55,100,56,98,56,53,49,54,49,99,54,55,98,97,102,54,52,51,55,55,50,49,51,32,32,32,32],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([32,32,102,101,53,50,100,55,55,50,102,50,48,51,53,98,51,99,97,56,51,48,97,102,52,49,100,56,97,52,49,50,48,101,49,99,49,99,55,48,100,49,50,99,99,50,50,102,48,48,100,50,56,100,51,49,100,100,52,56,97,56,100,52,50,52,102,49,35,41,32,32,40,113,32,35,48,48,102,55,97,55,99,97,53,51,54,55,99,54,54,49,102,56,101,54,50,100,102,51,52,102,48,100,48,53,99,49,48,99,56,56,101,53,52,57,50,51,52,56,100,100,55,98,100,100,99,57,52,50,99,57,97,56,102,51,54,57,102,57,32,32,32,32,32,32,51,53,97,48,55,55,56,53,100,50,100,98,56,48,53,50,49,53,101,100,55,56,54,101,52,50,56,53,100,102,49,54,53,56,101,101,100,51,99,101,56,52,102,52,54,57,98,56,49,98,53,48,100,51,53,56,52,48,55,98,52,97,100,51,54,49,35,41,32,32,40,117,32,35,51,48,52,53,53,57,97,57,101,97,100,53,54,100,50,51,48,57,100,50,48,51,56,49,49,97,54,52,49,98,98,49,97,48,57,54,50,54,98,99,56,101,98,51,54,102,102,102,97,50,51,99,57,54,56,101,99,53,98,100,56,57,49,101,32,32,32,32,32,32,101,98,98,97,102,99,55,51,97,101,54,54,54,101,48,49,98,97,55,99,56,57,57,48,98,97,101,48,54,99,99,50,98,98,101,49,48,98,55,53,101,54,57,102,99,97,99,98,51,53,51,97,54,52,55,51,48,55,57,100,56,101,57,98,35,41,41,41,0,40,112,117,98,108,105,99,45,107,101,121,32,40,114,115,97,32,32,40,110,32,35,48,48,101,48,99,101,57,54,102,57,48,98,54,99,57,101,48,50,102,51,57,50,50,98,101,97,100,97,57,51,102,101,53,48,97,56,55,53,101,97,99,54,98,99,99,49,56,98,98,57,97,57,99,102,50,101,56,52,57,54,53,99,97,97,32,32,32,32,32,32,50,100,49,102,102,57,53,97,55,102,53,52,50,52,54,53,99,54,99,48,99,49,57,100,50,55,54,101,52,53,50,54,99,101,48,52,56,56,54,56,97,55,97,57,49,52,102,100,51,52,51,99,99,51,97,56,55,100,100,55,52,50,57,49,32,32,32,32,32,32,102,102,99,53,54,53,53,48,54,100,53,98,98,98,50,53,99,98,97,99,54,97,48,101,50,100,100,49,102,56,98,99,97,97,98,48,100,52,97,50,57,99,50,102,51,55,99,57,53,48,102,51,54,51,52,56,52,98,102,50,54,57,102,55,32,32,32,32,32,32,56,57,49,52,52,48,52,54,52,98,97,102,55,57,56,50,55,101,48,51,97,51,54,101,55,48,98,56,49,52,57,51,56,101,101,98,100,99,54,51,101,57,54,52,50,52,55,98,101,55,53,100,99,53,56,98,48,49,52,98,55,101,97,50,53,49,35,41,32,32,40,101,32,35,48,49,48,48,48,49,35,41,41,41,0,107,101,121,32,99,111,110,115,105,115,116,101,110,99,121,0,115,105,103,110,0,40,100,97,116,97,32,40,102,108,97,103,115,32,112,107,99,115,49,41,32,40,104,97,115,104,32,115,104,97,49,32,35,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,48,48,97,97,98,98,99,99,100,100,101,101,102,102,49,48,50,48,51,48,52,48,35,41,41,0,40,100,97,116,97,32,40,102,108,97,103,115,32,112,107,99,115,49,41,32,40,104,97,115,104,32,115,104,97,49,32,35,49,49,50,50,51,51,52,52,53,53,54,54,55,55,56,56,57,57,48,48,97,97,98,98,99,99,100,100,101,101,102,102,56,48,50,48,51,48,52,48,35,41,41,0,99,111,110,118,101,114,116,105,110,103,32,100,97,116,97,32,102,97,105,108,101,100,0,115,105,103,110,105,110,103,32,102,97,105,108,101,100,0,118,101,114,105,102,121,32,102,97,105,108,101,100,0,98,97,100,32,115,105,103,110,97,116,117,114,101,32,110,111,116,32,100,101,116,101,99,116,101,100,0,101,110,99,114,121,112,116,0,40,100,97,116,97,32,40,102,108,97,103,115,32,114,97,119,41,32,40,118,97,108,117,101,32,37,109,41,41,0,101,110,99,114,121,112,116,32,102,97,105,108,101,100,0,101,110,99,45,118,97,108,0,103,99,114,121,95,112,107,95,100,101,99,114,121,112,116,32,114,101,116,117,114,110,101,100,32,103,97,114,98,97,103,101,0,99,105,112,104,101,114,116,101,120,116,32,109,97,116,99,104,101,115,32,112,108,97,105,110,116,101,120,116,0,100,101,99,114,121,112,116,32,102,97,105,108,101,100,0,118,97,108,117,101,0,100,101,99,114,121,112,116,32,114,101,116,117,114,110,101,100,32,110,111,32,112,108,97,105,110,116,101,120,116,0,109,105,115,109,97,116,99,104,0,83,72,65,49,0,48,33,48,9,6,5,43,14,3,2,26,5,0,4,20,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,53,0,49,46,50,46,56,52,48,46,49,48,48,52,48,46,52,46,51,0,49,46,51,46,49,52,46,51,46,50,46,50,54,0,49,46,51,46,49,52,46,51,46,50,46,50,57,0,49,46,50,46,56,52,48,46,49,48,48,52,53,46,52,46,49,0,169,153,62,54,71,6,129,106,186,62,37,113,120,80,194,108,156,208,216,157,0,132,152,62,68,28,59,210,110,186,174,74,161,249,81,41,229,229,70,112,241,0,52,170,151,60,212,196,218,164,246,30,235,43,219,173,39,49,101,52,1,111,0,83,72,65,50,50,52,0,48,45,48,13,6,9,96,134,72,1,101,3,4,2,4,5,0,4,28,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,52,0,35,9,125,34,52,5,216,34,134,66,164,119,189,162,85,179,42,173,188,228,189,160,179,247,227,108,157,167,0,97,98,99,100,98,99,100,101,99,100,101,102,100,101,102,103,101,102,103,104,102,103,104,105,103,104,105,106,104,105,106,107,105,106,107,108,106,107,108,109,107,108,109,110,108,109,110,111,109,110,111,112,110,111,112,113,0,117,56,139,22,81,39,118,204,93,186,93,161,253,137,1,80,176,198,69,92,180,245,139,25,82,82,37,37,0,32,121,70,85,152,12,145,216,187,180,193,234,151,97,138,75,240,63,66,88,25,72,178,238,78,231,173,103,0,186,120,22,191,143,1,207,234,65,65,64,222,93,174,34,35,176,3,97,163,150,23,122,156,180,16,255,97,242,0,21,173,0,36,141,106,97,210,6,56,184,229,192,38,147,12,62,96,57,163,60,228,89,100,255,33,103,246,236,237,212,25,219,6,193,0,205,199,110,92,153,20,251,146,129,161,199,226,132,215,62,103,241,128,154,72,164,151,32,14,4,109,57,204,199,17,44,208,0,83,72,65,50,53,54,0,48,49,48,13,6,9,96,134,72,1,101,3,4,2,1,5,0,4,32,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,49,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,49,0,83,72,65,53,49,50,0,48,81,48,13,6,9,96,134,72,1,101,3,4,2,3,5,0,4,64,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,51,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,51,0,115,104,111,114,116,32,115,116,114,105,110,103,0,97,98,99,0,203,0,117,63,69,163,94,139,181,160,61,105,154,198,80,7,39,44,50,171,14,222,209,99,26,139,96,90,67,255,91,237,128,134,7,43,161,231,204,35,88,186,236,161,52,200,37,167,0,108,111,110,103,32,115,116,114,105,110,103,0,97,98,99,100,101,102,103,104,98,99,100,101,102,103,104,105,99,100,101,102,103,104,105,106,100,101,102,103,104,105,106,107,101,102,103,104,105,106,107,108,102,103,104,105,106,107,108,109,103,104,105,106,107,108,109,110,104,105,106,107,108,109,110,111,105,106,107,108,109,110,111,112,106,107,108,109,110,111,112,113,107,108,109,110,111,112,113,114,108,109,110,111,112,113,114,115,109,110,111,112,113,114,115,116,110,111,112,113,114,115,116,117,0,9,51,12,51,247,17,71,232,61,25,47,199,130,205,27,71,83,17,27,23,59,59,5,210,47,160,128,134,227,176,247,18,252,199,199,26,85,126,45,185,102,195,233,250,145,116,96,57,0,111,110,101,32,109,105,108,108,105,111,110,32,34,97,34,0,157,14,24,9,113,100,116,203,8,110,131,78,49,10,74,28,237,20,158,156,0,242,72,82,121,114,206,197,112,76,42,91,7,184,179,220,56,236,196,235,174,151,221,216,127,61,137,133,0,100,105,103,101,115,116,0,221,175,53,161,147,97,122,186,204,65,115,73,174,32,65,49,18,230,250,78,137,169,126,162,10,158,238,230,75,85,211,154,33,146,153,42,39,79,193,168,54,186,60,35,163,254,235,189,69,77,68,35,100,60,232,14,42,154,201,79,165,76,164,159,0,142,149,155,117,218,227,19,218,140,244,247,40,20,252,20,63,143,119,121,198,235,159,127,161,114,153,174,173,182,136,144,24,80,29,40,158,73,0,247,228,51,27,153,222,196,181,67,58,199,211,41,238,182,221,38,84,94,150,229,91,135,75,233,9,0,231,24,72,61,12,231,105,100,78,46,66,199,188,21,180,99,142,31,152,177,59,32,68,40,86,50,168,3,175,169,115,235,222,15,242,68,135,126,166,10,76,176,67,44,229,119,195,27,235,0,156,92,44,73,170,46,78,173,178,23,173,140,192,155,0,83,72,65,51,56,52,0,48,65,48,13,6,9,96,134,72,1,101,3,4,2,2,5,0,4,48,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,50,0,49,46,50,46,56,52,48,46,49,49,51,53,52,57,46,49,46,49,46,49,50,0,84,87,79,70,73,83,72,0,159,88,159,92,246,18,44,50,182,191,236,47,42,232,195,90,212,145,219,22,231,177,195,158,134,203,8,107,120,159,84,25,1,159,152,9,222,23,17,133,143,170,195,163,186,32,251,195,84,119,111,102,105,115,104,45,49,50,56,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,84,119,111,102,105,115,104,45,49,50,56,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,212,59,183,85,110,163,46,70,242,162,130,183,212,91,78,13,87,255,115,157,77,201,44,27,215,252,1,112,12,200,33,111,144,175,233,27,178,136,84,79,44,50,220,35,155,38,53,230,108,180,86,28,64,191,10,151,5,147,28,182,212,8,231,250,84,119,111,102,105,115,104,45,50,53,54,32,116,101,115,116,32,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,84,119,111,102,105,115,104,45,50,53,54,32,116,101,115,116,32,100,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,37,115,10,0,0,1,23,2,46,24,83,3,106,47,147,25,52,84,69,4,92,107,182,48,166,148,75,26,140,53,129,85,170,70,13,5,36,93,135,108,155,183,193,49,43,167,163,149,152,76,202,27,230,141,115,54,205,130,18,86,98,171,240,71,79,14,189,6,212,37,210,94,39,136,102,109,214,156,121,184,8,194,223,50,104,44,253,168,138,164,90,150,41,153,34,77,96,203,228,28,123,231,59,142,158,116,244,55,216,206,249,131,111,19,178,87,225,99,220,172,196,241,175,72,10,80,66,15,186,190,199,7,222,213,120,38,101,211,209,95,227,40,33,137,89,103,252,110,177,215,248,157,243,122,58,185,198,9,65,195,174,224,219,51,68,105,146,45,82,254,22,169,12,139,128,165,74,91,181,151,201,42,162,154,192,35,134,78,188,97,239,204,17,229,114,29,61,124,235,232,233,60,234,143,125,159,236,117,30,245,62,56,246,217,63,207,118,250,31,132,160,112,237,20,144,179,126,88,251,226,32,100,208,221,119,173,218,197,64,242,57,176,247,73,180,11,127,81,21,67,145,16,113,187,238,191,133,200,161,1,2,4,8,16,32,64,128,77,154,121,242,169,31,62,124,248,189,55,110,220,245,167,3,6,12,24,48,96,192,205,215,227,139,91,182,33,66,132,69,138,89,178,41,82,164,5,10,20,40,80,160,13,26,52,104,208,237,151,99,198,193,207,211,235,155,123,246,161,15,30,60,120,240,173,23,46,92,184,61,122,244,165,7,14,28,56,112,224,141,87,174,17,34,68,136,93,186,57,114,228,133,71,142,81,162,9,18,36,72,144,109,218,249,191,51,102,204,213,231,131,75,150,97,194,201,223,243,171,27,54,108,216,253,183,35,70,140,85,170,25,50,100,200,221,247,163,11,22,44,88,176,45,90,180,37,74,148,101,202,217,255,179,43,86,172,21,42,84,168,29,58,116,232,157,119,238,145,111,222,241,175,19,38,76,152,125,250,185,63,126,252,181,39,78,156,117,234,153,127,254,177,47,94,188,53,106,212,229,135,67,134,65,130,73,146,105,210,233,159,115,230,129,79,158,113,226,137,95,190,49,98,196,197,199,195,203,219,251,187,59,118,236,149,103,206,209,239,147,107,214,225,143,83,166,1,2,4,8,16,32,64,128,77,154,121,242,169,31,62,124,248,189,55,110,220,245,167,3,6,12,24,48,96,192,205,215,227,139,91,182,33,66,132,69,138,89,178,41,82,164,5,10,20,40,80,160,13,26,52,104,208,237,151,99,198,193,207,211,235,155,123,246,161,15,30,60,120,240,173,23,46,92,184,61,122,244,165,7,14,28,56,112,224,141,87,174,17,34,68,136,93,186,57,114,228,133,71,142,81,162,9,18,36,72,144,109,218,249,191,51,102,204,213,231,131,75,150,97,194,201,223,243,171,27,54,108,216,253,183,35,70,140,85,170,25,50,100,200,221,247,163,11,22,44,88,176,45,90,180,37,74,148,101,202,217,255,179,43,86,172,21,42,84,168,29,58,116,232,157,119,238,145,111,222,241,175,19,38,76,152,125,250,185,63,126,252,181,39,78,156,117,234,153,127,254,177,47,94,188,53,106,212,229,135,67,134,65,130,73,146,105,210,233,159,115,230,129,79,158,113,226,137,95,190,49,98,196,197,199,195,203,169,117,103,243,179,198,232,244,4,219,253,123,163,251,118,200,154,74,146,211,128,230,120,107,228,69,221,125,209,232,56,75,13,214,198,50,53,216,152,253,24,55,247,113,236,241,108,225,67,48,117,15,55,248,38,27,250,135,19,250,148,6,72,63,242,94,208,186,139,174,48,91,132,138,84,0,223,188,35,157,25,109,91,193,61,177,89,14,243,128,174,93,162,210,130,213,99,160,1,132,131,7,46,20,217,181,81,144,155,44,124,163,166,178,235,115,165,76,190,84,22,146,12,116,227,54,97,81,192,56,140,176,58,189,245,90,115,252,44,96,37,98,11,150,187,108,78,66,137,247,107,16,83,124,106,40,180,39,241,140,225,19,230,149,189,156,69,199,226,36,244,70,182,59,102,112,204,202,149,227,3,133,86,203,212,17,28,208,30,147,215,184,251,166,195,131,142,32,181,255,233,159,207,119,191,195,186,204,234,3,119,111,57,8,175,191,51,64,201,231,98,43,113,226,129,121,121,12,9,170,173,130,36,65,205,58,249,234,216,185,229,228,197,154,185,164,77,151,68,126,8,218,134,122,231,23,161,102,29,148,170,161,237,29,6,61,112,240,178,222,210,179,65,11,123,114,160,167,17,28,49,239,194,209,39,83,144,62,32,143,246,51,96,38,255,95,150,236,92,118,177,42,171,73,158,129,156,136,82,238,27,33,95,196,147,26,10,235,239,217,145,197,133,57,73,153,238,205,45,173,79,49,143,139,59,1,71,24,135,35,109,221,70,31,214,78,62,45,105,249,100,72,42,79,206,242,203,101,47,142,252,120,151,92,5,88,122,25,172,141,127,229,213,152,26,87,75,103,14,127,167,5,90,100,40,175,20,99,63,182,41,254,136,245,60,183,76,60,2,165,184,206,218,233,176,104,23,68,85,224,31,77,138,67,125,105,87,41,199,46,141,172,116,21,183,89,196,168,159,10,114,158,126,110,21,71,34,223,18,52,88,53,7,106,153,207,52,220,110,34,80,201,222,192,104,155,101,137,188,212,219,237,248,171,200,18,168,162,43,13,64,82,220,187,254,2,50,47,164,169,202,215,16,97,33,30,240,180,211,80,93,4,15,246,0,194,111,22,157,37,54,134,66,86,74,85,94,9,193,190,224,145,117,243,198,244,219,123,251,200,74,211,230,107,69,125,232,75,214,50,216,253,55,113,241,225,48,15,248,27,135,250,6,63,94,186,174,91,138,0,188,157,109,193,177,14,128,93,210,213,160,132,7,20,181,144,44,163,178,115,76,84,146,116,54,81,56,176,189,90,252,96,98,150,108,66,247,16,124,40,39,140,19,149,156,199,36,70,59,112,202,227,133,203,17,208,147,184,166,131,32,255,159,119,195,204,3,111,8,191,64,231,43,226,121,12,170,130,65,58,234,185,228,154,164,151,126,218,122,23,102,148,161,29,61,240,222,179,11,114,167,28,239,209,83,62,143,51,38,95,236,118,42,73,129,136,238,33,196,26,235,217,197,57,153,205,173,49,139,1,24,35,221,31,78,45,249,72,79,242,101,142,120,92,88,25,141,229,152,87,103,127,5,100,175,99,182,254,245,183,60,165,206,233,104,68,224,77,67,105,41,46,172,21,89,168,10,158,110,71,223,52,53,106,207,220,34,201,192,155,137,212,237,171,18,162,13,82,187,2,47,169,215,97,30,180,80,4,246,194,22,37,134,86,85,9,190,145,169,103,179,232,4,253,163,118,154,146,128,120,228,221,209,56,13,198,53,152,24,247,236,108,67,117,55,38,250,19,148,72,242,208,139,48,132,84,223,35,25,91,61,89,243,174,162,130,99,1,131,46,217,81,155,124,166,235,165,190,22,12,227,97,192,140,58,245,115,44,37,11,187,78,137,107,83,106,180,241,225,230,189,69,226,244,182,102,204,149,3,86,212,28,30,215,251,195,142,181,233,207,191,186,234,119,57,175,51,201,98,113,129,121,9,173,36,205,249,216,229,197,185,77,68,8,134,231,161,29,170,237,6,112,178,210,65,123,160,17,49,194,39,144,32,246,96,255,150,92,177,171,158,156,82,27,95,147,10,239,145,133,73,238,45,79,143,59,71,135,109,70,214,62,105,100,42,206,203,47,252,151,5,122,172,127,213,26,75,14,167,90,40,20,63,41,136,60,76,2,184,218,176,23,85,31,138,125,87,199,141,116,183,196,159,114,126,21,34,18,88,7,153,52,110,80,222,104,101,188,219,248,200,168,43,64,220,254,50,164,202,16,33,240,211,93,15,0,111,157,54,66,74,94,193,224,84,87,79,70,73,83,72,49,50,56,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,110,111,110,99,101,32,98,117,102,102,101,114,32,108,111,99,107,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,110,111,110,99,101,32,98,117,102,102,101,114,32,108,111,99,107,58,32,37,115,10,0,37,115,46,42,0,37,115,46,88,0,101,99,95,105,110,118,109,58,32,105,110,118,101,114,115,101,32,100,111,101,115,32,110,111,116,32,101,120,105,115,116,58,10,0,32,32,97,0,32,32,112,0,37,115,58,32,71,101,116,116,105,110,103,32,89,45,99,111,111,114,100,105,110,97,116,101,32,111,110,32,37,115,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,95,103,99,114,121,95,109,112,105,95,101,99,95,103,101,116,95,97,102,102,105,110,101,0,77,111,110,116,103,111,109,101,114,121,0,71,67,82,89,80,84,95,66,65,82,82,69,84,84,0,37,115,58,32,37,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,95,103,99,114,121,95,109,112,105,95,101,99,95,100,117,112,95,112,111,105,110,116,0,95,103,99,114,121,95,109,112,105,95,101,99,95,97,100,100,95,112,111,105,110,116,115,0,0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,33,98,112,95,109,97,114,107,101,114,0,109,112,105,45,112,111,119,46,99,0,95,103,99,114,121,95,109,112,105,95,112,111,119,109,0,114,101,115,45,62,100,32,61,61,32,114,112,0,105,32,61,61,32,110,108,105,109,98,115,0,109,112,105,99,111,100,101,114,46,99,0,95,103,99,114,121,95,109,112,105,95,115,101,116,95,98,117,102,102,101,114,0,58,103,101,110,101,114,105,99,47,109,112,105,104,45,97,100,100,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,115,117,98,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,49,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,50,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,109,117,108,51,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,108,115,104,105,102,116,46,99,58,103,101,110,101,114,105,99,47,109,112,105,104,45,114,115,104,105,102,116,46,99,0,105,110,118,97,108,105,100,32,109,112,105,95,99,111,110,115,116,32,115,101,108,101,99,116,111,114,32,37,100,10,0,87,97,114,110,105,110,103,58,32,116,114,121,105,110,103,32,116,111,32,99,104,97,110,103,101,32,97,110,32,105,109,109,117,116,97,98,108,101,32,77,80,73,10,0,105,110,118,97,108,105,100,32,102,108,97,103,32,118,97,108,117,101,32,105,110,32,109,112,105,95,102,114,101,101,10,0,109,112,105,95,103,101,116,95,111,112,97,113,117,101,32,111,110,32,110,111,114,109,97,108,32,109,112,105,10,0,109,112,105,95,115,101,116,95,99,111,110,100,58,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,10,0,109,112,105,95,115,119,97,112,95,99,111,110,100,58,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,102,108,97,103,32,118,97,108,117,101,10,0,77,80,73,32,115,117,98,115,121,115,116,101,109,32,110,111,116,32,105,110,105,116,105,97,108,105,122,101,100,10,0,10,10,84,104,105,115,32,105,115,32,76,105,98,103,99,114,121,112,116,32,49,46,55,46,48,45,98,101,116,97,50,51,48,32,45,32,84,104,101,32,71,78,85,32,67,114,121,112,116,111,32,76,105,98,114,97,114,121,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,48,48,45,50,48,49,50,32,70,114,101,101,32,83,111,102,116,119,97,114,101,32,70,111,117,110,100,97,116,105,111,110,44,32,73,110,99,46,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,50,45,50,48,49,52,32,103,49,48,32,67,111,100,101,32,71,109,98,72,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,51,45,50,48,49,52,32,74,117,115,115,105,32,75,105,118,105,108,105,110,110,97,10,10,40,97,51,54,101,101,55,53,32,50,48,49,54,45,48,53,45,50,53,84,49,53,58,49,55,43,48,48,48,48,41,10,10,10,0,99,105,112,104,101,114,45,99,109,97,99,46,99,0,99,109,97,99,95,103,101,110,101,114,97,116,101,95,115,117,98,107,101,121,115,0,99,45,62,117,110,117,115,101,100,32,60,32,98,108,111,99,107,115,105,122,101,0,99,105,112,104,101,114,45,99,116,114,46,99,0,95,103,99,114,121,95,99,105,112,104,101,114,95,99,116,114,95,101,110,99,114,121,112,116,0,117,110,117,115,101,100,32,61,61,32,98,108,111,99,107,115,105,122,101,0,99,105,112,104,101,114,45,103,99,109,46,99,0,100,111,95,103,104,97,115,104,95,98,117,102,0,102,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,0,115,101,116,107,101,121,32,102,97,105,108,101,100,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,66,67,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,70,66,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,115,101,108,102,116,101,115,116,32,102,111,114,32,67,84,82,32,102,97,105,108,101,100,32,45,32,115,101,101,32,115,121,115,108,111,103,32,102,111,114,32,100,101,116,97,105,108,115,0,69,67,67,0,101,99,99,0,101,99,100,115,97,0,101,99,100,104,0,101,100,100,115,97,0,103,111,115,116,0,112,97,98,103,110,104,113,0,112,97,98,103,110,104,113,100,0,115,119,0,114,115,0,99,117,114,118,101,0,102,108,97,103,115,0,116,114,97,110,115,105,101,110,116,45,107,101,121,0,101,99,103,101,110,32,99,117,114,118,101,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,103,101,110,32,99,117,114,118,101,32,117,115,101,100,58,32,37,115,10,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,112,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,97,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,98,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,110,0,101,99,103,101,110,32,99,117,114,118,101,32,32,32,104,0,101,99,103,101,110,32,99,117,114,118,101,32,71,0,101,99,103,101,110,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,37,115,10,0,81,0,101,99,103,101,110,32,99,111,110,118,101,114,116,101,100,32,81,32,116,111,32,97,32,99,111,109,112,108,105,97,110,116,32,112,111,105,110,116,10,0,101,99,103,101,110,32,100,105,100,110,39,116,32,110,101,101,100,32,116,111,32,99,111,110,118,101,114,116,32,81,32,116,111,32,97,32,99,111,109,112,108,105,97,110,116,32,112,111,105,110,116,10,0,84,101,115,116,105,110,103,32,107,101,121,46,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,32,102,97,105,108,101,100,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,44,32,118,101,114,105,102,121,32,102,97,105,108,101,100,10,0,69,67,68,83,65,32,111,112,101,114,97,116,105,111,110,58,32,115,105,103,110,44,32,118,101,114,105,102,121,32,111,107,46,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,104,107,81,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,104,100,107,71,10,0,69,67,68,72,32,116,101,115,116,32,102,97,105,108,101,100,46,10,0,71,0,40,99,117,114,118,101,32,37,115,41,0,40,102,108,97,103,115,32,112,97,114,97,109,41,0,40,102,108,97,103,115,32,101,100,100,115,97,41,0,40,102,108,97,103,115,32,112,97,114,97,109,32,101,100,100,115,97,41,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,40,113,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,112,37,109,41,40,97,37,109,41,40,98,37,109,41,40,103,37,109,41,40,110,37,109,41,40,104,37,109,41,40,113,37,109,41,40,100,37,109,41,41,41,32,41,0,40,107,101,121,45,100,97,116,97,32,40,112,117,98,108,105,99,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,113,37,109,41,41,41,32,40,112,114,105,118,97,116,101,45,107,101,121,32,32,40,101,99,99,37,83,37,83,40,113,37,109,41,40,100,37,109,41,41,41,32,41,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,112,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,97,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,98,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,71,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,110,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,104,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,81,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,100,0,101,99,103,101,110,32,114,101,115,117,108,116,32,32,117,115,105,110,103,32,69,100,50,53,53,49,57,43,69,100,68,83,65,10,0,45,112,63,97,63,98,63,103,63,110,63,104,63,47,113,63,43,100,0,47,113,63,43,100,0,101,99,99,95,116,101,115,116,107,101,121,32,105,110,102,58,32,37,115,47,37,115,10,0,101,99,99,95,116,101,115,116,107,101,121,32,110,97,109,58,32,37,115,10,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,112,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,97,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,98,0,101,99,99,95,116,101,115,116,107,101,121,32,103,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,110,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,104,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,113,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,100,0,66,97,100,32,99,104,101,99,107,58,32,80,111,105,110,116,32,39,71,39,32,100,111,101,115,32,110,111,116,32,98,101,108,111,110,103,32,116,111,32,99,117,114,118,101,32,39,69,39,33,10,0,66,97,100,32,99,104,101,99,107,58,32,39,71,39,32,99,97,110,110,111,116,32,98,101,32,80,111,105,110,116,32,97,116,32,73,110,102,105,110,105,116,121,33,10,0,99,104,101,99,107,95,115,101,99,114,101,116,95,107,101,121,58,32,69,32,105,115,32,110,111,116,32,97,32,99,117,114,118,101,32,111,102,32,111,114,100,101,114,32,110,10,0,66,97,100,32,99,104,101,99,107,58,32,81,32,99,97,110,32,110,111,116,32,98,101,32,97,32,80,111,105,110,116,32,97,116,32,73,110,102,105,110,105,116,121,33,10,0,66,97,100,32,99,104,101,99,107,58,32,99,111,109,112,117,116,97,116,105,111,110,32,111,102,32,100,71,32,102,97,105,108,101,100,10,0,66,97,100,32,99,104,101,99,107,58,32,84,104,101,114,101,32,105,115,32,78,79,32,99,111,114,114,101,115,112,111,110,100,101,110,99,101,32,98,101,116,119,101,101,110,32,39,100,39,32,97,110,100,32,39,81,39,33,10,0,101,99,99,95,116,101,115,116,107,101,121,32,32,32,61,62,32,37,115,10,0,112,0,101,99,99,95,101,110,99,114,121,112,116,32,100,97,116,97,0,45,112,63,97,63,98,63,103,63,110,63,104,63,43,113,0,101,99,99,95,101,110,99,114,121,112,116,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,99,95,101,110,99,114,121,112,116,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,112,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,97,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,98,0,101,99,99,95,101,110,99,114,121,112,116,32,32,103,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,110,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,104,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,113,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,107,100,71,10,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,32,102,111,114,32,107,71,10,0,40,101,110,99,45,118,97,108,40,101,99,100,104,40,115,37,109,41,40,101,37,109,41,41,41,0,101,99,99,95,101,110,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,101,0,101,99,99,95,100,101,99,114,121,112,116,32,32,100,95,101,0,45,112,63,97,63,98,63,103,63,110,63,104,63,43,100,0,101,99,99,95,100,101,99,114,121,112,116,32,105,110,102,111,58,32,37,115,47,37,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,112,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,97,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,98,0,101,99,99,95,100,101,99,114,121,112,116,32,32,103,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,110,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,104,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,100,0,101,99,100,104,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,101,99,99,95,100,101,99,114,121,112,116,32,32,114,101,115,0,40,118,97,108,117,101,32,37,109,41,0,101,99,99,95,100,101,99,114,121,112,116,32,32,32,32,61,62,32,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,100,97,116,97,0,43,69,100,68,83,65,0,101,99,99,95,115,105,103,110,32,32,32,105,110,102,111,58,32,37,115,47,37,115,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,112,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,97,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,98,0,101,99,99,95,115,105,103,110,32,32,32,32,103,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,110,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,104,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,113,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,100,0,40,115,105,103,45,118,97,108,40,101,100,100,115,97,40,114,37,77,41,40,115,37,77,41,41,41,0,40,115,105,103,45,118,97,108,40,103,111,115,116,40,114,37,77,41,40,115,37,77,41,41,41,0,40,115,105,103,45,118,97,108,40,101,99,100,115,97,40,114,37,77,41,40,115,37,77,41,41,41,0,101,99,99,95,115,105,103,110,32,32,32,32,32,32,61,62,32,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,100,97,116,97,0,47,114,115,0,101,99,99,95,118,101,114,105,102,121,32,32,115,95,114,0,101,99,99,95,118,101,114,105,102,121,32,32,115,95,115,0,45,112,63,97,63,98,63,103,63,110,63,104,63,47,113,0,47,113,0,101,99,99,95,118,101,114,105,102,121,32,105,110,102,111,58,32,37,115,47,37,115,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,110,97,109,101,58,32,37,115,10,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,112,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,97,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,98,0,101,99,99,95,118,101,114,105,102,121,32,32,103,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,110,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,104,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,113,0,71,111,111,100,0,101,99,99,95,118,101,114,105,102,121,32,32,32,32,61,62,32,37,115,10,0,108,111,119,45,108,101,118,101,108,0,112,117,98,107,101,121,0,112,63,97,63,98,63,103,63,110,63,104,63,47,113,0,112,63,97,63,98,63,103,63,110,63,104,63,113,0,113,0,112,97,98,103,110,104,113,40,49,58,37,99,37,117,58,0,41,0,100,105,103,101,115,116,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,101,120,112,101,99,116,101,100,32,115,105,122,101,0,103,99,114,121,95,109,100,95,111,112,101,110,32,102,97,105,108,101,100,0,105,110,118,97,108,105,100,32,68,65,84,65,77,79,68,69,0,100,105,103,101,115,116,32,109,105,115,109,97,116,99,104,0,104,97,115,104,45,99,111,109,109,111,110,46,99,0,95,103,99,114,121,95,109,100,95,98,108,111,99,107,95,119,114,105,116,101,0,142,153,59,159,72,104,18,115,194,150,80,186,50,252,118,206,72,51,46,167,22,77,150,164,71,111,184,197,49,161,24,106,192,223,193,124,152,220,232,123,77,167,240,17,236,72,201,114,113,210,194,15,155,146,143,226,39,13,111,184,99,213,23,56,180,142,238,227,20,167,204,138,185,50,22,69,72,229,38,174,144,34,67,104,81,122,207,234,189,107,179,115,43,192,233,218,153,131,43,97,202,1,182,222,86,36,74,158,136,213,249,179,121,115,246,34,164,61,20,166,89,155,31,101,76,180,90,116,227,85,165,238,166,167,37,28,30,114,145,109,17,194,203,33,77,60,37,37,57,18,29,142,35,78,101,45,101,31,164,200,207,248,128,243,255,199,112,63,148,0,229,42,125,251,75,61,51,5,217,80,111,108,121,49,51,48,53,32,116,101,115,116,32,49,32,102,97,105,108,101,100,46,0,80,111,108,121,49,51,48,53,32,116,101,115,116,32,50,32,102,97,105,108,101,100,46,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,111,108,121,49,51,48,53,32,116,101,115,116,32,51,32,102,97,105,108,101,100,46,0,1,2,3,4,5,6,7,255,254,253,252,251,250,249,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,100,175,226,232,214,173,123,189,210,135,249,124,68,98,61,57,80,111,108,121,49,51,48,53,32,116,101,115,116,32,52,32,102,97,105,108,101,100,46,0,80,111,108,121,49,51,48,53,32,115,101,108,102,116,101,115,116,32,102,97,105,108,101,100,32,40,37,115,41,10,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,112,111,111,108,32,108,111,99,107,58,32,37,115,10,0,110,111,32,101,110,116,114,111,112,121,32,103,97,116,104,101,114,105,110,103,32,109,111,100,117,108,101,32,100,101,116,101,99,116,101,100,10,0,87,65,82,78,73,78,71,58,32,117,115,105,110,103,32,105,110,115,101,99,117,114,101,32,114,97,110,100,111,109,32,110,117,109,98,101,114,32,103,101,110,101,114,97,116,111,114,33,33,10,0,112,111,111,108,95,105,115,95,108,111,99,107,101,100,0,114,97,110,100,111,109,45,99,115,112,114,110,103,46,99,0,97,100,100,95,114,97,110,100,111,109,110,101,115,115,0,109,105,120,95,112,111,111,108,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,112,111,111,108,32,108,111,99,107,58,32,37,115,10,0,32,40,104,119,114,110,103,32,102,97,105,108,101,100,41,0,114,97,110,100,111,109,32,117,115,97,103,101,58,32,112,111,111,108,115,105,122,101,61,37,100,32,109,105,120,101,100,61,37,108,117,32,112,111,108,108,115,61,37,108,117,47,37,108,117,32,97,100,100,101,100,61,37,108,117,47,37,108,117,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,117,116,109,105,120,61,37,108,117,32,103,101,116,108,118,108,49,61,37,108,117,47,37,108,117,32,103,101,116,108,118,108,50,61,37,108,117,47,37,108,117,37,115,10,0,114,101,97,100,95,112,111,111,108,0,116,111,111,32,109,97,110,121,32,114,97,110,100,111,109,32,98,105,116,115,32,114,101,113,117,101,115,116,101,100,10,0,114,101,97,100,95,115,101,101,100,95,102,105,108,101,0,99,97,110,39,116,32,111,112,101,110,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,108,111,99,107,32,96,37,115,39,58,32,37,115,10,0,119,97,105,116,105,110,103,32,102,111,114,32,108,111,99,107,32,111,110,32,96,37,115,39,46,46,46,10,0,99,97,110,39,116,32,115,116,97,116,32,96,37,115,39,58,32,37,115,10,0,96,37,115,39,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,102,105,108,101,32,45,32,105,103,110,111,114,101,100,10,0,110,111,116,101,58,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,105,115,32,101,109,112,116,121,10,0,119,97,114,110,105,110,103,58,32,105,110,118,97,108,105,100,32,115,105,122,101,32,111,102,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,45,32,110,111,116,32,117,115,101,100,10,0,99,97,110,39,116,32,114,101,97,100,32,96,37,115,39,58,32,37,115,10,0,83,108,111,119,32,101,110,116,114,111,112,121,32,103,97,116,104,101,114,105,110,103,32,109,111,100,117,108,101,32,110,111,116,32,121,101,116,32,105,110,105,116,105,97,108,105,122,101,100,10,0,78,111,32,119,97,121,32,116,111,32,103,97,116,104,101,114,32,101,110,116,114,111,112,121,32,102,111,114,32,116,104,101,32,82,78,71,10,0,100,111,95,102,97,115,116,95,114,97,110,100,111,109,95,112,111,108,108,0,95,103,99,114,121,95,114,110,103,99,115,112,114,110,103,95,115,101,116,95,115,101,101,100,95,102,105,108,101,0,110,111,116,101,58,32,114,97,110,100,111,109,95,115,101,101,100,32,102,105,108,101,32,110,111,116,32,117,112,100,97,116,101,100,10,0,99,97,110,39,116,32,99,114,101,97,116,101,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,119,114,105,116,101,32,96,37,115,39,58,32,37,115,10,0,99,97,110,39,116,32,99,108,111,115,101,32,96,37,115,39,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,33,110,111,110,99,101,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([100,116,95,112,116,114,0,114,97,110,100,111,109,45,102,105,112,115,46,99,0,95,103,99,114,121,95,114,110,103,102,105,112,115,95,105,110,105,116,105,97,108,105,122,101,0,33,115,116,100,95,114,110,103,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95,100,116,95,112,116,114,0,33,115,116,114,111,110,103,95,114,110,103,95,99,111,110,116,101,120,116,45,62,116,101,115,116,95,100,116,95,112,116,114,0,109,101,109,111,114,121,32,99,111,114,114,117,112,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,82,78,71,32,99,111,110,116,101,120,116,32,37,112,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,114,110,103,95,99,116,120,0,102,105,112,115,95,114,110,103,95,105,115,95,108,111,99,107,101,100,0,120,57,51,49,95,103,101,110,101,114,97,116,101,95,107,101,121,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,99,105,112,104,101,114,32,99,111,110,116,101,120,116,32,102,111,114,32,82,78,71,58,32,37,115,10,0,33,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,98,117,102,102,101,114,0,103,101,116,95,101,110,116,114,111,112,121,0,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,99,98,0,101,110,116,114,111,112,121,95,99,111,108,108,101,99,116,95,98,117,102,102,101,114,0,101,114,114,111,114,32,103,101,116,116,105,110,103,32,101,110,116,114,111,112,121,32,100,97,116,97,10,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,107,101,121,32,102,111,114,32,82,78,71,58,32,37,115,10,0,120,57,51,49,95,114,101,115,101,101,100,0,120,57,51,49,95,103,101,110,101,114,97,116,101,95,115,101,101,100,0,108,101,110,103,116,104,32,61,61,32,49,54,0,102,111,114,107,32,119,105,116,104,111,117,116,32,112,114,111,112,101,114,32,114,101,45,105,110,105,116,105,97,108,105,122,97,116,105,111,110,32,100,101,116,101,99,116,101,100,32,105,110,32,82,78,71,0,120,57,51,49,95,97,101,115,95,100,114,105,118,101,114,0,114,110,103,95,99,116,120,45,62,99,105,112,104,101,114,95,104,100,0,114,110,103,95,99,116,120,45,62,105,115,95,115,101,101,100,101,100,0,116,101,109,112,118,97,108,117,101,95,102,111,114,95,120,57,51,49,95,97,101,115,95,100,114,105,118,101,114,0,120,57,51,49,95,103,101,116,95,100,116,0,103,101,116,116,105,109,101,111,102,100,97,121,40,41,32,102,97,105,108,101,100,58,32,37,115,10,0,101,110,99,114,121,112,116,95,97,101,115,0,65,69,83,32,101,110,99,114,121,112,116,105,111,110,32,105,110,32,82,78,71,32,102,97,105,108,101,100,58,32,37,115,10,0,100,117,112,108,105,99,97,116,101,32,49,50,56,32,98,105,116,32,98,108,111,99,107,32,114,101,116,117,114,110,101,100,32,98,121,32,82,78,71,0,115,101,118,101,114,101,32,101,114,114,111,114,32,103,101,116,116,105,110,103,32,114,97,110,100,111,109,10,0,115,101,108,102,116,101,115,116,95,107,97,116,0,101,114,114,111,114,32,99,114,101,97,116,105,110,103,32,99,105,112,104,101,114,32,99,111,110,116,101,120,116,32,102,111,114,32,82,78,71,0,185,202,127,214,160,245,211,66,25,109,132,145,118,28,59,190,72,178,130,152,104,194,128,0,0,0,40,24,0,0,37,0,82,23,141,41,162,213,132,18,157,137,154,69,130,2,247,119,66,156,8,61,130,244,138,64,102,181,73,39,171,66,199,195,14,183,97,60,254,176,190,115,247,110,109,111,29,163,20,250,187,75,193,14,197,251,205,70,190,40,97,231,3,43,55,125,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,247,149,189,74,82,226,158,215,19,211,19,250,32,233,141,188,200,209,229,17,89,82,247,250,55,56,180,197,206,178,176,154,13,156,197,13,22,225,188,237,207,96,98,9,157,32,131,126,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,128,0,129,1,130,2,131,3,160,32,161,33,162,34,163,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,150,237,204,195,221,4,127,117,99,25,55,111,21,34,87,86,122,20,118,119,149,23,126,200,146,232,221,21,203,31,188,177,37,62,46,162,65,27,221,245,33,72,65,113,179,141,47,76,101,114,114,111,114,32,115,101,116,116,105,110,103,32,107,101,121,32,102,111,114,32,82,78,71,0,88,57,46,51,49,32,82,78,71,32,99,111,114,101,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,0,82,78,71,32,111,117,116,112,117,116,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,107,110,111,119,110,32,118,97,108,117,101,0,102,111,114,107,32,100,101,116,101,99,116,105,111,110,32,102,97,105,108,101,100,0,114,97,110,100,111,109,0,75,65,84,0,102,97,105,108,101,100,32,116,111,32,97,99,113,117,105,114,101,32,116,104,101,32,83,121,115,116,101,109,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,102,97,105,108,101,100,32,116,111,32,114,101,108,101,97,115,101,32,116,104,101,32,83,121,115,116,101,109,32,82,78,71,32,108,111,99,107,58,32,37,115,10,0,98,117,102,102,101,114,0,114,97,110,100,111,109,45,115,121,115,116,101,109,46,99,0,103,101,116,95,114,97,110,100,111,109,0,115,121,115,116,101,109,95,114,110,103,95,105,115,95,108,111,99,107,101,100,0,114,101,97,100,95,99,98,0,114,101,97,100,95,99,98,95,98,117,102,102,101,114,0,101,114,114,111,114,32,114,101,97,100,105,110,103,32,114,97,110,100,111,109,32,102,114,111,109,32,115,121,115,116,101,109,32,82,78,71,32,40,114,99,61,37,100,41,10,0,47,100,101,118,47,114,97,110,100,111,109,0,111,112,101,110,95,100,101,118,95,114,97,110,100,111,109,0,119,97,105,116,95,100,101,118,95,114,97,110,100,111,109,0,99,97,110,39,116,32,111,112,101,110,32,37,115,58,32,37,115,10,0,101,114,114,111,114,32,115,101,116,116,105,110,103,32,70,68,95,67,76,79,69,88,69,67,32,111,110,32,102,100,32,37,100,58,32,37,115,10,0,47,100,101,118,47,117,114,97,110,100,111,109,0,110,101,101,100,95,101,110,116,114,111,112,121,0,115,101,108,101,99,116,40,41,32,101,114,114,111,114,58,32,37,115,10,0,98,111,103,117,115,32,114,101,97,100,32,102,114,111,109,32,114,97,110,100,111,109,32,100,101,118,105,99,101,32,40,110,61,37,100,41,10,0,114,101,97,100,32,101,114,114,111,114,32,111,110,32,114,97,110,100,111,109,32,100,101,118,105,99,101,58,32,37,115,10,0,99,104,111,111,115,105,110,103,32,97,32,114,97,110,100,111,109,32,107,32,111,102,32,37,117,32,98,105,116,115,32,97,116,32,115,101,99,108,101,118,101,108,32,37,100,10,0,9,107,32,116,111,111,32,108,97,114,103,101,32,45,32,97,103,97,105,110,10,0,9,107,32,105,115,32,122,101,114,111,32,45,32,97,103,97,105,110,10,0,1,0,101,99,100,115,97,32,115,105,103,110,32,104,97,115,104,32,32,0,101,99,100,115,97,32,115,105,103,110,32,114,101,115,117,108,116,32,114,32,0,101,99,100,115,97,32,115,105,103,110,32,114,101,115,117,108,116,32,115,32,0,103,111,115,116,32,115,105,103,110,32,104,97,115,104,32,32,0,101,99,99,32,115,105,103,110,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,103,111,115,116,32,115,105,103,110,32,114,101,115,117,108,116,32,114,32,0,103,111,115,116,32,115,105,103,110,32,114,101,115,117,108,116,32,115,32,0,101,99,99,32,118,101,114,105,102,121,58,32,82,101,106,101,99,116,101,100,10,0,101,99,99,32,118,101,114,105,102,121,58,32,70,97,105,108,101,100,32,116,111,32,103,101,116,32,97,102,102,105,110,101,32,99,111,111,114,100,105,110,97,116,101,115,10,0,32,32,32,32,32,120,0,32,32,32,32,32,114,0,32,32,32,32,32,115,0,101,99,99,32,118,101,114,105,102,121,58,32,78,111,116,32,118,101,114,105,102,105,101,100,10,0,101,99,99,32,118,101,114,105,102,121,58,32,65,99,99,101,112,116,101,100,10,0,33,34,108,111,99,107,32,65,66,73,32,118,101,114,115,105,111,110,34,0,112,111,115,105,120,45,108,111,99,107,46,99,0,103,101,116,95,108,111,99,107,95,111,98,106,101,99,116,0,115,116,114,101,97,109,45,62,102,108,97,103,115,46,119,114,105,116,105,110,103,0,101,115,116,114,101,97,109,46,99,0,101,115,95,102,108,117,115,104,0,33,115,116,114,101,97,109,45,62,102,108,97,103,115,46,119,114,105,116,105,110,103,0,101,115,95,101,109,112,116,121,0,83,117,99,99,101,115,115,0,71,101,110,101,114,97,108,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,112,97,99,107,101,116,0,85,110,107,110,111,119,110,32,118,101,114,115,105,111,110,32,105,110,32,112,97,99,107,101,116,0,73,110,118,97,108,105,100,32,112,117,98,108,105,99,32,107,101,121,32,97,108,103,111,114,105,116,104,109,0,73,110,118,97,108,105,100,32,100,105,103,101,115,116,32,97,108,103,111,114,105,116,104,109,0,66,97,100,32,112,117,98,108,105,99,32,107,101,121,0,66,97,100,32,115,101,99,114,101,116,32,107,101,121,0,66,97,100,32,115,105,103,110,97,116,117,114,101,0,78,111,32,112,117,98,108,105,99,32,107,101,121,0,67,104,101,99,107,115,117,109,32,101,114,114,111,114,0,66,97,100,32,112,97,115,115,112,104,114,97,115,101,0,73,110,118,97,108,105,100,32,99,105,112,104,101,114,32,97,108,103,111,114,105,116,104,109,0,75,101,121,114,105,110,103,32,111,112,101,110,0,73,110,118,97,108,105,100,32,112,97,99,107,101,116,0,73,110,118,97,108,105,100,32,97,114,109,111,114,0,78,111,32,117,115,101,114,32,73,68,0,78,111,32,115,101,99,114,101,116,32,107,101,121,0,87,114,111,110,103,32,115,101,99,114,101,116,32,107,101,121,32,117,115,101,100,0,66,97,100,32,115,101,115,115,105,111,110,32,107,101,121,0,85,110,107,110,111,119,110,32,99,111,109,112,114,101,115,115,105,111,110,32,97,108,103,111,114,105,116,104,109,0,78,117,109,98,101,114,32,105,115,32,110,111,116,32,112,114,105,109,101,0,73,110,118,97,108,105,100,32,101,110,99,111,100,105,110,103,32,109,101,116,104,111,100,0,73,110,118,97,108,105,100,32,101,110,99,114,121,112,116,105,111,110,32,115,99,104,101,109,101,0,73,110,118,97,108,105,100,32,115,105,103,110,97,116,117,114,101,32,115,99,104,101,109,101,0,73,110,118,97,108,105,100,32,97,116,116,114,105,98,117,116,101,0,78,111,32,118,97,108,117,101,0,78,111,116,32,102,111,117,110,100,0,86,97,108,117,101,32,110,111,116,32,102,111,117,110,100,0,83,121,110,116,97,120,32,101,114,114,111,114,0,66,97,100,32,77,80,73,32,118,97,108,117,101,0,73,110,118,97,108,105,100,32,112,97,115,115,112,104,114,97,115,101,0,73,110,118,97,108,105,100,32,115,105,103,110,97,116,117,114,101,32,99,108,97,115,115,0,82,101,115,111,117,114,99,101,115,32,101,120,104,97,117,115,116,101,100,0,73,110,118,97,108,105,100,32,107,101,121,114,105,110,103,0,84,114,117,115,116,32,68,66,32,101,114,114,111,114,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,0,73,110,118,97,108,105,100,32,117,115,101,114,32,73,68,0,85,110,101,120,112,101,99,116,101,100,32,101,114,114,111,114,0,84,105,109,101,32,99,111,110,102,108,105,99,116,0,75,101,121,115,101,114,118,101,114,32,101,114,114,111,114,0,87,114,111,110,103,32,112,117,98,108,105,99,32,107,101,121,32,97,108,103,111,114,105,116,104,109,0,84,114,105,98,117,116,101,32,116,111,32,68,46,32,65,46,0,87,101,97,107,32,101,110,99,114,121,112,116,105,111,110,32,107,101,121,0,73,110,118,97,108,105,100,32,107,101,121,32,108,101,110,103,116,104,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,83,121,110,116,97,120,32,101,114,114,111,114,32,105,110,32,85,82,73,0,73,110,118,97,108,105,100,32,85,82,73,0,78,101,116,119,111,114,107,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,104,111,115,116,0,83,101,108,102,116,101,115,116,32,102,97,105,108,101,100,0,68,97,116,97,32,110,111,116,32,101,110,99,114,121,112,116,101,100,0,68,97,116,97,32,110,111,116,32,112,114,111,99,101,115,115,101,100,0,85,110,117,115,97,98,108,101,32,112,117,98,108,105,99,32,107,101,121,0,85,110,117,115,97,98,108,101,32,115,101,99,114,101,116,32,107,101,121,0,73,110,118,97,108,105,100,32,118,97,108,117,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,99,104,97,105,110,0,77,105,115,115,105,110,103,32,99,101,114,116,105,102,105,99,97,116,101,0,78,111,32,100,97,116,97,0,66,117,103,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,73,110,118,97,108,105,100,32,111,112,101,114,97,116,105,111,110,32,99,111,100,101,0,84,105,109,101,111,117,116,0,73,110,116,101,114,110,97,108,32,101,114,114,111,114,0,69,79,70,32,40,103,99,114,121,112,116,41,0,73,110,118,97,108,105,100,32,111,98,106,101,99,116,0,80,114,111,118,105,100,101,100,32,111,98,106,101,99,116,32,105,115,32,116,111,111,32,115,104,111,114,116,0,80,114,111,118,105,100,101,100,32,111,98,106,101,99,116,32,105,115,32,116,111,111,32,108,97,114,103,101,0,77,105,115,115,105,110,103,32,105,116,101,109,32,105,110,32,111,98,106,101,99,116,0,78,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,67,111,110,102,108,105,99,116,105,110,103,32,117,115,101,0,73,110,118,97,108,105,100,32,99,105,112,104,101,114,32,109,111,100,101,0,73,110,118,97,108,105,100,32,102,108,97,103,0,73,110,118,97,108,105,100,32,104,97,110,100,108,101,0,82,101,115,117,108,116,32,116,114,117,110,99,97,116,101,100,0,73,110,99,111,109,112,108,101,116,101,32,108,105,110,101,0,73,110,118,97,108,105,100,32,114,101,115,112,111,110,115,101,0,78,111,32,97,103,101,110,116,32,114,117,110,110,105,110,103,0,65,103,101,110,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,100,97,116,97,0,85,110,115,112,101,99,105,102,105,99,32,65,115,115,117,97,110,32,115,101,114,118,101,114,32,102,97,117,108,116,0,71,101,110,101,114,97,108,32,65,115,115,117,97,110,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,115,101,115,115,105,111,110,32,107,101,121,0,73,110,118,97,108,105,100,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,115,117,112,112,111,114,116,101,100,32,97,108,103,111,114,105,116,104,109,0,78,111,32,112,105,110,101,110,116,114,121,0,112,105,110,101,110,116,114,121,32,101,114,114,111,114,0,66,97,100,32,80,73,78,0,73,110,118,97,108,105,100,32,110,97,109,101,0,66,97,100,32,100,97,116,97,0,73,110,118,97,108,105,100,32,112,97,114,97,109,101,116,101,114,0,87,114,111,110,103,32,99,97,114,100,0,78,111,32,100,105,114,109,110,103,114,0,100,105,114,109,110,103,114,32,101,114,114,111,114,0,67,101,114,116,105,102,105,99,97,116,101,32,114,101,118,111,107,101,100,0,78,111,32,67,82,76,32,107,110,111,119,110,0,67,82,76,32,116,111,111,32,111,108,100,0,76,105,110,101,32,116,111,111,32,108,111,110,103,0,78,111,116,32,116,114,117,115,116,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,108,101,100,0,66,97,100,32,67,65,32,99,101,114,116,105,102,105,99,97,116,101,0,67,101,114,116,105,102,105,99,97,116,101,32,101,120,112,105,114,101,100,0,67,101,114,116,105,102,105,99,97,116,101,32,116,111,111,32,121,111,117,110,103,0,85,110,115,117,112,112,111,114,116,101,100,32,99,101,114,116,105,102,105,99,97,116,101,0,85,110,107,110,111,119,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,115,117,112,112,111,114,116,101,100,32,112,114,111,116,101,99,116,105,111,110,0,67,111,114,114,117,112,116,101,100,32,112,114,111,116,101,99,116,105,111,110,0,65,109,98,105,103,117,111,117,115,32,110,97,109,101,0,67,97,114,100,32,101,114,114,111,114,0,67,97,114,100,32,114,101,115,101,116,32,114,101,113,117,105,114,101,100,0,67,97,114,100,32,114,101,109,111,118,101,100,0,73,110,118,97,108,105,100,32,99,97,114,100,0,67,97,114,100,32,110,111,116,32,112,114,101,115,101,110,116,0,78,111,32,80,75,67,83,49,53,32,97,112,112,108,105,99,97,116,105,111,110,0,78,111,116,32,99,111,110,102,105,114,109,101,100,0,67,111,110,102,105,103,117,114,97,116,105,111,110,32,101,114,114,111,114,0,78,111,32,112,111,108,105,99,121,32,109,97,116,99,104,0,73,110,118,97,108,105,100,32,105,110,100,101,120,0,73,110,118,97,108,105,100,32,73,68,0,78,111,32,83,109,97,114,116,67,97,114,100,32,100,97,101,109,111,110,0,83,109,97,114,116,67,97,114,100,32,100,97,101,109,111,110,32,101,114,114,111,114,0,85,110,115,117,112,112,111,114,116,101,100,32,112,114,111,116,111,99,111,108,0,66,97,100,32,80,73,78,32,109,101,116,104,111,100,0,67,97,114,100,32,110,111,116,32,105,110,105,116,105,97,108,105,122,101,100,0,85,110,115,117,112,112,111,114,116,101,100,32,111,112,101,114,97,116,105,111,110,0,87,114,111,110,103,32,107,101,121,32,117,115,97,103,101,0,78,111,116,104,105,110,103,32,102,111,117,110,100,0,87,114,111,110,103,32,98,108,111,98,32,116,121,112,101,0,77,105,115,115,105,110,103,32,118,97,108,117,101,0,72,97,114,100,119,97,114,101,32,112,114,111,98,108,101,109,0,80,73,78,32,98,108,111,99,107,101,100,0,67,111,110,100,105,116,105,111,110,115,32,111,102,32,117,115,101,32,110,111,116,32,115,97,116,105,115,102,105,101,100,0,80,73,78,115,32,97,114,101,32,110,111,116,32,115,121,110,99,101,100,0,73,110,118,97,108,105,100,32,67,82,76,0,66,69,82,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,66,69,82,0,69,108,101,109,101,110,116,32,110,111,116,32,102,111,117,110,100,0,73,100,101,110,116,105,102,105,101,114,32,110,111,116,32,102,111,117,110,100,0,73,110,118,97,108,105,100,32,116,97,103,0,73,110,118,97,108,105,100,32,108,101,110,103,116,104,0,73,110,118,97,108,105,100,32,107,101,121,32,105,110,102,111,0,85,110,101,120,112,101,99,116,101,100,32,116,97,103,0,78,111,116,32,68,69,82,32,101,110,99,111,100,101,100,0,78,111,32,67,77,83,32,111,98,106,101,99,116,0,73,110,118,97,108,105,100,32,67,77,83,32,111,98,106,101,99,116,0,85,110,107,110,111,119,110,32,67,77,83,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,67,77,83,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,0,85,110,115,117,112,112,111,114,116,101,100,32,67,77,83,32,118,101,114,115,105,111,110,0,85,110,107,110,111,119,110,32,97,108,103,111,114,105,116,104,109,0,73,110,118,97,108,105,100,32,99,114,121,112,116,111,32,101,110,103,105,110,101,0,80,117,98,108,105,99,32,107,101,121,32,110,111,116,32,116,114,117,115,116,101,100,0,68,101,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,0,75,101,121,32,101,120,112,105,114,101,100,0,83,105,103,110,97,116,117,114,101,32,101,120,112,105,114,101,100,0,69,110,99,111,100,105,110,103,32,112,114,111,98,108,101,109,0,73,110,118,97,108,105,100,32,115,116,97,116,101,0,68,117,112,108,105,99,97,116,101,100,32,118,97,108,117,101,0,77,105,115,115,105,110,103,32,97,99,116,105,111,110,0,65,83,78,46,49,32,109,111,100,117,108,101,32,110,111,116,32,102,111,117,110,100,0,73,110,118,97,108,105,100,32,79,73,68,32,115,116,114,105,110,103,0,73,110,118,97,108,105,100,32,116,105,109,101,0,73,110,118,97,108,105,100,32,67,82,76,32,111,98,106,101,99,116,0,85,110,115,117,112,112,111,114,116,101,100,32,67,82,76,32,118,101,114,115,105,111,110,0,73,110,118,97,108,105,100,32,99,101,114,116,105,102,105,99,97,116,101,32,111,98,106,101,99,116,0,85,110,107,110,111,119,110,32,110,97,109,101,0,65,32,108,111,99,97,108,101,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,0,78,111,116,32,108,111,99,107,101,100,0,80,114,111,116,111,99,111,108,32,118,105,111,108,97,116,105,111,110,0,73,110,118,97,108,105,100,32,77,65,67,0,73,110,118,97,108,105,100,32,114,101,113,117,101,115,116,0,85,110,107,110,111,119,110,32,101,120,116,101,110,115,105,111,110,0,85,110,107,110,111,119,110,32,99,114,105,116,105,99,97,108,32,101,120,116,101,110,115,105,111,110,0,76,111,99,107,101,100,0,85,110,107,110,111,119,110,32,111,112,116,105,111,110,0,85,110,107,110,111,119,110,32,99,111,109,109,97,110,100,0,78,111,116,32,111,112,101,114,97,116,105,111,110,97,108,0,78,111,32,112,97,115,115,112,104,114,97,115,101,32,103,105,118,101,110,0,78,111,32,80,73,78,32,103,105,118,101,110,0,78,111,116,32,101,110,97,98,108,101,100,0,78,111,32,99,114,121,112,116,111,32,101,110,103,105,110,101,0,77,105,115,115,105,110,103,32,107,101,121,0,84,111,111,32,109,97,110,121,32,111,98,106,101,99,116,115,0,76,105,109,105,116,32,114,101,97,99,104,101,100,0,78,111,116,32,105,110,105,116,105,97,108,105,122,101,100,0,77,105,115,115,105,110,103,32,105,115,115,117,101,114,32,99,101,114,116,105,102,105,99,97,116,101,0,78,111,32,107,101,121,115,101,114,118,101,114,32,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,101,108,108,105,112,116,105,99,32,99,117,114,118,101,0,85,110,107,110,111,119,110,32,101,108,108,105,112,116,105,99,32,99,117,114,118,101,0,68,117,112,108,105,99,97,116,101,100,32,107,101,121,0,65,109,98,105,103,117,111,117,115,32,114,101,115,117,108,116,0,78,111,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,87,114,111,110,103,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,66,97,100,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,67,111,110,102,108,105,99,116,32,105,110,32,116,104,101,32,99,114,121,112,116,111,32,99,111,110,116,101,120,116,0,66,114,111,107,101,110,32,112,117,98,108,105,99,32,107,101,121,0,66,114,111,107,101,110,32,115,101,99,114,101,116,32,107,101,121,0,73,110,118,97,108,105,100,32,77,65,67,32,97,108,103,111,114,105,116,104,109,0,79,112,101,114,97,116,105,111,110,32,102,117,108,108,121,32,99,97,110,99,101,108,108,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,121,101,116,32,102,105,110,105,115,104,101,100,0,66,117,102,102,101,114,32,116,111,111,32,115,104,111,114,116,0,73,110,118,97,108,105,100,32,108,101,110,103,116,104,32,115,112,101,99,105,102,105,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,83,116,114,105,110,103,32,116,111,111,32,108,111,110,103,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,109,97,116,99,104,101,100,32,112,97,114,101,110,116,104,101,115,101,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,83,45,101,120,112,114,101,115,115,105,111,110,32,110,111,116,32,99,97,110,111,110,105,99,97,108,0,66,97,100,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,113,117,111,116,97,116,105,111,110,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,90,101,114,111,32,112,114,101,102,105,120,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,78,101,115,116,101,100,32,100,105,115,112,108,97,121,32,104,105,110,116,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,85,110,109,97,116,99,104,101,100,32,100,105,115,112,108,97,121,32,104,105,110,116,115,0,85,110,101,120,112,101,99,116,101,100,32,114,101,115,101,114,118,101,100,32,112,117,110,99,116,117,97,116,105,111,110,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,104,101,120,97,100,101,99,105,109,97,108,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,79,100,100,32,104,101,120,97,100,101,99,105,109,97,108,32,110,117,109,98,101,114,115,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,66,97,100,32,111,99,116,97,108,32,99,104,97,114,97,99,116,101,114,32,105,110,32,83,45,101,120,112,114,101,115,115,105,111,110,0,76,101,103,97,99,121,32,107,101,121,0,82,101,113,117,101,115,116,32,116,111,111,32,115,104,111,114,116,0,82,101,113,117,101,115,116,32,116,111,111,32,108,111,110,103,0,79,98,106,101,99,116,32,105,115,32,105,110,32,116,101,114,109,105,110,97,116,105,111,110,32,115,116,97,116,101,0,78,111,32,99,101,114,116,105,102,105,99,97,116,101,32,99,104,97,105,110,0,67,101,114,116,105,102,105,99,97,116,101,32,105,115,32,116,111,111,32,108,97,114,103,101,0,73,110,118,97,108,105,100,32,114,101,99,111,114,100,0,84,104,101,32,77,65,67,32,100,111,101,115,32,110,111,116,32,118,101,114,105,102,121,0,85,110,101,120,112,101,99,116,101,100,32,109,101,115,115,97,103,101,0,67,111,109,112,114,101,115,115,105,111,110,32,111,114,32,100,101,99,111,109,112,114,101,115,115,105,111,110,32,102,97,105,108,101,100,0,65,32,99,111,117,110,116,101,114,32,119,111,117,108,100,32,119,114,97,112,0,70,97,116,97,108,32,97,108,101,114,116,32,109,101,115,115,97,103,101,32,114,101,99,101,105,118,101,100,0,78,111,32,99,105,112,104,101,114,32,97,108,103,111,114,105,116,104,109,0,77,105,115,115,105,110,103,32,99,108,105,101,110,116,32,99,101,114,116,105,102,105,99,97,116,101,0,67,108,111,115,101,32,110,111,116,105,102,105,99,97,116,105,111,110,32,114,101,99,101,105,118,101,100,0,84,105,99,107,101,116,32,101,120,112,105,114,101,100,0,66,97,100,32,116,105,99,107,101,116,0,85,110,107,110,111,119,110,32,105,100,101,110,116,105,116,121,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,114,101,113,117,101,115,116,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,101,114,116,105,102,105,99,97,116,101,32,118,101,114,105,102,121,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,104,97,110,103,101,32,99,105,112,104,101,114,32,109,101,115,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,108,105,101,110,116,32,104,101,108,108,111,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,104,101,108,108,111,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,104,101,108,108,111,32,100,111,110,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,115,104,97,107,101,0,66,97,100,32,102,105,110,105,115,104,101,100,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,115,101,114,118,101,114,32,107,101,121,32,101,120,99,104,97,110,103,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,97,100,32,99,108,105,101,110,116,32,107,101,121,32,101,120,99,104,97,110,103,101,32,109,101,115,115,97,103,101,32,105,110,32,104,97,110,100,115,104,97,107,101,0,66,111,103,117,115,32,115,116,114,105,110,103,0,70,111,114,98,105,100,100,101,110,0,75,101,121,32,100,105,115,97,98,108,101,100,0,78,111,116,32,112,111,115,115,105,98,108,101,32,119,105,116,104,32,97,32,99,97,114,100,32,98,97,115,101,100,32,107,101,121,0,73,110,118,97,108,105,100,32,108,111,99,107,32,111,98,106,101,99,116,0,71,101,110,101,114,97,108,32,73,80,67,32,101,114,114,111,114,0,73,80,67,32,97,99,99,101,112,116,32,99,97,108,108,32,102,97,105,108,101,100,0,73,80,67,32,99,111,110,110,101,99,116,32,99,97,108,108,32,102,97,105,108,101,100,0,73,110,118,97,108,105,100,32,73,80,67,32,114,101,115,112,111,110,115,101,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,0,73,110,99,111,109,112,108,101,116,101,32,108,105,110,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,0,76,105,110,101,32,112,97,115,115,101,100,32,116,111,32,73,80,67,32,116,111,111,32,108,111,110,103,0,78,101,115,116,101,100,32,73,80,67,32,99,111,109,109,97,110,100,115,0,78,111,32,100,97,116,97,32,99,97,108,108,98,97,99,107,32,105,110,32,73,80,67,0,78,111,32,105,110,113,117,105,114,101,32,99,97,108,108,98,97,99,107,32,105,110,32,73,80,67,0,78,111,116,32,97,110,32,73,80,67,32,115,101,114,118,101,114,0,78,111,116,32,97,110,32,73,80,67,32,99,108,105,101,110,116,0,80,114,111,98,108,101,109,32,115,116,97,114,116,105,110,103,32,73,80,67,32,115,101,114,118,101,114,0,73,80,67,32,114,101,97,100,32,101,114,114,111,114,0,73,80,67,32,119,114,105,116,101,32,101,114,114,111,114,0,84,111,111,32,109,117,99,104,32,100,97,116,97,32,102,111,114,32,73,80,67,32,108,97,121,101,114,0,85,110,101,120,112,101,99,116,101,100,32,73,80,67,32,99,111,109,109,97,110,100,0,85,110,107,110,111,119,110,32,73,80,67,32,99,111,109,109,97,110,100,0,73,80,67,32,115,121,110,116,97,120,32,101,114,114,111,114,0,73,80,67,32,99,97,108,108,32,104,97,115,32,98,101,101,110,32,99,97,110,99,101,108,108,101,100,0,78,111,32,105,110,112,117,116,32,115,111,117,114,99,101,32,102,111,114,32,73,80,67,0,78,111,32,111,117,116,112,117,116,32,115,111,117,114,99,101,32,102,111,114,32,73,80,67,0,73,80,67,32,112,97,114,97,109,101,116,101,114,32,101,114,114,111,114,0,85,110,107,110,111,119,110,32,73,80,67,32,105,110,113,117,105,114,101,0,71,101,110,101,114,97,108,32,76,68,65,80,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,110,97,109,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,115,101,99,117,114,105,116,121,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,115,101,114,118,105,99,101,32,101,114,114,111,114,0,71,101,110,101,114,97,108,32,76,68,65,80,32,117,112,100,97,116,101,32,101,114,114,111,114,0,69,120,112,101,114,105,109,101,110,116,97,108,32,76,68,65,80,32,101,114,114,111,114,32,99,111,100,101,0,80,114,105,118,97,116,101,32,76,68,65,80,32,101,114,114,111,114,32,99,111,100,101,0,79,116,104,101,114,32,103,101,110,101,114,97,108,32,76,68,65,80,32,101,114,114,111,114,0,76,68,65,80,32,99,111,110,110,101,99,116,105,110,103,32,102,97,105,108,101,100,32,40,88,41,0,76,68,65,80,32,114,101,102,101,114,114,97,108,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0,76,68,65,80,32,99,108,105,101,110,116,32,108,111,111,112,0,78,111,32,76,68,65,80,32,114,101,115,117,108,116,115,32,114,101,116,117,114,110,101,100,0,76,68,65,80,32,99,111,110,116,114,111,108,32,110,111,116,32,102,111,117,110,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,99,111,110,110,101,99,116,32,101,114,114,111,114,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,105,110,32,76,68,65,80,0,66,97,100,32,112,97,114,97,109,101,116,101,114,32,116,111,32,97,110,32,76,68,65,80,32,114,111,117,116,105,110,101,0,85,115,101,114,32,99,97,110,99,101,108,108,101,100,32,76,68,65,80,32,111,112,101,114,97,116,105,111,110,0,66,97,100,32,76,68,65,80,32,115,101,97,114,99,104,32,102,105,108,116,101,114,0,85,110,107,110,111,119,110,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,109,101,116,104,111,100,0,84,105,109,101,111,117,116,32,105,110,32,76,68,65,80,0,76,68,65,80,32,100,101,99,111,100,105,110,103,32,101,114,114,111,114,0,76,68,65,80,32,101,110,99,111,100,105,110,103,32,101,114,114,111,114,0,76,68,65,80,32,108,111,99,97,108,32,101,114,114,111,114,0,67,97,110,110,111,116,32,99,111,110,116,97,99,116,32,76,68,65,80,32,115,101,114,118,101,114,0,76,68,65,80,32,115,117,99,99,101,115,115,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,115,32,101,114,114,111,114,0,76,68,65,80,32,112,114,111,116,111,99,111,108,32,101,114,114,111,114,0,84,105,109,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,32,105,110,32,76,68,65,80,0,83,105,122,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,32,105,110,32,76,68,65,80,0,76,68,65,80,32,99,111,109,112,97,114,101,32,102,97,108,115,101,0,76,68,65,80,32,99,111,109,112,97,114,101,32,116,114,117,101,0,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,109,101,116,104,111,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,116,114,111,110,103,40,101,114,41,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,32,114,101,113,117,105,114,101,100,0,80,97,114,116,105,97,108,32,76,68,65,80,32,114,101,115,117,108,116,115,43,114,101,102,101,114,114,97,108,32,114,101,99,101,105,118,101,100,0,76,68,65,80,32,114,101,102,101,114,114,97,108,0,65,100,109,105,110,105,115,116,114,97,116,105,118,101,32,76,68,65,80,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0,67,114,105,116,105,99,97,108,32,76,68,65,80,32,101,120,116,101,110,115,105,111,110,32,105,115,32,117,110,97,118,97,105,108,97,98,108,101,0,67,111,110,102,105,100,101,110,116,105,97,108,105,116,121,32,114,101,113,117,105,114,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,83,65,83,76,32,98,105,110,100,32,105,110,32,112,114,111,103,114,101,115,115,0,78,111,32,115,117,99,104,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,0,85,110,100,101,102,105,110,101,100,32,76,68,65,80,32,97,116,116,114,105,98,117,116,101,32,116,121,112,101,0,73,110,97,112,112,114,111,112,114,105,97,116,101,32,109,97,116,99,104,105,110,103,32,105,110,32,76,68,65,80,0,67,111,110,115,116,114,97,105,110,116,32,118,105,111,108,97,116,105,111,110,32,105,110,32,76,68,65,80,0,76,68,65,80,32,116,121,112,101,32,111,114,32,118,97,108,117,101,32,101,120,105,115,116,115,0,73,110,118,97,108,105,100,32,115,121,110,116,97,120,32,105,110,32,76,68,65,80,0,78,111,32,115,117,99,104,32,76,68,65,80,32,111,98,106,101,99,116,0,76,68,65,80,32,97,108,105,97,115,32,112,114,111,98,108,101,109,0,73,110,118,97,108,105,100,32,68,78,32,115,121,110,116,97,120,32,105,110,32,76,68,65,80,0,76,68,65,80,32,101,110,116,114,121,32,105,115,32,97,32,108,101,97,102,0,76,68,65,80,32,97,108,105,97,115,32,100,101,114,101,102,101,114,101,110,99,105,110,103,32,112,114,111,98,108,101,109,0,76,68,65,80,32,112,114,111,120,121,32,97,117,116,104,111,114,105,122,97,116,105,111,110,32,102,97,105,108,117,114,101,32,40,88,41,0,73,110,97,112,112,114,111,112,114,105,97,116,101,32,76,68,65,80,32,97,117,116,104,101,110,116,105,99,97,116,105,111,110,0,73,110,118,97,108,105,100,32,76,68,65,80,32,99,114,101,100,101,110,116,105,97,108,115,0,73,110,115,117,102,102,105,99,105,101,110,116,32,97,99,99,101,115,115,32,102,111,114,32,76,68,65,80,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,98,117,115,121,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,117,110,97,118,97,105,108,97,98,108,101,0,76,68,65,80,32,115,101,114,118,101,114,32,105,115,32,117,110,119,105,108,108,105,110,103,32,116,111,32,112,101,114,102,111,114,109,0,76,111,111,112,32,100,101,116,101,99,116,101,100,32,98,121,32,76,68,65,80,0,76,68,65,80,32,110,97,109,105,110,103,32,118,105,111,108,97,116,105,111,110,0,76,68,65,80,32,111,98,106,101,99,116,32,99,108,97,115,115,32,118,105,111,108,97,116,105,111,110,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,110,111,110,45,108,101,97,102,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,111,110,32,82,68,78,0,65,108,114,101,97,100,121,32,101,120,105,115,116,115,32,40,76,68,65,80,41,0,67,97,110,110,111,116,32,109,111,100,105,102,121,32,76,68,65,80,32,111,98,106,101,99,116,32,99,108,97,115,115,0,76,68,65,80,32,114,101,115,117,108,116,115,32,116,111,111,32,108,97,114,103,101,0,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,97,102,102,101,99,116,115,32,109,117,108,116,105,112,108,101,32,68,83,65,115,0,86,105,114,116,117,97,108,32,76,68,65,80,32,108,105,115,116,32,118,105,101,119,32,101,114,114,111,114,0,79,116,104,101,114,32,76,68,65,80,32,101,114,114,111,114,0,82,101,115,111,117,114,99,101,115,32,101,120,104,97,117,115,116,101,100,32,105,110,32,76,67,85,80,0,83,101,99,117,114,105,116,121,32,118,105,111,108,97,116,105,111,110,32,105,110,32,76,67,85,80,0,73,110,118,97,108,105,100,32,100,97,116,97,32,105,110,32,76,67,85,80,0,85,110,115,117,112,112,111,114,116,101,100,32,115,99,104,101,109,101,32,105,110,32,76,67,85,80,0,82,101,108,111,97,100,32,114,101,113,117,105,114,101,100,32,105,110,32,76,67,85,80,0,76,68,65,80,32,99,97,110,99,101,108,108,101,100,0,78,111,32,76,68,65,80,32,111,112,101,114,97,116,105,111,110,32,116,111,32,99,97,110,99,101,108,0,84,111,111,32,108,97,116,101,32,116,111,32,99,97,110,99,101,108,32,76,68,65,80,0,67,97,110,110,111,116,32,99,97,110,99,101,108,32,76,68,65,80,0,76,68,65,80,32,97,115,115,101,114,116,105,111,110,32,102,97,105,108,101,100,0,80,114,111,120,105,101,100,32,97,117,116,104,111,114,105,122,97,116,105,111,110,32,100,101,110,105,101,100,32,98,121,32,76,68,65,80,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,50,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,51,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,52,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,53,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,54,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,55,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,56,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,57,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,48,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,49,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,50,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,51,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,52,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,53,0,85,115,101,114,32,100,101,102,105,110,101,100,32,101,114,114,111,114,32,99,111,100,101,32,49,54,0,83,121,115,116,101,109,32,101,114,114,111,114,32,119,47,111,32,101,114,114,110,111,0,85,110,107,110,111,119,110,32,115,121,115,116,101,109,32,101,114,114,111,114,0,69,110,100,32,111,102,32,102,105,108,101,0,85,110,107,110,111,119,110,32,101,114,114,111,114,32,99,111,100,101,0,97,109,111,117,110,116,46,99,0,84,65,76,69,82,95,97,109,111,117,110,116,95,99,109,112,0,65,115,115,101,114,116,105,111,110,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,46,10,0,84,65,76,69,82,95,97,109,111,117,110],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([116,95,115,117,98,116,114,97,99,116,0,84,65,76,69,82,95,97,109,111,117,110,116,95,97,100,100,0,18,17,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,17,34,35,36,17,37,38,39,40,41,42,43,44,17,45,46,47,16,16,48,16,16,16,16,16,16,16,49,50,51,16,52,53,16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,54,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,55,17,17,17,17,56,17,57,58,59,60,61,62,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,63,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,64,65,17,66,67,68,69,70,71,72,73,16,16,16,74,75,76,77,78,16,16,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,17,17,17,82,83,16,16,16,16,16,16,16,16,16,16,16,17,17,17,17,84,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,17,17,85,16,16,16,16,86,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,87,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,88,89,90,91,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,92,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,254,255,255,7,254,255,255,7,0,0,0,0,0,4,32,4,255,255,127,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,195,255,3,0,31,80,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,223,60,64,215,255,255,251,255,255,255,255,255,255,255,255,255,191,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,252,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,254,255,255,255,127,2,254,255,255,255,255,0,0,0,0,0,255,191,182,0,255,255,255,7,7,0,0,0,255,7,255,255,255,255,255,255,255,254,255,195,255,255,255,255,255,255,255,255,255,255,255,255,239,31,254,225,255,159,0,0,255,255,255,255,255,255,0,224,255,255,255,255,255,255,255,255,255,255,255,255,3,0,255,255,255,255,255,7,48,4,255,255,255,252,255,31,0,0,255,255,255,1,0,0,0,0,0,0,0,0,253,31,0,0,0,0,0,0,240,3,255,127,255,255,255,255,255,255,255,239,255,223,225,255,207,255,254,254,238,159,249,255,255,253,197,227,159,89,128,176,207,255,3,0,238,135,249,255,255,253,109,195,135,25,2,94,192,255,63,0,238,191,251,255,255,253,237,227,191,27,1,0,207,255,0,0,238,159,249,255,255,253,237,227,159,25,192,176,207,255,2,0,236,199,61,214,24,199,255,195,199,29,129,0,192,255,0,0,238,223,253,255,255,253,239,227,223,29,96,3,207,255,0,0,236,223,253,255,255,253,239,227,223,29,96,64,207,255,6,0,236,223,253,255,255,255,255,231,223,93,128,0,207,255,0,252,236,255,127,252,255,255,251,47,127,128,95,255,0,0,12,0,254,255,255,255,255,127,255,7,63,32,255,3,0,0,0,0,150,37,240,254,174,236,255,59,95,32,255,243,0,0,0,0,1,0,0,0,255,3,0,0,255,254,255,255,255,31,254,255,3,255,255,254,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,249,255,3,255,255,231,193,255,255,127,64,255,51,255,255,255,255,191,32,255,255,255,255,255,247,255,255,255,255,255,255,255,255,255,61,127,61,255,255,255,255,255,61,255,255,255,255,61,127,61,255,127,255,255,255,255,255,255,255,61,255,255,255,255,255,255,255,255,135,0,0,0,0,255,255,0,0,255,255,255,255,255,255,255,255,255,255,31,0,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,255,255,254,255,255,7,255,255,255,255,255,255,255,255,255,199,1,0,255,223,15,0,255,255,15,0,255,255,15,0,255,223,13,0,255,255,255,255,255,255,207,255,255,1,128,16,255,3,0,0,0,0,255,3,255,255,255,255,255,255,255,255,255,255,255,0,255,255,255,255,255,7,255,255,255,255,255,255,255,255,63,0,255,255,255,31,255,15,255,1,192,255,255,255,255,63,31,0,255,255,255,255,255,15,255,255,255,3,255,3,0,0,0,0,255,255,255,15,255,255,255,255,255,255,255,127,254,255,31,0,255,3,255,3,128,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,239,255,239,15,255,3,0,0,0,0,255,255,255,255,255,243,255,255,255,255,255,255,191,255,3,0,255,255,255,255,255,255,63,0,255,227,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,222,111,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,255,255,63,63,255,255,255,255,63,63,255,170,255,255,255,63,255,255,255,255,255,255,223,95,220,31,207,15,255,31,220,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,255,31,0,0,0,0,0,0,0,0,0,0,0,0,132,252,47,62,80,189,255,243,224,67,0,0,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,255,255,255,3,0,0,255,255,255,255,255,127,255,255,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,120,12,0,255,255,255,255,191,32,255,255,255,255,255,255,255,128,0,0,255,255,127,0,127,127,127,127,127,127,127,127,255,255,255,255,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0,0,0,254,3,62,31,254,255,255,255,255,255,255,255,255,255,127,224,254,255,255,255,255,255,255,255,255,255,255,247,224,255,255,255,255,63,254,255,255,255,255,255,255,255,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,255,255,255,255,255,63,255,31,255,255,255,15,0,0,255,255,255,255,255,127,240,143,255,255,255,128,255,255,255,255,255,255,255,255,255,255,0,0,0,0,128,255,252,255,255,255,255,255,255,255,255,255,255,255,255,121,15,0,255,7,0,0,0,0,0,0,0,0,0,255,187,247,255,255,255,0,0,0,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,15,0,255,3,0,0,252,8,255,255,255,255,255,7,255,255,255,255,7,0,255,255,255,31,255,255,255,255,255,255,247,255,0,128,255,3,0,0,0,0,255,255,255,255,255,255,127,0,255,63,255,3,255,255,127,4,255,255,255,255,255,255,255,127,5,0,0,56,255,255,60,0,126,126,126,0,127,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,7,255,3,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,127,248,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,127,0,248,224,255,253,127,95,219,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,248,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,255,255,255,255,255,255,255,255,252,255,255,255,255,255,255,0,0,0,0,0,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,0,0,255,3,254,255,255,7,254,255,255,7,192,255,255,255,255,255,255,255,255,255,255,127,252,252,252,28,0,0,0,0,255,239,255,255,127,255,255,183,255,63,255,63,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,255,255,255,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,31,255,255,255,255,255,255,1,0,0,0,0,0,255,255,255,127,0,0,255,255,255,7,0,0,0,0,0,0,255,255,255,63,255,255,255,255,15,255,62,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,3,0,0,0,0,0,0,0,0,0,0,63,253,255,255,255,255,191,145,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,63,0,255,255,255,3,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,192,0,0,0,0,0,0,0,0,111,240,239,254,255,255,15,0,0,0,0,0,255,255,255,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,255,63,0,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,192,255,0,0,252,255,255,255,255,255,255,1,0,0,255,255,255,1,255,3,255,255,255,255,255,255,199,255,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,30,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,63,0,255,3,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,31,0,255,255,255,255,255,127,0,0,248,255,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,255,255,255,223,100,222,255,235,239,255,255,255,255,255,255,255,191,231,223,223,255,255,255,123,95,252,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,255,255,255,253,255,255,247,255,255,255,247,255,255,223,255,255,255,223,255,255,127,255,255,255,127,255,255,255,253,255,255,255,253,255,255,247,207,255,255,255,255,255,255,239,255,255,255,150,254,247,10,132,234,150,170,150,247,247,94,255,251,255,15,238,251,255,15,0,0,0,0,0,0,0,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,18,16,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,16,16,34,35,16,36,37,38,39,40,41,42,43,16,44,45,46,17,47,48,17,17,49,17,17,17,50,51,52,53,54,55,56,57,17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,58,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,59,16,60,61,62,63,64,65,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,66,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,67,16,16,68,16,69,70,71,16,72,16,73,16,16,16,16,74,75,76,77,16,16,78,16,79,80,16,16,16,16,81,16,16,16,16,16,16,16,16,16,16,16,16,16,82,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,83,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,84,85,86,87,16,16,88,89,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,90,16,91,92,93,94,95,96,97,98,16,16,16,16,16,16,16,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,254,255,0,252,1,0,0,248,1,0,0,120,0,0,0,0,255,251,223,251,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,252,255,224,175,255,255,255,255,255,255,255,255,255,255,223,255,255,255,255,255,32,64,176,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,134,254,255,255,255,0,64,73,0,0,0,0,0,24,0,223,255,0,200,0,0,0,0,0,0,0,1,0,60,0,0,0,0,0,0,0,0,0,0,0,0,16,224,1,30,0,96,255,191,0,0,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,207,3,0,0,0,3,0,32,255,127,0,0,0,78,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,0,0,0,16,0,32,30,0,48,0,1,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,252,15,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,3,0,0,0,0,0,0,0,0,16,0,32,0,0,0,0,253,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,255,7,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,255,0,0,0,0,0,0,0,16,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,63,2,0,0,0,0,0,0,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,128,0,128,192,223,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,254,255,255,255,0,252,255,255,0,0,0,0,0,0,0,0,252,0,0,0,0,0,0,192,255,223,255,7,0,0,0,0,0,0,0,0,0,0,128,6,0,252,0,0,24,62,0,0,128,191,0,204,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,96,255,255,255,31,0,0,255,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,1,0,0,24,0,0,0,0,0,0,0,0,0,56,0,0,0,0,16,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,0,0,254,127,47,0,0,255,3,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,255,255,255,255,0,0,0,192,0,0,0,0,0,0,0,0,1,0,224,159,0,0,0,0,127,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,16,0,0,252,255,255,255,31,0,0,0,0,0,12,0,0,0,0,0,0,64,0,12,240,0,0,0,0,0,0,192,248,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,255,0,255,255,255,33,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,127,0,0,240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,3,224,0,224,0,224,0,96,128,248,255,255,255,252,255,255,255,255,255,127,31,252,241,127,255,127,0,0,255,255,255,3,0,0,255,255,255,255,1,0,123,3,208,193,175,66,0,12,31,188,255,255,0,0,0,0,0,2,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,127,0,0,0,255,7,0,0,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,252,255,255,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,31,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,135,3,254,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,127,255,15,0,0,0,0,0,0,0,0,255,255,255,251,255,255,255,255,255,255,255,255,255,255,15,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,255,15,30,255,255,255,1,252,193,224,0,0,0,0,0,0,0,0,0,0,0,30,1,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,0,0,0,0,255,255,255,255,15,0,0,0,255,255,255,127,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,127,0,0,0,0,0,0,192,0,224,0,0,0,0,0,0,0,0,0,0,0,128,15,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,255,255,127,0,3,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,8,0,0,0,15,255,3,0,0,0,0,0,0,240,0,0,0,0,0,0,0,0,0,16,192,0,0,255,255,3,7,0,0,0,0,0,248,0,0,0,0,8,128,0,0,0,0,0,0,0,0,0,0,8,0,255,63,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,0,0,128,11,0,0,0,0,0,0,0,128,2,0,0,192,0,0,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,255,255,255,3,127,0,255,255,255,255,247,255,127,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,254,255,0,252,1,0,0,248,1,0,0,248,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,127,0,48,135,255,255,255,255,255,143,255,0,0,0,0,0,0,224,255,255,7,255,15,0,0,0,0,0,0,255,255,255,255,255,63,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,143,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,255,0,255,1,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,255,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,63,252,255,63,0,0,0,3,0,0,0,0,0,0,254,3,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,7,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,255,255,255,255,127,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,63,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,127,0,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,8,0,0,0,8,0,0,32,0,0,0,32,0,0,128,0,0,0,128,0,0,0,2,0,0,0,2,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,255,255,255,255,255,15,255,255,255,255,255,255,255,255,255,255,255,255,15,0,255,127,254,127,254,255,254,255,0,0,0,0,255,7,255,255,255,127,255,255,255,255,255,255,255,15,255,255,255,255,255,7,0,0,0,0,0,0,0,0,192,255,255,255,7,0,255,255,255,255,255,7,255,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,1,0,191,255,255,255,255,255,255,255,255,31,255,255,15,0,255,255,255,255,223,7,0,0,255,255,1,0,255,255,255,255,255,255,255,127,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,30,255,255,255,255,255,255,255,63,15,0,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,255,255,255,255,255,255,255,225,255,0,0,0,0,0,0,255,255,255,255,255,255,255,255,63,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,114,119,97,0,47,112,114,111,99,47,115,101,108,102,47,102,100,47,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);var tempDoublePtr=STATICTOP;STATICTOP+=16;assert(tempDoublePtr%8==0);Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_pthread_mutex_lock"]=_pthread_mutex_lock;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;else Module.printErr("failed to set errno from JS");return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")})};var TTY={ttys:[],init:(function(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}for(var i=0;i<length;i++){try{stream.tty.ops.put_char(stream.tty,buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})},default_tty_ops:{get_char:(function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var 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){assert(position===0,"canOwn must imply no weird position inside the file");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,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){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];if(this.stack)this.stack=demangleAll(this.stack)};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 ___syscall192(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get(),prot=SYSCALLS.get(),flags=SYSCALLS.get(),fd=SYSCALLS.get(),off=SYSCALLS.get();off<<=12;var ptr;var allocated=false;if(fd===-1){ptr=_malloc(len);if(!ptr)return-ERRNO_CODES.ENOMEM;_memset(ptr,0,len);allocated=true}else{var info=FS.getStream(fd);if(!info)return-ERRNO_CODES.EBADF;var res=FS.mmap(info,HEAPU8,addr,len,off,prot,flags);ptr=res.ptr;allocated=res.allocated}SYSCALLS.mappings[ptr]={malloc:ptr,len:len,allocated:allocated,fd:fd,flags:flags};return ptr}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall194(which,varargs){SYSCALLS.varargs=varargs;try{var fd=SYSCALLS.get(),zero=SYSCALLS.getZero(),length=SYSCALLS.get64();FS.ftruncate(fd,length);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall202(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall199(){return ___syscall202.apply(null,arguments)}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);Module["_llvm_cttz_i32"]=_llvm_cttz_i32;Module["___udivmoddi4"]=___udivmoddi4;Module["___remdi3"]=___remdi3;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function _pthread_mutex_init(){}function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___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)}function ___syscall77(which,varargs){SYSCALLS.varargs=varargs;try{var who=SYSCALLS.get(),usage=SYSCALLS.get();_memset(usage,0,136);HEAP32[usage>>2]=1;HEAP32[usage+4>>2]=2;HEAP32[usage+8>>2]=3;HEAP32[usage+12>>2]=4;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_bitshift64Ashr"]=_bitshift64Ashr;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}var _environ=STATICTOP;STATICTOP+=16;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C";ENV["_"]=Module["thisProgram"];poolPtr=allocate(TOTAL_ENV_SIZE,"i8",ALLOC_STATIC);envPtr=allocate(MAX_ENV_VALUES*4,"i8*",ALLOC_STATIC);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocate(intArrayFromString(ENV[name]),"i8",ALLOC_NORMAL);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}Module["_pthread_mutex_unlock"]=_pthread_mutex_unlock;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall191(which,varargs){SYSCALLS.varargs=varargs;try{var resource=SYSCALLS.get(),rlim=SYSCALLS.get();HEAP32[rlim>>2]=-1;HEAP32[rlim+4>>2]=-1;HEAP32[rlim+8>>2]=-1;HEAP32[rlim+12>>2]=-1;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}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["_bitshift64Shl"]=_bitshift64Shl;Module["_memmove"]=_memmove;Module["___uremdi3"]=___uremdi3;function ___syscall201(){return ___syscall202.apply(null,arguments)}var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};function ___syscall64(which,varargs){SYSCALLS.varargs=varargs;try{return PROCINFO.ppid}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}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 ___syscall63(which,varargs){SYSCALLS.varargs=varargs;try{var old=SYSCALLS.getStreamFromFD(),suggestFD=SYSCALLS.get();if(old.fd===suggestFD)return suggestFD;return SYSCALLS.doDup(old.path,old.flags,suggestFD)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall20(which,varargs){SYSCALLS.varargs=varargs;try{return PROCINFO.pid}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_memset"]=_memset;function ___syscall75(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function _abort(){Module["abort"]()}function _pthread_mutex_destroy(){}Module["___divdi3"]=___divdi3;function ___lock(){}function ___unlock(){}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}Module["_llvm_bswap_i32"]=_llvm_bswap_i32;function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall3(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.read(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall4(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.write(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);Runtime.stackRestore(ret)}Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(Runtime.stackSave());return self.LLVM_SAVEDSTACKS.length-1}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 ___syscall340(which,varargs){SYSCALLS.varargs=varargs;try{var pid=SYSCALLS.get(),resource=SYSCALLS.get(),new_limit=SYSCALLS.get(),old_limit=SYSCALLS.get();if(old_limit){HEAP32[old_limit>>2]=-1;HEAP32[old_limit+4>>2]=-1;HEAP32[old_limit+8>>2]=-1;HEAP32[old_limit+12>>2]=-1}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)}),"%w":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()}),"%W":(function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"}),"%y":(function(date){return(date.tm_year+1900).toString().substring(2)}),"%Y":(function(date){return date.tm_year+1900}),"%z":(function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function ___syscall142(which,varargs){SYSCALLS.varargs=varargs;try{var nfds=SYSCALLS.get(),readfds=SYSCALLS.get(),writefds=SYSCALLS.get(),exceptfds=SYSCALLS.get(),timeout=SYSCALLS.get();assert(nfds<=64,"nfds must be less than or equal to 64");assert(!exceptfds,"exceptfds not supported");var total=0;var srcReadLow=readfds?HEAP32[readfds>>2]:0,srcReadHigh=readfds?HEAP32[readfds+4>>2]:0;var srcWriteLow=writefds?HEAP32[writefds>>2]:0,srcWriteHigh=writefds?HEAP32[writefds+4>>2]:0;var srcExceptLow=exceptfds?HEAP32[exceptfds>>2]:0,srcExceptHigh=exceptfds?HEAP32[exceptfds+4>>2]:0;var dstReadLow=0,dstReadHigh=0;var dstWriteLow=0,dstWriteHigh=0;var dstExceptLow=0,dstExceptHigh=0;var allLow=(readfds?HEAP32[readfds>>2]:0)|(writefds?HEAP32[writefds>>2]:0)|(exceptfds?HEAP32[exceptfds>>2]:0);var allHigh=(readfds?HEAP32[readfds+4>>2]:0)|(writefds?HEAP32[writefds+4>>2]:0)|(exceptfds?HEAP32[exceptfds+4>>2]:0);function check(fd,low,high,val){return fd<32?low&val:high&val}for(var fd=0;fd<nfds;fd++){var mask=1<<fd%32;if(!check(fd,allLow,allHigh,mask)){continue}var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var flags=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){flags=stream.stream_ops.poll(stream)}if(flags&1&&check(fd,srcReadLow,srcReadHigh,mask)){fd<32?dstReadLow=dstReadLow|mask:dstReadHigh=dstReadHigh|mask;total++}if(flags&4&&check(fd,srcWriteLow,srcWriteHigh,mask)){fd<32?dstWriteLow=dstWriteLow|mask:dstWriteHigh=dstWriteHigh|mask;total++}if(flags&2&&check(fd,srcExceptLow,srcExceptHigh,mask)){fd<32?dstExceptLow=dstExceptLow|mask:dstExceptHigh=dstExceptHigh|mask;total++}}if(readfds){HEAP32[readfds>>2]=dstReadLow;HEAP32[readfds+4>>2]=dstReadHigh}if(writefds){HEAP32[writefds>>2]=dstWriteLow;HEAP32[writefds+4>>2]=dstWriteHigh}if(exceptfds){HEAP32[exceptfds>>2]=dstExceptLow;HEAP32[exceptfds+4>>2]=dstExceptHigh}return total}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_pthread_self"]=_pthread_self;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}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");function nullFunc_iiii(x){Module["printErr"]("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_viiiii(x){Module["printErr"]("Invalid function pointer called with signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_vi(x){Module["printErr"]("Invalid function pointer called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_vii(x){Module["printErr"]("Invalid function pointer called with signature 'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_ii(x){Module["printErr"]("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_viii(x){Module["printErr"]("Invalid function pointer called with signature 'viii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_v(x){Module["printErr"]("Invalid function pointer called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_iiiii(x){Module["printErr"]("Invalid function pointer called with signature 'iiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_viiiiii(x){Module["printErr"]("Invalid function pointer called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_iii(x){Module["printErr"]("Invalid function pointer called with signature 'iii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}function nullFunc_viiii(x){Module["printErr"]("Invalid function pointer called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)");Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x)}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_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}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_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,"abortStackOverflow":abortStackOverflow,"nullFunc_iiii":nullFunc_iiii,"nullFunc_viiiii":nullFunc_viiiii,"nullFunc_vi":nullFunc_vi,"nullFunc_vii":nullFunc_vii,"nullFunc_ii":nullFunc_ii,"nullFunc_viii":nullFunc_viii,"nullFunc_v":nullFunc_v,"nullFunc_iiiii":nullFunc_iiiii,"nullFunc_viiiiii":nullFunc_viiiiii,"nullFunc_iii":nullFunc_iii,"nullFunc_viiii":nullFunc_viiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_pthread_mutex_init":_pthread_mutex_init,"___syscall64":___syscall64,"___syscall63":___syscall63,"___syscall6":___syscall6,"___syscall202":___syscall202,"_pthread_cleanup_push":_pthread_cleanup_push,"___syscall20":___syscall20,"_llvm_stackrestore":_llvm_stackrestore,"___assert_fail":___assert_fail,"___buildEnvironment":___buildEnvironment,"__addDays":__addDays,"_localtime_r":_localtime_r,"_tzset":_tzset,"___setErrNo":___setErrNo,"_sbrk":_sbrk,"___syscall192":___syscall192,"___syscall191":___syscall191,"___syscall197":___syscall197,"___syscall195":___syscall195,"___syscall194":___syscall194,"___syscall199":___syscall199,"_sysconf":_sysconf,"_strftime":_strftime,"_clock":_clock,"__arraySum":__arraySum,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall91":___syscall91,"___syscall75":___syscall75,"_pthread_mutex_destroy":_pthread_mutex_destroy,"_llvm_stacksave":_llvm_stacksave,"___syscall77":___syscall77,"_getenv":_getenv,"___syscall33":___syscall33,"___syscall54":___syscall54,"___unlock":___unlock,"__isLeapYear":__isLeapYear,"___syscall10":___syscall10,"___syscall3":___syscall3,"___syscall340":___syscall340,"___lock":___lock,"_abort":_abort,"___syscall5":___syscall5,"___syscall4":___syscall4,"_time":_time,"_gettimeofday":_gettimeofday,"___syscall201":___syscall201,"_atexit":_atexit,"___syscall140":___syscall140,"_localtime":_localtime,"___syscall142":___syscall142,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// 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=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0.0;var C=0;var D=global.Math.floor;var E=global.Math.abs;var F=global.Math.sqrt;var G=global.Math.pow;var H=global.Math.cos;var I=global.Math.sin;var J=global.Math.tan;var K=global.Math.acos;var L=global.Math.asin;var M=global.Math.atan;var N=global.Math.atan2;var O=global.Math.exp;var P=global.Math.log;var Q=global.Math.ceil;var R=global.Math.imul;var S=global.Math.min;var T=global.Math.clz32;var U=env.abort;var V=env.assert;var W=env.abortStackOverflow;var X=env.nullFunc_iiii;var Y=env.nullFunc_viiiii;var Z=env.nullFunc_vi;var _=env.nullFunc_vii;var $=env.nullFunc_ii;var aa=env.nullFunc_viii;var ba=env.nullFunc_v;var ca=env.nullFunc_iiiii;var da=env.nullFunc_viiiiii;var ea=env.nullFunc_iii;var fa=env.nullFunc_viiii;var ga=env.invoke_iiii;var ha=env.invoke_viiiii;var ia=env.invoke_vi;var ja=env.invoke_vii;var ka=env.invoke_ii;var la=env.invoke_viii;var ma=env.invoke_v;var na=env.invoke_iiiii;var oa=env.invoke_viiiiii;var pa=env.invoke_iii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221;var ta=env._pthread_mutex_init;var ua=env.___syscall64;var va=env.___syscall63;var wa=env.___syscall6;var xa=env.___syscall202;var ya=env._pthread_cleanup_push;var za=env.___syscall20;var Aa=env._llvm_stackrestore;var Ba=env.___assert_fail;var Ca=env.___buildEnvironment;var Da=env.__addDays;var Ea=env._localtime_r;var Fa=env._tzset;var Ga=env.___setErrNo;var Ha=env._sbrk;var Ia=env.___syscall192;var Ja=env.___syscall191;var Ka=env.___syscall197;var La=env.___syscall195;var Ma=env.___syscall194;var Na=env.___syscall199;var Oa=env._sysconf;var Pa=env._strftime;var Qa=env._clock;var Ra=env.__arraySum;var Sa=env._emscripten_memcpy_big;var Ta=env.___syscall91;var Ua=env.___syscall75;var Va=env._pthread_mutex_destroy;var Wa=env._llvm_stacksave;var Xa=env.___syscall77;var Ya=env._getenv;var Za=env.___syscall33;var _a=env.___syscall54;var $a=env.___unlock;var ab=env.__isLeapYear;var bb=env.___syscall10;var cb=env.___syscall3;var db=env.___syscall340;var eb=env.___lock;var fb=env._abort;var gb=env.___syscall5;var hb=env.___syscall4;var ib=env._time;var jb=env._gettimeofday;var kb=env.___syscall201;var lb=env._atexit;var mb=env.___syscall140;var nb=env._localtime;var ob=env.___syscall142;var pb=env.___syscall145;var qb=env.___syscall146;var rb=0.0; +// EMSCRIPTEN_START_FUNCS +function Db(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;if((i|0)>=(j|0))W(a|0);return b|0}function Eb(){return i|0}function Fb(a){a=a|0;i=a}function Gb(a,b){a=a|0;b=b|0;i=a;j=b}function Hb(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function Ib(a){a=a|0;C=a}function Jb(){return C|0}function Kb(a){a=a|0;var b=0;b=Qb(32,19090,38)|0;lc(a,b);return b|0}function Lb(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=d+8|0;f=Qb(e,19090,52)|0;Ow(f+8|0,c|0,d|0)|0;d=sv(b)|0;b=f+4|0;a[b>>0]=d;a[b+1>>0]=d>>8;a[b+2>>0]=d>>16;a[b+3>>0]=d>>24;d=sv(e)|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;return f|0}function Mb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;if((Xt(e,g)|0)!=1){h=0;i=f;return h|0}e=g;c[e>>2]=a;c[e+4>>2]=b;c[g+8>>2]=d;d=Qb(24,19090,82)|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[d+16>>2]=c[g+16>>2];c[d+20>>2]=c[g+20>>2];h=d;i=f;return h|0}function Nb(a){a=a|0;var b=0;b=a;C=c[b+4>>2]|0;return c[b>>2]|0}function Ob(a){a=a|0;return c[a+8>>2]|0}function Pb(a){a=a|0;return a+12|0}function Qb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+8|0;h=e;k=e+56|0;l=e+52|0;m=e+48|0;n=e+44|0;o=e+40|0;p=e+36|0;q=e+32|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;if((c[k>>2]|0)>>>0>41943040){c[o>>2]=74;if((c[182]|0)==-1)c[182]=Yb(1,0,19097,19117,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[182]|0))Xb();o=c[m>>2]|0;c[h>>2]=c[l>>2];c[h+4>>2]=o;bc(1,61409,h);Xb()}c[n>>2]=Rb(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[n>>2]|0){i=e;return c[n>>2]|0}c[p>>2]=81;if((c[183]|0)==-1)c[183]=Yb(1,20903,19097,19117,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[183]|0){p=xu(c[(fu()|0)>>2]|0)|0;c[g>>2]=19133;c[g+4>>2]=19097;c[g+8>>2]=81;c[g+12>>2]=p;gc(1,20903,20454,g)}}else ac(-1,0);c[q>>2]=82;if((c[184]|0)==-1)c[184]=Yb(1,0,19097,19117,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[184]|0))Xb();c[f>>2]=19097;c[f+4>>2]=82;bc(1,61409,f);Xb();return 0}function Rb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e;c[g>>2]=a;c[e+8>>2]=b;c[e+4>>2]=d;c[h>>2]=yw(c[g>>2]|0)|0;if(!(c[h>>2]|0)){c[f>>2]=0;k=c[f>>2]|0;i=e;return k|0}else{Sw(c[h>>2]|0,0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];k=c[f>>2]|0;i=e;return k|0}return 0}function Sb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(c[g>>2]|0){zw(c[g>>2]|0);i=e;return}c[l>>2]=237;if((c[185]|0)==-1)c[185]=Yb(1,0,19097,19140,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[185]|0))Xb();l=c[k>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=l;bc(1,61409,f);Xb()}function Tb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(c[g>>2]|0){c[m>>2]=(Tu(c[g>>2]|0)|0)+1;c[l>>2]=Qb(c[m>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;Ow(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;i=e;return c[l>>2]|0}c[n>>2]=278;if((c[186]|0)==-1)c[186]=Yb(1,0,19097,19154,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[186]|0))Xb();n=c[k>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;bc(1,61409,f);Xb();return 0}function Ub(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f;h=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+16|0;o=f+8|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[n>>2]=e;c[m>>2]=Du(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[m>>2]|0)>>>0<(c[k>>2]|0)>>>0){i=f;return c[m>>2]|0}c[o>>2]=433;if((c[187]|0)==-1)c[187]=Yb(1,0,19097,19170,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[187]|0))Xb();c[g>>2]=19097;c[g+4>>2]=433;bc(1,61409,g);Xb();return 0}function Vb(){c[17592]=c[3960];return}function Wb(){return}function Xb(){fb()}function Yb(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if(!(c[l>>2]|0))c[l>>2]=c[17593];if((c[17594]|0)>=0&0==(c[17595]|0)){c[h>>2]=(c[k>>2]|0)<=(c[17594]|0)&1;s=c[h>>2]|0;i=g;return s|0}c[r>>2]=(c[17594]|0)>=0&1;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[17596]|0))break;c[p>>2]=(c[17597]|0)+((c[q>>2]|0)*112|0);if(!(c[r>>2]|0?!(c[(c[p>>2]|0)+108>>2]|0):0))t=9;if((((((t|0)==9?(t=0,(c[o>>2]|0)>=(c[(c[p>>2]|0)+96>>2]|0)):0)?(c[o>>2]|0)<=(c[(c[p>>2]|0)+100>>2]|0):0)?0==(uw(c[p>>2]|0,c[l>>2]|0,0,0,0)|0):0)?0==(uw((c[p>>2]|0)+32|0,c[m>>2]|0,0,0,0)|0):0)?0==(uw((c[p>>2]|0)+64|0,c[n>>2]|0,0,0,0)|0):0){t=14;break}c[q>>2]=(c[q>>2]|0)+1}if((t|0)==14){c[h>>2]=(c[k>>2]|0)<=(c[(c[p>>2]|0)+104>>2]|0)&1;s=c[h>>2]|0;i=g;return s|0}p=c[k>>2]|0;if((c[17594]|0)>=0){c[h>>2]=(p|0)<=(c[17594]|0)&1;s=c[h>>2]|0;i=g;return s|0}else{c[h>>2]=(p|0)<=2&1;s=c[h>>2]|0;i=g;return s|0}return 0}function Zb(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=i;i=i+4176|0;if((i|0)>=(j|0))U();e=d+24|0;f=d+16|0;g=d;h=d+72|0;k=d+68|0;l=d+76|0;m=d+64|0;n=d+60|0;o=d+56|0;p=d+52|0;q=d+48|0;r=d+44|0;c[k>>2]=b;if(!(c[17599]|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}if(!(Pa(l|0,4097,c[17599]|0,c[k>>2]|0)|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}c[p>>2]=ow(l,91)|0;if(0!=(c[p>>2]|0)?93==(a[(c[p>>2]|0)+1>>0]|0):0){c[q>>2]=Tb(l,19216,344)|0;a[(c[q>>2]|0)+((c[p>>2]|0)-l)>>0]=0;a[(c[q>>2]|0)+((c[p>>2]|0)-l+1)>>0]=0;k=c[q>>2]|0;b=Kv()|0;t=(c[q>>2]|0)+((c[p>>2]|0)-l+2)|0;c[g>>2]=k;c[g+4>>2]=b;c[g+8>>2]=t;Cu(l,4096,19239,g)|0;Sb(c[q>>2]|0,19216,354)}if(!(pu(l,71474)|0)){c[h>>2]=1;s=c[h>>2]|0;i=d;return s|0}_b(71474);dv(71474,l)|0;c[f>>2]=420;c[m>>2]=Sv(l,1089,f)|0;do if(-1!=(c[m>>2]|0)){if(c[17592]|0)Ev(c[17592]|0)|0;c[n>>2]=cw(c[m>>2]|0,2)|0;uv(c[m>>2]|0)|0;if(-1==(c[n>>2]|0)){c[m>>2]=-1;break}c[o>>2]=Dv(2,19246)|0;if(!(c[o>>2]|0)){uv(2)|0;c[m>>2]=-1}}while(0);if(-1!=(c[m>>2]|0)){c[17592]=c[o>>2];c[h>>2]=1;s=c[h>>2]|0;i=d;return s|0}c[r>>2]=392;if((c[188]|0)==-1)c[188]=Yb(1,0,19216,19249,c[r>>2]|0)|0;if(($b()|0)<=0){if(c[188]|0){r=xu(c[(fu()|0)>>2]|0)|0;c[e>>2]=38361;c[e+4>>2]=l;c[e+8>>2]=19216;c[e+12>>2]=392;c[e+16>>2]=r;bc(1,19392,e)}}else ac(-1,0);c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}function _b(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=b;if(!(a[c[e>>2]>>0]|0)){i=d;return}c[f>>2]=c[70404+((((c[17600]|0)>>>0)%3|0)<<2)>>2];if(c[f>>2]|0){Tv(c[f>>2]|0)|0;Sb(c[f>>2]|0,19216,314)}f=Tb(c[e>>2]|0,19216,316)|0;c[70404+((((c[17600]|0)>>>0)%3|0)<<2)>>2]=f;c[17600]=(c[17600]|0)+1;i=d;return}function $b(){return c[17604]|0}function ac(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+20|0;g=d+16|0;h=d+12|0;k=d+8|0;c[f>>2]=a;c[g>>2]=b;if(c[f>>2]|0){c[17604]=(c[17604]|0)+(c[f>>2]|0);i=d;return}c[h>>2]=0==(c[17604]|0)&1;c[17604]=0;if((c[g>>2]|0)==0|(c[h>>2]|0)!=0){i=d;return}c[k>>2]=867;if((c[189]|0)==-1)c[189]=Yb(1,0,19216,19264,c[k>>2]|0)|0;if(($b()|0)>0){ac(-1,0);i=d;return}if(!(c[189]|0)){i=d;return}c[e>>2]=19216;c[e+4>>2]=867;bc(1,61409,e);i=d;return}function bc(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+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;cc(c[f>>2]|0,c[17598]|0,c[g>>2]|0,h);i=e;return}function cc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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,D=0,E=0;g=i;i=i+240|0;if((i|0)>=(j|0))U();h=g+40|0;k=g+32|0;l=g+24|0;m=g+108|0;n=g+104|0;o=g+100|0;p=g+96|0;q=g+176|0;r=g+112|0;s=g+92|0;t=g+88|0;u=g+72|0;v=g+68|0;w=g+64|0;x=g+16|0;y=g+56|0;z=g+8|0;A=g+48|0;B=g;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[u>>2]=c[c[p>>2]>>2];c[t>>2]=(Du(0,0,c[o>>2]|0,u)|0)+1;if(!(c[t>>2]|0)){c[v>>2]=910;if((c[190]|0)==-1)c[190]=Yb(1,0,19216,19280,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[190]|0))Xb();c[l>>2]=19216;c[l+4>>2]=910;bc(1,61409,l);Xb()}l=q;v=l+64|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(v|0));l=c[t>>2]|0;c[w>>2]=Wa()|0;v=i;i=i+((1*l|0)+15&-16)|0;if((i|0)>=(j|0))U();jb(y|0,0)|0;l=ld()|0;u=x;c[u>>2]=l;c[u+4>>2]=C;u=x;l=c[u+4>>2]|0;f=(l|0)>0|(l|0)==0&(c[u>>2]|0)>>>0>0;u=x;l=Tw(c[u>>2]|0,c[u+4>>2]|0,1e3,0)|0;u=c[y>>2]|0;e=Gw(u|0,((u|0)<0)<<31>>31|0,l|0,C|0)|0;c[y>>2]=e;do if(f){e=x;l=Kw(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0;e=Xw(l|0,C|0,1e3,0)|0;l=y+4|0;u=c[l>>2]|0;d=Gw(u|0,((u|0)<0)<<31>>31|0,e|0,C|0)|0;c[l>>2]=d;d=c[y+4>>2]|0;l=((d|0)<0)<<31>>31;if((l|0)>0|(l|0)==0&d>>>0>1e6){d=y+4|0;l=c[d>>2]|0;e=Fw(l|0,((l|0)<0)<<31>>31|0,1e6,0)|0;c[d>>2]=e;c[y>>2]=(c[y>>2]|0)+1}}else{e=c[y+4>>2]|0;d=((e|0)<0)<<31>>31;l=x;u=Kw(c[l>>2]|0,c[l+4>>2]|0,1e3,0)|0;l=Fw(0,0,u|0,C|0)|0;u=Xw(l|0,C|0,1e3,0)|0;l=C;b=x;D=Kw(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=Xw(D|0,C|0,1e3,0)|0;D=C;if((d|0)>(l|0)|(d|0)==(l|0)&e>>>0>u>>>0){u=y+4|0;e=c[u>>2]|0;l=Gw(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;c[u>>2]=l;break}else{l=Gw(1e6,0,b|0,D|0)|0;D=y+4|0;b=c[D>>2]|0;u=Gw(b|0,((b|0)<0)<<31>>31|0,l|0,C|0)|0;c[D>>2]=u;c[y>>2]=(c[y>>2]|0)+-1;break}}while(0);c[s>>2]=nb(y|0)|0;if(!(c[s>>2]|0))dv(q,19286)|0;else{Pa(r|0,64,19302,c[s>>2]|0)|0;c[k>>2]=c[y+4>>2];Cu(q,64,r,k)|0}Du(v,c[t>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[s>>2]|0)Zb(c[s>>2]|0)|0;s=70336;if(0!=(c[m>>2]&32|0)&(0!=(c[s>>2]|0)?1:0!=(c[s+4>>2]|0))?0==(rv(v,75571,256)|0):0){c[17605]=(c[17605]|0)+1;c[h>>2]=c[17584];c[h+4>>2]=c[17585];s=pd(h)|0;h=z;c[h>>2]=s;c[h+4>>2]=C;h=z;z=c[h+4>>2]|0;if(z>>>0>10|(z|0)==10&(c[h>>2]|0)>>>0>250327040|(c[17605]|0)>>>0>1e3)dc(q);c[A>>2]=1;E=c[w>>2]|0;Aa(E|0);i=g;return}dc(q);xv(75571,v,256)|0;c[17605]=0;c[17606]=c[m>>2];h=nd()|0;z=B;c[z>>2]=h;c[z+4>>2]=C;c[17584]=c[B>>2];c[17585]=c[B+4>>2];xv(75827,c[n>>2]|0,32)|0;ec(c[m>>2]|0,c[n>>2]|0,q,v);c[A>>2]=0;E=c[w>>2]|0;Aa(E|0);i=g;return}function dc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+640|0;if((i|0)>=(j|0))U();e=d+32|0;f=d+16|0;g=d+52|0;h=d+56|0;k=d+48|0;l=d+44|0;m=d+40|0;n=d+8|0;o=d;c[g>>2]=b;b=70336;if((0==(c[b>>2]|0)?0==(c[b+4>>2]|0):0)|0==(c[17605]|0)){i=d;return}c[k>>2]=0;c[l>>2]=Lu(75571,0,256)|0;if(c[l>>2]|0){if((c[l>>2]|0)!=75571)c[l>>2]=(c[l>>2]|0)+-1}else c[l>>2]=75826;if((a[c[l>>2]>>0]|0)==10){c[k>>2]=1;a[c[l>>2]>>0]=0};c[e>>2]=c[17584];c[e+4>>2]=c[17585];b=pd(e)|0;p=n;c[p>>2]=b;c[p+4>>2]=C;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[m>>2]=gd(e,1)|0;e=c[17605]|0;n=c[m>>2]|0;c[f>>2]=256;c[f+4>>2]=75571;c[f+8>>2]=e;c[f+12>>2]=n;Cu(h,576,19323,f)|0;if((c[k>>2]|0)==1)a[c[l>>2]>>0]=10;ec(c[17606]|0,75827,c[g>>2]|0,h);h=nd()|0;g=o;c[g>>2]=h;c[g+4>>2]=C;c[17584]=c[o>>2];c[17585]=c[o+4>>2];c[17605]=0;i=d;return}function ec(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if(0!=(c[17592]|0)&0==(c[17607]|0)){e=c[17592]|0;d=c[l>>2]|0;b=c[k>>2]|0;a=fc(c[h>>2]|0)|0;o=c[m>>2]|0;c[g>>2]=d;c[g+4>>2]=b;c[g+8>>2]=a;c[g+12>>2]=o;pv(e,19380,g)|0;Fv(c[17592]|0)|0}c[n>>2]=c[17607];while(1){if(!(c[n>>2]|0))break;tb[c[(c[n>>2]|0)+4>>2]&15](c[(c[n>>2]|0)+8>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);c[n>>2]=c[c[n>>2]>>2]}i=f;return}function fc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;do if((c[e>>2]&1|0)<=0){if((c[e>>2]&2|0)>0){c[d>>2]=19197;break}if((c[e>>2]&4|0)>0){c[d>>2]=19192;break}if((c[e>>2]&8|0)>0){c[d>>2]=19186;break}if(!(c[e>>2]&-33)){c[d>>2]=19211;break}else{c[d>>2]=19372;break}}else c[d>>2]=19205;while(0);i=b;return c[d>>2]|0}function gc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+176|0;if((i|0)>=(j|0))U();g=f;h=f+32|0;k=f+28|0;l=f+24|0;m=f+8|0;n=f+40|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;if(!(c[k>>2]|0))c[k>>2]=c[17593];c[m>>2]=e;e=c[k>>2]|0;k=Kv()|0;c[g>>2]=e;c[g+4>>2]=k;Ub(n,128,19233,g)|0;cc(c[h>>2]|0,n,c[l>>2]|0,m);i=f;return}function hc(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g+8|0;k=g;l=g+56|0;m=g+52|0;n=g+48|0;o=g+44|0;p=g+40|0;q=g+36|0;r=g+32|0;s=g+28|0;t=g+24|0;u=g+20|0;v=g+16|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;f=c[n>>2]|0;c[s>>2]=Wa()|0;e=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))U();if(1!=(ic(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}if(de(c[r>>2]|0,e,c[n>>2]|0,c[m>>2]|0,c[n>>2]|0)|0){c[u>>2]=136;if((c[194]|0)==-1)c[194]=Yb(1,0,19442,19478,c[u>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[194]|0))Xb();c[k>>2]=19442;c[k+4>>2]=136;bc(1,61409,k);Xb()}_d(c[r>>2]|0);if(1!=(jc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}if(!(de(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){_d(c[r>>2]|0);Sw(e|0,0,f|0)|0;c[l>>2]=c[n>>2];c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}c[v>>2]=140;if((c[198]|0)==-1)c[198]=Yb(1,0,19442,19478,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[198]|0))Xb();c[h>>2]=19442;c[h+4>>2]=140;bc(1,61409,h);Xb();return 0}function ic(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+8|0;h=e;k=e+48|0;l=e+44|0;m=e+40|0;n=e+36|0;o=e+32|0;p=e+28|0;q=e+24|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;if(Zd(c[k>>2]|0,9,2,0)|0){c[o>>2]=68;if((c[191]|0)==-1)c[191]=Yb(1,0,19442,19461,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[191]|0))Xb();c[h>>2]=19442;c[h+4>>2]=68;bc(1,61409,h);Xb()}c[n>>2]=$d(c[c[k>>2]>>2]|0,c[l>>2]|0,32)|0;if(0!=(c[n>>2]|0)?((c[n>>2]&255)<<24>>24|0)!=43:0){c[p>>2]=72;if((c[192]|0)==-1)c[192]=Yb(1,0,19442,19461,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[192]|0))Xb();c[g>>2]=19442;c[g+4>>2]=72;bc(1,61409,g);Xb()}c[n>>2]=ce(c[c[k>>2]>>2]|0,c[m>>2]|0,16)|0;if(!(c[n>>2]|0)){i=e;return 1}if(((c[n>>2]&255)<<24>>24|0)==43){i=e;return 1}c[q>>2]=76;if((c[193]|0)==-1)c[193]=Yb(1,0,19442,19461,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[193]|0))Xb();c[f>>2]=19442;c[f+4>>2]=76;bc(1,61409,f);Xb();return 0}function jc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+8|0;h=e;k=e+48|0;l=e+44|0;m=e+40|0;n=e+36|0;o=e+32|0;p=e+28|0;q=e+24|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;if(Zd(c[k>>2]|0,10,2,0)|0){c[o>>2]=98;if((c[195]|0)==-1)c[195]=Yb(1,0,19442,19510,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[195]|0))Xb();c[h>>2]=19442;c[h+4>>2]=98;bc(1,61409,h);Xb()}c[n>>2]=$d(c[c[k>>2]>>2]|0,(c[l>>2]|0)+32|0,32)|0;if(0!=(c[n>>2]|0)?((c[n>>2]&255)<<24>>24|0)!=43:0){c[p>>2]=102;if((c[196]|0)==-1)c[196]=Yb(1,0,19442,19510,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[196]|0))Xb();c[g>>2]=19442;c[g+4>>2]=102;bc(1,61409,g);Xb()}c[n>>2]=ce(c[c[k>>2]>>2]|0,(c[m>>2]|0)+16|0,16)|0;if(!(c[n>>2]|0)){i=e;return 1}if(((c[n>>2]&255)<<24>>24|0)==43){i=e;return 1}c[q>>2]=106;if((c[197]|0)==-1)c[197]=Yb(1,0,19442,19510,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[197]|0))Xb();c[f>>2]=19442;c[f+4>>2]=106;bc(1,61409,f);Xb();return 0}function kc(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g+8|0;k=g;l=g+56|0;m=g+52|0;n=g+48|0;o=g+44|0;p=g+40|0;q=g+36|0;r=g+32|0;s=g+28|0;t=g+24|0;u=g+20|0;v=g+16|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;f=c[n>>2]|0;c[s>>2]=Wa()|0;e=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))U();if(1!=(jc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}if(ee(c[r>>2]|0,e,c[n>>2]|0,c[m>>2]|0,c[n>>2]|0)|0){c[u>>2]=171;if((c[199]|0)==-1)c[199]=Yb(1,0,19442,19531,c[u>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[199]|0))Xb();c[k>>2]=19442;c[k+4>>2]=171;bc(1,61409,k);Xb()}_d(c[r>>2]|0);if(1!=(ic(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}if(!(ee(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){_d(c[r>>2]|0);Sw(e|0,0,f|0)|0;c[l>>2]=c[n>>2];c[t>>2]=1;w=c[s>>2]|0;Aa(w|0);x=c[l>>2]|0;i=g;return x|0}c[v>>2]=175;if((c[200]|0)==-1)c[200]=Yb(1,0,19442,19531,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[200]|0))Xb();c[h>>2]=19442;c[h+4>>2]=175;bc(1,61409,h);Xb();return 0}function lc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+64|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d;h=d+52|0;k=d+48|0;l=d+44|0;m=d+40|0;n=d+36|0;o=d+32|0;p=d+28|0;q=d+24|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=mc(c[h>>2]|0)|0;if(!(c[l>>2]|0)){c[o>>2]=257;if((c[203]|0)==-1)c[203]=Yb(1,0,19605,19722,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[203]|0))Xb();c[g>>2]=19605;c[g+4>>2]=257;bc(1,61409,g);Xb()}if(Pd(m,c[l>>2]|0,0)|0){c[p>>2]=258;if((c[204]|0)==-1)c[204]=Yb(1,0,19605,19722,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[204]|0))Xb();c[f>>2]=19605;c[f+4>>2]=258;bc(1,61409,f);Xb()}Ad(c[l>>2]|0);c[n>>2]=Qd(19634,c[m>>2]|0,0)|0;if(c[n>>2]|0){Fc(c[k>>2]|0,32,c[n>>2]|0);Gd(c[n>>2]|0);ue(c[m>>2]|0);i=d;return}c[q>>2]=261;if((c[205]|0)==-1)c[205]=Yb(1,0,19605,19722,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[205]|0))Xb();c[e>>2]=19605;c[e+4>>2]=261;bc(1,61409,e);Xb()}function mc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+64|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+8|0;f=b;g=b+48|0;h=b+44|0;k=b+40|0;l=b+36|0;m=b+32|0;c[g>>2]=a;a=c[g>>2]|0;c[f>>2]=32;c[f+4>>2]=a;c[k>>2]=zd(h,0,19642,f)|0;if(!(c[k>>2]|0)){i=b;return c[h>>2]|0}c[l>>2]=169;if((c[201]|0)==-1)c[201]=Yb(1,20903,19605,19697,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[201]|0){l=sd(c[k>>2]|0)|0;c[e>>2]=19618;c[e+4>>2]=19605;c[e+8>>2]=169;c[e+12>>2]=l;gc(1,20903,20454,e)}}else ac(-1,0);c[m>>2]=170;if((c[202]|0)==-1)c[202]=Yb(1,0,19605,19697,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[202]|0))Xb();c[d>>2]=19605;c[d+4>>2]=170;bc(1,61409,d);Xb();return 0}function nc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+64|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d;h=d+52|0;k=d+48|0;l=d+44|0;m=d+40|0;n=d+36|0;o=d+32|0;p=d+28|0;q=d+24|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=oc(c[h>>2]|0)|0;if(!(c[l>>2]|0)){c[o>>2]=283;if((c[208]|0)==-1)c[208]=Yb(1,0,19605,19782,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[208]|0))Xb();c[g>>2]=19605;c[g+4>>2]=283;bc(1,61409,g);Xb()}if(Pd(m,c[l>>2]|0,0)|0){c[p>>2]=284;if((c[209]|0)==-1)c[209]=Yb(1,0,19605,19782,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[209]|0))Xb();c[f>>2]=19605;c[f+4>>2]=284;bc(1,61409,f);Xb()}Ad(c[l>>2]|0);c[n>>2]=Qd(19634,c[m>>2]|0,0)|0;if(c[n>>2]|0){Fc(c[k>>2]|0,32,c[n>>2]|0);Gd(c[n>>2]|0);ue(c[m>>2]|0);i=d;return}c[q>>2]=287;if((c[210]|0)==-1)c[210]=Yb(1,0,19605,19782,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[210]|0))Xb();c[e>>2]=19605;c[e+4>>2]=287;bc(1,61409,e);Xb()}function oc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+64|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+8|0;f=b;g=b+48|0;h=b+44|0;k=b+40|0;l=b+36|0;m=b+32|0;c[g>>2]=a;a=c[g>>2]|0;c[f>>2]=32;c[f+4>>2]=a;c[k>>2]=zd(h,0,19563,f)|0;if(!(c[k>>2]|0)){i=b;return c[h>>2]|0}c[l>>2]=202;if((c[206]|0)==-1)c[206]=Yb(1,20903,19605,19757,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[206]|0){l=sd(c[k>>2]|0)|0;c[e>>2]=19618;c[e+4>>2]=19605;c[e+8>>2]=202;c[e+12>>2]=l;gc(1,20903,20454,e)}}else ac(-1,0);c[m>>2]=203;if((c[207]|0)==-1)c[207]=Yb(1,0,19605,19757,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[207]|0))Xb();c[d>>2]=19605;c[d+4>>2]=203;bc(1,61409,d);Xb();return 0}function pc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=i;i=i+96|0;if((i|0)>=(j|0))U();b=a+40|0;d=a+24|0;e=a+8|0;f=a+88|0;g=a+84|0;h=a+80|0;k=a+76|0;l=a+72|0;m=a+68|0;n=a+64|0;o=a+60|0;p=a+56|0;q=zd(k,0,19817,a)|0;c[m>>2]=q;if(q){c[n>>2]=505;if((c[211]|0)==-1)c[211]=Yb(1,20903,19605,19872,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[211]|0){n=sd(c[m>>2]|0)|0;c[e>>2]=19618;c[e+4>>2]=19605;c[e+8>>2]=505;c[e+12>>2]=n;gc(1,20903,20454,e)}}else ac(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=ie(h,c[k>>2]|0)|0;c[m>>2]=e;if(e){c[o>>2]=510;if((c[212]|0)==-1)c[212]=Yb(1,20903,19605,19872,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[212]|0){o=sd(c[m>>2]|0)|0;c[d>>2]=19903;c[d+4>>2]=19605;c[d+8>>2]=510;c[d+12>>2]=o;gc(1,20903,20454,d)}}else ac(-1,0);Ad(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}Ad(c[k>>2]|0);k=qc(l,c[h>>2]|0,37752,35402)|0;c[m>>2]=k;if(!k){Ad(c[h>>2]|0);c[g>>2]=Qb(32,19605,530)|0;Fc(c[g>>2]|0,32,c[l>>2]|0);Gd(c[l>>2]|0);c[f>>2]=c[g>>2];r=c[f>>2]|0;i=a;return r|0}c[p>>2]=525;if((c[213]|0)==-1)c[213]=Yb(1,20903,19605,19872,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[213]|0){p=sd(c[m>>2]|0)|0;c[b>>2]=19918;c[b+4>>2]=19605;c[b+8>>2]=525;c[b+12>>2]=p;gc(1,20903,20454,b)}}else ac(-1,0);Ad(c[h>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}function qc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=Cd(c[l>>2]|0,c[m>>2]|0,0)|0;if(!(c[o>>2]|0)){c[h>>2]=1;t=c[h>>2]|0;i=g;return t|0}c[p>>2]=Dd(c[o>>2]|0)|0;Ad(c[o>>2]|0);c[o>>2]=c[p>>2];if(!(c[o>>2]|0)){c[h>>2]=2;t=c[h>>2]|0;i=g;return t|0}c[s>>2]=0;c[q>>2]=c[n>>2];while(1){u=c[o>>2]|0;if(!(a[c[q>>2]>>0]|0)){v=18;break}c[p>>2]=Cd(u,c[q>>2]|0,1)|0;if(!(c[p>>2]|0)){v=8;break}n=Ed(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;Ad(c[p>>2]|0);if(!(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0)){v=13;break}c[q>>2]=(c[q>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}if((v|0)==8){c[r>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;we(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=0;c[r>>2]=(c[r>>2]|0)+1}Ad(c[o>>2]|0);c[h>>2]=3;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==13){c[r>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;we(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=0;c[r>>2]=(c[r>>2]|0)+1}Ad(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){Ad(u);c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}return 0}function rc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=i;i=i+96|0;if((i|0)>=(j|0))U();b=a+40|0;d=a+24|0;e=a+8|0;f=a+88|0;g=a+84|0;h=a+80|0;k=a+76|0;l=a+72|0;m=a+68|0;n=a+64|0;o=a+60|0;p=a+56|0;q=zd(k,0,19932,a)|0;c[m>>2]=q;if(q){c[n>>2]=604;if((c[214]|0)==-1)c[214]=Yb(1,20903,19605,19976,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[214]|0){n=sd(c[m>>2]|0)|0;c[e>>2]=19618;c[e+4>>2]=19605;c[e+8>>2]=604;c[e+12>>2]=n;gc(1,20903,20454,e)}}else ac(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=ie(h,c[k>>2]|0)|0;c[m>>2]=e;if(e){c[o>>2]=609;if((c[215]|0)==-1)c[215]=Yb(1,20903,19605,19976,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[215]|0){o=sd(c[m>>2]|0)|0;c[d>>2]=19903;c[d+4>>2]=19605;c[d+8>>2]=609;c[d+12>>2]=o;gc(1,20903,20454,d)}}else ac(-1,0);Ad(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}Ad(c[k>>2]|0);k=qc(l,c[h>>2]|0,37752,35402)|0;c[m>>2]=k;if(!k){Ad(c[h>>2]|0);c[g>>2]=Qb(32,19605,629)|0;Fc(c[g>>2]|0,32,c[l>>2]|0);Gd(c[l>>2]|0);c[f>>2]=c[g>>2];r=c[f>>2]|0;i=a;return r|0}c[p>>2]=624;if((c[216]|0)==-1)c[216]=Yb(1,20903,19605,19976,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[216]|0){p=sd(c[m>>2]|0)|0;c[b>>2]=19918;c[b+4>>2]=19605;c[b+8>>2]=624;c[b+12>>2]=p;gc(1,20903,20454,b)}}else ac(-1,0);Ad(c[h>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}function sc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+16|0;g=e;h=e+68|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+52|0;o=e+48|0;p=e+44|0;q=e+40|0;r=e+32|0;s=e+28|0;t=e+24|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=mc(c[k>>2]|0)|0;c[p>>2]=tc(c[l>>2]|0)|0;l=fe(o,c[p>>2]|0,c[n>>2]|0)|0;c[q>>2]=l;if(l){c[s>>2]=807;if((c[218]|0)==-1)c[218]=Yb(2,20903,19605,20071,c[s>>2]|0)|0;if(($b()|0)<=0){if(c[218]|0){s=sd(c[q>>2]|0)|0;c[g>>2]=19605;c[g+4>>2]=807;c[g+8>>2]=s;gc(2,20903,20096,g)}}else ac(-1,0);Ad(c[p>>2]|0);Ad(c[n>>2]|0);c[h>>2]=-1;u=c[h>>2]|0;i=e;return u|0}Ad(c[n>>2]|0);Ad(c[p>>2]|0);p=qc(r,c[o>>2]|0,37614,46975)|0;c[q>>2]=p;if(!p){Ad(c[o>>2]|0);Fc(c[m>>2]|0,32,c[r>>2]|0);Fc((c[m>>2]|0)+32|0,32,c[r+4>>2]|0);Gd(c[r>>2]|0);Gd(c[r+4>>2]|0);c[h>>2]=1;u=c[h>>2]|0;i=e;return u|0}c[t>>2]=819;if((c[219]|0)==-1)c[219]=Yb(1,0,19605,20071,c[t>>2]|0)|0;if(($b()|0)<=0){if(c[219]|0){c[f>>2]=19605;c[f+4>>2]=819;bc(1,61409,f)}}else ac(-1,0);Ad(c[o>>2]|0);c[h>>2]=-1;u=c[h>>2]|0;i=e;return u|0}function tc(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+128|0;if((i|0)>=(j|0))U();e=b+16|0;f=b;g=b+116|0;h=b+112|0;k=b+48|0;l=b+40|0;m=b+36|0;n=b+32|0;c[h>>2]=a;a=c[h>>2]|0;o=c[h>>2]|0;wc(a,wv(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0,k);c[f>>2]=37672;c[f+4>>2]=64;c[f+8>>2]=k;k=zd(l,0,20007,f)|0;c[m>>2]=k;if(!k){c[g>>2]=c[l>>2];p=c[g>>2]|0;i=b;return p|0}c[n>>2]=698;if((c[217]|0)==-1)c[217]=Yb(1,20903,19605,20051,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[217]|0){n=sd(c[m>>2]|0)|0;c[e>>2]=19618;c[e+4>>2]=19605;c[e+8>>2]=698;c[e+12>>2]=n;gc(1,20903,20454,e)}}else ac(-1,0);c[g>>2]=0;p=c[g>>2]|0;i=b;return p|0}function uc(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+96|0;if((i|0)>=(j|0))U();h=g+40|0;k=g+32|0;l=g+16|0;m=g;n=g+92|0;o=g+88|0;p=g+84|0;q=g+80|0;r=g+76|0;s=g+72|0;t=g+68|0;u=g+64|0;v=g+60|0;w=g+56|0;x=g+52|0;c[o>>2]=a;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;f=c[o>>2]|0;o=(c[p>>2]|0)+4|0;if((f|0)!=(wv(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0)){c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}o=c[q>>2]|0;f=(c[q>>2]|0)+32|0;c[m>>2]=32;c[m+4>>2]=o;c[m+8>>2]=32;c[m+12>>2]=f;f=zd(t,0,20170,m)|0;c[v>>2]=f;if(f){c[w>>2]=918;if((c[220]|0)==-1)c[220]=Yb(1,20903,19605,20199,c[w>>2]|0)|0;if(($b()|0)<=0){if(c[220]|0){w=sd(c[v>>2]|0)|0;c[l>>2]=19618;c[l+4>>2]=19605;c[l+8>>2]=918;c[l+12>>2]=w;gc(1,20903,20454,l)}}else ac(-1,0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}c[s>>2]=tc(c[p>>2]|0)|0;p=c[r>>2]|0;c[k>>2]=32;c[k+4>>2]=p;p=zd(u,0,20226,k)|0;c[v>>2]=p;if(p){Ad(c[s>>2]|0);Ad(c[t>>2]|0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}c[v>>2]=ge(c[t>>2]|0,c[s>>2]|0,c[u>>2]|0)|0;Ad(c[u>>2]|0);Ad(c[s>>2]|0);Ad(c[t>>2]|0);if(!(c[v>>2]|0)){c[n>>2]=1;y=c[n>>2]|0;i=g;return y|0}c[x>>2]=938;if((c[221]|0)==-1)c[221]=Yb(4,20903,19605,20199,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[221]|0){x=sd(c[v>>2]|0)|0;c[h>>2]=19605;c[h+4>>2]=938;c[h+8>>2]=x;gc(4,20903,20278,h)}}else ac(-1,0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}function vc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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=i;i=i+144|0;if((i|0)>=(j|0))U();f=e+40|0;g=e+32|0;h=e+16|0;k=e+8|0;l=e;m=e+104|0;n=e+100|0;o=e+96|0;p=e+92|0;q=e+88|0;r=e+84|0;s=e+80|0;t=e+76|0;u=e+72|0;v=e+68|0;w=e+112|0;x=e+64|0;y=e+60|0;z=e+56|0;A=e+52|0;B=e+48|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;d=c[o>>2]|0;c[l>>2]=32;c[l+4>>2]=d;if(zd(u,0,20131,l)|0){c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}if(Pd(t,c[u>>2]|0,0)|0){c[y>>2]=972;if((c[222]|0)==-1)c[222]=Yb(1,0,19605,20328,c[y>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[222]|0))Xb();c[k>>2]=19605;c[k+4>>2]=972;bc(1,61409,k);Xb()}Ad(c[u>>2]|0);c[r>>2]=Rd(49689,c[t>>2]|0,0)|0;Hc(s,c[n>>2]|0,32);c[q>>2]=Nd(0)|0;Td(c[q>>2]|0,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);Od(c[r>>2]|0);Gd(c[s>>2]|0);c[v>>2]=Fd(256)|0;if(Sd(c[v>>2]|0,0,c[q>>2]|0,c[t>>2]|0)|0){c[z>>2]=989;if((c[223]|0)==-1)c[223]=Yb(1,20903,19605,20328,c[z>>2]|0)|0;if(($b()|0)<=0){if(c[223]|0){z=sd(0)|0;c[h>>2]=20351;c[h+4>>2]=19605;c[h+8>>2]=989;c[h+12>>2]=z;gc(1,20903,20454,h)}}else ac(-1,0);Od(c[q>>2]|0);ue(c[t>>2]|0);c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}Od(c[q>>2]|0);ue(c[t>>2]|0);c[x>>2]=32;if(Yd(c[v>>2]|0,2)|0){c[A>>2]=998;if((c[224]|0)==-1)c[224]=Yb(1,0,19605,20328,c[A>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[224]|0))Xb();c[g>>2]=19605;c[g+4>>2]=998;bc(1,61409,g);Xb()}if(!(Jd(1,w,c[x>>2]|0,x,c[v>>2]|0)|0)){wc(w,c[x>>2]|0,c[p>>2]|0);Gd(c[v>>2]|0);c[m>>2]=1;C=c[m>>2]|0;i=e;return C|0}c[B>>2]=1005;if((c[225]|0)==-1)c[225]=Yb(1,0,19605,20328,c[B>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[225]|0))Xb();c[f>>2]=19605;c[f+4>>2]=1005;bc(1,61409,f);Xb();return 0}function wc(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;oe(10,c[h>>2]|0,c[f>>2]|0,c[g>>2]|0);i=e;return}function xc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=15;while(1){if((c[g>>2]|0)<0)break;b=Jc(c[e>>2]|0,-1)|0;c[(c[f>>2]|0)+(c[g>>2]<<2)>>2]=b;c[g>>2]=(c[g>>2]|0)+-1}i=d;return}function yc(b,d,e,f,g,h,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,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;n=i;i=i+128|0;if((i|0)>=(j|0))U();o=n+120|0;p=n+116|0;q=n+112|0;r=n+108|0;s=n+104|0;t=n+100|0;u=n+96|0;v=n+92|0;w=n+88|0;x=n+84|0;y=n+80|0;z=n+76|0;A=n+72|0;B=n+68|0;C=n+64|0;D=n+60|0;E=n+56|0;F=n+52|0;G=n+48|0;H=n+44|0;I=n+40|0;J=n+24|0;K=n+20|0;L=n+16|0;M=n+12|0;N=n+8|0;O=n+4|0;P=n;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[E>>2]=qe(c[s>>2]|0)|0;c[F>>2]=qe(c[r>>2]|0)|0;m=c[F>>2]|0;c[G>>2]=Wa()|0;l=i;i=i+((1*m|0)+15&-16)|0;if((i|0)>=(j|0))U();if(!(c[E>>2]|0)){c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Aa(Q|0);R=c[o>>2]|0;i=n;return R|0}if(je(y,c[r>>2]|0,2)|0){c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Aa(Q|0);R=c[o>>2]|0;i=n;return R|0}if(je(z,c[s>>2]|0,2)|0){ke(c[y>>2]|0);c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Aa(Q|0);R=c[o>>2]|0;i=n;return R|0}c[J>>2]=c[c[x>>2]>>2];c[I>>2]=0;while(1){s=(c[J>>2]|0)+(4-1)&~(4-1);r=c[s>>2]|0;c[J>>2]=s+4;if(!r)break;r=(c[J>>2]|0)+(4-1)&~(4-1);s=c[r>>2]|0;c[J>>2]=r+4;c[I>>2]=(c[I>>2]|0)+s}Sw(c[p>>2]|0,0,c[q>>2]|0)|0;a:do if((zc(c[y>>2]|0,c[t>>2]|0,c[u>>2]|0,c[v>>2]|0,c[w>>2]|0,l)|0)!=1)S=34;else{c[C>>2]=((c[q>>2]|0)>>>0)/((c[E>>2]|0)>>>0)|0;c[D>>2]=((c[q>>2]|0)>>>0)%((c[E>>2]|0)>>>0)|0;c[L>>2]=(c[E>>2]|0)+(c[I>>2]|0)+1;s=c[L>>2]|0;c[M>>2]=Wa()|0;r=i;i=i+((1*s|0)+15&-16)|0;if((i|0)>=(j|0))U();c[O>>2]=r+(c[E>>2]|0);c[J>>2]=c[c[x>>2]>>2];while(1){s=(c[J>>2]|0)+(4-1)&~(4-1);m=c[s>>2]|0;c[J>>2]=s+4;c[N>>2]=m;if(!m)break;m=(c[J>>2]|0)+(4-1)&~(4-1);s=c[m>>2]|0;c[J>>2]=m+4;c[P>>2]=s;Ow(c[O>>2]|0,c[N>>2]|0,c[P>>2]|0)|0;c[O>>2]=(c[O>>2]|0)+(c[P>>2]|0)}do if((c[C>>2]|0)>>>0>0){a[r+(c[E>>2]|0)+(c[I>>2]|0)>>0]=1;c[A>>2]=Ac(c[z>>2]|0,l,c[F>>2]|0,r+(c[E>>2]|0)|0,(c[I>>2]|0)+1|0)|0;if(!(c[A>>2]|0)){c[K>>2]=4;break}else{Ow(c[p>>2]|0,c[A>>2]|0,c[E>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[E>>2]|0);S=18;break}}else S=18;while(0);b:do if((S|0)==18){c[B>>2]=1;while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;Ow(r|0,(c[p>>2]|0)+(0-(c[E>>2]|0))|0,c[E>>2]|0)|0;Sw(r+(c[E>>2]|0)+(c[I>>2]|0)|0,(c[B>>2]|0)+1&255|0,1)|0;le(c[z>>2]|0);c[A>>2]=Ac(c[z>>2]|0,l,c[F>>2]|0,r,c[L>>2]|0)|0;if(!(c[A>>2]|0)){S=21;break}Ow(c[p>>2]|0,c[A>>2]|0,c[E>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[E>>2]|0);c[B>>2]=(c[B>>2]|0)+1}if((S|0)==21){c[K>>2]=4;break}do if((c[D>>2]|0)>>>0>0){if((c[C>>2]|0)>>>0>0){Ow(r|0,(c[p>>2]|0)+(0-(c[E>>2]|0))|0,c[E>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}Sw(r+(c[E>>2]|0)+(c[I>>2]|0)|0,c[B>>2]&255|0,1)|0;le(c[z>>2]|0);s=c[z>>2]|0;m=c[F>>2]|0;if((c[C>>2]|0)>>>0>0)c[A>>2]=Ac(s,l,m,r,c[L>>2]|0)|0;else c[A>>2]=Ac(s,l,m,r+(c[E>>2]|0)|0,(c[L>>2]|0)-(c[E>>2]|0)|0)|0;if(!(c[A>>2]|0)){c[K>>2]=4;break b}else{Ow(c[p>>2]|0,c[A>>2]|0,c[D>>2]|0)|0;break}}while(0);c[H>>2]=1;c[K>>2]=10}while(0);Aa(c[M>>2]|0);switch(c[K>>2]|0){case 4:{S=34;break a;break}case 10:{break a;break}default:{}}Q=c[G>>2]|0;Aa(Q|0);R=c[o>>2]|0;i=n;return R|0}while(0);if((S|0)==34)c[H>>2]=-1;ke(c[y>>2]|0);ke(c[z>>2]|0);c[o>>2]=c[H>>2];c[K>>2]=1;Q=c[G>>2]|0;Aa(Q|0);R=c[o>>2]|0;i=n;return R|0}function zc(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+12|0;p=h+8|0;q=h+4|0;r=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=Ac(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(!(c[r>>2]|0)){c[k>>2]=-1;s=c[k>>2]|0;i=h;return s|0}else{p=c[q>>2]|0;q=c[r>>2]|0;Ow(p|0,q|0,qe(pe(c[l>>2]|0)|0)|0)|0;c[k>>2]=1;s=c[k>>2]|0;i=h;return s|0}return 0}function Ac(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;re(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;me(c[h>>2]|0,c[m>>2]|0,c[n>>2]|0);n=ne(c[h>>2]|0,0)|0;i=g;return n|0}function Bc(a,b,d,e,f,g,h,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+64|0;if((i|0)>=(j|0))U();n=m+52|0;o=m+48|0;p=m+44|0;q=m+40|0;r=m+36|0;s=m+32|0;t=m+28|0;u=m+24|0;v=m+8|0;w=m;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=k;c[v>>2]=l;c[w>>2]=yc(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0,v)|0;i=m;return c[w>>2]|0}function Cc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+24|0;m=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;q=k+4|0;r=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;h=yc(c[l>>2]|0,c[m>>2]|0,10,8,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;i=k;return h|0}function Dc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+44|0;m=k+40|0;n=k+36|0;o=k+32|0;p=k+28|0;q=k+24|0;r=k+8|0;s=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=Cc(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,r)|0;i=k;return c[s>>2]|0}function Ec(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;k=i;i=i+112|0;if((i|0)>=(j|0))U();l=k+40|0;m=k+32|0;n=k+24|0;o=k;p=k+104|0;q=k+100|0;r=k+96|0;s=k+92|0;t=k+88|0;u=k+84|0;v=k+80|0;w=k+76|0;x=k+72|0;y=k+68|0;z=k+64|0;A=k+60|0;B=k+56|0;C=k+52|0;D=k+48|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=h;c[x>>2]=Ud(c[q>>2]|0)|0;c[z>>2]=0;while(1){h=((((c[x>>2]|0)-1|0)>>>0)/8|0)+1|0;c[A>>2]=Wa()|0;g=i;i=i+((1*h|0)+15&-16)|0;if((i|0)>=(j|0))U();f=c[r>>2]|0;e=c[s>>2]|0;d=c[t>>2]|0;b=c[u>>2]|0;a=c[v>>2]|0;E=Tu(c[v>>2]|0)|0;c[o>>2]=a;c[o+4>>2]=E;c[o+8>>2]=z;c[o+12>>2]=4;c[o+16>>2]=0;c[o+20>>2]=0;c[w>>2]=Dc(g,h,f,e,d,b,o)|0;if(1!=(c[w>>2]|0)){F=3;break}c[w>>2]=Id(c[p>>2]|0,5,g,h,y)|0;if(c[w>>2]|0){F=11;break}Wd(c[c[p>>2]>>2]|0,c[x>>2]|0);if(Vd(c[c[p>>2]>>2]|0,c[x>>2]|0)|0){F=19;break}c[z>>2]=(c[z>>2]|0)+1;Aa(c[A>>2]|0);if(0>(Hd(c[c[p>>2]>>2]|0,c[q>>2]|0)|0)){F=27;break}}if((F|0)==3){c[B>>2]=135;if((c[226]|0)==-1)c[226]=Yb(1,0,20369,20382,c[B>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[226]|0))Xb();c[n>>2]=20369;c[n+4>>2]=135;bc(1,61409,n);Xb()}else if((F|0)==11){c[C>>2]=142;if((c[227]|0)==-1)c[227]=Yb(1,0,20369,20382,c[C>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[227]|0))Xb();c[m>>2]=20369;c[m+4>>2]=142;bc(1,61409,m);Xb()}else if((F|0)==19){c[D>>2]=145;if((c[228]|0)==-1)c[228]=Yb(1,0,20369,20382,c[D>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[228]|0))Xb();c[l>>2]=20369;c[l+4>>2]=145;bc(1,61409,l);Xb()}else if((F|0)==27){i=k;return}}function Fc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+8|0;h=e;k=e+68|0;l=e+64|0;m=e+60|0;n=e+56|0;o=e+52|0;p=e+48|0;q=e+44|0;r=e+40|0;s=e+36|0;t=e+32|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;if(Yd(c[m>>2]|0,2)|0){c[q>>2]=Xd(c[m>>2]|0,p)|0;if(c[q>>2]|0){c[n>>2]=(((c[p>>2]|0)+7|0)>>>0)/8|0;if((c[n>>2]|0)>>>0>(c[l>>2]|0)>>>0)c[n>>2]=c[l>>2];Ow(c[k>>2]|0,c[q>>2]|0,c[n>>2]|0)|0;if((c[n>>2]|0)>>>0>=(c[l>>2]|0)>>>0){i=e;return}Sw((c[k>>2]|0)+(c[n>>2]|0)|0,0,(c[l>>2]|0)-(c[n>>2]|0)|0)|0;i=e;return}c[r>>2]=89;if((c[229]|0)==-1)c[229]=Yb(1,0,20408,20421,c[r>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[229]|0))Xb();c[h>>2]=20408;c[h+4>>2]=89;bc(1,61409,h);Xb()}c[n>>2]=c[l>>2];h=Jd(5,c[k>>2]|0,c[n>>2]|0,n,c[m>>2]|0)|0;c[o>>2]=h;if(!h){Gc(c[k>>2]|0,c[n>>2]|0,c[l>>2]|0);i=e;return}c[s>>2]=110;if((c[230]|0)==-1)c[230]=Yb(1,20903,20408,20421,c[s>>2]|0)|0;if(($b()|0)<=0){if(c[230]|0){s=sd(c[o>>2]|0)|0;c[g>>2]=20491;c[g+4>>2]=20408;c[g+8>>2]=110;c[g+12>>2]=s;gc(1,20903,20454,g)}}else ac(-1,0);c[t>>2]=111;if((c[231]|0)==-1)c[231]=Yb(1,0,20408,20421,c[t>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[231]|0))Xb();c[f>>2]=20408;c[f+4>>2]=111;bc(1,61409,f);Xb()}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){i=e;return}Qw((c[k>>2]|0)+((c[h>>2]|0)-(c[g>>2]|0))|0,c[f>>2]|0,c[g>>2]|0)|0;Sw(c[f>>2]|0,0,(c[h>>2]|0)-(c[g>>2]|0)|0)|0;i=e;return}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+16|0;g=e;h=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;d=Id(c[h>>2]|0,5,c[k>>2]|0,c[l>>2]|0,l)|0;c[m>>2]=d;if(!d){i=e;return}c[n>>2]=140;if((c[232]|0)==-1)c[232]=Yb(1,20903,20408,20506,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[232]|0){n=sd(c[m>>2]|0)|0;c[g>>2]=20538;c[g+4>>2]=20408;c[g+8>>2]=140;c[g+12>>2]=n;gc(1,20903,20454,g)}}else ac(-1,0);c[o>>2]=141;if((c[233]|0)==-1)c[233]=Yb(1,0,20408,20506,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[233]|0))Xb();c[f>>2]=20408;c[f+4>>2]=141;bc(1,61409,f);Xb()}function Ic(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=i;i=i+80|0;if((i|0)>=(j|0))U();b=a+56|0;d=a+48|0;e=a+40|0;f=a+32|0;g=a+24|0;h=a+16|0;k=a+8|0;l=a;m=a+64|0;n=a+60|0;if(wd(20552)|0){c[h>>2]=0;o=xd(37,h)|0;c[m>>2]=o;if(o|0){o=c[3960]|0;h=sd(c[m>>2]|0)|0;c[g>>2]=20705;c[g+4>>2]=h;pv(o,20666,g)|0}c[f>>2]=0;g=xd(44,f)|0;c[m>>2]=g;if(!g){c[d>>2]=0;xd(38,d)|0;c[b>>2]=0;xd(48,b)|0;p=ib(0)|0;q=Jc(2,-1)|0;r=p^q;Lc(r);i=a;return}g=c[3960]|0;f=sd(c[m>>2]|0)|0;c[e>>2]=20720;c[e+4>>2]=f;pv(g,20666,e)|0;c[d>>2]=0;xd(38,d)|0;c[b>>2]=0;xd(48,b)|0;p=ib(0)|0;q=Jc(2,-1)|0;r=p^q;Lc(r);i=a;return}a=c[3960]|0;c[l>>2]=20552;pv(a,20558,l)|0;c[n>>2]=286;if((c[234]|0)==-1)c[234]=Yb(1,0,20624,20640,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[234]|0))Xb();c[k>>2]=20624;c[k+4>>2]=286;bc(1,61409,k);Xb()}function Jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;d=i;i=i+64|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d;h=d+48|0;k=d+44|0;l=d+40|0;m=d+36|0;n=d+32|0;o=d+28|0;p=d+24|0;c[k>>2]=a;c[l>>2]=b;if((c[l>>2]|0)>>>0<=0){c[o>>2]=157;if((c[235]|0)==-1)c[235]=Yb(1,0,20624,20740,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[235]|0))Xb();c[g>>2]=20624;c[g+4>>2]=157;bc(1,61409,g);Xb()}switch(c[k>>2]|0){case 1:{k=c[17608]|0;c[17608]=k+1;if(!((k>>>0)%256|0)){c[f>>2]=0;xd(48,f)|0}c[n>>2]=-1-(4294967295%((c[l>>2]|0)>>>0)|0);do se(m,4,1);while((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0);c[h>>2]=((c[m>>2]|0)>>>0)%((c[l>>2]|0)>>>0)|0;q=c[h>>2]|0;i=d;return q|0}case 2:{c[n>>2]=-1-(4294967295%((c[l>>2]|0)>>>0)|0);do te(m,4);while((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0);c[h>>2]=((c[m>>2]|0)>>>0)%((c[l>>2]|0)>>>0)|0;q=c[h>>2]|0;i=d;return q|0}case 0:{r=+((c[l>>2]|0)>>>0);c[m>>2]=~~(r*+Kc())>>>0;if((c[m>>2]|0)>>>0>=(c[l>>2]|0)>>>0)c[m>>2]=(c[l>>2]|0)-1;c[h>>2]=c[m>>2];q=c[h>>2]|0;i=d;return q|0}default:{c[p>>2]=189;if((c[236]|0)==-1)c[236]=Yb(1,0,20624,20740,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[236]|0))Xb();c[e>>2]=20624;c[e+4>>2]=189;bc(1,61409,e);Xb()}}return 0}function Kc(){return +(+(lw()|0)/2147483647.0)}function Lc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;jw(c[d>>2]|0);i=b;return}function Mc(){ve(0,0);return}function Nc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+8|0;h=e;k=e+36|0;l=e+32|0;m=e+28|0;n=e+24|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;switch(c[k>>2]|0){case 1:{k=c[17609]|0;c[17609]=k+1;if(!((k>>>0)%256|0)){c[h>>2]=0;xd(48,h)|0}se(c[l>>2]|0,c[m>>2]|0,1);i=e;return}case 2:{te(c[l>>2]|0,c[m>>2]|0);i=e;return}case 0:{h=c[17609]|0;c[17609]=h+1;if(!((h>>>0)%256|0)){c[g>>2]=0;xd(48,g)|0}se(c[l>>2]|0,c[m>>2]|0,0);i=e;return}default:{c[n>>2]=135;if((c[237]|0)==-1)c[237]=Yb(1,0,20624,20765,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[237]|0))Xb();c[f>>2]=20624;c[f+4>>2]=135;bc(1,61409,f);Xb()}}}function Oc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;b=i;i=i+48|0;if((i|0)>=(j|0))U();d=b+16|0;e=b+8|0;f=b;g=b+44|0;h=b+40|0;k=b+36|0;l=b+32|0;m=b+28|0;n=b+24|0;c[g>>2]=a;c[f>>2]=c[g>>2];if(zd(l,0,20792,f)|0){c[m>>2]=155;if((c[238]|0)==-1)c[238]=Yb(1,0,20816,20829,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[238]|0))Xb();c[e>>2]=20816;c[e+4>>2]=155;bc(1,61409,e);Xb()}if(!(ie(k,c[l>>2]|0)|0)){Ad(c[l>>2]|0);c[h>>2]=Qb(4,20816,164)|0;c[c[h>>2]>>2]=c[k>>2];i=b;return c[h>>2]|0}c[n>>2]=158;if((c[239]|0)==-1)c[239]=Yb(1,0,20816,20829,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[239]|0))Xb();c[d>>2]=20816;c[d+4>>2]=158;bc(1,61409,d);Xb();return 0}function Pc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Ad(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20816,179);i=b;return}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Bd(c[c[f>>2]>>2]|0,0,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20816,202)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Bd(c[c[f>>2]>>2]|0,0,c[k>>2]|0,c[h>>2]|0)|0)){c[c[g>>2]>>2]=c[k>>2];i=d;return c[h>>2]|0}c[l>>2]=207;if((c[240]|0)==-1)c[240]=Yb(1,0,20816,20866,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[240]|0))Xb();c[e>>2]=20816;c[e+4>>2]=207;bc(1,61409,e);Xb();return 0}function Rc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=d+32|0;h=d+28|0;k=d+24|0;l=d+20|0;m=d+16|0;n=d+12|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=Qb(4,20816,226)|0;if(yd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[m>>2]=234;if((c[241]|0)==-1)c[241]=Yb(2,20903,20816,20908,c[m>>2]|0)|0;if(($b()|0)<=0){if(c[241]|0)gc(2,20903,20945,f)}else ac(-1,0);Sb(c[l>>2]|0,20816,235);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}if(!(he(c[c[l>>2]>>2]|0)|0)){c[g>>2]=c[l>>2];o=c[g>>2]|0;i=d;return o|0}c[n>>2]=241;if((c[242]|0)==-1)c[242]=Yb(2,20903,20816,20908,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[242]|0)gc(2,20903,20945,e)}else ac(-1,0);Pc(c[l>>2]|0);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}function Sc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+64|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+48|0;g=b+44|0;h=b+40|0;k=b+32|0;l=b+24|0;m=b+20|0;n=b+16|0;c[g>>2]=a;c[l>>2]=Tc(k,c[c[g>>2]>>2]|0,37764,39177)|0;if(c[l>>2]|0)c[l>>2]=Tc(k,c[c[g>>2]>>2]|0,37752,39177)|0;if(c[l>>2]|0)c[l>>2]=Tc(k,c[c[g>>2]>>2]|0,39136,39177)|0;if(!(c[l>>2]|0)){g=c[k+4>>2]|0;c[d>>2]=c[k>>2];c[d+4>>2]=g;c[l>>2]=zd(m,0,21068,d)|0;Gd(c[k>>2]|0);Gd(c[k+4>>2]|0);c[h>>2]=Qb(4,20816,280)|0;c[c[h>>2]>>2]=c[m>>2];c[f>>2]=c[h>>2];o=c[f>>2]|0;i=b;return o|0}c[n>>2]=270;if((c[243]|0)==-1)c[243]=Yb(2,0,20816,20979,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[243]|0){c[e>>2]=20816;c[e+4>>2]=270;bc(34,21020,e)}}else ac(-1,0);c[f>>2]=0;o=c[f>>2]|0;i=b;return o|0}function Tc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Cd(c[l>>2]|0,c[m>>2]|0,0)|0;c[o>>2]=f;if(!f){c[h>>2]=1;t=c[h>>2]|0;i=g;return t|0}c[p>>2]=Dd(c[o>>2]|0)|0;Ad(c[o>>2]|0);c[o>>2]=c[p>>2];if(!(c[o>>2]|0)){c[h>>2]=2;t=c[h>>2]|0;i=g;return t|0}c[s>>2]=0;c[q>>2]=c[n>>2];while(1){u=c[o>>2]|0;if(!(a[c[q>>2]>>0]|0)){v=18;break}n=Cd(u,c[q>>2]|0,1)|0;c[p>>2]=n;if(!n){v=8;break}n=Ed(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;Ad(c[p>>2]|0);if(!(c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]|0)){v=13;break}c[q>>2]=(c[q>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}if((v|0)==8){c[r>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;we(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=0;c[r>>2]=(c[r>>2]|0)+1}Ad(c[o>>2]|0);c[h>>2]=3;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==13){c[r>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;we(c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=0;c[r>>2]=(c[r>>2]|0)+1}Ad(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){Ad(u);c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}return 0}function Uc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Ad(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20816,295);i=b;return}function Vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Bd(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20816,318)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Bd(c[c[f>>2]>>2]|0,3,c[k>>2]|0,c[h>>2]|0)|0)){c[c[g>>2]>>2]=c[k>>2];i=d;return c[h>>2]|0}c[l>>2]=323;if((c[244]|0)==-1)c[244]=Yb(1,0,20816,21098,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[244]|0))Xb();c[e>>2]=20816;c[e+4>>2]=323;bc(1,61409,e);Xb();return 0}function Wc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=d+44|0;h=d+40|0;k=d+36|0;l=d+32|0;m=d+28|0;n=d+24|0;o=d+20|0;p=d+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=Qb(4,20816,367)|0;if(yd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=374;if((c[245]|0)==-1)c[245]=Yb(2,0,20816,21134,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[245]|0){c[f>>2]=20816;c[f+4>>2]=374;bc(34,21020,f)}}else ac(-1,0);Sb(c[l>>2]|0,20816,375);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[n>>2]=Tc(m,c[c[l>>2]>>2]|0,37764,39191)|0;if(c[n>>2]|0)c[n>>2]=Tc(m,c[c[l>>2]>>2]|0,39136,39191)|0;if(!(c[n>>2]|0)){Gd(c[m>>2]|0);c[g>>2]=c[l>>2];q=c[g>>2]|0;i=d;return q|0}c[p>>2]=385;if((c[246]|0)==-1)c[246]=Yb(1,0,20816,21134,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[246]|0){c[e>>2]=20816;c[e+4>>2]=385;bc(1,61409,e)}}else ac(-1,0);Ad(c[c[l>>2]>>2]|0);Sb(c[l>>2]|0,20816,387);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function Xc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Bd(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20816,896)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Bd(c[c[f>>2]>>2]|0,3,c[k>>2]|0,c[h>>2]|0)|0)){c[c[g>>2]>>2]=c[k>>2];i=d;return c[h>>2]|0}c[l>>2]=901;if((c[247]|0)==-1)c[247]=Yb(1,0,20816,21170,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[247]|0))Xb();c[e>>2]=20816;c[e+4>>2]=901;bc(1,61409,e);Xb();return 0}function Yc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f;h=f+64|0;k=f+60|0;l=f+56|0;m=f+52|0;n=f+48|0;o=f+44|0;p=f+40|0;q=f+32|0;r=f+24|0;s=f+20|0;t=f+16|0;u=f+12|0;v=f+8|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[u>>2]=Tc(q,c[c[m>>2]>>2]|0,37764,39177)|0;if(c[u>>2]|0)c[u>>2]=Tc(q,c[c[m>>2]>>2]|0,39136,39177)|0;if(!(c[u>>2]|0)){Zc(p,c[k>>2]|0,c[m>>2]|0);c[o>>2]=_c(c[m>>2]|0,c[l>>2]|0)|0;c[r>>2]=Fd(0)|0;Ld(c[r>>2]|0,c[c[o>>2]>>2]|0,c[q+4>>2]|0,c[q>>2]|0);c[s>>2]=Fd(0)|0;Kd(c[s>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0);Gd(c[p>>2]|0);Gd(c[q>>2]|0);Gd(c[q+4>>2]|0);Gd(c[r>>2]|0);$c(c[o>>2]|0);c[t>>2]=ad(c[s>>2]|0,c[n>>2]|0)|0;Gd(c[s>>2]|0);c[h>>2]=c[t>>2];w=c[h>>2]|0;i=f;return w|0}c[v>>2]=704;if((c[248]|0)==-1)c[248]=Yb(1,0,20816,21205,c[v>>2]|0)|0;if(($b()|0)<=0){if(c[248]|0){c[g>>2]=20816;c[g+4>>2]=704;bc(1,61409,g)}}else ac(-1,0);c[c[n>>2]>>2]=0;c[h>>2]=0;w=c[h>>2]|0;i=f;return w|0}function Zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+8|0;g=e;h=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;if(Tc(m,c[c[l>>2]>>2]|0,39136,39191)|0){c[p>>2]=657;if((c[249]|0)==-1)c[249]=Yb(1,0,20816,21229,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[249]|0))Xb();c[g>>2]=20816;c[g+4>>2]=657;bc(1,61409,g);Xb()}if(!(Yd(c[m>>2]|0,2)|0)){c[o>>2]=Vc(c[l>>2]|0,n)|0;Ec(c[h>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[k>>2]|0,64,21250);Sb(c[n>>2]|0,20816,672);i=e;return}c[q>>2]=658;if((c[250]|0)==-1)c[250]=Yb(1,0,20816,21229,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[250]|0))Xb();c[f>>2]=20816;c[f+4>>2]=658;bc(1,61409,f);Xb()}function _c(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=d+40|0;h=d+36|0;k=d+32|0;l=d+28|0;m=d+24|0;n=d+20|0;o=d+16|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=21265;c[l>>2]=Qb(4,20816,410)|0;if(Tc(m,c[c[g>>2]>>2]|0,39136,39191)|0){c[n>>2]=413;if((c[251]|0)==-1)c[251]=Yb(1,0,20816,21296,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[251]|0))Xb();c[f>>2]=20816;c[f+4>>2]=413;bc(1,61409,f);Xb()}if(!(Yd(c[m>>2]|0,2)|0)){f=c[l>>2]|0;n=c[m>>2]|0;m=c[k>>2]|0;g=Tu(c[k>>2]|0)|0;Ec(f,n,m,g,c[h>>2]|0,32,21320);i=d;return c[l>>2]|0}c[o>>2]=414;if((c[252]|0)==-1)c[252]=Yb(1,0,20816,21296,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[252]|0))Xb();c[e>>2]=20816;c[e+4>>2]=414;bc(1,61409,e);Xb();return 0}function $c(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Gd(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20816,599);i=b;return}function ad(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+28|0;g=d+24|0;h=d+20|0;k=d+16|0;l=d+8|0;c[f>>2]=a;c[g>>2]=b;Jd(5,0,0,h,c[f>>2]|0)|0;c[k>>2]=Qb(c[h>>2]|0,20816,623)|0;if(!(Jd(5,c[k>>2]|0,c[h>>2]|0,d+12|0,c[f>>2]|0)|0)){c[c[g>>2]>>2]=c[k>>2];i=d;return c[h>>2]|0}c[l>>2]=629;if((c[253]|0)==-1)c[253]=Yb(1,0,20816,21333,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[253]|0))Xb();c[e>>2]=20816;c[e+4>>2]=629;bc(1,61409,e);Xb();return 0}function bd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+24|0;g=b+20|0;h=b+16|0;c[f>>2]=a;c[g>>2]=0;c[e>>2]=c[f>>2];if(!(zd(g,0,21359,e)|0)){i=b;return c[g>>2]|0}c[h>>2]=749;if((c[254]|0)==-1)c[254]=Yb(1,0,20816,21389,c[h>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[254]|0))Xb();c[d>>2]=20816;c[d+4>>2]=749;bc(1,61409,d);Xb();return 0}function cd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Ad(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20816,874);i=b;return}function dd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=d+44|0;h=d+40|0;k=d+36|0;l=d+32|0;m=d+28|0;n=d+24|0;o=d+20|0;p=d+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=Qb(4,20816,923)|0;if(yd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=930;if((c[255]|0)==-1)c[255]=Yb(2,0,20816,21401,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[255]|0){c[f>>2]=20816;c[f+4>>2]=930;bc(34,21020,f)}}else ac(-1,0);Sb(c[l>>2]|0,20816,931);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[m>>2]=Tc(n,c[c[l>>2]>>2]|0,37614,39189)|0;if(c[m>>2]|0)c[m>>2]=Tc(n,c[c[l>>2]>>2]|0,39136,39189)|0;if(!(c[m>>2]|0)){Gd(c[n>>2]|0);c[g>>2]=c[l>>2];q=c[g>>2]|0;i=d;return q|0}c[p>>2]=941;if((c[256]|0)==-1)c[256]=Yb(2,0,20816,21401,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[256]|0){c[e>>2]=20816;c[e+4>>2]=941;bc(34,21020,e)}}else ac(-1,0);Ad(c[c[l>>2]>>2]|0);Sb(c[l>>2]|0,20816,943);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function ed(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+24|0;h=e+16|0;k=e+8|0;l=e;m=e+96|0;n=e+92|0;o=e+88|0;p=e+84|0;q=e+80|0;r=e+76|0;s=e+72|0;t=e+68|0;u=e+64|0;v=e+60|0;w=e+56|0;x=e+52|0;y=e+48|0;z=e+44|0;A=e+40|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[v>>2]=Tc(r,c[c[p>>2]>>2]|0,37764,39191)|0;if(c[v>>2]|0)c[v>>2]=Tc(r,c[c[p>>2]>>2]|0,39136,39191)|0;if(c[v>>2]|0){c[x>>2]=1004;if((c[257]|0)==-1)c[257]=Yb(2,0,20816,21436,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[257]|0){c[l>>2]=20816;c[l+4>>2]=1004;bc(34,21020,l)}}else ac(-1,0);c[m>>2]=0;B=c[m>>2]|0;i=e;return B|0}c[v>>2]=Tc(s,c[c[n>>2]>>2]|0,37614,39189)|0;if(c[v>>2]|0)c[v>>2]=Tc(s,c[c[n>>2]>>2]|0,39136,39189)|0;if(c[v>>2]|0){Gd(c[r>>2]|0);c[y>>2]=1013;if((c[258]|0)==-1)c[258]=Yb(2,0,20816,21436,c[y>>2]|0)|0;if(($b()|0)<=0){if(c[258]|0){c[k>>2]=20816;c[k+4>>2]=1013;bc(34,21020,k)}}else ac(-1,0);c[m>>2]=0;B=c[m>>2]|0;i=e;return B|0}c[q>>2]=_c(c[p>>2]|0,c[o>>2]|0)|0;c[t>>2]=Fd(0)|0;if(1!=(Md(c[t>>2]|0,c[c[q>>2]>>2]|0,c[r>>2]|0)|0)){c[z>>2]=1025;if((c[259]|0)==-1)c[259]=Yb(2,0,20816,21436,c[z>>2]|0)|0;if(($b()|0)<=0){if(c[259]|0){c[h>>2]=20816;c[h+4>>2]=1025;bc(34,21020,h)}}else ac(-1,0);Gd(c[r>>2]|0);Gd(c[t>>2]|0);Gd(c[s>>2]|0);$c(c[q>>2]|0);c[m>>2]=0;B=c[m>>2]|0;i=e;return B|0}c[u>>2]=Fd(0)|0;Kd(c[u>>2]|0,c[s>>2]|0,c[t>>2]|0,c[r>>2]|0);Gd(c[r>>2]|0);Gd(c[t>>2]|0);Gd(c[s>>2]|0);$c(c[q>>2]|0);c[w>>2]=Qb(4,20816,1039)|0;q=c[w>>2]|0;c[g>>2]=c[u>>2];if(!(zd(q,0,21462,g)|0)){Gd(c[u>>2]|0);c[m>>2]=c[w>>2];B=c[m>>2]|0;i=e;return B|0}c[A>>2]=1044;if((c[260]|0)==-1)c[260]=Yb(1,0,20816,21436,c[A>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[260]|0))Xb();c[f>>2]=20816;c[f+4>>2]=1044;bc(1,61409,f);Xb();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,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e;g=e+40|0;h=e+36|0;k=e+32|0;l=e+28|0;m=e+24|0;n=e+20|0;o=e+16|0;p=e+12|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;Zc(n,c[h>>2]|0,c[l>>2]|0);c[m>>2]=bd(c[n>>2]|0)|0;Gd(c[n>>2]|0);c[o>>2]=ge(c[c[k>>2]>>2]|0,c[m>>2]|0,c[c[l>>2]>>2]|0)|0;Ad(c[m>>2]|0);if(!(c[o>>2]|0)){c[g>>2]=1;q=c[g>>2]|0;i=e;return q|0}c[p>>2]=1082;if((c[261]|0)==-1)c[261]=Yb(2,20903,20816,21485,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[261]|0){p=sd(c[o>>2]|0)|0;c[f>>2]=20816;c[f+4>>2]=1081;c[f+8>>2]=p;gc(2,20903,21510,f)}}else ac(-1,0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}function gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+40|0;g=d+36|0;h=d+32|0;k=d+8|0;l=d;c[g>>2]=b;c[h>>2]=21598;b=a;m=c[b+4>>2]|0;n=k;c[n>>2]=c[b>>2];c[n+4>>2]=m;m=md()|0;n=l;c[n>>2]=m;c[n+4>>2]=C;n=l;l=a;if((c[n>>2]|0)==(c[l>>2]|0)?(c[n+4>>2]|0)==(c[l+4>>2]|0):0){c[f>>2]=21576;o=c[f>>2]|0;i=d;return o|0}l=a;if(0==(c[l>>2]|0)?0==(c[l+4>>2]|0):0){c[f>>2]=21602;o=c[f>>2]|0;i=d;return o|0}l=k;a=c[l+4>>2]|0;if(!(!(1==(c[g>>2]|0)&(a>>>0>0|(a|0)==0&(c[l>>2]|0)>>>0>5e3))?(l=k,a=Rw(c[l>>2]|0,c[l+4>>2]|0,1e3,0)|0,!(0==(a|0)&0==(C|0))):0))p=7;do if((p|0)==7){a=k;l=Vw(c[a>>2]|0,c[a+4>>2]|0,1e3,0)|0;a=k;c[a>>2]=l;c[a+4>>2]=C;c[h>>2]=21584;a=k;l=c[a+4>>2]|0;if(!(1==(c[g>>2]|0)&(l>>>0>0|(l|0)==0&(c[a>>2]|0)>>>0>5e3))?(a=k,l=Rw(c[a>>2]|0,c[a+4>>2]|0,1e3,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Vw(c[l>>2]|0,c[l+4>>2]|0,1e3,0)|0;l=k;c[l>>2]=a;c[l+4>>2]=C;c[h>>2]=39189;l=k;a=c[l+4>>2]|0;if(!(1==(c[g>>2]|0)&(a>>>0>0|(a|0)==0&(c[l>>2]|0)>>>0>300))?(l=k,a=Rw(c[l>>2]|0,c[l+4>>2]|0,60,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Vw(c[a>>2]|0,c[a+4>>2]|0,60,0)|0;a=k;c[a>>2]=l;c[a+4>>2]=C;c[h>>2]=21587;a=k;l=c[a+4>>2]|0;if(!(1==(c[g>>2]|0)&(l>>>0>0|(l|0)==0&(c[a>>2]|0)>>>0>300))?(a=k,l=Rw(c[a>>2]|0,c[a+4>>2]|0,60,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Vw(c[l>>2]|0,c[l+4>>2]|0,60,0)|0;l=k;c[l>>2]=a;c[l+4>>2]=C;c[h>>2]=35400;l=k;a=c[l+4>>2]|0;if(!(1==(c[g>>2]|0)&(a>>>0>0|(a|0)==0&(c[l>>2]|0)>>>0>120))?(l=k,a=Rw(c[l>>2]|0,c[l+4>>2]|0,24,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Vw(c[a>>2]|0,c[a+4>>2]|0,24,0)|0;a=k;c[a>>2]=l;c[a+4>>2]=C;a=k;if(1==(c[a>>2]|0)?0==(c[a+4>>2]|0):0){c[h>>2]=21589;break}else{c[h>>2]=21593;break}}while(0);g=k;k=c[g+4>>2]|0;p=c[h>>2]|0;h=e;c[h>>2]=c[g>>2];c[h+4>>2]=k;c[e+8>>2]=p;Ub(75860,128,21568,e)|0;c[f>>2]=75860;o=c[f>>2]|0;i=d;return o|0}function hd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+96|0;if((i|0)>=(j|0))U();k=h+24|0;l=h+16|0;m=h+8|0;n=h;o=h+84|0;p=h+80|0;q=h+76|0;r=h+72|0;s=h+68|0;t=h+64|0;u=h+60|0;v=h+56|0;w=h+52|0;x=h+48|0;y=h+44|0;z=h+40|0;A=h+36|0;B=h+32|0;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[x>>2]=c[p>>2];if((c[s>>2]|0)>>>0<((((c[q>>2]<<3)+4|0)>>>0)/5|0)>>>0){c[y>>2]=873;if((c[262]|0)==-1)c[262]=Yb(1,0,21558,21607,c[y>>2]|0)|0;if(($b()|0)<=0){if(c[262]|0){c[n>>2]=21558;c[n+4>>2]=873;bc(1,61409,n)}}else ac(-1,0);c[o>>2]=0;C=c[o>>2]|0;i=h;return C|0}c[w>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;while(1){if(!((c[u>>2]|0)>>>0<(c[q>>2]|0)>>>0?1:(c[w>>2]|0)>>>0>0)){D=32;break}if((c[w>>2]|0)>>>0<5?(c[u>>2]|0)>>>0<(c[q>>2]|0)>>>0:0){n=c[v>>2]<<8;y=c[u>>2]|0;c[u>>2]=y+1;c[v>>2]=n|(d[(c[x>>2]|0)+y>>0]|0);c[w>>2]=(c[w>>2]|0)+8}if((c[w>>2]|0)>>>0<5){c[v>>2]=c[v>>2]<<5-(c[w>>2]|0);if((c[w>>2]|0)!=((c[q>>2]<<3>>>0)%5|0|0)){D=15;break}c[w>>2]=5}if((c[t>>2]|0)>>>0>=(c[s>>2]|0)>>>0){D=24;break}y=a[(c[265]|0)+((c[v>>2]|0)>>>((c[w>>2]|0)-5|0)&31)>>0]|0;n=c[t>>2]|0;c[t>>2]=n+1;a[(c[r>>2]|0)+n>>0]=y;c[w>>2]=(c[w>>2]|0)-5}if((D|0)==15){c[z>>2]=890;if((c[263]|0)==-1)c[263]=Yb(1,0,21558,21607,c[z>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[263]|0))Xb();c[m>>2]=21558;c[m+4>>2]=890;bc(1,61409,m);Xb()}else if((D|0)==24){c[A>>2]=895;if((c[264]|0)==-1)c[264]=Yb(1,0,21558,21607,c[A>>2]|0)|0;if(($b()|0)<=0){if(c[264]|0){c[l>>2]=21558;c[l+4>>2]=895;bc(1,61409,l)}}else ac(-1,0);c[o>>2]=0;C=c[o>>2]|0;i=h;return C|0}else if((D|0)==32){if(!(c[w>>2]|0)){if((c[t>>2]|0)>>>0<(c[s>>2]|0)>>>0)a[(c[r>>2]|0)+(c[t>>2]|0)>>0]=0;c[o>>2]=(c[r>>2]|0)+(c[t>>2]|0);C=c[o>>2]|0;i=h;return C|0}c[B>>2]=901;if((c[266]|0)==-1)c[266]=Yb(1,0,21558,21607,c[B>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[266]|0))Xb();c[k>>2]=21558;c[k+4>>2]=901;bc(1,61409,k);Xb()}return 0}function id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[l>>2]=c[h>>2]<<3;if((((c[l>>2]|0)>>>0)%5|0)>>>0>0)c[l>>2]=(c[l>>2]|0)+(5-(((c[l>>2]|0)>>>0)%5|0));c[l>>2]=((c[l>>2]|0)>>>0)/5|0;c[k>>2]=Qb((c[l>>2]|0)+1|0,21558,929)|0;c[m>>2]=hd(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!(c[m>>2]|0)){Sb(c[k>>2]|0,21558,933);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}else{a[c[m>>2]>>0]=0;c[f>>2]=c[k>>2];n=c[f>>2]|0;i=e;return n|0}return 0}function jd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g;k=g+60|0;l=g+56|0;m=g+52|0;n=g+48|0;o=g+44|0;p=g+40|0;q=g+36|0;r=g+32|0;s=g+28|0;t=g+24|0;u=g+20|0;v=g+16|0;w=g+12|0;x=g+8|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[w>>2]=c[o>>2]<<3;if(!(c[m>>2]|0))if(!(c[o>>2]|0)){c[k>>2]=1;y=c[k>>2]|0;i=g;return y|0}else{c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}c[v>>2]=c[n>>2];c[q>>2]=c[o>>2];c[p>>2]=c[m>>2];if((((c[w>>2]|0)>>>0)%5|0)>>>0>0){c[s>>2]=((c[w>>2]|0)>>>0)%5|0;c[u>>2]=5-(c[s>>2]|0);o=(c[p>>2]|0)+-1|0;c[p>>2]=o;n=kd(a[(c[l>>2]|0)+o>>0]|0)|0;c[t>>2]=n;c[r>>2]=n>>c[u>>2]}else{c[s>>2]=5;c[u>>2]=0;n=(c[p>>2]|0)+-1|0;c[p>>2]=n;o=kd(a[(c[l>>2]|0)+n>>0]|0)|0;c[t>>2]=o;c[r>>2]=o}if(((((c[w>>2]|0)+(c[u>>2]|0)|0)>>>0)/5|0|0)!=(c[m>>2]|0)){c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}if(-1==(c[t>>2]|0)){c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}while(1){z=c[p>>2]|0;if((c[q>>2]|0)>>>0<=0){A=25;break}if(!z){A=14;break}m=(c[p>>2]|0)+-1|0;c[p>>2]=m;u=kd(a[(c[l>>2]|0)+m>>0]|0)|0;c[t>>2]=u;c[r>>2]=u<<c[s>>2]|c[r>>2];if(-1==(c[t>>2]|0)){A=22;break}c[s>>2]=(c[s>>2]|0)+5;if((c[s>>2]|0)>>>0<8)continue;u=c[r>>2]&255;m=(c[q>>2]|0)+-1|0;c[q>>2]=m;a[(c[v>>2]|0)+m>>0]=u;c[r>>2]=(c[r>>2]|0)>>>8;c[s>>2]=(c[s>>2]|0)-8}if((A|0)==14){c[x>>2]=993;if((c[267]|0)==-1)c[267]=Yb(1,0,21558,21670,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[267]|0){c[h>>2]=21558;c[h+4>>2]=993;bc(1,61409,h)}}else ac(-1,0);c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}else if((A|0)==22){c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}else if((A|0)==25)if(0!=(z|0)|0!=(c[s>>2]|0)){c[k>>2]=-1;y=c[k>>2]|0;i=g;return y|0}else{c[k>>2]=1;y=c[k>>2]|0;i=g;return y|0}return 0}function kd(b){b=b|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+4|0;g=e+8|0;h=e;a[g>>0]=b;switch(d[g>>0]|0|0){case 111:case 79:{a[g>>0]=48;break}case 76:case 108:case 73:case 105:{a[g>>0]=49;break}case 85:case 117:{a[g>>0]=86;break}default:{}}if((d[g>>0]|0|0)>=48?(d[g>>0]|0|0)<=57:0){c[f>>2]=(d[g>>0]|0)-48;k=c[f>>2]|0;i=e;return k|0}if((d[g>>0]|0|0)>=97?(d[g>>0]|0|0)<=122:0)a[g>>0]=Su(d[g>>0]|0)|0;c[h>>2]=0;if((d[g>>0]|0|0)>=65?(d[g>>0]|0|0)<=90:0){if(73<(d[g>>0]|0|0))c[h>>2]=(c[h>>2]|0)+1;if(76<(d[g>>0]|0|0))c[h>>2]=(c[h>>2]|0)+1;if(79<(d[g>>0]|0|0))c[h>>2]=(c[h>>2]|0)+1;if(85<(d[g>>0]|0|0))c[h>>2]=(c[h>>2]|0)+1;c[f>>2]=(d[g>>0]|0)-65+10-(c[h>>2]|0);k=c[f>>2]|0;i=e;return k|0}c[f>>2]=-1;k=c[f>>2]|0;i=e;return k|0}function ld(){var a=0;a=70344;C=c[a+4>>2]|0;return c[a>>2]|0}function md(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=c[16];c[b+4>>2]=c[17];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function nd(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+32|0;if((i|0)>=(j|0))U();b=a+8|0;d=a;e=a+16|0;jb(e|0,0)|0;f=c[e>>2]|0;g=Xw(f|0,((f|0)<0)<<31>>31|0,1e3,0)|0;f=Xw(g|0,C|0,1e3,0)|0;g=c[e+4>>2]|0;e=Gw(f|0,C|0,g|0,((g|0)<0)<<31>>31|0)|0;g=70344;f=Gw(e|0,C|0,c[g>>2]|0,c[g+4>>2]|0)|0;g=d;c[g>>2]=f;c[g+4>>2]=C;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function od(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=c[17588];c[b+4>>2]=c[17589];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+16|0;f=b+8|0;g=b;h=nd()|0;k=g;c[k>>2]=h;c[k+4>>2]=C;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];g=a;k=c[g+4>>2]|0;h=e;l=c[h+4>>2]|0;if(k>>>0>l>>>0|((k|0)==(l|0)?(c[g>>2]|0)>>>0>(c[h>>2]|0)>>>0:0)){h=od()|0;g=d;c[g>>2]=h;c[g+4>>2]=C;m=d;n=m;o=c[n>>2]|0;p=m+4|0;q=p;r=c[q>>2]|0;C=r;i=b;return o|0}else{g=e;e=a;a=Fw(c[g>>2]|0,c[g+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0)|0;e=f;c[e>>2]=a;c[e+4>>2]=C;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];m=d;n=m;o=c[n>>2]|0;p=m+4|0;q=p;r=c[q>>2]|0;C=r;i=b;return o|0}return 0}function qd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=sv(c[e>>2]|0)|0;f=Gw(0,b|0,sv(c[e+4>>2]|0)|0,0)|0;i=d;return f|0}function rd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=wv(c[e>>2]|0)|0;f=Gw(0,b|0,wv(c[e+4>>2]|0)|0,0)|0;i=d;return f|0}function sd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=td(c[d>>2]|0)|0;i=b;return a|0}function td(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ot(c[d>>2]|0)|0;i=b;return a|0}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function vd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ud(1,c[d>>2]|0)|0;i=b;return a|0}function wd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ve(c[d>>2]|0)|0;i=b;return a|0}function xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d;c[e>>2]=a;c[g>>2]=b;c[f>>2]=vd(Ye(c[e>>2]|0,g)|0)|0;i=d;return c[f>>2]|0}function yd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=vd(Ff(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;i=f;return e|0}function zd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[m>>2]=e;c[l>>2]=Sf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,m)|0;m=vd(c[l>>2]|0)|0;i=f;return m|0}function Ad(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Ef(c[d>>2]|0);i=b;return}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=Uf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function Cd(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Gf(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Dd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Qf(c[d>>2]|0)|0;i=b;return a|0}function Ed(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Of(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Fd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ep(c[d>>2]|0)|0;i=b;return a|0}function Gd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Gp(c[d>>2]|0);i=b;return}function Hd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=jo(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}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,h=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=vd(Mo(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)|0;i=g;return f|0}function Jd(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=vd(Qo(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)|0;i=g;return f|0}function Kd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Eo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Ld(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Fo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Md(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=yo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Nd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=kn(c[d>>2]|0)|0;i=b;return a|0}function Od(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;mn(c[d>>2]|0);i=b;return}function Pd(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=vd(Jh(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)|0;i=e;return d|0}function Qd(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=wn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Rd(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=xn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Sd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[g>>2]|0;g=c[h>>2]|0;h=c[k>>2]|0;k=fn(e,g,h,eh(c[l>>2]|0,1)|0)|0;i=f;return k|0}function Td(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[g>>2]|0;g=c[h>>2]|0;h=c[k>>2]|0;On(e,g,h,eh(c[l>>2]|0,1)|0);i=f;return}function Ud(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Zn(c[d>>2]|0)|0;i=b;return a|0}function Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=_n(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;bo(c[e>>2]|0,c[f>>2]|0);i=d;return}function Xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=tp(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Yd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Ip(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Zd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=(Te()|0)!=0;d=c[h>>2]|0;if(e){c[g>>2]=vd(jh(d,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;n=c[g>>2]|0;i=f;return n|0}else{c[d>>2]=0;c[g>>2]=vd(176)|0;n=c[g>>2]|0;i=f;return n|0}return 0}function _d(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;oh(c[d>>2]|0);i=b;return}function $d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(Te()|0){c[f>>2]=ae(wh(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function ae(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=be(32,c[d>>2]|0)|0;i=b;return a|0}function be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=ud(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function ce(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(Te()|0){c[f>>2]=ae(yh(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function de(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,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if(Te()|0){c[h>>2]=vd(ph(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0;p=c[h>>2]|0;i=g;return p|0}if(c[l>>2]|0)Sw(c[l>>2]|0,66,c[m>>2]|0)|0;c[h>>2]=vd(176)|0;p=c[h>>2]|0;i=g;return p|0}function ee(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,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if(Te()|0){c[h>>2]=vd(th(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0;p=c[h>>2]|0;i=g;return p|0}else{c[h>>2]=vd(176)|0;p=c[h>>2]|0;i=g;return p|0}return 0}function fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;d=(Te()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=vd(Jj(b,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[b>>2]=0;c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function ge(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(Te()|0){c[f>>2]=vd(Kj(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function he(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(Te()|0){c[d>>2]=vd(Lj(c[e>>2]|0)|0)|0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=vd(176)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function ie(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=(Te()|0)!=0;a=c[f>>2]|0;if(b){c[e>>2]=vd(Mj(a,c[g>>2]|0)|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[a>>2]=0;c[e>>2]=vd(176)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function je(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;d=(Te()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=vd(Fi(b,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[b>>2]=0;c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function ke(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Ni(c[d>>2]|0);i=b;return}function le(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Mi(c[d>>2]|0);i=b;return}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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(Te()|0)){i=e;return}Oi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function ne(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=_i(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function oe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(Te()|0))Sg(21700,1175,21713,0,21733);Wi(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function pe(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(Te()|0){c[d>>2]=aj(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}else{Sg(21700,1198,21765,0,21782);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}return 0}function qe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=bj(c[d>>2]|0)|0;i=b;return a|0}function re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(Te()|0){c[f>>2]=vd(Ui(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=vd(176)|0;l=c[f>>2]|0;i=e;return l|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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(Te()|0)){Sg(21700,1287,21812,1,21733);Og()}Xm(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function te(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(Te()|0)){Sg(21700,1340,21827,1,21733);Og()}$m(c[e>>2]|0,c[f>>2]|0);i=d;return}function ue(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;fh(c[d>>2]|0);i=b;return}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;tf(c[e>>2]|0,c[f>>2]|0);i=d;return}function we(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;hf(c[d>>2]|0);i=b;return}function xe(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(c[17610]|0){c[d>>2]=wb[c[17610]&15](c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=c[e>>2];f=c[d>>2]|0;i=b;return f|0}return 0}function ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[f>>2]=ot(c[e>>2]|0)|0;if(c[17612]|0?(Jg()|0)==0:0)xb[c[17612]&7](c[17611]|0,c[e>>2]|0,c[f>>2]|0);Sg(21845,86,21852,1,c[f>>2]|0);ze(21870);ze(c[f>>2]|0);ze(22301);Gg();fb()}function ze(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;c[d>>2]=a;a=c[d>>2]|0;c[b>>2]=Qv(2,a,Tu(c[d>>2]|0)|0)|0;i=b;return}function Ae(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;c[17615]=c[d>>2];i=b;return}function Be(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return (c[17615]|0)>=(c[d>>2]|0)|0}function Ce(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;g=e+12|0;h=e+8|0;k=e+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(c[17613]|0)Cb[c[17613]&1](c[17614]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);else{switch(c[g>>2]|0){case 30:case 20:case 10:case 0:break;case 40:{Iv(21885,c[3960]|0)|0;break}case 50:{Iv(21893,c[3960]|0)|0;break}case 100:{Iv(21907,c[3960]|0)|0;break}default:{d=c[3960]|0;c[f>>2]=c[g>>2];pv(d,21913,f)|0}}Fu(c[3960]|0,c[h>>2]|0,c[k>>2]|0)|0}if((c[g>>2]|0)==40|(c[g>>2]|0)==50){Sg(21845,140,21938,1,21949);Gg();fb()}else{i=e;return}}function De(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+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Ce(c[f>>2]|0,c[g>>2]|0,h);i=e;return}function Ee(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;g=e+20|0;h=e+16|0;k=e+12|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;d=c[h>>2]|0;h=c[k>>2]|0;c[f>>2]=c[g>>2];c[f+4>>2]=d;c[f+8>>2]=h;De(50,21979,f);fb()}function Fe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;h=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[k>>2]|0;k=c[l>>2]|0;l=c[m>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=e;c[g+8>>2]=k;c[g+12>>2]=l;De(50,22009,g);fb()}function Ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;Ce(10,c[e>>2]|0,f);i=d;return}function He(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e;c[e+20>>2]=a;c[f>>2]=b;c[g>>2]=d;Ce(10,c[f>>2]|0,g);i=e;return 0}function Ie(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;Ce(30,c[e>>2]|0,f);i=d;return}function Je(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;Ce(40,c[e>>2]|0,f);fb()}function Ke(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;Ce(50,c[e>>2]|0,f);fb()}function Le(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;Ce(100,c[e>>2]|0,f);i=d;return}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;c[e>>2]=a;if(!(c[e>>2]|0)){i=d;return}c[f>>2]=b;Ce(0,c[e>>2]|0,f);i=d;return}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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Oe(c[f>>2]|0,22043,c[g>>2]|0,c[h>>2]|0);i=e;return}function Oe(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+96|0;if((i|0)>=(j|0))U();k=h+56|0;l=h+40|0;m=h+32|0;n=h+24|0;o=h+16|0;p=h+8|0;q=h;r=h+84|0;s=h+80|0;t=h+76|0;u=h+72|0;v=h+68|0;w=h+64|0;x=h+60|0;c[r>>2]=b;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=0;c[w>>2]=0;if((c[r>>2]|0?a[c[r>>2]>>0]|0:0)?(c[v>>2]=1,g=c[s>>2]|0,c[q>>2]=c[r>>2],c[q+4>>2]=g,Le(22045,q),(c[u>>2]|0?(a[(c[s>>2]|0)+1>>0]|0)==91:0)&(c[t>>2]|0)!=0):0){Me(22301,p);c[s>>2]=22043;c[o>>2]=Tu(c[r>>2]|0)|0;c[o+4>>2]=76084;Le(22051,o)}a:do if(c[u>>2]|0){c[x>>2]=c[t>>2];while(1){o=c[u>>2]|0;c[u>>2]=o+-1;if(!o)break a;c[n>>2]=d[c[x>>2]>>0];Me(22057,n);if(c[v>>2]|0?(o=(c[w>>2]|0)+1|0,c[w>>2]=o,(o|0)==32&(c[u>>2]|0)!=0):0){c[w>>2]=0;Me(22062,m);o=Tu(c[r>>2]|0)|0;p=Tu(c[s>>2]|0)|0;c[l>>2]=o;c[l+4>>2]=76084;c[l+8>>2]=p;c[l+12>>2]=76084;Le(22066,l)}c[x>>2]=(c[x>>2]|0)+1}}while(0);if(!(c[r>>2]|0)){i=h;return}Me(22301,k);i=h;return}function Pe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+64|0;if((i|0)>=(j|0))U();e=d;f=d+28|0;g=d+24|0;h=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d+32|0;c[f>>2]=a;c[g>>2]=b;if(!(c[g>>2]|0)){Oe(c[f>>2]|0?c[f>>2]|0:22043,22074,0,0);i=d;return}if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0){c[n>>2]=tp(c[g>>2]|0,m)|0;c[e>>2]=c[m>>2];Cu(o,30,22082,e)|0;Oe(c[f>>2]|0?c[f>>2]|0:22043,o,c[n>>2]|0,(((c[m>>2]|0)+7|0)>>>0)/8|0);i=d;return}c[h>>2]=Io(c[g>>2]|0,0,k,l)|0;if(!(c[h>>2]|0)){Oe(c[f>>2]|0?c[f>>2]|0:22043,22092,0,0);i=d;return}g=c[f>>2]|0;f=c[l>>2]|0?22107:22109;if(c[k>>2]|0)Oe(g,f,c[h>>2]|0,c[k>>2]|0);else Oe(g,f,76084,1);hf(c[h>>2]|0);i=d;return}function Qe(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+32|0;n=e;o=e+8|0;c[f>>2]=b;c[g>>2]=(((c[f>>2]|0)!=0^1)&1)+(c[f>>2]|0)+63&-64;f=c[g>>2]|0;c[h>>2]=Wa()|0;g=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))U();c[k>>2]=g;c[l>>2]=f;a[m>>0]=0;f=n;c[f>>2]=d[m>>0];c[f+4>>2]=0;while(1){if(!(c[k>>2]&7|0?(c[l>>2]|0)!=0:0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}if((c[l>>2]|0)>>>0>=8){f=n;g=Xw(c[f>>2]|0,c[f+4>>2]|0,16843009,16843009)|0;f=n;c[f>>2]=g;c[f+4>>2]=C;do{c[o>>2]=c[k>>2];f=n;g=c[f+4>>2]|0;b=c[o>>2]|0;c[b>>2]=c[f>>2];c[b+4>>2]=g;c[l>>2]=(c[l>>2]|0)-8;c[k>>2]=(c[k>>2]|0)+8}while((c[l>>2]|0)>>>0>=8)}while(1){if(!(c[l>>2]|0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}Aa(c[h>>2]|0);i=e;return}function Re(){return}function Se(){st(33);ye(pt(c[(fu()|0)>>2]|0)|0,22111)}function Te(){if(!(c[17616]|0))Ue();return Ug()|0}function Ue(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=0;if(c[17616]|0){i=a;return}c[17616]=1;Km(0);Ig(c[17617]|0);eg();c[b>>2]=Ah()|0;if((((((c[b>>2]|0)==0?(c[b>>2]=ij()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=Nj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=jj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=tg()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=gp()|0,(c[b>>2]|0)==0):0){i=a;return}Ee(22126,123,22135)}function Ve(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+36|0;f=d+32|0;g=d+28|0;h=d+24|0;k=d+20|0;l=d+16|0;m=d+12|0;n=d+8|0;o=d+4|0;p=d;c[f>>2]=b;c[g>>2]=22147;if((c[f>>2]|0?(a[c[f>>2]>>0]|0)==1:0)?(a[(c[f>>2]|0)+1>>0]|0)==1:0){c[e>>2]=Kp()|0;q=c[e>>2]|0;i=d;return q|0}Ue();b=c[g>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=b;q=c[e>>2]|0;i=d;return q|0}c[p>>2]=We(b,h,k,l)|0;if(!(c[p>>2]|0)){c[e>>2]=0;q=c[e>>2]|0;i=d;return q|0}if(!(We(c[f>>2]|0,m,n,o)|0)){c[e>>2]=0;q=c[e>>2]|0;i=d;return q|0}do if((c[h>>2]|0)<=(c[m>>2]|0)){if((c[h>>2]|0)==(c[m>>2]|0)?(c[k>>2]|0)>(c[n>>2]|0):0)break;if(((c[h>>2]|0)==(c[m>>2]|0)?(c[k>>2]|0)==(c[n>>2]|0):0)?(c[l>>2]|0)>(c[o>>2]|0):0)break;if(((c[h>>2]|0)==(c[m>>2]|0)?(c[k>>2]|0)==(c[n>>2]|0):0)?(c[l>>2]|0)==(c[o>>2]|0):0)break;c[e>>2]=0;q=c[e>>2]|0;i=d;return q|0}while(0);c[e>>2]=c[g>>2];q=c[e>>2]|0;i=d;return q|0}function We(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[k>>2]=Xe(c[k>>2]|0,c[l>>2]|0)|0;if(c[k>>2]|0?(a[c[k>>2]>>0]|0)==46:0){c[k>>2]=(c[k>>2]|0)+1;c[k>>2]=Xe(c[k>>2]|0,c[m>>2]|0)|0;if(c[k>>2]|0?(a[c[k>>2]>>0]|0)==46:0){c[k>>2]=(c[k>>2]|0)+1;c[k>>2]=Xe(c[k>>2]|0,c[n>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=c[k>>2];o=c[h>>2]|0;i=g;return o|0}else{c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}}c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}c[h>>2]=0;o=c[h>>2]|0;i=g;return o|0}function Xe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;if((a[c[g>>2]>>0]|0)==48?qw(a[(c[g>>2]|0)+1>>0]|0)|0:0){c[f>>2]=0;l=c[f>>2]|0;i=e;return l|0}while(1){d=(qw(a[c[g>>2]>>0]|0)|0)!=0;m=c[k>>2]|0;if(!d)break;c[k>>2]=m*10;c[k>>2]=(c[k>>2]|0)+((a[c[g>>2]>>0]|0)-48);c[g>>2]=(c[g>>2]|0)+1}c[c[h>>2]>>2]=m;c[f>>2]=(c[k>>2]|0)<0?0:c[g>>2]|0;l=c[f>>2]|0;i=e;return l|0}function Ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;i=i+80|0;if((i|0)>=(j|0))U();e=d+72|0;f=d+68|0;g=d+64|0;h=d+60|0;k=d+56|0;l=d+52|0;m=d+48|0;n=d+44|0;o=d+40|0;p=d+36|0;q=d+32|0;r=d+28|0;s=d+24|0;t=d+20|0;u=d+16|0;v=d+12|0;w=d+8|0;x=d+4|0;y=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a:do switch(c[e>>2]|0){case 31:{gg();break}case 44:{Km(0);Qm();break}case 51:{if(Tm()|0)c[g>>2]=1;break}case 13:{Om();break}case 62:case 23:break;case 14:{Hg();break}case 30:{Ue();pg(0);break}case 37:{Ue();c[17618]=1;break}case 24:{Ue();b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;pg(z);if((og()|0)&4|0)c[g>>2]=1;break}case 25:{Ue();Gg();break}case 27:{Km(0);mg(og()|0|1);break}case 28:{Km(0);mg(og()|0|2);break}case 29:{Km(0);mg((og()|0)&-3);break}case 22:{Ue();Pm();break}case 45:{Km(0);z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;Ym(b);break}case 46:{Km(0);if(Te()|0)Zm();break}case 19:{Km(0);b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;Ae(z);break}case 20:{z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[17619]=c[17619]|b;break}case 21:{b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[17619]=c[17619]&~z;break}case 36:{Ue();break}case 40:{if(c[17616]|0)c[g>>2]=1;break}case 39:{if(c[17620]|0)c[g>>2]=1;break}case 38:{if(!(c[17620]|0)){Ue();Lm(0);c[17620]=1;Te()|0}break}case 47:{Km(0);Ue();break}case 48:{Km(0);Lm(1);if(Te()|0)_m();break}case 52:{c[g>>2]=Ze(60)|0;break}case 49:{Km(0);z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;Rm(b);break}case 50:{Km(0);Lm(1);b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;Sm(((z|0)!=0^1^1)&1)|0;break}case 70:{Mm();break}case 53:{z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[h>>2]=b;Km(0);$e(c[h>>2]|0?28:27,c[h>>2]|0);break}case 54:{Km(0);if(bh()|0)c[g>>2]=1;break}case 55:{if(Jg()|0?(b=(Tg()|0)!=0,!(b|(c[17618]|0)!=0)):0)c[g>>2]=1;break}case 56:{Km(0);if(!(c[17616]|0)){c[17617]=1;break a}if(ch()|0)Vg(1)|0;if(Ug()|0)c[g>>2]=1;break}case 57:{Ue();c[g>>2]=Vg(1)|0;break}case 58:{b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[k>>2]=z;z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[l>>2]=b;b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[m>>2]=z;z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[n>>2]=b;b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[o>>2]=z;z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[p>>2]=b;b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[q>>2]=z;z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[r>>2]=b;if(Te()|0){c[g>>2]=bn(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;break a}else{c[g>>2]=176;break a}break}case 59:{b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[s>>2]=z;z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[t>>2]=b;b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[u>>2]=z;if(Te()|0){c[g>>2]=cn(c[s>>2]|0,c[t>>2]|0,c[u>>2]|0)|0;break a}else{c[g>>2]=176;break a}break}case 60:{z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[v>>2]=b;dn(c[v>>2]|0);break}case 61:{b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[g>>2]=af(z)|0;break}case 63:{z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[w>>2]=b;c[g>>2]=bg(c[w>>2]|0)|0;break}case 64:{if(c[17616]|0){c[g>>2]=1;break a}else{Km(0);Qg();break a}break}case 65:{b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;c[x>>2]=z;if((c[x>>2]|0)>0)Km(c[x>>2]|0);break}case 66:{z=c[f>>2]|0;a=(c[z>>2]|0)+(4-1)&~(4-1);b=c[a>>2]|0;c[z>>2]=a+4;c[y>>2]=b;if(c[y>>2]|0){b=Nm(((c[17616]|0)!=0^1)&1)|0;c[c[y>>2]>>2]=b}break}case 67:{Km(0);mg(og()|0|8);break}case 68:{Km(0);mg(og()|0|16);break}case 72:case 71:{c[g>>2]=69;break}default:{Km(0);c[g>>2]=61}}while(0);i=d;return c[g>>2]|0}function Ze(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=_e(1,c[d>>2]|0)|0;i=b;return a|0}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function $e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;i=i+128|0;if((i|0)>=(j|0))U();e=d+88|0;f=d+80|0;g=d+72|0;h=d+64|0;k=d+48|0;l=d+24|0;m=d+16|0;n=d+8|0;o=d;p=d+116|0;q=d+112|0;r=d+108|0;s=d+104|0;t=d+100|0;u=d+96|0;c[p>>2]=a;c[q>>2]=b;b=c[p>>2]|0;a=c[q>>2]|0;c[o>>2]=22147;sb[b&63](a,22161,o)|0;o=c[p>>2]|0;a=c[q>>2]|0;c[n>>2]=22187;sb[o&63](a,22174,n)|0;n=c[p>>2]|0;a=c[q>>2]|0;c[m>>2]=22212;sb[n&63](a,22199,m)|0;m=c[p>>2]|0;a=c[q>>2]|0;c[l>>2]=22233;sb[m&63](a,22220,l)|0;sb[c[p>>2]&63](c[q>>2]|0,22247,d+32|0)|0;sb[c[p>>2]&63](c[q>>2]|0,22263,d+40|0)|0;l=c[p>>2]|0;a=c[q>>2]|0;c[k>>2]=fp()|0;sb[l&63](a,22275,k)|0;c[r>>2]=cg()|0;sb[c[p>>2]&63](c[q>>2]|0,22288,d+56|0)|0;c[t>>2]=0;while(1){k=dg(c[t>>2]|0,s)|0;c[u>>2]=k;if(!k)break;if(c[r>>2]&c[s>>2]|0){k=c[p>>2]|0;a=c[q>>2]|0;c[h>>2]=c[u>>2];sb[k&63](a,22297,h)|0}c[t>>2]=(c[t>>2]|0)+1}sb[c[p>>2]&63](c[q>>2]|0,22301,g)|0;g=c[p>>2]|0;h=c[q>>2]|0;s=(Jg()|0)!=0;r=(Pg()|0)!=0;c[f>>2]=s?121:110;c[f+4>>2]=r?121:110;sb[g&63](h,22303,f)|0;c[t>>2]=Nm(0)|0;switch(c[t>>2]|0){case 1:{c[u>>2]=22321;v=c[p>>2]|0;w=c[q>>2]|0;x=c[u>>2]|0;y=c[t>>2]|0;c[e>>2]=x;z=e+4|0;c[z>>2]=y;sb[v&63](w,22355,e)|0;i=d;return}case 2:{c[u>>2]=22330;v=c[p>>2]|0;w=c[q>>2]|0;x=c[u>>2]|0;y=c[t>>2]|0;c[e>>2]=x;z=e+4|0;c[z>>2]=y;sb[v&63](w,22355,e)|0;i=d;return}case 3:{c[u>>2]=22335;v=c[p>>2]|0;w=c[q>>2]|0;x=c[u>>2]|0;y=c[t>>2]|0;c[e>>2]=x;z=e+4|0;c[z>>2]=y;sb[v&63](w,22355,e)|0;i=d;return}default:Ee(22126,321,22342)}}function af(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;switch(c[d>>2]|0){case 30111:{c[e>>2]=tt(1072)|0;break}case 30112:{c[e>>2]=ut(1072)|0;break}case 30113:{c[e>>2]=vt(1072)|0;break}case 30114:{c[e>>2]=wt(1072)|0;break}default:c[e>>2]=61}i=b;return c[e>>2]|0}function bf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;cf(c[d>>2]|0,0,e)|0;i=b;return c[e>>2]|0}function cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;do if(c[g>>2]&1|0?!(df()|0):0)if(c[17622]|0){c[l>>2]=wb[c[17622]&15](c[f>>2]|0)|0;break}else{c[l>>2]=ig(c[f>>2]|0)|0;break}else m=6;while(0);do if((m|0)==6)if(c[17621]|0){c[l>>2]=wb[c[17621]&15](c[f>>2]|0)|0;break}else{c[l>>2]=hg(c[f>>2]|0)|0;break}while(0);if(c[l>>2]|0){c[c[h>>2]>>2]=c[l>>2];n=c[k>>2]|0;i=e;return n|0}if(!(c[(fu()|0)>>2]|0))st(12);c[k>>2]=pt(c[(fu()|0)>>2]|0)|0;n=c[k>>2]|0;i=e;return n|0}function df(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;do if(c[17618]|0)if(Pg()|0){c[17618]=0;c[b>>2]=0;break}else{c[b>>2]=c[17618];break}else c[b>>2]=0;while(0);i=a;return c[b>>2]|0}function ef(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;cf(c[d>>2]|0,1,e)|0;i=b;return c[e>>2]|0}function ff(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;do if(!(df()|0))if(c[17623]|0){c[d>>2]=wb[c[17623]&15](c[e>>2]|0)|0;break}else{c[d>>2]=Fg(c[e>>2]|0)|0;break}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;b=c[g>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=bf(b)|0;k=c[e>>2]|0;i=d;return k|0}if(!b){hf(c[f>>2]|0);c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if(c[17624]|0)c[h>>2]=Bb[c[17624]&7](c[f>>2]|0,c[g>>2]|0)|0;else c[h>>2]=jg(c[f>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0?(c[(fu()|0)>>2]|0)==0:0)st(12);c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function hf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=c[(fu()|0)>>2];if(c[17625]|0)ub[c[17625]&15](c[d>>2]|0);else lg(c[d>>2]|0);if(!(c[e>>2]|0)){i=b;return}st(c[e>>2]|0);i=b;return}function jf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=R(c[f>>2]|0,c[g>>2]|0)|0;if(c[g>>2]|0?(((c[h>>2]|0)>>>0)/((c[g>>2]|0)>>>0)|0|0)!=(c[f>>2]|0):0){st(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=bf(c[h>>2]|0)|0;if(c[k>>2]|0)Sw(c[k>>2]|0,0,c[h>>2]|0)|0;c[e>>2]=c[k>>2];l=c[e>>2]|0;i=d;return l|0}function kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=R(c[f>>2]|0,c[g>>2]|0)|0;if(c[g>>2]|0?(((c[h>>2]|0)>>>0)/((c[g>>2]|0)>>>0)|0|0)!=(c[f>>2]|0):0){st(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=ef(c[h>>2]|0)|0;if(c[k>>2]|0)Sw(c[k>>2]|0,0,c[h>>2]|0)|0;c[e>>2]=c[k>>2];l=c[e>>2]|0;i=d;return l|0}function lf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=0;c[f>>2]=0;c[f>>2]=Tu(c[d>>2]|0)|0;a=(ff(c[d>>2]|0)|0)!=0;g=(c[f>>2]|0)+1|0;if(a)c[e>>2]=ef(g)|0;else c[e>>2]=bf(g)|0;if(!(c[e>>2]|0)){h=c[e>>2]|0;i=b;return h|0}dv(c[e>>2]|0,c[d>>2]|0)|0;h=c[e>>2]|0;i=b;return h|0}function mf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;while(1){a=bf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(Jg()|0)==0;if(!(a&(c[17626]|0)!=0)){f=5;break}if(!(sb[c[17626]&63](c[17627]|0,c[d>>2]|0,0)|0)){f=5;break}}if((f|0)==5)ye(pt(c[(fu()|0)>>2]|0)|0,0);else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function nf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;while(1){b=gf(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=b;if(!((b|0)!=0^1)){h=6;break}b=(Jg()|0)==0;if(!(b&(c[17626]|0)!=0)){h=5;break}b=c[17626]|0;a=c[17627]|0;k=c[f>>2]|0;l=(ff(c[e>>2]|0)|0)!=0;if(!(sb[b&63](a,k,l?3:2)|0)){h=5;break}}if((h|0)==5)ye(pt(c[(fu()|0)>>2]|0)|0,0);else if((h|0)==6){i=d;return c[g>>2]|0}return 0}function of(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;while(1){a=ef(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(Jg()|0)==0;if(!(a&(c[17626]|0)!=0)){f=5;break}if(!(sb[c[17626]&63](c[17627]|0,c[d>>2]|0,1)|0)){f=5;break}}if((f|0)==5){d=pt(c[(fu()|0)>>2]|0)|0;ye(d,xe(22372)|0)}else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function pf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=R(c[e>>2]|0,c[f>>2]|0)|0;if(c[f>>2]|0?(((c[g>>2]|0)>>>0)/((c[f>>2]|0)>>>0)|0|0)!=(c[e>>2]|0):0){st(12);ye(pt(c[(fu()|0)>>2]|0)|0,0)}c[h>>2]=mf(c[g>>2]|0)|0;Sw(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function qf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=R(c[e>>2]|0,c[f>>2]|0)|0;if(c[f>>2]|0?(((c[g>>2]|0)>>>0)/((c[f>>2]|0)>>>0)|0|0)!=(c[e>>2]|0):0){st(12);ye(pt(c[(fu()|0)>>2]|0)|0,0)}c[h>>2]=of(c[g>>2]|0)|0;Sw(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function rf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;do{a=lf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){h=8;break}c[f>>2]=Tu(c[d>>2]|0)|0;c[g>>2]=((ff(c[d>>2]|0)|0)!=0^1^1)&1;a=(Jg()|0)==0;if(!(a&(c[17626]|0)!=0))break}while((sb[c[17626]&63](c[17627]|0,c[f>>2]|0,c[g>>2]|0)|0)!=0);if((h|0)==8){i=b;return c[e>>2]|0}e=pt(c[(fu()|0)>>2]|0)|0;if(!(c[g>>2]|0)){k=0;ye(e,k)}k=xe(22372)|0;ye(e,k);return 0}function sf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(Jg()|0)c[d>>2]=0;else c[d>>2]=c[17619]&c[e>>2];i=b;return c[d>>2]|0}function tf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;kj(c[e>>2]|0,c[f>>2]|0);Im(c[e>>2]|0,c[f>>2]|0);i=d;return}function uf(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;if(!(c[l>>2]|0)){c[k>>2]=45;s=c[k>>2]|0;i=g;return s|0}c[c[l>>2]>>2]=0;if(!((((c[o>>2]|0)<0|(c[o>>2]|0)>1)^1)&(c[m>>2]|0)!=0)){c[k>>2]=45;s=c[k>>2]|0;i=g;return s|0}if((c[n>>2]|0)!=0|(c[o>>2]|0)!=0){if((c[n>>2]|0)==0&(c[o>>2]|0)!=0)c[n>>2]=Tu(c[m>>2]|0)|0}else{c[n>>2]=vf(c[m>>2]|0,0,0,q)|0;if(!(c[n>>2]|0)){c[k>>2]=c[q>>2];s=c[k>>2]|0;i=g;return s|0}}c[q>>2]=wf(r,0,c[m>>2]|0,c[n>>2]|0,0,0,h)|0;if(c[q>>2]|0){c[k>>2]=c[q>>2];s=c[k>>2]|0;i=g;return s|0}c[c[l>>2]>>2]=c[r>>2];if(c[p>>2]|0)ub[c[p>>2]&15](c[m>>2]|0);c[k>>2]=0;s=c[k>>2]|0;i=g;return s|0}function vf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+4|0;s=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;if(!(c[m>>2]|0))c[m>>2]=g+12;if(!(c[n>>2]|0))c[n>>2]=g+8;c[c[n>>2]>>2]=0;c[c[m>>2]>>2]=0;if(!(c[k>>2]|0)){c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}if((d[c[k>>2]>>0]|0|0)!=40){c[c[n>>2]>>2]=204;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}c[o>>2]=c[k>>2];a:while(1){if(c[l>>2]|0?(c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0:0){u=12;break}k=d[c[o>>2]>>0]|0;do if(c[q>>2]|0)if((k|0)==58){if(c[l>>2]|0?((c[r>>2]|0)+(c[q>>2]|0)|0)>>>0>=(c[l>>2]|0)>>>0:0){u=17;break a}c[r>>2]=(c[r>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[q>>2]|0);c[q>>2]=0;break}else{if((d[c[o>>2]>>0]|0|0)<48){u=22;break a}if((d[c[o>>2]>>0]|0|0)>57){u=22;break a}c[q>>2]=((c[q>>2]|0)*10|0)+((d[c[o>>2]>>0]|0)-48);break}else{if((k|0)==40){if(c[p>>2]|0){u=25;break a}c[s>>2]=(c[s>>2]|0)+1;break}if((d[c[o>>2]>>0]|0|0)==41){if(!(c[s>>2]|0)){u=29;break a}if(c[p>>2]|0){u=31;break a}f=(c[s>>2]|0)+-1|0;c[s>>2]=f;if(f|0)break;else{u=33;break a}}if((d[c[o>>2]>>0]|0|0)==91){if(c[p>>2]|0){u=36;break a}c[p>>2]=c[o>>2];break}if((d[c[o>>2]>>0]|0|0)==93){if(!(c[p>>2]|0)){u=40;break a}c[p>>2]=0;break}if((d[c[o>>2]>>0]|0|0)<48){u=47;break a}if((d[c[o>>2]>>0]|0|0)>57){u=47;break a}if((d[c[o>>2]>>0]|0|0)==48){u=45;break a}c[q>>2]=(d[c[o>>2]>>0]|0)-48}while(0);c[o>>2]=(c[o>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+1}switch(u|0){case 12:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=202;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 17:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=202;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 22:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=201;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 25:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=209;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 29:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=203;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 31:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=209;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 33:{u=(c[r>>2]|0)+1|0;c[r>>2]=u;c[h>>2]=u;t=c[h>>2]|0;i=g;return t|0}case 36:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=208;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 40:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=209;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 45:{c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=207;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}case 47:{if((d[c[o>>2]>>0]|0|0)!=38?(d[c[o>>2]>>0]|0|0)!=92:0){c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=205;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}c[c[m>>2]>>2]=c[r>>2];c[c[n>>2]>>2]=210;c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}}return 0}function wf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+40|0;m=k+36|0;n=k+32|0;o=k+28|0;p=k+24|0;q=k+20|0;r=k+16|0;s=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[s>>2]=h;c[r>>2]=xf(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,s)|0;i=k;return c[r>>2]|0}function xf(e,f,g,h,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0;n=i;i=i+400|0;if((i|0)>=(j|0))U();o=n+16|0;p=n+8|0;q=n+292|0;r=n+288|0;s=n+284|0;t=n+280|0;u=n+276|0;v=n+272|0;w=n+268|0;x=n+264|0;y=n+260|0;z=n+256|0;A=n+252|0;B=n+248|0;D=n+244|0;E=n+240|0;F=n+236|0;G=n+232|0;H=n+228|0;I=n+224|0;J=n+220|0;K=n+216|0;L=n+212|0;M=n+196|0;N=n+192|0;O=n+188|0;P=n+184|0;Q=n+316|0;R=n+180|0;S=n+176|0;T=n+172|0;V=n+314|0;W=n+312|0;X=n+168|0;Y=n+310|0;Z=n+164|0;_=n+160|0;$=n+308|0;aa=n+156|0;ba=n+152|0;ca=n+148|0;da=n+144|0;ea=n+140|0;fa=n+136|0;ga=n+132|0;ha=n+128|0;ia=n+306|0;ja=n+124|0;ka=n+120|0;la=n+116|0;ma=n+304|0;na=n+112|0;oa=n+108|0;pa=n+104|0;qa=n+302|0;ra=n+100|0;sa=n+96|0;ta=n+92|0;ua=n+88|0;va=n+84|0;wa=n+300|0;xa=n+80|0;ya=n+76|0;za=n+354|0;Aa=n+72|0;Ba=n+298|0;Ca=n+68|0;Da=n+64|0;Ea=n+319|0;Fa=n+60|0;Ga=n+296|0;Ha=n+56|0;Ia=n+52|0;Ja=n+48|0;Ka=n+44|0;La=n+40|0;Ma=n+36|0;Na=n+32|0;Oa=n+28|0;Pa=n+24|0;Qa=n+318|0;Ra=n;Sa=n+20|0;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[y>>2]=0;c[B>>2]=0;c[D>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;c[L>>2]=0;c[N>>2]=0;c[O>>2]=0;if(!(c[r>>2]|0)){c[q>>2]=45;Ta=c[q>>2]|0;i=n;return Ta|0}c[c[r>>2]>>2]=0;if(!(c[t>>2]|0)){c[q>>2]=45;Ta=c[q>>2]|0;i=n;return Ta|0}if(!(c[s>>2]|0))c[s>>2]=n+208;c[M+4>>2]=(c[u>>2]|0)+2;if(c[u>>2]|0?ff(c[t>>2]|0)|0:0)c[M>>2]=ef(1+(c[M+4>>2]|0)-1|0)|0;else c[M>>2]=bf(1+(c[M+4>>2]|0)-1|0)|0;a:do if(c[M>>2]|0){c[M+8>>2]=c[M>>2];c[z>>2]=c[t>>2];c[A>>2]=c[u>>2];b:while(1){if(!(c[A>>2]|0)){Ua=220;break}if(!((c[E>>2]|0)==0|(c[F>>2]|0)!=0)){if(!(Bv(22408,a[c[z>>2]>>0]|0)|0)){c[L>>2]=(c[z>>2]|0)-(c[E>>2]|0);c[P>>2]=yf(M,c[L>>2]|0)|0;if(c[P>>2]|0){Ua=18;break}m=M+8|0;l=c[m>>2]|0;c[m>>2]=l+1;a[l>>0]=1;b[Q>>1]=c[L>>2];l=c[M+8>>2]|0;a[l>>0]=a[Q>>0]|0;a[l+1>>0]=a[Q+1>>0]|0;l=M+8|0;c[l>>2]=(c[l>>2]|0)+2;Ow(c[M+8>>2]|0,c[E>>2]|0,c[L>>2]|0)|0;l=M+8|0;c[l>>2]=(c[l>>2]|0)+(c[L>>2]|0);c[E>>2]=0;Ua=20}}else Ua=20;c:do if((Ua|0)==20){Ua=0;if(c[D>>2]|0){l=a[c[z>>2]>>0]|0;if(!(c[K>>2]|0)){if((l|0)==92){c[K>>2]=1;break}if((a[c[z>>2]>>0]|0)!=34)break;c[D>>2]=(c[D>>2]|0)+1;c[T>>2]=yf(M,(c[z>>2]|0)-(c[D>>2]|0)|0)|0;if(c[T>>2]|0){Ua=59;break b}m=M+8|0;k=c[m>>2]|0;c[m>>2]=k+1;a[k>>0]=1;c[R>>2]=c[M+8>>2];b[V>>1]=0;k=c[M+8>>2]|0;a[k>>0]=a[V>>0]|0;a[k+1>>0]=a[V+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;c[S>>2]=zf(c[D>>2]|0,(c[z>>2]|0)-(c[D>>2]|0)|0,c[M+8>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[S>>2]|0);b[W>>1]=c[S>>2];k=c[R>>2]|0;a[k>>0]=a[W>>0]|0;a[k+1>>0]=a[W+1>>0]|0;c[R>>2]=(c[R>>2]|0)+2;c[D>>2]=0;break}switch(l|0){case 92:case 39:case 34:case 114:case 102:case 110:case 118:case 116:case 98:{c[K>>2]=0;break c;break}case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{if((c[A>>2]|0)>>>0<=2){Ua=29;break b}if((a[(c[z>>2]|0)+1>>0]|0)<48){Ua=29;break b}if((a[(c[z>>2]|0)+1>>0]|0)>55){Ua=29;break b}if((a[(c[z>>2]|0)+2>>0]|0)<48){Ua=29;break b}if((a[(c[z>>2]|0)+2>>0]|0)>55){Ua=29;break b}c[z>>2]=(c[z>>2]|0)+2;c[A>>2]=(c[A>>2]|0)-2;c[K>>2]=0;break c;break}case 120:{if((c[A>>2]|0)>>>0<=2){Ua=44;break b}if(!((a[(c[z>>2]|0)+1>>0]|0)>=48?(a[(c[z>>2]|0)+1>>0]|0)<=57:0))Ua=34;do if((Ua|0)==34){Ua=0;if((a[(c[z>>2]|0)+1>>0]|0)>=65?(a[(c[z>>2]|0)+1>>0]|0)<=70:0)break;if((a[(c[z>>2]|0)+1>>0]|0)<97){Ua=44;break b}if((a[(c[z>>2]|0)+1>>0]|0)>102){Ua=44;break b}}while(0);if(!((a[(c[z>>2]|0)+2>>0]|0)>=48?(a[(c[z>>2]|0)+2>>0]|0)<=57:0))Ua=40;do if((Ua|0)==40){Ua=0;if((a[(c[z>>2]|0)+2>>0]|0)>=65?(a[(c[z>>2]|0)+2>>0]|0)<=70:0)break;if((a[(c[z>>2]|0)+2>>0]|0)<97){Ua=44;break b}if((a[(c[z>>2]|0)+2>>0]|0)>102){Ua=44;break b}}while(0);c[z>>2]=(c[z>>2]|0)+2;c[A>>2]=(c[A>>2]|0)-2;c[K>>2]=0;break c;break}case 13:{if(c[A>>2]|0?(a[(c[z>>2]|0)+1>>0]|0)==10:0){c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}c[K>>2]=0;break c;break}case 10:{if(c[A>>2]|0?(a[(c[z>>2]|0)+1>>0]|0)==13:0){c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}c[K>>2]=0;break c;break}default:{Ua=54;break b}}}if(c[F>>2]|0){if(Bu(a[c[z>>2]>>0]|0)|0){c[J>>2]=(c[J>>2]|0)+1;break}if((a[c[z>>2]>>0]|0)!=35)if(Af(c[z>>2]|0)|0)break;else{Ua=82;break b}if(c[J>>2]&1|0){Ua=66;break b}c[L>>2]=(c[J>>2]|0)/2|0;c[X>>2]=yf(M,c[L>>2]|0)|0;if(c[X>>2]|0){Ua=68;break b}l=M+8|0;k=c[l>>2]|0;c[l>>2]=k+1;a[k>>0]=1;b[Y>>1]=c[L>>2];k=c[M+8>>2]|0;a[k>>0]=a[Y>>0]|0;a[k+1>>0]=a[Y+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;c[F>>2]=(c[F>>2]|0)+1;while(1){if((c[F>>2]|0)>>>0>=(c[z>>2]|0)>>>0)break;if(!(Af(c[F>>2]|0)|0)){c[Z>>2]=Bf(d[c[F>>2]>>0]|0)|0;c[F>>2]=(c[F>>2]|0)+1;while(1){if((c[F>>2]|0)>>>0>=(c[z>>2]|0)>>>0)break;if(!(Af(c[F>>2]|0)|0))break;c[F>>2]=(c[F>>2]|0)+1}if((c[F>>2]|0)>>>0<(c[z>>2]|0)>>>0){c[Z>>2]=c[Z>>2]<<4;k=Bf(d[c[F>>2]>>0]|0)|0;c[Z>>2]=(c[Z>>2]|0)+k}k=c[Z>>2]&255;l=M+8|0;m=c[l>>2]|0;c[l>>2]=m+1;a[m>>0]=k}c[F>>2]=(c[F>>2]|0)+1}c[F>>2]=0;break}if(c[G>>2]|0){if((a[c[z>>2]>>0]|0)!=124)break;c[G>>2]=0;break}if(c[B>>2]|0){if((a[c[z>>2]>>0]|0)>=48?(a[c[z>>2]>>0]|0)<=57:0)break;if((a[c[z>>2]>>0]|0)==58){c[L>>2]=mw(c[B>>2]|0)|0;c[B>>2]=0;if((c[L>>2]|0)>>>0>((c[A>>2]|0)-1|0)>>>0){Ua=91;break b}c[_>>2]=yf(M,c[L>>2]|0)|0;if(c[_>>2]|0){Ua=93;break b}k=M+8|0;m=c[k>>2]|0;c[k>>2]=m+1;a[m>>0]=1;b[$>>1]=c[L>>2];m=c[M+8>>2]|0;a[m>>0]=a[$>>0]|0;a[m+1>>0]=a[$+1>>0]|0;m=M+8|0;c[m>>2]=(c[m>>2]|0)+2;Ow(c[M+8>>2]|0,(c[z>>2]|0)+1|0,c[L>>2]|0)|0;m=M+8|0;c[m>>2]=(c[m>>2]|0)+(c[L>>2]|0);c[A>>2]=(c[A>>2]|0)-(c[L>>2]|0);c[z>>2]=(c[z>>2]|0)+(c[L>>2]|0);break}if((a[c[z>>2]>>0]|0)==34){c[B>>2]=0;c[D>>2]=c[z>>2];c[K>>2]=0;break}if((a[c[z>>2]>>0]|0)==35){c[B>>2]=0;c[F>>2]=c[z>>2];c[J>>2]=0;break}if((a[c[z>>2]>>0]|0)!=124){Ua=101;break b}c[B>>2]=0;c[G>>2]=c[z>>2];break}m=a[c[z>>2]>>0]|0;if(!(c[I>>2]|0)){if((m|0)==40){if(c[H>>2]|0){Ua=179;break b}c[La>>2]=yf(M,0)|0;if(c[La>>2]|0){Ua=181;break b}k=M+8|0;l=c[k>>2]|0;c[k>>2]=l+1;a[l>>0]=3;c[O>>2]=(c[O>>2]|0)+1;break}if((a[c[z>>2]>>0]|0)==41){if(c[H>>2]|0){Ua=185;break b}c[Ma>>2]=yf(M,0)|0;if(c[Ma>>2]|0){Ua=187;break b}l=M+8|0;k=c[l>>2]|0;c[l>>2]=k+1;a[k>>0]=4;c[O>>2]=(c[O>>2]|0)+-1;break}k=c[z>>2]|0;if((a[c[z>>2]>>0]|0)==34){c[D>>2]=k;c[K>>2]=0;break}l=c[z>>2]|0;if((a[k>>0]|0)==35){c[F>>2]=l;c[J>>2]=0;break}k=c[z>>2]|0;if((a[l>>0]|0)==124){c[G>>2]=k;break}if((a[k>>0]|0)==91){Va=c[z>>2]|0;if(c[H>>2]|0){Ua=197;break b}c[H>>2]=Va;break}if((a[c[z>>2]>>0]|0)==93){if(!(c[H>>2]|0)){Ua=201;break b}c[H>>2]=0;break}do if((a[c[z>>2]>>0]|0)>=48){if((a[c[z>>2]>>0]|0)>57)break;Wa=c[z>>2]|0;if((a[c[z>>2]>>0]|0)==48){Ua=206;break b}c[B>>2]=Wa;break c}while(0);k=(Bv(22408,a[c[z>>2]>>0]|0)|0)!=0;l=c[z>>2]|0;if(k){c[E>>2]=l;break}if(Af(l)|0)break;Xa=c[z>>2]|0;if((a[c[z>>2]>>0]|0)==123){Ua=212;break b}if(Bv(22507,a[Xa>>0]|0)|0){Ua=214;break b}if(!(c[v>>2]|0)){Ua=218;break b}if((a[c[z>>2]>>0]|0)!=37){Ua=218;break b}c[I>>2]=c[z>>2];break}do if((m|0)!=109?(a[c[z>>2]>>0]|0)!=77:0){if((a[c[z>>2]>>0]|0)==115){if(c[w>>2]|0){l=c[N>>2]|0;c[N>>2]=l+1;c[na>>2]=c[c[(c[w>>2]|0)+(l<<2)>>2]>>2]}else{l=c[x>>2]|0;k=(c[l>>2]|0)+(4-1)&~(4-1);h=c[k>>2]|0;c[l>>2]=k+4;c[na>>2]=h}c[oa>>2]=Tu(c[na>>2]|0)|0;c[pa>>2]=yf(M,c[oa>>2]|0)|0;if(c[pa>>2]|0){Ua=135;break b}h=M+8|0;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=1;b[qa>>1]=c[oa>>2];k=c[M+8>>2]|0;a[k>>0]=a[qa>>0]|0;a[k+1>>0]=a[qa+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;Ow(c[M+8>>2]|0,c[na>>2]|0,c[oa>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[oa>>2]|0);break}if((a[c[z>>2]>>0]|0)==98){if(c[w>>2]|0){k=c[N>>2]|0;c[N>>2]=k+1;c[sa>>2]=c[c[(c[w>>2]|0)+(k<<2)>>2]>>2]}else{k=c[x>>2]|0;h=(c[k>>2]|0)+(4-1)&~(4-1);l=c[h>>2]|0;c[k>>2]=h+4;c[sa>>2]=l}if(c[w>>2]|0){l=c[N>>2]|0;c[N>>2]=l+1;c[ra>>2]=c[c[(c[w>>2]|0)+(l<<2)>>2]>>2]}else{l=c[x>>2]|0;h=(c[l>>2]|0)+(4-1)&~(4-1);k=c[h>>2]|0;c[l>>2]=h+4;c[ra>>2]=k}c[ta>>2]=yf(M,c[sa>>2]|0)|0;if(c[ta>>2]|0){Ua=145;break b}do if(c[sa>>2]|0){if(ff(c[M>>2]|0)|0)break;if(!(ff(c[ra>>2]|0)|0))break;c[ua>>2]=ef(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ua>>2]|0)){Ua=150;break b}c[va>>2]=c[ua>>2];Ow(c[va>>2]|0,c[M>>2]|0,(c[M+8>>2]|0)-(c[M>>2]|0)|0)|0;c[M+8>>2]=(c[va>>2]|0)+((c[M+8>>2]|0)-(c[M>>2]|0));hf(c[M>>2]|0);c[M>>2]=c[ua>>2]}while(0);k=M+8|0;h=c[k>>2]|0;c[k>>2]=h+1;a[h>>0]=1;b[wa>>1]=c[sa>>2];h=c[M+8>>2]|0;a[h>>0]=a[wa>>0]|0;a[h+1>>0]=a[wa+1>>0]|0;h=M+8|0;c[h>>2]=(c[h>>2]|0)+2;Ow(c[M+8>>2]|0,c[ra>>2]|0,c[sa>>2]|0)|0;h=M+8|0;c[h>>2]=(c[h>>2]|0)+(c[sa>>2]|0);break}if((a[c[z>>2]>>0]|0)==100){if(c[w>>2]|0){h=c[N>>2]|0;c[N>>2]=h+1;c[xa>>2]=c[c[(c[w>>2]|0)+(h<<2)>>2]>>2]}else{h=c[x>>2]|0;k=(c[h>>2]|0)+(4-1)&~(4-1);l=c[k>>2]|0;c[h>>2]=k+4;c[xa>>2]=l}c[p>>2]=c[xa>>2];nv(za,22501,p)|0;c[ya>>2]=Tu(za)|0;c[Aa>>2]=yf(M,c[ya>>2]|0)|0;if(c[Aa>>2]|0){Ua=158;break b}l=M+8|0;k=c[l>>2]|0;c[l>>2]=k+1;a[k>>0]=1;b[Ba>>1]=c[ya>>2];k=c[M+8>>2]|0;a[k>>0]=a[Ba>>0]|0;a[k+1>>0]=a[Ba+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;Ow(c[M+8>>2]|0,za|0,c[ya>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[ya>>2]|0);break}if((a[c[z>>2]>>0]|0)==117){if(c[w>>2]|0){k=c[N>>2]|0;c[N>>2]=k+1;c[Ca>>2]=c[c[(c[w>>2]|0)+(k<<2)>>2]>>2]}else{k=c[x>>2]|0;l=(c[k>>2]|0)+(4-1)&~(4-1);h=c[l>>2]|0;c[k>>2]=l+4;c[Ca>>2]=h}c[o>>2]=c[Ca>>2];nv(Ea,22504,o)|0;c[Da>>2]=Tu(Ea)|0;c[Fa>>2]=yf(M,c[Da>>2]|0)|0;if(c[Fa>>2]|0){Ua=165;break b}h=M+8|0;l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=1;b[Ga>>1]=c[Da>>2];l=c[M+8>>2]|0;a[l>>0]=a[Ga>>0]|0;a[l+1>>0]=a[Ga+1>>0]|0;l=M+8|0;c[l>>2]=(c[l>>2]|0)+2;Ow(c[M+8>>2]|0,Ea|0,c[Da>>2]|0)|0;l=M+8|0;c[l>>2]=(c[l>>2]|0)+(c[Da>>2]|0);break}if((a[c[z>>2]>>0]|0)!=83){Ua=175;break b}if(c[w>>2]|0){l=c[N>>2]|0;c[N>>2]=l+1;c[Ha>>2]=c[c[(c[w>>2]|0)+(l<<2)>>2]>>2]}else{l=c[x>>2]|0;h=(c[l>>2]|0)+(4-1)&~(4-1);k=c[h>>2]|0;c[l>>2]=h+4;c[Ha>>2]=k}c[Ia>>2]=Cf(c[Ha>>2]|0,Ja)|0;if(!(c[Ia>>2]|0))break;c[Ka>>2]=yf(M,c[Ia>>2]|0)|0;if(c[Ka>>2]|0){Ua=173;break b}Ow(c[M+8>>2]|0,(c[Ha>>2]|0)+(c[Ja>>2]|0)|0,c[Ia>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[Ia>>2]|0)}else Ua=105;while(0);do if((Ua|0)==105){Ua=0;c[ba>>2]=0;c[ca>>2]=(a[c[z>>2]>>0]|0)==109?1:5;if(c[w>>2]|0){m=c[N>>2]|0;c[N>>2]=m+1;c[aa>>2]=c[c[(c[w>>2]|0)+(m<<2)>>2]>>2]}else{m=c[x>>2]|0;k=(c[m>>2]|0)+(4-1)&~(4-1);h=c[k>>2]|0;c[m>>2]=k+4;c[aa>>2]=h}if(Ip(c[aa>>2]|0,2)|0){c[da>>2]=tp(c[aa>>2]|0,ea)|0;c[ba>>2]=(((c[ea>>2]|0)+7|0)>>>0)/8|0;if(!((c[da>>2]|0)!=0&(c[ba>>2]|0)!=0))break;c[fa>>2]=yf(M,c[ba>>2]|0)|0;if(c[fa>>2]|0){Ua=111;break b}do if(!(ff(c[M>>2]|0)|0)){if(!(Ip(c[aa>>2]|0,1)|0))break;c[ga>>2]=ef(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ga>>2]|0)){Ua=115;break b}c[ha>>2]=c[ga>>2];Ow(c[ha>>2]|0,c[M>>2]|0,(c[M+8>>2]|0)-(c[M>>2]|0)|0)|0;c[M+8>>2]=(c[ha>>2]|0)+((c[M+8>>2]|0)-(c[M>>2]|0));hf(c[M>>2]|0);c[M>>2]=c[ga>>2]}while(0);h=M+8|0;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=1;b[ia>>1]=c[ba>>2];k=c[M+8>>2]|0;a[k>>0]=a[ia>>0]|0;a[k+1>>0]=a[ia+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;Ow(c[M+8>>2]|0,c[da>>2]|0,c[ba>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[ba>>2]|0);break}if(Qo(c[ca>>2]|0,0,0,ba,c[aa>>2]|0)|0){Ua=119;break b}c[ja>>2]=yf(M,c[ba>>2]|0)|0;if(c[ja>>2]|0){Ua=121;break b}do if(!(ff(c[M>>2]|0)|0)){if(!(Ip(c[aa>>2]|0,1)|0))break;c[ka>>2]=ef(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ka>>2]|0)){Ua=125;break b}c[la>>2]=c[ka>>2];Ow(c[la>>2]|0,c[M>>2]|0,(c[M+8>>2]|0)-(c[M>>2]|0)|0)|0;c[M+8>>2]=(c[la>>2]|0)+((c[M+8>>2]|0)-(c[M>>2]|0));hf(c[M>>2]|0);c[M>>2]=c[ka>>2]}while(0);k=M+8|0;h=c[k>>2]|0;c[k>>2]=h+1;a[h>>0]=1;b[ma>>1]=c[ba>>2];h=c[M+8>>2]|0;a[h>>0]=a[ma>>0]|0;a[h+1>>0]=a[ma+1>>0]|0;h=M+8|0;c[h>>2]=(c[h>>2]|0)+2;if(Qo(c[ca>>2]|0,c[M+8>>2]|0,c[ba>>2]|0,ba,c[aa>>2]|0)|0){Ua=128;break b}h=M+8|0;c[h>>2]=(c[h>>2]|0)+(c[ba>>2]|0)}while(0);c[I>>2]=0}while(0);c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}switch(Ua|0){case 18:{c[y>>2]=c[P>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 29:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=206;break a;break}case 44:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=206;break a;break}case 54:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=206;break a;break}case 59:{c[y>>2]=c[T>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 66:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=212;break a;break}case 68:{c[y>>2]=c[X>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 82:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=211;break a;break}case 91:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=202;break a;break}case 93:{c[y>>2]=c[_>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 101:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=201;break a;break}case 111:{c[y>>2]=c[fa>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 115:{c[y>>2]=pt(c[(fu()|0)>>2]|0)|0;break a;break}case 119:{Ee(22479,1433,22486);break}case 121:{c[y>>2]=c[ja>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 125:{c[y>>2]=pt(c[(fu()|0)>>2]|0)|0;break a;break}case 128:{Ee(22479,1460,22486);break}case 135:{c[y>>2]=c[pa>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 145:{c[y>>2]=c[ta>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 150:{c[y>>2]=pt(c[(fu()|0)>>2]|0)|0;break a;break}case 158:{c[y>>2]=c[Aa>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 165:{c[y>>2]=c[Fa>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 173:{c[y>>2]=c[Ka>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 175:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=201;break a;break}case 179:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=209;break a;break}case 181:{c[y>>2]=c[La>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 185:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=209;break a;break}case 187:{c[y>>2]=c[Ma>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a;break}case 197:{c[c[s>>2]>>2]=Va-(c[t>>2]|0);c[y>>2]=208;break a;break}case 201:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=209;break a;break}case 206:{c[c[s>>2]>>2]=Wa-(c[t>>2]|0);c[y>>2]=207;break a;break}case 212:{c[c[s>>2]>>2]=Xa-(c[t>>2]|0);c[y>>2]=210;break a;break}case 214:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=210;break a;break}case 218:{c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);c[y>>2]=205;break a;break}case 220:{c[Na>>2]=yf(M,0)|0;if(c[Na>>2]|0){c[y>>2]=c[Na>>2];c[c[s>>2]>>2]=(c[z>>2]|0)-(c[t>>2]|0);break a}h=M+8|0;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=0;if((c[O>>2]|0)==0|(c[y>>2]|0)!=0)break a;c[y>>2]=203;break a;break}}}else{c[y>>2]=pt(c[(fu()|0)>>2]|0)|0;c[c[s>>2]>>2]=0}while(0);s=c[M>>2]|0;if(c[y>>2]|0){if(s|0){d:do if(ff(c[M>>2]|0)|0){c[Oa>>2]=c[M>>2];c[Pa>>2]=1+(c[M+4>>2]|0)-1;a[Qa>>0]=0;O=Ra;c[O>>2]=d[Qa>>0];c[O+4>>2]=0;while(1){if(!(c[Oa>>2]&7|0?(c[Pa>>2]|0)!=0:0))break;a[c[Oa>>2]>>0]=a[Qa>>0]|0;c[Oa>>2]=(c[Oa>>2]|0)+1;c[Pa>>2]=(c[Pa>>2]|0)+-1}if((c[Pa>>2]|0)>>>0>=8){O=Ra;t=Xw(c[O>>2]|0,c[O+4>>2]|0,16843009,16843009)|0;O=Ra;c[O>>2]=t;c[O+4>>2]=C;do{c[Sa>>2]=c[Oa>>2];O=Ra;t=c[O+4>>2]|0;z=c[Sa>>2]|0;c[z>>2]=c[O>>2];c[z+4>>2]=t;c[Pa>>2]=(c[Pa>>2]|0)-8;c[Oa>>2]=(c[Oa>>2]|0)+8}while((c[Pa>>2]|0)>>>0>=8)}while(1){if(!(c[Pa>>2]|0))break d;a[c[Oa>>2]>>0]=a[Qa>>0]|0;c[Oa>>2]=(c[Oa>>2]|0)+1;c[Pa>>2]=(c[Pa>>2]|0)+-1}}while(0);hf(c[M>>2]|0)}}else{M=Df(s)|0;c[c[r>>2]>>2]=M}c[q>>2]=c[y>>2];Ta=c[q>>2]|0;i=n;return Ta|0}function yf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;k=d+8|0;l=d+4|0;m=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[c[f>>2]>>2]|0);do if(((c[h>>2]|0)+(c[g>>2]|0)+2+1|0)>>>0>=(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[m>>2]=(c[(c[f>>2]|0)+4>>2]|0)+((c[g>>2]|0)+2+1<<1);if((c[m>>2]|0)>>>0<=(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=67;n=c[e>>2]|0;i=d;return n|0}c[k>>2]=gf(c[c[f>>2]>>2]|0,1+(c[m>>2]|0)-1|0)|0;if(c[k>>2]|0){c[(c[f>>2]|0)+4>>2]=c[m>>2];c[l>>2]=c[k>>2];c[(c[f>>2]|0)+8>>2]=(c[l>>2]|0)+(c[h>>2]|0);c[c[f>>2]>>2]=c[k>>2];break}c[e>>2]=pt(c[(fu()|0)>>2]|0)|0;n=c[e>>2]|0;i=d;return n|0}while(0);c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}function zf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[h>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;c[n>>2]=c[h>>2];c[o>>2]=c[l>>2];c[p>>2]=c[k>>2];while(1){if(!(c[p>>2]|0))break;k=d[c[n>>2]>>0]|0;do if(!(c[m>>2]|0))if((k|0)==92){c[m>>2]=1;break}else{h=a[c[n>>2]>>0]|0;f=c[o>>2]|0;c[o>>2]=f+1;a[f>>0]=h;break}else{a:do switch(k|0){case 98:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=8;break}case 116:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=9;break}case 118:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=11;break}case 110:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=10;break}case 102:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=12;break}case 114:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=13;break}case 34:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=34;break}case 39:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=39;break}case 92:{h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=92;break}case 13:{if((c[p>>2]|0)>>>0>1?(d[(c[n>>2]|0)+1>>0]|0|0)==10:0){c[n>>2]=(c[n>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1}break}case 10:{if((c[p>>2]|0)>>>0>1?(d[(c[n>>2]|0)+1>>0]|0|0)==13:0){c[n>>2]=(c[n>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1}break}case 120:{if((c[p>>2]|0)>>>0>2){if(!((d[(c[n>>2]|0)+1>>0]|0|0)>=48?(d[(c[n>>2]|0)+1>>0]|0|0)<=57:0))q=23;do if((q|0)==23){q=0;if((d[(c[n>>2]|0)+1>>0]|0|0)>=65?(d[(c[n>>2]|0)+1>>0]|0|0)<=70:0)break;if((d[(c[n>>2]|0)+1>>0]|0|0)<97)break a;if((d[(c[n>>2]|0)+1>>0]|0|0)>102)break a}while(0);if(!((d[(c[n>>2]|0)+2>>0]|0|0)>=48?(d[(c[n>>2]|0)+2>>0]|0|0)<=57:0))q=29;do if((q|0)==29){q=0;if((d[(c[n>>2]|0)+2>>0]|0|0)>=65?(d[(c[n>>2]|0)+2>>0]|0|0)<=70:0)break;if((d[(c[n>>2]|0)+2>>0]|0|0)<97)break a;if((d[(c[n>>2]|0)+2>>0]|0|0)>102)break a}while(0);c[n>>2]=(c[n>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1;h=d[c[n>>2]>>0]|0;if((d[c[n>>2]>>0]|0|0)<=57)r=h-48|0;else{f=d[c[n>>2]>>0]|0;r=((h|0)<=70?f-65|0:f-97|0)+10|0}f=d[(c[n>>2]|0)+1>>0]|0;if((d[(c[n>>2]|0)+1>>0]|0|0)<=57)s=f-48|0;else{h=d[(c[n>>2]|0)+1>>0]|0;s=((f|0)<=70?h-65|0:h-97|0)+10|0}h=c[o>>2]|0;c[o>>2]=h+1;a[h>>0]=(r<<4)+s;c[n>>2]=(c[n>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1}break}default:if(((((((c[p>>2]|0)>>>0>2?(d[c[n>>2]>>0]|0|0)>=48:0)?(d[c[n>>2]>>0]|0|0)<=55:0)?(d[(c[n>>2]|0)+1>>0]|0|0)>=48:0)?(d[(c[n>>2]|0)+1>>0]|0|0)<=55:0)?(d[(c[n>>2]|0)+2>>0]|0|0)>=48:0)?(d[(c[n>>2]|0)+2>>0]|0|0)<=55:0){h=((d[c[n>>2]>>0]|0)-48<<6)+((d[(c[n>>2]|0)+1>>0]|0)-48<<3)+((d[(c[n>>2]|0)+2>>0]|0)-48)&255;f=c[o>>2]|0;c[o>>2]=f+1;a[f>>0]=h;c[n>>2]=(c[n>>2]|0)+2;c[p>>2]=(c[p>>2]|0)-2}}while(0);c[m>>2]=0}while(0);c[p>>2]=(c[p>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}i=g;return (c[o>>2]|0)-(c[l>>2]|0)|0}function Af(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[f>>2]=b;switch(a[c[f>>2]>>0]|0){case 10:case 13:case 12:case 11:case 9:case 32:{c[e>>2]=1;break}default:c[e>>2]=0}i=d;return c[e>>2]|0}function Bf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;a=c[e>>2]|0;do if(!((c[e>>2]|0)>=48&(c[e>>2]|0)<=57)){f=c[e>>2]|0;if((a|0)>=65&(c[e>>2]|0)<=70){c[d>>2]=10+f-65;break}if((f|0)>=97&(c[e>>2]|0)<=102){c[d>>2]=10+(c[e>>2]|0)-97;break}else{c[d>>2]=0;break}}else c[d>>2]=a-48;while(0);i=b;return c[d>>2]|0}function Cf(b,f){b=b|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+24|0;o=g+4|0;p=g;c[k>>2]=b;c[l>>2]=f;c[p>>2]=0;c[c[l>>2]>>2]=0;a:do if(c[k>>2]|0){c[m>>2]=c[k>>2];while(1){f=d[c[m>>2]>>0]|0;c[o>>2]=f;if(!f)break a;c[m>>2]=(c[m>>2]|0)+1;if((c[o>>2]|0)==1){f=c[m>>2]|0;a[n>>0]=a[f>>0]|0;a[n+1>>0]=a[f+1>>0]|0;c[m>>2]=(c[m>>2]|0)+(2+(e[n>>1]|0));continue}if((c[o>>2]|0)!=3){if((c[o>>2]|0)!=4)continue;c[p>>2]=(c[p>>2]|0)+-1;if(c[p>>2]|0)continue;else break}if(!(c[p>>2]|0))c[c[l>>2]>>2]=(c[m>>2]|0)+-1-(c[k>>2]|0);c[p>>2]=(c[p>>2]|0)+1}c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);q=c[h>>2]|0;i=g;return q|0}while(0);c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}function Df(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+8|0;f=b+4|0;g=b;c[f>>2]=a;do if(c[f>>2]|0){c[g>>2]=c[f>>2];if(!(d[c[g>>2]>>0]|0)){Ef(c[f>>2]|0);c[e>>2]=0;break}if((d[c[g>>2]>>0]|0|0)==3?(d[(c[g>>2]|0)+1>>0]|0|0)==4:0){Ef(c[f>>2]|0);c[e>>2]=0;break}c[e>>2]=c[f>>2]}else c[e>>2]=0;while(0);i=b;return c[e>>2]|0}function Ef(b){b=b|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+32|0;m=f+16|0;n=f+12|0;o=f+34|0;p=f;q=f+8|0;c[g>>2]=b;if(!(c[g>>2]|0)){i=f;return}a:do if(ff(c[g>>2]|0)|0){c[h>>2]=c[g>>2];while(1){b=d[c[h>>2]>>0]|0;c[k>>2]=b;if(!b)break;c[h>>2]=(c[h>>2]|0)+1;if((c[k>>2]|0)!=1)continue;b=c[h>>2]|0;a[l>>0]=a[b>>0]|0;a[l+1>>0]=a[b+1>>0]|0;c[h>>2]=(c[h>>2]|0)+2;c[h>>2]=(c[h>>2]|0)+(e[l>>1]|0)}c[m>>2]=c[g>>2];c[n>>2]=(c[h>>2]|0)-(c[g>>2]|0);a[o>>0]=0;b=p;c[b>>2]=d[o>>0];c[b+4>>2]=0;while(1){if(!(c[m>>2]&7|0?(c[n>>2]|0)!=0:0))break;a[c[m>>2]>>0]=a[o>>0]|0;c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+-1}if((c[n>>2]|0)>>>0>=8){b=p;r=Xw(c[b>>2]|0,c[b+4>>2]|0,16843009,16843009)|0;b=p;c[b>>2]=r;c[b+4>>2]=C;do{c[q>>2]=c[m>>2];b=p;r=c[b+4>>2]|0;s=c[q>>2]|0;c[s>>2]=c[b>>2];c[s+4>>2]=r;c[n>>2]=(c[n>>2]|0)-8;c[m>>2]=(c[m>>2]|0)+8}while((c[n>>2]|0)>>>0>=8)}while(1){if(!(c[n>>2]|0))break a;a[c[m>>2]>>0]=a[o>>0]|0;c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+-1}}while(0);hf(c[g>>2]|0);i=f;return}function Ff(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=uf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,0)|0;i=f;return e|0}function Gf(f,g,h){f=f|0;g=g|0;h=h|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;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+32|0;m=k+28|0;n=k+24|0;o=k+20|0;p=k+16|0;q=k+36|0;r=k+12|0;s=k+8|0;t=k+4|0;u=k;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;if(!(c[m>>2]|0)){c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}if(!(c[o>>2]|0))c[o>>2]=Tu(c[n>>2]|0)|0;c[p>>2]=c[m>>2];while(1){if(!(d[c[p>>2]>>0]|0)){w=29;break}if((d[c[p>>2]>>0]|0|0)==3?(d[(c[p>>2]|0)+1>>0]|0|0)==1:0){c[r>>2]=c[p>>2];c[p>>2]=(c[p>>2]|0)+2;m=c[p>>2]|0;a[q>>0]=a[m>>0]|0;a[q+1>>0]=a[m+1>>0]|0;c[p>>2]=(c[p>>2]|0)+2;if((e[q>>1]|0|0)==(c[o>>2]|0)?(vv(c[p>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)==0:0)break;c[p>>2]=(c[p>>2]|0)+(e[q>>1]|0);continue}if((d[c[p>>2]>>0]|0|0)==1){m=(c[p>>2]|0)+1|0;c[p>>2]=m;a[q>>0]=a[m>>0]|0;a[q+1>>0]=a[m+1>>0]|0;c[p>>2]=(c[p>>2]|0)+2;c[p>>2]=(c[p>>2]|0)+(e[q>>1]|0);continue}else{c[p>>2]=(c[p>>2]|0)+1;continue}}if((w|0)==29){c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}c[u>>2]=1;c[p>>2]=(c[p>>2]|0)+(e[q>>1]|0);a:while(1){x=c[p>>2]|0;if(!(c[u>>2]|0))break;do if((d[x>>0]|0|0)!=1){if((d[c[p>>2]>>0]|0|0)==3){c[u>>2]=(c[u>>2]|0)+1;break}if((d[c[p>>2]>>0]|0|0)!=4)if(!(d[c[p>>2]>>0]|0)){w=20;break a}else break;else{c[u>>2]=(c[u>>2]|0)+-1;break}}else{o=(c[p>>2]|0)+1|0;c[p>>2]=o;a[q>>0]=a[o>>0]|0;a[q+1>>0]=a[o+1>>0]|0;c[p>>2]=(c[p>>2]|0)+(2+(e[q>>1]|0));c[p>>2]=(c[p>>2]|0)+-1}while(0);c[p>>2]=(c[p>>2]|0)+1}if((w|0)==20)Ee(22479,481,22510);b[q>>1]=x-(c[r>>2]|0);c[s>>2]=bf(1+(e[q>>1]|0)|0)|0;if(c[s>>2]|0){c[t>>2]=c[s>>2];Ow(c[t>>2]|0,c[r>>2]|0,e[q>>1]|0|0)|0;c[t>>2]=(c[t>>2]|0)+(e[q>>1]|0);q=c[t>>2]|0;c[t>>2]=q+1;a[q>>0]=0;c[l>>2]=Df(c[s>>2]|0)|0;v=c[l>>2]|0;i=k;return v|0}else{c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}return 0}function Hf(b){b=b|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+24|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=b;c[n>>2]=0;c[o>>2]=0;if(!(c[h>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}c[k>>2]=c[h>>2];while(1){h=d[c[k>>2]>>0]|0;c[m>>2]=h;if(!h)break;c[k>>2]=(c[k>>2]|0)+1;if((c[m>>2]|0)==1){h=c[k>>2]|0;a[l>>0]=a[h>>0]|0;a[l+1>>0]=a[h+1>>0]|0;c[k>>2]=(c[k>>2]|0)+(2+(e[l>>1]|0));if((c[o>>2]|0)!=1)continue;c[n>>2]=(c[n>>2]|0)+1;continue}if((c[m>>2]|0)!=3){if((c[m>>2]|0)!=4)continue;c[o>>2]=(c[o>>2]|0)+-1;continue}if((c[o>>2]|0)==1)c[n>>2]=(c[n>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+1}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=f;return p|0}function If(f,g){f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+48|0;if((i|0)>=(j|0))U();k=h+28|0;l=h+24|0;m=h+20|0;n=h+16|0;o=h+32|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[l>>2]=f;c[m>>2]=g;c[r>>2]=0;if(c[l>>2]|0?(d[c[l>>2]>>0]|0|0)==3:0){c[n>>2]=c[l>>2];while(1){l=(c[m>>2]|0)>0;c[n>>2]=(c[n>>2]|0)+1;t=(d[c[n>>2]>>0]|0|0)==1;if(!l)break;if(t){l=(c[n>>2]|0)+1|0;c[n>>2]=l;a[o>>0]=a[l>>0]|0;a[o+1>>0]=a[l+1>>0]|0;c[n>>2]=(c[n>>2]|0)+(2+(e[o>>1]|0));c[n>>2]=(c[n>>2]|0)+-1;if(c[r>>2]|0)continue;c[m>>2]=(c[m>>2]|0)+-1;continue}if((d[c[n>>2]>>0]|0|0)==3){c[r>>2]=(c[r>>2]|0)+1;continue}if((d[c[n>>2]>>0]|0|0)!=4)if(!(d[c[n>>2]>>0]|0)){u=15;break}else continue;c[r>>2]=(c[r>>2]|0)+-1;if(c[r>>2]|0)continue;c[m>>2]=(c[m>>2]|0)+-1}if((u|0)==15){c[k>>2]=0;v=c[k>>2]|0;i=h;return v|0}do if(t){m=(c[n>>2]|0)+1|0;a[o>>0]=a[m>>0]|0;a[o+1>>0]=a[m+1>>0]|0;c[p>>2]=bf(5+(e[o>>1]|0)+1|0)|0;if(c[p>>2]|0){c[q>>2]=c[p>>2];m=c[q>>2]|0;c[q>>2]=m+1;a[m>>0]=3;Ow(c[q>>2]|0,c[n>>2]|0,3+(e[o>>1]|0)|0)|0;c[q>>2]=(c[q>>2]|0)+(3+(e[o>>1]|0));m=c[q>>2]|0;c[q>>2]=m+1;a[m>>0]=4;a[c[q>>2]>>0]=0;break}c[k>>2]=0;v=c[k>>2]|0;i=h;return v|0}else{if((d[c[n>>2]>>0]|0|0)!=3){c[p>>2]=0;break}c[s>>2]=c[n>>2];c[r>>2]=1;a:do{c[n>>2]=(c[n>>2]|0)+1;do if((d[c[n>>2]>>0]|0|0)!=1){if((d[c[n>>2]>>0]|0|0)==3){c[r>>2]=(c[r>>2]|0)+1;break}if((d[c[n>>2]>>0]|0|0)!=4)if(!(d[c[n>>2]>>0]|0)){u=29;break a}else break;else{c[r>>2]=(c[r>>2]|0)+-1;break}}else{m=(c[n>>2]|0)+1|0;c[n>>2]=m;a[o>>0]=a[m>>0]|0;a[o+1>>0]=a[m+1>>0]|0;c[n>>2]=(c[n>>2]|0)+(2+(e[o>>1]|0));c[n>>2]=(c[n>>2]|0)+-1}while(0)}while((c[r>>2]|0)!=0);if((u|0)==29)Ee(22479,673,22532);b[o>>1]=(c[n>>2]|0)+1-(c[s>>2]|0);c[p>>2]=bf(1+(e[o>>1]|0)|0)|0;if(c[p>>2]|0){c[q>>2]=c[p>>2];Ow(c[q>>2]|0,c[s>>2]|0,e[o>>1]|0|0)|0;c[q>>2]=(c[q>>2]|0)+(e[o>>1]|0);m=c[q>>2]|0;c[q>>2]=m+1;a[m>>0]=0;break}c[k>>2]=0;v=c[k>>2]|0;i=h;return v|0}while(0);c[k>>2]=Df(c[p>>2]|0)|0;v=c[k>>2]|0;i=h;return v|0}c[k>>2]=0;v=c[k>>2]|0;i=h;return v|0}function Jf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=If(c[d>>2]|0,0)|0;i=b;return a|0}function Kf(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Lf(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Lf(b,f,g){b=b|0;f=f|0;g=g|0;var h=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+32|0;if((i|0)>=(j|0))U();k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h+24|0;q=h;c[l>>2]=b;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;c[c[n>>2]>>2]=0;if(!(c[l>>2]|0)){c[k>>2]=0;r=c[k>>2]|0;i=h;return r|0}c[o>>2]=c[l>>2];if((d[c[o>>2]>>0]|0|0)!=3){if(c[m>>2]|0){c[k>>2]=0;r=c[k>>2]|0;i=h;return r|0}}else c[o>>2]=(c[o>>2]|0)+1;a:while(1){s=(d[c[o>>2]>>0]|0|0)==1;if((c[m>>2]|0)<=0)break;do if(s){l=(c[o>>2]|0)+1|0;c[o>>2]=l;a[p>>0]=a[l>>0]|0;a[p+1>>0]=a[l+1>>0]|0;c[o>>2]=(c[o>>2]|0)+(2+(e[p>>1]|0));c[o>>2]=(c[o>>2]|0)+-1;if(!(c[q>>2]|0))c[m>>2]=(c[m>>2]|0)+-1}else{if((d[c[o>>2]>>0]|0|0)==3){c[q>>2]=(c[q>>2]|0)+1;break}if((d[c[o>>2]>>0]|0|0)!=4)if(!(d[c[o>>2]>>0]|0)){t=17;break a}else break;c[q>>2]=(c[q>>2]|0)+-1;if(!(c[q>>2]|0))c[m>>2]=(c[m>>2]|0)+-1}while(0);c[o>>2]=(c[o>>2]|0)+1}if((t|0)==17){c[k>>2]=0;r=c[k>>2]|0;i=h;return r|0}if(s){s=(c[o>>2]|0)+1|0;c[o>>2]=s;a[p>>0]=a[s>>0]|0;a[p+1>>0]=a[s+1>>0]|0;c[c[n>>2]>>2]=e[p>>1];c[k>>2]=(c[o>>2]|0)+2;r=c[k>>2]|0;i=h;return r|0}else{c[k>>2]=0;r=c[k>>2]|0;i=h;return r|0}return 0}function Mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[c[k>>2]>>2]=0;c[l>>2]=Lf(c[g>>2]|0,c[h>>2]|0,m)|0;if(!((c[l>>2]|0)!=0&(c[m>>2]|0)!=0)){c[f>>2]=0;o=c[f>>2]|0;i=e;return o|0}c[n>>2]=bf(c[m>>2]|0)|0;if(c[n>>2]|0){Ow(c[n>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;c[c[k>>2]>>2]=c[m>>2];c[f>>2]=c[n>>2];o=c[f>>2]|0;i=e;return o|0}else{c[f>>2]=0;o=c[f>>2]|0;i=e;return o|0}return 0}function Nf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=Lf(c[g>>2]|0,c[h>>2]|0,l)|0;if(!((c[k>>2]|0)==0|(c[l>>2]|0)>>>0<1)?((c[l>>2]|0)+1|0)>>>0>=1:0){c[m>>2]=bf((c[l>>2]|0)+1|0)|0;if(c[m>>2]|0){Ow(c[m>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;a[(c[m>>2]|0)+(c[l>>2]|0)>>0]=0;c[f>>2]=c[m>>2];n=c[f>>2]|0;i=e;return n|0}else{c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}}c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}function Of(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;do if((c[k>>2]|0)==8){c[n>>2]=Mf(c[g>>2]|0,c[h>>2]|0,l)|0;if(!(c[n>>2]|0)){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}if(ff(c[g>>2]|0)|0)q=Fp(0)|0;else q=Ep(0)|0;c[m>>2]=q;if(c[m>>2]|0){rp(c[m>>2]|0,c[n>>2]|0,c[l>>2]<<3)|0;break}else{hf(c[n>>2]|0);break}}else{if(!(c[k>>2]|0))c[k>>2]=1;c[o>>2]=Lf(c[g>>2]|0,c[h>>2]|0,l)|0;if(!(c[o>>2]|0)){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}if(Mo(m,c[k>>2]|0,c[o>>2]|0,c[l>>2]|0,0)|0){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}}while(0);c[f>>2]=c[m>>2];p=c[f>>2]|0;i=e;return p|0}function Pf(f){f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+32|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[k>>2]=f;c[q>>2]=0;c[r>>2]=1;if(c[k>>2]|0?(d[c[k>>2]>>0]|0|0)==3:0){c[l>>2]=c[k>>2];while(1){k=(c[r>>2]|0)>0;c[l>>2]=(c[l>>2]|0)+1;s=c[l>>2]|0;if(!k)break;if((d[s>>0]|0|0)==1){k=(c[l>>2]|0)+1|0;c[l>>2]=k;a[n>>0]=a[k>>0]|0;a[n+1>>0]=a[k+1>>0]|0;c[l>>2]=(c[l>>2]|0)+(2+(e[n>>1]|0));c[l>>2]=(c[l>>2]|0)+-1;if(c[q>>2]|0)continue;c[r>>2]=(c[r>>2]|0)+-1;continue}if((d[c[l>>2]>>0]|0|0)==3){c[q>>2]=(c[q>>2]|0)+1;continue}if((d[c[l>>2]>>0]|0|0)!=4)if(!(d[c[l>>2]>>0]|0)){t=15;break}else continue;c[q>>2]=(c[q>>2]|0)+-1;if(c[q>>2]|0)continue;c[r>>2]=(c[r>>2]|0)+-1}if((t|0)==15){c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}c[m>>2]=s;c[q>>2]=0;a:do{do if((d[c[l>>2]>>0]|0|0)!=1){if((d[c[l>>2]>>0]|0|0)==3){c[q>>2]=(c[q>>2]|0)+1;break}if((d[c[l>>2]>>0]|0|0)!=4)if(!(d[c[l>>2]>>0]|0)){t=24;break a}else break;else{c[q>>2]=(c[q>>2]|0)+-1;break}}else{s=(c[l>>2]|0)+1|0;c[l>>2]=s;a[n>>0]=a[s>>0]|0;a[n+1>>0]=a[s+1>>0]|0;c[l>>2]=(c[l>>2]|0)+(2+(e[n>>1]|0));c[l>>2]=(c[l>>2]|0)+-1}while(0);c[l>>2]=(c[l>>2]|0)+1}while((c[q>>2]|0)!=0);if((t|0)==24){c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}b[n>>1]=(c[l>>2]|0)-(c[m>>2]|0);c[o>>2]=bf(1+(e[n>>1]|0)+2|0)|0;if(c[o>>2]|0){c[p>>2]=c[o>>2];l=c[p>>2]|0;c[p>>2]=l+1;a[l>>0]=3;Ow(c[p>>2]|0,c[m>>2]|0,e[n>>1]|0|0)|0;c[p>>2]=(c[p>>2]|0)+(e[n>>1]|0);n=c[p>>2]|0;c[p>>2]=n+1;a[n>>0]=4;n=c[p>>2]|0;c[p>>2]=n+1;a[n>>0]=0;c[h>>2]=Df(c[o>>2]|0)|0;u=c[h>>2]|0;i=g;return u|0}else{c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}}c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}function Qf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=Pf(c[d>>2]|0)|0;c[f>>2]=Jf(c[e>>2]|0)|0;Ef(c[e>>2]|0);i=b;return c[f>>2]|0}function Rf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[m>>2]=e;e=c[g>>2]|0;g=c[h>>2]|0;h=c[k>>2]|0;c[l>>2]=xf(e,g,h,Tu(c[k>>2]|0)|0,1,0,m)|0;i=f;return c[l>>2]|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,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=c[g>>2]|0;g=c[h>>2]|0;h=c[k>>2]|0;d=Tu(c[k>>2]|0)|0;k=xf(e,g,h,d,1,0,c[l>>2]|0)|0;i=f;return k|0}function Tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=wf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,0,0,f)|0;i=f;return e|0}function Uf(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k;m=k+48|0;n=k+44|0;o=k+40|0;p=k+36|0;q=k+32|0;r=k+28|0;s=k+24|0;t=k+52|0;u=k+56|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+8|0;z=k+4|0;c[n>>2]=b;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[v>>2]=0;c[x>>2]=0;c[r>>2]=c[n>>2]|0?c[n>>2]|0:22547;c[s>>2]=c[p>>2];a:while(1){if(!(d[c[r>>2]>>0]|0)){A=55;break}switch(d[c[r>>2]>>0]|0|0){case 3:{c[r>>2]=(c[r>>2]|0)+1;if((c[o>>2]|0)!=1){if(c[x>>2]|0)c[v>>2]=(c[v>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0)}c[v>>2]=(c[v>>2]|0)+1;if(c[p>>2]|0){if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=10;break a}b:do if((c[o>>2]|0)!=1){if(c[x>>2]|0){n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=10}c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[x>>2]|0))break b;n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=32;c[w>>2]=(c[w>>2]|0)+1}}while(0);n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=40}c[x>>2]=(c[x>>2]|0)+1;continue a;break}case 4:{c[r>>2]=(c[r>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1;if(c[p>>2]|0){if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=21;break a}n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=41}c[x>>2]=(c[x>>2]|0)+-1;if((d[c[r>>2]>>0]|0|0)==3)continue a;if(!((c[o>>2]|0)!=1?(d[c[r>>2]>>0]|0|0)!=0:0))continue a;c[v>>2]=(c[v>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if(!(c[p>>2]|0))continue a;if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=27;break a}n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=10;c[w>>2]=0;while(1){if((c[w>>2]|0)>=(c[x>>2]|0))continue a;n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=32;c[w>>2]=(c[w>>2]|0)+1}break}case 1:{c[r>>2]=(c[r>>2]|0)+1;n=c[r>>2]|0;a[t>>0]=a[n>>0]|0;a[t+1>>0]=a[n+1>>0]|0;c[r>>2]=(c[r>>2]|0)+2;if((c[o>>2]|0)==3){n=Vf(c[r>>2]|0,e[t>>1]|0)|0;c[y>>2]=n;switch(n|0){case 1:{c[z>>2]=Wf(c[r>>2]|0,e[t>>1]|0,0)|0;break}case 2:{c[z>>2]=Xf(c[r>>2]|0,e[t>>1]|0,0)|0;break}default:c[z>>2]=Yf(c[r>>2]|0,e[t>>1]|0,0)|0}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0);if(c[p>>2]|0){if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=38;break a}switch(c[y>>2]|0){case 1:{Wf(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}case 2:{Xf(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}default:Yf(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0}c[s>>2]=(c[s>>2]|0)+(c[z>>2]|0)}if((d[(c[r>>2]|0)+(e[t>>1]|0)>>0]|0|0)!=4?(c[v>>2]=(c[v>>2]|0)+1,c[p>>2]|0):0){if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=47;break a}n=c[s>>2]|0;c[s>>2]=n+1;a[n>>0]=32}}else{c[l>>2]=e[t>>1];nv(u,22574,l)|0;n=Tu(u)|0;c[v>>2]=(c[v>>2]|0)+(n+(e[t>>1]|0));if(c[p>>2]|0){if((c[v>>2]|0)>>>0>=(c[q>>2]|0)>>>0){A=51;break a}c[s>>2]=ev(c[s>>2]|0,u)|0;Ow(c[s>>2]|0,c[r>>2]|0,e[t>>1]|0|0)|0;c[s>>2]=(c[s>>2]|0)+(e[t>>1]|0)}}c[r>>2]=(c[r>>2]|0)+(e[t>>1]|0);continue a;break}default:{A=54;break a}}}if((A|0)==10){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==21){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==27){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==38){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==47){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==51){c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else if((A|0)==54)Ee(22479,2008,22578);else if((A|0)==55){do if((c[o>>2]|0)!=1?(c[v>>2]=(c[v>>2]|0)+1,c[p>>2]|0):0){if((c[v>>2]|0)>>>0<(c[q>>2]|0)>>>0){A=c[s>>2]|0;c[s>>2]=A+1;a[A>>0]=10;break}c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}while(0);o=c[v>>2]|0;do if(c[p>>2]|0){if(o>>>0<(c[q>>2]|0)>>>0){A=c[s>>2]|0;c[s>>2]=A+1;a[A>>0]=0;break}c[m>>2]=0;B=c[m>>2]|0;i=k;return B|0}else c[v>>2]=o+1;while(0);c[m>>2]=c[v>>2];B=c[m>>2]|0;i=k;return B|0}return 0}function Vf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[h>>2]=b;c[k>>2]=e;c[m>>2]=1;if(!(c[k>>2]|0)){c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}if(d[c[h>>2]>>0]&128|0){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}if(!(a[c[h>>2]>>0]|0)){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=c[h>>2];while(1){if(!(c[k>>2]|0))break;if((d[c[l>>2]>>0]|0)>=32){if((d[c[l>>2]>>0]|0)>=127?(d[c[l>>2]>>0]|0)<=160:0)o=12}else o=12;if((o|0)==12?(o=0,(Bv(22550,d[c[l>>2]>>0]|0)|0)==0):0){o=13;break}do if(c[m>>2]|0){if((d[c[l>>2]>>0]|0)>=65?(d[c[l>>2]>>0]|0)<=90:0)break;if((d[c[l>>2]>>0]|0)>=97?(d[c[l>>2]>>0]|0)<=122:0)break;if((d[c[l>>2]>>0]|0)>=48?(d[c[l>>2]>>0]|0)<=57:0)break;if(!(Bv(22560,d[c[l>>2]>>0]|0)|0))c[m>>2]=0}while(0);c[l>>2]=(c[l>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+-1}if((o|0)==13){c[g>>2]=0;n=c[g>>2]|0;i=f;return n|0}c[l>>2]=c[h>>2];do if(c[m>>2]|0){if((d[c[l>>2]>>0]|0)>=48?(d[c[l>>2]>>0]|0)<=57:0)break;c[g>>2]=2;n=c[g>>2]|0;i=f;return n|0}while(0);c[g>>2]=1;n=c[g>>2]|0;i=f;return n|0}function Wf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;if(!(c[n>>2]|0)){c[p>>2]=2;while(1){if(!(c[m>>2]|0))break;a:do switch(d[c[l>>2]>>0]|0|0){case 92:case 39:case 34:case 13:case 12:case 10:case 11:case 9:case 8:{c[p>>2]=(c[p>>2]|0)+2;break}default:{do if((d[c[l>>2]>>0]|0|0)>=32){if((d[c[l>>2]>>0]|0|0)>=127?(d[c[l>>2]>>0]|0|0)<=160:0)break;c[p>>2]=(c[p>>2]|0)+1;break a}while(0);c[p>>2]=(c[p>>2]|0)+4}}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=c[p>>2];q=c[k>>2]|0;i=g;return q|0}c[o>>2]=c[n>>2];p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=34;while(1){if(!(c[m>>2]|0))break;b:do switch(d[c[l>>2]>>0]|0|0){case 8:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=98;break}case 9:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=116;break}case 11:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=118;break}case 10:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=110;break}case 12:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=102;break}case 13:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=114;break}case 34:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=34;break}case 39:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=39;break}case 92:{p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;p=c[o>>2]|0;c[o>>2]=p+1;a[p>>0]=92;break}default:{do if((d[c[l>>2]>>0]|0|0)>=32){if((d[c[l>>2]>>0]|0|0)>=127?(d[c[l>>2]>>0]|0|0)<=160:0)break;p=a[c[l>>2]>>0]|0;f=c[o>>2]|0;c[o>>2]=f+1;a[f>>0]=p;break b}while(0);p=c[o>>2]|0;c[h>>2]=d[c[l>>2]>>0];nv(p,22401,h)|0;c[o>>2]=(c[o>>2]|0)+4}}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1}l=c[o>>2]|0;c[o>>2]=l+1;a[l>>0]=34;c[k>>2]=(c[o>>2]|0)-(c[n>>2]|0);q=c[k>>2]|0;i=g;return q|0}function Xf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[h>>2]|0)){k=c[g>>2]|0;i=e;return k|0}Ow(c[h>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;k=c[g>>2]|0;i=e;return k|0}function Yf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;if(!(c[m>>2]|0)){o=c[l>>2]|0;p=o<<1;q=p+2|0;i=g;return q|0}f=c[m>>2]|0;c[m>>2]=f+1;a[f>>0]=35;c[n>>2]=0;while(1){r=c[m>>2]|0;if((c[n>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;c[h>>2]=d[(c[k>>2]|0)+(c[n>>2]|0)>>0];nv(r,22569,h)|0;c[n>>2]=(c[n>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+2}c[m>>2]=r+1;a[r>>0]=35;o=c[l>>2]|0;p=o<<1;q=p+2|0;i=g;return q|0} +function Zf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+192|0;if((i|0)>=(j|0))U();h=g+156|0;k=g+152|0;l=g+148|0;m=g+144|0;n=g+140|0;o=g+136|0;p=g+132|0;q=g+128|0;r=g+48|0;s=g+160|0;t=g+40|0;u=g+36|0;v=g+32|0;w=g+28|0;x=g+24|0;y=g+20|0;z=g+16|0;A=g+12|0;B=g+8|0;C=g+4|0;D=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[v>>2]=43;c[w>>2]=0;f=s;e=f+20|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(e|0));c[p>>2]=c[m>>2];c[t>>2]=0;while(1){E=a[c[p>>2]>>0]|0;if(!(a[c[p>>2]>>0]|0?(c[t>>2]|0)>>>0<20:0)){F=18;break}if((((((E<<24>>24|0)!=38?(a[c[p>>2]>>0]|0)!=43:0)?(a[c[p>>2]>>0]|0)!=45:0)?(a[c[p>>2]>>0]|0)!=47:0)?(a[c[p>>2]>>0]|0)!=63:0)?(Af(c[p>>2]|0)|0)==0:0){if((a[c[p>>2]>>0]|0)==39){c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=Bv(c[p>>2]|0,39)|0;if(!(c[q>>2]|0)){F=12;break}if((c[q>>2]|0)==(c[p>>2]|0)){F=12;break}c[p>>2]=c[q>>2]}f=c[n>>2]|0;e=(c[f>>2]|0)+(4-1)&~(4-1);d=c[e>>2]|0;c[f>>2]=e+4;c[r+(c[t>>2]<<2)>>2]=d;if(!(c[r+(c[t>>2]<<2)>>2]|0)){F=15;break}c[t>>2]=(c[t>>2]|0)+1}c[p>>2]=(c[p>>2]|0)+1}if((F|0)==12){c[h>>2]=29;G=c[h>>2]|0;i=g;return G|0}else if((F|0)==15){c[h>>2]=128;G=c[h>>2]|0;i=g;return G|0}else if((F|0)==18){if(E<<24>>24){c[h>>2]=183;G=c[h>>2]|0;i=g;return G|0}E=c[n>>2]|0;n=(c[E>>2]|0)+(4-1)&~(4-1);d=c[n>>2]|0;c[E>>2]=n+4;if(d|0){c[h>>2]=45;G=c[h>>2]|0;i=g;return G|0}while(1){if(!(c[l>>2]|0)){F=33;break}if(!(a[c[l>>2]>>0]|0)){F=33;break}c[p>>2]=Bv(c[l>>2]|0,33)|0;if((c[p>>2]|0)==(c[l>>2]|0)){F=25;break}if(c[p>>2]|0)H=(c[p>>2]|0)-(c[l>>2]|0)|0;else H=0;c[x>>2]=H;c[u>>2]=Gf(c[k>>2]|0,c[l>>2]|0,c[x>>2]|0)|0;if(!(c[u>>2]|0)){F=29;break}c[k>>2]=c[u>>2];c[u>>2]=0;Ef(c[w>>2]|0);c[w>>2]=c[k>>2];if(c[x>>2]|0){c[l>>2]=(c[l>>2]|0)+((c[x>>2]|0)+1);continue}else{c[l>>2]=0;continue}}do if((F|0)==25)c[o>>2]=27;else if((F|0)==29)c[o>>2]=27;else if((F|0)==33){c[p>>2]=c[m>>2];c[t>>2]=0;a:while(1){if(!(a[c[p>>2]>>0]|0)){F=76;break}if((((a[c[p>>2]>>0]|0)!=38?(a[c[p>>2]>>0]|0)!=43:0)?(a[c[p>>2]>>0]|0)!=45:0)?(a[c[p>>2]>>0]|0)!=47:0){if((Af(c[p>>2]|0)|0)==0?(a[c[p>>2]>>0]|0)!=63:0){if((a[c[p>>2]>>0]|0)==39){c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=Bv(c[p>>2]|0,39)|0;if(!(c[q>>2]|0)){F=45;break}if((c[q>>2]|0)==(c[p>>2]|0)){F=45;break}c[u>>2]=Gf(c[k>>2]|0,c[p>>2]|0,(c[q>>2]|0)-(c[p>>2]|0)|0)|0;c[p>>2]=c[q>>2]}else c[u>>2]=Gf(c[k>>2]|0,c[p>>2]|0,1)|0;do if(!(c[u>>2]|0)?(a[(c[p>>2]|0)+1>>0]|0)==63:0){l=c[r+(c[t>>2]<<2)>>2]|0;if((c[v>>2]|0)!=38){c[l>>2]=0;break}c[y>>2]=l;if(!(c[(c[y>>2]|0)+12>>2]|0)){c[c[y>>2]>>2]=0;c[(c[y>>2]|0)+4>>2]=0}c[(c[y>>2]|0)+8>>2]=0}else F=55;while(0);if((F|0)==55){F=0;if(!(c[u>>2]|0)){F=56;break}do if((c[v>>2]|0)!=38){if((c[v>>2]|0)==47){l=Of(c[u>>2]|0,1,8)|0;c[c[r+(c[t>>2]<<2)>>2]>>2]=l;break}l=c[u>>2]|0;if((c[v>>2]|0)==45){x=Of(l,1,1)|0;c[c[r+(c[t>>2]<<2)>>2]>>2]=x;break}else{x=Of(l,1,5)|0;c[c[r+(c[t>>2]<<2)>>2]>>2]=x;break}}else{c[z>>2]=c[r+(c[t>>2]<<2)>>2];x=c[u>>2]|0;if(!(c[(c[z>>2]|0)+12>>2]|0)){l=Mf(x,1,c[z>>2]|0)|0;c[(c[z>>2]|0)+12>>2]=l;if(!(c[(c[z>>2]|0)+12>>2]|0)){F=65;break a}c[(c[z>>2]|0)+8>>2]=c[c[z>>2]>>2];c[(c[z>>2]|0)+4>>2]=0;a[s+(c[t>>2]|0)>>0]=2;break}c[A>>2]=Kf(x,1,B)|0;if(!((c[A>>2]|0)!=0&(c[B>>2]|0)!=0)){F=60;break a}if(((c[(c[z>>2]|0)+4>>2]|0)+(c[B>>2]|0)|0)>>>0>(c[c[z>>2]>>2]|0)>>>0){F=62;break a}Ow((c[(c[z>>2]|0)+12>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0)|0,c[A>>2]|0,c[B>>2]|0)|0;c[(c[z>>2]|0)+8>>2]=c[B>>2];a[s+(c[t>>2]|0)>>0]=1}while(0);Ef(c[u>>2]|0);c[u>>2]=0;if(!(c[c[r+(c[t>>2]<<2)>>2]>>2]|0)){F=73;break}}c[t>>2]=(c[t>>2]|0)+1}}else c[v>>2]=a[c[p>>2]>>0];c[p>>2]=(c[p>>2]|0)+1}if((F|0)==45){c[o>>2]=29;break}else if((F|0)==56){c[o>>2]=68;break}else if((F|0)==60){c[o>>2]=65;break}else if((F|0)==62){c[o>>2]=200;break}else if((F|0)==65){c[o>>2]=65;break}else if((F|0)==73){c[o>>2]=65;break}else if((F|0)==76){Ef(c[w>>2]|0);c[h>>2]=0;G=c[h>>2]|0;i=g;return G|0}}while(0);Ef(c[w>>2]|0);Ef(c[u>>2]|0);while(1){u=c[t>>2]|0;c[t>>2]=u+-1;if(!u)break;u=c[t>>2]|0;if(!(a[s+(c[t>>2]|0)>>0]|0)){Gp(c[c[r+(u<<2)>>2]>>2]|0);c[c[r+(c[t>>2]<<2)>>2]>>2]=0;continue}w=c[r+(c[t>>2]<<2)>>2]|0;if((((a[s+u>>0]|0)!=0^1)&1|0)==1){c[C>>2]=w;c[(c[C>>2]|0)+8>>2]=0;continue}else{c[D>>2]=w;hf(c[(c[D>>2]|0)+12>>2]|0);c[(c[D>>2]|0)+12>>2]=0;c[(c[D>>2]|0)+8>>2]=0;c[(c[D>>2]|0)+4>>2]=0;c[c[D>>2]>>2]=0;continue}}c[h>>2]=c[o>>2];G=c[h>>2]|0;i=g;return G|0}return 0}function _f(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[m>>2]=e;c[l>>2]=Zf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,m)|0;m=$f(c[l>>2]|0)|0;i=f;return m|0}function $f(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ag(1,c[d>>2]|0)|0;i=b;return a|0}function ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function bg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=13){g=6;break}a=(pu(c[1116+(c[f>>2]<<3)+4>>2]|0,c[e>>2]|0)|0)!=0;h=c[f>>2]|0;if(!a){g=4;break}c[f>>2]=h+1}if((g|0)==4){c[17628]=c[17628]|c[1116+(h<<3)>>2];c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}else if((g|0)==6){c[d>>2]=88;k=c[d>>2]|0;i=b;return k|0}return 0}function cg(){return c[17629]|0}function dg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((c[f>>2]|0)<0|(c[f>>2]|0)>>>0>=13){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[1116+(c[f>>2]<<3)>>2];c[e>>2]=c[1116+(c[f>>2]<<3)+4>>2];h=c[e>>2]|0;i=d;return h|0}function eg(){c[17629]=0;if(Jg()|0)return;fg();c[17629]=c[17629]&~c[17628];return}function fg(){var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;b=i;i=i+288|0;if((i|0)>=(j|0))U();d=b+20|0;e=b+16|0;f=b+24|0;g=b+12|0;h=b+8|0;k=b+4|0;l=b;c[d>>2]=22746;c[l>>2]=0;c[e>>2]=zv(c[d>>2]|0,23627)|0;if(!(c[e>>2]|0)){i=b;return}while(1){if(!(qv(f,256,c[e>>2]|0)|0))break;c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=f;while(1){if(a[c[g>>2]>>0]&128|0)break;if(!(fv(a[c[g>>2]>>0]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=Bv(c[g>>2]|0,10)|0;if(c[h>>2]|0)a[c[h>>2]>>0]=0;d=c[g>>2]|0;if(a[c[g>>2]>>0]|0)m=(Tu(c[g>>2]|0)|0)-1|0;else m=0;c[h>>2]=d+m;while(1){if((c[h>>2]|0)>>>0<=(c[g>>2]|0)>>>0)break;if((a[c[h>>2]>>0]&128|0)==0?fv(a[c[h>>2]>>0]|0)|0:0)a[c[h>>2]>>0]=0;c[h>>2]=(c[h>>2]|0)+-1}if(!(a[c[g>>2]>>0]|0))continue;if((a[c[g>>2]>>0]|0)==35)continue;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=13)break;d=(pu(c[1116+(c[k>>2]<<3)+4>>2]|0,c[g>>2]|0)|0)!=0;n=c[k>>2]|0;if(!d){o=23;break}c[k>>2]=n+1}if((o|0)==23){o=0;c[17628]=c[17628]|c[1116+(n<<3)>>2]}}Mv(c[e>>2]|0)|0;Ev(c[e>>2]|0)|0;i=b;return}function gg(){c[17630]=1;return}function hg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(!(c[f>>2]|0)){st(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17630]|0)){c[e>>2]=yw(b)|0;h=c[e>>2]|0;i=d;return h|0}k=yw(b+0+5|0)|0;c[g>>2]=k;if(k|0){a[c[g>>2]>>0]=c[f>>2];a[(c[g>>2]|0)+1>>0]=(c[f>>2]|0)>>>8;a[(c[g>>2]|0)+2>>0]=(c[f>>2]|0)>>>16;a[(c[g>>2]|0)+3>>0]=85;a[(c[g>>2]|0)+(4+(c[f>>2]|0))>>0]=-86;c[e>>2]=(c[g>>2]|0)+4;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}return 0}function ig(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(!(c[f>>2]|0)){st(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17630]|0)){c[e>>2]=ug(b)|0;h=c[e>>2]|0;i=d;return h|0}k=ug(b+0+5|0)|0;c[g>>2]=k;if(k|0){a[c[g>>2]>>0]=c[f>>2];a[(c[g>>2]|0)+1>>0]=(c[f>>2]|0)>>>8;a[(c[g>>2]|0)+2>>0]=(c[f>>2]|0)>>>16;a[(c[g>>2]|0)+3>>0]=-52;a[(c[g>>2]|0)+(4+(c[f>>2]|0))>>0]=-86;c[e>>2]=(c[g>>2]|0)+4;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}return 0}function jg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;b=c[g>>2]|0;if(!(c[17630]|0)){a=(Fg(b)|0)!=0;n=c[g>>2]|0;o=c[h>>2]|0;if(a){c[f>>2]=Eg(n,o)|0;p=c[f>>2]|0;i=e;return p|0}else{c[f>>2]=Bw(n,o)|0;p=c[f>>2]|0;i=e;return p|0}}c[k>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=hg(c[h>>2]|0)|0;p=c[f>>2]|0;i=e;return p|0}kg(c[k>>2]|0);c[m>>2]=d[(c[k>>2]|0)+-4>>0];c[m>>2]=c[m>>2]|(d[(c[k>>2]|0)+-3>>0]|0)<<8;c[m>>2]=c[m>>2]|(d[(c[k>>2]|0)+-2>>0]|0)<<16;if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){c[f>>2]=c[g>>2];p=c[f>>2]|0;i=e;return p|0}b=c[h>>2]|0;if((d[(c[k>>2]|0)+-1>>0]|0|0)==204)c[l>>2]=ig(b)|0;else c[l>>2]=hg(b)|0;if(c[l>>2]|0){Ow(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;Sw((c[l>>2]|0)+(c[m>>2]|0)|0,0,(c[h>>2]|0)-(c[m>>2]|0)|0)|0;lg(c[k>>2]|0);c[f>>2]=c[l>>2];p=c[f>>2]|0;i=e;return p|0}else{c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}return 0}function kg(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();e=b+8|0;f=b;g=b+24|0;h=b+20|0;k=b+16|0;c[g>>2]=a;if(!(c[17630]|0)){i=b;return}c[h>>2]=c[g>>2];if(!(c[h>>2]|0)){i=b;return}if((d[(c[h>>2]|0)+-1>>0]|0|0)!=85?(d[(c[h>>2]|0)+-1>>0]|0|0)!=204:0){g=d[(c[h>>2]|0)+-1>>0]|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;Je(22767,f)}c[k>>2]=d[(c[h>>2]|0)+-4>>0];c[k>>2]=c[k>>2]|(d[(c[h>>2]|0)+-3>>0]|0)<<8;c[k>>2]=c[k>>2]|(d[(c[h>>2]|0)+-2>>0]|0)<<16;if((d[(c[h>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=170){k=d[(c[h>>2]|0)+-1>>0]|0;c[e>>2]=c[h>>2];c[e+4>>2]=k;Je(22808,e)}else{i=b;return}}function lg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];if(!(c[e>>2]|0)){i=b;return}if(c[17630]|0){kg(c[e>>2]|0);a=(Fg(c[d>>2]|0)|0)!=0;f=(c[e>>2]|0)+-4|0;if(a){Cg(f);i=b;return}else{zw(f);i=b;return}}else{f=(Fg(c[d>>2]|0)|0)!=0;d=c[e>>2]|0;if(f){Cg(d);i=b;return}else{zw(d);i=b;return}}}function mg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;ut(1220)|0;c[e>>2]=c[17631];c[17632]=c[d>>2]&1;c[17631]=c[d>>2]&2;c[17633]=c[d>>2]&8;c[17634]=c[d>>2]&16;if(!((((c[e>>2]|0)==0|(c[17631]|0)!=0)^1)&(c[17635]|0)!=0)){vt(1220)|0;i=b;return}c[17635]=0;ng();vt(1220)|0;i=b;return}function ng(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();if(c[17632]|0){i=a;return}Ge(xe(22848)|0,a);i=a;return}function og(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;ut(1220)|0;c[b>>2]=c[17632]|0?1:0;c[b>>2]=c[b>>2]|(c[17631]|0?2:0);c[b>>2]=c[b>>2]|(c[17636]|0?4:0);c[b>>2]=c[b>>2]|(c[17633]|0?8:0);c[b>>2]=c[b>>2]|(c[17634]|0?16:0);vt(1220)|0;i=a;return c[b>>2]|0}function pg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;ut(1220)|0;qg(c[d>>2]|0);vt(1220)|0;i=b;return}function qg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+16|0;g=b+12|0;c[f>>2]=a;if(c[f>>2]|0){if((c[f>>2]|0)>>>0<16384)c[f>>2]=16384;if(c[17638]|0){Ie(23080,d);i=b;return}else{rg(c[f>>2]|0);sg(c[17640]|0,c[f>>2]|0);i=b;return}}c[17637]=1;c[g>>2]=Wv()|0;f=c[g>>2]|0;if((f|0)==(_v()|0)){i=b;return}if($v(c[g>>2]|0)|0)Je(22881,e);g=Wv()|0;if((g|0)!=(_v()|0))Je(22881,e);if($v(0)|0){i=b;return}else Je(22881,e)}function rg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+48|0;if((i|0)>=(j|0))U();d=b+16|0;e=b+8|0;f=b+32|0;g=b+28|0;h=b+24|0;k=b+20|0;c[f>>2]=a;c[17639]=c[f>>2];if(c[17637]|0)Ke(22904,b);c[h>>2]=Oa(30)|0;c[g>>2]=(c[h>>2]|0)!=-1&(c[h>>2]|0)>0?c[h>>2]|0:4096;c[17639]=(c[17639]|0)+(c[g>>2]|0)-1&~((c[g>>2]|0)-1);c[17640]=dw(0,c[17639]|0,3,34,-1,0)|0;if((c[17640]|0)==(-1|0)){g=c[17639]|0;h=xu(c[(fu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=h;Ge(22930,e)}else{c[17641]=1;c[17638]=1}if(c[17638]|0){l=c[17640]|0;c[k>>2]=l;m=c[17639]|0;n=c[k>>2]|0;c[n>>2]=m;o=c[k>>2]|0;p=o+4|0;c[p>>2]=0;i=b;return}c[17640]=yw(c[17639]|0)|0;if(!(c[17640]|0)){c[d>>2]=c[17639];Je(22978,d)}c[17638]=1;l=c[17640]|0;c[k>>2]=l;m=c[17639]|0;n=c[k>>2]|0;c[n>>2]=m;o=c[k>>2]|0;p=o+4|0;c[p>>2]=0;i=b;return}function sg(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();c[d+8>>2]=a;c[d+4>>2]=b;if(c[17633]|0){i=d;return}Ge(23018,d);i=d;return}function tg(){return 0}function ug(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;ut(1220)|0;c[e>>2]=vg(c[d>>2]|0)|0;vt(1220)|0;i=b;return c[e>>2]|0}function vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+20|0;g=b+16|0;h=b+12|0;c[g>>2]=a;if((c[17638]|0)==0?(qg(32768),(c[17638]|0)==0):0){Ge(xe(23126)|0,e);st(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(c[17636]|0?Jg()|0:0){Ge(xe(23187)|0,d);st(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(!((c[17635]|0)==0|(c[17631]|0)!=0)){c[17635]=0;ng()}c[g>>2]=((((c[g>>2]|0)+31|0)>>>0)/32|0)<<5;c[h>>2]=wg(c[17640]|0,c[g>>2]|0)|0;if(c[h>>2]|0)Bg(c[g>>2]|0,0);c[f>>2]=c[h>>2]|0?(c[h>>2]|0)+8|0:0;k=c[f>>2]|0;i=b;return k|0}function wg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];while(1){if(!(xg(c[g>>2]|0)|0))break;if((c[(c[g>>2]|0)+4>>2]&1|0)==0?(c[c[g>>2]>>2]|0)>>>0>=(c[f>>2]|0)>>>0:0){k=5;break}c[g>>2]=Ag(c[g>>2]|0)|0}if((k|0)==5?(k=(c[g>>2]|0)+4|0,c[k>>2]=c[k>>2]|1,((c[c[g>>2]>>2]|0)-(c[f>>2]|0)|0)>>>0>8):0){c[h>>2]=(c[g>>2]|0)+8+(c[f>>2]|0);c[c[h>>2]>>2]=(c[c[g>>2]>>2]|0)-(c[f>>2]|0)-8;c[(c[h>>2]|0)+4>>2]=0;c[c[g>>2]>>2]=c[f>>2];yg(c[h>>2]|0)}if(xg(c[g>>2]|0)|0){l=c[g>>2]|0;i=d;return l|0}st(12);c[g>>2]=0;l=c[g>>2]|0;i=d;return l|0}function xg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];c[f>>2]=c[17640];if((c[e>>2]|0)>>>0<(c[f>>2]|0)>>>0){g=0;h=g&1;i=b;return h|0}g=(c[e>>2]|0)>>>0<((c[f>>2]|0)+(c[17639]|0)|0)>>>0;h=g&1;i=b;return h|0}function yg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=zg(c[d>>2]|0)|0;c[f>>2]=Ag(c[d>>2]|0)|0;if(c[e>>2]|0?(c[(c[e>>2]|0)+4>>2]&1|0)==0:0){a=c[e>>2]|0;c[a>>2]=(c[a>>2]|0)+(8+(c[c[d>>2]>>2]|0));c[d>>2]=c[e>>2]}if(!(c[f>>2]|0)){i=b;return}if(c[(c[f>>2]|0)+4>>2]&1|0){i=b;return}e=c[d>>2]|0;c[e>>2]=(c[e>>2]|0)+(8+(c[c[f>>2]>>2]|0));i=b;return}function zg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if((c[d>>2]|0)==(c[17640]|0)){c[e>>2]=0;g=c[e>>2]|0;i=b;return g|0}c[e>>2]=c[17640];while(1){c[f>>2]=Ag(c[e>>2]|0)|0;if((c[f>>2]|0)==(c[d>>2]|0))break;c[e>>2]=c[f>>2]}g=c[e>>2]|0;i=b;return g|0}function Ag(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=(c[d>>2]|0)+8+(c[c[d>>2]>>2]|0);if(xg(c[e>>2]|0)|0){f=c[e>>2]|0;i=b;return f|0}c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}function Bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0){c[17642]=(c[17642]|0)+(c[e>>2]|0);c[17643]=(c[17643]|0)+1}if(!(c[f>>2]|0)){i=d;return}c[17642]=(c[17642]|0)-(c[f>>2]|0);c[17643]=(c[17643]|0)+-1;i=d;return}function Cg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;ut(1220)|0;Dg(c[d>>2]|0);vt(1220)|0;i=b;return}function Dg(b){b=b|0;var e=0,f=0,g=0,h=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,D=0,E=0,F=0;e=i;i=i+96|0;if((i|0)>=(j|0))U();f=e+88|0;g=e+84|0;h=e+80|0;k=e+76|0;l=e+72|0;m=e+95|0;n=e+24|0;o=e+68|0;p=e+64|0;q=e+60|0;r=e+94|0;s=e+16|0;t=e+56|0;u=e+52|0;v=e+48|0;w=e+93|0;x=e+8|0;y=e+44|0;z=e+40|0;A=e+36|0;B=e+92|0;D=e;E=e+32|0;c[f>>2]=b;if(!(c[f>>2]|0)){i=e;return}c[g>>2]=(c[f>>2]|0)+-8;c[h>>2]=c[c[g>>2]>>2];c[k>>2]=(c[g>>2]|0)+8;c[l>>2]=c[h>>2];a[m>>0]=-1;f=n;c[f>>2]=d[m>>0];c[f+4>>2]=0;while(1){if(!(c[k>>2]&7|0?(c[l>>2]|0)!=0:0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}if((c[l>>2]|0)>>>0>=8){f=n;b=Xw(c[f>>2]|0,c[f+4>>2]|0,16843009,16843009)|0;f=n;c[f>>2]=b;c[f+4>>2]=C;do{c[o>>2]=c[k>>2];f=n;b=c[f+4>>2]|0;F=c[o>>2]|0;c[F>>2]=c[f>>2];c[F+4>>2]=b;c[l>>2]=(c[l>>2]|0)-8;c[k>>2]=(c[k>>2]|0)+8}while((c[l>>2]|0)>>>0>=8)}while(1){if(!(c[l>>2]|0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}c[p>>2]=(c[g>>2]|0)+8;c[q>>2]=c[h>>2];a[r>>0]=-86;l=s;c[l>>2]=d[r>>0];c[l+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){l=s;k=Xw(c[l>>2]|0,c[l+4>>2]|0,16843009,16843009)|0;l=s;c[l>>2]=k;c[l+4>>2]=C;do{c[t>>2]=c[p>>2];l=s;k=c[l+4>>2]|0;m=c[t>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=k;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}c[u>>2]=(c[g>>2]|0)+8;c[v>>2]=c[h>>2];a[w>>0]=85;q=x;c[q>>2]=d[w>>0];c[q+4>>2]=0;while(1){if(!(c[u>>2]&7|0?(c[v>>2]|0)!=0:0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}if((c[v>>2]|0)>>>0>=8){q=x;p=Xw(c[q>>2]|0,c[q+4>>2]|0,16843009,16843009)|0;q=x;c[q>>2]=p;c[q+4>>2]=C;do{c[y>>2]=c[u>>2];q=x;p=c[q+4>>2]|0;r=c[y>>2]|0;c[r>>2]=c[q>>2];c[r+4>>2]=p;c[v>>2]=(c[v>>2]|0)-8;c[u>>2]=(c[u>>2]|0)+8}while((c[v>>2]|0)>>>0>=8)}while(1){if(!(c[v>>2]|0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}c[z>>2]=(c[g>>2]|0)+8;c[A>>2]=c[h>>2];a[B>>0]=0;v=D;c[v>>2]=d[B>>0];c[v+4>>2]=0;while(1){if(!(c[z>>2]&7|0?(c[A>>2]|0)!=0:0))break;a[c[z>>2]>>0]=a[B>>0]|0;c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}if((c[A>>2]|0)>>>0>=8){v=D;u=Xw(c[v>>2]|0,c[v+4>>2]|0,16843009,16843009)|0;v=D;c[v>>2]=u;c[v+4>>2]=C;do{c[E>>2]=c[z>>2];v=D;u=c[v+4>>2]|0;w=c[E>>2]|0;c[w>>2]=c[v>>2];c[w+4>>2]=u;c[A>>2]=(c[A>>2]|0)-8;c[z>>2]=(c[z>>2]|0)+8}while((c[A>>2]|0)>>>0>=8)}while(1){if(!(c[A>>2]|0))break;a[c[z>>2]>>0]=a[B>>0]|0;c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}Bg(0,c[h>>2]|0);h=(c[g>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2;yg(c[g>>2]|0);i=e;return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;ut(1220)|0;c[g>>2]=(c[e>>2]|0)+(0-8);c[h>>2]=c[c[g>>2]>>2];if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){c[k>>2]=c[e>>2];vt(1220)|0;l=c[k>>2]|0;i=d;return l|0}c[k>>2]=vg(c[f>>2]|0)|0;if(!(c[k>>2]|0)){vt(1220)|0;l=c[k>>2]|0;i=d;return l|0}Ow(c[k>>2]|0,c[e>>2]|0,c[h>>2]|0)|0;Sw((c[k>>2]|0)+(c[h>>2]|0)|0,0,(c[f>>2]|0)-(c[h>>2]|0)|0)|0;Dg(c[e>>2]|0);vt(1220)|0;l=c[k>>2]|0;i=d;return l|0}function Fg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(c[17638]|0)e=(xg(c[d>>2]|0)|0)!=0;else e=0;i=b;return e&1|0}function Gg(){var b=0,e=0,f=0,g=0,h=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,D=0;b=i;i=i+96|0;if((i|0)>=(j|0))U();e=b+76|0;f=b+72|0;g=b+83|0;h=b+24|0;k=b+68|0;l=b+64|0;m=b+60|0;n=b+82|0;o=b+16|0;p=b+56|0;q=b+52|0;r=b+48|0;s=b+81|0;t=b+8|0;u=b+44|0;v=b+40|0;w=b+36|0;x=b+80|0;y=b;z=b+32|0;if(!(c[17638]|0)){i=b;return}c[e>>2]=c[17640];c[f>>2]=c[17639];a[g>>0]=-1;A=h;c[A>>2]=d[g>>0];c[A+4>>2]=0;while(1){if(!(c[e>>2]&7|0?(c[f>>2]|0)!=0:0))break;a[c[e>>2]>>0]=a[g>>0]|0;c[e>>2]=(c[e>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+-1}if((c[f>>2]|0)>>>0>=8){A=h;B=Xw(c[A>>2]|0,c[A+4>>2]|0,16843009,16843009)|0;A=h;c[A>>2]=B;c[A+4>>2]=C;do{c[k>>2]=c[e>>2];A=h;B=c[A+4>>2]|0;D=c[k>>2]|0;c[D>>2]=c[A>>2];c[D+4>>2]=B;c[f>>2]=(c[f>>2]|0)-8;c[e>>2]=(c[e>>2]|0)+8}while((c[f>>2]|0)>>>0>=8)}while(1){if(!(c[f>>2]|0))break;a[c[e>>2]>>0]=a[g>>0]|0;c[e>>2]=(c[e>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+-1}c[l>>2]=c[17640];c[m>>2]=c[17639];a[n>>0]=-86;f=o;c[f>>2]=d[n>>0];c[f+4>>2]=0;while(1){if(!(c[l>>2]&7|0?(c[m>>2]|0)!=0:0))break;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}if((c[m>>2]|0)>>>0>=8){f=o;e=Xw(c[f>>2]|0,c[f+4>>2]|0,16843009,16843009)|0;f=o;c[f>>2]=e;c[f+4>>2]=C;do{c[p>>2]=c[l>>2];f=o;e=c[f+4>>2]|0;g=c[p>>2]|0;c[g>>2]=c[f>>2];c[g+4>>2]=e;c[m>>2]=(c[m>>2]|0)-8;c[l>>2]=(c[l>>2]|0)+8}while((c[m>>2]|0)>>>0>=8)}while(1){if(!(c[m>>2]|0))break;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}c[q>>2]=c[17640];c[r>>2]=c[17639];a[s>>0]=85;m=t;c[m>>2]=d[s>>0];c[m+4>>2]=0;while(1){if(!(c[q>>2]&7|0?(c[r>>2]|0)!=0:0))break;a[c[q>>2]>>0]=a[s>>0]|0;c[q>>2]=(c[q>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+-1}if((c[r>>2]|0)>>>0>=8){m=t;l=Xw(c[m>>2]|0,c[m+4>>2]|0,16843009,16843009)|0;m=t;c[m>>2]=l;c[m+4>>2]=C;do{c[u>>2]=c[q>>2];m=t;l=c[m+4>>2]|0;n=c[u>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=l;c[r>>2]=(c[r>>2]|0)-8;c[q>>2]=(c[q>>2]|0)+8}while((c[r>>2]|0)>>>0>=8)}while(1){if(!(c[r>>2]|0))break;a[c[q>>2]>>0]=a[s>>0]|0;c[q>>2]=(c[q>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+-1}c[v>>2]=c[17640];c[w>>2]=c[17639];a[x>>0]=0;r=y;c[r>>2]=d[x>>0];c[r+4>>2]=0;while(1){if(!(c[v>>2]&7|0?(c[w>>2]|0)!=0:0))break;a[c[v>>2]>>0]=a[x>>0]|0;c[v>>2]=(c[v>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+-1}if((c[w>>2]|0)>>>0>=8){r=y;q=Xw(c[r>>2]|0,c[r+4>>2]|0,16843009,16843009)|0;r=y;c[r>>2]=q;c[r+4>>2]=C;do{c[z>>2]=c[v>>2];r=y;q=c[r+4>>2]|0;s=c[z>>2]|0;c[s>>2]=c[r>>2];c[s+4>>2]=q;c[w>>2]=(c[w>>2]|0)-8;c[v>>2]=(c[v>>2]|0)+8}while((c[w>>2]|0)>>>0>=8)}while(1){if(!(c[w>>2]|0))break;a[c[v>>2]>>0]=a[x>>0]|0;c[v>>2]=(c[v>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+-1}if(c[17641]|0)gw(c[17640]|0,c[17639]|0)|0;c[17640]=0;c[17638]=0;c[17639]=0;c[17636]=0;i=b;return}function Hg(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;ut(1220)|0;if(!(c[17638]|0)){vt(1220)|0;i=a;return}d=c[17639]|0;e=c[17643]|0;c[b>>2]=c[17642];c[b+4>>2]=d;c[b+8>>2]=e;Ge(23240,b);vt(1220)|0;i=a;return}function Ig(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;b=i;i=i+544|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+28|0;g=b+24|0;h=b+20|0;k=b+16|0;l=b+288|0;m=b+12|0;n=b+32|0;c[f>>2]=a;if(c[17644]|0){if(Jg()|0){Kg(5);Og()}if(c[17644]|0)Fe(23509,23515,114,23522)}c[17644]=1;do if(c[f>>2]|0){if(c[17645]|0)Fe(23549,23515,121,23522)}else{if(!(Lv(23572,0)|0)){if(!(c[17645]|0))break;Fe(23549,23515,132,23522)}c[h>>2]=zv(23597,23627)|0;if(!(c[h>>2]|0)){a=c[(fu()|0)>>2]|0;c[k>>2]=a;if((a|0)!=2&(c[k>>2]|0)!=13?(Lv(23629,0)|0)==0:0){a=xu(c[k>>2]|0)|0;c[e>>2]=23597;c[e+4>>2]=a;Ge(23643,e);fb()}}else{if(qv(l,256,c[h>>2]|0)|0?mw(l)|0:0){Ev(c[h>>2]|0)|0;if(!(c[17645]|0))break;Fe(23549,23515,151,23522)}Ev(c[h>>2]|0)|0}c[17645]=1}while(0);if(c[17645]|0){i=b;return}c[g>>2]=tt(1264)|0;if(c[g>>2]|0){c[d>>2]=ot(c[g>>2]|0)|0;Ge(23687,d);fb()}c[m>>2]=zv(23572,23627)|0;if(c[m>>2]|0){if(qv(n,256,c[m>>2]|0)|0?mw(n)|0:0)c[17647]=1;Ev(c[m>>2]|0)|0}Kg(1);i=b;return}function Jg(){return ((c[17645]|0)!=0^1)&1|0}function Kg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b;e=b+20|0;f=b+16|0;g=b+12|0;c[e>>2]=a;c[f>>2]=0;Lg();c[g>>2]=c[17646];switch(c[17646]|0){case 0:{if((c[e>>2]|0)==1|(c[e>>2]|0)==4|(c[e>>2]|0)==5)c[f>>2]=1;break}case 1:{if((c[e>>2]|0)==2|(c[e>>2]|0)==4|(c[e>>2]|0)==5)c[f>>2]=1;break}case 2:{if((c[e>>2]|0)==3|(c[e>>2]|0)==4|(c[e>>2]|0)==5)c[f>>2]=1;break}case 3:{if((c[e>>2]|0)==6|(c[e>>2]|0)==2|(c[e>>2]|0)==4|(c[e>>2]|0)==5)c[f>>2]=1;break}case 4:{if((c[e>>2]|0)==6|(c[e>>2]|0)==4|(c[e>>2]|0)==5|(c[e>>2]|0)==2)c[f>>2]=1;break}case 5:{if((c[e>>2]|0)==6)c[f>>2]=1;break}default:{}}if(c[f>>2]|0)c[17646]=c[e>>2];Mg();if(!(c[f>>2]|0?!(Be(2)|0):0)){a=Ng(c[g>>2]|0)|0;g=Ng(c[e>>2]|0)|0;e=c[f>>2]|0?23454:23462;c[d>>2]=a;c[d+4>>2]=g;c[d+8>>2]=e;Ge(23469,d)}if(c[f>>2]|0){i=b;return}else{Og();i=b;return}}function Lg(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[d>>2]=ut(1264)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Ge(23281,b);fb()}else{i=a;return}}function Mg(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[d>>2]=vt(1264)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Ge(23336,b);fb()}else{i=a;return}}function Ng(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;switch(c[d>>2]|0){case 0:{c[e>>2]=23391;break}case 1:{c[e>>2]=23400;break}case 2:{c[e>>2]=23405;break}case 3:{c[e>>2]=23415;break}case 4:{c[e>>2]=23427;break}case 5:{c[e>>2]=23433;break}case 6:{c[e>>2]=23445;break}default:c[e>>2]=37750}i=b;return c[e>>2]|0}function Og(){Fv(0)|0;fb()}function Pg(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Jg()|0)c[b>>2]=c[17647];else c[b>>2]=0;i=a;return c[b>>2]|0}function Qg(){c[17647]=1;return}function Rg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(Jg()|0))Fe(23742,23515,295,23761);if(Pg()|0){Sg(23515,300,23761,0,c[d>>2]|0);i=b;return}Lg();if(c[17648]|0){Mg();i=b;return}else{c[17648]=1;Mg();i=b;return}}function Sg(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,k=0,l=0,m=0,n=0,o=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if(!(Jg()|0)){i=g;return}Kg(c[n>>2]|0?5:4);f=c[k>>2]|0;k=c[l>>2]|0;l=c[m>>2]|0?23795:76084;e=c[m>>2]|0?c[m>>2]|0:76084;m=c[o>>2]|0?c[o>>2]|0:23807;c[h>>2]=c[n>>2]|0?23788:76084;c[h+4>>2]=f;c[h+8>>2]=k;c[h+12>>2]=l;c[h+16>>2]=e;c[h+20>>2]=m;Ge(23832,h);i=g;return}function Tg(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a+4|0;d=a;if(Jg()|0){Lg();c[d>>2]=c[17648];Mg();c[b>>2]=c[d>>2];e=c[b>>2]|0;i=a;return e|0}else{c[b>>2]=0;e=c[b>>2]|0;i=a;return e|0}return 0}function Ug(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(!(Jg()|0)){c[b>>2]=1;d=c[b>>2]|0;i=a;return d|0}Lg();if((c[17646]|0)==1){Mg();Vg(0)|0;Lg()}c[b>>2]=(c[17646]|0)==3&1;Mg();d=c[b>>2]|0;i=a;return d|0}function Vg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=4;c[f>>2]=50;if(Jg()|0)Kg(2);if((((((Wg(c[d>>2]|0)|0)==0?(Yg(c[d>>2]|0)|0)==0:0)?(Zg(c[d>>2]|0)|0)==0:0)?(_g()|0)==0:0)?($g(c[d>>2]|0)|0)==0:0)?(ah()|0)==0:0){c[e>>2]=3;c[f>>2]=0}if(!(Jg()|0)){g=c[f>>2]|0;i=b;return g|0}Kg(c[e>>2]|0);g=c[f>>2]|0;i=b;return g|0}function Wg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=0;c[e>>2]=0;while(1){if(!(c[1308+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Bh(c[1308+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1308+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=ot(c[f>>2]|0)|0;else h=0;Xg(38451,a,0,h);if(c[f>>2]|0)c[g>>2]=1;c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function Xg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f;h=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[m>>2]|0)==0?(Be(2)|0)==0:0){i=f;return}e=(pu(c[h>>2]|0,36136)|0)!=0;d=e?c[h>>2]|0:42986;e=(pu(c[h>>2]|0,36136)|0)!=0^1;b=e?23880:76084;do if(pu(c[h>>2]|0,38451)|0){if(!(pu(c[h>>2]|0,42986)|0)){n=Ci(c[k>>2]|0)|0;break}if(!(pu(c[h>>2]|0,36136)|0)){n=Ci(c[k>>2]|0)|0;break}if(pu(c[h>>2]|0,49653)|0)n=76084;else n=Dj(c[k>>2]|0)|0}else n=gh(c[k>>2]|0)|0;while(0);h=c[k>>2]|0;k=c[m>>2]|0?c[m>>2]|0:23886;m=c[l>>2]|0?23891:76084;e=c[l>>2]|0?c[l>>2]|0:76084;a=c[l>>2]|0?49707:76084;c[g>>2]=d;c[g+4>>2]=b;c[g+8>>2]=n;c[g+12>>2]=h;c[g+16>>2]=k;c[g+20>>2]=m;c[g+24>>2]=e;c[g+28>>2]=a;Ge(23894,g);i=f;return}function Yg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=0;c[e>>2]=0;while(1){if(!(c[1328+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=fj(c[1328+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1328+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=ot(c[f>>2]|0)|0;else h=0;Xg(42986,a,0,h);if(c[f>>2]|0)c[g>>2]=1;c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function Zg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=0;c[e>>2]=0;while(1){if(!(c[1352+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=oi(c[1352+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1352+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=ot(c[f>>2]|0)|0;else h=0;Xg(36136,a,0,h);if(c[f>>2]|0)c[g>>2]=1;c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function _g(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=an(1)|0;if(c[b>>2]|0)d=ot(c[b>>2]|0)|0;else d=0;Xg(52417,0,0,d);i=a;return ((c[b>>2]|0)!=0^1^1)&1|0}function $g(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[g>>2]=0;c[e>>2]=0;while(1){if(!(c[1376+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Oj(c[1376+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1376+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=ot(c[f>>2]|0)|0;else h=0;Xg(49653,a,0,h);if(c[f>>2]|0)c[g>>2]=1;c[e>>2]=(c[e>>2]|0)+1}i=b;return c[g>>2]|0}function ah(){return 0}function bh(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Jg()|0){Lg();c[b>>2]=(c[17646]|0)==3&1;Mg()}else c[b>>2]=1;i=a;return c[b>>2]|0}function ch(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Jg()|0){Lg();c[b>>2]=((c[17646]|0)==3?1:(c[17646]|0)==4)&1;Mg();d=c[b>>2]|0;i=a;return d|0}else{c[b>>2]=1;d=c[b>>2]|0;i=a;return d|0}return 0}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[k>>2]|0)!=1){c[g>>2]=c[k>>2];Ke(23938,g)}if((c[l>>2]|0)>>>0<8)c[l>>2]=8;c[n>>2]=jf(1,8+(c[l>>2]|0)|0)|0;if(c[n>>2]|0){l=c[n>>2]|0;a[l>>0]=a[23984]|0;a[l+1>>0]=a[23985]|0;a[l+2>>0]=a[23986]|0;a[(c[n>>2]|0)+3>>0]=c[k>>2];c[(c[n>>2]|0)+4>>2]=c[m>>2];c[h>>2]=c[n>>2];o=c[h>>2]|0;i=f;return o|0}else{c[h>>2]=0;o=c[h>>2]|0;i=f;return o|0}return 0}function eh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+8|0;g=e;h=e+24|0;k=e+20|0;c[h>>2]=b;c[k>>2]=d;if(!(c[h>>2]|0)){l=c[h>>2]|0;c[g>>2]=l;Je(23988,g)}if(vv(c[h>>2]|0,23984,3)|0){l=c[h>>2]|0;c[g>>2]=l;Je(23988,g)}if((a[(c[h>>2]|0)+3>>0]|0)!=(c[k>>2]|0)){g=c[h>>2]|0;l=a[(c[h>>2]|0)+3>>0]|0;c[f>>2]=c[k>>2];c[f+4>>2]=g;c[f+8>>2]=l;Je(24036,f)}else{i=e;return (c[h>>2]|0)+8|0}return 0}function fh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=d+12|0;c[g>>2]=b;if(!(c[g>>2]|0)){i=d;return}b=(vv(c[g>>2]|0,23984,3)|0)!=0;h=c[g>>2]|0;if(b){c[f>>2]=h;Je(24093,f)}f=c[g>>2]|0;if((a[h+3>>0]|0)!=1){c[e>>2]=a[f+3>>0];Je(24135,e)}if(c[f+4>>2]|0)ub[c[(c[g>>2]|0)+4>>2]&15]((c[g>>2]|0)+8|0);hf(c[g>>2]|0);i=d;return}function gh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=hh(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37750;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function hh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=ih(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[1388+(c[f>>2]<<2)>>2]|0;c[g>>2]=a;if(!a){h=6;break}if((c[e>>2]|0)==(c[c[g>>2]>>2]|0)){h=4;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==4){c[d>>2]=c[g>>2];k=c[d>>2]|0;i=b;return k|0}else if((h|0)==6){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}return 0}function ih(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]|0}function jh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0;if((c[k>>2]|0)>=65536)c[m>>2]=71;else c[m>>2]=kh(n,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[g>>2]>>2]=c[m>>2]|0?0:c[n>>2]|0;i=f;return c[m>>2]|0}function kh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[m>>2]&1;c[p>>2]=0;_m();c[o>>2]=hh(c[k>>2]|0)|0;do if(c[o>>2]|0)if(a[(c[o>>2]|0)+4>>0]&1|0){c[q>>2]=12;break}else{c[q>>2]=0;break}else c[q>>2]=12;while(0);do if(!(c[q>>2]|0)){if((c[m>>2]&-16|0)==0?(c[m>>2]&0|0)==0:0)break;c[q>>2]=12}while(0);a:do if(!(c[q>>2]|0)){f=c[l>>2]|0;b:do if((f|0)<6)switch(f|0){case 5:case 2:case 3:case 1:{break b;break}case 4:{if(c[(c[o>>2]|0)+44>>2]|0?c[(c[o>>2]|0)+48>>2]|0:0)break a;c[q>>2]=71;break a;break}case 0:{if((Jg()|0)==0?sf(0)|0:0)break a;c[q>>2]=71;break a;break}default:{t=37;break b}}else{if((f|0)<9){switch(f|0){case 7:case 6:{break b;break}case 8:break;default:{t=37;break b}}if((c[(c[o>>2]|0)+20>>2]|0)!=16)c[q>>2]=71;if(c[(c[o>>2]|0)+36>>2]|0?c[(c[o>>2]|0)+40>>2]|0:0)break a;c[q>>2]=71;break a}if((f|0)<11){switch(f|0){case 9:{break b;break}case 10:break;default:{t=37;break b}}if((c[(c[o>>2]|0)+44>>2]|0?c[(c[o>>2]|0)+48>>2]|0:0)?c[(c[o>>2]|0)+60>>2]|0:0){if((c[c[o>>2]>>2]|0)==316)break a;c[q>>2]=71;break a}c[q>>2]=71;break a}if((f|0)>=65537)switch(f|0){case 65537:{break b;break}default:{t=37;break b}}switch(f|0){case 11:break;default:{t=37;break b}}if(c[(c[o>>2]|0)+36>>2]|0?c[(c[o>>2]|0)+40>>2]|0:0){if((c[(c[o>>2]|0)+20>>2]|0)==16)break a;c[q>>2]=71;break a}c[q>>2]=71;break a}while(0);if((t|0)==37){c[q>>2]=71;break}if(c[(c[o>>2]|0)+36>>2]|0?c[(c[o>>2]|0)+40>>2]|0:0)break;c[q>>2]=71}while(0);if(c[q>>2]|0){u=c[q>>2]|0;v=(u|0)!=0;w=c[p>>2]|0;x=v?0:w;y=c[h>>2]|0;c[y>>2]=x;z=c[q>>2]|0;A=lh(z)|0;i=g;return A|0}c[r>>2]=512+(c[(c[o>>2]|0)+28>>2]<<1)-16+15;t=c[r>>2]|0;if(c[n>>2]|0)c[p>>2]=kf(1,t)|0;else c[p>>2]=jf(1,t)|0;if(!(c[p>>2]|0)){c[q>>2]=rt()|0;u=c[q>>2]|0;v=(u|0)!=0;w=c[p>>2]|0;x=v?0:w;y=c[h>>2]|0;c[y>>2]=x;z=c[q>>2]|0;A=lh(z)|0;i=g;return A|0}c[s>>2]=0;if(c[p>>2]&15|0){c[s>>2]=16-(c[p>>2]&15);c[p>>2]=(c[p>>2]|0)+(c[s>>2]|0)}c[c[p>>2]>>2]=c[n>>2]|0?1183944770:604576100;c[(c[p>>2]|0)+4>>2]=(c[r>>2]|0)-(c[s>>2]|0);c[(c[p>>2]|0)+8>>2]=c[s>>2];c[(c[p>>2]|0)+12>>2]=c[o>>2];c[(c[p>>2]|0)+16>>2]=c[k>>2];c[(c[p>>2]|0)+48>>2]=c[l>>2];c[(c[p>>2]|0)+52>>2]=c[m>>2];switch(c[k>>2]|0){case 9:case 8:case 7:{c[(c[p>>2]|0)+20>>2]=1;c[(c[p>>2]|0)+20+4>>2]=2;c[(c[p>>2]|0)+20+8>>2]=1;c[(c[p>>2]|0)+20+12>>2]=3;c[(c[p>>2]|0)+20+16>>2]=4;c[(c[p>>2]|0)+20+20>>2]=5;c[(c[p>>2]|0)+20+24>>2]=2;break}case 303:case 10:{c[(c[p>>2]|0)+20+12>>2]=6;c[(c[p>>2]|0)+20+4>>2]=7;c[(c[p>>2]|0)+20+16>>2]=8;break}default:{}}if((c[l>>2]|0)!=11){u=c[q>>2]|0;v=(u|0)!=0;w=c[p>>2]|0;x=v?0:w;y=c[h>>2]|0;c[y>>2]=x;z=c[q>>2]|0;A=lh(z)|0;i=g;return A|0}a[(c[p>>2]|0)+128+352>>0]=16;u=c[q>>2]|0;v=(u|0)!=0;w=c[p>>2]|0;x=v?0:w;y=c[h>>2]|0;c[y>>2]=x;z=c[q>>2]|0;A=lh(z)|0;i=g;return A|0}function lh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=mh(32,c[d>>2]|0)|0;i=b;return a|0}function mh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=nh(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function oh(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+28|0;m=e;n=e+8|0;c[f>>2]=b;if(!(c[f>>2]|0)){i=e;return}if((c[c[f>>2]>>2]|0)!=1183944770?(c[c[f>>2]>>2]|0)!=604576100:0)ye(63,24184);c[c[f>>2]>>2]=0;c[g>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=c[f>>2];c[k>>2]=c[(c[f>>2]|0)+4>>2];a[l>>0]=0;b=m;c[b>>2]=d[l>>0];c[b+4>>2]=0;while(1){if(!(c[h>>2]&7|0?(c[k>>2]|0)!=0:0))break;a[c[h>>2]>>0]=a[l>>0]|0;c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+-1}if((c[k>>2]|0)>>>0>=8){b=m;o=Xw(c[b>>2]|0,c[b+4>>2]|0,16843009,16843009)|0;b=m;c[b>>2]=o;c[b+4>>2]=C;do{c[n>>2]=c[h>>2];b=m;o=c[b+4>>2]|0;p=c[n>>2]|0;c[p>>2]=c[b>>2];c[p+4>>2]=o;c[k>>2]=(c[k>>2]|0)-8;c[h>>2]=(c[h>>2]|0)+8}while((c[k>>2]|0)>>>0>=8)}while(1){if(!(c[k>>2]|0))break;a[c[h>>2]>>0]=a[l>>0]|0;c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+-1}hf((c[f>>2]|0)+(0-(c[g>>2]|0))|0);i=e;return}function ph(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,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if(!(c[m>>2]|0)){c[m>>2]=c[k>>2];c[n>>2]=c[l>>2]}c[o>>2]=qh(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!((c[o>>2]|0)!=0&(c[k>>2]|0)!=0)){p=c[o>>2]|0;i=g;return p|0}Sw(c[k>>2]|0,66,c[l>>2]|0)|0;p=c[o>>2]|0;i=g;return p|0}function qh(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;f=c[(c[k>>2]|0)+48>>2]|0;a:do if((f|0)>=6){if((f|0)<9)switch(f|0){case 6:{c[p>>2]=lq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 7:{c[p>>2]=Sp(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 8:{c[p>>2]=bq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24279,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=oq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 10:{c[p>>2]=ar(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24279,h)}}if((f|0)<65537)switch(f|0){case 11:{c[p>>2]=Tq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24279,h)}}else switch(f|0){case 65537:{c[p>>2]=71;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24279,h)}}}else switch(f|0){case 1:{c[p>>2]=rh(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 3:{c[p>>2]=Vp(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 2:{c[p>>2]=dq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 5:{c[p>>2]=Xq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 4:{Cb[c[(c[(c[k>>2]|0)+12>>2]|0)+44>>2]&1]((c[k>>2]|0)+496|0,c[l>>2]|0,c[n>>2]|0,c[o>>2]|0);c[p>>2]=0;break a;break}case 0:{if((Jg()|0)==0?sf(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Qw(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Sg(24233,875,24242,0,24257);c[p>>2]=71;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24279,h)}}while(0);i=g;return c[p>>2]|0}function rh(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=sh(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[(c[(c[h>>2]|0)+12>>2]|0)+36>>2]|0)|0;i=g;return f|0}function sh(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=i;i=i+48|0;if((i|0)>=(j|0))U();k=h+44|0;l=h+40|0;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;q=h+20|0;r=h+16|0;s=h+12|0;t=h+8|0;u=h+4|0;v=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+20>>2];if((c[n>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[k>>2]=200;w=c[k>>2]|0;i=h;return w|0}if(((c[p>>2]|0)>>>0)%((c[r>>2]|0)>>>0)|0|0){c[k>>2]=139;w=c[k>>2]|0;i=h;return w|0}c[t>>2]=((c[p>>2]|0)>>>0)/((c[r>>2]|0)>>>0)|0;c[u>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[v>>2]=sb[c[q>>2]&63]((c[l>>2]|0)+496|0,c[m>>2]|0,c[o>>2]|0)|0;c[u>>2]=(c[v>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[v>>2]|0:c[u>>2]|0;c[o>>2]=(c[o>>2]|0)+(c[r>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[r>>2]|0);c[s>>2]=(c[s>>2]|0)+1}if((c[u>>2]|0)>>>0>0){Qe((c[u>>2]|0)+16|0);Re()}c[k>>2]=0;w=c[k>>2]|0;i=h;return w|0}function th(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;if(!(c[m>>2]|0)){c[m>>2]=c[k>>2];c[n>>2]=c[l>>2]}f=uh(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;i=g;return f|0}function uh(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;f=c[(c[k>>2]|0)+48>>2]|0;a:do if((f|0)>=6){if((f|0)<9)switch(f|0){case 6:{c[p>>2]=lq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 7:{c[p>>2]=Up(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 8:{c[p>>2]=cq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24327,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=xq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 10:{c[p>>2]=dr(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24327,h)}}if((f|0)<65537)switch(f|0){case 11:{c[p>>2]=Wq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24327,h)}}else switch(f|0){case 65537:{c[p>>2]=71;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24327,h)}}}else switch(f|0){case 1:{c[p>>2]=vh(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 3:{c[p>>2]=Yp(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 2:{c[p>>2]=gq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 5:{c[p>>2]=Xq(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;break a;break}case 4:{Cb[c[(c[(c[k>>2]|0)+12>>2]|0)+48>>2]&1]((c[k>>2]|0)+496|0,c[l>>2]|0,c[n>>2]|0,c[o>>2]|0);c[p>>2]=0;break a;break}case 0:{if((Jg()|0)==0?sf(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Qw(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Sg(24233,992,24312,0,24257);c[p>>2]=71;break a;break}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Je(24327,h)}}while(0);i=g;return c[p>>2]|0}function vh(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=sh(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[(c[(c[h>>2]|0)+12>>2]|0)+40>>2]|0)|0;i=g;return f|0}function wh(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=xh(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function xh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=sb[c[(c[(c[g>>2]|0)+12>>2]|0)+32>>2]&63]((c[g>>2]|0)+496|0,c[h>>2]|0,c[k>>2]|0)|0;k=c[g>>2]|0;a:do if(!(c[l>>2]|0)){Ow(k+496+(c[(c[(c[g>>2]|0)+12>>2]|0)+28>>2]|0)|0,(c[g>>2]|0)+496|0,c[(c[(c[g>>2]|0)+12>>2]|0)+28>>2]|0)|0;h=(c[g>>2]|0)+56|0;a[h>>0]=a[h>>0]&-2|1;h=c[(c[g>>2]|0)+48>>2]|0;if((h|0)<10){switch(h|0){case 9:break;default:break a}yq(c[g>>2]|0);break}if((h|0)<65537){switch(h|0){case 10:break;default:break a}er(c[g>>2]|0);break}else{switch(h|0){case 65537:break;default:break a}jq(c[g>>2]|0)|0;break}}else{h=k+56|0;a[h>>0]=a[h>>0]&-2}while(0);i=f;return c[l>>2]|0}function yh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;switch(c[(c[f>>2]|0)+48>>2]|0){case 8:{c[k>>2]=_p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=pq(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=_q(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 11:{c[k>>2]=Pq(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=zh(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}i=e;return c[k>>2]|0}function zh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[k>>2]|0;if(c[(c[(c[k>>2]|0)+12>>2]|0)+60>>2]|0){xb[c[(c[e+12>>2]|0)+60>>2]&7]((c[k>>2]|0)+496|0,c[l>>2]|0,c[m>>2]|0);c[h>>2]=0;n=c[h>>2]|0;i=f;return n|0}Sw(e+64|0,0,c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2]|0)|0;if(c[l>>2]|0){if((c[m>>2]|0)!=(c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2]|0)){e=c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2]|0;c[g>>2]=c[m>>2];c[g+4>>2]=e;Ge(24360,g);Sg(24233,682,24403,0,24416)}if((c[m>>2]|0)>>>0>(c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2]|0)>>>0)c[m>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2];Ow((c[k>>2]|0)+64|0,c[l>>2]|0,c[m>>2]|0)|0;m=(c[k>>2]|0)+56|0;a[m>>0]=a[m>>0]&-3|2}else{m=(c[k>>2]|0)+56|0;a[m>>0]=a[m>>0]&-3}c[(c[k>>2]|0)+112>>2]=0;c[h>>2]=0;n=c[h>>2]|0;i=f;return n|0}function Ah(){return 0}function Bh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=0;c[m>>2]=hh(c[g>>2]|0)|0;if((c[m>>2]|0?(a[(c[m>>2]|0)+4>>0]&1|0)==0:0)?c[(c[m>>2]|0)+52>>2]|0:0){c[l>>2]=sb[c[(c[m>>2]|0)+52>>2]&63](c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;n=c[l>>2]|0;o=Ch(n)|0;i=f;return o|0}c[l>>2]=12;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=Ch(n)|0;i=f;return o|0}h=c[k>>2]|0;k=c[g>>2]|0;if(c[m>>2]|0?!(a[(c[m>>2]|0)+4>>0]&1|0):0)p=37821;else p=c[m>>2]|0?37782:37801;Cb[h&1](38451,k,37843,p);n=c[l>>2]|0;o=Ch(n)|0;i=f;return o|0}function Ch(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=nh(1,c[d>>2]|0)|0;i=b;return a|0}function Dh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+24|0;k=g+20|0;l=g+16|0;m=g+12|0;n=g+8|0;o=g+4|0;p=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[p>>2]=0;if(!(c[l>>2]|0)){c[o>>2]=0;while(1){if(!(c[1412+((c[o>>2]|0)*48|0)>>2]|0))break;if((c[k>>2]|0)==(c[1412+((c[o>>2]|0)*48|0)+4>>2]|0)?(c[1412+((c[o>>2]|0)*48|0)+12>>2]|0)==0:0)break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[1412+((c[o>>2]|0)*48|0)>>2]|0))c[o>>2]=-1}else c[o>>2]=Eh(c[l>>2]|0)|0;if((c[o>>2]|0)<0){c[h>>2]=188;q=c[h>>2]|0;i=g;return q|0}c[p>>2]=c[1412+((c[o>>2]|0)*48|0)>>2];if(Jg()|0?(a[1412+((c[o>>2]|0)*48|0)+8>>0]&1|0)==0:0){c[h>>2]=60;q=c[h>>2]|0;i=g;return q|0}if((c[1412+((c[o>>2]|0)*48|0)+12>>2]|0)>>>0>=3){c[h>>2]=59;q=c[h>>2]|0;i=g;return q|0}if(c[n>>2]|0)c[c[n>>2]>>2]=c[1412+((c[o>>2]|0)*48|0)+4>>2];if(c[m>>2]|0){c[c[m>>2]>>2]=c[1412+((c[o>>2]|0)*48|0)+12>>2];c[(c[m>>2]|0)+4>>2]=c[1412+((c[o>>2]|0)*48|0)+16>>2];if(!(c[(c[m>>2]|0)+8>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+20>>2]|0)|0;c[(c[m>>2]|0)+8>>2]=n}if(!(c[(c[m>>2]|0)+12>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+24>>2]|0)|0;c[(c[m>>2]|0)+12>>2]=n}if(!(c[(c[m>>2]|0)+16>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+28>>2]|0)|0;c[(c[m>>2]|0)+16>>2]=n}if(!(c[(c[m>>2]|0)+32>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+32>>2]|0)|0;c[(c[m>>2]|0)+32>>2]=n}if(!(c[(c[m>>2]|0)+36>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+44>>2]|0)|0;c[(c[m>>2]|0)+36>>2]=n}if(!(c[(c[m>>2]|0)+20>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+36>>2]|0)|0;c[(c[m>>2]|0)+20>>2]=n}if(!(c[(c[m>>2]|0)+20+4>>2]|0)){n=Fh(c[1412+((c[o>>2]|0)*48|0)+40>>2]|0)|0;c[(c[m>>2]|0)+20+4>>2]=n}if(!(c[(c[m>>2]|0)+20+8>>2]|0)){n=hp(1)|0;c[(c[m>>2]|0)+20+8>>2]=n}if(!(c[(c[m>>2]|0)+40>>2]|0))c[(c[m>>2]|0)+40>>2]=c[p>>2]}c[h>>2]=0;q=c[h>>2]|0;i=g;return q|0}function Eh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=0;while(1){if(!(c[1412+((c[f>>2]|0)*48|0)>>2]|0))break;a=(pu(c[e>>2]|0,c[1412+((c[f>>2]|0)*48|0)>>2]|0)|0)!=0;h=c[f>>2]|0;if(!a){k=4;break}c[f>>2]=h+1}if((k|0)==4){c[d>>2]=h;l=c[d>>2]|0;i=b;return l|0}a:do if(!(c[1412+((c[f>>2]|0)*48|0)>>2]|0)){c[g>>2]=0;while(1){if(!(c[2468+(c[g>>2]<<3)>>2]|0))break;if(!(pu(c[e>>2]|0,c[2468+(c[g>>2]<<3)+4>>2]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[2468+(c[g>>2]<<3)>>2]|0){c[f>>2]=0;while(1){if(!(c[1412+((c[f>>2]|0)*48|0)>>2]|0))break a;h=(pu(c[2468+(c[g>>2]<<3)>>2]|0,c[1412+((c[f>>2]|0)*48|0)>>2]|0)|0)!=0;m=c[f>>2]|0;if(!h)break;c[f>>2]=m+1}c[d>>2]=m;l=c[d>>2]|0;i=b;return l|0}}while(0);c[d>>2]=-1;l=c[d>>2]|0;i=b;return l|0}function Fh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;c[f>>2]=Mo(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=ot(c[f>>2]|0)|0;Je(35635,d)}else{i=b;return c[g>>2]|0}return 0}function Gh(a,b,d,e,f,g,h,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+64|0;if((i|0)>=(j|0))U();n=m+48|0;o=m+44|0;p=m+40|0;q=m+36|0;r=m+32|0;s=m+28|0;t=m+24|0;u=m+20|0;v=m+16|0;w=m+12|0;x=m+8|0;y=m+4|0;z=m;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[v>>2]=k;c[w>>2]=l;c[x>>2]=Eh(c[o>>2]|0)|0;if((c[x>>2]|0)<0){c[n>>2]=188;A=c[n>>2]|0;i=m;return A|0}do if(c[u>>2]|0){c[z>>2]=4;o=Tu((c[1412+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;c[z>>2]=(c[z>>2]|0)+o;o=Tu((c[1412+((c[x>>2]|0)*48|0)+40>>2]|0)+2|0)|0;c[z>>2]=(c[z>>2]|0)+o;c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=bf(c[z>>2]|0)|0;if(c[y>>2]|0){o=ev(c[y>>2]|0,35374)|0;l=ev(o,(c[1412+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;dv(l,(c[1412+((c[x>>2]|0)*48|0)+40>>2]|0)+2|0)|0;Gp(c[c[u>>2]>>2]|0);l=Fh(c[y>>2]|0)|0;c[c[u>>2]>>2]=l;hf(c[y>>2]|0);break}c[n>>2]=rt()|0;A=c[n>>2]|0;i=m;return A|0}while(0);if(c[p>>2]|0)c[c[p>>2]>>2]=c[1412+((c[x>>2]|0)*48|0)+12>>2];if(c[q>>2]|0)c[c[q>>2]>>2]=c[1412+((c[x>>2]|0)*48|0)+16>>2];if(c[r>>2]|0){Gp(c[c[r>>2]>>2]|0);q=Fh(c[1412+((c[x>>2]|0)*48|0)+20>>2]|0)|0;c[c[r>>2]>>2]=q}if(c[s>>2]|0){Gp(c[c[s>>2]>>2]|0);q=Fh(c[1412+((c[x>>2]|0)*48|0)+24>>2]|0)|0;c[c[s>>2]>>2]=q}if(c[t>>2]|0){Gp(c[c[t>>2]>>2]|0);q=Fh(c[1412+((c[x>>2]|0)*48|0)+28>>2]|0)|0;c[c[t>>2]>>2]=q}if(c[v>>2]|0){Gp(c[c[v>>2]>>2]|0);q=Fh(c[1412+((c[x>>2]|0)*48|0)+32>>2]|0)|0;c[c[v>>2]>>2]=q}if(c[w>>2]|0){Gp(c[c[w>>2]>>2]|0);q=Fh(c[1412+((c[x>>2]|0)*48|0)+44>>2]|0)|0;c[c[w>>2]>>2]=q}c[n>>2]=0;A=c[n>>2]|0;i=m;return A|0}function Hh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+128|0;if((i|0)>=(j|0))U();f=e;g=e+112|0;h=e+108|0;k=e+104|0;l=e+100|0;m=e+96|0;n=e+92|0;o=e+48|0;p=e+44|0;q=e+40|0;r=e+36|0;s=e+32|0;t=e+28|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[n>>2]=0;c[p>>2]=0;c[q>>2]=0;d=o;b=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));if(c[l>>2]|0)c[c[l>>2]>>2]=0;if(!(c[h>>2]|0)){c[r>>2]=c[k>>2];if((c[r>>2]|0)>=0&(c[r>>2]|0)>>>0<22?(c[n>>2]=c[1412+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1412+((c[r>>2]|0)*48|0)+4>>2];c[g>>2]=c[n>>2];u=c[g>>2]|0;i=e;return u|0}k=c[h>>2]|0;c[f>>2]=o+8;c[f+4>>2]=o+12;c[f+8>>2]=o+16;c[f+12>>2]=p;c[f+16>>2]=o+32;c[f+20>>2]=o+36;c[f+24>>2]=0;c[m>>2]=Ih(_f(k,0,35379,f)|0)|0;a:do if((c[m>>2]|0)==68){c[s>>2]=Gf(c[h>>2]|0,46978,5)|0;if(c[s>>2]|0?(c[t>>2]=Nf(c[s>>2]|0,1)|0,Ef(c[s>>2]|0),c[t>>2]|0):0){c[r>>2]=Eh(c[t>>2]|0)|0;hf(c[t>>2]|0);if((c[r>>2]|0)>=0?(c[n>>2]=c[1412+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1412+((c[r>>2]|0)*48|0)+4>>2];c[g>>2]=c[n>>2];u=c[g>>2]|0;i=e;return u|0}}else if(!(c[m>>2]|0)){if(c[p>>2]|0?(ln(o+20|0),mi(o+20|0,c[p>>2]|0)|0):0)break;c[r>>2]=0;while(1){if(!(c[1412+((c[r>>2]|0)*48|0)>>2]|0))break a;qp(c[q>>2]|0);c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+20>>2]|0)|0;if(((((((jo(c[q>>2]|0,c[o+8>>2]|0)|0)==0?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+24>>2]|0)|0,(jo(c[q>>2]|0,c[o+12>>2]|0)|0)==0):0)?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+28>>2]|0)|0,(jo(c[q>>2]|0,c[o+16>>2]|0)|0)==0):0)?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+32>>2]|0)|0,(jo(c[q>>2]|0,c[o+32>>2]|0)|0)==0):0)?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+44>>2]|0)|0,(jo(c[q>>2]|0,c[o+36>>2]|0)|0)==0):0)?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+36>>2]|0)|0,(jo(c[q>>2]|0,c[o+20>>2]|0)|0)==0):0)?(qp(c[q>>2]|0),c[q>>2]=Fh(c[1412+((c[r>>2]|0)*48|0)+40>>2]|0)|0,(jo(c[q>>2]|0,c[o+20+4>>2]|0)|0)==0):0)break;c[r>>2]=(c[r>>2]|0)+1}c[n>>2]=c[1412+((c[r>>2]|0)*48|0)>>2];if(c[l>>2]|0)c[c[l>>2]>>2]=c[1412+((c[r>>2]|0)*48|0)+4>>2]}while(0);Gp(c[q>>2]|0);Gp(c[o+8>>2]|0);Gp(c[o+12>>2]|0);Gp(c[o+16>>2]|0);Gp(c[p>>2]|0);nn(o+20|0);Gp(c[o+32>>2]|0);Gp(c[o+36>>2]|0);c[g>>2]=c[n>>2];u=c[g>>2]|0;i=e;return u|0}function Ih(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Jh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+76|0;g=e+72|0;h=e+68|0;k=e+64|0;l=e+60|0;m=e+56|0;n=e+52|0;o=e+48|0;p=e+44|0;q=e+40|0;r=e+36|0;s=e+32|0;t=e+28|0;u=e+24|0;v=e+20|0;w=e+16|0;x=e+12|0;y=e+8|0;z=e+4|0;A=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0;c[c[f>>2]>>2]=0;do if(c[g>>2]|0){c[x>>2]=Gf(c[g>>2]|0,46984,0)|0;if(c[x>>2]|0?(c[k>>2]=sj(c[x>>2]|0,w,0)|0,Ef(c[x>>2]|0),c[x>>2]=0,c[k>>2]|0):0)break;c[x>>2]=Gf(c[g>>2]|0,46978,5)|0;if(c[x>>2]|0?(c[w>>2]&512|0)==0:0){B=13;break}c[k>>2]=Kh(o,c[g>>2]|0,48461)|0;if((((((c[k>>2]|0)==0?(c[k>>2]=Kh(p,c[g>>2]|0,39187)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Kh(q,c[g>>2]|0,35387)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Lh(r,c[g>>2]|0,35389,0)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Kh(s,c[g>>2]|0,39191)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Kh(t,c[g>>2]|0,35400)|0,(c[k>>2]|0)==0):0)B=13}else{c[x>>2]=0;B=13}while(0);do if((B|0)==13){if((c[x>>2]|0)!=0|(c[h>>2]|0)!=0){if(c[x>>2]|0){c[y>>2]=Nf(c[x>>2]|0,1)|0;Ef(c[x>>2]|0);if(!(c[y>>2]|0)){c[k>>2]=65;break}}else c[y>>2]=0;c[z>>2]=jf(1,44)|0;if(!(c[z>>2]|0)){c[k>>2]=rt()|0;hf(c[y>>2]|0);break}c[k>>2]=Dh(0,c[y>>2]|0?c[y>>2]|0:c[h>>2]|0,c[z>>2]|0,0)|0;hf(c[y>>2]|0);d=c[z>>2]|0;if(c[k>>2]|0){hf(d);break}c[m>>2]=c[d>>2];c[n>>2]=c[(c[z>>2]|0)+4>>2];if(!(c[o>>2]|0)){c[o>>2]=c[(c[z>>2]|0)+8>>2];c[(c[z>>2]|0)+8>>2]=0}if(!(c[p>>2]|0)){c[p>>2]=c[(c[z>>2]|0)+12>>2];c[(c[z>>2]|0)+12>>2]=0}if(!(c[q>>2]|0)){c[q>>2]=c[(c[z>>2]|0)+16>>2];c[(c[z>>2]|0)+16>>2]=0}if(!(c[r>>2]|0)){c[r>>2]=pn(0,c[(c[z>>2]|0)+20>>2]|0,c[(c[z>>2]|0)+20+4>>2]|0,c[(c[z>>2]|0)+20+8>>2]|0)|0;c[(c[z>>2]|0)+20>>2]=0;c[(c[z>>2]|0)+20+4>>2]=0;c[(c[z>>2]|0)+20+8>>2]=0}if(!(c[s>>2]|0)){c[s>>2]=c[(c[z>>2]|0)+32>>2];c[(c[z>>2]|0)+32>>2]=0}if(!(c[t>>2]|0)){c[t>>2]=c[(c[z>>2]|0)+36>>2];c[(c[z>>2]|0)+36>>2]=0}fi(c[z>>2]|0);hf(c[z>>2]|0)}c[k>>2]=tn(l,c[m>>2]|0,c[n>>2]|0,c[w>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(!(c[k>>2]|0)){c[A>>2]=eh(c[l>>2]|0,1)|0;if(c[q>>2]|0){qp(c[(c[A>>2]|0)+24>>2]|0);c[(c[A>>2]|0)+24>>2]=c[q>>2];c[q>>2]=0}if(c[r>>2]|0){c[(c[A>>2]|0)+28>>2]=c[r>>2];c[r>>2]=0}if(c[s>>2]|0){c[(c[A>>2]|0)+32>>2]=c[s>>2];c[s>>2]=0}if(c[t>>2]|0){c[(c[A>>2]|0)+36>>2]=c[t>>2];c[t>>2]=0}if(c[g>>2]|0){c[k>>2]=Lh(u,c[g>>2]|0,49689,c[A>>2]|0)|0;if(c[k>>2]|0)break;c[k>>2]=Kh(v,c[g>>2]|0,35402)|0;if(c[k>>2]|0)break}if(c[u>>2]|0){c[(c[A>>2]|0)+40>>2]=c[u>>2];c[u>>2]=0}if(c[v>>2]|0){c[(c[A>>2]|0)+44>>2]=c[v>>2];c[v>>2]=0}c[c[f>>2]>>2]=c[l>>2];c[l>>2]=0}}while(0);fh(c[l>>2]|0);qp(c[o>>2]|0);qp(c[p>>2]|0);qp(c[q>>2]|0);mn(c[r>>2]|0);qp(c[s>>2]|0);qp(c[t>>2]|0);mn(c[u>>2]|0);qp(c[v>>2]|0);i=e;return c[k>>2]|0}function Kh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[l>>2]=Gf(c[g>>2]|0,c[h>>2]|0,0)|0;if(!(c[l>>2]|0)){m=c[k>>2]|0;i=e;return m|0}h=Of(c[l>>2]|0,1,5)|0;c[c[f>>2]>>2]=h;Ef(c[l>>2]|0);if(c[c[f>>2]>>2]|0){m=c[k>>2]|0;i=e;return m|0}c[k>>2]=65;m=c[k>>2]|0;i=e;return m|0}function Lh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f+48|0;h=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+28|0;o=f+24|0;p=f+20|0;q=f+16|0;r=f+12|0;s=f+8|0;t=f+4|0;u=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[o>>2]=Gf(c[k>>2]|0,c[l>>2]|0,0)|0;if(c[o>>2]|0){c[q>>2]=Of(c[o>>2]|0,1,8)|0;Ef(c[o>>2]|0);if(!(c[q>>2]|0)){c[g>>2]=65;v=c[g>>2]|0;i=f;return v|0}c[p>>2]=kn(0)|0;if(c[m>>2]|0?(c[(c[m>>2]|0)+4>>2]|0)==1:0)c[n>>2]=Wh(c[q>>2]|0,c[m>>2]|0,c[p>>2]|0,0,0)|0;else c[n>>2]=mi(c[p>>2]|0,c[q>>2]|0)|0;qp(c[q>>2]|0);if(c[n>>2]|0){mn(c[p>>2]|0);c[p>>2]=0;c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}}else{c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[r>>2]=bf((Tu(c[l>>2]|0)|0)+2+1|0)|0;if(!(c[r>>2]|0)){c[g>>2]=rt()|0;v=c[g>>2]|0;i=f;return v|0}dv(ev(c[r>>2]|0,c[l>>2]|0)|0,35391)|0;c[n>>2]=Kh(s,c[k>>2]|0,c[r>>2]|0)|0;q=c[r>>2]|0;if(c[n>>2]|0){hf(q);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}dv(ev(q,c[l>>2]|0)|0,35394)|0;c[n>>2]=Kh(t,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){qp(c[s>>2]|0);hf(c[r>>2]|0);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}dv(ev(c[r>>2]|0,c[l>>2]|0)|0,35397)|0;c[n>>2]=Kh(u,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){qp(c[t>>2]|0);qp(c[s>>2]|0);hf(c[r>>2]|0);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}if(!(c[u>>2]|0))c[u>>2]=Bp(0,1)|0;n=c[s>>2]|0;if((c[s>>2]|0)!=0&(c[t>>2]|0)!=0)c[p>>2]=pn(0,n,c[t>>2]|0,c[u>>2]|0)|0;else{qp(n);qp(c[t>>2]|0);qp(c[u>>2]|0);c[p>>2]=0}hf(c[r>>2]|0)}if(c[p>>2]|0)c[c[h>>2]>>2]=c[p>>2];c[g>>2]=0;v=c[g>>2]|0;i=f;return v|0}function Mh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=i;i=i+144|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+132|0;g=b+128|0;h=b+124|0;k=b+80|0;l=b+76|0;m=b+72|0;n=b+68|0;o=b+40|0;p=b+36|0;q=b+32|0;c[g>>2]=a;a=k;r=a+44|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(r|0));if(Dh(0,c[g>>2]|0,k,h)|0){c[f>>2]=0;s=c[f>>2]|0;i=b;return s|0}c[m>>2]=Ep(0)|0;c[n>>2]=Ep(0)|0;c[l>>2]=rn(0,0,0,c[k+8>>2]|0,c[k+12>>2]|0,0)|0;if(fn(c[m>>2]|0,c[n>>2]|0,k+20|0,c[l>>2]|0)|0)Je(35404,e);vn(c[l>>2]|0);nn(k+20|0);c[o>>2]=c[k+8>>2];c[o+4>>2]=c[k+12>>2];c[o+8>>2]=c[k+16>>2];c[o+12>>2]=ki(c[m>>2]|0,c[n>>2]|0,c[k+8>>2]|0)|0;c[o+16>>2]=c[k+32>>2];c[o+20>>2]=c[k+36>>2];c[o+24>>2]=0;qp(c[m>>2]|0);qp(c[n>>2]|0);n=c[o+4>>2]|0;m=c[o+8>>2]|0;k=c[o+12>>2]|0;l=c[o+16>>2]|0;e=c[o+20>>2]|0;c[d>>2]=c[o>>2];c[d+4>>2]=n;c[d+8>>2]=m;c[d+12>>2]=k;c[d+16>>2]=l;c[d+20>>2]=e;if(Rf(p,0,35453,d)|0)c[p>>2]=0;c[q>>2]=0;while(1){if(!(c[o+(c[q>>2]<<2)>>2]|0))break;Gp(c[o+(c[q>>2]<<2)>>2]|0);c[q>>2]=(c[q>>2]|0)+1}c[f>>2]=c[p>>2];s=c[f>>2]|0;i=b;return s|0}function Nh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(a[c[h>>2]>>0]|0)){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,48461)|0)==0?c[(c[k>>2]|0)+16>>2]|0:0){if(c[(c[k>>2]|0)+16>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+16>>2]|0)+12>>2]&32|0)==0):0)p=c[(c[k>>2]|0)+16>>2]|0;else p=vp(c[(c[k>>2]|0)+16>>2]|0)|0;c[g>>2]=p;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,39187)|0)==0?c[(c[k>>2]|0)+20>>2]|0:0){if(c[(c[k>>2]|0)+20>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+20>>2]|0)+12>>2]&32|0)==0):0)q=c[(c[k>>2]|0)+20>>2]|0;else q=vp(c[(c[k>>2]|0)+20>>2]|0)|0;c[g>>2]=q;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,35387)|0)==0?c[(c[k>>2]|0)+24>>2]|0:0){if(c[(c[k>>2]|0)+24>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+24>>2]|0)+12>>2]&32|0)==0):0)r=c[(c[k>>2]|0)+24>>2]|0;else r=vp(c[(c[k>>2]|0)+24>>2]|0)|0;c[g>>2]=r;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,39191)|0)==0?c[(c[k>>2]|0)+32>>2]|0:0){if(c[(c[k>>2]|0)+32>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+32>>2]|0)+12>>2]&32|0)==0):0)s=c[(c[k>>2]|0)+32>>2]|0;else s=vp(c[(c[k>>2]|0)+32>>2]|0)|0;c[g>>2]=s;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,35400)|0)==0?c[(c[k>>2]|0)+36>>2]|0:0){if(c[(c[k>>2]|0)+36>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+36>>2]|0)+12>>2]&32|0)==0):0)t=c[(c[k>>2]|0)+36>>2]|0;else t=vp(c[(c[k>>2]|0)+36>>2]|0)|0;c[g>>2]=t;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,35402)|0)==0?c[(c[k>>2]|0)+44>>2]|0:0){if(c[(c[k>>2]|0)+44>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[k>>2]|0)+44>>2]|0)+12>>2]&32|0)==0):0)u=c[(c[k>>2]|0)+44>>2]|0;else u=vp(c[(c[k>>2]|0)+44>>2]|0)|0;c[g>>2]=u;o=c[g>>2]|0;i=f;return o|0}if(((pu(c[h>>2]|0,35501)|0)==0?c[(c[k>>2]|0)+28>>2]|0:0)?c[c[(c[k>>2]|0)+28>>2]>>2]|0:0){if(c[c[(c[k>>2]|0)+28>>2]>>2]|0?!(c[l>>2]|0?1:(c[(c[c[(c[k>>2]|0)+28>>2]>>2]|0)+12>>2]&32|0)==0):0)v=c[c[(c[k>>2]|0)+28>>2]>>2]|0;else v=vp(c[c[(c[k>>2]|0)+28>>2]>>2]|0)|0;c[g>>2]=v;o=c[g>>2]|0;i=f;return o|0}if(((pu(c[h>>2]|0,35505)|0)==0?c[(c[k>>2]|0)+28>>2]|0:0)?c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0:0){if(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0)+12>>2]&32|0)==0):0)w=c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0;else w=vp(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0)|0;c[g>>2]=w;o=c[g>>2]|0;i=f;return o|0}if(((pu(c[h>>2]|0,35509)|0)==0?c[(c[k>>2]|0)+40>>2]|0:0)?c[c[(c[k>>2]|0)+40>>2]>>2]|0:0){if(c[c[(c[k>>2]|0)+40>>2]>>2]|0?!(c[l>>2]|0?1:(c[(c[c[(c[k>>2]|0)+40>>2]>>2]|0)+12>>2]&32|0)==0):0)x=c[c[(c[k>>2]|0)+40>>2]>>2]|0;else x=vp(c[c[(c[k>>2]|0)+40>>2]>>2]|0)|0;c[g>>2]=x;o=c[g>>2]|0;i=f;return o|0}if(((pu(c[h>>2]|0,35513)|0)==0?c[(c[k>>2]|0)+40>>2]|0:0)?c[(c[(c[k>>2]|0)+40>>2]|0)+4>>2]|0:0){if(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0?!(c[l>>2]|0?1:(c[(c[(c[(c[k>>2]|0)+28>>2]|0)+4>>2]|0)+12>>2]&32|0)==0):0)y=c[(c[(c[k>>2]|0)+40>>2]|0)+4>>2]|0;else y=vp(c[(c[(c[k>>2]|0)+40>>2]|0)+4>>2]|0)|0;c[g>>2]=y;o=c[g>>2]|0;i=f;return o|0}if((pu(c[h>>2]|0,35389)|0)==0?c[(c[k>>2]|0)+28>>2]|0:0){c[g>>2]=li(c[(c[k>>2]|0)+28>>2]|0,c[k>>2]|0)|0;o=c[g>>2]|0;i=f;return o|0}do if((a[c[h>>2]>>0]|0)==113){if(a[(c[h>>2]|0)+1>>0]|0?(a[(c[h>>2]|0)+1>>0]|0)!=64:0)break;if(!(c[(c[k>>2]|0)+40>>2]|0)){y=ni(0,c[k>>2]|0,0,0)|0;c[(c[k>>2]|0)+40>>2]=y}if(!(c[(c[k>>2]|0)+40>>2]|0)){c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}if((a[(c[h>>2]|0)+1>>0]|0)!=64){c[g>>2]=li(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0)|0;o=c[g>>2]|0;i=f;return o|0}if((pu((c[h>>2]|0)+2|0,46944)|0)==0?(c[c[k>>2]>>2]|0)==2:0){if(Rh(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0,0,0,0,m,n)|0)break;c[g>>2]=rp(0,c[m>>2]|0,c[n>>2]<<3)|0;o=c[g>>2]|0;i=f;return o|0}}while(0);c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}function Oh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((pu(c[f>>2]|0,35389)|0)==0?c[(c[g>>2]|0)+28>>2]|0:0){c[e>>2]=Ph(c[(c[g>>2]|0)+28>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}if(!(pu(c[f>>2]|0,49689)|0)){if(!(c[(c[g>>2]|0)+40>>2]|0)){f=ni(0,c[g>>2]|0,0,0)|0;c[(c[g>>2]|0)+40>>2]=f}if(c[(c[g>>2]|0)+40>>2]|0){c[e>>2]=Ph(c[(c[g>>2]|0)+40>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}}c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}function Ph(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;if(c[d>>2]|0){c[e>>2]=kn(0)|0;Qh(c[e>>2]|0,c[d>>2]|0);f=c[e>>2]|0;i=b;return f|0}else{c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}return 0}function Qh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;xp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;xp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;xp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Rh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+40|0;m=k+36|0;n=k+32|0;o=k+28|0;p=k+24|0;q=k+20|0;r=k+16|0;s=k+12|0;t=k+8|0;u=k+4|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;if(c[n>>2]|0)v=c[n>>2]|0;else v=Ep(0)|0;c[t>>2]=v;if(c[o>>2]|0)w=c[o>>2]|0;else w=Ep(0)|0;c[u>>2]=w;if(fn(c[t>>2]|0,c[u>>2]|0,c[l>>2]|0,c[m>>2]|0)|0){Ie(35517,k);c[s>>2]=63}else c[s>>2]=Sh(c[t>>2]|0,c[u>>2]|0,((c[(c[m>>2]|0)+12>>2]|0)>>>0)/8|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if(!(c[n>>2]|0))qp(c[t>>2]|0);if(c[o>>2]|0){x=c[s>>2]|0;i=k;return x|0}qp(c[u>>2]|0);x=c[s>>2]|0;i=k;return x|0}function Sh(b,e,f,g,h,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+48|0;if((i|0)>=(j|0))U();m=l+36|0;n=l+32|0;o=l+28|0;p=l+24|0;q=l+20|0;r=l+16|0;s=l+12|0;t=l+8|0;u=l+4|0;v=l;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;c[v>>2]=c[q>>2]|0?1:0;c[t>>2]=Ko(c[o>>2]|0,c[p>>2]|0,c[v>>2]|0?-1:0,u,0)|0;if(!(c[t>>2]|0)){c[m>>2]=rt()|0;w=c[m>>2]|0;i=l;return w|0}p=(_n(c[n>>2]|0,0)|0)!=0;if(p&(c[u>>2]|0)!=0){p=(c[t>>2]|0)+((c[v>>2]|0)+(c[u>>2]|0)-1)|0;a[p>>0]=d[p>>0]|0|128}if(c[v>>2]|0)a[c[t>>2]>>0]=64;c[c[r>>2]>>2]=c[t>>2];c[c[s>>2]>>2]=(c[u>>2]|0)+(c[v>>2]|0);c[m>>2]=0;w=c[m>>2]|0;i=l;return w|0}function Th(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[g>>2]=a;c[h>>2]=b;if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0){c[l>>2]=tp(c[g>>2]|0,m)|0;if(!(c[l>>2]|0)){c[f>>2]=65;r=c[f>>2]|0;i=e;return r|0}c[m>>2]=(((c[m>>2]|0)+7|0)>>>0)/8|0;do if((c[m>>2]|0)>>>0>1?((c[m>>2]|0)>>>0)%2|0|0:0){b=c[l>>2]|0;if((d[c[l>>2]>>0]|0|0)!=4){if((d[b>>0]|0|0)!=64)break;if(sp(c[g>>2]|0,(c[l>>2]|0)+1|0,(c[m>>2]|0)-1<<3)|0)break;c[f>>2]=rt()|0;r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Mo(n,1,b+1|0,(((c[m>>2]|0)-1|0)>>>0)/2|0,0)|0;if(c[k>>2]|0){c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Mo(o,1,(c[l>>2]|0)+1+((((c[m>>2]|0)-1|0)>>>0)/2|0)|0,(((c[m>>2]|0)-1|0)>>>0)/2|0,0)|0;b=c[n>>2]|0;if(c[k>>2]|0){qp(b);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Sh(b,c[o>>2]|0,((c[h>>2]|0)>>>0)/8|0,0,p,q)|0;qp(c[n>>2]|0);qp(c[o>>2]|0);if(!(c[k>>2]|0)){rp(c[g>>2]|0,c[p>>2]|0,c[q>>2]<<3)|0;break}c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}while(0);c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}c[f>>2]=65;r=c[f>>2]|0;i=e;return r|0}function Uh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+36|0;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=0;if((c[(c[m>>2]|0)+4>>2]|0)!=1){c[g>>2]=69;s=c[g>>2]|0;i=f;return s|0}if(!(c[17649]|0))c[17649]=Vh(35570)|0;if(!(c[17650]|0))c[17650]=Bp(0,7)|0;c[o>>2]=Ep(0)|0;c[p>>2]=Ep(0)|0;c[q>>2]=Ep(0)|0;c[r>>2]=Ep(0)|0;Eo(c[o>>2]|0,c[k>>2]|0,c[k>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[p>>2]|0,c[(c[m>>2]|0)+24>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Un(c[o>>2]|0,c[o>>2]|0,1);Sn(c[p>>2]|0,c[p>>2]|0,1);k=c[q>>2]|0;e=c[p>>2]|0;d=Jp(3)|0;Fo(k,e,d,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[p>>2]|0,c[17650]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[r>>2]|0,c[17649]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[h>>2]|0,c[r>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);wp(c[r>>2]|0,c[r>>2]|0);if(!(jo(c[r>>2]|0,c[o>>2]|0)|0)){if(!(c[17651]|0))c[17651]=Vh(35670)|0;Eo(c[h>>2]|0,c[h>>2]|0,c[17651]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Eo(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);wp(c[r>>2]|0,c[r>>2]|0);if(!(jo(c[r>>2]|0,c[o>>2]|0)|0))c[n>>2]=65}d=_n(c[h>>2]|0,0)|0;if((d|0)!=(((c[l>>2]|0)!=0^1^1)&1|0))Vn(c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[h>>2]|0);qp(c[r>>2]|0);qp(c[q>>2]|0);qp(c[p>>2]|0);qp(c[o>>2]|0);c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}function Vh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;c[f>>2]=Mo(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=ot(c[f>>2]|0)|0;Je(35635,d)}else{i=b;return c[g>>2]|0}return 0}function Wh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+48|0;m=k+44|0;n=k+40|0;o=k+36|0;p=k+32|0;q=k+28|0;r=k+24|0;s=k+20|0;t=k+16|0;u=k+12|0;v=k+8|0;w=k+4|0;x=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;do if(c[m>>2]|0?c[(c[m>>2]|0)+12>>2]&4|0:0){c[v>>2]=tp(c[m>>2]|0,t)|0;if(!(c[v>>2]|0)){c[l>>2]=65;y=c[l>>2]|0;i=k;return y|0}c[t>>2]=(((c[t>>2]|0)+7|0)>>>0)/8|0;do if((c[t>>2]|0)>>>0>1?((c[t>>2]|0)>>>0)%2|0|0:0){h=c[v>>2]|0;if((d[c[v>>2]>>0]|0|0)!=4){if((d[h>>0]|0|0)!=64)break;c[t>>2]=(c[t>>2]|0)+-1;c[v>>2]=(c[v>>2]|0)+1;break}c[r>>2]=Mo(w,1,h+1|0,(((c[t>>2]|0)-1|0)>>>0)/2|0,0)|0;if(c[r>>2]|0){c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}c[r>>2]=Mo(x,1,(c[v>>2]|0)+1+((((c[t>>2]|0)-1|0)>>>0)/2|0)|0,(((c[t>>2]|0)-1|0)>>>0)/2|0,0)|0;if(c[r>>2]|0){qp(c[w>>2]|0);c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}if(c[p>>2]|0?(c[r>>2]=Sh(c[w>>2]|0,c[x>>2]|0,((c[(c[n>>2]|0)+12>>2]|0)>>>0)/8|0,0,c[p>>2]|0,c[q>>2]|0)|0,c[r>>2]|0):0){qp(c[w>>2]|0);qp(c[x>>2]|0);c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}zp(c[c[o>>2]>>2]|0,c[w>>2]|0);zp(c[(c[o>>2]|0)+4>>2]|0,c[x>>2]|0);Bp(c[(c[o>>2]|0)+8>>2]|0,1)|0;c[l>>2]=0;y=c[l>>2]|0;i=k;return y|0}while(0);c[s>>2]=bf(c[t>>2]|0?c[t>>2]|0:1)|0;if(c[s>>2]|0){Ow(c[s>>2]|0,c[v>>2]|0,c[t>>2]|0)|0;Xh(c[s>>2]|0,c[t>>2]|0);break}c[l>>2]=rt()|0;y=c[l>>2]|0;i=k;return y|0}else z=21;while(0);if((z|0)==21?(c[s>>2]=Io(c[m>>2]|0,((c[(c[n>>2]|0)+12>>2]|0)>>>0)/8|0,t,0)|0,(c[s>>2]|0)==0):0){c[l>>2]=rt()|0;y=c[l>>2]|0;i=k;return y|0}if(c[t>>2]|0){c[u>>2]=(((d[c[s>>2]>>0]|0)&128|0)!=0^1^1)&1;m=c[s>>2]|0;a[m>>0]=(d[m>>0]|0)&127}else c[u>>2]=0;Lo(c[(c[o>>2]|0)+4>>2]|0,c[s>>2]|0,c[t>>2]|0,0);if(c[p>>2]|0){if((c[u>>2]|0)!=0&(c[t>>2]|0)!=0){m=c[s>>2]|0;a[m>>0]=d[m>>0]|0|128}Xh(c[s>>2]|0,c[t>>2]|0);c[c[p>>2]>>2]=c[s>>2];if(c[q>>2]|0)c[c[q>>2]>>2]=c[t>>2]}else hf(c[s>>2]|0);c[r>>2]=Uh(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[u>>2]|0,c[n>>2]|0)|0;Bp(c[(c[o>>2]|0)+8>>2]|0,1)|0;c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}function Xh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=e;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(((c[h>>2]|0)>>>0)/2|0)>>>0)break;c[k>>2]=d[(c[g>>2]|0)+(c[l>>2]|0)>>0];a[(c[g>>2]|0)+(c[l>>2]|0)>>0]=a[(c[g>>2]|0)+((c[h>>2]|0)-1-(c[l>>2]|0))>>0]|0;a[(c[g>>2]|0)+((c[h>>2]|0)-1-(c[l>>2]|0))>>0]=c[k>>2];c[l>>2]=(c[l>>2]|0)+1}i=f;return}function Yh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=i;i=i+80|0;if((i|0)>=(j|0))U();h=g+68|0;k=g+64|0;l=g+60|0;m=g+56|0;n=g+52|0;o=g+48|0;p=g+44|0;q=g+40|0;r=g+8|0;s=g+4|0;t=g;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[o>>2]=0;c[c[k>>2]>>2]=0;c[s>>2]=10;if((c[s>>2]|0)!=10){c[h>>2]=5;u=c[h>>2]|0;i=g;return u|0}c[t>>2]=(((c[(c[m>>2]|0)+12>>2]|0)+7|0)>>>0)/8|0;if((c[t>>2]|0)!=32){c[h>>2]=63;u=c[h>>2]|0;i=g;return u|0}c[q>>2]=kf(2,c[t>>2]|0)|0;if(!(c[q>>2]|0)){c[h>>2]=rt()|0;u=c[h>>2]|0;i=g;return u|0};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;c[r+28>>2]=0;c[o>>2]=Io(c[l>>2]|0,0,p,0)|0;l=c[q>>2]|0;if(!(c[o>>2]|0)){hf(l);c[h>>2]=rt()|0;u=c[h>>2]|0;i=g;return u|0}c[r+12>>2]=l;c[r+4>>2]=0;if((c[t>>2]|0)>>>0>(c[p>>2]|0)>>>0)v=(c[t>>2]|0)-(c[p>>2]|0)|0;else v=0;c[r+8>>2]=v;c[r+16+12>>2]=c[o>>2];c[r+16+4>>2]=0;c[r+16+8>>2]=c[p>>2];c[n>>2]=$i(c[s>>2]|0,0,c[q>>2]|0,r,2)|0;hf(c[o>>2]|0);o=c[q>>2]|0;if(c[n>>2]|0){hf(o);c[h>>2]=c[n>>2];u=c[h>>2]|0;i=g;return u|0}else{Xh(o,32);a[c[q>>2]>>0]=(d[c[q>>2]>>0]|0)&127|64;o=(c[q>>2]|0)+31|0;a[o>>0]=(d[o>>0]|0)&248;c[c[k>>2]>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}return 0}function Zh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+96|0;if((i|0)>=(j|0))U();k=h+80|0;l=h+76|0;m=h+72|0;n=h+68|0;o=h+64|0;p=h+60|0;q=h+56|0;r=h+52|0;s=h+48|0;t=h+36|0;u=h+32|0;v=h+28|0;w=h+24|0;x=h+8|0;y=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[p>>2]=32;c[y>>2]=0;ln(t);c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;if(c[n>>2]&32|0)c[u>>2]=1;else c[u>>2]=2;c[q>>2]=Fp(0)|0;c[r>>2]=Ep(0)|0;c[s>>2]=Ep(0)|0;c[y>>2]=ef(c[p>>2]<<1)|0;if(!(c[y>>2]|0)){c[o>>2]=_h()|0;nn(t);z=c[q>>2]|0;Gp(z);A=c[r>>2]|0;Gp(A);B=c[s>>2]|0;Gp(B);C=c[y>>2]|0;hf(C);D=c[o>>2]|0;i=h;return D|0}c[w>>2]=c[p>>2];c[v>>2]=Wm(c[w>>2]|0,c[u>>2]|0)|0;c[x+12>>2]=c[v>>2];c[x+8>>2]=c[w>>2];c[o>>2]=$i(10,0,c[y>>2]|0,x,1)|0;if(c[o>>2]|0){nn(t);z=c[q>>2]|0;Gp(z);A=c[r>>2]|0;Gp(A);B=c[s>>2]|0;Gp(B);C=c[y>>2]|0;hf(C);D=c[o>>2]|0;i=h;return D|0}x=rp(0,c[v>>2]|0,c[w>>2]<<3)|0;c[(c[k>>2]|0)+56>>2]=x;c[v>>2]=0;Xh(c[y>>2]|0,32);a[c[y>>2]>>0]=(d[c[y>>2]>>0]|0)&127|64;v=(c[y>>2]|0)+31|0;a[v>>0]=(d[v>>0]|0)&248;Lo(c[q>>2]|0,c[y>>2]|0,32,0);hf(c[y>>2]|0);c[y>>2]=0;On(t,c[q>>2]|0,(c[l>>2]|0)+20|0,c[m>>2]|0);if(sf(1)|0)en(35735,t,c[m>>2]|0);c[c[k>>2]>>2]=c[c[l>>2]>>2];c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];m=vp(c[(c[l>>2]|0)+8>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=m;m=vp(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=m;m=vp(c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=m;ln((c[k>>2]|0)+20|0);bi((c[k>>2]|0)+20|0,(c[l>>2]|0)+20|0);m=vp(c[(c[l>>2]|0)+32>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=m;m=vp(c[(c[l>>2]|0)+36>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=m;ln((c[k>>2]|0)+44|0);bi((c[k>>2]|0)+44|0,t);nn(t);z=c[q>>2]|0;Gp(z);A=c[r>>2]|0;Gp(A);B=c[s>>2]|0;Gp(B);C=c[y>>2]|0;hf(C);D=c[o>>2]|0;i=h;return D|0}function _h(){return $h(rt()|0)|0}function $h(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ai(1,c[d>>2]|0)|0;i=b;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;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function bi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;xp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;xp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;xp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function ci(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,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;h=i;i=i+160|0;if((i|0)>=(j|0))U();k=h+156|0;l=h+152|0;m=h+148|0;n=h+144|0;o=h+140|0;p=h+136|0;q=h+132|0;r=h+128|0;s=h+124|0;t=h+120|0;u=h+116|0;v=h+112|0;w=h+64|0;x=h+60|0;y=h+56|0;z=h+52|0;A=h+48|0;B=h+44|0;C=h+40|0;D=h+28|0;E=h+16|0;F=h+12|0;G=h+8|0;H=h+4|0;I=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[s>>2]=0;c[z>>2]=0;c[B>>2]=0;g=w;f=g+48|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(f|0));if(c[l>>2]|0?c[(c[l>>2]|0)+12>>2]&4|0:0){ln(D);ln(E);c[F>>2]=Fp(0)|0;c[G>>2]=Ep(0)|0;c[H>>2]=Ep(0)|0;c[I>>2]=Ep(0)|0;c[s>>2]=rn(c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,0,c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;c[t>>2]=(((c[(c[s>>2]|0)+12>>2]|0)+7|0)>>>0)/8|0;if((c[t>>2]|0)!=32){c[k>>2]=63;J=c[k>>2]|0;i=h;return J|0}c[r>>2]=Yh(v,c[(c[m>>2]|0)+56>>2]|0,c[s>>2]|0)|0;do if(!(c[r>>2]|0)){Lo(c[F>>2]|0,c[v>>2]|0,32,0);if(c[q>>2]|0){c[r>>2]=Wh(c[q>>2]|0,c[s>>2]|0,E,B,C)|0;if(c[r>>2]|0)break;if(sf(1)|0)Ne(35749,c[B>>2]|0,c[C>>2]|0);if(!(Qn(E,c[s>>2]|0)|0)){c[r>>2]=195;break}}else{On(E,c[F>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);c[r>>2]=Rh(E,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,B,C)|0;if(c[r>>2]|0)break;if(sf(1)|0)Ne(35756,c[B>>2]|0,c[C>>2]|0)}c[x>>2]=tp(c[l>>2]|0,u)|0;c[y>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(sf(1)|0)Ne(35763,c[x>>2]|0,c[y>>2]|0);c[w+12>>2]=c[v>>2];c[w+4>>2]=32;c[w+8>>2]=32;c[w+16+12>>2]=c[x>>2];c[w+16+8>>2]=c[y>>2];c[r>>2]=$i(c[p>>2]|0,0,c[v>>2]|0,w,2)|0;if(!(c[r>>2]|0)){Xh(c[v>>2]|0,64);if(sf(1)|0)Ne(53184,c[v>>2]|0,64);Lo(c[I>>2]|0,c[v>>2]|0,64,0);On(D,c[I>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);if(sf(1)|0)en(35770,D,c[s>>2]|0);c[r>>2]=Rh(D,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,z,A)|0;if(!(c[r>>2]|0)){if(sf(1)|0)Ne(35775,c[z>>2]|0,c[A>>2]|0);c[w+12>>2]=c[z>>2];c[w+4>>2]=0;c[w+8>>2]=c[A>>2];c[w+16+12>>2]=c[B>>2];c[w+16+4>>2]=0;c[w+16+8>>2]=c[C>>2];c[w+32+12>>2]=c[x>>2];c[w+32+4>>2]=0;c[w+32+8>>2]=c[y>>2];c[r>>2]=$i(c[p>>2]|0,0,c[v>>2]|0,w,3)|0;if(!(c[r>>2]|0)){rp(c[n>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;Xh(c[v>>2]|0,64);if(sf(1)|0)Ne(35782,c[v>>2]|0,64);Lo(c[o>>2]|0,c[v>>2]|0,64,0);Eo(c[o>>2]|0,c[o>>2]|0,c[F>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Wn(c[o>>2]|0,c[o>>2]|0,c[I>>2]|0,c[(c[m>>2]|0)+32>>2]|0);c[r>>2]=di(c[o>>2]|0,c[t>>2]|0,z,A)|0;if(!(c[r>>2]|0)){if(sf(1)|0)Ne(35789,c[z>>2]|0,c[A>>2]|0);rp(c[o>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;c[r>>2]=0}}}}}while(0);Gp(c[F>>2]|0);Gp(c[G>>2]|0);Gp(c[H>>2]|0);Gp(c[I>>2]|0);hf(c[v>>2]|0);vn(c[s>>2]|0);nn(D);nn(E);hf(c[B>>2]|0);hf(c[z>>2]|0);c[k>>2]=c[r>>2];J=c[k>>2]|0;i=h;return J|0}c[k>>2]=79;J=c[k>>2]|0;i=h;return J|0}function di(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=Io(c[h>>2]|0,c[k>>2]|0,o,0)|0;if(c[n>>2]|0){c[c[l>>2]>>2]=c[n>>2];c[c[m>>2]>>2]=c[o>>2];c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}else{c[g>>2]=rt()|0;p=c[g>>2]|0;i=f;return p|0}return 0}function ei(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,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;h=i;i=i+240|0;if((i|0)>=(j|0))U();k=h+172|0;l=h+168|0;m=h+164|0;n=h+160|0;o=h+156|0;p=h+152|0;q=h+148|0;r=h+144|0;s=h+140|0;t=h+136|0;u=h+132|0;v=h+120|0;w=h+116|0;x=h+112|0;y=h+108|0;z=h+104|0;A=h+100|0;B=h+96|0;C=h+92|0;D=h+88|0;E=h+176|0;F=h+40|0;G=h+36|0;H=h+32|0;I=h+20|0;J=h+8|0;K=h+4|0;L=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[s>>2]=0;c[w>>2]=0;c[A>>2]=0;if(((c[l>>2]|0?(c[n>>2]|0?(c[(c[l>>2]|0)+12>>2]&4|0)!=0:0):0)?(c[o>>2]|0?(c[(c[n>>2]|0)+12>>2]&4|0)!=0:0):0)?c[(c[o>>2]|0)+12>>2]&4|0:0){if((c[p>>2]|0)!=10){c[k>>2]=5;M=c[k>>2]|0;i=h;return M|0}ln(v);ln(I);ln(J);c[G>>2]=Ep(0)|0;c[H>>2]=Ep(0)|0;c[s>>2]=rn(c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,0,c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;c[t>>2]=((c[(c[s>>2]|0)+12>>2]|0)>>>0)/8|0;if((c[t>>2]|0)!=32){c[k>>2]=63;M=c[k>>2]|0;i=h;return M|0}c[r>>2]=Wh(c[q>>2]|0,c[s>>2]|0,v,w,x)|0;a:do if(!(c[r>>2]|0)){if(!(Qn(v,c[s>>2]|0)|0)){c[r>>2]=195;break}if(sf(1)|0)Ne(35756,c[w>>2]|0,c[x>>2]|0);if((c[x>>2]|0)!=(c[t>>2]|0)){c[r>>2]=139;break}c[y>>2]=tp(c[l>>2]|0,u)|0;c[B>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(sf(1)|0)Ne(35763,c[y>>2]|0,c[B>>2]|0);c[z>>2]=tp(c[n>>2]|0,u)|0;c[C>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(sf(1)|0)Ne(53184,c[z>>2]|0,c[C>>2]|0);if((c[C>>2]|0)!=(c[t>>2]|0)){c[r>>2]=139;break}c[F+12>>2]=c[z>>2];c[F+4>>2]=0;c[F+8>>2]=c[C>>2];c[F+16+12>>2]=c[w>>2];c[F+16+4>>2]=0;c[F+16+8>>2]=c[x>>2];c[F+32+12>>2]=c[y>>2];c[F+32+4>>2]=0;c[F+32+8>>2]=c[B>>2];c[r>>2]=$i(c[p>>2]|0,0,E,F,3)|0;if(!(c[r>>2]|0)){Xh(E,64);if(sf(1)|0)Ne(35782,E,64);Lo(c[G>>2]|0,E,64,0);c[K>>2]=up(c[o>>2]|0,u)|0;c[L>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;Xh(c[K>>2]|0,c[L>>2]|0);if(sf(1)|0)Ne(53191,c[K>>2]|0,c[L>>2]|0);Lo(c[H>>2]|0,c[K>>2]|0,c[L>>2]|0,0);hf(c[K>>2]|0);if((c[L>>2]|0)!=(c[t>>2]|0)){c[r>>2]=139;break}On(I,c[H>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);On(J,c[G>>2]|0,v,c[s>>2]|0);wp(c[J>>2]|0,c[J>>2]|0);In(I,I,J,c[s>>2]|0);c[r>>2]=Rh(I,c[s>>2]|0,c[H>>2]|0,c[G>>2]|0,0,A,D)|0;if(!(c[r>>2]|0)){do if((c[D>>2]|0)==(c[C>>2]|0)){if(vv(c[A>>2]|0,c[z>>2]|0,c[D>>2]|0)|0)break;c[r>>2]=0;break a}while(0);c[r>>2]=8}}}while(0);hf(c[w>>2]|0);hf(c[A>>2]|0);vn(c[s>>2]|0);Gp(c[H>>2]|0);Gp(c[G>>2]|0);nn(I);nn(J);nn(v);c[k>>2]=c[r>>2];M=c[k>>2]|0;i=h;return M|0}c[k>>2]=79;M=c[k>>2]|0;i=h;return M|0}function fi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;qp(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;qp(c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;qp(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0;nn((c[d>>2]|0)+20|0);qp(c[(c[d>>2]|0)+32>>2]|0);c[(c[d>>2]|0)+32>>2]=0;qp(c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;i=b;return}function gi(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+40>>2]=c[b+40>>2];c[e+8>>2]=vp(c[b+8>>2]|0)|0;c[e+12>>2]=vp(c[b+12>>2]|0)|0;c[e+16>>2]=vp(c[b+16>>2]|0)|0;ln(e+20|0);hi(e+20|0,b+20|0);c[e+32>>2]=vp(c[b+32>>2]|0)|0;c[e+36>>2]=vp(c[b+36>>2]|0)|0;b=a;a=e;e=b+44|0;do{c[b>>2]=c[a>>2];b=b+4|0;a=a+4|0}while((b|0)<(e|0));i=d;return}function hi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;xp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;xp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;xp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function ii(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=37750;switch(c[d>>2]|0){case 0:{c[e>>2]=35796;break}case 1:{c[e>>2]=45524;break}case 2:{c[e>>2]=35808;break}default:{}}i=b;return c[e>>2]|0}function ji(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=37750;switch(c[d>>2]|0){case 0:{c[e>>2]=35816;break}case 1:{c[e>>2]=35825;break}default:{}}i=b;return c[e>>2]|0}function ki(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+8|0;k=f;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+36|0;q=f+32|0;r=f+28|0;s=f+24|0;t=f+20|0;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[p>>2]=(((Zn(c[n>>2]|0)|0)+7|0)>>>0)/8|0;c[r>>2]=mf(1+(c[p>>2]<<1)|0)|0;a[c[r>>2]>>0]=4;c[s>>2]=(c[r>>2]|0)+1;c[o>>2]=Qo(5,c[s>>2]|0,c[p>>2]|0,q,c[l>>2]|0)|0;if(c[o>>2]|0){c[k>>2]=ot(c[o>>2]|0)|0;Je(35833,k)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Qw((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;Sw(c[s>>2]|0,0,(c[p>>2]|0)-(c[q>>2]|0)|0)|0}c[s>>2]=(c[s>>2]|0)+(c[p>>2]|0);c[o>>2]=Qo(5,c[s>>2]|0,c[p>>2]|0,q,c[m>>2]|0)|0;if(c[o>>2]|0){c[h>>2]=ot(c[o>>2]|0)|0;Je(35833,h)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Qw((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;Sw(c[s>>2]|0,0,(c[p>>2]|0)-(c[q>>2]|0)|0)|0}c[o>>2]=Mo(t,5,c[r>>2]|0,1+(c[p>>2]<<1)|0,0)|0;if(c[o>>2]|0){c[g>>2]=ot(c[o>>2]|0)|0;Je(35855,g)}else{hf(c[r>>2]|0);i=f;return c[t>>2]|0}return 0}function li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Ep(0)|0;c[h>>2]=Ep(0)|0;if(fn(c[g>>2]|0,c[h>>2]|0,c[e>>2]|0,c[f>>2]|0)|0)c[k>>2]=0;else c[k>>2]=ki(c[g>>2]|0,c[h>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;qp(c[g>>2]|0);qp(c[h>>2]|0);i=d;return c[k>>2]|0}function mi(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[g>>2]=a;c[h>>2]=b;do if(c[h>>2]|0?c[(c[h>>2]|0)+12>>2]&4|0:0){c[m>>2]=tp(c[h>>2]|0,q)|0;if(c[m>>2]|0){c[l>>2]=(((c[q>>2]|0)+7|0)>>>0)/8|0;c[n>>2]=0;break}c[f>>2]=65;r=c[f>>2]|0;i=e;return r|0}else s=6;while(0);do if((s|0)==6){c[l>>2]=(((Zn(c[h>>2]|0)|0)+7|0)>>>0)/8|0;c[n>>2]=mf(c[l>>2]|0)|0;c[k>>2]=Qo(5,c[n>>2]|0,c[l>>2]|0,l,c[h>>2]|0)|0;q=c[n>>2]|0;if(!(c[k>>2]|0)){c[m>>2]=q;break}hf(q);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}while(0);if((c[l>>2]|0)>>>0<1){hf(c[n>>2]|0);c[f>>2]=65;r=c[f>>2]|0;i=e;return r|0}if((d[c[m>>2]>>0]|0|0)!=4){hf(c[n>>2]|0);c[f>>2]=69;r=c[f>>2]|0;i=e;return r|0}if((((c[l>>2]|0)-1|0)>>>0)%2|0|0){hf(c[n>>2]|0);c[f>>2]=65;r=c[f>>2]|0;i=e;return r|0}c[l>>2]=(((c[l>>2]|0)-1|0)>>>0)/2|0;c[k>>2]=Mo(o,5,(c[m>>2]|0)+1|0,c[l>>2]|0,0)|0;if(c[k>>2]|0){hf(c[n>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Mo(p,5,(c[m>>2]|0)+1+(c[l>>2]|0)|0,c[l>>2]|0,0)|0;hf(c[n>>2]|0);if(c[k>>2]|0){qp(c[o>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}else{xp(c[c[g>>2]>>2]|0,c[o>>2]|0)|0;xp(c[(c[g>>2]|0)+4>>2]|0,c[p>>2]|0)|0;Bp(c[(c[g>>2]|0)+8>>2]|0,1)|0;qp(c[o>>2]|0);qp(c[p>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}return 0}function ni(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if(!(c[l>>2]|0))c[l>>2]=c[(c[k>>2]|0)+28>>2];if(!(c[m>>2]|0))c[m>>2]=c[(c[k>>2]|0)+44>>2];if(((c[m>>2]|0)!=0&(c[l>>2]|0)!=0?c[(c[k>>2]|0)+16>>2]|0:0)?c[(c[k>>2]|0)+20>>2]|0:0){if((c[c[k>>2]>>2]|0)==2?(c[(c[k>>2]|0)+24>>2]|0)==0:0){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}if((c[(c[k>>2]|0)+4>>2]|0)==1?c[(c[k>>2]|0)+8>>2]&4096|0:0){if(Yh(o,c[m>>2]|0,c[k>>2]|0)|0){c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}c[n>>2]=Fp(0)|0;Lo(c[n>>2]|0,c[o>>2]|0,32,0);hf(c[o>>2]|0);if(!(c[h>>2]|0))c[h>>2]=kn(0)|0;if(c[h>>2]|0)On(c[h>>2]|0,c[n>>2]|0,c[l>>2]|0,c[k>>2]|0);qp(c[n>>2]|0)}else{if(!(c[h>>2]|0))c[h>>2]=kn(0)|0;if(c[h>>2]|0)On(c[h>>2]|0,c[m>>2]|0,c[l>>2]|0,c[k>>2]|0)}c[g>>2]=c[h>>2];p=c[g>>2]|0;i=f;return p|0}c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}function oi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;if(cj(c[f>>2]|0,8,0,0)|0){c[k>>2]=5;if(c[h>>2]|0)Cb[c[h>>2]&1](36136,c[f>>2]|0,37843,36880)}else c[k>>2]=pi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;h=wi(c[k>>2]|0)|0;i=e;return h|0}function pi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[f>>2]|0){case 2:{c[k>>2]=qi(c[g>>2]|0,c[h>>2]|0)|0;break}case 11:{c[k>>2]=si(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=ti(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=ui(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=vi(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function qi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+160|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+32|0;n=e+4|0;o=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=35876;c[n>>2]=0;while(1){if((c[n>>2]|0)>=64)break;a[m+(c[n>>2]|0)>>0]=c[n>>2];c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=ri(2,35891,9,m,64,35901,20)|0;do if(!(c[l>>2]|0)){if(c[g>>2]|0){c[k>>2]=35998;c[n>>2]=0;c[o>>2]=48;while(1){if((c[n>>2]|0)>=20)break;d=c[o>>2]|0;c[o>>2]=d+1;a[m+(c[n>>2]|0)>>0]=d;c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=ri(2,36013,9,m,20,36023,20)|0;if(c[l>>2]|0)break;c[k>>2]=36044;c[n>>2]=0;c[o>>2]=80;while(1){if((c[n>>2]|0)>=100)break;d=c[o>>2]|0;c[o>>2]=d+1;a[m+(c[n>>2]|0)>>0]=d;c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=ri(2,36059,9,m,100,36069,20)|0;if(c[l>>2]|0)break;c[k>>2]=36090;c[n>>2]=0;c[o>>2]=112;while(1){if((c[n>>2]|0)>=49)break;d=c[o>>2]|0;c[o>>2]=d+1;a[m+(c[n>>2]|0)>>0]=d;c[n>>2]=(c[n>>2]|0)+1}c[l>>2]=ri(2,36105,9,m,49,36115,20)|0;if(c[l>>2]|0)break}c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}while(0);if(c[h>>2]|0)Cb[c[h>>2]&1](36136,2,c[k>>2]|0,c[l>>2]|0);c[f>>2]=50;p=c[f>>2]|0;i=e;return p|0}function ri(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+36|0;m=k+32|0;n=k+28|0;o=k+24|0;p=k+20|0;q=k+16|0;r=k+12|0;s=k+8|0;t=k+4|0;u=k;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;h=bj(c[m>>2]|0)|0;if((h|0)!=(c[s>>2]|0)){c[l>>2]=35922;v=c[l>>2]|0;i=k;return v|0}if(Fi(t,c[m>>2]|0,2)|0){c[l>>2]=49750;v=c[l>>2]|0;i=k;return v|0}h=(Ui(c[t>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)!=0;q=c[t>>2]|0;if(h){Ni(q);c[l>>2]=35941;v=c[l>>2]|0;i=k;return v|0}Oi(q,c[n>>2]|0,c[o>>2]|0);c[u>>2]=_i(c[t>>2]|0,c[m>>2]|0)|0;if(!(c[u>>2]|0)){Ni(c[t>>2]|0);c[l>>2]=35963;v=c[l>>2]|0;i=k;return v|0}m=(vv(c[u>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)!=0;Ni(c[t>>2]|0);if(m){c[l>>2]=35983;v=c[l>>2]|0;i=k;return v|0}else{c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}return 0}function si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=0;while(1){if(!(c[2764+((c[l>>2]|0)*40|0)>>2]|0)){m=6;break}c[h>>2]=c[2764+((c[l>>2]|0)*40|0)>>2];b=c[2764+((c[l>>2]|0)*40|0)+4>>2]|0;a=Tu(c[2764+((c[l>>2]|0)*40|0)+4>>2]|0)|0;n=c[2764+((c[l>>2]|0)*40|0)+8>>2]|0;o=Tu(c[2764+((c[l>>2]|0)*40|0)+8>>2]|0)|0;c[k>>2]=ri(11,b,a,n,o,2764+((c[l>>2]|0)*40|0)+12|0,28)|0;if(c[k>>2]|0)break;if(!(c[f>>2]|0)){m=6;break}c[l>>2]=(c[l>>2]|0)+1}if((m|0)==6){c[e>>2]=0;p=c[e>>2]|0;i=d;return p|0}if(c[g>>2]|0)Cb[c[g>>2]&1](36136,11,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function ti(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;k=d+16|0;l=d+12|0;m=d+8|0;n=d+4|0;o=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=0;while(1){if(!(c[3044+((c[l>>2]|0)*44|0)>>2]|0)){p=13;break}c[h>>2]=c[3044+((c[l>>2]|0)*44|0)>>2];b=c[3044+((c[l>>2]|0)*44|0)+4>>2]|0;a=Tu(c[3044+((c[l>>2]|0)*44|0)+4>>2]|0)|0;q=c[3044+((c[l>>2]|0)*44|0)+8>>2]|0;r=Tu(c[3044+((c[l>>2]|0)*44|0)+8>>2]|0)|0;c[k>>2]=ri(8,b,a,q,r,3044+((c[l>>2]|0)*44|0)+12|0,32)|0;if(c[k>>2]|0)break;r=c[3044+((c[l>>2]|0)*44|0)+8>>2]|0;c[m>>2]=Lp(r,Tu(c[3044+((c[l>>2]|0)*44|0)+8>>2]|0)|0)|0;if(!(c[m>>2]|0)){p=5;break}r=c[m>>2]|0;q=c[3044+((c[l>>2]|0)*44|0)+4>>2]|0;Mp(r,q,Tu(c[3044+((c[l>>2]|0)*44|0)+4>>2]|0)|0);c[n>>2]=Rp(c[m>>2]|0,o)|0;if(!(c[n>>2]|0)){p=7;break}if((c[o>>2]|0)!=32){p=10;break}if(vv(c[n>>2]|0,3044+((c[l>>2]|0)*44|0)+12|0,32)|0){p=10;break}Qp(c[m>>2]|0);if(!(c[f>>2]|0)){p=13;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==5)c[k>>2]=36785;else if((p|0)==7){c[k>>2]=36810;Qp(c[m>>2]|0)}else if((p|0)==10){c[k>>2]=36840;Qp(c[m>>2]|0)}else if((p|0)==13){c[e>>2]=0;s=c[e>>2]|0;i=d;return s|0}if(c[g>>2]|0)Cb[c[g>>2]&1](36136,8,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;s=c[e>>2]|0;i=d;return s|0}function ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=0;while(1){if(!(c[3352+((c[l>>2]|0)*60|0)>>2]|0)){m=6;break}c[h>>2]=c[3352+((c[l>>2]|0)*60|0)>>2];b=c[3352+((c[l>>2]|0)*60|0)+4>>2]|0;a=Tu(c[3352+((c[l>>2]|0)*60|0)+4>>2]|0)|0;n=c[3352+((c[l>>2]|0)*60|0)+8>>2]|0;o=Tu(c[3352+((c[l>>2]|0)*60|0)+8>>2]|0)|0;c[k>>2]=ri(9,b,a,n,o,3352+((c[l>>2]|0)*60|0)+12|0,48)|0;if(c[k>>2]|0)break;if(!(c[f>>2]|0)){m=6;break}c[l>>2]=(c[l>>2]|0)+1}if((m|0)==6){c[e>>2]=0;p=c[e>>2]|0;i=d;return p|0}if(c[g>>2]|0)Cb[c[g>>2]&1](36136,9,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=0;while(1){if(!(c[3772+((c[l>>2]|0)*76|0)>>2]|0)){m=6;break}c[h>>2]=c[3772+((c[l>>2]|0)*76|0)>>2];b=c[3772+((c[l>>2]|0)*76|0)+4>>2]|0;a=Tu(c[3772+((c[l>>2]|0)*76|0)+4>>2]|0)|0;n=c[3772+((c[l>>2]|0)*76|0)+8>>2]|0;o=Tu(c[3772+((c[l>>2]|0)*76|0)+8>>2]|0)|0;c[k>>2]=ri(10,b,a,n,o,3772+((c[l>>2]|0)*76|0)+12|0,64)|0;if(c[k>>2]|0)break;if(!(c[f>>2]|0)){m=6;break}c[l>>2]=(c[l>>2]|0)+1}if((m|0)==6){c[e>>2]=0;p=c[e>>2]|0;i=d;return p|0}if(c[g>>2]|0)Cb[c[g>>2]&1](36136,10,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function wi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=xi(1,c[d>>2]|0)|0;i=b;return a|0}function xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function yi(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;do if(c[e>>2]|0){c[f>>2]=zi(c[e>>2]|0,0)|0;if(c[f>>2]|0){c[d>>2]=c[c[f>>2]>>2];break}c[f>>2]=Bi(c[e>>2]|0)|0;if(c[f>>2]|0){c[d>>2]=c[c[f>>2]>>2];break}else{c[d>>2]=0;break}}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;do if(c[f>>2]|0){if(rv(c[f>>2]|0,36904,4)|0?rv(c[f>>2]|0,36909,4)|0:0)break;c[f>>2]=(c[f>>2]|0)+4}while(0);c[h>>2]=Ai(c[f>>2]|0)|0;a:do if(c[h>>2]|0?c[(c[h>>2]|0)+20>>2]|0:0){c[k>>2]=0;while(1){if(!(c[(c[(c[h>>2]|0)+20>>2]|0)+(c[k>>2]<<2)>>2]|0))break a;if(!(cv(c[f>>2]|0,c[(c[(c[h>>2]|0)+20>>2]|0)+(c[k>>2]<<2)>>2]|0)|0))break;c[k>>2]=(c[k>>2]|0)+1}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+(c[k>>2]<<2)>>2];c[e>>2]=c[h>>2];l=c[e>>2]|0;i=d;return l|0}while(0);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}function Ai(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;k=b;c[e>>2]=a;c[h>>2]=0;a:while(1){a=c[4304+(c[h>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){l=10;break}c[g>>2]=c[(c[f>>2]|0)+20>>2];b:do if(c[g>>2]|0){c[k>>2]=0;while(1){if(!(c[(c[g>>2]|0)+(c[k>>2]<<2)>>2]|0))break b;if(!(cv(c[e>>2]|0,c[(c[g>>2]|0)+(c[k>>2]<<2)>>2]|0)|0)){l=7;break a}c[k>>2]=(c[k>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((l|0)==7){c[d>>2]=c[f>>2];m=c[d>>2]|0;i=b;return m|0}else if((l|0)==10){c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}return 0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[g>>2]=0;while(1){a=c[4304+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){h=6;break}if(!(cv(c[e>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){h=4;break}c[g>>2]=(c[g>>2]|0)+1}if((h|0)==4){c[d>>2]=c[f>>2];k=c[d>>2]|0;i=b;return k|0}else if((h|0)==6){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}return 0}function Ci(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Di(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37750;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=Ei(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4304+(c[f>>2]<<2)>>2]|0;c[g>>2]=a;if(!a){h=6;break}if((c[e>>2]|0)==(c[c[g>>2]>>2]|0)){h=4;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==4){c[d>>2]=c[g>>2];k=c[d>>2]|0;i=b;return k|0}else if((h|0)==6){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}return 0}function Ei(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]|0}function Fi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[h>>2]&-260|0)c[k>>2]=45;else c[k>>2]=Gi(l,c[g>>2]|0,c[h>>2]|0)|0;c[c[f>>2]>>2]=c[k>>2]|0?0:c[l>>2]|0;i=e;return c[k>>2]|0}function Gi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+36|0;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=0;c[m>>2]=((c[k>>2]&1|0)!=0^1^1)&1;c[n>>2]=((c[k>>2]&2|0)!=0^1^1)&1;c[o>>2]=c[m>>2]|0?512:1024;c[r>>2]=16+(c[o>>2]|0);c[r>>2]=((((c[r>>2]|0)+8-1|0)>>>0)/8|0)<<3;o=(c[r>>2]|0)+28|0;if(c[m>>2]|0)c[q>>2]=ef(o)|0;else c[q>>2]=bf(o)|0;if(!(c[q>>2]|0))c[l>>2]=pt(c[(fu()|0)>>2]|0)|0;if((c[l>>2]|0)==0?(o=(c[q>>2]|0)+(c[r>>2]|0)|0,c[p>>2]=o,c[c[q>>2]>>2]=o,c[(c[q>>2]|0)+8>>2]=(c[r>>2]|0)-16+1,c[(c[q>>2]|0)+4>>2]=0,o=c[c[q>>2]>>2]|0,c[o>>2]=0,c[o+4>>2]=0,c[o+8>>2]=0,c[o+12>>2]=0,c[o+16>>2]=0,c[o+20>>2]=0,c[o+24>>2]=0,c[c[p>>2]>>2]=c[m>>2]|0?378630161:285677921,c[(c[p>>2]|0)+4>>2]=(c[r>>2]|0)+28,r=(c[p>>2]|0)+12|0,a[r>>0]=a[r>>0]&-2|c[m>>2]&1,m=(c[p>>2]|0)+12|0,a[m>>0]=a[m>>0]&-5|(((c[k>>2]&256|0)!=0^1^1)&1)<<2&255,c[n>>2]|0):0){switch(c[h>>2]|0){case 10:case 9:{c[(c[p>>2]|0)+24>>2]=128;break}case 311:case 308:{c[(c[p>>2]|0)+24>>2]=32;break}default:c[(c[p>>2]|0)+24>>2]=64}n=ef(c[(c[p>>2]|0)+24>>2]<<1)|0;c[(c[p>>2]|0)+20>>2]=n;if(!(c[(c[p>>2]|0)+20>>2]|0)){c[l>>2]=pt(c[(fu()|0)>>2]|0)|0;Hi(c[q>>2]|0)}}if(((c[l>>2]|0)==0?(_m(),c[h>>2]|0):0)?(c[l>>2]=Ki(c[q>>2]|0,c[h>>2]|0)|0,c[l>>2]|0):0)Hi(c[q>>2]|0);if(c[l>>2]|0){s=c[l>>2]|0;i=f;return s|0}c[c[g>>2]>>2]=c[q>>2];s=c[l>>2]|0;i=f;return s|0}function Hi(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+68|0;g=e+64|0;h=e+60|0;k=e+56|0;l=e+52|0;m=e+74|0;n=e+16|0;o=e+48|0;p=e+44|0;q=e+40|0;r=e+73|0;s=e+8|0;t=e+36|0;u=e+32|0;v=e+28|0;w=e+72|0;x=e;y=e+24|0;c[f>>2]=b;if(!(c[f>>2]|0)){i=e;return}if(c[(c[c[f>>2]>>2]|0)+8>>2]|0)Ii(c[f>>2]|0);c[g>>2]=c[(c[c[f>>2]>>2]|0)+16>>2];while(1){if(!(c[g>>2]|0))break;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[k>>2]=c[g>>2];c[l>>2]=c[(c[g>>2]|0)+8>>2];a[m>>0]=0;b=n;c[b>>2]=d[m>>0];c[b+4>>2]=0;while(1){if(!(c[k>>2]&7|0?(c[l>>2]|0)!=0:0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}if((c[l>>2]|0)>>>0>=8){b=n;z=Xw(c[b>>2]|0,c[b+4>>2]|0,16843009,16843009)|0;b=n;c[b>>2]=z;c[b+4>>2]=C;do{c[o>>2]=c[k>>2];b=n;z=c[b+4>>2]|0;A=c[o>>2]|0;c[A>>2]=c[b>>2];c[A+4>>2]=z;c[l>>2]=(c[l>>2]|0)-8;c[k>>2]=(c[k>>2]|0)+8}while((c[l>>2]|0)>>>0>=8)}while(1){if(!(c[l>>2]|0))break;a[c[k>>2]>>0]=a[m>>0]|0;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-1}hf(c[g>>2]|0);c[g>>2]=c[h>>2]}if(c[(c[c[f>>2]>>2]|0)+20>>2]|0){c[p>>2]=c[(c[c[f>>2]>>2]|0)+20>>2];c[q>>2]=c[(c[c[f>>2]>>2]|0)+24>>2]<<1;a[r>>0]=0;h=s;c[h>>2]=d[r>>0];c[h+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){h=s;g=Xw(c[h>>2]|0,c[h+4>>2]|0,16843009,16843009)|0;h=s;c[h>>2]=g;c[h+4>>2]=C;do{c[t>>2]=c[p>>2];h=s;g=c[h+4>>2]|0;l=c[t>>2]|0;c[l>>2]=c[h>>2];c[l+4>>2]=g;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}hf(c[(c[c[f>>2]>>2]|0)+20>>2]|0)}c[u>>2]=c[f>>2];c[v>>2]=c[(c[c[f>>2]>>2]|0)+4>>2];a[w>>0]=0;q=x;c[q>>2]=d[w>>0];c[q+4>>2]=0;while(1){if(!(c[u>>2]&7|0?(c[v>>2]|0)!=0:0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}if((c[v>>2]|0)>>>0>=8){q=x;p=Xw(c[q>>2]|0,c[q+4>>2]|0,16843009,16843009)|0;q=x;c[q>>2]=p;c[q+4>>2]=C;do{c[y>>2]=c[u>>2];q=x;p=c[q+4>>2]|0;r=c[y>>2]|0;c[r>>2]=c[q>>2];c[r+4>>2]=p;c[v>>2]=(c[v>>2]|0)-8;c[u>>2]=(c[u>>2]|0)+8}while((c[v>>2]|0)>>>0>=8)}while(1){if(!(c[v>>2]|0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}hf(c[f>>2]|0);i=e;return}function Ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+20|0;e=b+16|0;f=b+8|0;g=b;c[d>>2]=a;if(c[(c[c[d>>2]>>2]|0)+8>>2]|0){if(c[(c[d>>2]|0)+4>>2]|0)Ji(c[d>>2]|0,0,0);Ev(c[(c[c[d>>2]>>2]|0)+8>>2]|0)|0;c[(c[c[d>>2]>>2]|0)+8>>2]=0}c[e>>2]=c[d>>2];d=f;c[d>>2]=42;c[d+4>>2]=0;d=f;f=Xw(c[e>>2]|0,0,c[d>>2]|0,c[d+4>>2]|0)|0;d=g;c[d>>2]=f;c[d+4>>2]=C;i=b;return}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[(c[c[f>>2]>>2]|0)+8>>2]|0){if(c[(c[f>>2]|0)+4>>2]|0?(Jv((c[f>>2]|0)+12|0,c[(c[f>>2]|0)+4>>2]|0,1,c[(c[c[f>>2]>>2]|0)+8>>2]|0)|0)!=1:0)Ee(36914,630,36919);if(c[h>>2]|0?(Jv(c[g>>2]|0,c[h>>2]|0,1,c[(c[c[f>>2]>>2]|0)+8>>2]|0)|0)!=1:0)Ee(36914,632,36919)}c[k>>2]=c[(c[c[f>>2]>>2]|0)+16>>2];while(1){l=(c[f>>2]|0)+4|0;if(!(c[k>>2]|0))break;if(c[l>>2]|0)xb[c[(c[c[k>>2]>>2]|0)+32>>2]&7]((c[k>>2]|0)+16|0,(c[f>>2]|0)+12|0,c[(c[f>>2]|0)+4>>2]|0);xb[c[(c[c[k>>2]>>2]|0)+32>>2]&7]((c[k>>2]|0)+16|0,c[g>>2]|0,c[h>>2]|0);c[k>>2]=c[(c[k>>2]|0)+4>>2]}c[l>>2]=0;i=e;return}function Ki(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=c[c[k>>2]>>2];c[p>>2]=0;c[o>>2]=c[(c[m>>2]|0)+16>>2];while(1){if(!(c[o>>2]|0))break;if((c[c[c[o>>2]>>2]>>2]|0)==(c[l>>2]|0)){r=4;break}c[o>>2]=c[(c[o>>2]|0)+4>>2]}if((r|0)==4){c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}c[n>>2]=Di(c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=c[l>>2];Le(36928,g);c[p>>2]=5}if(((c[p>>2]|0)==0&(c[l>>2]|0)==1?Jg()|0:0)?(Rg(36967),Pg()|0):0)c[p>>2]=5;do if(!(c[p>>2]|0)){c[q>>2]=24+(c[(c[n>>2]|0)+44>>2]|0)-8;l=c[q>>2]|0;if(a[(c[m>>2]|0)+12>>0]&1|0)c[o>>2]=ef(l)|0;else c[o>>2]=bf(l)|0;if(c[o>>2]|0){c[c[o>>2]>>2]=c[n>>2];c[(c[o>>2]|0)+4>>2]=c[(c[m>>2]|0)+16>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];c[(c[m>>2]|0)+16>>2]=c[o>>2];vb[c[(c[c[o>>2]>>2]|0)+28>>2]&7]((c[o>>2]|0)+16|0,(d[(c[m>>2]|0)+12>>0]|0)>>>2&1|0?256:0);break}else{c[p>>2]=pt(c[(fu()|0)>>2]|0)|0;break}}while(0);c[h>>2]=c[p>>2];s=c[h>>2]|0;i=f;return s|0}function Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+80|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d+24|0;h=d+20|0;k=d+28|0;c[g>>2]=a;c[h>>2]=b;if(Jg()|0){i=d;return}if(c[(c[c[g>>2]>>2]|0)+8>>2]|0){Le(36976,d);i=d;return}c[17652]=(c[17652]|0)+1;b=c[h>>2]|0;c[f>>2]=c[17652];c[f+4>>2]=b;Cu(k,49,37008,f)|0;f=zv(k,37025)|0;c[(c[c[g>>2]>>2]|0)+8>>2]=f;if(c[(c[c[g>>2]>>2]|0)+8>>2]|0){i=d;return}c[e>>2]=k;Le(37027,e);i=d;return}function Mi(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+4|0;g=e;c[f>>2]=b;b=(c[c[f>>2]>>2]|0)+12|0;a[b>>0]=a[b>>0]&-3;c[(c[f>>2]|0)+4>>2]=0;c[g>>2]=c[(c[c[f>>2]>>2]|0)+16>>2];while(1){if(!(c[g>>2]|0))break;Sw((c[g>>2]|0)+16|0,0,c[(c[c[g>>2]>>2]|0)+44>>2]|0)|0;vb[c[(c[c[g>>2]>>2]|0)+28>>2]&7]((c[g>>2]|0)+16|0,(d[(c[c[f>>2]>>2]|0)+12>>0]|0)>>>2&1|0?256:0);c[g>>2]=c[(c[g>>2]|0)+4>>2]}if(!(c[(c[c[f>>2]>>2]|0)+20>>2]|0)){i=e;return}Ji(c[f>>2]|0,c[(c[c[f>>2]>>2]|0)+20>>2]|0,c[(c[c[f>>2]>>2]|0)+24>>2]|0);i=e;return}function Ni(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Hi(c[d>>2]|0);i=b;return}function Oi(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Ji(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Pi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[f+4>>2]=e;c[l>>2]=0;switch(c[h>>2]|0){case 5:{Qi(c[g>>2]|0);break}case 32:{Li(c[g>>2]|0,c[k>>2]|0);break}case 33:{Ii(c[g>>2]|0);break}default:c[l>>2]=61}i=f;return c[l>>2]|0}function Qi(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=b;if((d[(c[c[f>>2]>>2]|0)+12>>0]|0)>>>1&1|0){i=e;return}if(c[(c[f>>2]|0)+4>>2]|0)Ji(c[f>>2]|0,0,0);c[g>>2]=c[(c[c[f>>2]>>2]|0)+16>>2];while(1){if(!(c[g>>2]|0))break;ub[c[(c[c[g>>2]>>2]|0)+36>>2]&15]((c[g>>2]|0)+16|0);c[g>>2]=c[(c[g>>2]|0)+4>>2]}g=(c[c[f>>2]>>2]|0)+12|0;a[g>>0]=a[g>>0]&-3|2;if(!(c[(c[c[f>>2]>>2]|0)+20>>2]|0)){i=e;return}c[h>>2]=Ri(c[f>>2]|0)|0;c[k>>2]=Si(c[f>>2]|0,c[h>>2]|0)|0;c[l>>2]=Ti(c[h>>2]|0)|0;c[n>>2]=Gi(m,c[h>>2]|0,(a[(c[c[f>>2]>>2]|0)+12>>0]&1|0?1:0)|((d[(c[c[f>>2]>>2]|0)+12>>0]|0)>>>2&1|0?256:0))|0;if(c[n>>2]|0)ye(c[n>>2]|0,0);Ji(c[m>>2]|0,(c[(c[c[f>>2]>>2]|0)+20>>2]|0)+(c[(c[c[f>>2]>>2]|0)+24>>2]|0)|0,c[(c[c[f>>2]>>2]|0)+24>>2]|0);Ji(c[m>>2]|0,c[k>>2]|0,c[l>>2]|0);Qi(c[m>>2]|0);f=c[k>>2]|0;k=Si(c[m>>2]|0,c[h>>2]|0)|0;Ow(f|0,k|0,c[l>>2]|0)|0;Hi(c[m>>2]|0);i=e;return}function Ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;e=b+8|0;f=b+4|0;c[e>>2]=a;c[f>>2]=c[(c[c[e>>2]>>2]|0)+16>>2];if(c[f>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){Sg(36914,980,37052,0,37064);Ie(37085,d)}if(!(c[f>>2]|0)){g=0;i=b;return g|0}g=c[c[c[f>>2]>>2]>>2]|0;i=b;return g|0}function Si(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=c[(c[c[g>>2]>>2]|0)+16>>2];if(!(c[h>>2]|0)){if(!(c[k>>2]|0))Ee(36914,816,37175);if(c[(c[k>>2]|0)+4>>2]|0)Le(37136,e);c[f>>2]=wb[c[(c[c[k>>2]>>2]|0)+40>>2]&15]((c[k>>2]|0)+16|0)|0;l=c[f>>2]|0;i=d;return l|0}c[k>>2]=c[(c[c[g>>2]>>2]|0)+16>>2];while(1){if(!(c[k>>2]|0)){m=11;break}n=c[k>>2]|0;if((c[c[c[k>>2]>>2]>>2]|0)==(c[h>>2]|0))break;c[k>>2]=c[n+4>>2]}if((m|0)==11)Ee(36914,816,37175);c[f>>2]=wb[c[(c[n>>2]|0)+40>>2]&15]((c[k>>2]|0)+16|0)|0;l=c[f>>2]|0;i=d;return l|0}function Ti(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Di(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=0;i=b;return f|0}f=c[(c[e>>2]|0)+24>>2]|0;i=b;return f|0}function Ui(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[(c[c[f>>2]>>2]|0)+20>>2]|0){c[k>>2]=Vi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(!(c[k>>2]|0))Mi(c[f>>2]|0)}else c[k>>2]=70;i=e;return c[k>>2]|0}function Vi(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[o>>2]=Ri(c[k>>2]|0)|0;c[p>>2]=0;if(!(c[o>>2]|0)){c[h>>2]=5;s=c[h>>2]|0;i=g;return s|0}do if((c[m>>2]|0)>>>0>(c[(c[c[k>>2]>>2]|0)+24>>2]|0)>>>0){c[p>>2]=ef(Ti(c[o>>2]|0)|0)|0;if(c[p>>2]|0){Wi(c[o>>2]|0,c[p>>2]|0,c[l>>2]|0,c[m>>2]|0);c[l>>2]=c[p>>2];c[m>>2]=Ti(c[o>>2]|0)|0;if((c[m>>2]|0)>>>0<=(c[(c[c[k>>2]>>2]|0)+24>>2]|0)>>>0)break;Fe(37219,36914,716,37252)}else{c[h>>2]=pt(c[(fu()|0)>>2]|0)|0;s=c[h>>2]|0;i=g;return s|0}}while(0);Sw(c[(c[c[k>>2]>>2]|0)+20>>2]|0,0,c[(c[c[k>>2]>>2]|0)+24>>2]<<1|0)|0;c[q>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[r>>2]=(c[(c[c[k>>2]>>2]|0)+20>>2]|0)+(c[(c[c[k>>2]>>2]|0)+24>>2]|0);Ow(c[q>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;Ow(c[r>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[(c[c[k>>2]>>2]|0)+24>>2]|0))break;m=(c[q>>2]|0)+(c[n>>2]|0)|0;a[m>>0]=(d[m>>0]|0)^54;m=(c[r>>2]|0)+(c[n>>2]|0)|0;a[m>>0]=(d[m>>0]|0)^92;c[n>>2]=(c[n>>2]|0)+1}hf(c[p>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}function Wi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;h=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[h>>2]|0)==2){Kl(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if((c[h>>2]|0)==3?(Jg()|0)==0:0){Qk(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if(((c[h>>2]|0)==1?Jg()|0:0)?(Rg(36967),Pg()|0):0)Og();c[o>>2]=Gi(n,c[h>>2]|0,0)|0;if(c[o>>2]|0){e=c[h>>2]|0;d=ot(Xi(c[o>>2]|0)|0)|0;c[g>>2]=e;c[g+4>>2]=d;Ke(37183,g)}Ji(c[n>>2]|0,c[l>>2]|0,c[m>>2]|0);Qi(c[n>>2]|0);m=c[k>>2]|0;k=Si(c[n>>2]|0,c[h>>2]|0)|0;Ow(m|0,k|0,Ti(c[h>>2]|0)|0)|0;Hi(c[n>>2]|0);i=f;return}function Xi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Yi(32,c[d>>2]|0)|0;i=b;return a|0}function Yi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Zi(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function _i(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Pi(c[e>>2]|0,5,0,0)|0;b=Si(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function $i(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;if((c[n>>2]|0)==0|(c[o>>2]|0)<0){c[h>>2]=45;s=c[h>>2]|0;i=g;return s|0}if(c[l>>2]&-3|0){c[h>>2]=45;s=c[h>>2]|0;i=g;return s|0}c[p>>2]=((c[l>>2]&2|0)!=0^1^1)&1;if((c[p>>2]|0)!=0&(c[o>>2]|0)<1){c[h>>2]=45;s=c[h>>2]|0;i=g;return s|0}if((c[k>>2]|0)!=2|(c[p>>2]|0)!=0){if(((c[k>>2]|0)==1?Jg()|0:0)?(Rg(36967),Pg()|0):0)Og();c[r>>2]=Gi(q,c[k>>2]|0,c[p>>2]|0?2:0)|0;if(c[r>>2]|0){c[h>>2]=c[r>>2];s=c[h>>2]|0;i=g;return s|0}do if(c[p>>2]|0){c[r>>2]=Ui(c[q>>2]|0,(c[(c[n>>2]|0)+12>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,c[(c[n>>2]|0)+8>>2]|0)|0;if(!(c[r>>2]|0)){c[n>>2]=(c[n>>2]|0)+16;c[o>>2]=(c[o>>2]|0)+-1;break}Hi(c[q>>2]|0);c[h>>2]=c[r>>2];s=c[h>>2]|0;i=g;return s|0}while(0);while(1){t=c[q>>2]|0;if(!(c[o>>2]|0))break;Ji(t,(c[(c[n>>2]|0)+12>>2]|0)+(c[(c[n>>2]|0)+4>>2]|0)|0,c[(c[n>>2]|0)+8>>2]|0);c[n>>2]=(c[n>>2]|0)+16;c[o>>2]=(c[o>>2]|0)+-1}Qi(t);t=c[m>>2]|0;r=Si(c[q>>2]|0,c[k>>2]|0)|0;Ow(t|0,r|0,Ti(c[k>>2]|0)|0)|0;Hi(c[q>>2]|0)}else Ll(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}function aj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ri(c[d>>2]|0)|0;i=b;return a|0}function bj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ti(c[d>>2]|0)|0;i=b;return a|0}function cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;a:do switch(c[h>>2]|0){case 8:{if((c[k>>2]|0)!=0|(c[l>>2]|0)!=0){c[m>>2]=45;break a}else{c[m>>2]=dj(c[g>>2]|0)|0;break a}break}case 10:{c[m>>2]=dj(c[g>>2]|0)|0;if(!(c[m>>2]|0)){c[n>>2]=ej(c[g>>2]|0,o,0)|0;if(c[k>>2]|0?(c[c[l>>2]>>2]|0)>>>0>=(c[o>>2]|0)>>>0:0){Ow(c[k>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[c[l>>2]>>2]=c[o>>2];break a}if((c[k>>2]|0)==0&(c[l>>2]|0)!=0){c[c[l>>2]>>2]=c[o>>2];break a}if(c[k>>2]|0){c[m>>2]=66;break a}else{c[m>>2]=45;break a}}break}case 57:{if(c[l>>2]|0)p=c[c[l>>2]>>2]|0;else p=0;c[m>>2]=hj(fj(c[g>>2]|0,p,0)|0)|0;break}default:c[m>>2]=61}while(0);i=f;return c[m>>2]|0}function dj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=Di(c[f>>2]|0)|0;if(c[g>>2]|0?(a[(c[g>>2]|0)+4>>0]&1|0)==0:0){c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}c[e>>2]=5;h=c[e>>2]|0;i=d;return h|0}function ej(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[m>>2]=0;c[l>>2]=Di(c[g>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=c[g>>2];Ke(37268,f)}if(c[h>>2]|0)c[c[h>>2]>>2]=c[(c[l>>2]|0)+16>>2];if(!(c[k>>2]|0)){n=c[l>>2]|0;o=n+12|0;p=c[o>>2]|0;c[m>>2]=p;q=c[m>>2]|0;i=e;return q|0}c[c[k>>2]>>2]=c[(c[l>>2]|0)+24>>2];n=c[l>>2]|0;o=n+12|0;p=c[o>>2]|0;c[m>>2]=p;q=c[m>>2]|0;i=e;return q|0}function fj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=0;c[m>>2]=Di(c[g>>2]|0)|0;if((c[m>>2]|0?(a[(c[m>>2]|0)+4>>0]&1|0)==0:0)?c[(c[m>>2]|0)+48>>2]|0:0){c[l>>2]=sb[c[(c[m>>2]|0)+48>>2]&63](c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;n=c[l>>2]|0;o=gj(n)|0;i=f;return o|0}if(c[m>>2]|0)p=(c[(c[m>>2]|0)+48>>2]|0)!=0;else p=0;c[l>>2]=p?5:69;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=gj(n)|0;i=f;return o|0}p=c[k>>2]|0;k=c[g>>2]|0;if(c[m>>2]|0?!(a[(c[m>>2]|0)+4>>0]&1|0):0)q=37821;else q=c[m>>2]|0?37782:37801;Cb[p&1](42986,k,37843,q);n=c[l>>2]|0;o=gj(n)|0;i=f;return o|0}function gj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Zi(1,c[d>>2]|0)|0;i=b;return a|0}function hj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function ij(){return 0}function jj(){return 0}function kj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[17653]=c[e>>2];c[17654]=c[f>>2];i=d;return}function lj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=mj(c[g>>2]|0,1,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;oj(10);i=f;return c[m>>2]|0}function mj(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;h=i;i=i+96|0;if((i|0)>=(j|0))U();k=h+8|0;l=h;m=h+80|0;n=h+76|0;o=h+72|0;p=h+68|0;q=h+64|0;r=h+60|0;s=h+56|0;t=h+52|0;u=h+48|0;v=h+44|0;w=h+40|0;x=h+36|0;y=h+32|0;z=h+28|0;A=h+24|0;B=h+20|0;C=h+16|0;D=h+12|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=f;c[q>>2]=g;if((c[m>>2]|0)>>>0<16){c[l>>2]=16;Je(37297,l)}c[C>>2]=mf(c[1083]<<2)|0;c[u>>2]=hp(2)|0;c[v>>2]=hp(3)|0;l=c[m>>2]|0;if(c[n>>2]|0)E=Fp(l)|0;else E=Ep(l)|0;c[r>>2]=E;c[w>>2]=yp(c[r>>2]|0)|0;c[t>>2]=yp(c[r>>2]|0)|0;c[s>>2]=yp(c[r>>2]|0)|0;c[B>>2]=0;c[A>>2]=0;a:while(1){c[D>>2]=0;Hp(c[r>>2]|0,c[m>>2]|0,c[o>>2]|0);ao(c[r>>2]|0,(c[m>>2]|0)-1|0);if(c[n>>2]|0)$n(c[r>>2]|0,(c[m>>2]|0)-2|0);$n(c[r>>2]|0,0);c[x>>2]=0;while(1){E=e[16500+(c[x>>2]<<1)>>1]|0;c[y>>2]=E;if(!E)break;E=no(0,c[r>>2]|0,c[y>>2]|0)|0;c[(c[C>>2]|0)+(c[x>>2]<<2)>>2]=E;c[x>>2]=(c[x>>2]|0)+1}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=2e4)break;c[A>>2]=(c[A>>2]|0)+1;c[x>>2]=0;while(1){E=e[16500+(c[x>>2]<<1)>>1]|0;c[y>>2]=E;if(!E)break;while(1){if(((c[(c[C>>2]|0)+(c[x>>2]<<2)>>2]|0)+(c[z>>2]|0)|0)>>>0<(c[y>>2]|0)>>>0)break;E=(c[C>>2]|0)+(c[x>>2]<<2)|0;c[E>>2]=(c[E>>2]|0)-(c[y>>2]|0)}if(!((c[(c[C>>2]|0)+(c[x>>2]<<2)>>2]|0)+(c[z>>2]|0)|0))break;c[x>>2]=(c[x>>2]|0)+1}if(!(c[y>>2]|0)){Sn(c[s>>2]|0,c[r>>2]|0,c[z>>2]|0);c[B>>2]=(c[B>>2]|0)+1;Un(c[t>>2]|0,c[s>>2]|0,1);Fo(c[w>>2]|0,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0);if((io(c[w>>2]|0,1)|0)==0?nj(c[s>>2]|0,5,B)|0:0){if(!(_n(c[s>>2]|0,(c[m>>2]|0)-1-(c[n>>2]|0)|0)|0)){F=24;break}if(!(c[p>>2]|0)){F=28;break a}if(!(Bb[c[p>>2]&7](c[q>>2]|0,c[s>>2]|0)|0)){F=28;break a}oj(47)}E=(c[D>>2]|0)+1|0;c[D>>2]=E;if((E|0)==10){oj(46);c[D>>2]=0}}c[z>>2]=(c[z>>2]|0)+2}if((F|0)==24){F=0;oj(10);Le(37445,k)}oj(58)}if((F|0)==28){qp(c[u>>2]|0);qp(c[v>>2]|0);qp(c[w>>2]|0);qp(c[t>>2]|0);qp(c[r>>2]|0);hf(c[C>>2]|0);i=h;return c[s>>2]|0}return 0}function nj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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+64|0;if((i|0)>=(j|0))U();f=e+52|0;g=e+48|0;h=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;t=e+4|0;u=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=ip(c[(c[f>>2]|0)+4>>2]|0)|0;c[l>>2]=ip(c[(c[f>>2]|0)+4>>2]|0)|0;c[m>>2]=ip(c[(c[f>>2]|0)+4>>2]|0)|0;c[n>>2]=ip(c[(c[f>>2]|0)+4>>2]|0)|0;c[o>>2]=hp(2)|0;c[t>>2]=0;c[u>>2]=Zn(c[f>>2]|0)|0;if((c[g>>2]|0)<5)c[g>>2]=5;Un(c[n>>2]|0,c[f>>2]|0,1);c[p>>2]=vp(c[n>>2]|0)|0;c[s>>2]=Ho(c[p>>2]|0)|0;qo(c[p>>2]|0,c[p>>2]|0,c[s>>2]|0);c[q>>2]=0;a:while(1){if((c[q>>2]|0)>>>0>=(c[g>>2]|0)>>>0){v=22;break}d=c[h>>2]|0;c[d>>2]=(c[d>>2]|0)+1;d=c[k>>2]|0;if(c[q>>2]|0){Hp(d,c[u>>2]|0,0);b=(_n(c[k>>2]|0,(c[u>>2]|0)-2|0)|0)!=0;ao(c[k>>2]|0,(c[u>>2]|0)-2|0);if(!b)co(c[k>>2]|0,(c[u>>2]|0)-2|0);if((jo(c[k>>2]|0,c[n>>2]|0)|0)>=0){v=11;break}if((io(c[k>>2]|0,1)|0)<=0){v=11;break}}else Bp(d,2)|0;Fo(c[l>>2]|0,c[k>>2]|0,c[p>>2]|0,c[f>>2]|0);if(io(c[l>>2]|0,1)|0?jo(c[l>>2]|0,c[n>>2]|0)|0:0){c[r>>2]=1;while(1){if((c[r>>2]|0)>>>0<(c[s>>2]|0)>>>0)w=(jo(c[l>>2]|0,c[n>>2]|0)|0)!=0;else w=0;x=c[l>>2]|0;if(!w)break;Fo(x,c[l>>2]|0,c[o>>2]|0,c[f>>2]|0);if(!(io(c[l>>2]|0,1)|0)){v=23;break a}c[r>>2]=(c[r>>2]|0)+1}if(jo(x,c[n>>2]|0)|0){v=23;break}}oj(43);c[q>>2]=(c[q>>2]|0)+1}if((v|0)==11)Fe(37344,37416,951,37427);else if((v|0)==22){c[t>>2]=1;y=c[k>>2]|0;qp(y);z=c[l>>2]|0;qp(z);A=c[m>>2]|0;qp(A);B=c[n>>2]|0;qp(B);C=c[p>>2]|0;qp(C);D=c[o>>2]|0;qp(D);E=c[t>>2]|0;i=e;return E|0}else if((v|0)==23){y=c[k>>2]|0;qp(y);z=c[l>>2]|0;qp(z);A=c[m>>2]|0;qp(A);B=c[n>>2]|0;qp(B);C=c[p>>2]|0;qp(C);D=c[o>>2]|0;qp(D);E=c[t>>2]|0;i=e;return E|0}return 0}function oj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(c[17653]|0)){i=b;return}tb[c[17653]&15](c[17654]|0,37436,c[d>>2]|0,0,0);i=b;return}function pj(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=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;h=i;i=i+48|0;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;u=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=f;c[p>>2]=g;c[s>>2]=0;c[q>>2]=0;while(1){g=e[16500+(c[q>>2]<<1)>>1]|0;c[r>>2]=g;v=c[l>>2]|0;if(!g)break;if(ro(v,c[r>>2]|0)|0){w=4;break}c[q>>2]=(c[q>>2]|0)+1}if((w|0)==4){c[k>>2]=((io(c[l>>2]|0,c[r>>2]|0)|0)!=0^1)&1;x=c[k>>2]|0;i=h;return x|0}c[t>>2]=yp(v)|0;c[u>>2]=yp(c[l>>2]|0)|0;Un(c[u>>2]|0,c[l>>2]|0,1);Fo(c[t>>2]|0,c[m>>2]|0,c[u>>2]|0,c[l>>2]|0);qp(c[u>>2]|0);u=(io(c[t>>2]|0,1)|0)!=0;qp(c[t>>2]|0);if(u){oj(46);c[k>>2]=0;x=c[k>>2]|0;i=h;return x|0}if(!(c[o>>2]|0?!(sb[c[o>>2]&63](c[p>>2]|0,2,c[l>>2]|0)|0):0))w=10;do if((w|0)==10?nj(c[l>>2]|0,c[n>>2]|0,s)|0:0){if(c[o>>2]|0?(sb[c[o>>2]&63](c[p>>2]|0,1,c[l>>2]|0)|0)==0:0)break;c[k>>2]=1;x=c[k>>2]|0;i=h;return x|0}while(0);oj(46);c[k>>2]=0;x=c[k>>2]|0;i=h;return x|0}function qj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+64|0;if((i|0)>=(j|0))U();k=h+60|0;l=h+56|0;m=h+52|0;n=h+48|0;o=h+44|0;p=h+40|0;q=h+36|0;r=h+32|0;s=h+28|0;t=h+24|0;u=h+20|0;v=h+16|0;w=h+12|0;x=h+8|0;y=h+4|0;z=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;if(!((c[l>>2]|0)!=0&(c[m>>2]|0)!=0&(c[n>>2]|0)!=0)){c[k>>2]=0;A=c[k>>2]|0;i=h;return A|0}if(c[o>>2]|0?_n(c[o>>2]|0,0)|0:0){c[r>>2]=rj(c[m>>2]|0)|0;c[s>>2]=rj(c[n>>2]|0)|0;c[t>>2]=yp(c[l>>2]|0)|0;Do(c[t>>2]|0,c[r>>2]|0,c[s>>2]|0);c[w>>2]=yp(c[r>>2]|0)|0;yo(c[w>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;Do(c[w>>2]|0,c[w>>2]|0,c[s>>2]|0);c[v>>2]=c[w>>2];c[w>>2]=yp(c[s>>2]|0)|0;yo(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;Do(c[w>>2]|0,c[w>>2]|0,c[r>>2]|0);Vn(c[v>>2]|0,c[v>>2]|0,c[w>>2]|0);if(c[(c[v>>2]|0)+8>>2]|0)Tn(c[v>>2]|0,c[v>>2]|0,c[t>>2]|0);c[u>>2]=c[w>>2];c[w>>2]=0;Xn(c[u>>2]|0,c[v>>2]|0,c[l>>2]|0,c[t>>2]|0);Tn(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);qp(c[v>>2]|0);if((jo(c[u>>2]|0,c[l>>2]|0)|0)<0)Tn(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0);c[x>>2]=hp(2)|0;c[y>>2]=yp(c[u>>2]|0)|0;Un(c[t>>2]|0,c[t>>2]|0,1);Un(c[u>>2]|0,c[u>>2]|0,1);while(1){c[z>>2]=so(c[y>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;Sn(c[u>>2]|0,c[u>>2]|0,1);if(c[z>>2]|0){if(pj(c[u>>2]|0,c[x>>2]|0,64,0,0)|0)break}else oj(47);Tn(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0)}qp(c[y>>2]|0);qp(c[x>>2]|0);qp(c[t>>2]|0);oj(10);t=c[r>>2]|0;if(c[p>>2]|0)c[c[p>>2]>>2]=t;else qp(t);t=c[s>>2]|0;if(c[q>>2]|0)c[c[q>>2]>>2]=t;else qp(t);c[k>>2]=c[u>>2];A=c[k>>2]|0;i=h;return A|0}c[k>>2]=0;A=c[k>>2]|0;i=h;return A|0}function rj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=hp(2)|0;c[f>>2]=vp(c[d>>2]|0)|0;$n(c[f>>2]|0,0);while(1){if(!((pj(c[f>>2]|0,c[e>>2]|0,64,0,0)|0)!=0^1))break;Sn(c[f>>2]|0,c[f>>2]|0,2)}qp(c[e>>2]|0);i=b;return c[f>>2]|0}function sj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[o>>2]=5;c[p>>2]=0;c[q>>2]=0;if(c[f>>2]|0)r=(Hf(c[f>>2]|0)|0)-1|0;else r=0;c[n>>2]=r;while(1){if((c[n>>2]|0)<=0)break;c[l>>2]=Kf(c[f>>2]|0,c[n>>2]|0,m)|0;a:do if(c[l>>2]|0)do switch(c[m>>2]|0){case 3:{if((vv(c[l>>2]|0,37475,3)|0)==0&(c[o>>2]|0)==5){c[o>>2]=4;c[p>>2]=c[p>>2]|4;break a}if((vv(c[l>>2]|0,37479,3)|0)==0&(c[o>>2]|0)==5){c[o>>2]=0;c[p>>2]=c[p>>2]|16;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 4:{if(!(vv(c[l>>2]|0,37483,4)|0)){c[p>>2]=c[p>>2]|1024;break a}if((vv(c[l>>2]|0,37488,4)|0)==0&(c[o>>2]|0)==5){c[o>>2]=3;c[p>>2]=c[p>>2]|4;break a}if(!(vv(c[l>>2]|0,46950,4)|0)){c[o>>2]=0;c[p>>2]=c[p>>2]|8192;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 5:{if(!(vv(c[l>>2]|0,46944,5)|0)){c[o>>2]=0;c[p>>2]=c[p>>2]|4096;break a}if((vv(c[l>>2]|0,37493,5)|0)==0&(c[o>>2]|0)==5){c[o>>2]=1;c[p>>2]=c[p>>2]|4;break a}if(!(vv(c[l>>2]|0,37499,5)|0)){c[p>>2]=c[p>>2]|512;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 6:{if(!(vv(c[l>>2]|0,37505,6)|0)){c[p>>2]=c[p>>2]|2048;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 7:{if(!(vv(c[l>>2]|0,37512,7)|0)){c[p>>2]=c[p>>2]|2;break a}if((vv(c[l>>2]|0,37520,7)|0)==0|(c[q>>2]|0)!=0)break a;c[k>>2]=72;break a;break}case 8:{if(!(vv(c[l>>2]|0,39206,8)|0)){c[p>>2]=c[p>>2]|64;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 9:{if((vv(c[l>>2]|0,37528,9)|0)==0&(c[o>>2]|0)==5){c[o>>2]=2;c[p>>2]=c[p>>2]|4;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 10:{if(!(vv(c[l>>2]|0,37538,10)|0)){c[q>>2]=1;break a}if(!(vv(c[l>>2]|0,37549,10)|0)){c[p>>2]=c[p>>2]|16384;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 11:{if(!(vv(c[l>>2]|0,37560,11)|0)){c[p>>2]=c[p>>2]|1;break a}if(!(vv(c[l>>2]|0,37572,11)|0)){c[p>>2]=c[p>>2]|128;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}case 13:{if(!(vv(c[l>>2]|0,37584,13)|0)){c[p>>2]=c[p>>2]|256;break a}if(!(vv(c[l>>2]|0,46990,13)|0)){c[p>>2]=c[p>>2]|32;break a}if(c[q>>2]|0)break a;c[k>>2]=72;break a;break}default:{if(c[q>>2]|0)break a;c[k>>2]=72;break a}}while(0);while(0);c[n>>2]=(c[n>>2]|0)+-1}if(c[g>>2]|0)c[c[g>>2]>>2]=c[p>>2];if(!(c[h>>2]|0)){s=c[k>>2]|0;i=e;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=e;return s|0}function tj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+20|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[c[h>>2]>>2]=0;c[g>>2]=Gf(c[g>>2]|0,37598,0)|0;if(!(c[g>>2]|0)){c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}c[l>>2]=Kf(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){Ef(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Ow(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=gv(k,0,0)|0;c[c[h>>2]>>2]=m;Ef(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 0}function uj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+20|0;l=e+4|0;m=e;c[g>>2]=b;c[h>>2]=d;c[c[h>>2]>>2]=0;c[g>>2]=Gf(c[g>>2]|0,37604,0)|0;if(!(c[g>>2]|0)){c[c[h>>2]>>2]=65537;c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}c[l>>2]=Kf(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){Ef(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Ow(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=gv(k,0,0)|0;c[c[h>>2]>>2]=m;Ef(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 0}function vj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+32|0;h=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[c[k>>2]>>2]=0;if(c[l>>2]|0)c[c[l>>2]>>2]=0;c[n>>2]=Gf(c[g>>2]|0,37614,0)|0;do if(c[n>>2]|0){c[o>>2]=If(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=Nf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(pu(c[p>>2]|0,46984)|0)){Ef(c[o>>2]|0);c[o>>2]=If(c[n>>2]|0,2)|0;if(!(c[o>>2]|0)){c[m>>2]=65;break}hf(c[p>>2]|0);c[p>>2]=Nf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}}c[q>>2]=0;while(1){if(!(c[(c[h>>2]|0)+(c[q>>2]<<2)>>2]|0))break;if(!(cv(c[p>>2]|0,c[(c[h>>2]|0)+(c[q>>2]<<2)>>2]|0)|0))break;c[q>>2]=(c[q>>2]|0)+1}if(!(c[(c[h>>2]|0)+(c[q>>2]<<2)>>2]|0)){c[m>>2]=70;break}if(c[l>>2]|0){if(!(pu(c[p>>2]|0,46944)|0))c[c[l>>2]>>2]=4096;if(!(pu(c[p>>2]|0,46950)|0))c[c[l>>2]>>2]=8192}c[c[k>>2]>>2]=c[o>>2];c[o>>2]=0;c[m>>2]=0}else c[m>>2]=65;while(0);hf(c[p>>2]|0);Ef(c[o>>2]|0);Ef(c[n>>2]|0);i=f;return c[m>>2]|0}function wj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+44|0;h=f+40|0;k=f+36|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;s=f+4|0;t=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[r>>2]=0;c[c[k>>2]>>2]=0;c[n>>2]=Gf(c[g>>2]|0,41949,0)|0;do if(c[n>>2]|0){c[o>>2]=If(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=Nf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(pu(c[p>>2]|0,46984)|0)){c[m>>2]=sj(c[o>>2]|0,r,(c[l>>2]|0)+8|0)|0;if(c[m>>2]|0)break;if((c[(c[l>>2]|0)+8>>2]|0)==4){c[m>>2]=70;break}if((c[(c[l>>2]|0)+8>>2]|0)==3){Ef(c[o>>2]|0);c[o>>2]=Gf(c[n>>2]|0,37622,0)|0;if(c[o>>2]|0){c[t>>2]=Kf(c[o>>2]|0,1,q)|0;if(c[t>>2]|0){g=xj(c[t>>2]|0,c[q>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=g;if(!(c[(c[l>>2]|0)+16>>2]|0))c[m>>2]=5}else c[m>>2]=68;if(c[m>>2]|0)break}Ef(c[o>>2]|0);c[o>>2]=Gf(c[n>>2]|0,37706,0)|0;if(c[o>>2]|0){c[t>>2]=Kf(c[o>>2]|0,1,q)|0;do if(c[t>>2]|0){if((c[q>>2]|0)>>>0>0){g=bf(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=g;if(c[(c[l>>2]|0)+20>>2]|0){Ow(c[(c[l>>2]|0)+20>>2]|0,c[t>>2]|0,c[q>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=c[q>>2];break}else{c[m>>2]=rt()|0;break}}}else c[m>>2]=68;while(0);if(c[m>>2]|0)break}}c[s>>2]=2;a:while(1){Ef(c[o>>2]|0);g=If(c[n>>2]|0,c[s>>2]|0)|0;c[o>>2]=g;if(!g)break;c[t>>2]=Kf(c[o>>2]|0,0,q)|0;if(!((c[q>>2]|0)==9?!(vv(c[t>>2]|0,37622,9)|0):0))u=30;do if((u|0)==30){u=0;if((c[q>>2]|0)==5?(vv(c[t>>2]|0,37706,5)|0)==0:0)break;if((c[q>>2]|0)!=15)break a;if(vv(c[t>>2]|0,37712,15)|0)break a}while(0);c[s>>2]=(c[s>>2]|0)+1}if(!(c[o>>2]|0)){c[m>>2]=68;break}hf(c[p>>2]|0);c[p>>2]=Nf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}}else c[r>>2]=c[r>>2]|8;c[s>>2]=0;while(1){if(!(c[(c[h>>2]|0)+(c[s>>2]<<2)>>2]|0))break;if(!(cv(c[p>>2]|0,c[(c[h>>2]|0)+(c[s>>2]<<2)>>2]|0)|0))break;c[s>>2]=(c[s>>2]|0)+1}if(c[(c[h>>2]|0)+(c[s>>2]<<2)>>2]|0){c[c[k>>2]>>2]=c[o>>2];c[o>>2]=0;g=(c[l>>2]|0)+12|0;c[g>>2]=c[g>>2]|c[r>>2];c[m>>2]=0;break}else{c[m>>2]=70;break}}else c[m>>2]=65;while(0);hf(c[p>>2]|0);Ef(c[o>>2]|0);Ef(c[n>>2]|0);i=f;return c[m>>2]|0}function xj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;while(1){if(!(c[4336+(c[k>>2]<<3)>>2]|0))break;d=Tu(c[4336+(c[k>>2]<<3)>>2]|0)|0;if((d|0)==(c[g>>2]|0)?(vv(c[4336+(c[k>>2]<<3)>>2]|0,c[f>>2]|0,c[g>>2]|0)|0)==0:0)break;c[k>>2]=(c[k>>2]|0)+1}if(c[4336+(c[k>>2]<<3)>>2]|0){c[h>>2]=c[4336+(c[k>>2]<<3)+4>>2];m=c[h>>2]|0;i=e;return m|0}c[l>>2]=bf((c[g>>2]|0)+1|0)|0;if(c[l>>2]|0){Ow(c[l>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;a[(c[l>>2]|0)+(c[g>>2]|0)>>0]=0;c[h>>2]=yi(c[l>>2]|0)|0;hf(c[l>>2]|0);m=c[h>>2]|0;i=e;return m|0}else{c[h>>2]=0;m=c[h>>2]|0;i=e;return m|0}return 0}function yj(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+8>>2]=5;c[(c[f>>2]|0)+12>>2]=0;c[(c[f>>2]|0)+16>>2]=2;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[(c[f>>2]|0)+28>>2]=20;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;i=e;return}function zj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;hf(c[(c[d>>2]|0)+20>>2]|0);i=b;return}function Aj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;e=i;i=i+160|0;if((i|0)>=(j|0))U();f=e+144|0;g=e+140|0;h=e+136|0;k=e+132|0;l=e+128|0;m=e+124|0;n=e+120|0;o=e+116|0;p=e+112|0;q=e+108|0;r=e+104|0;s=e+100|0;t=e+96|0;u=e+92|0;v=e+88|0;w=e+84|0;x=e+80|0;y=e+76|0;z=e+72|0;A=e+68|0;B=e+64|0;C=e+60|0;D=e+56|0;E=e+52|0;F=e+48|0;G=e+44|0;H=e+40|0;I=e+36|0;J=e+32|0;K=e+28|0;L=e+24|0;M=e+20|0;N=e+16|0;O=e+12|0;P=e+8|0;Q=e+4|0;R=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=0;c[r>>2]=0;c[s>>2]=0;c[c[h>>2]>>2]=0;c[m>>2]=Gf(c[g>>2]|0,37728,0)|0;if(!(c[m>>2]|0)){d=Of(c[g>>2]|0,0,0)|0;c[c[h>>2]>>2]=d;c[f>>2]=c[c[h>>2]>>2]|0?0:65;S=c[f>>2]|0;i=e;return S|0}c[t>>2]=Gf(c[m>>2]|0,46984,0)|0;if(c[t>>2]|0){if(sj(c[t>>2]|0,s,(c[k>>2]|0)+8|0)|0)c[r>>2]=1;Ef(c[t>>2]|0)}if((c[(c[k>>2]|0)+8>>2]|0)==5)c[(c[k>>2]|0)+8>>2]=0;c[n>>2]=Gf(c[m>>2]|0,37733,0)|0;if(c[n>>2]|0)T=0;else T=Gf(c[m>>2]|0,42034,0)|0;c[o>>2]=T;a:do if(((c[n>>2]|0)!=0^1)&1^((c[o>>2]|0)!=0^1)&1|0){if(c[r>>2]|0){c[l>>2]=72;break}if((c[(c[k>>2]|0)+8>>2]|0)==0?c[s>>2]&4096|0:0){if(!(c[o>>2]|0)){c[l>>2]=65;break}c[u>>2]=Gf(c[m>>2]|0,37622,0)|0;if(c[u>>2]|0){c[q>>2]=Kf(c[u>>2]|0,1,p)|0;if(c[q>>2]|0){T=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=T;if(!(c[(c[k>>2]|0)+16>>2]|0))c[l>>2]=5}else c[l>>2]=68;Ef(c[u>>2]|0)}else c[l>>2]=65;if(c[l>>2]|0)break;c[v>>2]=Mf(c[o>>2]|0,1,w)|0;if(c[v>>2]|0){if(c[w>>2]<<3>>>0<(c[w>>2]|0)>>>0){hf(c[v>>2]|0);c[l>>2]=67}}else{c[w>>2]=0;c[v>>2]=bf(1)|0;if(!(c[v>>2]|0))c[l>>2]=rt()|0}if(c[l>>2]|0)break;T=rp(0,c[v>>2]|0,c[w>>2]<<3)|0;c[c[h>>2]>>2]=T;break}do if(c[n>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==0:0){if((c[s>>2]&16|0)==0?(c[s>>2]&2|0)==0:0)break;if((Hf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}T=Kf(c[n>>2]|0,1,p)|0;c[q>>2]=T;if(!((T|0)!=0&(c[p>>2]|0)!=0)){c[l>>2]=65;break a}T=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=T;if(!(c[(c[k>>2]|0)+16>>2]|0)){c[l>>2]=5;break a}T=Mf(c[n>>2]|0,2,y)|0;c[x>>2]=T;if(!T){c[l>>2]=65;break a}T=c[x>>2]|0;if(c[y>>2]<<3>>>0<(c[y>>2]|0)>>>0){hf(T);c[l>>2]=67;break a}else{t=rp(0,T,c[y>>2]<<3)|0;c[c[h>>2]>>2]=t;break a}}while(0);if(c[o>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==0:0){if(c[s>>2]&2|0){c[l>>2]=70;break}t=Of(c[o>>2]|0,1,5)|0;c[c[h>>2]>>2]=t;if(c[c[h>>2]>>2]|0)break;c[l>>2]=65;break}if((c[o>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==1:0)?(c[c[k>>2]>>2]|0)==0:0){c[C>>2]=0;c[D>>2]=0;t=Kf(c[o>>2]|0,1,A)|0;c[z>>2]=t;if(!((t|0)!=0&(c[A>>2]|0)!=0)){c[l>>2]=65;break}c[B>>2]=Gf(c[m>>2]|0,37712,0)|0;if(c[B>>2]|0){c[q>>2]=Kf(c[B>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0>0){c[C>>2]=bf(c[p>>2]|0)|0;if(c[C>>2]|0){Ow(c[C>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[D>>2]=c[p>>2];break}else{c[l>>2]=rt()|0;break}}}else c[l>>2]=68;while(0);Ef(c[B>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Rk(c[h>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[z>>2]|0,c[A>>2]|0,c[C>>2]|0,c[D>>2]|0)|0;hf(c[C>>2]|0);break}do if(c[n>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==1:0){if((c[c[k>>2]>>2]|0)!=2?(c[c[k>>2]>>2]|0)!=3:0)break;if((Hf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}t=Kf(c[n>>2]|0,1,p)|0;c[q>>2]=t;if(!((t|0)!=0&(c[p>>2]|0)!=0)){c[l>>2]=65;break a}t=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=t;if(!(c[(c[k>>2]|0)+16>>2]|0)){c[l>>2]=5;break a}t=Kf(c[n>>2]|0,2,F)|0;c[E>>2]=t;if((t|0)!=0&(c[F>>2]|0)!=0){c[l>>2]=Vk(c[h>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[E>>2]|0,c[F>>2]|0,c[(c[k>>2]|0)+16>>2]|0)|0;break a}else{c[l>>2]=65;break a}}while(0);do if(c[o>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==2:0){if((c[c[k>>2]>>2]|0)!=2?(c[c[k>>2]>>2]|0)!=3:0)break;if((Hf(c[o>>2]|0)|0)!=2){c[l>>2]=65;break a}t=Kf(c[o>>2]|0,1,H)|0;c[G>>2]=t;if((t|0)!=0&(c[H>>2]|0)!=0){c[l>>2]=Wk(c[h>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[G>>2]|0,c[H>>2]|0)|0;break a}else{c[l>>2]=65;break a}}while(0);if((c[o>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==3:0)?(c[c[k>>2]>>2]|0)==0:0){t=Kf(c[o>>2]|0,1,J)|0;c[I>>2]=t;if(!((t|0)!=0&(c[J>>2]|0)!=0)){c[l>>2]=65;break}c[L>>2]=0;c[M>>2]=0;c[K>>2]=Gf(c[m>>2]|0,37622,0)|0;if(c[K>>2]|0){c[q>>2]=Kf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){t=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=t;if(c[(c[k>>2]|0)+16>>2]|0)break;c[l>>2]=5}else c[l>>2]=68;while(0);Ef(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=Gf(c[m>>2]|0,37706,0)|0;if(c[K>>2]|0){c[q>>2]=Kf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;t=bf(c[p>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=t;if(c[(c[k>>2]|0)+20>>2]|0){Ow(c[(c[k>>2]|0)+20>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=c[p>>2];break}else{c[l>>2]=rt()|0;break}}else c[l>>2]=68;while(0);Ef(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=Gf(c[m>>2]|0,37712,0)|0;if(c[K>>2]|0){c[q>>2]=Kf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[L>>2]=bf(c[p>>2]|0)|0;if(c[L>>2]|0){Ow(c[L>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[M>>2]=c[p>>2];break}else{c[l>>2]=rt()|0;break}}else c[l>>2]=68;while(0);Ef(c[K>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Xk(c[h>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+16>>2]|0,c[I>>2]|0,c[J>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+24>>2]|0,c[L>>2]|0,c[M>>2]|0)|0;hf(c[L>>2]|0);break}if((c[n>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==4:0)?(c[c[k>>2]>>2]|0)==2:0){if((Hf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=Kf(c[n>>2]|0,1,p)|0;c[q>>2]=t;if(!((t|0)!=0&(c[p>>2]|0)!=0)){c[l>>2]=65;break}c[P>>2]=0;c[Q>>2]=0;t=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=t;if(!(c[(c[k>>2]|0)+16>>2]|0)){c[l>>2]=5;break}t=Kf(c[n>>2]|0,2,O)|0;c[N>>2]=t;if(!((t|0)!=0&(c[O>>2]|0)!=0)){c[l>>2]=65;break}c[R>>2]=Gf(c[m>>2]|0,37738,0)|0;do if(c[R>>2]|0){c[q>>2]=Kf(c[R>>2]|0,1,p)|0;if(c[q>>2]|0){t=gv(c[q>>2]|0,0,10)|0;c[(c[k>>2]|0)+28>>2]=t;Ef(c[R>>2]|0);break}else{c[l>>2]=68;break a}}while(0);c[R>>2]=Gf(c[m>>2]|0,37712,0)|0;if(c[R>>2]|0){c[q>>2]=Kf(c[R>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[P>>2]=bf(c[p>>2]|0)|0;if(c[P>>2]|0){Ow(c[P>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[Q>>2]=c[p>>2];break}else{c[l>>2]=rt()|0;break}}else c[l>>2]=68;while(0);Ef(c[R>>2]|0);if(c[l>>2]|0)break}c[l>>2]=$k(c[h>>2]|0,(c[(c[k>>2]|0)+4>>2]|0)-1|0,c[(c[k>>2]|0)+16>>2]|0,c[N>>2]|0,c[O>>2]|0,c[(c[k>>2]|0)+28>>2]|0,c[P>>2]|0,c[Q>>2]|0)|0;hf(c[P>>2]|0);break}if((c[n>>2]|0?(c[(c[k>>2]|0)+8>>2]|0)==4:0)?(c[c[k>>2]>>2]|0)==3:0){if((Hf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=Kf(c[n>>2]|0,1,p)|0;c[q>>2]=t;if(!((t|0)!=0&(c[p>>2]|0)!=0)){c[l>>2]=65;break}t=xj(c[q>>2]|0,c[p>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=t;if(!(c[(c[k>>2]|0)+16>>2]|0)){c[l>>2]=5;break}t=Of(c[n>>2]|0,2,5)|0;c[c[h>>2]>>2]=t;if(!(c[c[h>>2]>>2]|0))c[l>>2]=65;c[(c[k>>2]|0)+32>>2]=5;c[(c[k>>2]|0)+36>>2]=c[c[h>>2]>>2];break}c[l>>2]=70}else c[l>>2]=65;while(0);Ef(c[m>>2]|0);Ef(c[n>>2]|0);Ef(c[o>>2]|0);if(c[l>>2]|0){hf(c[(c[k>>2]|0)+20>>2]|0);c[(c[k>>2]|0)+20>>2]=0}else c[(c[k>>2]|0)+12>>2]=c[s>>2];c[f>>2]=c[l>>2];S=c[f>>2]|0;i=e;return S|0}function Bj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[h>>2]=c[(c[g>>2]|0)+36>>2];e=al(c[h>>2]|0,c[f>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)-1|0,c[(c[g>>2]|0)+16>>2]|0,c[(c[g>>2]|0)+28>>2]|0)|0;i=d;return e|0}function Cj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[g>>2]=0;a:while(1){a=c[4440+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){k=11;break}a=(cv(c[e>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0)!=0;l=c[f>>2]|0;if(!a){k=4;break}c[h>>2]=c[l+16>>2];while(1){if(!(c[c[h>>2]>>2]|0))break;if(!(cv(c[e>>2]|0,c[c[h>>2]>>2]|0)|0)){k=8;break a}c[h>>2]=(c[h>>2]|0)+4}c[g>>2]=(c[g>>2]|0)+1}if((k|0)==4){c[d>>2]=l;m=c[d>>2]|0;i=b;return m|0}else if((k|0)==8){c[d>>2]=c[f>>2];m=c[d>>2]|0;i=b;return m|0}else if((k|0)==11){c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}return 0}function Dj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=Ej(c[e>>2]|0)|0;if(c[f>>2]|0){c[d>>2]=c[(c[f>>2]|0)+12>>2];g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=37750;g=c[d>>2]|0;i=b;return g|0}return 0}function Ej(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=Fj(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4440+(c[f>>2]<<2)>>2]|0;c[g>>2]=a;if(!a){h=6;break}if((c[e>>2]|0)==(c[c[g>>2]>>2]|0)){h=4;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==4){c[d>>2]=c[g>>2];k=c[d>>2]|0;i=b;return k|0}else if((h|0)==6){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}return 0}function Fj(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;switch(c[e>>2]|0){case 2:{c[d>>2]=1;break}case 3:{c[d>>2]=1;break}case 16:{c[d>>2]=20;break}case 301:{c[d>>2]=18;break}case 302:{c[d>>2]=18;break}default:c[d>>2]=c[e>>2]}i=b;return c[d>>2]|0}function Gj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[c[f>>2]>>2]=0;c[k>>2]=Hj(c[h>>2]|0,0,l,m)|0;do if(!(c[k>>2]|0))if(c[(c[l>>2]|0)+48>>2]|0){c[k>>2]=sb[c[(c[l>>2]|0)+48>>2]&63](c[f>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;break}else{c[k>>2]=69;break}while(0);Ef(c[m>>2]|0);i=e;return c[k>>2]|0}function Hj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+32|0;h=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[c[l>>2]>>2]=0;if(c[m>>2]|0)c[c[m>>2]>>2]=0;c[n>>2]=Gf(c[h>>2]|0,c[k>>2]|0?37752:37764,0)|0;if(!((c[n>>2]|0)!=0|(c[k>>2]|0)!=0))c[n>>2]=Gf(c[h>>2]|0,37752,0)|0;if(!(c[n>>2]|0)){c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[o>>2]=Qf(c[n>>2]|0)|0;Ef(c[n>>2]|0);c[n>>2]=c[o>>2];c[p>>2]=Nf(c[n>>2]|0,0)|0;if(!(c[p>>2]|0)){Ef(c[n>>2]|0);c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[q>>2]=Cj(c[p>>2]|0)|0;hf(c[p>>2]|0);if(!(c[q>>2]|0)){Ef(c[n>>2]|0);c[g>>2]=4;r=c[g>>2]|0;i=f;return r|0}c[c[l>>2]>>2]=c[q>>2];q=c[n>>2]|0;if(c[m>>2]|0)c[c[m>>2]>>2]=q;else Ef(q);c[g>>2]=0;r=c[g>>2]|0;i=f;return r|0}function Ij(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[c[f>>2]>>2]=0;c[k>>2]=Hj(c[h>>2]|0,1,l,m)|0;do if(!(c[k>>2]|0))if(c[(c[l>>2]|0)+52>>2]|0){c[k>>2]=sb[c[(c[l>>2]|0)+52>>2]&63](c[f>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;break}else{c[k>>2]=69;break}while(0);Ef(c[m>>2]|0);i=e;return c[k>>2]|0}function Jj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[c[f>>2]>>2]=0;c[k>>2]=Hj(c[h>>2]|0,1,l,m)|0;do if(!(c[k>>2]|0))if(c[(c[l>>2]|0)+56>>2]|0){c[k>>2]=sb[c[(c[l>>2]|0)+56>>2]&63](c[f>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;break}else{c[k>>2]=69;break}while(0);Ef(c[m>>2]|0);i=e;return c[k>>2]|0}function Kj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=Hj(c[h>>2]|0,0,l,m)|0;do if(!(c[k>>2]|0))if(c[(c[l>>2]|0)+60>>2]|0){c[k>>2]=sb[c[(c[l>>2]|0)+60>>2]&63](c[f>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;break}else{c[k>>2]=69;break}while(0);Ef(c[m>>2]|0);i=e;return c[k>>2]|0} +function Vo(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,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,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0;h=i;i=i+320|0;if((i|0)>=(j|0))U();k=h+316|0;l=h+312|0;m=h+308|0;n=h+304|0;o=h+300|0;p=h+296|0;q=h+292|0;r=h+288|0;s=h+284|0;t=h+280|0;u=h+276|0;v=h+272|0;w=h+268|0;x=h+264|0;y=h+260|0;z=h+256|0;A=h+252|0;B=h+248|0;C=h+244|0;D=h+240|0;E=h+236|0;F=h+232|0;G=h+228|0;H=h+224|0;I=h+220|0;J=h+216|0;K=h+212|0;L=h+208|0;M=h+204|0;N=h+200|0;O=h+196|0;P=h+192|0;Q=h+188|0;S=h+184|0;T=h+180|0;V=h+176|0;W=h+172|0;X=h+168|0;Y=h+164|0;Z=h+160|0;_=h+156|0;$=h+152|0;aa=h+148|0;ba=h+144|0;ca=h+140|0;da=h+136|0;ea=h+132|0;fa=h+128|0;ga=h+124|0;ha=h+120|0;ia=h+116|0;ja=h+112|0;ka=h+108|0;la=h+104|0;ma=h+100|0;na=h+96|0;oa=h+92|0;pa=h+88|0;qa=h+84|0;ra=h+80|0;sa=h+76|0;ta=h+72|0;ua=h+68|0;va=h+64|0;wa=h+60|0;xa=h+56|0;ya=h+52|0;za=h+48|0;Aa=h+44|0;Ba=h+40|0;Ca=h+36|0;Da=h+32|0;Ea=h+28|0;Fa=h+24|0;Ga=h+20|0;Ha=h+16|0;Ia=h+12|0;Ja=h+8|0;Ka=h+4|0;La=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=0;switch(c[p>>2]|0){case 0:{Se();break}case 1:{c[t>>2]=c[c[o>>2]>>2];c[s>>2]=c[(c[m>>2]|0)+((c[n>>2]|0)-1<<2)>>2];if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0){c[s>>2]=(c[s>>2]|0)-(c[t>>2]|0);c[q>>2]=1}c[k>>2]=(c[k>>2]|0)+(c[l>>2]<<2);c[r>>2]=(c[n>>2]|0)-2;while(1){if((c[r>>2]|0)<0)break;c[u>>2]=(c[t>>2]|0)>>>16;c[v>>2]=c[t>>2]&65535;c[y>>2]=((c[s>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0;c[w>>2]=((c[s>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;c[A>>2]=R(c[w>>2]|0,c[v>>2]|0)|0;c[y>>2]=c[y>>2]<<16|(c[(c[m>>2]|0)+(c[r>>2]<<2)>>2]|0)>>>16;if(((c[y>>2]|0)>>>0<(c[A>>2]|0)>>>0?(c[w>>2]=(c[w>>2]|0)+-1,c[y>>2]=(c[y>>2]|0)+(c[t>>2]|0),(c[y>>2]|0)>>>0>=(c[t>>2]|0)>>>0):0)?(c[y>>2]|0)>>>0<(c[A>>2]|0)>>>0:0){c[w>>2]=(c[w>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[t>>2]|0)}c[y>>2]=(c[y>>2]|0)-(c[A>>2]|0);c[z>>2]=((c[y>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0;c[x>>2]=((c[y>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;c[A>>2]=R(c[x>>2]|0,c[v>>2]|0)|0;c[z>>2]=c[z>>2]<<16|c[(c[m>>2]|0)+(c[r>>2]<<2)>>2]&65535;if(((c[z>>2]|0)>>>0<(c[A>>2]|0)>>>0?(c[x>>2]=(c[x>>2]|0)+-1,c[z>>2]=(c[z>>2]|0)+(c[t>>2]|0),(c[z>>2]|0)>>>0>=(c[t>>2]|0)>>>0):0)?(c[z>>2]|0)>>>0<(c[A>>2]|0)>>>0:0){c[x>>2]=(c[x>>2]|0)+-1;c[z>>2]=(c[z>>2]|0)+(c[t>>2]|0)}c[z>>2]=(c[z>>2]|0)-(c[A>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=c[w>>2]<<16|c[x>>2];c[s>>2]=c[z>>2];c[r>>2]=(c[r>>2]|0)+-1}c[k>>2]=(c[k>>2]|0)+(0-(c[l>>2]|0)<<2);c[r>>2]=(c[l>>2]|0)-1;while(1){if((c[r>>2]|0)<0)break;c[B>>2]=(c[t>>2]|0)>>>16;c[C>>2]=c[t>>2]&65535;c[F>>2]=((c[s>>2]|0)>>>0)%((c[B>>2]|0)>>>0)|0;c[D>>2]=((c[s>>2]|0)>>>0)/((c[B>>2]|0)>>>0)|0;c[H>>2]=R(c[D>>2]|0,c[C>>2]|0)|0;c[F>>2]=c[F>>2]<<16;if(((c[F>>2]|0)>>>0<(c[H>>2]|0)>>>0?(c[D>>2]=(c[D>>2]|0)+-1,c[F>>2]=(c[F>>2]|0)+(c[t>>2]|0),(c[F>>2]|0)>>>0>=(c[t>>2]|0)>>>0):0)?(c[F>>2]|0)>>>0<(c[H>>2]|0)>>>0:0){c[D>>2]=(c[D>>2]|0)+-1;c[F>>2]=(c[F>>2]|0)+(c[t>>2]|0)}c[F>>2]=(c[F>>2]|0)-(c[H>>2]|0);c[G>>2]=((c[F>>2]|0)>>>0)%((c[B>>2]|0)>>>0)|0;c[E>>2]=((c[F>>2]|0)>>>0)/((c[B>>2]|0)>>>0)|0;c[H>>2]=R(c[E>>2]|0,c[C>>2]|0)|0;c[G>>2]=c[G>>2]<<16;if(((c[G>>2]|0)>>>0<(c[H>>2]|0)>>>0?(c[E>>2]=(c[E>>2]|0)+-1,c[G>>2]=(c[G>>2]|0)+(c[t>>2]|0),(c[G>>2]|0)>>>0>=(c[t>>2]|0)>>>0):0)?(c[G>>2]|0)>>>0<(c[H>>2]|0)>>>0:0){c[E>>2]=(c[E>>2]|0)+-1;c[G>>2]=(c[G>>2]|0)+(c[t>>2]|0)}c[G>>2]=(c[G>>2]|0)-(c[H>>2]|0);c[(c[k>>2]|0)+(c[r>>2]<<2)>>2]=c[D>>2]<<16|c[E>>2];c[s>>2]=c[G>>2];c[r>>2]=(c[r>>2]|0)+-1}c[c[m>>2]>>2]=c[s>>2];Ma=c[q>>2]|0;i=h;return Ma|0}case 2:{c[m>>2]=(c[m>>2]|0)+((c[n>>2]|0)-2<<2);c[M>>2]=c[(c[o>>2]|0)+4>>2];c[N>>2]=c[c[o>>2]>>2];c[J>>2]=c[(c[m>>2]|0)+4>>2];c[K>>2]=c[c[m>>2]>>2];do if((c[J>>2]|0)>>>0>=(c[M>>2]|0)>>>0){if((c[J>>2]|0)>>>0<=(c[M>>2]|0)>>>0?(c[K>>2]|0)>>>0<(c[N>>2]|0)>>>0:0)break;c[O>>2]=(c[K>>2]|0)-(c[N>>2]|0);c[J>>2]=(c[J>>2]|0)-(c[M>>2]|0)-((c[O>>2]|0)>>>0>(c[K>>2]|0)>>>0&1);c[K>>2]=c[O>>2];c[q>>2]=1}while(0);c[I>>2]=(c[l>>2]|0)+(c[n>>2]|0)-2-1;while(1){if((c[I>>2]|0)<0)break;O=c[m>>2]|0;if((c[I>>2]|0)>=(c[l>>2]|0))c[m>>2]=O+-4;else c[O>>2]=0;do if((c[J>>2]|0)==(c[M>>2]|0)){c[P>>2]=-1;c[Q>>2]=(c[K>>2]|0)+(c[M>>2]|0);if((c[Q>>2]|0)>>>0<(c[M>>2]|0)>>>0){c[S>>2]=(c[c[m>>2]>>2]|0)+(c[N>>2]|0);c[J>>2]=(c[Q>>2]|0)-(c[N>>2]|0)+0+((c[S>>2]|0)>>>0<(c[c[m>>2]>>2]|0)>>>0&1);c[K>>2]=c[S>>2];c[(c[k>>2]|0)+(c[I>>2]<<2)>>2]=c[P>>2];break}else{c[J>>2]=(c[N>>2]|0)-(c[N>>2]|0?1:0);c[K>>2]=0-(c[N>>2]|0);Na=52;break}}else{c[T>>2]=(c[M>>2]|0)>>>16;c[V>>2]=c[M>>2]&65535;c[Y>>2]=((c[J>>2]|0)>>>0)%((c[T>>2]|0)>>>0)|0;c[W>>2]=((c[J>>2]|0)>>>0)/((c[T>>2]|0)>>>0)|0;c[_>>2]=R(c[W>>2]|0,c[V>>2]|0)|0;c[Y>>2]=c[Y>>2]<<16|(c[K>>2]|0)>>>16;if(((c[Y>>2]|0)>>>0<(c[_>>2]|0)>>>0?(c[W>>2]=(c[W>>2]|0)+-1,c[Y>>2]=(c[Y>>2]|0)+(c[M>>2]|0),(c[Y>>2]|0)>>>0>=(c[M>>2]|0)>>>0):0)?(c[Y>>2]|0)>>>0<(c[_>>2]|0)>>>0:0){c[W>>2]=(c[W>>2]|0)+-1;c[Y>>2]=(c[Y>>2]|0)+(c[M>>2]|0)}c[Y>>2]=(c[Y>>2]|0)-(c[_>>2]|0);c[Z>>2]=((c[Y>>2]|0)>>>0)%((c[T>>2]|0)>>>0)|0;c[X>>2]=((c[Y>>2]|0)>>>0)/((c[T>>2]|0)>>>0)|0;c[_>>2]=R(c[X>>2]|0,c[V>>2]|0)|0;c[Z>>2]=c[Z>>2]<<16|c[K>>2]&65535;if(((c[Z>>2]|0)>>>0<(c[_>>2]|0)>>>0?(c[X>>2]=(c[X>>2]|0)+-1,c[Z>>2]=(c[Z>>2]|0)+(c[M>>2]|0),(c[Z>>2]|0)>>>0>=(c[M>>2]|0)>>>0):0)?(c[Z>>2]|0)>>>0<(c[_>>2]|0)>>>0:0){c[X>>2]=(c[X>>2]|0)+-1;c[Z>>2]=(c[Z>>2]|0)+(c[M>>2]|0)}c[Z>>2]=(c[Z>>2]|0)-(c[_>>2]|0);c[P>>2]=c[W>>2]<<16|c[X>>2];c[Q>>2]=c[Z>>2];c[ha>>2]=c[N>>2];c[ia>>2]=c[P>>2];c[da>>2]=c[ha>>2]&65535;c[fa>>2]=(c[ha>>2]|0)>>>16;c[ea>>2]=c[ia>>2]&65535;c[ga>>2]=(c[ia>>2]|0)>>>16;c[$>>2]=R(c[da>>2]|0,c[ea>>2]|0)|0;c[aa>>2]=R(c[da>>2]|0,c[ga>>2]|0)|0;c[ba>>2]=R(c[fa>>2]|0,c[ea>>2]|0)|0;c[ca>>2]=R(c[fa>>2]|0,c[ga>>2]|0)|0;c[aa>>2]=(c[aa>>2]|0)+((c[$>>2]|0)>>>16);c[aa>>2]=(c[aa>>2]|0)+(c[ba>>2]|0);if((c[aa>>2]|0)>>>0<(c[ba>>2]|0)>>>0)c[ca>>2]=(c[ca>>2]|0)+65536;c[J>>2]=(c[ca>>2]|0)+((c[aa>>2]|0)>>>16);c[K>>2]=((c[aa>>2]&65535)<<16)+(c[$>>2]&65535);Na=52}while(0);if((Na|0)==52){Na=0;c[L>>2]=c[c[m>>2]>>2];do{if((c[J>>2]|0)>>>0<=(c[Q>>2]|0)>>>0){if((c[J>>2]|0)!=(c[Q>>2]|0))break;if((c[K>>2]|0)>>>0<=(c[L>>2]|0)>>>0)break}c[P>>2]=(c[P>>2]|0)+-1;c[ja>>2]=(c[K>>2]|0)-(c[N>>2]|0);c[J>>2]=(c[J>>2]|0)-0-((c[ja>>2]|0)>>>0>(c[K>>2]|0)>>>0&1);c[K>>2]=c[ja>>2];c[Q>>2]=(c[Q>>2]|0)+(c[M>>2]|0)}while((c[Q>>2]|0)>>>0>=(c[M>>2]|0)>>>0);c[(c[k>>2]|0)+(c[I>>2]<<2)>>2]=c[P>>2];c[ka>>2]=(c[L>>2]|0)-(c[K>>2]|0);c[J>>2]=(c[Q>>2]|0)-(c[J>>2]|0)-((c[ka>>2]|0)>>>0>(c[L>>2]|0)>>>0&1);c[K>>2]=c[ka>>2]}c[I>>2]=(c[I>>2]|0)+-1}c[(c[m>>2]|0)+4>>2]=c[J>>2];c[c[m>>2]>>2]=c[K>>2];Ma=c[q>>2]|0;i=h;return Ma|0}default:{c[m>>2]=(c[m>>2]|0)+((c[n>>2]|0)-(c[p>>2]|0)<<2);c[ma>>2]=c[(c[o>>2]|0)+((c[p>>2]|0)-1<<2)>>2];c[na>>2]=c[(c[o>>2]|0)+((c[p>>2]|0)-2<<2)>>2];c[oa>>2]=c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2];do if((c[oa>>2]|0)>>>0>=(c[ma>>2]|0)>>>0){if((c[oa>>2]|0)>>>0<=(c[ma>>2]|0)>>>0?(xo(c[m>>2]|0,c[o>>2]|0,(c[p>>2]|0)-1|0)|0)<0:0)break;ep(c[m>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[oa>>2]=c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2];c[q>>2]=1}while(0);c[la>>2]=(c[l>>2]|0)+(c[n>>2]|0)-(c[p>>2]|0)-1;while(1){if((c[la>>2]|0)<0)break;if((c[la>>2]|0)>=(c[l>>2]|0)){c[m>>2]=(c[m>>2]|0)+-4;c[ra>>2]=c[(c[m>>2]|0)+(c[p>>2]<<2)>>2]}else{c[ra>>2]=c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2];c[ta>>2]=(c[p>>2]|0)-1-1;while(1){if((c[ta>>2]|0)<0)break;c[(c[m>>2]|0)+4+(c[ta>>2]<<2)>>2]=c[(c[m>>2]|0)+(c[ta>>2]<<2)>>2];c[ta>>2]=(c[ta>>2]|0)+-1}c[c[m>>2]>>2]=0}a:do if((c[oa>>2]|0)==(c[ma>>2]|0))c[pa>>2]=-1;else{c[va>>2]=(c[ma>>2]|0)>>>16;c[wa>>2]=c[ma>>2]&65535;c[za>>2]=((c[oa>>2]|0)>>>0)%((c[va>>2]|0)>>>0)|0;c[xa>>2]=((c[oa>>2]|0)>>>0)/((c[va>>2]|0)>>>0)|0;c[Ba>>2]=R(c[xa>>2]|0,c[wa>>2]|0)|0;c[za>>2]=c[za>>2]<<16|(c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2]|0)>>>16;if(((c[za>>2]|0)>>>0<(c[Ba>>2]|0)>>>0?(c[xa>>2]=(c[xa>>2]|0)+-1,c[za>>2]=(c[za>>2]|0)+(c[ma>>2]|0),(c[za>>2]|0)>>>0>=(c[ma>>2]|0)>>>0):0)?(c[za>>2]|0)>>>0<(c[Ba>>2]|0)>>>0:0){c[xa>>2]=(c[xa>>2]|0)+-1;c[za>>2]=(c[za>>2]|0)+(c[ma>>2]|0)}c[za>>2]=(c[za>>2]|0)-(c[Ba>>2]|0);c[Aa>>2]=((c[za>>2]|0)>>>0)%((c[va>>2]|0)>>>0)|0;c[ya>>2]=((c[za>>2]|0)>>>0)/((c[va>>2]|0)>>>0)|0;c[Ba>>2]=R(c[ya>>2]|0,c[wa>>2]|0)|0;c[Aa>>2]=c[Aa>>2]<<16|c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2]&65535;if(((c[Aa>>2]|0)>>>0<(c[Ba>>2]|0)>>>0?(c[ya>>2]=(c[ya>>2]|0)+-1,c[Aa>>2]=(c[Aa>>2]|0)+(c[ma>>2]|0),(c[Aa>>2]|0)>>>0>=(c[ma>>2]|0)>>>0):0)?(c[Aa>>2]|0)>>>0<(c[Ba>>2]|0)>>>0:0){c[ya>>2]=(c[ya>>2]|0)+-1;c[Aa>>2]=(c[Aa>>2]|0)+(c[ma>>2]|0)}c[Aa>>2]=(c[Aa>>2]|0)-(c[Ba>>2]|0);c[pa>>2]=c[xa>>2]<<16|c[ya>>2];c[ua>>2]=c[Aa>>2];c[Ka>>2]=c[na>>2];c[La>>2]=c[pa>>2];c[Ga>>2]=c[Ka>>2]&65535;c[Ia>>2]=(c[Ka>>2]|0)>>>16;c[Ha>>2]=c[La>>2]&65535;c[Ja>>2]=(c[La>>2]|0)>>>16;c[Ca>>2]=R(c[Ga>>2]|0,c[Ha>>2]|0)|0;c[Da>>2]=R(c[Ga>>2]|0,c[Ja>>2]|0)|0;c[Ea>>2]=R(c[Ia>>2]|0,c[Ha>>2]|0)|0;c[Fa>>2]=R(c[Ia>>2]|0,c[Ja>>2]|0)|0;c[Da>>2]=(c[Da>>2]|0)+((c[Ca>>2]|0)>>>16);c[Da>>2]=(c[Da>>2]|0)+(c[Ea>>2]|0);if((c[Da>>2]|0)>>>0<(c[Ea>>2]|0)>>>0)c[Fa>>2]=(c[Fa>>2]|0)+65536;c[qa>>2]=(c[Fa>>2]|0)+((c[Da>>2]|0)>>>16);c[oa>>2]=((c[Da>>2]&65535)<<16)+(c[Ca>>2]&65535);while(1){if((c[qa>>2]|0)>>>0<=(c[ua>>2]|0)>>>0){if((c[qa>>2]|0)!=(c[ua>>2]|0))break a;if((c[oa>>2]|0)>>>0<=(c[(c[m>>2]|0)+((c[p>>2]|0)-2<<2)>>2]|0)>>>0)break a}c[pa>>2]=(c[pa>>2]|0)+-1;c[ua>>2]=(c[ua>>2]|0)+(c[ma>>2]|0);if((c[ua>>2]|0)>>>0<(c[ma>>2]|0)>>>0)break a;c[qa>>2]=(c[qa>>2]|0)-((c[oa>>2]|0)>>>0<(c[na>>2]|0)>>>0&1);c[oa>>2]=(c[oa>>2]|0)-(c[na>>2]|0)}}while(0);c[sa>>2]=Zo(c[m>>2]|0,c[o>>2]|0,c[p>>2]|0,c[pa>>2]|0)|0;if((c[ra>>2]|0)!=(c[sa>>2]|0)){To(c[m>>2]|0,c[m>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;c[pa>>2]=(c[pa>>2]|0)+-1}c[(c[k>>2]|0)+(c[la>>2]<<2)>>2]=c[pa>>2];c[oa>>2]=c[(c[m>>2]|0)+((c[p>>2]|0)-1<<2)>>2];c[la>>2]=(c[la>>2]|0)+-1}Ma=c[q>>2]|0;i=h;return Ma|0}}return 0}function Wo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;g=i;i=i+144|0;if((i|0)>=(j|0))U();h=g+128|0;k=g+124|0;l=g+120|0;m=g+116|0;n=g+112|0;o=g+108|0;p=g+104|0;q=g+100|0;r=g+96|0;s=g+92|0;t=g+88|0;u=g+84|0;v=g+80|0;w=g+76|0;x=g+72|0;y=g+68|0;z=g+64|0;A=g+60|0;B=g+56|0;C=g+52|0;D=g+48|0;E=g+44|0;F=g+40|0;G=g+36|0;H=g+32|0;I=g+28|0;J=g+24|0;K=g+20|0;L=g+16|0;M=g+12|0;N=g+8|0;O=g+4|0;P=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;if(!(c[m>>2]|0)){c[h>>2]=0;Q=c[h>>2]|0;i=g;return Q|0}c[t>>2]=c[n>>2];f=c[t>>2]|0;c[u>>2]=(c[t>>2]|0)>>>0<65536?(f>>>0<256?0:8):f>>>0<16777216?16:24;c[s>>2]=32-((d[45623+((c[t>>2]|0)>>>(c[u>>2]|0))>>0]|0)+(c[u>>2]|0));if(!(c[s>>2]|0)){c[o>>2]=(c[m>>2]|0)-1;c[r>>2]=c[(c[l>>2]|0)+(c[o>>2]<<2)>>2];if((c[r>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[r>>2]=0;else{u=c[o>>2]|0;c[o>>2]=u+-1;c[(c[k>>2]|0)+(u<<2)>>2]=0}while(1){if((c[o>>2]|0)<0)break;c[q>>2]=c[(c[l>>2]|0)+(c[o>>2]<<2)>>2];c[J>>2]=(c[n>>2]|0)>>>16;c[K>>2]=c[n>>2]&65535;c[N>>2]=((c[r>>2]|0)>>>0)%((c[J>>2]|0)>>>0)|0;c[L>>2]=((c[r>>2]|0)>>>0)/((c[J>>2]|0)>>>0)|0;c[P>>2]=R(c[L>>2]|0,c[K>>2]|0)|0;c[N>>2]=c[N>>2]<<16|(c[q>>2]|0)>>>16;if(((c[N>>2]|0)>>>0<(c[P>>2]|0)>>>0?(c[L>>2]=(c[L>>2]|0)+-1,c[N>>2]=(c[N>>2]|0)+(c[n>>2]|0),(c[N>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[N>>2]|0)>>>0<(c[P>>2]|0)>>>0:0){c[L>>2]=(c[L>>2]|0)+-1;c[N>>2]=(c[N>>2]|0)+(c[n>>2]|0)}c[N>>2]=(c[N>>2]|0)-(c[P>>2]|0);c[O>>2]=((c[N>>2]|0)>>>0)%((c[J>>2]|0)>>>0)|0;c[M>>2]=((c[N>>2]|0)>>>0)/((c[J>>2]|0)>>>0)|0;c[P>>2]=R(c[M>>2]|0,c[K>>2]|0)|0;c[O>>2]=c[O>>2]<<16|c[q>>2]&65535;if(((c[O>>2]|0)>>>0<(c[P>>2]|0)>>>0?(c[M>>2]=(c[M>>2]|0)+-1,c[O>>2]=(c[O>>2]|0)+(c[n>>2]|0),(c[O>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[O>>2]|0)>>>0<(c[P>>2]|0)>>>0:0){c[M>>2]=(c[M>>2]|0)+-1;c[O>>2]=(c[O>>2]|0)+(c[n>>2]|0)}c[O>>2]=(c[O>>2]|0)-(c[P>>2]|0);c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]=c[L>>2]<<16|c[M>>2];c[r>>2]=c[O>>2];c[o>>2]=(c[o>>2]|0)+-1}c[h>>2]=c[r>>2];Q=c[h>>2]|0;i=g;return Q|0}c[n>>2]=c[n>>2]<<c[s>>2];c[p>>2]=c[(c[l>>2]|0)+((c[m>>2]|0)-1<<2)>>2];c[r>>2]=(c[p>>2]|0)>>>(32-(c[s>>2]|0)|0);c[o>>2]=(c[m>>2]|0)-2;while(1){if((c[o>>2]|0)<0)break;c[q>>2]=c[(c[l>>2]|0)+(c[o>>2]<<2)>>2];c[v>>2]=(c[n>>2]|0)>>>16;c[w>>2]=c[n>>2]&65535;c[z>>2]=((c[r>>2]|0)>>>0)%((c[v>>2]|0)>>>0)|0;c[x>>2]=((c[r>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0;c[B>>2]=R(c[x>>2]|0,c[w>>2]|0)|0;c[z>>2]=c[z>>2]<<16|(c[p>>2]<<c[s>>2]|(c[q>>2]|0)>>>(32-(c[s>>2]|0)|0))>>>16;if(((c[z>>2]|0)>>>0<(c[B>>2]|0)>>>0?(c[x>>2]=(c[x>>2]|0)+-1,c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0),(c[z>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[z>>2]|0)>>>0<(c[B>>2]|0)>>>0:0){c[x>>2]=(c[x>>2]|0)+-1;c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0)}c[z>>2]=(c[z>>2]|0)-(c[B>>2]|0);c[A>>2]=((c[z>>2]|0)>>>0)%((c[v>>2]|0)>>>0)|0;c[y>>2]=((c[z>>2]|0)>>>0)/((c[v>>2]|0)>>>0)|0;c[B>>2]=R(c[y>>2]|0,c[w>>2]|0)|0;c[A>>2]=c[A>>2]<<16|(c[p>>2]<<c[s>>2]|(c[q>>2]|0)>>>(32-(c[s>>2]|0)|0))&65535;if(((c[A>>2]|0)>>>0<(c[B>>2]|0)>>>0?(c[y>>2]=(c[y>>2]|0)+-1,c[A>>2]=(c[A>>2]|0)+(c[n>>2]|0),(c[A>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[A>>2]|0)>>>0<(c[B>>2]|0)>>>0:0){c[y>>2]=(c[y>>2]|0)+-1;c[A>>2]=(c[A>>2]|0)+(c[n>>2]|0)}c[A>>2]=(c[A>>2]|0)-(c[B>>2]|0);c[(c[k>>2]|0)+((c[o>>2]|0)+1<<2)>>2]=c[x>>2]<<16|c[y>>2];c[r>>2]=c[A>>2];c[p>>2]=c[q>>2];c[o>>2]=(c[o>>2]|0)+-1}c[C>>2]=(c[n>>2]|0)>>>16;c[D>>2]=c[n>>2]&65535;c[G>>2]=((c[r>>2]|0)>>>0)%((c[C>>2]|0)>>>0)|0;c[E>>2]=((c[r>>2]|0)>>>0)/((c[C>>2]|0)>>>0)|0;c[I>>2]=R(c[E>>2]|0,c[D>>2]|0)|0;c[G>>2]=c[G>>2]<<16|c[p>>2]<<c[s>>2]>>>16;if(((c[G>>2]|0)>>>0<(c[I>>2]|0)>>>0?(c[E>>2]=(c[E>>2]|0)+-1,c[G>>2]=(c[G>>2]|0)+(c[n>>2]|0),(c[G>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[G>>2]|0)>>>0<(c[I>>2]|0)>>>0:0){c[E>>2]=(c[E>>2]|0)+-1;c[G>>2]=(c[G>>2]|0)+(c[n>>2]|0)}c[G>>2]=(c[G>>2]|0)-(c[I>>2]|0);c[H>>2]=((c[G>>2]|0)>>>0)%((c[C>>2]|0)>>>0)|0;c[F>>2]=((c[G>>2]|0)>>>0)/((c[C>>2]|0)>>>0)|0;c[I>>2]=R(c[F>>2]|0,c[D>>2]|0)|0;c[H>>2]=c[H>>2]<<16|c[p>>2]<<c[s>>2]&65535;if(((c[H>>2]|0)>>>0<(c[I>>2]|0)>>>0?(c[F>>2]=(c[F>>2]|0)+-1,c[H>>2]=(c[H>>2]|0)+(c[n>>2]|0),(c[H>>2]|0)>>>0>=(c[n>>2]|0)>>>0):0)?(c[H>>2]|0)>>>0<(c[I>>2]|0)>>>0:0){c[F>>2]=(c[F>>2]|0)+-1;c[H>>2]=(c[H>>2]|0)+(c[n>>2]|0)}c[H>>2]=(c[H>>2]|0)-(c[I>>2]|0);c[c[k>>2]>>2]=c[E>>2]<<16|c[F>>2];c[r>>2]=c[H>>2];c[h>>2]=(c[r>>2]|0)>>>(c[s>>2]|0);Q=c[h>>2]|0;i=g;return Q|0}function Xo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+36|0;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[o>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+4;c[p>>2]=32-(c[o>>2]|0);c[q>>2]=(c[k>>2]|0)-1;c[n>>2]=c[(c[h>>2]|0)+(c[q>>2]<<2)>>2];c[r>>2]=(c[n>>2]|0)>>>(c[p>>2]|0);c[m>>2]=c[n>>2];while(1){k=(c[q>>2]|0)+-1|0;c[q>>2]=k;if((k|0)<0)break;c[n>>2]=c[(c[h>>2]|0)+(c[q>>2]<<2)>>2];c[(c[g>>2]|0)+(c[q>>2]<<2)>>2]=c[m>>2]<<c[o>>2]|(c[n>>2]|0)>>>(c[p>>2]|0);c[m>>2]=c[n>>2]}c[(c[g>>2]|0)+(c[q>>2]<<2)>>2]=c[m>>2]<<c[o>>2];i=f;return c[r>>2]|0}function Yo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f+68|0;h=f+64|0;k=f+60|0;l=f+56|0;m=f+52|0;n=f+48|0;o=f+44|0;p=f+40|0;q=f+36|0;r=f+32|0;s=f+28|0;t=f+24|0;u=f+20|0;v=f+16|0;w=f+12|0;x=f+8|0;y=f+4|0;z=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0-(c[k>>2]|0);c[h>>2]=(c[h>>2]|0)+(0-(c[n>>2]|0)<<2);c[g>>2]=(c[g>>2]|0)+(0-(c[n>>2]|0)<<2);c[m>>2]=0;do{c[y>>2]=c[(c[h>>2]|0)+(c[n>>2]<<2)>>2];c[z>>2]=c[l>>2];c[u>>2]=c[y>>2]&65535;c[w>>2]=(c[y>>2]|0)>>>16;c[v>>2]=c[z>>2]&65535;c[x>>2]=(c[z>>2]|0)>>>16;c[q>>2]=R(c[u>>2]|0,c[v>>2]|0)|0;c[r>>2]=R(c[u>>2]|0,c[x>>2]|0)|0;c[s>>2]=R(c[w>>2]|0,c[v>>2]|0)|0;c[t>>2]=R(c[w>>2]|0,c[x>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+((c[q>>2]|0)>>>16);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);if((c[r>>2]|0)>>>0<(c[s>>2]|0)>>>0)c[t>>2]=(c[t>>2]|0)+65536;c[o>>2]=(c[t>>2]|0)+((c[r>>2]|0)>>>16);c[p>>2]=((c[r>>2]&65535)<<16)+(c[q>>2]&65535);c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0);c[m>>2]=((c[p>>2]|0)>>>0<(c[m>>2]|0)>>>0?1:0)+(c[o>>2]|0);c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2];k=(c[n>>2]|0)+1|0;c[n>>2]=k}while((k|0)!=0);i=f;return c[m>>2]|0}function Zo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f+72|0;h=f+68|0;k=f+64|0;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;p=f+44|0;q=f+40|0;r=f+36|0;s=f+32|0;t=f+28|0;u=f+24|0;v=f+20|0;w=f+16|0;x=f+12|0;y=f+8|0;z=f+4|0;A=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0-(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(0-(c[n>>2]|0)<<2);c[h>>2]=(c[h>>2]|0)+(0-(c[n>>2]|0)<<2);c[m>>2]=0;do{c[z>>2]=c[(c[h>>2]|0)+(c[n>>2]<<2)>>2];c[A>>2]=c[l>>2];c[v>>2]=c[z>>2]&65535;c[x>>2]=(c[z>>2]|0)>>>16;c[w>>2]=c[A>>2]&65535;c[y>>2]=(c[A>>2]|0)>>>16;c[r>>2]=R(c[v>>2]|0,c[w>>2]|0)|0;c[s>>2]=R(c[v>>2]|0,c[y>>2]|0)|0;c[t>>2]=R(c[x>>2]|0,c[w>>2]|0)|0;c[u>>2]=R(c[x>>2]|0,c[y>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+((c[r>>2]|0)>>>16);c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);if((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0)c[u>>2]=(c[u>>2]|0)+65536;c[o>>2]=(c[u>>2]|0)+((c[s>>2]|0)>>>16);c[p>>2]=((c[s>>2]&65535)<<16)+(c[r>>2]&65535);c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0);c[m>>2]=((c[p>>2]|0)>>>0<(c[m>>2]|0)>>>0?1:0)+(c[o>>2]|0);c[q>>2]=c[(c[g>>2]|0)+(c[n>>2]<<2)>>2];c[p>>2]=(c[q>>2]|0)-(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+((c[p>>2]|0)>>>0>(c[q>>2]|0)>>>0?1:0);c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2];k=(c[n>>2]|0)+1|0;c[n>>2]=k}while((k|0)!=0);i=f;return c[m>>2]|0}function _o(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+32|0;h=f+28|0;k=f+24|0;l=f+20|0;m=f+16|0;n=f+12|0;o=f+8|0;p=f+4|0;q=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[o>>2]=c[c[k>>2]>>2];if((c[o>>2]|0)>>>0<=1){a:do if((c[o>>2]|0)==1){c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[l>>2]|0))break a;c[(c[g>>2]|0)+(c[p>>2]<<2)>>2]=c[(c[h>>2]|0)+(c[p>>2]<<2)>>2];c[p>>2]=(c[p>>2]|0)+1}}else{c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[l>>2]|0))break a;c[(c[g>>2]|0)+(c[q>>2]<<2)>>2]=0;c[q>>2]=(c[q>>2]|0)+1}}while(0);c[n>>2]=0}else c[n>>2]=Yo(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0,c[o>>2]|0)|0;c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]=c[n>>2];c[g>>2]=(c[g>>2]|0)+4;c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c[l>>2]|0))break;c[o>>2]=c[(c[k>>2]|0)+(c[m>>2]<<2)>>2];if((c[o>>2]|0)>>>0<=1){c[n>>2]=0;if((c[o>>2]|0)==1)c[n>>2]=To(c[g>>2]|0,c[g>>2]|0,c[h>>2]|0,c[l>>2]|0)|0}else c[n>>2]=dt(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0,c[o>>2]|0)|0;c[(c[g>>2]|0)+(c[l>>2]<<2)>>2]=c[n>>2];c[g>>2]=(c[g>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+1}i=f;return c[n>>2]|0}function $o(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+44|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+12|0;s=g+8|0;t=g+4|0;u=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=c[m>>2]|0;if(c[m>>2]&1|0){c[o>>2]=f-1;e=c[h>>2]|0;d=c[k>>2]|0;b=c[l>>2]|0;a=c[o>>2]|0;if((c[o>>2]|0)<16)_o(e,d,b,a)|0;else $o(e,d,b,a,c[n>>2]|0);c[p>>2]=dt((c[h>>2]|0)+(c[o>>2]<<2)|0,c[k>>2]|0,c[o>>2]|0,c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)|0;c[(c[h>>2]|0)+((c[o>>2]|0)+(c[o>>2]|0)<<2)>>2]=c[p>>2];c[p>>2]=dt((c[h>>2]|0)+(c[o>>2]<<2)|0,c[l>>2]|0,c[m>>2]|0,c[(c[k>>2]|0)+(c[o>>2]<<2)>>2]|0)|0;c[(c[h>>2]|0)+((c[o>>2]|0)+(c[m>>2]|0)<<2)>>2]=c[p>>2];i=g;return}c[q>>2]=f>>1;f=(c[h>>2]|0)+(c[m>>2]<<2)|0;p=(c[k>>2]|0)+(c[q>>2]<<2)|0;o=(c[l>>2]|0)+(c[q>>2]<<2)|0;a=c[q>>2]|0;if((c[q>>2]|0)<16)_o(f,p,o,a)|0;else $o(f,p,o,a,c[n>>2]|0);a=(xo((c[k>>2]|0)+(c[q>>2]<<2)|0,c[k>>2]|0,c[q>>2]|0)|0)>=0;o=c[h>>2]|0;p=c[k>>2]|0;if(a){ep(o,p+(c[q>>2]<<2)|0,c[k>>2]|0,c[q>>2]|0)|0;c[s>>2]=0}else{ep(o,p,(c[k>>2]|0)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;c[s>>2]=1}p=(xo((c[l>>2]|0)+(c[q>>2]<<2)|0,c[l>>2]|0,c[q>>2]|0)|0)>=0;o=(c[h>>2]|0)+(c[q>>2]<<2)|0;a=c[l>>2]|0;if(p){ep(o,a+(c[q>>2]<<2)|0,c[l>>2]|0,c[q>>2]|0)|0;c[s>>2]=c[s>>2]^1}else ep(o,a,(c[l>>2]|0)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;a=c[n>>2]|0;o=c[h>>2]|0;p=(c[h>>2]|0)+(c[q>>2]<<2)|0;f=c[q>>2]|0;if((c[q>>2]|0)<16)_o(a,o,p,f)|0;else $o(a,o,p,f,(c[n>>2]|0)+(c[m>>2]<<2)|0);c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[q>>2]|0))break;c[(c[h>>2]|0)+(c[q>>2]<<2)+(c[t>>2]<<2)>>2]=c[(c[h>>2]|0)+(c[m>>2]<<2)+(c[t>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}c[r>>2]=To((c[h>>2]|0)+(c[m>>2]<<2)|0,(c[h>>2]|0)+(c[m>>2]<<2)|0,(c[h>>2]|0)+(c[m>>2]<<2)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;t=(c[h>>2]|0)+(c[q>>2]<<2)|0;f=(c[h>>2]|0)+(c[q>>2]<<2)|0;p=c[n>>2]|0;o=c[m>>2]|0;if(c[s>>2]|0){s=ep(t,f,p,o)|0;c[r>>2]=(c[r>>2]|0)-s}else{s=To(t,f,p,o)|0;c[r>>2]=(c[r>>2]|0)+s}s=c[n>>2]|0;o=c[k>>2]|0;k=c[l>>2]|0;l=c[q>>2]|0;if((c[q>>2]|0)<16)_o(s,o,k,l)|0;else $o(s,o,k,l,(c[n>>2]|0)+(c[m>>2]<<2)|0);l=To((c[h>>2]|0)+(c[q>>2]<<2)|0,(c[h>>2]|0)+(c[q>>2]<<2)|0,c[n>>2]|0,c[m>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+l;if(c[r>>2]|0)to((c[h>>2]|0)+(c[q>>2]<<2)+(c[m>>2]<<2)|0,(c[h>>2]|0)+(c[q>>2]<<2)+(c[m>>2]<<2)|0,c[q>>2]|0,c[r>>2]|0)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[q>>2]|0))break;c[(c[h>>2]|0)+(c[u>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[u>>2]<<2)>>2];c[u>>2]=(c[u>>2]|0)+1}c[r>>2]=To((c[h>>2]|0)+(c[q>>2]<<2)|0,(c[h>>2]|0)+(c[q>>2]<<2)|0,(c[n>>2]|0)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;if(!(c[r>>2]|0)){i=g;return}to((c[h>>2]|0)+(c[m>>2]<<2)|0,(c[h>>2]|0)+(c[m>>2]<<2)|0,c[m>>2]|0,1)|0;i=g;return}function ap(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+24|0;l=h+20|0;m=h+16|0;n=h+12|0;o=h+8|0;p=h+4|0;q=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;if(!(c[(c[p>>2]|0)+4>>2]|0?(c[(c[p>>2]|0)+12>>2]|0)>=(c[o>>2]|0):0)){if(c[(c[p>>2]|0)+4>>2]|0)lp(c[(c[p>>2]|0)+4>>2]|0,c[(c[p>>2]|0)+8>>2]|0);c[(c[p>>2]|0)+8>>2]=c[o>>2]<<1;g=c[o>>2]<<1;if(ff(c[l>>2]|0)|0)r=1;else r=(ff(c[n>>2]|0)|0)!=0;f=jp(g,r&1)|0;c[(c[p>>2]|0)+4>>2]=f;c[(c[p>>2]|0)+12>>2]=c[o>>2]}f=c[k>>2]|0;r=c[l>>2]|0;g=c[n>>2]|0;e=c[o>>2]|0;if((c[o>>2]|0)<16)_o(f,r,g,e)|0;else $o(f,r,g,e,c[(c[p>>2]|0)+4>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[o>>2]<<2);c[l>>2]=(c[l>>2]|0)+(c[o>>2]<<2);c[m>>2]=(c[m>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)>=(c[o>>2]|0)){if(!(c[(c[p>>2]|0)+16>>2]|0?(c[(c[p>>2]|0)+24>>2]|0)>=(c[o>>2]|0):0)){if(c[(c[p>>2]|0)+16>>2]|0)lp(c[(c[p>>2]|0)+16>>2]|0,c[(c[p>>2]|0)+20>>2]|0);c[(c[p>>2]|0)+20>>2]=c[o>>2]<<1;e=c[o>>2]<<1;if(ff(c[l>>2]|0)|0)s=1;else s=(ff(c[n>>2]|0)|0)!=0;g=jp(e,s&1)|0;c[(c[p>>2]|0)+16>>2]=g;c[(c[p>>2]|0)+24>>2]=c[o>>2]}do{g=c[(c[p>>2]|0)+16>>2]|0;s=c[l>>2]|0;e=c[n>>2]|0;r=c[o>>2]|0;if((c[o>>2]|0)<16)_o(g,s,e,r)|0;else $o(g,s,e,r,c[(c[p>>2]|0)+4>>2]|0);c[q>>2]=To(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[o>>2]|0)|0;to((c[k>>2]|0)+(c[o>>2]<<2)|0,(c[(c[p>>2]|0)+16>>2]|0)+(c[o>>2]<<2)|0,c[o>>2]|0,c[q>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]<<2);c[l>>2]=(c[l>>2]|0)+(c[o>>2]<<2);c[m>>2]=(c[m>>2]|0)-(c[o>>2]|0)}while((c[m>>2]|0)>=(c[o>>2]|0))}if(!(c[m>>2]|0)){i=h;return}r=c[p>>2]|0;if((c[m>>2]|0)<16)bp(c[r+4>>2]|0,c[n>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;else{if(!(c[r>>2]|0)){r=pf(1,28)|0;c[c[p>>2]>>2]=r}ap(c[(c[p>>2]|0)+4>>2]|0,c[n>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0,c[c[p>>2]>>2]|0)}c[q>>2]=To(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[o>>2]|0)|0;to((c[k>>2]|0)+(c[o>>2]<<2)|0,(c[(c[p>>2]|0)+4>>2]|0)+(c[o>>2]<<2)|0,c[m>>2]|0,c[q>>2]|0)|0;i=h;return}function bp(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,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;g=i;i=i+80|0;if((i|0)>=(j|0))U();h=g+72|0;k=g+68|0;l=g+64|0;m=g+60|0;n=g+56|0;o=g+52|0;p=g+48|0;q=g+44|0;r=g+16|0;s=g+12|0;t=g+8|0;u=g+4|0;v=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=(c[k>>2]|0)+(c[m>>2]<<2)+(c[o>>2]<<2)+-4;if((c[o>>2]|0)>=16){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;ap(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,r);cp(r);c[h>>2]=c[c[p>>2]>>2];w=c[h>>2]|0;i=g;return w|0}if(!(c[o>>2]|0)){c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}c[t>>2]=c[c[n>>2]>>2];if((c[t>>2]|0)>>>0<=1){a:do if((c[t>>2]|0)==1){c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[m>>2]|0))break a;c[(c[k>>2]|0)+(c[u>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[u>>2]<<2)>>2];c[u>>2]=(c[u>>2]|0)+1}}else{c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[m>>2]|0))break a;c[(c[k>>2]|0)+(c[v>>2]<<2)>>2]=0;c[v>>2]=(c[v>>2]|0)+1}}while(0);c[q>>2]=0}else c[q>>2]=Yo(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]=c[q>>2];c[k>>2]=(c[k>>2]|0)+4;c[s>>2]=1;while(1){if((c[s>>2]|0)>=(c[o>>2]|0))break;c[t>>2]=c[(c[n>>2]|0)+(c[s>>2]<<2)>>2];if((c[t>>2]|0)>>>0<=1){c[q>>2]=0;if((c[t>>2]|0)==1)c[q>>2]=To(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else c[q>>2]=dt(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[t>>2]|0)|0;c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]=c[q>>2];c[k>>2]=(c[k>>2]|0)+4;c[s>>2]=(c[s>>2]|0)+1}c[h>>2]=c[q>>2];w=c[h>>2]|0;i=g;return w|0}function cp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;if(c[(c[d>>2]|0)+16>>2]|0)lp(c[(c[d>>2]|0)+16>>2]|0,c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+4>>2]|0)lp(c[(c[d>>2]|0)+4>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[d>>2]=c[c[d>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[e>>2]=c[c[d>>2]>>2];if(c[(c[d>>2]|0)+16>>2]|0)lp(c[(c[d>>2]|0)+16>>2]|0,c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+4>>2]|0)lp(c[(c[d>>2]|0)+4>>2]|0,c[(c[d>>2]|0)+8>>2]|0);hf(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function dp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+36|0;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[o>>2]=c[l>>2];c[g>>2]=(c[g>>2]|0)+-4;c[p>>2]=32-(c[o>>2]|0);c[m>>2]=c[c[h>>2]>>2];c[r>>2]=c[m>>2]<<c[p>>2];c[n>>2]=c[m>>2];c[q>>2]=1;while(1){if((c[q>>2]|0)>=(c[k>>2]|0))break;c[m>>2]=c[(c[h>>2]|0)+(c[q>>2]<<2)>>2];c[(c[g>>2]|0)+(c[q>>2]<<2)>>2]=(c[n>>2]|0)>>>(c[o>>2]|0)|c[m>>2]<<c[p>>2];c[n>>2]=c[m>>2];c[q>>2]=(c[q>>2]|0)+1}c[(c[g>>2]|0)+(c[q>>2]<<2)>>2]=(c[n>>2]|0)>>>(c[o>>2]|0);i=f;return c[r>>2]|0}function ep(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[p>>2]=0-(c[l>>2]|0);c[h>>2]=(c[h>>2]|0)+(0-(c[p>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[p>>2]|0)<<2);c[g>>2]=(c[g>>2]|0)+(0-(c[p>>2]|0)<<2);c[o>>2]=0;do{c[n>>2]=c[(c[k>>2]|0)+(c[p>>2]<<2)>>2];c[m>>2]=c[(c[h>>2]|0)+(c[p>>2]<<2)>>2];c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[o>>2]=(c[n>>2]|0)>>>0<(c[o>>2]|0)>>>0&1;c[n>>2]=(c[m>>2]|0)-(c[n>>2]|0);c[o>>2]=(c[o>>2]|0)+((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0&1);c[(c[g>>2]|0)+(c[p>>2]<<2)>>2]=c[n>>2];l=(c[p>>2]|0)+1|0;c[p>>2]=l}while((l|0)!=0);i=f;return c[o>>2]|0}function fp(){return 45973}function gp(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+8|0;e=a+4|0;c[d>>2]=0;a:while(1){if((c[d>>2]|0)>=6){f=12;break}switch(c[d>>2]|0){case 0:{c[e>>2]=0;break}case 1:{c[e>>2]=1;break}case 2:{c[e>>2]=2;break}case 3:{c[e>>2]=3;break}case 4:{c[e>>2]=4;break}case 5:{c[e>>2]=8;break}default:{f=10;break a}}g=hp(c[e>>2]|0)|0;c[70672+(c[d>>2]<<2)>>2]=g;c[(c[70672+(c[d>>2]<<2)>>2]|0)+12>>2]=48;c[d>>2]=(c[d>>2]|0)+1}if((f|0)==10){c[b>>2]=c[d>>2];Ke(46117,b)}else if((f|0)==12){i=a;return 0}return 0}function hp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=ip(1)|0;c[c[(c[e>>2]|0)+16>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2]|0?1:0;c[(c[e>>2]|0)+8>>2]=0;i=b;return c[e>>2]|0}function ip(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=mf(20)|0;if(c[d>>2]|0)f=jp(c[d>>2]|0,0)|0;else f=0;c[(c[e>>2]|0)+16>>2]=f;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=b;return c[e>>2]|0}function jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=(c[e>>2]|0?c[e>>2]|0:1)<<2;b=c[h>>2]|0;if(c[f>>2]|0)k=of(b)|0;else k=mf(b)|0;c[g>>2]=k;if(c[e>>2]|0){l=c[g>>2]|0;i=d;return l|0}c[c[g>>2]>>2]=0;l=c[g>>2]|0;i=d;return l|0}function kp(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=mf(20)|0;if(c[d>>2]|0)f=jp(c[d>>2]|0,1)|0;else f=0;c[(c[e>>2]|0)+16>>2]=f;c[c[e>>2]>>2]=c[d>>2];c[(c[e>>2]|0)+12>>2]=1;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;i=b;return c[e>>2]|0}function lp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+32|0;o=f;p=f+8|0;c[g>>2]=b;c[h>>2]=e;if(!(c[g>>2]|0)){i=f;return}c[k>>2]=c[h>>2]<<2;a:do if(c[k>>2]|0){c[l>>2]=c[g>>2];c[m>>2]=c[k>>2];a[n>>0]=0;h=o;c[h>>2]=d[n>>0];c[h+4>>2]=0;while(1){if(!(c[l>>2]&7|0?(c[m>>2]|0)!=0:0))break;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}if((c[m>>2]|0)>>>0>=8){h=o;e=Xw(c[h>>2]|0,c[h+4>>2]|0,16843009,16843009)|0;h=o;c[h>>2]=e;c[h+4>>2]=C;do{c[p>>2]=c[l>>2];h=o;e=c[h+4>>2]|0;b=c[p>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=e;c[m>>2]=(c[m>>2]|0)-8;c[l>>2]=(c[l>>2]|0)+8}while((c[m>>2]|0)>>>0>=8)}while(1){if(!(c[m>>2]|0))break a;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}}while(0);hf(c[g>>2]|0);i=f;return}function mp(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;lp(c[(c[f>>2]|0)+16>>2]|0,c[c[f>>2]>>2]|0);c[(c[f>>2]|0)+16>>2]=c[g>>2];c[c[f>>2]>>2]=c[h>>2];i=e;return}function np(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((c[f>>2]|0)>>>0<=(c[c[e>>2]>>2]|0)>>>0){c[g>>2]=c[b+4>>2];while(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}i=d;return}a=c[e>>2]|0;a:do if(!(c[b+16>>2]|0)){h=c[f>>2]|0;if(c[a+12>>2]&1|0){k=qf(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}else{k=pf(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}}else{k=nf(c[a+16>>2]|0,c[f>>2]<<2)|0;c[(c[e>>2]|0)+16>>2]=k;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}}while(0);c[c[e>>2]>>2]=c[f>>2];i=d;return}function op(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&16|0:0){pp();i=b;return}c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function pp(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();Ge(46148,a);i=a;return}function qp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}if(c[(c[d>>2]|0)+12>>2]&32|0){i=b;return}a=c[(c[d>>2]|0)+16>>2]|0;if(c[(c[d>>2]|0)+12>>2]&4|0)hf(a);else lp(a,c[c[d>>2]>>2]|0);if(c[(c[d>>2]|0)+12>>2]&-3864|0)Ke(46192,b);hf(c[d>>2]|0);i=b;return}function rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(!(c[g>>2]|0))c[g>>2]=ip(0)|0;if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&16|0:0){pp();c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;return l|0}d=c[(c[g>>2]|0)+16>>2]|0;if(c[(c[g>>2]|0)+12>>2]&4|0)hf(d);else lp(d,c[c[g>>2]>>2]|0);c[(c[g>>2]|0)+16>>2]=c[h>>2];c[c[g>>2]>>2]=0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+8>>2]=c[k>>2];c[(c[g>>2]|0)+12>>2]=4|c[(c[g>>2]|0)+12>>2]&3840;if(ff(c[(c[g>>2]|0)+16>>2]|0)|0){k=(c[g>>2]|0)+12|0;c[k>>2]=c[k>>2]|1}c[f>>2]=c[g>>2];l=c[f>>2]|0;i=e;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,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[m>>2]=(((c[k>>2]|0)+7|0)>>>0)/8|0;d=(ff(c[h>>2]|0)|0)!=0;b=c[m>>2]|0;if(d)n=ef(b)|0;else n=bf(b)|0;c[l>>2]=n;if(c[l>>2]|0){Ow(c[l>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[f>>2]=rp(c[g>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;o=c[f>>2]|0;i=e;return o|0}else{c[f>>2]=0;o=c[f>>2]|0;i=e;return o|0}return 0}function tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;if(!(c[(c[e>>2]|0)+12>>2]&4))Ke(46224,d);if(c[f>>2]|0)c[c[f>>2]>>2]=c[(c[e>>2]|0)+8>>2];i=d;return c[(c[e>>2]|0)+16>>2]|0}function up(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=tp(c[f>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0&(c[g>>2]|0)!=0){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}c[l>>2]=(((c[c[g>>2]>>2]|0)+7|0)>>>0)/8|0;g=(ff(c[h>>2]|0)|0)!=0;f=c[l>>2]|0;if(g)n=ef(f)|0;else n=bf(f)|0;c[k>>2]=n;if(c[k>>2]|0)Ow(c[k>>2]|0,c[h>>2]|0,c[l>>2]|0)|0;c[e>>2]=c[k>>2];m=c[e>>2]|0;i=d;return m|0}function vp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&4|0:0){a=(ff(c[(c[d>>2]|0)+16>>2]|0)|0)!=0;h=((c[(c[d>>2]|0)+8>>2]|0)+7|0)/8|0;if(a)k=of(h)|0;else k=mf(h)|0;c[g>>2]=k;if(c[(c[d>>2]|0)+16>>2]|0)Ow(c[g>>2]|0,c[(c[d>>2]|0)+16>>2]|0,((c[(c[d>>2]|0)+8>>2]|0)+7|0)/8|0|0)|0;c[f>>2]=rp(0,c[g>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;g=(c[f>>2]|0)+12|0;c[g>>2]=c[g>>2]&-49;l=c[f>>2]|0;i=b;return l|0}if(!(c[d>>2]|0)){c[f>>2]=0;l=c[f>>2]|0;i=b;return l|0}if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&1|0:0)m=kp(c[(c[d>>2]|0)+4>>2]|0)|0;else m=ip(c[(c[d>>2]|0)+4>>2]|0)|0;c[f>>2]=m;c[(c[f>>2]|0)+4>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2];c[(c[f>>2]|0)+12>>2]=c[(c[d>>2]|0)+12>>2];m=(c[f>>2]|0)+12|0;c[m>>2]=c[m>>2]&-49;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[e>>2]<<2)>>2]=c[(c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]<<2)>>2];c[e>>2]=(c[e>>2]|0)+1}l=c[f>>2]|0;i=b;return l|0}function wp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;if((c[e>>2]|0)==(c[f>>2]|0)){if(b|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}}else xp(b,c[f>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=((c[(c[f>>2]|0)+8>>2]|0)!=0^1)&1;i=d;return}function xp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[f>>2]=a;c[g>>2]=b;c[l>>2]=c[(c[g>>2]|0)+4>>2];c[m>>2]=c[(c[g>>2]|0)+8>>2];if(!(c[f>>2]|0))c[f>>2]=ip(c[(c[g>>2]|0)+4>>2]|0)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){pp();c[e>>2]=c[f>>2];o=c[e>>2]|0;i=d;return o|0}if((c[c[f>>2]>>2]|0)<(c[l>>2]|0))np(c[f>>2]|0,c[l>>2]|0);c[h>>2]=c[(c[f>>2]|0)+16>>2];c[k>>2]=c[(c[g>>2]|0)+16>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)>=(c[l>>2]|0))break;c[(c[h>>2]|0)+(c[n>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];c[n>>2]=(c[n>>2]|0)+1}c[(c[f>>2]|0)+4>>2]=c[l>>2];c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];g=(c[f>>2]|0)+12|0;c[g>>2]=c[g>>2]&-49;c[(c[f>>2]|0)+8>>2]=c[m>>2];c[e>>2]=c[f>>2];o=c[e>>2]|0;i=d;return o|0}function yp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&4|0:0){c[f>>2]=((c[(c[d>>2]|0)+8>>2]|0)+7|0)/8|0;a=(ff(c[(c[d>>2]|0)+16>>2]|0)|0)!=0;h=c[f>>2]|0;if(a)k=ef(h)|0;else k=bf(h)|0;c[g>>2]=k;Ow(c[g>>2]|0,c[(c[d>>2]|0)+16>>2]|0,c[f>>2]|0)|0;c[e>>2]=rp(0,c[g>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;l=c[e>>2]|0;i=b;return l|0}if(!(c[d>>2]|0)){c[e>>2]=0;l=c[e>>2]|0;i=b;return l|0}if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&1|0:0)m=kp(c[(c[d>>2]|0)+4>>2]|0)|0;else m=ip(c[(c[d>>2]|0)+4>>2]|0)|0;c[e>>2]=m;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=c[(c[d>>2]|0)+12>>2];l=c[e>>2]|0;i=b;return l|0}function zp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0){if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}mp(c[e>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[c[f>>2]>>2]|0);c[(c[e>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];c[(c[e>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];c[(c[e>>2]|0)+12>>2]=c[(c[f>>2]|0)+12>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+16>>2]=0}qp(c[f>>2]|0);i=d;return}function Ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=c[c[g>>2]>>2];c[m>>2]=0-(((c[h>>2]|0)!=0^1^1)&1);if((c[c[f>>2]>>2]|0)!=(c[c[g>>2]>>2]|0))Ke(46254,e);c[k>>2]=0;while(1){o=c[m>>2]|0;if((c[k>>2]|0)>=(c[l>>2]|0))break;c[n>>2]=o&(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]^c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]);c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]^c[n>>2];c[k>>2]=(c[k>>2]|0)+1}c[n>>2]=o&(c[(c[f>>2]|0)+4>>2]^c[(c[g>>2]|0)+4>>2]);c[(c[f>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2]^c[n>>2];c[n>>2]=c[m>>2]&(c[(c[f>>2]|0)+8>>2]^c[(c[g>>2]|0)+8>>2]);c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]^c[n>>2];i=e;return c[f>>2]|0}function Bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if(!(c[f>>2]|0))c[f>>2]=ip(1)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){pp();c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}if((c[c[f>>2]>>2]|0)<1)np(c[f>>2]|0,1);c[c[(c[f>>2]|0)+16>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2]|0?1:0;c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}function Cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+24|0;f=d+20|0;g=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[g+16>>2]=c[b+16>>2];b=c[e>>2]|0;e=c[f>>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];e=c[f>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];c[e+16>>2]=c[g+16>>2];i=d;return}function Dp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=c[c[f>>2]>>2];c[m>>2]=0-(((c[h>>2]|0)!=0^1^1)&1);if((c[c[f>>2]>>2]|0)!=(c[c[g>>2]>>2]|0))Ke(46285,e);c[k>>2]=0;while(1){o=c[m>>2]|0;if((c[k>>2]|0)>=(c[l>>2]|0))break;c[n>>2]=o&(c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]^c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]);c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]^c[n>>2];c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]<<2)>>2]^c[n>>2];c[k>>2]=(c[k>>2]|0)+1}c[n>>2]=o&(c[(c[f>>2]|0)+4>>2]^c[(c[g>>2]|0)+4>>2]);c[(c[f>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2]^c[n>>2];c[(c[g>>2]|0)+4>>2]=c[(c[g>>2]|0)+4>>2]^c[n>>2];c[n>>2]=c[m>>2]&(c[(c[f>>2]|0)+8>>2]^c[(c[g>>2]|0)+8>>2]);c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]^c[n>>2];c[(c[g>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2]^c[n>>2];i=e;return}function Ep(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ip((((c[d>>2]|0)+32-1|0)>>>0)/32|0)|0;i=b;return a|0}function Fp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=kp((((c[d>>2]|0)+32-1|0)>>>0)/32|0)|0;i=b;return a|0}function Gp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;qp(c[d>>2]|0);i=b;return}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=(((c[g>>2]|0)+7|0)>>>0)/8|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){pp();i=e;return}g=(c[f>>2]|0)!=0;if(!(c[h>>2]|0)){if(g?c[(c[f>>2]|0)+12>>2]&1|0:0)m=of(c[l>>2]|0)|0;else m=mf(c[l>>2]|0)|0;c[k>>2]=m;$m(c[k>>2]|0,c[l>>2]|0)}else{if(g?c[(c[f>>2]|0)+12>>2]&1|0:0)n=Wm(c[l>>2]|0,c[h>>2]|0)|0;else n=Um(c[l>>2]|0,c[h>>2]|0)|0;c[k>>2]=n}Lo(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0,0);hf(c[k>>2]|0);i=e;return}function Ip(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;c[f>>2]=a;c[g>>2]=b;switch(c[g>>2]|0){case 1:{c[e>>2]=((c[(c[f>>2]|0)+12>>2]&1|0)!=0^1^1)&1;h=c[e>>2]|0;i=d;return h|0}case 2:{c[e>>2]=((c[(c[f>>2]|0)+12>>2]&4|0)!=0^1^1)&1;h=c[e>>2]|0;i=d;return h|0}case 4:{c[e>>2]=((c[(c[f>>2]|0)+12>>2]&16|0)!=0^1^1)&1;h=c[e>>2]|0;i=d;return h|0}case 8:{c[e>>2]=((c[(c[f>>2]|0)+12>>2]&32|0)!=0^1^1)&1;h=c[e>>2]|0;i=d;return h|0}case 2048:case 1024:case 512:case 256:{c[e>>2]=((c[(c[f>>2]|0)+12>>2]&c[g>>2]|0)!=0^1^1)&1;h=c[e>>2]|0;i=d;return h|0}default:Ke(46317,d)}return 0}function Jp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;e=b+12|0;c[e>>2]=a;a=c[e>>2]|0;if((c[e>>2]|0)<0|(c[e>>2]|0)>>>0>6){c[d>>2]=a;Ke(46117,d)}if(c[70672+(a<<2)>>2]|0){i=b;return c[70672+(c[e>>2]<<2)>>2]|0}else Ke(46337,b+8|0);return 0}function Kp(){return 46368}function Lp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+96|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+32|0;o=f+8|0;p=f+4|0;q=f;c[h>>2]=b;c[k>>2]=e;c[l>>2]=yw(172)|0;if(!(c[l>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=f;return r|0}c[c[l>>2]>>2]=1779033703;c[(c[l>>2]|0)+4>>2]=-1150833019;c[(c[l>>2]|0)+8>>2]=1013904242;c[(c[l>>2]|0)+12>>2]=-1521486534;c[(c[l>>2]|0)+16>>2]=1359893119;c[(c[l>>2]|0)+20>>2]=-1694144372;c[(c[l>>2]|0)+24>>2]=528734635;c[(c[l>>2]|0)+28>>2]=1541459225;c[(c[l>>2]|0)+32>>2]=0;c[(c[l>>2]|0)+36>>2]=0;e=(c[l>>2]|0)+40|0;a[e>>0]=a[e>>0]&-2;e=(c[l>>2]|0)+40|0;a[e>>0]=a[e>>0]&-3;a:do if(c[h>>2]|0){e=n;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));e=(c[l>>2]|0)+105|0;b=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));do if((c[k>>2]|0)>>>0<=64){Ow(n|0,c[h>>2]|0,c[k>>2]|0)|0;Ow((c[l>>2]|0)+105|0,c[h>>2]|0,c[k>>2]|0)|0}else{c[o>>2]=Lp(0,0)|0;if(c[o>>2]|0){Mp(c[o>>2]|0,c[h>>2]|0,c[k>>2]|0);Pp(c[o>>2]|0);e=n;s=(c[o>>2]|0)+41|0;b=e+32|0;do{a[e>>0]=a[s>>0]|0;e=e+1|0;s=s+1|0}while((e|0)<(b|0));e=(c[l>>2]|0)+105|0;s=(c[o>>2]|0)+41|0;b=e+32|0;do{a[e>>0]=a[s>>0]|0;e=e+1|0;s=s+1|0}while((e|0)<(b|0));Qp(c[o>>2]|0);break}zw(c[l>>2]|0);c[g>>2]=0;r=c[g>>2]|0;i=f;return r|0}while(0);c[m>>2]=0;while(1){if((c[m>>2]|0)>=64)break;e=n+(c[m>>2]|0)|0;a[e>>0]=(d[e>>0]|0)^54;e=(c[l>>2]|0)+105+(c[m>>2]|0)|0;a[e>>0]=(d[e>>0]|0)^92;c[m>>2]=(c[m>>2]|0)+1}e=(c[l>>2]|0)+40|0;a[e>>0]=a[e>>0]&-3|2;Mp(c[l>>2]|0,n,64);c[p>>2]=n;c[q>>2]=64;while(1){if(!(c[q>>2]|0))break a;a[c[p>>2]>>0]=0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}}while(0);c[g>>2]=c[l>>2];r=c[g>>2]|0;i=f;return r|0}function Mp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[h>>2];if((a[(c[g>>2]|0)+40>>0]<<7&255)<<24>>24>>7<<24>>24|0){i=f;return}if((c[(c[g>>2]|0)+36>>2]|0)==64){Np(c[g>>2]|0,(c[g>>2]|0)+41|0);c[(c[g>>2]|0)+36>>2]=0;h=(c[g>>2]|0)+32|0;c[h>>2]=(c[h>>2]|0)+1}if(!(c[l>>2]|0)){i=f;return}if(c[(c[g>>2]|0)+36>>2]|0){while(1){if(!(c[k>>2]|0))break;if((c[(c[g>>2]|0)+36>>2]|0)>=64)break;h=c[l>>2]|0;c[l>>2]=h+1;e=a[h>>0]|0;h=(c[g>>2]|0)+36|0;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[g>>2]|0)+41+d>>0]=e;c[k>>2]=(c[k>>2]|0)+-1}Mp(c[g>>2]|0,0,0);if(!(c[k>>2]|0)){i=f;return}}while(1){if((c[k>>2]|0)>>>0<64)break;Np(c[g>>2]|0,c[l>>2]|0);c[(c[g>>2]|0)+36>>2]=0;e=(c[g>>2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+1;c[k>>2]=(c[k>>2]|0)-64;c[l>>2]=(c[l>>2]|0)+64}while(1){if(!(c[k>>2]|0)){m=15;break}if((c[(c[g>>2]|0)+36>>2]|0)>=64){m=15;break}e=c[l>>2]|0;c[l>>2]=e+1;d=a[e>>0]|0;e=(c[g>>2]|0)+36|0;h=c[e>>2]|0;c[e>>2]=h+1;a[(c[g>>2]|0)+41+h>>0]=d;c[k>>2]=(c[k>>2]|0)+-1}if((m|0)==15){i=f;return}}function Np(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=i;i=i+384|0;if((i|0)>=(j|0))U();f=e+376|0;g=e+372|0;h=e+368|0;k=e+364|0;l=e+360|0;m=e+356|0;n=e+352|0;o=e+348|0;p=e+344|0;q=e+340|0;r=e+336|0;s=e+332|0;t=e+328|0;u=e+264|0;v=e+8|0;w=e+4|0;x=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[g>>2];c[k>>2]=c[c[f>>2]>>2];c[l>>2]=c[(c[f>>2]|0)+4>>2];c[m>>2]=c[(c[f>>2]|0)+8>>2];c[n>>2]=c[(c[f>>2]|0)+12>>2];c[o>>2]=c[(c[f>>2]|0)+16>>2];c[p>>2]=c[(c[f>>2]|0)+20>>2];c[q>>2]=c[(c[f>>2]|0)+24>>2];c[r>>2]=c[(c[f>>2]|0)+28>>2];c[w>>2]=0;c[x>>2]=u;while(1){if((c[w>>2]|0)>=16)break;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[x>>2]|0)+3>>0]=a[g>>0]|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[x>>2]|0)+2>>0]=a[g>>0]|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[x>>2]|0)+1>>0]=a[g>>0]|0;g=c[h>>2]|0;c[h>>2]=g+1;a[c[x>>2]>>0]=a[g>>0]|0;c[w>>2]=(c[w>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+4}c[w>>2]=0;while(1){if((c[w>>2]|0)>=16)break;c[v+(c[w>>2]<<2)>>2]=c[u+(c[w>>2]<<2)>>2];c[w>>2]=(c[w>>2]|0)+1}while(1){if((c[w>>2]|0)>=64)break;u=Op(c[v+((c[w>>2]|0)-2<<2)>>2]|0,17)|0;x=u^(Op(c[v+((c[w>>2]|0)-2<<2)>>2]|0,19)|0);u=(x^(c[v+((c[w>>2]|0)-2<<2)>>2]|0)>>>10)+(c[v+((c[w>>2]|0)-7<<2)>>2]|0)|0;x=Op(c[v+((c[w>>2]|0)-15<<2)>>2]|0,7)|0;h=x^(Op(c[v+((c[w>>2]|0)-15<<2)>>2]|0,18)|0);c[v+(c[w>>2]<<2)>>2]=u+(h^(c[v+((c[w>>2]|0)-15<<2)>>2]|0)>>>3)+(c[v+((c[w>>2]|0)-16<<2)>>2]|0);c[w>>2]=(c[w>>2]|0)+1}c[w>>2]=0;while(1){if((c[w>>2]|0)>=64)break;h=c[r>>2]|0;u=Op(c[o>>2]|0,6)|0;x=u^(Op(c[o>>2]|0,11)|0);u=h+(x^(Op(c[o>>2]|0,25)|0))|0;c[s>>2]=u+(c[q>>2]^c[o>>2]&(c[p>>2]^c[q>>2]))+(c[12572+(c[w>>2]<<2)>>2]|0)+(c[v+(c[w>>2]<<2)>>2]|0);u=Op(c[k>>2]|0,2)|0;x=u^(Op(c[k>>2]|0,13)|0);u=x^(Op(c[k>>2]|0,22)|0);c[t>>2]=u+(c[k>>2]&c[l>>2]|c[m>>2]&(c[k>>2]|c[l>>2]));c[r>>2]=c[q>>2];c[q>>2]=c[p>>2];c[p>>2]=c[o>>2];c[o>>2]=(c[n>>2]|0)+(c[s>>2]|0);c[n>>2]=c[m>>2];c[m>>2]=c[l>>2];c[l>>2]=c[k>>2];c[k>>2]=(c[s>>2]|0)+(c[t>>2]|0);c[w>>2]=(c[w>>2]|0)+1}w=c[f>>2]|0;c[w>>2]=(c[w>>2]|0)+(c[k>>2]|0);k=(c[f>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);l=(c[f>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(c[m>>2]|0);m=(c[f>>2]|0)+12|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);n=(c[f>>2]|0)+16|0;c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);o=(c[f>>2]|0)+20|0;c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);p=(c[f>>2]|0)+24|0;c[p>>2]=(c[p>>2]|0)+(c[q>>2]|0);q=(c[f>>2]|0)+28|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);i=e;return}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return (c[e>>2]|0)>>>(c[f>>2]|0)|c[e>>2]<<32-(c[f>>2]|0)|0}function Pp(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=b;if((a[(c[e>>2]|0)+40>>0]<<7&255)<<24>>24>>7<<24>>24|0){i=d;return}Mp(c[e>>2]|0,0,0);c[f>>2]=c[(c[e>>2]|0)+32>>2];c[h>>2]=c[f>>2]<<6;c[g>>2]=(c[f>>2]|0)>>>26;c[f>>2]=c[h>>2];b=(c[h>>2]|0)+(c[(c[e>>2]|0)+36>>2]|0)|0;c[h>>2]=b;if(b>>>0<(c[f>>2]|0)>>>0)c[g>>2]=(c[g>>2]|0)+1;c[f>>2]=c[h>>2];c[h>>2]=c[h>>2]<<3;c[g>>2]=c[g>>2]<<3;c[g>>2]=c[g>>2]|(c[f>>2]|0)>>>29;f=(c[(c[e>>2]|0)+36>>2]|0)<56;b=(c[e>>2]|0)+36|0;l=c[b>>2]|0;c[b>>2]=l+1;a[(c[e>>2]|0)+41+l>>0]=-128;a:do if(f)while(1){if((c[(c[e>>2]|0)+36>>2]|0)>=56)break a;l=(c[e>>2]|0)+36|0;b=c[l>>2]|0;c[l>>2]=b+1;a[(c[e>>2]|0)+41+b>>0]=0}else{while(1){m=c[e>>2]|0;if((c[(c[e>>2]|0)+36>>2]|0)>=64)break;b=m+36|0;l=c[b>>2]|0;c[b>>2]=l+1;a[(c[e>>2]|0)+41+l>>0]=0}Mp(m,0,0);l=(c[e>>2]|0)+41|0;b=l+56|0;do{a[l>>0]=0;l=l+1|0}while((l|0)<(b|0))}while(0);a[(c[e>>2]|0)+41+56>>0]=(c[g>>2]|0)>>>24;a[(c[e>>2]|0)+41+57>>0]=(c[g>>2]|0)>>>16;a[(c[e>>2]|0)+41+58>>0]=(c[g>>2]|0)>>>8;a[(c[e>>2]|0)+41+59>>0]=c[g>>2];a[(c[e>>2]|0)+41+60>>0]=(c[h>>2]|0)>>>24;a[(c[e>>2]|0)+41+61>>0]=(c[h>>2]|0)>>>16;a[(c[e>>2]|0)+41+62>>0]=(c[h>>2]|0)>>>8;a[(c[e>>2]|0)+41+63>>0]=c[h>>2];Np(c[e>>2]|0,(c[e>>2]|0)+41|0);c[k>>2]=(c[e>>2]|0)+41;h=(c[c[e>>2]>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[c[e>>2]>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[c[e>>2]>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[c[e>>2]>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+4>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+4>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+4>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+4>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+8>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+8>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+8>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+8>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+12>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+12>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+12>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+12>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+16>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+16>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+16>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+16>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+20>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+20>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+20>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+20>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+24>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+24>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+24>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+24>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+28>>2]|0)>>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+28>>2]|0)>>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[(c[e>>2]|0)+28>>2]|0)>>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=c[(c[e>>2]|0)+28>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[g>>0]=h;h=(c[e>>2]|0)+40|0;a[h>>0]=a[h>>0]&-2|1;i=d;return}function Qp(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=b;if(!(c[e>>2]|0)){i=d;return}a:do if((a[(c[e>>2]|0)+40>>0]<<6&255)<<24>>24>>7<<24>>24|0){c[f>>2]=(c[e>>2]|0)+105;c[g>>2]=64;while(1){if(!(c[g>>2]|0))break a;a[c[f>>2]>>0]=0;c[f>>2]=(c[f>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+-1}}while(0);zw(c[e>>2]|0);i=d;return}function Rp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;Pp(c[g>>2]|0);do if((a[(c[g>>2]|0)+40>>0]<<6&255)<<24>>24>>7<<24>>24|0){c[k>>2]=Lp(0,0)|0;if(c[k>>2]|0){Mp(c[k>>2]|0,(c[g>>2]|0)+105|0,64);Mp(c[k>>2]|0,(c[g>>2]|0)+41|0,32);Pp(c[k>>2]|0);d=(c[g>>2]|0)+41|0;b=(c[k>>2]|0)+41|0;l=d+32|0;do{a[d>>0]=a[b>>0]|0;d=d+1|0;b=b+1|0}while((d|0)<(l|0));Qp(c[k>>2]|0);break}zw(c[g>>2]|0);c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}while(0);if(c[h>>2]|0)c[c[h>>2]>>2]=32;c[f>>2]=(c[g>>2]|0)+41;m=c[f>>2]|0;i=e;return m|0}function Sp(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+20|0;v=k+16|0;w=k+12|0;x=k+8|0;y=k+64|0;z=k+4|0;A=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[l>>2]=139;B=c[l>>2]|0;i=k;return B|0}if((c[o>>2]|0)>>>0<((c[q>>2]|0)+8|0)>>>0){c[l>>2]=200;B=c[l>>2]|0;i=k;return B|0}if(((c[q>>2]|0)>>>0)%8|0|0){c[l>>2]=45;B=c[l>>2]|0;i=k;return B|0}c[t>>2]=((c[q>>2]|0)>>>0)/8|0;if((c[t>>2]|0)>>>0<2){c[l>>2]=45;B=c[l>>2]|0;i=k;return B|0}c[z>>2]=0;c[v>>2]=c[n>>2];c[w>>2]=c[n>>2];c[x>>2]=(c[m>>2]|0)+80;n=c[w>>2]|0;if((d[(c[m>>2]|0)+56>>0]|0)>>>1&1|0){o=(c[m>>2]|0)+64|0;a[n>>0]=a[o>>0]|0;a[n+1>>0]=a[o+1>>0]|0;a[n+2>>0]=a[o+2>>0]|0;a[n+3>>0]=a[o+3>>0]|0;a[n+4>>0]=a[o+4>>0]|0;a[n+5>>0]=a[o+5>>0]|0;a[n+6>>0]=a[o+6>>0]|0;a[n+7>>0]=a[o+7>>0]|0}else{a[n>>0]=166;a[n+1>>0]=166;a[n+2>>0]=166;a[n+3>>0]=166;a[n+4>>0]=166;a[n+5>>0]=166;a[n+6>>0]=166;a[n+7>>0]=166}Qw((c[v>>2]|0)+8|0,c[p>>2]|0,c[q>>2]|0)|0;a[y>>0]=0;a[y+1>>0]=0;a[y+2>>0]=0;a[y+3>>0]=0;a[y+4>>0]=0;a[y+5>>0]=0;a[y+6>>0]=0;a[y+7>>0]=0;c[r>>2]=0;while(1){if((c[r>>2]|0)>5)break;c[u>>2]=1;while(1){if((c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0)break;q=c[x>>2]|0;p=c[w>>2]|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;a[q+4>>0]=a[p+4>>0]|0;a[q+5>>0]=a[p+5>>0]|0;a[q+6>>0]=a[p+6>>0]|0;a[q+7>>0]=a[p+7>>0]|0;p=(c[x>>2]|0)+8|0;q=(c[v>>2]|0)+(c[u>>2]<<3)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;a[p+2>>0]=a[q+2>>0]|0;a[p+3>>0]=a[q+3>>0]|0;a[p+4>>0]=a[q+4>>0]|0;a[p+5>>0]=a[q+5>>0]|0;a[p+6>>0]=a[q+6>>0]|0;a[p+7>>0]=a[q+7>>0]|0;c[A>>2]=sb[c[(c[(c[m>>2]|0)+12>>2]|0)+36>>2]&63]((c[m>>2]|0)+496|0,c[x>>2]|0,c[x>>2]|0)|0;c[z>>2]=(c[A>>2]|0)>>>0>(c[z>>2]|0)>>>0?c[A>>2]|0:c[z>>2]|0;c[s>>2]=7;while(1){if((c[s>>2]|0)<0)break;q=y+(c[s>>2]|0)|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;if(a[y+(c[s>>2]|0)>>0]|0)break;c[s>>2]=(c[s>>2]|0)+-1}Tp(c[w>>2]|0,c[x>>2]|0,y,8);q=(c[v>>2]|0)+(c[u>>2]<<3)|0;p=(c[x>>2]|0)+8|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;a[q+4>>0]=a[p+4>>0]|0;a[q+5>>0]=a[p+5>>0]|0;a[q+6>>0]=a[p+6>>0]|0;a[q+7>>0]=a[p+7>>0]|0;c[u>>2]=(c[u>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+1}if((c[z>>2]|0)>>>0>0){Qe((c[z>>2]|0)+16|0);Re()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Tp(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Up(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+20|0;v=k+16|0;w=k+12|0;x=k+8|0;y=k+64|0;z=k+4|0;A=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[l>>2]=139;B=c[l>>2]|0;i=k;return B|0}if(((c[o>>2]|0)+8|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;B=c[l>>2]|0;i=k;return B|0}if(((c[q>>2]|0)>>>0)%8|0|0){c[l>>2]=45;B=c[l>>2]|0;i=k;return B|0}c[t>>2]=((c[q>>2]|0)>>>0)/8|0;if((c[t>>2]|0)>>>0<3){c[l>>2]=45;B=c[l>>2]|0;i=k;return B|0}c[z>>2]=0;c[v>>2]=c[n>>2];c[w>>2]=(c[m>>2]|0)+96;c[x>>2]=(c[m>>2]|0)+80;n=c[w>>2]|0;o=c[p>>2]|0;a[n>>0]=a[o>>0]|0;a[n+1>>0]=a[o+1>>0]|0;a[n+2>>0]=a[o+2>>0]|0;a[n+3>>0]=a[o+3>>0]|0;a[n+4>>0]=a[o+4>>0]|0;a[n+5>>0]=a[o+5>>0]|0;a[n+6>>0]=a[o+6>>0]|0;a[n+7>>0]=a[o+7>>0]|0;Qw(c[v>>2]|0,(c[p>>2]|0)+8|0,(c[q>>2]|0)-8|0)|0;c[t>>2]=(c[t>>2]|0)+-1;c[u>>2]=(c[t>>2]|0)*6;c[s>>2]=0;while(1){if(!((c[s>>2]|0)<8?(c[s>>2]|0)>>>0<4:0))break;a[y+(7-(c[s>>2]|0))>>0]=(c[u>>2]|0)>>>(c[s>>2]<<3);c[s>>2]=(c[s>>2]|0)+1}while(1){if((c[s>>2]|0)>=8)break;a[y+(7-(c[s>>2]|0))>>0]=0;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=5;while(1){if((c[r>>2]|0)<0)break;c[u>>2]=c[t>>2];while(1){if((c[u>>2]|0)>>>0<1)break;Tp(c[x>>2]|0,c[w>>2]|0,y,8);q=(c[x>>2]|0)+8|0;p=(c[v>>2]|0)+((c[u>>2]|0)-1<<3)|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;a[q+4>>0]=a[p+4>>0]|0;a[q+5>>0]=a[p+5>>0]|0;a[q+6>>0]=a[p+6>>0]|0;a[q+7>>0]=a[p+7>>0]|0;c[A>>2]=sb[c[(c[(c[m>>2]|0)+12>>2]|0)+40>>2]&63]((c[m>>2]|0)+496|0,c[x>>2]|0,c[x>>2]|0)|0;c[z>>2]=(c[A>>2]|0)>>>0>(c[z>>2]|0)>>>0?c[A>>2]|0:c[z>>2]|0;c[s>>2]=7;while(1){if((c[s>>2]|0)<0)break;p=y+(c[s>>2]|0)|0;a[p>>0]=(a[p>>0]|0)+-1<<24>>24;if((d[y+(c[s>>2]|0)>>0]|0|0)!=255)break;c[s>>2]=(c[s>>2]|0)+-1}p=c[w>>2]|0;q=c[x>>2]|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;a[p+2>>0]=a[q+2>>0]|0;a[p+3>>0]=a[q+3>>0]|0;a[p+4>>0]=a[q+4>>0]|0;a[p+5>>0]=a[q+5>>0]|0;a[p+6>>0]=a[q+6>>0]|0;a[p+7>>0]=a[q+7>>0]|0;q=(c[v>>2]|0)+((c[u>>2]|0)-1<<3)|0;p=(c[x>>2]|0)+8|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;a[q+4>>0]=a[p+4>>0]|0;a[q+5>>0]=a[p+5>>0]|0;a[q+6>>0]=a[p+6>>0]|0;a[q+7>>0]=a[p+7>>0]|0;c[u>>2]=(c[u>>2]|0)+-1}c[r>>2]=(c[r>>2]|0)+-1}a:do if((d[(c[m>>2]|0)+56>>0]|0)>>>1&1|0)c[r>>2]=vv(c[w>>2]|0,(c[m>>2]|0)+64|0,8)|0;else{c[r>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=8)break a;if((d[(c[w>>2]|0)+(c[s>>2]|0)>>0]|0|0)!=166)break;c[s>>2]=(c[s>>2]|0)+1}c[r>>2]=1}while(0);if((c[z>>2]|0)>>>0>0){Qe((c[z>>2]|0)+16|0);Re()}c[l>>2]=c[r>>2]|0?10:0;B=c[l>>2]|0;i=k;return B|0}function Vp(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+20|0;v=k+16|0;w=k+12|0;x=k+8|0;y=k+4|0;z=k;A=k+60|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[u>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2];c[v>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+36>>2];c[w>>2]=((c[q>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;if((c[o>>2]|0)>>>0<(c[(c[m>>2]|0)+52>>2]&8|0?c[u>>2]|0:c[q>>2]|0)>>>0){c[l>>2]=200;B=c[l>>2]|0;i=k;return B|0}do if(((c[q>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0|0){if((c[q>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[(c[m>>2]|0)+52>>2]&4|0:0)break;c[l>>2]=139;B=c[l>>2]|0;i=k;return B|0}while(0);c[x>>2]=0;if((c[(c[m>>2]|0)+52>>2]&4|0?(c[q>>2]|0)>>>0>(c[u>>2]|0)>>>0:0)?(((c[q>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0|0)==0:0)c[w>>2]=(c[w>>2]|0)+-1;o=c[m>>2]|0;if(c[(c[m>>2]|0)+20+8>>2]|0){Ab[c[o+20+8>>2]&1]((c[m>>2]|0)+496|0,(c[m>>2]|0)+64|0,c[n>>2]|0,c[p>>2]|0,c[w>>2]|0,c[(c[m>>2]|0)+52>>2]&8);h=R(c[w>>2]|0,c[u>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+h;if(!(c[(c[m>>2]|0)+52>>2]&8)){h=R(c[w>>2]|0,c[u>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+h}}else{c[s>>2]=o+64;c[r>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;Wp(c[n>>2]|0,c[p>>2]|0,c[s>>2]|0,c[u>>2]|0);c[y>>2]=sb[c[v>>2]&63]((c[m>>2]|0)+496|0,c[n>>2]|0,c[n>>2]|0)|0;c[x>>2]=(c[y>>2]|0)>>>0>(c[x>>2]|0)>>>0?c[y>>2]|0:c[x>>2]|0;c[s>>2]=c[n>>2];c[p>>2]=(c[p>>2]|0)+(c[u>>2]|0);if(!(c[(c[m>>2]|0)+52>>2]&8))c[n>>2]=(c[n>>2]|0)+(c[u>>2]|0);c[r>>2]=(c[r>>2]|0)+1}if((c[s>>2]|0)!=((c[m>>2]|0)+64|0))Xp((c[m>>2]|0)+64|0,c[s>>2]|0,c[u>>2]|0)}if(c[(c[m>>2]|0)+52>>2]&4|0?(c[q>>2]|0)>>>0>(c[u>>2]|0)>>>0:0){if(!(((c[q>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0))c[z>>2]=c[u>>2];else c[z>>2]=((c[q>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0;c[n>>2]=(c[n>>2]|0)+(0-(c[u>>2]|0));c[s>>2]=(c[m>>2]|0)+64;c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>=(c[z>>2]|0)>>>0)break;a[A>>0]=a[(c[p>>2]|0)+(c[t>>2]|0)>>0]|0;a[(c[n>>2]|0)+((c[u>>2]|0)+(c[t>>2]|0))>>0]=a[(c[n>>2]|0)+(c[t>>2]|0)>>0]|0;q=d[A>>0]|0;r=c[s>>2]|0;c[s>>2]=r+1;a[(c[n>>2]|0)+(c[t>>2]|0)>>0]=q^(d[r>>0]|0);c[t>>2]=(c[t>>2]|0)+1}while(1){if((c[t>>2]|0)>>>0>=(c[u>>2]|0)>>>0)break;A=c[s>>2]|0;c[s>>2]=A+1;a[(c[n>>2]|0)+(c[t>>2]|0)>>0]=0^(d[A>>0]|0);c[t>>2]=(c[t>>2]|0)+1}c[y>>2]=sb[c[v>>2]&63]((c[m>>2]|0)+496|0,c[n>>2]|0,c[n>>2]|0)|0;c[x>>2]=(c[y>>2]|0)>>>0>(c[x>>2]|0)>>>0?c[y>>2]|0:c[x>>2]|0;Xp((c[m>>2]|0)+64|0,c[n>>2]|0,c[u>>2]|0)}if((c[x>>2]|0)>>>0>0){Qe((c[x>>2]|0)+16|0);Re()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Wp(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Xp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function Yp(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+64|0;if((i|0)>=(j|0))U();k=h+52|0;l=h+48|0;m=h+44|0;n=h+40|0;o=h+36|0;p=h+32|0;q=h+28|0;r=h+24|0;s=h+20|0;t=h+16|0;u=h+12|0;v=h+8|0;w=h+4|0;x=h;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[s>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+20>>2];c[t>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+40>>2];c[u>>2]=((c[p>>2]|0)>>>0)/((c[s>>2]|0)>>>0)|0;if((c[n>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[k>>2]=200;y=c[k>>2]|0;i=h;return y|0}do if(((c[p>>2]|0)>>>0)%((c[s>>2]|0)>>>0)|0|0){if((c[p>>2]|0)>>>0>(c[s>>2]|0)>>>0?c[(c[l>>2]|0)+52>>2]&4|0:0)break;c[k>>2]=139;y=c[k>>2]|0;i=h;return y|0}while(0);c[v>>2]=0;if(c[(c[l>>2]|0)+52>>2]&4|0?(c[p>>2]|0)>>>0>(c[s>>2]|0)>>>0:0){c[u>>2]=(c[u>>2]|0)+-1;if(!(((c[p>>2]|0)>>>0)%((c[s>>2]|0)>>>0)|0))c[u>>2]=(c[u>>2]|0)+-1;Xp((c[l>>2]|0)+96|0,(c[l>>2]|0)+64|0,c[s>>2]|0)}a:do if(c[(c[l>>2]|0)+20+12>>2]|0){tb[c[(c[l>>2]|0)+20+12>>2]&15]((c[l>>2]|0)+496|0,(c[l>>2]|0)+64|0,c[m>>2]|0,c[o>>2]|0,c[u>>2]|0);n=R(c[u>>2]|0,c[s>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+n;n=R(c[u>>2]|0,c[s>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+n}else{c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[w>>2]=sb[c[t>>2]&63]((c[l>>2]|0)+496|0,(c[l>>2]|0)+96|0,c[o>>2]|0)|0;c[v>>2]=(c[w>>2]|0)>>>0>(c[v>>2]|0)>>>0?c[w>>2]|0:c[v>>2]|0;Zp(c[m>>2]|0,(c[l>>2]|0)+96|0,(c[l>>2]|0)+64|0,c[o>>2]|0,c[s>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[s>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[s>>2]|0);c[q>>2]=(c[q>>2]|0)+1}}while(0);if(c[(c[l>>2]|0)+52>>2]&4|0?(c[p>>2]|0)>>>0>(c[s>>2]|0)>>>0:0){if(!(((c[p>>2]|0)>>>0)%((c[s>>2]|0)>>>0)|0))c[x>>2]=c[s>>2];else c[x>>2]=((c[p>>2]|0)>>>0)%((c[s>>2]|0)>>>0)|0;Xp((c[l>>2]|0)+96|0,(c[l>>2]|0)+64|0,c[s>>2]|0);Xp((c[l>>2]|0)+64|0,(c[o>>2]|0)+(c[s>>2]|0)|0,c[x>>2]|0);c[w>>2]=sb[c[t>>2]&63]((c[l>>2]|0)+496|0,c[m>>2]|0,c[o>>2]|0)|0;c[v>>2]=(c[w>>2]|0)>>>0>(c[v>>2]|0)>>>0?c[w>>2]|0:c[v>>2]|0;Wp(c[m>>2]|0,c[m>>2]|0,(c[l>>2]|0)+64|0,c[x>>2]|0);Xp((c[m>>2]|0)+(c[s>>2]|0)|0,c[m>>2]|0,c[x>>2]|0);c[r>>2]=c[x>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;a[(c[l>>2]|0)+64+(c[r>>2]|0)>>0]=a[(c[m>>2]|0)+(c[r>>2]|0)>>0]|0;c[r>>2]=(c[r>>2]|0)+1}c[w>>2]=sb[c[t>>2]&63]((c[l>>2]|0)+496|0,c[m>>2]|0,(c[l>>2]|0)+64|0)|0;c[v>>2]=(c[w>>2]|0)>>>0>(c[v>>2]|0)>>>0?c[w>>2]|0:c[v>>2]|0;Wp(c[m>>2]|0,c[m>>2]|0,(c[l>>2]|0)+96|0,c[s>>2]|0)}if((c[v>>2]|0)>>>0>0){Qe((c[v>>2]|0)+16|0);Re()}c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function Zp(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+60|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+8|0;z=k+4|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[m>>2];c[t>>2]=c[o>>2];c[k>>2]=3;if(!((c[t>>2]|c[s>>2]|c[q>>2]|c[r>>2])&3)){c[v>>2]=c[q>>2];c[y>>2]=c[s>>2];c[w>>2]=c[r>>2];c[x>>2]=c[t>>2];while(1){if((c[p>>2]|0)>>>0<4)break;o=c[x>>2]|0;c[x>>2]=o+4;c[z>>2]=c[o>>2];o=c[c[w>>2]>>2]|0;m=c[y>>2]|0;c[y>>2]=m+4;n=o^c[m>>2];m=c[v>>2]|0;c[v>>2]=m+4;c[m>>2]=n;n=c[z>>2]|0;m=c[w>>2]|0;c[w>>2]=m+4;c[m>>2]=n;c[p>>2]=(c[p>>2]|0)-4}c[q>>2]=c[v>>2];c[s>>2]=c[y>>2];c[r>>2]=c[w>>2];c[t>>2]=c[x>>2]}while(1){if(!(c[p>>2]|0))break;x=c[t>>2]|0;c[t>>2]=x+1;a[u>>0]=a[x>>0]|0;x=d[c[r>>2]>>0]|0;w=c[s>>2]|0;c[s>>2]=w+1;y=(x^(d[w>>0]|0))&255;w=c[q>>2]|0;c[q>>2]=w+1;a[w>>0]=y;y=a[u>>0]|0;w=c[r>>2]|0;c[r>>2]=w+1;a[w>>0]=y;c[p>>2]=(c[p>>2]|0)+-1}i=k;return}function _p(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=15-(c[l>>2]|0);c[n>>2]=(c[m>>2]|0)-1;if(!(c[k>>2]|0)){c[g>>2]=45;o=c[g>>2]|0;i=f;return o|0}if((c[m>>2]|0)>>>0<2|(c[m>>2]|0)>>>0>8){c[g>>2]=139;o=c[g>>2]|0;i=f;return o|0}else{Sw((c[h>>2]|0)+128|0,0,368)|0;c[(c[h>>2]|0)+56>>2]=0;e=(c[h>>2]|0)+64|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=(c[h>>2]|0)+80|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=(c[h>>2]|0)+96|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[(c[h>>2]|0)+112>>2]=0;a[(c[h>>2]|0)+80>>0]=c[n>>2];Ow((c[h>>2]|0)+80+1|0,c[k>>2]|0,c[l>>2]|0)|0;Sw((c[h>>2]|0)+80+(1+(c[l>>2]|0))|0,0,c[m>>2]|0)|0;a[(c[h>>2]|0)+64>>0]=c[n>>2];Ow((c[h>>2]|0)+64+1|0,c[k>>2]|0,c[l>>2]|0)|0;Sw((c[h>>2]|0)+64+(1+(c[l>>2]|0))|0,0,c[m>>2]|0)|0;m=(c[h>>2]|0)+128+56|0;a[m>>0]=a[m>>0]&-2|1;c[g>>2]=0;o=c[g>>2]|0;i=f;return o|0}return 0}function $p(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+96|0;if((i|0)>=(j|0))U();k=h+64|0;l=h+60|0;m=h+56|0;n=h+52|0;o=h+48|0;p=h+40|0;q=h+72|0;r=h+36|0;s=h+32|0;t=h+28|0;u=h+24|0;v=h+20|0;w=h+16|0;x=h+68|0;y=h;z=h+12|0;A=h+8|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[h+44>>2]=16;c[p>>2]=c[(c[(c[l>>2]|0)+12>>2]|0)+36>>2];c[r>>2]=0;c[s>>2]=c[(c[l>>2]|0)+128+36>>2];if((c[n>>2]|0)==0?!((c[s>>2]|0)!=0&(c[o>>2]|0)!=0):0){c[k>>2]=0;B=c[k>>2]|0;i=h;return B|0}a:do{b:do if((c[s>>2]|0)>>>0>0?1:((c[n>>2]|0)+(c[s>>2]|0)|0)>>>0<16)while(1){if(!(c[n>>2]|0?(c[s>>2]|0)>>>0<16:0))break b;g=c[m>>2]|0;c[m>>2]=g+1;f=a[g>>0]|0;g=c[s>>2]|0;c[s>>2]=g+1;a[(c[l>>2]|0)+128+20+g>>0]=f;c[n>>2]=(c[n>>2]|0)+-1}while(0);c:do if(!(c[n>>2]|0)){if(!(c[o>>2]|0))break a;while(1){if((c[s>>2]|0)>>>0>=16)break c;f=c[s>>2]|0;c[s>>2]=f+1;a[(c[l>>2]|0)+128+20+f>>0]=0}}while(0);if((c[s>>2]|0)>>>0>0){aq((c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0,(c[l>>2]|0)+128+20|0,16);c[u>>2]=sb[c[p>>2]&63]((c[l>>2]|0)+496|0,(c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0)|0;c[r>>2]=(c[r>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[r>>2]|0:c[u>>2]|0;c[s>>2]=0}d:do if(c[(c[l>>2]|0)+20+8>>2]|0){c[t>>2]=((c[n>>2]|0)>>>0)/16|0;Ab[c[(c[l>>2]|0)+20+8>>2]&1]((c[l>>2]|0)+496|0,(c[l>>2]|0)+64|0,q,c[m>>2]|0,c[t>>2]|0,1);c[m>>2]=(c[m>>2]|0)+(c[t>>2]<<4);c[n>>2]=(c[n>>2]|0)-(c[t>>2]<<4);c[v>>2]=q;c[w>>2]=16;a[x>>0]=0;f=y;c[f>>2]=d[x>>0];c[f+4>>2]=0;while(1){if(!(c[v>>2]&7|0?(c[w>>2]|0)!=0:0))break;a[c[v>>2]>>0]=a[x>>0]|0;c[v>>2]=(c[v>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+-1}if((c[w>>2]|0)>>>0>=8){f=y;g=Xw(c[f>>2]|0,c[f+4>>2]|0,16843009,16843009)|0;f=y;c[f>>2]=g;c[f+4>>2]=C;do{c[z>>2]=c[v>>2];f=y;g=c[f+4>>2]|0;e=c[z>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=g;c[w>>2]=(c[w>>2]|0)-8;c[v>>2]=(c[v>>2]|0)+8}while((c[w>>2]|0)>>>0>=8)}while(1){if(!(c[w>>2]|0))break d;a[c[v>>2]>>0]=a[x>>0]|0;c[v>>2]=(c[v>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+-1}}else while(1){if((c[n>>2]|0)>>>0<16)break d;aq((c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0,c[m>>2]|0,16);c[A>>2]=sb[c[p>>2]&63]((c[l>>2]|0)+496|0,(c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0)|0;c[r>>2]=(c[r>>2]|0)>>>0>(c[A>>2]|0)>>>0?c[r>>2]|0:c[A>>2]|0;c[n>>2]=(c[n>>2]|0)-16;c[m>>2]=(c[m>>2]|0)+16}while(0)}while((c[n>>2]|0)>>>0>0);c[(c[l>>2]|0)+128+36>>2]=c[s>>2];if(c[r>>2]|0)c[r>>2]=(c[r>>2]|0)+16;c[k>>2]=c[r>>2];B=c[k>>2]|0;i=h;return B|0}function aq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function bq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+24|0;m=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;q=k+4|0;r=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;s=c[l>>2]|0;i=k;return s|0}if(((a[(c[m>>2]|0)+128+56>>0]&1|0?((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0)==0:0)?(d[(c[m>>2]|0)+128+56>>0]|0)>>>1&1|0:0)?(h=(c[m>>2]|0)+128+8|0,g=c[h+4>>2]|0,!(g>>>0>0|(g|0)==0&(c[h>>2]|0)>>>0>0)):0){h=(c[m>>2]|0)+128|0;g=c[h+4>>2]|0;if(0>g>>>0|(0==(g|0)?(c[q>>2]|0)>>>0>(c[h>>2]|0)>>>0:0)){c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}h=(c[m>>2]|0)+128|0;g=h;f=Fw(c[g>>2]|0,c[g+4>>2]|0,c[q>>2]|0,0)|0;g=h;c[g>>2]=f;c[g+4>>2]=C;c[r>>2]=$p(c[m>>2]|0,c[p>>2]|0,c[q>>2]|0,0)|0;if(c[r>>2]|0){Qe((c[r>>2]|0)+20|0);Re()}c[l>>2]=lq(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;s=c[l>>2]|0;i=k;return s|0}c[l>>2]=156;s=c[l>>2]|0;i=k;return s|0}function cq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;t=c[l>>2]|0;i=k;return t|0}if(((a[(c[m>>2]|0)+128+56>>0]&1|0?((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0)==0:0)?(d[(c[m>>2]|0)+128+56>>0]|0)>>>1&1|0:0)?(h=(c[m>>2]|0)+128+8|0,g=c[h+4>>2]|0,!(g>>>0>0|(g|0)==0&(c[h>>2]|0)>>>0>0)):0){h=(c[m>>2]|0)+128|0;g=c[h+4>>2]|0;if(0>g>>>0|(0==(g|0)?(c[q>>2]|0)>>>0>(c[h>>2]|0)>>>0:0)){c[l>>2]=139;t=c[l>>2]|0;i=k;return t|0}c[r>>2]=lq(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0){c[l>>2]=c[r>>2];t=c[l>>2]|0;i=k;return t|0}p=(c[m>>2]|0)+128|0;o=p;h=Fw(c[o>>2]|0,c[o+4>>2]|0,c[q>>2]|0,0)|0;o=p;c[o>>2]=h;c[o+4>>2]=C;c[s>>2]=$p(c[m>>2]|0,c[n>>2]|0,c[q>>2]|0,0)|0;if(c[s>>2]|0){Qe((c[s>>2]|0)+20|0);Re()}c[l>>2]=c[r>>2];t=c[l>>2]|0;i=k;return t|0}c[l>>2]=156;t=c[l>>2]|0;i=k;return t|0}function dq(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+8|0;u=g+4|0;v=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[q>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2];c[r>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2];c[s>>2]=(c[r>>2]|0)+(c[r>>2]|0);if((c[m>>2]|0)>>>0<(c[o>>2]|0)>>>0){c[h>>2]=200;w=c[h>>2]|0;i=g;return w|0}if((c[o>>2]|0)>>>0<=(c[(c[k>>2]|0)+112>>2]|0)>>>0){c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));eq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);m=(c[k>>2]|0)+112|0;c[m>>2]=(c[m>>2]|0)-(c[o>>2]|0);c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}c[t>>2]=0;if(c[(c[k>>2]|0)+112>>2]|0){c[o>>2]=(c[o>>2]|0)-(c[(c[k>>2]|0)+112>>2]|0);c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));eq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[(c[k>>2]|0)+112>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[(c[k>>2]|0)+112>>2]=0}if((c[o>>2]|0)>>>0>=(c[s>>2]|0)>>>0?c[(c[k>>2]|0)+20>>2]|0:0){c[v>>2]=((c[o>>2]|0)>>>0)/((c[r>>2]|0)>>>0)|0;tb[c[(c[k>>2]|0)+20>>2]&15]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,c[l>>2]|0,c[n>>2]|0,c[v>>2]|0);p=R(c[v>>2]|0,c[r>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+p;p=R(c[v>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+p;p=R(c[v>>2]|0,c[r>>2]|0)|0;c[o>>2]=(c[o>>2]|0)-p}else x=10;a:do if((x|0)==10)while(1){x=0;if((c[o>>2]|0)>>>0<(c[s>>2]|0)>>>0)break a;c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;eq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[r>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[r>>2]|0);x=10}while(0);if((c[o>>2]|0)>>>0>=(c[r>>2]|0)>>>0){fq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;eq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[r>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[r>>2]|0)}if(c[o>>2]|0){fq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;c[(c[k>>2]|0)+112>>2]=c[r>>2];r=(c[k>>2]|0)+112|0;c[r>>2]=(c[r>>2]|0)-(c[o>>2]|0);eq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[o>>2]=0}if((c[t>>2]|0)>>>0>0){Qe((c[t>>2]|0)+16|0);Re()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function eq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[q>>2]|c[o>>2]|c[p>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[t>>2]|0;c[t>>2]=m+4;l=c[m>>2]|0;m=c[s>>2]|0;c[s>>2]=m+4;k=c[m>>2]^l;c[m>>2]=k;m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[q>>2]|0;c[q>>2]=t+1;s=d[t>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;r=((d[t>>0]|0)^s)&255;a[t>>0]=r;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function fq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function gq(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+32|0;o=g+28|0;p=g+24|0;q=g+20|0;r=g+16|0;s=g+12|0;t=g+8|0;u=g+4|0;v=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[q>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2];c[r>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2];c[s>>2]=(c[r>>2]|0)+(c[r>>2]|0);if((c[m>>2]|0)>>>0<(c[o>>2]|0)>>>0){c[h>>2]=200;w=c[h>>2]|0;i=g;return w|0}if((c[o>>2]|0)>>>0<=(c[(c[k>>2]|0)+112>>2]|0)>>>0){c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));hq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);m=(c[k>>2]|0)+112|0;c[m>>2]=(c[m>>2]|0)-(c[o>>2]|0);c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}c[t>>2]=0;if(c[(c[k>>2]|0)+112>>2]|0){c[o>>2]=(c[o>>2]|0)-(c[(c[k>>2]|0)+112>>2]|0);c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));hq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[(c[k>>2]|0)+112>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[(c[k>>2]|0)+112>>2]=0}if((c[o>>2]|0)>>>0>=(c[s>>2]|0)>>>0?c[(c[k>>2]|0)+20+4>>2]|0:0){c[v>>2]=((c[o>>2]|0)>>>0)/((c[r>>2]|0)>>>0)|0;tb[c[(c[k>>2]|0)+20+4>>2]&15]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,c[l>>2]|0,c[n>>2]|0,c[v>>2]|0);p=R(c[v>>2]|0,c[r>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+p;p=R(c[v>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+p;p=R(c[v>>2]|0,c[r>>2]|0)|0;c[o>>2]=(c[o>>2]|0)-p}else x=10;a:do if((x|0)==10)while(1){x=0;if((c[o>>2]|0)>>>0<(c[s>>2]|0)>>>0)break a;c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;hq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[r>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[r>>2]|0);x=10}while(0);if((c[o>>2]|0)>>>0>=(c[r>>2]|0)>>>0){fq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;hq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[r>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[r>>2]|0)}if(c[o>>2]|0){fq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[t>>2]=(c[u>>2]|0)>>>0>(c[t>>2]|0)>>>0?c[u>>2]|0:c[t>>2]|0;c[(c[k>>2]|0)+112>>2]=c[r>>2];r=(c[k>>2]|0)+112|0;c[r>>2]=(c[r>>2]|0)-(c[o>>2]|0);hq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[o>>2]=0}if((c[t>>2]|0)>>>0>0){Qe((c[t>>2]|0)+16|0);Re()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function hq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;iq(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function iq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+60|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+8|0;z=k+4|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[m>>2];c[t>>2]=c[o>>2];c[k>>2]=3;if(!((c[t>>2]|c[s>>2]|c[q>>2]|c[r>>2])&3)){c[v>>2]=c[q>>2];c[y>>2]=c[s>>2];c[w>>2]=c[r>>2];c[x>>2]=c[t>>2];while(1){if((c[p>>2]|0)>>>0<4)break;o=c[x>>2]|0;c[x>>2]=o+4;c[z>>2]=c[o>>2];o=c[c[w>>2]>>2]|0;m=c[y>>2]|0;c[y>>2]=m+4;n=o^c[m>>2];m=c[v>>2]|0;c[v>>2]=m+4;c[m>>2]=n;n=c[z>>2]|0;m=c[w>>2]|0;c[w>>2]=m+4;c[m>>2]=n;c[p>>2]=(c[p>>2]|0)-4}c[q>>2]=c[v>>2];c[s>>2]=c[y>>2];c[r>>2]=c[w>>2];c[t>>2]=c[x>>2]}while(1){if(!(c[p>>2]|0))break;x=c[t>>2]|0;c[t>>2]=x+1;a[u>>0]=a[x>>0]|0;x=d[c[r>>2]>>0]|0;w=c[s>>2]|0;c[s>>2]=w+1;y=(x^(d[w>>0]|0))&255;w=c[q>>2]|0;c[q>>2]=w+1;a[w>>0]=y;y=a[u>>0]|0;w=c[r>>2]|0;c[r>>2]=w+1;a[w>>0]=y;c[p>>2]=(c[p>>2]|0)+-1}i=k;return}function jq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;kq(c[d>>2]|0);i=b;return 0}function kq(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+56|0;g=e+52|0;h=e+64|0;k=e+63|0;l=e+62|0;m=e+61|0;n=e+48|0;o=e+44|0;p=e+40|0;q=e+24|0;r=e+16|0;s=e+12|0;t=e+60|0;u=e;v=e+8|0;c[f>>2]=b;c[g>>2]=c[(c[(c[f>>2]|0)+12>>2]|0)+20>>2];if(16<(c[g>>2]|0)>>>0)Ee(46596,113,46610);Sw(q|0,0,c[g>>2]|0)|0;c[n>>2]=sb[c[(c[(c[f>>2]|0)+12>>2]|0)+36>>2]&63]((c[f>>2]|0)+496|0,q,q)|0;a[h>>0]=(c[g>>2]|0)==16?135:27;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)break;a[k>>0]=0;c[o>>2]=(c[g>>2]|0)-1;while(1){if((c[o>>2]|0)<0)break;a[m>>0]=a[q+(c[o>>2]|0)>>0]|0;a[l>>0]=d[k>>0]|0|(d[m>>0]|0)<<1;a[k>>0]=(d[m>>0]|0)>>7;a[q+(c[o>>2]|0)>>0]=d[l>>0]|0;a[(c[f>>2]|0)+128+1+(c[p>>2]<<4)+(c[o>>2]|0)>>0]=a[q+(c[o>>2]|0)>>0]|0;c[o>>2]=(c[o>>2]|0)+-1}b=q+((c[g>>2]|0)-1)|0;a[b>>0]=(d[b>>0]|0)^(d[k>>0]|0|0?d[h>>0]|0:0);a[(c[f>>2]|0)+128+1+(c[p>>2]<<4)+((c[g>>2]|0)-1)>>0]=a[q+((c[g>>2]|0)-1)>>0]|0;c[p>>2]=(c[p>>2]|0)+1}c[r>>2]=q;c[s>>2]=16;a[t>>0]=0;q=u;c[q>>2]=d[t>>0];c[q+4>>2]=0;while(1){if(!(c[r>>2]&7|0?(c[s>>2]|0)!=0:0))break;a[c[r>>2]>>0]=a[t>>0]|0;c[r>>2]=(c[r>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+-1}if((c[s>>2]|0)>>>0>=8){q=u;p=Xw(c[q>>2]|0,c[q+4>>2]|0,16843009,16843009)|0;q=u;c[q>>2]=p;c[q+4>>2]=C;do{c[v>>2]=c[r>>2];q=u;p=c[q+4>>2]|0;g=c[v>>2]|0;c[g>>2]=c[q>>2];c[g+4>>2]=p;c[s>>2]=(c[s>>2]|0)-8;c[r>>2]=(c[r>>2]|0)+8}while((c[s>>2]|0)>>>0>=8)}while(1){if(!(c[s>>2]|0))break;a[c[r>>2]>>0]=a[t>>0]|0;c[r>>2]=(c[r>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+-1}if(!(c[n>>2]|0)){i=e;return}Qe((c[n>>2]|0)+16|0);Re();i=e;return}function lq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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,D=0,E=0,F=0,G=0;k=i;i=i+96|0;if((i|0)>=(j|0))U();l=k+68|0;m=k+64|0;n=k+60|0;o=k+56|0;p=k+52|0;q=k+48|0;r=k+44|0;s=k+40|0;t=k+36|0;u=k+32|0;v=k+28|0;w=k+24|0;x=k+20|0;y=k+80|0;z=k+16|0;A=k+12|0;B=k+72|0;D=k;E=k+8|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[t>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+36>>2];c[u>>2]=c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2];if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;F=c[l>>2]|0;i=k;return F|0}c[w>>2]=0;if(c[(c[m>>2]|0)+112>>2]|0){if((c[(c[m>>2]|0)+112>>2]|0)>>>0>=(c[u>>2]|0)>>>0)Fe(46632,46654,53,46667);c[s>>2]=(c[u>>2]|0)-(c[(c[m>>2]|0)+112>>2]|0);if((c[(c[m>>2]|0)+112>>2]|0)>>>0>(c[q>>2]|0)>>>0)G=c[q>>2]|0;else G=c[(c[m>>2]|0)+112>>2]|0;c[r>>2]=G;mq(c[n>>2]|0,c[p>>2]|0,(c[m>>2]|0)+96+(c[s>>2]|0)|0,c[r>>2]|0);G=(c[m>>2]|0)+112|0;c[G>>2]=(c[G>>2]|0)-(c[r>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[r>>2]|0)}c[v>>2]=((c[q>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;if(c[v>>2]|0?c[(c[m>>2]|0)+20+16>>2]|0:0){tb[c[(c[m>>2]|0)+20+16>>2]&15]((c[m>>2]|0)+496|0,(c[m>>2]|0)+80|0,c[n>>2]|0,c[p>>2]|0,c[v>>2]|0);G=R(c[v>>2]|0,c[u>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+G;G=R(c[v>>2]|0,c[u>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+G;G=R(c[v>>2]|0,c[u>>2]|0)|0;c[q>>2]=(c[q>>2]|0)-G}a:do if(c[q>>2]|0){do{c[x>>2]=sb[c[t>>2]&63]((c[m>>2]|0)+496|0,y,(c[m>>2]|0)+80|0)|0;c[w>>2]=(c[x>>2]|0)>>>0>(c[w>>2]|0)>>>0?c[x>>2]|0:c[w>>2]|0;c[s>>2]=c[u>>2];while(1){if((c[s>>2]|0)<=0)break;G=(c[m>>2]|0)+80+((c[s>>2]|0)-1)|0;a[G>>0]=(a[G>>0]|0)+1<<24>>24;if(d[(c[m>>2]|0)+80+((c[s>>2]|0)-1)>>0]|0|0)break;c[s>>2]=(c[s>>2]|0)+-1}c[r>>2]=(c[u>>2]|0)>>>0<(c[q>>2]|0)>>>0?c[u>>2]|0:c[q>>2]|0;mq(c[n>>2]|0,c[p>>2]|0,y,c[r>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[r>>2]|0)}while((c[q>>2]|0)!=0);c[(c[m>>2]|0)+112>>2]=(c[u>>2]|0)-(c[r>>2]|0);if(c[(c[m>>2]|0)+112>>2]|0)nq((c[m>>2]|0)+96+(c[r>>2]|0)|0,y+(c[r>>2]|0)|0,c[(c[m>>2]|0)+112>>2]|0);c[z>>2]=y;c[A>>2]=16;a[B>>0]=0;G=D;c[G>>2]=d[B>>0];c[G+4>>2]=0;while(1){if(!(c[z>>2]&7|0?(c[A>>2]|0)!=0:0))break;a[c[z>>2]>>0]=a[B>>0]|0;c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}if((c[A>>2]|0)>>>0>=8){G=D;v=Xw(c[G>>2]|0,c[G+4>>2]|0,16843009,16843009)|0;G=D;c[G>>2]=v;c[G+4>>2]=C;do{c[E>>2]=c[z>>2];G=D;v=c[G+4>>2]|0;o=c[E>>2]|0;c[o>>2]=c[G>>2];c[o+4>>2]=v;c[A>>2]=(c[A>>2]|0)-8;c[z>>2]=(c[z>>2]|0)+8}while((c[A>>2]|0)>>>0>=8)}while(1){if(!(c[A>>2]|0))break a;a[c[z>>2]>>0]=a[B>>0]|0;c[z>>2]=(c[z>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+-1}}while(0);if((c[w>>2]|0)>>>0>0){Qe((c[w>>2]|0)+16|0);Re()}c[l>>2]=0;F=c[l>>2]|0;i=k;return F|0}function mq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function nq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function oq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+24|0;m=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;q=k+4|0;r=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[l>>2]=12;s=c[l>>2]|0;i=k;return s|0}if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;s=c[l>>2]|0;i=k;return s|0}if((d[(c[m>>2]|0)+128+68>>0]|0)>>>2&1|0){c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}if(((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0)==0?(a[(c[m>>2]|0)+128+68>>0]&1|0)==0:0){if(!((d[(c[m>>2]|0)+56>>0]|0)>>>1&1))pq(c[m>>2]|0,76016,16)|0;if((d[(c[m>>2]|0)+128+68>>0]|0)>>>3&1|0){c[l>>2]=156;s=c[l>>2]|0;i=k;return s|0}if(!((d[(c[m>>2]|0)+128+68>>0]|0)>>>1&1)){tq(c[m>>2]|0,(c[m>>2]|0)+128|0,0,0,1);h=(c[m>>2]|0)+128+68|0;a[h>>0]=a[h>>0]&-3|2}rq((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(wq((c[m>>2]|0)+128+44|0)|0)!=0;g=c[m>>2]|0;if(!h){h=g+128+68|0;a[h>>0]=a[h>>0]&-5|4;c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}c[r>>2]=lq(g,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=k;return s|0}else{tq(c[m>>2]|0,(c[m>>2]|0)+128|0,c[n>>2]|0,c[q>>2]|0,0);c[l>>2]=0;s=c[l>>2]|0;i=k;return s|0}}c[l>>2]=156;s=c[l>>2]|0;i=k;return s|0}function pq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+8|0;h=f+4|0;k=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;e=(c[g>>2]|0)+56|0;a[e>>0]=a[e>>0]&-3;e=(c[g>>2]|0)+56|0;a[e>>0]=a[e>>0]&-5;e=(c[g>>2]|0)+128+68|0;a[e>>0]=a[e>>0]&-9;if(!(Jg()|0)){l=c[g>>2]|0;m=c[h>>2]|0;n=c[k>>2]|0;o=qq(l,m,n)|0;i=f;return o|0}e=(c[g>>2]|0)+128+68|0;a[e>>0]=a[e>>0]&-9|8;l=c[g>>2]|0;m=c[h>>2]|0;n=c[k>>2]|0;o=qq(l,m,n)|0;i=f;return o|0}function qq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+96|0;if((i|0)>=(j|0))U();h=g+76|0;k=g+72|0;l=g+68|0;m=g+64|0;n=g+56|0;o=g+40|0;p=g+36|0;q=g+32|0;r=g+81|0;s=g+8|0;t=g+28|0;u=g+24|0;v=g+20|0;w=g+80|0;x=g;y=g+16|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;f=(c[k>>2]|0)+128+36|0;c[f>>2]=0;c[f+4>>2]=0;f=(c[k>>2]|0)+128+44|0;c[f>>2]=0;c[f+4>>2]=0;f=(c[k>>2]|0)+128|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;f=(c[k>>2]|0)+128+68|0;a[f>>0]=a[f>>0]&-5;f=(c[k>>2]|0)+128+68|0;a[f>>0]=a[f>>0]&-2;f=(c[k>>2]|0)+128+68|0;a[f>>0]=a[f>>0]&-3;if(!(c[m>>2]|0)){c[h>>2]=139;z=c[h>>2]|0;i=g;return z|0}a:do if((c[m>>2]|0)!=12){c[n>>2]=0;c[n+4>>2]=0;f=(c[k>>2]|0)+80|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;rq(n,c[m>>2]|0);f=(sq(n)|0)!=0;e=c[k>>2]|0;if(!f){f=e+128+68|0;a[f>>0]=a[f>>0]&-5|4;c[h>>2]=139;z=c[h>>2]|0;i=g;return z|0}tq(e,(c[k>>2]|0)+80|0,c[l>>2]|0,c[m>>2]|0,1);c[o+8+4>>2]=Uw(c[n>>2]<<3|0)|0;c[o+8>>2]=Uw((c[n>>2]|0)>>>29|c[n+4>>2]<<3|0)|0;c[o+4>>2]=0;c[o>>2]=0;tq(c[k>>2]|0,(c[k>>2]|0)+80|0,o,16,1);c[p>>2]=n;c[q>>2]=8;a[r>>0]=0;e=s;c[e>>2]=d[r>>0];c[e+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){e=s;f=Xw(c[e>>2]|0,c[e+4>>2]|0,16843009,16843009)|0;e=s;c[e>>2]=f;c[e+4>>2]=C;do{c[t>>2]=c[p>>2];e=s;f=c[e+4>>2]|0;b=c[t>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=f;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}c[u>>2]=o;c[v>>2]=16;a[w>>0]=0;f=x;c[f>>2]=d[w>>0];c[f+4>>2]=0;while(1){if(!(c[u>>2]&7|0?(c[v>>2]|0)!=0:0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}if((c[v>>2]|0)>>>0>=8){f=x;b=Xw(c[f>>2]|0,c[f+4>>2]|0,16843009,16843009)|0;f=x;c[f>>2]=b;c[f+4>>2]=C;do{c[y>>2]=c[u>>2];f=x;b=c[f+4>>2]|0;e=c[y>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=b;c[v>>2]=(c[v>>2]|0)-8;c[u>>2]=(c[u>>2]|0)+8}while((c[v>>2]|0)>>>0>=8)}while(1){if(!(c[v>>2]|0))break a;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}}else{Ow((c[k>>2]|0)+80|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[k>>2]|0)+80+14>>0]=0;a[(c[k>>2]|0)+80+13>>0]=0;a[(c[k>>2]|0)+80+12>>0]=0;a[(c[k>>2]|0)+80+15>>0]=1}while(0);sb[c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+128+52|0,(c[k>>2]|0)+80|0)|0;vq((c[k>>2]|0)+80|0,1)|0;c[(c[k>>2]|0)+112>>2]=0;m=(c[k>>2]|0)+56|0;a[m>>0]=a[m>>0]&-3|2;m=(c[k>>2]|0)+56|0;a[m>>0]=a[m>>0]&-5;c[h>>2]=0;z=c[h>>2]|0;i=g;return z|0}function rq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[f>>2]|0);if((c[c[e>>2]>>2]|0)>>>0>=(c[f>>2]|0)>>>0){i=d;return}f=(c[e>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1;i=d;return}function sq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;do if((c[(c[e>>2]|0)+4>>2]|0)>>>0<=536870911){if((c[(c[e>>2]|0)+4>>2]|0)>>>0<536870911){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<=4294967295){c[d>>2]=1;break}else{c[d>>2]=0;break}}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function tq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+48|0;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;u=h;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=16;c[q>>2]=c[(c[k>>2]|0)+128+32>>2];c[r>>2]=c[(c[k>>2]|0)+128+96>>2];c[u>>2]=0;if((c[n>>2]|0)==0?!((c[q>>2]|0)!=0&(c[o>>2]|0)!=0):0){i=h;return}a:do{if((c[q>>2]|0)>>>0>0?1:((c[n>>2]|0)+(c[q>>2]|0)|0)>>>0<(c[p>>2]|0)>>>0){c[t>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[t>>2]=(c[t>>2]|0)>>>0<(c[n>>2]|0)>>>0?c[t>>2]|0:c[n>>2]|0;uq((c[k>>2]|0)+128+16+(c[q>>2]|0)|0,c[m>>2]|0,c[t>>2]|0);c[q>>2]=(c[q>>2]|0)+(c[t>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[t>>2]|0);c[n>>2]=(c[n>>2]|0)-(c[t>>2]|0)}b:do if(!(c[n>>2]|0)){if(!(c[o>>2]|0))break a;while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break b;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>>2]|0)+128+16+g>>0]=0}}while(0);if((c[q>>2]|0)>>>0>0){if((c[q>>2]|0)!=(c[p>>2]|0)){v=11;break}c[u>>2]=zb[c[r>>2]&7](c[k>>2]|0,c[l>>2]|0,(c[k>>2]|0)+128+16|0,1)|0;c[q>>2]=0}c[s>>2]=((c[n>>2]|0)>>>0)/((c[p>>2]|0)>>>0)|0;if(c[s>>2]|0){c[u>>2]=zb[c[r>>2]&7](c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[s>>2]|0)|0;g=R(c[p>>2]|0,c[s>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+g;g=R(c[p>>2]|0,c[s>>2]|0)|0;c[n>>2]=(c[n>>2]|0)-g}}while((c[n>>2]|0)>>>0>0);if((v|0)==11)Fe(46692,46712,499,46725);c[(c[k>>2]|0)+128+32>>2]=c[q>>2];if(!(c[u>>2]|0)){i=h;return}Qe(c[u>>2]|0);Re();i=h;return}function uq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function vq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[d+8>>2]=16;c[g>>2]=(c[e>>2]|0)+16+-4;e=Uw(c[c[g>>2]>>2]|0)|0;c[h>>2]=e+(c[f>>2]|0);f=Uw(c[h>>2]|0)|0;c[c[g>>2]>>2]=f;i=d;return c[h>>2]|0}function wq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;do if((c[(c[e>>2]|0)+4>>2]|0)>>>0<=15){if((c[(c[e>>2]|0)+4>>2]|0)>>>0<15){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<=4294967264){c[d>>2]=1;break}else{c[d>>2]=0;break}}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function xq(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+20|0;m=k+16|0;n=k+12|0;o=k+8|0;p=k+4|0;q=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[(c[(c[m>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[l>>2]=12;r=c[l>>2]|0;i=k;return r|0}if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;r=c[l>>2]|0;i=k;return r|0}if((d[(c[m>>2]|0)+128+68>>0]|0)>>>2&1|0){c[l>>2]=139;r=c[l>>2]|0;i=k;return r|0}if(((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0)==0?(a[(c[m>>2]|0)+128+68>>0]&1|0)==0:0){if(!((d[(c[m>>2]|0)+56>>0]|0)>>>1&1))pq(c[m>>2]|0,76032,16)|0;if(!((d[(c[m>>2]|0)+128+68>>0]|0)>>>1&1)){tq(c[m>>2]|0,(c[m>>2]|0)+128|0,0,0,1);h=(c[m>>2]|0)+128+68|0;a[h>>0]=a[h>>0]&-3|2}rq((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(wq((c[m>>2]|0)+128+44|0)|0)!=0;g=c[m>>2]|0;if(h){tq(g,(c[m>>2]|0)+128|0,c[p>>2]|0,c[q>>2]|0,0);c[l>>2]=lq(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;r=c[l>>2]|0;i=k;return r|0}else{q=g+128+68|0;a[q>>0]=a[q>>0]&-5|4;c[l>>2]=139;r=c[l>>2]|0;i=k;return r|0}}c[l>>2]=156;r=c[l>>2]|0;i=k;return r|0}function yq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=(c[d>>2]|0)+128+80|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;sb[c[(c[(c[d>>2]|0)+12>>2]|0)+36>>2]&63]((c[d>>2]|0)+496|0,(c[d>>2]|0)+128+80|0,(c[d>>2]|0)+128+80|0)|0;zq(c[d>>2]|0);i=b;return}function zq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;c[(c[d>>2]|0)+128+96>>2]=2;Eq((c[d>>2]|0)+128+80|0,(c[d>>2]|0)+128+100|0);i=b;return}function Aq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[f+4>>2]=16;c[m>>2]=0;while(1){if(!(c[l>>2]|0))break;c[m>>2]=Bq(c[h>>2]|0,c[k>>2]|0,(c[g>>2]|0)+128+100|0)|0;c[k>>2]=(c[k>>2]|0)+16;c[l>>2]=(c[l>>2]|0)+-1}i=f;return (c[m>>2]|0)+(c[m>>2]|0?20:0)|0}function Bq(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+80|0;if((i|0)>=(j|0))U();h=g+56|0;k=g+52|0;l=g+48|0;m=g+64|0;n=g+32|0;o=g+24|0;p=g+20|0;q=g+16|0;r=g+4|0;s=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=f;Cq(m,c[h>>2]|0,c[k>>2]|0,16);c[s>>2]=15;c[o>>2]=d[m+(c[s>>2]|0)>>0];c[p>>2]=(c[l>>2]|0)+((c[o>>2]&15)<<2<<2);c[o>>2]=(c[o>>2]&240)>>>4;c[q>>2]=(c[l>>2]|0)+(c[o>>2]<<2<<2);k=(c[s>>2]|0)+-1|0;c[s>>2]=k;c[o>>2]=d[m+k>>0];k=(c[c[p>>2]>>2]|0)>>>4;f=Pw(e[17838+((c[(c[p>>2]|0)+12>>2]<<4&240)<<1)>>1]|0|0,0,16)|0;c[n>>2]=k^f^c[c[q>>2]>>2];c[n+4>>2]=(c[(c[p>>2]|0)+4>>2]|0)>>>4^c[c[p>>2]>>2]<<28^c[(c[q>>2]|0)+4>>2];c[n+8>>2]=(c[(c[p>>2]|0)+8>>2]|0)>>>4^c[(c[p>>2]|0)+4>>2]<<28^c[(c[q>>2]|0)+8>>2];c[n+12>>2]=(c[(c[p>>2]|0)+12>>2]|0)>>>4^c[(c[p>>2]|0)+8>>2]<<28^c[(c[q>>2]|0)+12>>2];while(1){c[p>>2]=(c[l>>2]|0)+((c[o>>2]&15)<<2<<2);c[o>>2]=(c[o>>2]&240)>>>4;c[q>>2]=(c[l>>2]|0)+(c[o>>2]<<2<<2);c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[n>>2]=(c[r>>2]|0)>>>8^(e[17838+((c[n+12>>2]&255)<<1)>>1]|0)<<16^c[c[q>>2]>>2];c[n+4>>2]=c[r>>2]<<24^(c[n+4>>2]|0)>>>8^c[(c[q>>2]|0)+4>>2];c[n+8>>2]=c[r+4>>2]<<24^(c[n+8>>2]|0)>>>8^c[(c[q>>2]|0)+8>>2];c[n+12>>2]=c[r+8>>2]<<24^(c[n+12>>2]|0)>>>8^c[(c[q>>2]|0)+12>>2];f=(c[c[p>>2]>>2]|0)>>>4;k=Pw(e[17838+((c[(c[p>>2]|0)+12>>2]<<4&240)<<1)>>1]|0|0,0,16)|0;c[n>>2]=c[n>>2]^(f^k);k=n+4|0;c[k>>2]=c[k>>2]^((c[(c[p>>2]|0)+4>>2]|0)>>>4^c[c[p>>2]>>2]<<28);k=n+8|0;c[k>>2]=c[k>>2]^((c[(c[p>>2]|0)+8>>2]|0)>>>4^c[(c[p>>2]|0)+4>>2]<<28);k=n+12|0;c[k>>2]=c[k>>2]^((c[(c[p>>2]|0)+12>>2]|0)>>>4^c[(c[p>>2]|0)+8>>2]<<28);if(!(c[s>>2]|0))break;k=(c[s>>2]|0)+-1|0;c[s>>2]=k;c[o>>2]=d[m+k>>0]}Dq(c[h>>2]|0,c[n>>2]|0);Dq((c[h>>2]|0)+4|0,c[n+4>>2]|0);Dq((c[h>>2]|0)+8|0,c[n+8>>2]|0);Dq((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=g;return 76}function Cq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Dq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[c[h>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[h>>2]|0)+3>>0]=c[g>>2];i=e;return}function Eq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+12>>2]=0;b=Fq(c[e>>2]|0)|0;c[(c[f>>2]|0)+128>>2]=b;b=Fq((c[e>>2]|0)+4|0)|0;c[(c[f>>2]|0)+132>>2]=b;b=Fq((c[e>>2]|0)+8|0)|0;c[(c[f>>2]|0)+136>>2]=b;b=Fq((c[e>>2]|0)+12|0)|0;c[(c[f>>2]|0)+140>>2]=b;c[g>>2]=4;while(1){if((c[g>>2]|0)<=0)break;c[(c[f>>2]|0)+((c[g>>2]<<2)+0<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<1<<2)+0<<2)>>2];c[(c[f>>2]|0)+((c[g>>2]<<2)+1<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<1<<2)+1<<2)>>2];c[(c[f>>2]|0)+((c[g>>2]<<2)+2<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<1<<2)+2<<2)>>2];c[(c[f>>2]|0)+((c[g>>2]<<2)+3<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<1<<2)+3<<2)>>2];Gq(c[f>>2]|0,c[g>>2]|0);c[g>>2]=(c[g>>2]|0)/2|0}c[g>>2]=2;while(1){if((c[g>>2]|0)>=16)break;c[h>>2]=1;while(1){k=c[g>>2]|0;if((c[h>>2]|0)>=(c[g>>2]|0))break;c[(c[f>>2]|0)+(((c[g>>2]|0)+(c[h>>2]|0)<<2)+0<<2)>>2]=c[(c[f>>2]|0)+((k<<2)+0<<2)>>2]^c[(c[f>>2]|0)+((c[h>>2]<<2)+0<<2)>>2];c[(c[f>>2]|0)+(((c[g>>2]|0)+(c[h>>2]|0)<<2)+1<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<2)+1<<2)>>2]^c[(c[f>>2]|0)+((c[h>>2]<<2)+1<<2)>>2];c[(c[f>>2]|0)+(((c[g>>2]|0)+(c[h>>2]|0)<<2)+2<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<2)+2<<2)>>2]^c[(c[f>>2]|0)+((c[h>>2]<<2)+2<<2)>>2];c[(c[f>>2]|0)+(((c[g>>2]|0)+(c[h>>2]|0)<<2)+3<<2)>>2]=c[(c[f>>2]|0)+((c[g>>2]<<2)+3<<2)>>2]^c[(c[f>>2]|0)+((c[h>>2]<<2)+3<<2)>>2];c[h>>2]=(c[h>>2]|0)+1}c[g>>2]=k<<1}i=d;return}function Fq(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (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)|0}function Gq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+8|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+((c[f>>2]<<2)+0<<2)>>2];c[g+4>>2]=c[(c[e>>2]|0)+((c[f>>2]<<2)+1<<2)>>2];c[g+8>>2]=c[(c[e>>2]|0)+((c[f>>2]<<2)+2<<2)>>2];c[g+12>>2]=c[(c[e>>2]|0)+((c[f>>2]<<2)+3<<2)>>2];c[h>>2]=c[g+12>>2]&1|0?225:0;c[(c[e>>2]|0)+((c[f>>2]<<2)+3<<2)>>2]=(c[g+12>>2]|0)>>>1^c[g+8>>2]<<31;c[(c[e>>2]|0)+((c[f>>2]<<2)+2<<2)>>2]=(c[g+8>>2]|0)>>>1^c[g+4>>2]<<31;c[(c[e>>2]|0)+((c[f>>2]<<2)+1<<2)>>2]=(c[g+4>>2]|0)>>>1^c[g>>2]<<31;c[(c[e>>2]|0)+((c[f>>2]<<2)+0<<2)>>2]=(c[g>>2]|0)>>>1^c[h>>2]<<24;i=d;return}function Hq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f;m=f+8|0;c[h>>2]=a;c[k>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;e=l;c[m>>2]=Iq(c[e>>2]|0,c[e+4>>2]|0)|0;if((c[m>>2]|0)<16){c[g>>2]=(c[h>>2]|0)+128+32+(c[m>>2]<<4);n=c[g>>2]|0;i=f;return n|0}Kq(c[k>>2]|0,(c[h>>2]|0)+128+32+240|0);c[m>>2]=(c[m>>2]|0)-16;while(1){o=c[k>>2]|0;if(!(c[m>>2]|0))break;Mq(o);c[m>>2]=(c[m>>2]|0)+-1}c[g>>2]=o;n=c[g>>2]|0;i=f;return n|0}function Iq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=f;c[g>>2]=a;c[g+4>>2]=b;b=f;g=c[b+4>>2]|0;if((c[f>>2]|0)!=0|0!=0){c[e>>2]=Jq(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(Jq(g)|0);h=c[e>>2]|0;i=d;return h|0}return 0}function Jq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=(c[d>>2]|0)!=0;e=Iw(c[d>>2]|0)|0;i=b;return (a?e:32)|0}function Kq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)!=(c[f>>2]|0))Lq(c[e>>2]|0,c[f>>2]|0,16);Mq(c[e>>2]|0);i=d;return}function Lq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+16|0;f=b+8|0;g=b;c[d>>2]=a;a=Nq(c[d>>2]|0)|0;h=f;c[h>>2]=a;c[h+4>>2]=C;h=Nq((c[d>>2]|0)+8|0)|0;a=g;c[a>>2]=h;c[a+4>>2]=C;a=f;h=Lw(c[a>>2]|0,c[a+4>>2]|0,63)|0;a=e;c[a>>2]=h;c[a+4>>2]=C;a=f;h=f;k=Gw(c[a>>2]|0,c[a+4>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0;h=C;a=g;l=Mw(c[a>>2]|0,c[a+4>>2]|0,63)|0;a=f;c[a>>2]=k^l;c[a+4>>2]=h^C;h=g;a=g;l=Gw(c[h>>2]|0,c[h+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=g;c[a>>2]=l^c[e>>2]&135;c[a+4>>2]=C;a=f;Oq(c[d>>2]|0,c[a>>2]|0,c[a+4>>2]|0);a=g;Oq((c[d>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=b;return}function Nq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];e=Pw(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Pw(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Pw(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Pw(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Pw(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Pw(d[(c[f>>2]|0)+6>>0]|0|0,0,8)|0;C=m|C;i=b;return e|g|a|h|k|l|(d[(c[f>>2]|0)+7>>0]|0)|0}function Oq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f;k=f+8|0;c[g>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[k>>2]=c[g>>2];g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,40)|0;a[(c[k>>2]|0)+2>>0]=e;a[(c[k>>2]|0)+3>>0]=c[h+4>>2];e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,8)|0;a[(c[k>>2]|0)+6>>0]=g;a[(c[k>>2]|0)+7>>0]=c[h>>2];i=f;return}function Pq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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,D=0,E=0;g=i;i=i+128|0;if((i|0)>=(j|0))U();h=g+68|0;k=g+64|0;l=g+60|0;m=g+56|0;n=g+104|0;o=g+80|0;p=g+52|0;q=g+48|0;r=g+44|0;s=g+40|0;t=g+36|0;u=g+32|0;v=g+73|0;w=g+8|0;x=g+28|0;y=g+24|0;z=g+20|0;A=g+72|0;B=g;D=g+16|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[r>>2]=0;if(!(a[(c[k>>2]|0)+56>>0]&1)){c[h>>2]=156;E=c[h>>2]|0;i=g;return E|0}switch(d[(c[k>>2]|0)+128+352>>0]|0|0){case 16:case 12:case 8:break;default:{c[h>>2]=59;E=c[h>>2]|0;i=g;return E|0}}if((c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[h>>2]=12;E=c[h>>2]|0;i=g;return E|0}if(!(c[l>>2]|0)){c[h>>2]=45;E=c[h>>2]|0;i=g;return E|0}if((c[m>>2]|0)>>>0>15|(c[m>>2]|0)>>>0<8|(c[m>>2]|0)>>>0>=16){c[h>>2]=139;E=c[h>>2]|0;i=g;return E|0}f=n;e=f+16|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(e|0));c[s>>2]=sb[c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+128|0,n)|0;c[r>>2]=(c[s>>2]|0)>>>0>(c[r>>2]|0)>>>0?c[s>>2]|0:c[r>>2]|0;Kq((c[k>>2]|0)+128+16|0,(c[k>>2]|0)+128|0);Kq((c[k>>2]|0)+128+32|0,(c[k>>2]|0)+128+16|0);c[q>>2]=1;while(1){if((c[q>>2]|0)>=16)break;Kq((c[k>>2]|0)+128+32+(c[q>>2]<<4)|0,(c[k>>2]|0)+128+32+((c[q>>2]|0)-1<<4)|0);c[q>>2]=(c[q>>2]|0)+1}Sw(n|0,0,16-(c[m>>2]|0)|0)|0;Lq(n+(16-(c[m>>2]|0))|0,c[l>>2]|0,c[m>>2]|0);a[n>>0]=(((d[(c[k>>2]|0)+128+352>>0]|0)<<3|0)%128|0)<<1;l=n+(16-(c[m>>2]|0)-1)|0;a[l>>0]=d[l>>0]|0|1;c[p>>2]=(d[n+15>>0]|0)&63;l=n+15|0;a[l>>0]=(d[l>>0]|0)&192;c[s>>2]=sb[c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2]&63]((c[k>>2]|0)+496|0,n,n)|0;c[r>>2]=(c[s>>2]|0)>>>0>(c[r>>2]|0)>>>0?c[s>>2]|0:c[r>>2]|0;Lq(o,n,16);Qq(o+16|0,n,n+1|0,8);Rq((c[k>>2]|0)+64|0,o,c[p>>2]|0,16);p=(c[k>>2]|0)+56|0;a[p>>0]=a[p>>0]&-3|2;p=(c[k>>2]|0)+80|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;p=(c[k>>2]|0)+128+304|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;p=(c[k>>2]|0)+128+320|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;p=(c[k>>2]|0)+96|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[(c[k>>2]|0)+112>>2]=0;p=(c[k>>2]|0)+56|0;a[p>>0]=a[p>>0]&-5;p=(c[k>>2]|0)+56|0;a[p>>0]=a[p>>0]&-9;p=(c[k>>2]|0)+128+336|0;c[p>>2]=0;c[p+4>>2]=0;p=(c[k>>2]|0)+128+344|0;c[p>>2]=0;c[p+4>>2]=0;p=(c[k>>2]|0)+128+353|0;a[p>>0]=a[p>>0]&-2;p=(c[k>>2]|0)+128+353|0;a[p>>0]=a[p>>0]&-3;c[t>>2]=n;c[u>>2]=16;a[v>>0]=0;n=w;c[n>>2]=d[v>>0];c[n+4>>2]=0;while(1){if(!(c[t>>2]&7|0?(c[u>>2]|0)!=0:0))break;a[c[t>>2]>>0]=a[v>>0]|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+-1}if((c[u>>2]|0)>>>0>=8){n=w;p=Xw(c[n>>2]|0,c[n+4>>2]|0,16843009,16843009)|0;n=w;c[n>>2]=p;c[n+4>>2]=C;do{c[x>>2]=c[t>>2];n=w;p=c[n+4>>2]|0;k=c[x>>2]|0;c[k>>2]=c[n>>2];c[k+4>>2]=p;c[u>>2]=(c[u>>2]|0)-8;c[t>>2]=(c[t>>2]|0)+8}while((c[u>>2]|0)>>>0>=8)}while(1){if(!(c[u>>2]|0))break;a[c[t>>2]>>0]=a[v>>0]|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+-1}c[y>>2]=o;c[z>>2]=24;a[A>>0]=0;o=B;c[o>>2]=d[A>>0];c[o+4>>2]=0;while(1){if(!(c[y>>2]&7|0?(c[z>>2]|0)!=0:0))break;a[c[y>>2]>>0]=a[A>>0]|0;c[y>>2]=(c[y>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+-1}if((c[z>>2]|0)>>>0>=8){o=B;u=Xw(c[o>>2]|0,c[o+4>>2]|0,16843009,16843009)|0;o=B;c[o>>2]=u;c[o+4>>2]=C;do{c[D>>2]=c[y>>2];o=B;u=c[o+4>>2]|0;t=c[D>>2]|0;c[t>>2]=c[o>>2];c[t+4>>2]=u;c[z>>2]=(c[z>>2]|0)-8;c[y>>2]=(c[y>>2]|0)+8}while((c[z>>2]|0)>>>0>=8)}while(1){if(!(c[z>>2]|0))break;a[c[y>>2]>>0]=a[A>>0]|0;c[y>>2]=(c[y>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+-1}if((c[r>>2]|0)>>>0>0){Qe((c[r>>2]|0)+16|0);Re()}c[h>>2]=0;E=c[h>>2]|0;i=g;return E|0}function Qq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Rq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+16|0;l=h+12|0;m=h+8|0;n=h+4|0;o=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[l>>2]=(c[l>>2]|0)+(((c[m>>2]|0)>>>0)/8|0);c[o>>2]=((c[m>>2]|0)>>>0)%8|0;if(c[o>>2]|0){while(1){if(!(c[n>>2]|0))break;a[c[k>>2]>>0]=(d[c[l>>2]>>0]|0)<<c[o>>2]|(d[(c[l>>2]|0)+1>>0]|0)>>8-(c[o>>2]|0);c[n>>2]=(c[n>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}i=h;return}else{while(1){if(!(c[n>>2]|0))break;a[c[k>>2]>>0]=a[c[l>>2]>>0]|0;c[n>>2]=(c[n>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}i=h;return}}function Sq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;c[h>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=c[h>>2];c[n>>2]=c[k>>2];c[g>>2]=3;if(!((c[m>>2]|c[n>>2])&3)){c[o>>2]=c[m>>2];c[p>>2]=c[n>>2];while(1){if((c[l>>2]|0)>>>0<4)break;k=c[p>>2]|0;c[p>>2]=k+4;h=c[k>>2]|0;k=c[o>>2]|0;c[o>>2]=k+4;c[k>>2]=c[k>>2]^h;c[l>>2]=(c[l>>2]|0)-4}c[m>>2]=c[o>>2];c[n>>2]=c[p>>2]}while(1){if(!(c[l>>2]|0))break;p=c[n>>2]|0;c[n>>2]=p+1;o=d[p>>0]|0;p=c[m>>2]|0;c[m>>2]=p+1;a[p>>0]=(d[p>>0]|0)^o;c[l>>2]=(c[l>>2]|0)+-1}i=g;return}function Tq(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Uq(c[h>>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;i=g;return f|0}function Uq(b,e,f,g,h,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+80|0;if((i|0)>=(j|0))U();m=l+40|0;n=l+36|0;o=l+32|0;p=l+28|0;q=l+24|0;r=l+20|0;s=l+16|0;t=l+64|0;u=l+12|0;v=l+8|0;w=l+4|0;x=l;y=l+48|0;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;c[u>>2]=0;c[w>>2]=((c[s>>2]|0)>>>0)/16|0;if((d[(c[n>>2]|0)+56>>0]|0)>>>1&1|0?(a[(c[n>>2]|0)+128+353>>0]&1|0)==0:0){if((c[(c[(c[n>>2]|0)+12>>2]|0)+20>>2]|0)!=16){c[m>>2]=12;z=c[m>>2]|0;i=l;return z|0}if((c[q>>2]|0)>>>0<(c[s>>2]|0)>>>0){c[m>>2]=200;z=c[m>>2]|0;i=l;return z|0}if(((d[(c[n>>2]|0)+56>>0]|0)>>>3&1|0)==0?((c[s>>2]|0)>>>0)%16|0|0:0){c[m>>2]=139;z=c[m>>2]|0;i=l;return z|0}if(c[w>>2]|0?c[(c[n>>2]|0)+20+20>>2]|0:0){tb[c[(c[n>>2]|0)+20+20>>2]&15](c[n>>2]|0,c[p>>2]|0,c[r>>2]|0,c[w>>2]|0,c[o>>2]|0);c[r>>2]=(c[r>>2]|0)+(c[w>>2]<<4);c[p>>2]=(c[p>>2]|0)+(c[w>>2]<<4);c[s>>2]=(c[s>>2]|0)-(c[w>>2]<<4);c[q>>2]=(c[q>>2]|0)-(c[w>>2]<<4);c[w>>2]=0}if(c[w>>2]|0){k=c[(c[n>>2]|0)+12>>2]|0;if(c[o>>2]|0)A=c[k+36>>2]|0;else A=c[k+40>>2]|0;c[x>>2]=A;if(c[o>>2]|0)Vq((c[n>>2]|0)+80|0,c[r>>2]|0,c[w>>2]|0);while(1){if((c[s>>2]|0)>>>0<16)break;A=(c[n>>2]|0)+128+336|0;k=A;h=Gw(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;k=A;c[k>>2]=h;c[k+4>>2]=C;k=(c[n>>2]|0)+64|0;h=(c[n>>2]|0)+128+336|0;Sq(k,Hq(c[n>>2]|0,t,c[h>>2]|0,c[h+4>>2]|0)|0,16);Qq(c[p>>2]|0,(c[n>>2]|0)+64|0,c[r>>2]|0,16);c[v>>2]=sb[c[x>>2]&63]((c[n>>2]|0)+496|0,c[p>>2]|0,c[p>>2]|0)|0;c[u>>2]=(c[v>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[v>>2]|0:c[u>>2]|0;Sq(c[p>>2]|0,(c[n>>2]|0)+64|0,16);c[r>>2]=(c[r>>2]|0)+16;c[s>>2]=(c[s>>2]|0)-16;c[p>>2]=(c[p>>2]|0)+16;c[q>>2]=-16}if(!(c[o>>2]|0))Vq((c[n>>2]|0)+80|0,(c[p>>2]|0)+(0-(c[w>>2]<<4))|0,c[w>>2]|0)}do if(c[s>>2]|0){Sq((c[n>>2]|0)+64|0,(c[n>>2]|0)+128|0,16);c[v>>2]=sb[c[(c[(c[n>>2]|0)+12>>2]|0)+36>>2]&63]((c[n>>2]|0)+496|0,y,(c[n>>2]|0)+64|0)|0;c[u>>2]=(c[v>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[v>>2]|0:c[u>>2]|0;if(c[o>>2]|0){Lq(t,c[r>>2]|0,c[s>>2]|0);Sw(t+(c[s>>2]|0)|0,0,16-(c[s>>2]|0)|0)|0;a[t+(c[s>>2]|0)>>0]=-128;Sq((c[n>>2]|0)+80|0,t,16);Qq(c[p>>2]|0,c[r>>2]|0,y,c[s>>2]|0);break}else{Lq(t,y,16);Lq(t,c[r>>2]|0,c[s>>2]|0);Sq(t,y,16);a[t+(c[s>>2]|0)>>0]=-128;Lq(c[p>>2]|0,t,c[s>>2]|0);Sq((c[n>>2]|0)+80|0,t,16);break}}while(0);if((d[(c[n>>2]|0)+56>>0]|0)>>>3&1|0){Qq((c[n>>2]|0)+128+288|0,(c[n>>2]|0)+80|0,(c[n>>2]|0)+64|0,16);Sq((c[n>>2]|0)+128+288|0,(c[n>>2]|0)+128+16|0,16);c[v>>2]=sb[c[(c[(c[n>>2]|0)+12>>2]|0)+36>>2]&63]((c[n>>2]|0)+496|0,(c[n>>2]|0)+128+288|0,(c[n>>2]|0)+128+288|0)|0;c[u>>2]=(c[v>>2]|0)>>>0>(c[u>>2]|0)>>>0?c[v>>2]|0:c[u>>2]|0;v=(c[n>>2]|0)+128+353|0;a[v>>0]=a[v>>0]&-2|1}if((c[u>>2]|0)>>>0>0){Qe((c[u>>2]|0)+16|0);Re()}c[m>>2]=0;z=c[m>>2]|0;i=l;return z|0}c[m>>2]=156;z=c[m>>2]|0;i=l;return z|0}function Vq(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;while(1){if((c[h>>2]|0)>>>0<=0)break;Sq(c[f>>2]|0,c[g>>2]|0,16);c[g>>2]=(c[g>>2]|0)+16;c[h>>2]=(c[h>>2]|0)+-1}i=e;return}function Wq(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Uq(c[h>>2]|0,0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;i=g;return f|0}function Xq(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[q>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+36>>2];c[r>>2]=c[(c[(c[k>>2]|0)+12>>2]|0)+20>>2];if((c[m>>2]|0)>>>0<(c[o>>2]|0)>>>0){c[h>>2]=200;u=c[h>>2]|0;i=g;return u|0}if((c[o>>2]|0)>>>0<=(c[(c[k>>2]|0)+112>>2]|0)>>>0){c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));Yq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[o>>2]|0);m=(c[k>>2]|0)+112|0;c[m>>2]=(c[m>>2]|0)-(c[o>>2]|0);c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}c[s>>2]=0;if(c[(c[k>>2]|0)+112>>2]|0){c[o>>2]=(c[o>>2]|0)-(c[(c[k>>2]|0)+112>>2]|0);c[p>>2]=(c[k>>2]|0)+64+(c[r>>2]|0)+(0-(c[(c[k>>2]|0)+112>>2]|0));Yq(c[l>>2]|0,c[p>>2]|0,c[n>>2]|0,c[(c[k>>2]|0)+112>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[(c[k>>2]|0)+112>>2]|0);c[(c[k>>2]|0)+112>>2]=0}while(1){if((c[o>>2]|0)>>>0<(c[r>>2]|0)>>>0)break;c[t>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[s>>2]=(c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0?c[t>>2]|0:c[s>>2]|0;Yq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[r>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[o>>2]|0)-(c[r>>2]|0)}if(c[o>>2]|0){c[t>>2]=sb[c[q>>2]&63]((c[k>>2]|0)+496|0,(c[k>>2]|0)+64|0,(c[k>>2]|0)+64|0)|0;c[s>>2]=(c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0?c[t>>2]|0:c[s>>2]|0;c[(c[k>>2]|0)+112>>2]=c[r>>2];r=(c[k>>2]|0)+112|0;c[r>>2]=(c[r>>2]|0)-(c[o>>2]|0);Yq(c[l>>2]|0,(c[k>>2]|0)+64|0,c[n>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[o>>2]=0}if((c[s>>2]|0)>>>0>0){Qe((c[s>>2]|0)+16|0);Re()}c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}function Yq(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Zq(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;f=d+8|0;c[e>>2]=b;a[f>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0;a[f+4>>0]=0;a[f+5>>0]=0;a[f+6>>0]=0;a[f+7>>0]=0;b=_q(c[e>>2]|0,f,8)|0;i=d;return b|0}function _q(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+112|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+48|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+40|0;s=g;t=g+8|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;if((c[l>>2]|0)==0&(c[m>>2]|0)!=12){c[h>>2]=45;u=c[h>>2]|0;i=g;return u|0}f=(c[k>>2]|0)+128+20|0;e=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[k>>2]|0)+128>>2]=0;c[(c[k>>2]|0)+128+4>>2]=0;c[(c[k>>2]|0)+128+8>>2]=0;c[(c[k>>2]|0)+128+8+4>>2]=0;b=(c[k>>2]|0)+128+16|0;a[b>>0]=a[b>>0]&-3;b=(c[k>>2]|0)+128+16|0;a[b>>0]=a[b>>0]&-2;b=(c[k>>2]|0)+56|0;a[b>>0]=a[b>>0]&-5;b=(c[k>>2]|0)+56|0;a[b>>0]=a[b>>0]&-3;xb[c[(c[(c[k>>2]|0)+12>>2]|0)+60>>2]&7]((c[k>>2]|0)+496|0,c[l>>2]|0,c[m>>2]|0);f=n;e=f+64|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(e|0));Cb[c[(c[(c[k>>2]|0)+12>>2]|0)+44>>2]&1]((c[k>>2]|0)+496|0,n,n,64);c[o>>2]=Fr((c[k>>2]|0)+128+20|0,n,32)|0;c[p>>2]=n;c[q>>2]=64;a[r>>0]=0;n=s;c[n>>2]=d[r>>0];c[n+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){n=s;f=Xw(c[n>>2]|0,c[n+4>>2]|0,16843009,16843009)|0;n=s;c[n>>2]=f;c[n+4>>2]=C;do{c[t>>2]=c[p>>2];n=s;f=c[n+4>>2]|0;e=c[t>>2]|0;c[e>>2]=c[n>>2];c[e+4>>2]=f;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if(c[o>>2]|0){c[h>>2]=c[o>>2];u=c[h>>2]|0;i=g;return u|0}else{o=(c[k>>2]|0)+56|0;a[o>>0]=a[o>>0]&-3|2;c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}return 0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;b=c[f>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);if((c[c[f>>2]>>2]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}else{g=(c[f>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=((c[(c[f>>2]|0)+4>>2]|0)>>>0<1?1:(c[h>>2]|0)!=0)&1;k=c[e>>2]|0;i=d;return k|0}return 0}function ar(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+24|0;m=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;q=k+4|0;r=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;s=c[l>>2]|0;i=k;return s|0}if((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0){c[l>>2]=156;s=c[l>>2]|0;i=k;return s|0}if((d[(c[m>>2]|0)+128+16>>0]|0)>>>1&1|0){c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}if(((d[(c[m>>2]|0)+56>>0]|0)>>>1&1|0)==0?(c[r>>2]=Zq(c[m>>2]|0)|0,c[r>>2]|0):0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=k;return s|0}if(!(a[(c[m>>2]|0)+128+16>>0]&1))br(c[m>>2]|0);r=($q((c[m>>2]|0)+128+8|0,c[q>>2]|0)|0)!=0;o=c[m>>2]|0;if(r){r=o+128+16|0;a[r>>0]=a[r>>0]&-3|2;c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}else{Cb[c[(c[o+12>>2]|0)+44>>2]&1]((c[m>>2]|0)+496|0,c[n>>2]|0,c[p>>2]|0,c[q>>2]|0);Br((c[m>>2]|0)+128+20|0,c[n>>2]|0,c[q>>2]|0);c[l>>2]=0;s=c[l>>2]|0;i=k;return s|0}return 0}function br(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;cr(c[e>>2]|0,(c[e>>2]|0)+128|0);b=(c[e>>2]|0)+128+16|0;a[b>>0]=a[b>>0]&-2|1;c[(c[e>>2]|0)+128+8>>2]=0;c[(c[e>>2]|0)+128+8+4>>2]=0;i=d;return}function cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;if((((c[c[f>>2]>>2]|0)>>>0)%16|0)>>>0<=0){i=d;return}c[g>>2]=16-(((c[c[f>>2]>>2]|0)>>>0)%16|0);Br((c[e>>2]|0)+128+20|0,76048,c[g>>2]|0);i=d;return}function dr(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+24|0;m=k+20|0;n=k+16|0;o=k+12|0;p=k+8|0;q=k+4|0;r=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;if((c[o>>2]|0)>>>0<(c[q>>2]|0)>>>0){c[l>>2]=200;s=c[l>>2]|0;i=k;return s|0}if((d[(c[m>>2]|0)+56>>0]|0)>>>2&1|0){c[l>>2]=156;s=c[l>>2]|0;i=k;return s|0}if((d[(c[m>>2]|0)+128+16>>0]|0)>>>1&1|0){c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}if(((d[(c[m>>2]|0)+56>>0]|0)>>>1&1|0)==0?(c[r>>2]=Zq(c[m>>2]|0)|0,c[r>>2]|0):0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=k;return s|0}if(!(a[(c[m>>2]|0)+128+16>>0]&1))br(c[m>>2]|0);r=($q((c[m>>2]|0)+128+8|0,c[q>>2]|0)|0)!=0;o=(c[m>>2]|0)+128|0;if(r){r=o+16|0;a[r>>0]=a[r>>0]&-3|2;c[l>>2]=139;s=c[l>>2]|0;i=k;return s|0}else{Br(o+20|0,c[p>>2]|0,c[q>>2]|0);Cb[c[(c[(c[m>>2]|0)+12>>2]|0)+48>>2]&1]((c[m>>2]|0)+496|0,c[n>>2]|0,c[p>>2]|0,c[q>>2]|0);c[l>>2]=0;s=c[l>>2]|0;i=k;return s|0}return 0}function er(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;c[(c[e>>2]|0)+128>>2]=0;c[(c[e>>2]|0)+128+4>>2]=0;c[(c[e>>2]|0)+128+8>>2]=0;c[(c[e>>2]|0)+128+8+4>>2]=0;b=(c[e>>2]|0)+128+16|0;a[b>>0]=a[b>>0]&-3;b=(c[e>>2]|0)+128+16|0;a[b>>0]=a[b>>0]&-2;b=(c[e>>2]|0)+56|0;a[b>>0]=a[b>>0]&-5;b=(c[e>>2]|0)+56|0;a[b>>0]=a[b>>0]&-3;i=d;return}function fr(b,d,e,f,g,h,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+80|0;if((i|0)>=(j|0))U();m=l+72|0;n=l+64|0;o=l+60|0;p=l+56|0;q=l+52|0;r=l+48|0;s=l+44|0;t=l+40|0;u=l+36|0;v=l+32|0;w=l+28|0;x=l+24|0;y=l+20|0;z=l+16|0;A=l+12|0;B=l+8|0;C=l+4|0;D=l;c[l+68>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;c[C>>2]=(c[s>>2]|0)+15;c[C>>2]=(c[C>>2]|0)-(c[C>>2]&15);c[D>>2]=(c[C>>2]|0)+(c[r>>2]<<1)+((R(c[r>>2]|0,c[q>>2]|0)|0)*3|0)+16;c[B>>2]=jf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46738;E=c[m>>2]|0;i=l;return E|0}c[u>>2]=16-(c[B>>2]&15)&15;c[v>>2]=(c[B>>2]|0)+(c[u>>2]|0);c[z>>2]=(c[v>>2]|0)+(c[C>>2]|0);c[A>>2]=(c[z>>2]|0)+(c[r>>2]|0);c[w>>2]=(c[A>>2]|0)+(c[r>>2]|0);c[x>>2]=(c[w>>2]|0)+(R(c[q>>2]|0,c[r>>2]|0)|0);c[y>>2]=(c[x>>2]|0)+(R(c[q>>2]|0,c[r>>2]|0)|0);if(sb[c[n>>2]&63](c[v>>2]|0,16,16)|0){hf(c[B>>2]|0);c[m>>2]=46764;E=c[m>>2]|0;i=l;return E|0}Sw(c[z>>2]|0,78,c[r>>2]|0)|0;Sw(c[A>>2]|0,78,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[r>>2]|0))break;a[(c[w>>2]|0)+(c[t>>2]|0)>>0]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}gr(c[y>>2]|0,c[z>>2]|0,c[w>>2]|0,c[r>>2]|0);sb[c[o>>2]&63](c[v>>2]|0,c[y>>2]|0,c[y>>2]|0)|0;Ow(c[z>>2]|0,c[y>>2]|0,c[r>>2]|0)|0;tb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,1);if(vv(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){hf(c[B>>2]|0);c[m>>2]=46778;E=c[m>>2]|0;i=l;return E|0}if(vv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){hf(c[B>>2]|0);c[m>>2]=46778;E=c[m>>2]|0;i=l;return E|0}Sw(c[z>>2]|0,95,c[r>>2]|0)|0;Sw(c[A>>2]|0,95,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(R(c[q>>2]|0,c[r>>2]|0)|0))break;a[(c[w>>2]|0)+(c[t>>2]|0)>>0]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(R(c[q>>2]|0,c[r>>2]|0)|0))break;gr((c[y>>2]|0)+(c[t>>2]|0)|0,c[z>>2]|0,(c[w>>2]|0)+(c[t>>2]|0)|0,c[r>>2]|0);sb[c[o>>2]&63](c[v>>2]|0,(c[y>>2]|0)+(c[t>>2]|0)|0,(c[y>>2]|0)+(c[t>>2]|0)|0)|0;Ow(c[z>>2]|0,(c[y>>2]|0)+(c[t>>2]|0)|0,c[r>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+(c[r>>2]|0)}tb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,c[q>>2]|0);if(vv(c[x>>2]|0,c[w>>2]|0,R(c[q>>2]|0,c[r>>2]|0)|0)|0){hf(c[B>>2]|0);c[m>>2]=46778;E=c[m>>2]|0;i=l;return E|0}q=(vv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;hf(c[B>>2]|0);if(q){c[m>>2]=46778;E=c[m>>2]|0;i=l;return E|0}else{c[m>>2]=0;E=c[m>>2]|0;i=l;return E|0}return 0}function gr(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function hr(b,d,e,f,g,h,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+80|0;if((i|0)>=(j|0))U();m=l+72|0;n=l+64|0;o=l+60|0;p=l+56|0;q=l+52|0;r=l+48|0;s=l+44|0;t=l+40|0;u=l+36|0;v=l+32|0;w=l+28|0;x=l+24|0;y=l+20|0;z=l+16|0;A=l+12|0;B=l+8|0;C=l+4|0;D=l;c[l+68>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;c[C>>2]=(c[s>>2]|0)+15;c[C>>2]=(c[C>>2]|0)-(c[C>>2]&15);c[D>>2]=(c[C>>2]|0)+(c[r>>2]<<1)+((R(c[r>>2]|0,c[q>>2]|0)|0)*3|0)+16;c[B>>2]=jf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46738;E=c[m>>2]|0;i=l;return E|0}c[u>>2]=16-(c[B>>2]&15)&15;c[v>>2]=(c[B>>2]|0)+(c[u>>2]|0);c[z>>2]=(c[v>>2]|0)+(c[C>>2]|0);c[A>>2]=(c[z>>2]|0)+(c[r>>2]|0);c[w>>2]=(c[A>>2]|0)+(c[r>>2]|0);c[x>>2]=(c[w>>2]|0)+(R(c[q>>2]|0,c[r>>2]|0)|0);c[y>>2]=(c[x>>2]|0)+(R(c[q>>2]|0,c[r>>2]|0)|0);if(sb[c[n>>2]&63](c[v>>2]|0,32,16)|0){hf(c[B>>2]|0);c[m>>2]=46764;E=c[m>>2]|0;i=l;return E|0}Sw(c[z>>2]|0,-45,c[r>>2]|0)|0;Sw(c[A>>2]|0,-45,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[r>>2]|0))break;a[(c[w>>2]|0)+(c[t>>2]|0)>>0]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}sb[c[o>>2]&63](c[v>>2]|0,c[y>>2]|0,c[z>>2]|0)|0;ir(c[z>>2]|0,c[y>>2]|0,c[w>>2]|0,c[r>>2]|0);tb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,1);if(vv(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){hf(c[B>>2]|0);c[m>>2]=46827;E=c[m>>2]|0;i=l;return E|0}if(vv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){hf(c[B>>2]|0);c[m>>2]=46827;E=c[m>>2]|0;i=l;return E|0}Sw(c[z>>2]|0,-26,c[r>>2]|0)|0;Sw(c[A>>2]|0,-26,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(R(c[q>>2]|0,c[r>>2]|0)|0))break;a[(c[w>>2]|0)+(c[t>>2]|0)>>0]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1}c[t>>2]=0;while(1){if((c[t>>2]|0)>=(R(c[q>>2]|0,c[r>>2]|0)|0))break;sb[c[o>>2]&63](c[v>>2]|0,(c[y>>2]|0)+(c[t>>2]|0)|0,c[z>>2]|0)|0;ir(c[z>>2]|0,(c[y>>2]|0)+(c[t>>2]|0)|0,(c[w>>2]|0)+(c[t>>2]|0)|0,c[r>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[r>>2]|0)}tb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,c[q>>2]|0);if(vv(c[x>>2]|0,c[w>>2]|0,R(c[q>>2]|0,c[r>>2]|0)|0)|0){hf(c[B>>2]|0);c[m>>2]=46827;E=c[m>>2]|0;i=l;return E|0}q=(vv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;hf(c[B>>2]|0);if(q){c[m>>2]=46827;E=c[m>>2]|0;i=l;return E|0}else{c[m>>2]=0;E=c[m>>2]|0;i=l;return E|0}return 0}function ir(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[q>>2]|c[o>>2]|c[p>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[t>>2]|0;c[t>>2]=m+4;l=c[m>>2]|0;m=c[s>>2]|0;c[s>>2]=m+4;k=c[m>>2]^l;c[m>>2]=k;m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[q>>2]|0;c[q>>2]=t+1;s=d[t>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;r=((d[t>>0]|0)^s)&255;a[t>>0]=r;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function jr(b,e,f,g,h,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;m=i;i=i+96|0;if((i|0)>=(j|0))U();n=m+84|0;o=m+76|0;p=m+72|0;q=m+68|0;r=m+64|0;s=m+60|0;t=m+56|0;u=m+52|0;v=m+48|0;w=m+44|0;x=m+40|0;y=m+36|0;z=m+32|0;A=m+28|0;B=m+24|0;C=m+20|0;D=m+16|0;E=m+12|0;F=m+8|0;G=m+4|0;H=m;c[m+80>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;c[t>>2]=l;c[G>>2]=(c[t>>2]|0)+15;c[G>>2]=(c[G>>2]|0)-(c[G>>2]&15);c[H>>2]=(c[G>>2]|0)+(c[s>>2]<<1)+((R(c[s>>2]|0,c[r>>2]|0)|0)<<2)+16;c[F>>2]=jf(1,c[H>>2]|0)|0;if(!(c[F>>2]|0)){c[n>>2]=46738;I=c[n>>2]|0;i=m;return I|0}c[w>>2]=16-(c[F>>2]&15)&15;c[y>>2]=(c[F>>2]|0)+(c[w>>2]|0);c[D>>2]=(c[y>>2]|0)+(c[G>>2]|0);c[E>>2]=(c[D>>2]|0)+(c[s>>2]|0);c[z>>2]=(c[E>>2]|0)+(c[s>>2]|0);c[A>>2]=(c[z>>2]|0)+(R(c[r>>2]|0,c[s>>2]|0)|0);c[B>>2]=(c[A>>2]|0)+(R(c[r>>2]|0,c[s>>2]|0)|0);c[C>>2]=(c[B>>2]|0)+(R(c[r>>2]|0,c[s>>2]|0)|0);if(sb[c[o>>2]&63](c[y>>2]|0,48,16)|0){hf(c[F>>2]|0);c[n>>2]=46764;I=c[n>>2]|0;i=m;return I|0}Sw(c[D>>2]|0,-1,c[s>>2]|0)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break;a[(c[z>>2]|0)+(c[u>>2]|0)>>0]=c[u>>2];c[u>>2]=(c[u>>2]|0)+1}sb[c[p>>2]&63](c[y>>2]|0,c[B>>2]|0,c[D>>2]|0)|0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(c[s>>2]|0))break;o=(c[B>>2]|0)+(c[u>>2]|0)|0;a[o>>0]=d[o>>0]^d[(c[z>>2]|0)+(c[u>>2]|0)>>0];c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=c[s>>2];while(1){if((c[u>>2]|0)<=0)break;o=(c[D>>2]|0)+((c[u>>2]|0)-1)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;if(a[(c[D>>2]|0)+((c[u>>2]|0)-1)>>0]|0)break;c[u>>2]=(c[u>>2]|0)+-1}Sw(c[E>>2]|0,-1,c[s>>2]|0)|0;tb[c[q>>2]&15](c[y>>2]|0,c[E>>2]|0,c[A>>2]|0,c[B>>2]|0,1);if(vv(c[A>>2]|0,c[z>>2]|0,c[s>>2]|0)|0){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}if(vv(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}Sw(c[D>>2]|0,87,(c[s>>2]|0)-4|0)|0;a[(c[D>>2]|0)+((c[s>>2]|0)-1)>>0]=1;a[(c[D>>2]|0)+((c[s>>2]|0)-2)>>0]=0;a[(c[D>>2]|0)+((c[s>>2]|0)-3)>>0]=0;a[(c[D>>2]|0)+((c[s>>2]|0)-4)>>0]=0;Sw(c[E>>2]|0,87,(c[s>>2]|0)-4|0)|0;a[(c[E>>2]|0)+((c[s>>2]|0)-1)>>0]=1;a[(c[E>>2]|0)+((c[s>>2]|0)-2)>>0]=0;a[(c[E>>2]|0)+((c[s>>2]|0)-3)>>0]=0;a[(c[E>>2]|0)+((c[s>>2]|0)-4)>>0]=0;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(R(c[s>>2]|0,c[r>>2]|0)|0))break;o=c[u>>2]&255;a[(c[z>>2]|0)+(c[u>>2]|0)>>0]=o;a[(c[A>>2]|0)+(c[u>>2]|0)>>0]=o;c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(R(c[s>>2]|0,c[r>>2]|0)|0))break;sb[c[p>>2]&63](c[y>>2]|0,(c[B>>2]|0)+(c[u>>2]|0)|0,c[D>>2]|0)|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[s>>2]|0))break;o=(c[B>>2]|0)+((c[u>>2]|0)+(c[v>>2]|0))|0;a[o>>0]=d[o>>0]^d[(c[z>>2]|0)+((c[u>>2]|0)+(c[v>>2]|0))>>0];c[v>>2]=(c[v>>2]|0)+1}c[v>>2]=c[s>>2];while(1){if((c[v>>2]|0)<=0)break;o=(c[D>>2]|0)+((c[v>>2]|0)-1)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;if(a[(c[D>>2]|0)+((c[v>>2]|0)-1)>>0]|0)break;c[v>>2]=(c[v>>2]|0)+-1}c[u>>2]=(c[u>>2]|0)+(c[s>>2]|0)}tb[c[q>>2]&15](c[y>>2]|0,c[E>>2]|0,c[C>>2]|0,c[A>>2]|0,c[r>>2]|0);if(vv(c[C>>2]|0,c[B>>2]|0,R(c[s>>2]|0,c[r>>2]|0)|0)|0){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}if(vv(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}c[x>>2]=0;while(1){if((c[x>>2]|0)>=(c[r>>2]|0)){J=56;break}Sw(c[D>>2]|0,-1,c[s>>2]|0)|0;C=(c[D>>2]|0)+((c[s>>2]|0)-1)|0;a[C>>0]=(d[C>>0]|0)-(c[x>>2]|0);a[(c[D>>2]|0)+1>>0]=0;a[c[D>>2]>>0]=0;a[(c[D>>2]|0)+2>>0]=7;c[u>>2]=0;while(1){if((c[u>>2]|0)>=(R(c[s>>2]|0,c[r>>2]|0)|0))break;a[(c[z>>2]|0)+(c[u>>2]|0)>>0]=c[u>>2];c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>>2]|0)>=(R(c[s>>2]|0,c[r>>2]|0)|0))break;sb[c[p>>2]&63](c[y>>2]|0,(c[B>>2]|0)+(c[u>>2]|0)|0,c[D>>2]|0)|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[s>>2]|0))break;C=(c[B>>2]|0)+((c[u>>2]|0)+(c[v>>2]|0))|0;a[C>>0]=d[C>>0]^d[(c[z>>2]|0)+((c[u>>2]|0)+(c[v>>2]|0))>>0];c[v>>2]=(c[v>>2]|0)+1}c[v>>2]=c[s>>2];while(1){if((c[v>>2]|0)<=0)break;C=(c[D>>2]|0)+((c[v>>2]|0)-1)|0;a[C>>0]=(a[C>>0]|0)+1<<24>>24;if(a[(c[D>>2]|0)+((c[v>>2]|0)-1)>>0]|0)break;c[v>>2]=(c[v>>2]|0)+-1}c[u>>2]=(c[u>>2]|0)+(c[s>>2]|0)}Sw(c[E>>2]|0,-1,c[s>>2]|0)|0;C=(c[E>>2]|0)+((c[s>>2]|0)-1)|0;a[C>>0]=(d[C>>0]|0)-(c[x>>2]|0);a[(c[E>>2]|0)+1>>0]=0;a[c[E>>2]>>0]=0;a[(c[E>>2]|0)+2>>0]=7;tb[c[q>>2]&15](c[y>>2]|0,c[E>>2]|0,c[A>>2]|0,c[B>>2]|0,c[r>>2]|0);if(vv(c[A>>2]|0,c[z>>2]|0,R(c[s>>2]|0,c[r>>2]|0)|0)|0){J=52;break}if(vv(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){J=54;break}c[x>>2]=(c[x>>2]|0)+1}if((J|0)==52){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==54){hf(c[F>>2]|0);c[n>>2]=46876;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==56){hf(c[F>>2]|0);c[n>>2]=0;I=c[n>>2]|0;i=m;return I|0}return 0}function kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;d=i;i=i+352|0;if((i|0)>=(j|0))U();e=d+160|0;f=d+128|0;g=d+48|0;h=d+40|0;k=d+32|0;l=d+24|0;m=d+16|0;n=d+8|0;o=d;p=d+344|0;q=d+340|0;r=d+336|0;s=d+332|0;t=d+328|0;u=d+284|0;v=d+224|0;w=d+220|0;x=d+216|0;y=d+212|0;z=d+208|0;A=d+204|0;B=d+200|0;C=d+196|0;D=d+192|0;E=d+188|0;F=d+184|0;G=d+180|0;H=d+176|0;I=d+172|0;J=d+168|0;K=d+164|0;c[q>>2]=a;c[r>>2]=b;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[C>>2]=0;c[D>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;b=u;a=b+44|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));b=v;a=b+60|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));c[s>>2]=tj(c[q>>2]|0,t)|0;if(c[s>>2]|0){c[p>>2]=c[s>>2];L=c[p>>2]|0;i=d;return L|0}c[B>>2]=Gf(c[q>>2]|0,46978,0)|0;if(c[B>>2]|0?(c[A>>2]=Nf(c[B>>2]|0,1)|0,Ef(c[B>>2]|0),(c[A>>2]|0)==0):0){c[p>>2]=65;L=c[p>>2]|0;i=d;return L|0}c[B>>2]=Gf(c[q>>2]|0,46984,0)|0;if(!(c[B>>2]|0?(c[s>>2]=sj(c[B>>2]|0,I,0)|0,Ef(c[B>>2]|0),(c[s>>2]|0)!=0):0))M=8;do if((M|0)==8){c[B>>2]=Gf(c[q>>2]|0,46990,0)|0;if(c[B>>2]|0){c[I>>2]=c[I>>2]|32;Ef(c[B>>2]|0)}if(!((c[t>>2]|0)!=0|(c[A>>2]|0)!=0)){c[p>>2]=68;L=c[p>>2]|0;i=d;return L|0}c[s>>2]=Dh(c[t>>2]|0,c[A>>2]|0,u,t)|0;hf(c[A>>2]|0);c[A>>2]=0;if(!(c[s>>2]|0)){if(sf(1)|0){b=ii(c[u>>2]|0)|0;a=ji(c[u+4>>2]|0)|0;c[o>>2]=b;c[o+4>>2]=a;Le(47004,o);if(c[u+40>>2]|0){c[n>>2]=c[u+40>>2];Le(47029,n)}Pe(47051,c[u+8>>2]|0);Pe(47067,c[u+12>>2]|0);Pe(47083,c[u+16>>2]|0);Pe(47099,c[u+32>>2]|0);Pe(47115,c[u+36>>2]|0);en(47131,u+20|0,0)}c[C>>2]=rn(c[u>>2]|0,c[u+4>>2]|0,0,c[u+8>>2]|0,c[u+12>>2]|0,c[u+16>>2]|0)|0;a=c[C>>2]|0;b=c[I>>2]|0;if(c[I>>2]&4096|0)c[s>>2]=Zh(v,u,a,b)|0;else c[s>>2]=lr(v,u,a,b,c[t>>2]|0,y,z)|0;if(!(c[s>>2]|0)){c[w>>2]=Ep(0)|0;c[x>>2]=Ep(0)|0;if(fn(c[w>>2]|0,c[x>>2]|0,v+20|0,c[C>>2]|0)|0){c[m>>2]=47521;Je(47145,m)}c[F>>2]=ki(c[w>>2]|0,c[x>>2]|0,c[v+8>>2]|0)|0;do if((c[v+4>>2]|0)==1?!(c[I>>2]&2048|0):0){c[s>>2]=Rh(v+44|0,c[C>>2]|0,c[w>>2]|0,c[x>>2]|0,((c[I>>2]&1024|0)!=0^1^1)&1,J,K)|0;if(!(c[s>>2]|0)){c[G>>2]=Ep(0)|0;rp(c[G>>2]|0,c[J>>2]|0,c[K>>2]<<3)|0;c[J>>2]=0;break}c[p>>2]=c[s>>2];L=c[p>>2]|0;i=d;return L|0}else M=28;while(0);if((M|0)==28){if((c[y>>2]|0)==0?(c[y>>2]=Ep(0)|0,c[z>>2]=Ep(0)|0,fn(c[y>>2]|0,c[z>>2]|0,v+44|0,c[C>>2]|0)|0):0){c[l>>2]=47193;Je(47145,l)}c[G>>2]=ki(c[y>>2]|0,c[z>>2]|0,c[v+8>>2]|0)|0}c[H>>2]=c[v+56>>2];c[v+56>>2]=0;if(c[u+40>>2]|0?(c[k>>2]=c[u+40>>2],c[s>>2]=Rf(D,0,47523,k)|0,c[s>>2]|0):0)break;if(!(!(c[I>>2]&512|0)?!(c[I>>2]&4096|0):0)){if(c[I>>2]&512|0?c[I>>2]&4096|0:0)N=47562;else N=c[I>>2]&512|0?47534:47548;c[s>>2]=Rf(E,0,N,h)|0;if(c[s>>2]|0)break}if(c[I>>2]&512|0?c[u+40>>2]|0:0){b=c[r>>2]|0;a=c[E>>2]|0;O=c[v+8>>2]|0;P=c[v+12>>2]|0;Q=c[v+16>>2]|0;R=c[F>>2]|0;S=c[v+32>>2]|0;T=c[v+36>>2]|0;V=c[G>>2]|0;W=c[D>>2]|0;X=c[E>>2]|0;Y=c[v+8>>2]|0;Z=c[v+12>>2]|0;_=c[v+16>>2]|0;$=c[F>>2]|0;aa=c[v+32>>2]|0;ba=c[v+36>>2]|0;ca=c[G>>2]|0;da=c[H>>2]|0;c[g>>2]=c[D>>2];c[g+4>>2]=a;c[g+8>>2]=O;c[g+12>>2]=P;c[g+16>>2]=Q;c[g+20>>2]=R;c[g+24>>2]=S;c[g+28>>2]=T;c[g+32>>2]=V;c[g+36>>2]=W;c[g+40>>2]=X;c[g+44>>2]=Y;c[g+48>>2]=Z;c[g+52>>2]=_;c[g+56>>2]=$;c[g+60>>2]=aa;c[g+64>>2]=ba;c[g+68>>2]=ca;c[g+72>>2]=da;c[s>>2]=Rf(b,0,47582,g)|0}else{b=c[r>>2]|0;da=c[E>>2]|0;ca=c[G>>2]|0;ba=c[D>>2]|0;aa=c[E>>2]|0;$=c[G>>2]|0;_=c[H>>2]|0;c[f>>2]=c[D>>2];c[f+4>>2]=da;c[f+8>>2]=ca;c[f+12>>2]=ba;c[f+16>>2]=aa;c[f+20>>2]=$;c[f+24>>2]=_;c[s>>2]=Rf(b,0,47718,f)|0}if(((c[s>>2]|0)==0?sf(1)|0:0)?(Pe(47794,c[v+8>>2]|0),Pe(47810,c[v+12>>2]|0),Pe(47826,c[v+16>>2]|0),Pe(47842,c[F>>2]|0),Pe(47858,c[v+32>>2]|0),Pe(47874,c[v+36>>2]|0),Pe(47890,c[G>>2]|0),Pe(47906,c[H>>2]|0),c[I>>2]&4096|0):0)Le(47922,e)}}}while(0);qp(c[H>>2]|0);qp(c[G>>2]|0);qp(c[F>>2]|0);fi(v);nn(v+44|0);qp(c[v+56>>2]|0);fi(u);qp(c[w>>2]|0);qp(c[x>>2]|0);qp(c[y>>2]|0);qp(c[z>>2]|0);vn(c[C>>2]|0);Ef(c[E>>2]|0);Ef(c[D>>2]|0);c[p>>2]=c[s>>2];L=c[p>>2]|0;i=d;return L|0} +function lr(b,d,e,f,g,h,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+96|0;if((i|0)>=(j|0))U();m=l+16|0;n=l+8|0;o=l;p=l+80|0;q=l+76|0;r=l+72|0;s=l+68|0;t=l+64|0;u=l+60|0;v=l+56|0;w=l+44|0;x=l+40|0;y=l+36|0;z=l+32|0;A=l+28|0;B=l+24|0;C=l+20|0;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[v>>2]=k;c[A>>2]=Zn(c[(c[q>>2]|0)+8>>2]|0)|0;ln(w);if(c[s>>2]&32|0)c[x>>2]=1;else c[x>>2]=2;if((c[(c[r>>2]|0)+4>>2]|0)==1){k=Fp(256)|0;c[(c[p>>2]|0)+56>>2]=k;c[B>>2]=Wm(32,c[x>>2]|0)|0;k=c[B>>2]|0;a[k>>0]=a[k>>0]&127;k=c[B>>2]|0;a[k>>0]=a[k>>0]|64;k=(c[B>>2]|0)+31|0;a[k>>0]=a[k>>0]&248;Lo(c[(c[p>>2]|0)+56>>2]|0,c[B>>2]|0,32,0);hf(c[B>>2]|0)}else{B=et(c[(c[q>>2]|0)+32>>2]|0,c[x>>2]|0)|0;c[(c[p>>2]|0)+56>>2]=B}On(w,c[(c[p>>2]|0)+56>>2]|0,(c[q>>2]|0)+20|0,c[r>>2]|0);c[c[p>>2]>>2]=c[c[q>>2]>>2];c[(c[p>>2]|0)+4>>2]=c[(c[q>>2]|0)+4>>2];B=vp(c[(c[q>>2]|0)+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=B;B=vp(c[(c[q>>2]|0)+12>>2]|0)|0;c[(c[p>>2]|0)+12>>2]=B;B=vp(c[(c[q>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+16>>2]=B;ln((c[p>>2]|0)+20|0);mr((c[p>>2]|0)+20|0,(c[q>>2]|0)+20|0);B=vp(c[(c[q>>2]|0)+32>>2]|0)|0;c[(c[p>>2]|0)+32>>2]=B;B=vp(c[(c[q>>2]|0)+36>>2]|0)|0;c[(c[p>>2]|0)+36>>2]=B;ln((c[p>>2]|0)+44|0);c[y>>2]=Ep(c[A>>2]|0)|0;c[z>>2]=Ep(c[A>>2]|0)|0;if(fn(c[y>>2]|0,c[z>>2]|0,w,c[r>>2]|0)|0){c[o>>2]=47193;Je(47145,o)}do if((c[(c[q>>2]|0)+4>>2]|0)!=1){c[C>>2]=Ep(c[A>>2]|0)|0;o=c[C>>2]|0;r=c[(c[q>>2]|0)+8>>2]|0;if(!(c[c[q>>2]>>2]|0))Vn(o,r,c[z>>2]|0);else Vn(o,r,c[y>>2]|0);if((jo(c[C>>2]|0,c[z>>2]|0)|0)>=0){qp(c[C>>2]|0);mr((c[p>>2]|0)+44|0,w);if(!(sf(1)|0))break;Le(47235,m);break}if(!(c[c[q>>2]>>2]|0)){qp(c[z>>2]|0);c[z>>2]=c[C>>2]}else{qp(c[y>>2]|0);c[y>>2]=c[C>>2]}Vn(c[(c[p>>2]|0)+56>>2]|0,c[(c[q>>2]|0)+32>>2]|0,c[(c[p>>2]|0)+56>>2]|0);r=(c[p>>2]|0)+44|0;o=c[y>>2]|0;B=c[z>>2]|0;on(r,o,B,Jp(1)|0)|0;if(sf(1)|0)Le(47195,n)}else mr((c[p>>2]|0)+44|0,w);while(0);c[c[u>>2]>>2]=c[y>>2];c[c[v>>2]>>2]=c[z>>2];nn(w);if(c[s>>2]&16384|0){i=l;return 0}s=c[p>>2]|0;w=(c[t>>2]|0)-64|0;if((c[c[p>>2]>>2]|0)!=1){nr(s,w);i=l;return 0}else{or(s,w);i=l;return 0}return 0}function mr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;xp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;xp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;xp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function nr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;i=i+224|0;if((i|0)>=(j|0))U();e=d+168|0;f=d+24|0;g=d+16|0;h=d+8|0;k=d+164|0;l=d+160|0;m=d+104|0;n=d+100|0;o=d+88|0;p=d+84|0;q=d+80|0;r=d+76|0;s=d+72|0;t=d+28|0;c[k>>2]=a;c[l>>2]=b;c[n>>2]=Ep(c[l>>2]|0)|0;c[p>>2]=Ep(c[l>>2]|0)|0;c[q>>2]=Ep(c[l>>2]|0)|0;c[r>>2]=Ep(c[l>>2]|0)|0;c[s>>2]=Ep(c[l>>2]|0)|0;if(sf(1)|0)Le(47288,d);ln(o);b=e;a=c[k>>2]|0;u=b+44|0;do{c[b>>2]=c[a>>2];b=b+4|0;a=a+4|0}while((b|0)<(u|0));gi(t,e);b=m;a=t;u=b+44|0;do{c[b>>2]=c[a>>2];b=b+4|0;a=a+4|0}while((b|0)<(u|0));ln(m+44|0);mr(m+44|0,(c[k>>2]|0)+44|0);Hp(c[n>>2]|0,c[l>>2]|0,0);if(jt(c[n>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0)|0)Je(47302,h);if(kt(c[n>>2]|0,m,c[r>>2]|0,c[s>>2]|0)|0)Je(47332,g);if(!(sf(1)|0)){v=m+44|0;nn(v);fi(m);nn(o);w=c[s>>2]|0;qp(w);x=c[r>>2]|0;qp(x);y=c[q>>2]|0;qp(y);z=c[p>>2]|0;qp(z);A=c[n>>2]|0;qp(A);i=d;return}Le(47370,f);v=m+44|0;nn(v);fi(m);nn(o);w=c[s>>2]|0;qp(w);x=c[r>>2]|0;qp(x);y=c[q>>2]|0;qp(y);z=c[p>>2]|0;qp(z);A=c[n>>2]|0;qp(A);i=d;return}function or(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+224|0;if((i|0)>=(j|0))U();f=e+168|0;g=e+24|0;h=e+16|0;k=e+8|0;l=e+164|0;m=e+160|0;n=e+104|0;o=e+100|0;p=e+88|0;q=e+84|0;r=e+80|0;s=e+76|0;t=e+32|0;u=e+28|0;c[l>>2]=b;c[m>>2]=d;if(sf(1)|0)Le(47288,e);ln(p);d=f;b=c[l>>2]|0;v=d+44|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(v|0));gi(t,f);d=n;b=t;v=d+44|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(v|0));ln(n+44|0);mr(n+44|0,(c[l>>2]|0)+44|0);if((c[(c[l>>2]|0)+4>>2]|0)==1){c[o>>2]=Ep(256)|0;c[u>>2]=Um(32,0)|0;b=c[u>>2]|0;a[b>>0]=a[b>>0]&127;b=c[u>>2]|0;a[b>>0]=a[b>>0]|64;b=(c[u>>2]|0)+31|0;a[b>>0]=a[b>>0]&248;Lo(c[o>>2]|0,c[u>>2]|0,32,0);hf(c[u>>2]|0)}else{c[o>>2]=Ep(c[m>>2]|0)|0;Hp(c[o>>2]|0,c[m>>2]|0,0)}c[s>>2]=rn(c[n>>2]|0,c[n+4>>2]|0,0,c[n+8>>2]|0,c[n+12>>2]|0,c[n+16>>2]|0)|0;c[q>>2]=Ep(0)|0;c[r>>2]=Ep(0)|0;On(p,c[o>>2]|0,n+44|0,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)On(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(fn(c[q>>2]|0,0,p,c[s>>2]|0)|0)Je(47405,k);On(p,c[o>>2]|0,n+20|0,c[s>>2]|0);On(p,c[(c[l>>2]|0)+56>>2]|0,p,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)On(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(fn(c[r>>2]|0,0,p,c[s>>2]|0)|0)Je(47453,h);if(jo(c[q>>2]|0,c[r>>2]|0)|0)Je(47502,g);else{qp(c[q>>2]|0);qp(c[r>>2]|0);vn(c[s>>2]|0);nn(n+44|0);fi(n);nn(p);qp(c[o>>2]|0);i=e;return}}function pr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=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;b=i;i=i+176|0;if((i|0)>=(j|0))U();d=b+72|0;e=b+64|0;f=b+56|0;g=b+40|0;h=b;k=b+168|0;l=b+164|0;m=b+160|0;n=b+156|0;o=b+152|0;p=b+148|0;q=b+144|0;r=b+140|0;s=b+80|0;t=b+76|0;c[l>>2]=a;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[t>>2]=0;a=s;u=a+60|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(u|0));c[n>>2]=Gf(c[l>>2]|0,46984,0)|0;if(!(c[n>>2]|0?(c[m>>2]=sj(c[n>>2]|0,o,0)|0,(c[m>>2]|0)!=0):0))v=3;do if((v|0)==3){a=c[l>>2]|0;if(c[o>>2]&512|0){c[h>>2]=s+8;c[h+4>>2]=s+12;c[h+8>>2]=s+16;c[h+12>>2]=q;c[h+16>>2]=s+32;c[h+20>>2]=s+36;c[h+24>>2]=r;c[h+28>>2]=s+56;c[h+32>>2]=0;c[m>>2]=_f(a,0,47957,h)|0}else{c[g>>2]=r;c[g+4>>2]=s+56;c[g+8>>2]=0;c[m>>2]=_f(a,0,47976,g)|0}if(!(c[m>>2]|0)){Ef(c[n>>2]|0);c[n>>2]=Gf(c[l>>2]|0,46978,5)|0;if((c[n>>2]|0?(c[p>>2]=Nf(c[n>>2]|0,1)|0,c[p>>2]|0):0)?(c[m>>2]=Gh(c[p>>2]|0,s,s+4|0,s+8|0,s+12|0,s+16|0,q,s+32|0,s+36|0)|0,c[m>>2]|0):0){c[k>>2]=c[m>>2];w=c[k>>2]|0;i=b;return w|0}if(c[q>>2]|0?(ln(s+20|0),c[m>>2]=mi(s+20|0,c[q>>2]|0)|0,c[m>>2]|0):0)break;if(!(c[p>>2]|0)){c[s>>2]=c[o>>2]&4096|0?2:0;c[s+4>>2]=c[o>>2]&4096|0?1:0}if(sf(1)|0){a=ii(c[s>>2]|0)|0;u=ji(c[s+4>>2]|0)|0;c[f>>2]=a;c[f+4>>2]=u;Le(47982,f);if(c[s+40>>2]|0){c[e>>2]=c[s+40>>2];Le(48006,e)}Pe(48027,c[s+8>>2]|0);Pe(48043,c[s+12>>2]|0);Pe(48059,c[s+16>>2]|0);en(48075,s+20|0,0);Pe(48089,c[s+32>>2]|0);Pe(48105,c[s+36>>2]|0);Pe(48121,c[r>>2]|0);if(!(Jg()|0))Pe(48137,c[s+56>>2]|0)}if((((((c[s+8>>2]|0?c[s+12>>2]|0:0)?c[s+16>>2]|0:0)?c[s+20>>2]|0:0)?c[s+32>>2]|0:0)?c[s+36>>2]|0:0)?c[s+56>>2]|0:0){c[t>>2]=rn(c[s>>2]|0,c[s+4>>2]|0,0,c[s+8>>2]|0,c[s+12>>2]|0,c[s+16>>2]|0)|0;if(!(c[r>>2]|0)){c[m>>2]=68;break}ln(s+44|0);if((c[(c[t>>2]|0)+4>>2]|0)==1)c[m>>2]=Wh(c[r>>2]|0,c[t>>2]|0,s+44|0,0,0)|0;else c[m>>2]=mi(s+44|0,c[r>>2]|0)|0;if(c[m>>2]|0)break;if(!(qr(s,c[t>>2]|0,c[o>>2]|0)|0))break;c[m>>2]=7;break}c[m>>2]=68}}while(0);vn(c[t>>2]|0);Gp(c[s+8>>2]|0);Gp(c[s+12>>2]|0);Gp(c[s+16>>2]|0);Gp(c[q>>2]|0);nn(s+20|0);Gp(c[s+32>>2]|0);Gp(c[s+36>>2]|0);Gp(c[r>>2]|0);nn(s+44|0);Gp(c[s+56>>2]|0);hf(c[p>>2]|0);Ef(c[n>>2]|0);if(sf(1)|0){c[d>>2]=ot(c[m>>2]|0)|0;Le(48440,d)}c[k>>2]=c[m>>2];w=c[k>>2]|0;i=b;return w|0}function qr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+64|0;g=e+56|0;h=e+48|0;k=e+40|0;l=e+32|0;m=e+24|0;n=e+16|0;o=e+8|0;p=e;q=e+108|0;r=e+104|0;s=e+100|0;t=e+96|0;u=e+84|0;v=e+80|0;w=e+76|0;x=e+72|0;y=e+68|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;c[t>>2]=1;c[x>>2]=0;c[y>>2]=0;ln(u);c[v>>2]=Ep(0)|0;if((c[c[r>>2]>>2]|0)==1)c[w>>2]=0;else c[w>>2]=Ep(0)|0;a:do if(!(Qn((c[q>>2]|0)+20|0,c[r>>2]|0)|0)){if(sf(1)|0)Le(48153,p)}else{if(!(io(c[(c[q>>2]|0)+20+8>>2]|0,0)|0)){if(!(sf(1)|0))break;Le(48205,o);break}if((c[(c[q>>2]|0)+4>>2]|0)!=1?(On(u,c[(c[q>>2]|0)+32>>2]|0,(c[q>>2]|0)+20|0,c[r>>2]|0),io(c[u+8>>2]|0,0)|0):0){if(!(sf(1)|0))break;Le(48250,n);break}if(!(io(c[(c[q>>2]|0)+44+8>>2]|0,0)|0)){if(!(sf(1)|0))break;Le(48297,m);break}if(!(ni(u,c[r>>2]|0,(c[q>>2]|0)+20|0,c[(c[q>>2]|0)+56>>2]|0)|0)){if(!(sf(1)|0))break;Le(48343,l);break}if(fn(c[v>>2]|0,c[w>>2]|0,u,c[r>>2]|0)|0){if(!(sf(1)|0))break;Le(48297,k);break}do if(!(c[s>>2]&4096)){if(!(io(c[(c[q>>2]|0)+44+8>>2]|0,1)|0)){if(!(jo(c[v>>2]|0,c[(c[q>>2]|0)+44>>2]|0)|0)){if(c[w>>2]|0)break;if(!(jo(c[w>>2]|0,c[(c[q>>2]|0)+44+4>>2]|0)|0))break}if(!(sf(1)|0))break a;Le(48380,h);break a}c[x>>2]=Ep(0)|0;c[y>>2]=Ep(0)|0;if(fn(c[x>>2]|0,c[y>>2]|0,(c[q>>2]|0)+44|0,c[r>>2]|0)|0){if(!(sf(1)|0))break a;Le(48297,g);break a}if((jo(c[v>>2]|0,c[x>>2]|0)|0)==0?(jo(c[w>>2]|0,c[y>>2]|0)|0)==0:0)break;if(!(sf(1)|0))break a;Le(48380,f);break a}while(0);c[t>>2]=0}while(0);qp(c[x>>2]|0);qp(c[v>>2]|0);qp(c[w>>2]|0);qp(c[y>>2]|0);nn(u);i=e;return c[t>>2]|0}function rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+256|0;if((i|0)>=(j|0))U();f=e+72|0;g=e+64|0;h=e+56|0;k=e+48|0;l=e+40|0;m=e+32|0;n=e;o=e+248|0;p=e+244|0;q=e+240|0;r=e+236|0;s=e+232|0;t=e+192|0;u=e+184|0;v=e+180|0;w=e+176|0;x=e+172|0;y=e+168|0;z=e+164|0;A=e+160|0;B=e+104|0;C=e+96|0;D=e+84|0;E=e+80|0;F=e+76|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[C>>2]=0;d=B;b=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));yj(t,0,sr(c[r>>2]|0)|0);c[s>>2]=Aj(c[q>>2]|0,A,t)|0;do if(!(c[s>>2]|0)){if(sf(1)|0)Pe(48463,c[A>>2]|0);if(c[A>>2]|0?c[(c[A>>2]|0)+12>>2]&4|0:0){c[s>>2]=79;break}q=c[r>>2]|0;c[n>>2]=B+8;c[n+4>>2]=B+12;c[n+8>>2]=B+16;c[n+12>>2]=w;c[n+16>>2]=B+32;c[n+20>>2]=B+36;c[n+24>>2]=x;c[n+28>>2]=0;c[s>>2]=_f(q,0,48480,n)|0;if(!(c[s>>2]|0)){if(c[w>>2]|0?(ln(B+20|0),c[s>>2]=mi(B+20|0,c[w>>2]|0)|0,c[s>>2]|0):0)break;Ef(c[u>>2]|0);c[u>>2]=Gf(c[r>>2]|0,46978,5)|0;if((c[u>>2]|0?(c[v>>2]=Nf(c[u>>2]|0,1)|0,c[v>>2]|0):0)?(c[s>>2]=Dh(0,c[v>>2]|0,B,0)|0,c[s>>2]|0):0){c[o>>2]=c[s>>2];G=c[o>>2]|0;i=e;return G|0}if(!(c[v>>2]|0)){c[B>>2]=0;c[B+4>>2]=0}if(sf(1)|0){q=ii(c[B>>2]|0)|0;d=ji(c[B+4>>2]|0)|0;c[m>>2]=q;c[m+4>>2]=d;Le(48496,m);if(c[B+40>>2]|0){c[l>>2]=c[B+40>>2];Le(48521,l)}Pe(48543,c[B+8>>2]|0);Pe(48560,c[B+12>>2]|0);Pe(48577,c[B+16>>2]|0);en(48594,B+20|0,0);Pe(48609,c[B+32>>2]|0);Pe(48626,c[B+36>>2]|0);Pe(48643,c[x>>2]|0)}if(((((c[B+8>>2]|0?c[B+12>>2]|0:0)?c[B+16>>2]|0:0)?c[B+20>>2]|0:0)?c[B+32>>2]|0:0)?(c[B+36>>2]|0)!=0&(c[x>>2]|0)!=0:0){if(c[x>>2]|0?(ln(B+44|0),c[s>>2]=mi(B+44|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;c[C>>2]=rn(c[B>>2]|0,c[B+4>>2]|0,0,c[B+8>>2]|0,c[B+12>>2]|0,c[B+16>>2]|0)|0;c[E>>2]=Ep(0)|0;c[F>>2]=Ep(0)|0;ln(D);On(D,c[A>>2]|0,B+44|0,c[C>>2]|0);if(fn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)Je(48660,k);c[y>>2]=ki(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;On(D,c[A>>2]|0,B+20|0,c[C>>2]|0);if(fn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)Je(48708,h);else{c[z>>2]=ki(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;qp(c[E>>2]|0);qp(c[F>>2]|0);nn(D);d=c[p>>2]|0;q=c[z>>2]|0;c[g>>2]=c[y>>2];c[g+4>>2]=q;c[s>>2]=Rf(d,0,48755,g)|0;break}}c[s>>2]=68}}while(0);Gp(c[B+8>>2]|0);Gp(c[B+12>>2]|0);Gp(c[B+16>>2]|0);Gp(c[w>>2]|0);nn(B+20|0);Gp(c[B+32>>2]|0);Gp(c[B+36>>2]|0);Gp(c[x>>2]|0);nn(B+44|0);Gp(c[A>>2]|0);Gp(c[y>>2]|0);Gp(c[z>>2]|0);hf(c[v>>2]|0);vn(c[C>>2]|0);zj(t);if(sf(1)|0){c[f>>2]=ot(c[s>>2]|0)|0;Le(48781,f)}c[o>>2]=c[s>>2];G=c[o>>2]|0;i=e;return G|0}function sr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;k=b;c[e>>2]=a;c[h>>2]=0;c[f>>2]=Gf(c[e>>2]|0,48461,1)|0;if(c[f>>2]|0){c[g>>2]=Of(c[f>>2]|0,1,5)|0;Ef(c[f>>2]|0);if(c[g>>2]|0){c[h>>2]=Zn(c[g>>2]|0)|0;Gp(c[g>>2]|0)}}else{c[f>>2]=Gf(c[e>>2]|0,46978,5)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[k>>2]=Nf(c[f>>2]|0,1)|0;Ef(c[f>>2]|0);if(!(c[k>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}if(Dh(0,c[k>>2]|0,0,h)|0)c[h>>2]=0;hf(c[k>>2]|0)}c[d>>2]=c[h>>2];l=c[d>>2]|0;i=b;return l|0}function tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+256|0;if((i|0)>=(j|0))U();f=e+72|0;g=e+64|0;h=e+56|0;k=e+48|0;l=e+40|0;m=e+8|0;n=e;o=e+248|0;p=e+244|0;q=e+240|0;r=e+236|0;s=e+232|0;t=e+192|0;u=e+188|0;v=e+184|0;w=e+124|0;x=e+120|0;y=e+116|0;z=e+112|0;A=e+100|0;B=e+88|0;C=e+84|0;D=e+80|0;E=e+76|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[u>>2]=0;c[v>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[C>>2]=0;d=w;b=d+60|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));ln(A);ln(B);yj(t,1,sr(c[r>>2]|0)|0);c[s>>2]=wj(c[q>>2]|0,12912,u,t)|0;do if((c[s>>2]|0)==0?(q=c[u>>2]|0,c[n>>2]=v,c[n+4>>2]=0,c[s>>2]=_f(q,0,48803,n)|0,(c[s>>2]|0)==0):0){if(sf(1)|0)Pe(48805,c[v>>2]|0);if(c[v>>2]|0?c[(c[v>>2]|0)+12>>2]&4|0:0){c[s>>2]=79;break}q=c[r>>2]|0;c[m>>2]=w+8;c[m+4>>2]=w+12;c[m+8>>2]=w+16;c[m+12>>2]=x;c[m+16>>2]=w+32;c[m+20>>2]=w+36;c[m+24>>2]=w+56;c[m+28>>2]=0;c[s>>2]=_f(q,0,48822,m)|0;if(!(c[s>>2]|0)){if(c[x>>2]|0?(ln(w+20|0),c[s>>2]=mi(w+20|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;Ef(c[u>>2]|0);c[u>>2]=Gf(c[r>>2]|0,46978,5)|0;if((c[u>>2]|0?(c[y>>2]=Nf(c[u>>2]|0,1)|0,c[y>>2]|0):0)?(c[s>>2]=Dh(0,c[y>>2]|0,w,0)|0,c[s>>2]|0):0){c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}if(!(c[y>>2]|0)){c[w>>2]=0;c[w+4>>2]=0}if(sf(1)|0){q=ii(c[w>>2]|0)|0;d=ji(c[w+4>>2]|0)|0;c[l>>2]=q;c[l+4>>2]=d;Le(48838,l);if(c[w+40>>2]|0){c[k>>2]=c[w+40>>2];Le(48863,k)}Pe(48885,c[w+8>>2]|0);Pe(48902,c[w+12>>2]|0);Pe(48919,c[w+16>>2]|0);en(48936,w+20|0,0);Pe(48951,c[w+32>>2]|0);Pe(48968,c[w+36>>2]|0);if(!(Jg()|0))Pe(48985,c[w+56>>2]|0)}if((((((c[w+8>>2]|0?c[w+12>>2]|0:0)?c[w+16>>2]|0:0)?c[w+20>>2]|0:0)?c[w+32>>2]|0:0)?c[w+36>>2]|0:0)?c[w+56>>2]|0:0){c[s>>2]=mi(A,c[v>>2]|0)|0;if(c[s>>2]|0){nn(A);c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}c[z>>2]=rn(c[w>>2]|0,c[w+4>>2]|0,0,c[w+8>>2]|0,c[w+12>>2]|0,c[w+16>>2]|0)|0;On(B,c[w+56>>2]|0,A,c[z>>2]|0);c[D>>2]=Ep(0)|0;c[E>>2]=Ep(0)|0;if(fn(c[D>>2]|0,c[E>>2]|0,B,c[z>>2]|0)|0)Je(49002,h);c[C>>2]=ki(c[D>>2]|0,c[E>>2]|0,c[w+8>>2]|0)|0;if(c[C>>2]|0)c[s>>2]=0;else c[s>>2]=rt()|0;qp(c[D>>2]|0);qp(c[E>>2]|0);if(sf(1)|0)Pe(49042,c[C>>2]|0);if(c[s>>2]|0)break;d=c[p>>2]|0;c[g>>2]=c[C>>2];c[s>>2]=Rf(d,0,49059,g)|0;break}c[s>>2]=68}}while(0);nn(B);nn(A);Gp(c[C>>2]|0);Gp(c[w+8>>2]|0);Gp(c[w+12>>2]|0);Gp(c[w+16>>2]|0);Gp(c[x>>2]|0);nn(w+20|0);Gp(c[w+32>>2]|0);Gp(c[w+36>>2]|0);Gp(c[w+56>>2]|0);Gp(c[v>>2]|0);hf(c[y>>2]|0);Ef(c[u>>2]|0);vn(c[z>>2]|0);zj(t);if(sf(1)|0){c[f>>2]=ot(c[s>>2]|0)|0;Le(49070,f)}c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}function ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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+272|0;if((i|0)>=(j|0))U();f=e+104|0;g=e+96|0;h=e+88|0;k=e+80|0;l=e+72|0;m=e+56|0;n=e+40|0;o=e;p=e+256|0;q=e+252|0;r=e+248|0;s=e+244|0;t=e+240|0;u=e+200|0;v=e+192|0;w=e+188|0;x=e+184|0;y=e+180|0;z=e+176|0;A=e+116|0;B=e+112|0;C=e+108|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[B>>2]=0;c[C>>2]=0;d=A;b=d+60|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));yj(u,2,0);c[t>>2]=Aj(c[r>>2]|0,v,u)|0;do if(!(c[t>>2]|0)){if(sf(1)|0)Pe(49092,c[v>>2]|0);r=c[s>>2]|0;if(c[u+12>>2]&512|0){c[o>>2]=A+8;c[o+4>>2]=A+12;c[o+8>>2]=A+16;c[o+12>>2]=y;c[o+16>>2]=A+32;c[o+20>>2]=A+36;c[o+24>>2]=z;c[o+28>>2]=A+56;c[o+32>>2]=0;c[t>>2]=_f(r,0,47957,o)|0}else{c[n>>2]=z;c[n+4>>2]=A+56;c[n+8>>2]=0;c[t>>2]=_f(r,0,47976,n)|0}if(!(c[t>>2]|0)){if(c[y>>2]|0?(ln(A+20|0),c[t>>2]=mi(A+20|0,c[y>>2]|0)|0,c[t>>2]|0):0)break;Ef(c[w>>2]|0);c[w>>2]=Gf(c[s>>2]|0,46978,5)|0;if((c[w>>2]|0?(c[x>>2]=Nf(c[w>>2]|0,1)|0,c[x>>2]|0):0)?(c[t>>2]=Dh(0,c[x>>2]|0,A,0)|0,c[t>>2]|0):0){c[p>>2]=c[t>>2];D=c[p>>2]|0;i=e;return D|0}if(!(c[x>>2]|0)){c[A>>2]=c[u+12>>2]&4096|0?2:0;c[A+4>>2]=c[u+12>>2]&4096|0?1:0}if(sf(1)|0){r=ii(c[A>>2]|0)|0;d=ji(c[A+4>>2]|0)|0;b=c[u+12>>2]&4096|0?49108:76084;c[m>>2]=r;c[m+4>>2]=d;c[m+8>>2]=b;Le(49115,m);if(c[A+40>>2]|0){c[l>>2]=c[A+40>>2];Le(49141,l)}Pe(49162,c[A+8>>2]|0);Pe(49178,c[A+12>>2]|0);Pe(49194,c[A+16>>2]|0);en(49210,A+20|0,0);Pe(49224,c[A+32>>2]|0);Pe(49240,c[A+36>>2]|0);Pe(49256,c[z>>2]|0);if(!(Jg()|0))Pe(49272,c[A+56>>2]|0)}if((((((c[A+8>>2]|0?c[A+12>>2]|0:0)?c[A+16>>2]|0:0)?c[A+20>>2]|0:0)?c[A+32>>2]|0:0)?c[A+36>>2]|0:0)?c[A+56>>2]|0:0){c[B>>2]=Ep(0)|0;c[C>>2]=Ep(0)|0;if(c[u+12>>2]&4096|0){c[t>>2]=ci(c[v>>2]|0,A,c[B>>2]|0,c[C>>2]|0,c[u+16>>2]|0,c[z>>2]|0)|0;if(c[t>>2]|0)break;b=c[q>>2]|0;d=c[C>>2]|0;c[k>>2]=c[B>>2];c[k+4>>2]=d;c[t>>2]=Rf(b,0,49288,k)|0;break}b=c[v>>2]|0;d=c[B>>2]|0;r=c[C>>2]|0;if(c[u+12>>2]&8192|0){c[t>>2]=lt(b,A,d,r)|0;if(c[t>>2]|0)break;a=c[q>>2]|0;E=c[C>>2]|0;c[h>>2]=c[B>>2];c[h+4>>2]=E;c[t>>2]=Rf(a,0,49315,h)|0;break}else{c[t>>2]=jt(b,A,d,r,c[u+12>>2]|0,c[u+16>>2]|0)|0;if(c[t>>2]|0)break;r=c[q>>2]|0;d=c[C>>2]|0;c[g>>2]=c[B>>2];c[g+4>>2]=d;c[t>>2]=Rf(r,0,49341,g)|0;break}}c[t>>2]=68}}while(0);Gp(c[A+8>>2]|0);Gp(c[A+12>>2]|0);Gp(c[A+16>>2]|0);Gp(c[y>>2]|0);nn(A+20|0);Gp(c[A+32>>2]|0);Gp(c[A+36>>2]|0);Gp(c[z>>2]|0);nn(A+44|0);Gp(c[A+56>>2]|0);Gp(c[B>>2]|0);Gp(c[C>>2]|0);hf(c[x>>2]|0);Gp(c[v>>2]|0);Ef(c[w>>2]|0);zj(u);if(sf(1)|0){c[f>>2]=ot(c[t>>2]|0)|0;Le(49368,f)}c[p>>2]=c[t>>2];D=c[p>>2]|0;i=e;return D|0}function vr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+272|0;if((i|0)>=(j|0))U();f=e+80|0;g=e+72|0;h=e+56|0;k=e+48|0;l=e+16|0;m=e;n=e+256|0;o=e+252|0;p=e+248|0;q=e+244|0;r=e+240|0;s=e+200|0;t=e+192|0;u=e+188|0;v=e+184|0;w=e+180|0;x=e+176|0;y=e+172|0;z=e+168|0;A=e+112|0;B=e+104|0;C=e+100|0;D=e+96|0;E=e+92|0;F=e+88|0;G=e+84|0;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;d=A;b=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));yj(s,3,sr(c[q>>2]|0)|0);c[r>>2]=Aj(c[p>>2]|0,z,s)|0;a:do if(!(c[r>>2]|0)){if(sf(1)|0)Pe(49389,c[z>>2]|0);c[r>>2]=vj(c[o>>2]|0,12912,t,B)|0;if((c[r>>2]|0)==0?(p=c[t>>2]|0,d=c[B>>2]&4096|0?49405:46975,c[m>>2]=x,c[m+4>>2]=y,c[m+8>>2]=0,c[r>>2]=_f(p,0,d,m)|0,(c[r>>2]|0)==0):0){if(sf(1)|0){Pe(49409,c[x>>2]|0);Pe(49425,c[y>>2]|0)}if(c[s+12>>2]&4096^c[B>>2]&4096|0){c[r>>2]=70;break}d=c[q>>2]|0;if(c[s+12>>2]&512|0){c[l>>2]=A+8;c[l+4>>2]=A+12;c[l+8>>2]=A+16;c[l+12>>2]=v;c[l+16>>2]=A+32;c[l+20>>2]=A+32;c[l+24>>2]=w;c[l+28>>2]=0;c[r>>2]=_f(d,0,49441,l)|0}else{c[k>>2]=w;c[k+4>>2]=0;c[r>>2]=_f(d,0,49457,k)|0}if(!(c[r>>2]|0)){if(c[v>>2]|0?(ln(A+20|0),c[r>>2]=mi(A+20|0,c[v>>2]|0)|0,c[r>>2]|0):0)break;Ef(c[t>>2]|0);c[t>>2]=Gf(c[q>>2]|0,46978,5)|0;if((c[t>>2]|0?(c[u>>2]=Nf(c[t>>2]|0,1)|0,c[u>>2]|0):0)?(c[r>>2]=Dh(0,c[u>>2]|0,A,0)|0,c[r>>2]|0):0){c[n>>2]=c[r>>2];H=c[n>>2]|0;i=e;return H|0}if(!(c[u>>2]|0)){c[A>>2]=c[B>>2]&4096|0?2:0;c[A+4>>2]=c[B>>2]&4096|0?1:0}if(sf(1)|0){d=ii(c[A>>2]|0)|0;p=ji(c[A+4>>2]|0)|0;b=c[B>>2]&4096|0?49108:76084;c[h>>2]=d;c[h+4>>2]=p;c[h+8>>2]=b;Le(49460,h);if(c[A+40>>2]|0){c[g>>2]=c[A+40>>2];Le(49486,g)}Pe(49507,c[A+8>>2]|0);Pe(49523,c[A+12>>2]|0);Pe(49539,c[A+16>>2]|0);en(49555,A+20|0,0);Pe(49569,c[A+32>>2]|0);Pe(49585,c[A+36>>2]|0);Pe(49601,c[w>>2]|0)}if(((((c[A+8>>2]|0?c[A+12>>2]|0:0)?c[A+16>>2]|0:0)?c[A+20>>2]|0:0)?c[A+32>>2]|0:0)?(c[A+36>>2]|0)!=0&(c[w>>2]|0)!=0:0){if(c[B>>2]&4096|0){c[r>>2]=ei(c[z>>2]|0,A,c[x>>2]|0,c[y>>2]|0,c[s+16>>2]|0,c[w>>2]|0)|0;break}b=(c[B>>2]&8192|0)!=0;ln(A+44|0);if(b){c[r>>2]=mi(A+44|0,c[w>>2]|0)|0;if(c[r>>2]|0)break;c[r>>2]=mt(c[z>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;break}if((c[A+4>>2]|0)==1){c[C>>2]=rn(c[A>>2]|0,c[A+4>>2]|0,0,c[A+8>>2]|0,c[A+12>>2]|0,c[A+16>>2]|0)|0;c[r>>2]=Wh(c[w>>2]|0,c[C>>2]|0,A+44|0,0,0)|0;vn(c[C>>2]|0)}else c[r>>2]=mi(A+44|0,c[w>>2]|0)|0;if(c[r>>2]|0)break;do if(c[z>>2]|0){if(!(c[(c[z>>2]|0)+12>>2]&4))break;c[F>>2]=Zn(c[A+32>>2]|0)|0;c[D>>2]=tp(c[z>>2]|0,E)|0;c[r>>2]=Mo(G,5,c[D>>2]|0,(((c[E>>2]|0)+7|0)>>>0)/8|0,0)|0;if(c[r>>2]|0)break a;if((c[E>>2]|0)>>>0>(c[F>>2]|0)>>>0)fo(c[G>>2]|0,c[G>>2]|0,(c[E>>2]|0)-(c[F>>2]|0)|0);c[r>>2]=kt(c[G>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;Gp(c[G>>2]|0);break a}while(0);c[r>>2]=kt(c[z>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;break}c[r>>2]=68}}}while(0);Gp(c[A+8>>2]|0);Gp(c[A+12>>2]|0);Gp(c[A+16>>2]|0);Gp(c[v>>2]|0);nn(A+20|0);Gp(c[A+32>>2]|0);Gp(c[A+36>>2]|0);Gp(c[w>>2]|0);nn(A+44|0);Gp(c[z>>2]|0);Gp(c[x>>2]|0);Gp(c[y>>2]|0);hf(c[u>>2]|0);Ef(c[t>>2]|0);zj(s);if(sf(1)|0){if(c[r>>2]|0)I=ot(c[r>>2]|0)|0;else I=49617;c[f>>2]=I;Le(49622,f)}c[n>>2]=c[r>>2];H=c[n>>2]|0;i=e;return H|0}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e;c[g>>2]=a;c[e+4>>2]=b;c[h>>2]=d;if((c[g>>2]|0)!=18){c[f>>2]=4;k=c[f>>2]|0;i=e;return k|0}else{c[f>>2]=xr(c[h>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}return 0}function xr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=49643;c[g>>2]=0;if(!(c[g>>2]|0)){c[d>>2]=0;h=c[d>>2]|0;i=b;return h|0}if(c[e>>2]|0)Cb[c[e>>2]&1](49653,18,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;h=c[d>>2]|0;i=b;return h|0}function yr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+208|0;if((i|0)>=(j|0))U();f=e+88|0;g=e+80|0;h=e+72|0;k=e+64|0;l=e+32|0;m=e;n=e+172|0;o=e+168|0;p=e+164|0;q=e+160|0;r=e+132|0;s=e+128|0;t=e+124|0;u=e+120|0;v=e+116|0;w=e+112|0;x=e+176|0;y=e+108|0;z=e+104|0;A=e+100|0;B=e+96|0;c[n>>2]=b;c[o>>2]=d;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>>2]|0)>=7)break;c[r+(c[s>>2]<<2)>>2]=0;c[s>>2]=(c[s>>2]|0)+1}c[q>>2]=Gf(c[o>>2]|0,46984,0)|0;if(!(c[q>>2]|0?(c[p>>2]=sj(c[q>>2]|0,u,0)|0,(c[p>>2]|0)!=0):0))C=6;a:do if((C|0)==6){d=(c[u>>2]&4096|0)!=0;b=c[o>>2]|0;do if(c[u>>2]&512|0){D=r+4|0;E=r+8|0;F=r+12|0;G=r+16|0;H=r+20|0;I=r+24|0;if(d){c[m>>2]=r;c[m+4>>2]=D;c[m+8>>2]=E;c[m+12>>2]=F;c[m+16>>2]=G;c[m+20>>2]=H;c[m+24>>2]=I;c[m+28>>2]=0;c[p>>2]=_f(b,0,49660,m)|0;break}else{c[l>>2]=r;c[l+4>>2]=D;c[l+8>>2]=E;c[l+12>>2]=F;c[l+16>>2]=G;c[l+20>>2]=H;c[l+24>>2]=I;c[l+28>>2]=0;c[p>>2]=_f(b,0,49675,l)|0;break}}else{I=r+24|0;if(d){c[k>>2]=I;c[k+4>>2]=0;c[p>>2]=_f(b,0,49457,k)|0;break}else{c[h>>2]=I;c[h+4>>2]=0;c[p>>2]=_f(b,0,49689,h)|0;break}}while(0);if(!(c[p>>2]|0)){Ef(c[q>>2]|0);c[q>>2]=Gf(c[o>>2]|0,46978,5)|0;if((c[q>>2]|0?(c[t>>2]=Nf(c[q>>2]|0,1)|0,c[t>>2]|0):0)?(c[p>>2]=Gh(c[t>>2]|0,v,w,r,r+4|0,r+8|0,r+12|0,r+16|0,r+20|0)|0,c[p>>2]|0):0)break;if(!(c[t>>2]|0)){c[v>>2]=c[u>>2]&4096|0?2:0;c[w>>2]=c[u>>2]&4096|0?1:0}c[s>>2]=0;while(1){if((c[s>>2]|0)>=7)break;if(!(c[r+(c[s>>2]<<2)>>2]|0)){C=22;break}Yn(c[r+(c[s>>2]<<2)>>2]|0);c[s>>2]=(c[s>>2]|0)+1}if((C|0)==22){c[p>>2]=68;break}if(c[u>>2]&4096|0){if((c[w>>2]|0)==1)c[p>>2]=Th(c[r+24>>2]|0,256)|0;else c[p>>2]=69;if(c[p>>2]|0)break}c[s>>2]=0;b:while(1){if((c[s>>2]|0)>=7)break a;do if((c[s>>2]|0)!=5){if(c[r+(c[s>>2]<<2)>>2]|0?c[(c[r+(c[s>>2]<<2)>>2]|0)+12>>2]&4|0:0){c[y>>2]=tp(c[r+(c[s>>2]<<2)>>2]|0,z)|0;c[z>>2]=(((c[z>>2]|0)+7|0)>>>0)/8|0;b=c[z>>2]|0;c[g>>2]=a[49691+(c[s>>2]|0)>>0];c[g+4>>2]=b;Cu(x,30,49698,g)|0;b=c[n>>2]|0;Oi(b,x,Tu(x)|0);Oi(c[n>>2]|0,c[y>>2]|0,c[z>>2]|0);Oi(c[n>>2]|0,49707,1);break}c[A>>2]=Io(c[r+(c[s>>2]<<2)>>2]|0,0,B,0)|0;if(!(c[A>>2]|0))break b;b=c[B>>2]|0;c[f>>2]=a[49691+(c[s>>2]|0)>>0];c[f+4>>2]=b;Cu(x,30,49698,f)|0;b=c[n>>2]|0;Oi(b,x,Tu(x)|0);Oi(c[n>>2]|0,c[A>>2]|0,c[B>>2]|0);Oi(c[n>>2]|0,49707,1);hf(c[A>>2]|0)}while(0);c[s>>2]=(c[s>>2]|0)+1}c[p>>2]=rt()|0}}while(0);hf(c[t>>2]|0);Ef(c[q>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=7)break;Gp(c[r+(c[s>>2]<<2)>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=e;return c[p>>2]|0}function zr(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,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;h=i;i=i+1056|0;if((i|0)>=(j|0))U();k=h+44|0;l=h+40|0;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;q=h+20|0;r=h+16|0;s=h+12|0;t=h+8|0;u=h+4|0;v=h+48|0;w=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=0;c[s>>2]=0;g=bj(c[l>>2]|0)|0;if((g|0)!=(c[q>>2]|0)){c[k>>2]=49709;x=c[k>>2]|0;i=h;return x|0}c[s>>2]=Fi(t,c[l>>2]|0,0)|0;if(c[s>>2]|0){c[k>>2]=49750;x=c[k>>2]|0;i=h;return x|0}a:do switch(c[m>>2]|0){case 0:{Oi(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);break}case 1:{Sw(v|0,97,1e3)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=1e3)break a;Oi(c[t>>2]|0,v,1e3);c[w>>2]=(c[w>>2]|0)+1}break}default:c[r>>2]=49770}while(0);if((c[r>>2]|0)==0?(c[u>>2]=_i(c[t>>2]|0,c[l>>2]|0)|0,vv(c[u>>2]|0,c[p>>2]|0,c[q>>2]|0)|0):0)c[r>>2]=49787;Ni(c[t>>2]|0);c[k>>2]=c[r>>2];x=c[k>>2]|0;i=h;return x|0}function Ar(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[h>>2];c[m>>2]=c[g>>2];c[n>>2]=0;c[o>>2]=c[(c[m>>2]|0)+148>>2];if(128<(c[o>>2]|0)>>>0)Ee(49803,112,49817);if(!(c[(c[m>>2]|0)+152>>2]|0)){i=f;return}if((c[(c[m>>2]|0)+144>>2]|0)==(c[o>>2]|0)?(c[n>>2]=sb[c[(c[m>>2]|0)+152>>2]&63](c[m>>2]|0,c[m>>2]|0,1)|0,Qe(c[n>>2]|0),Re(),c[n>>2]=0,c[(c[m>>2]|0)+144>>2]=0,g=(c[m>>2]|0)+128|0,h=g,e=Gw(c[h>>2]|0,c[h+4>>2]|0,1,0)|0,h=C,d=g,c[d>>2]=e,c[d+4>>2]=h,!((e|0)!=0|(h|0)!=0)):0){h=(c[m>>2]|0)+136|0;e=h;d=Gw(c[e>>2]|0,c[e+4>>2]|0,1,0)|0;e=h;c[e>>2]=d;c[e+4>>2]=C}if(!(c[l>>2]|0)){i=f;return}if(c[(c[m>>2]|0)+144>>2]|0){while(1){if(!(c[k>>2]|0))break;if((c[(c[m>>2]|0)+144>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;e=c[l>>2]|0;c[l>>2]=e+1;d=a[e>>0]|0;e=(c[m>>2]|0)+144|0;h=c[e>>2]|0;c[e>>2]=h+1;a[(c[m>>2]|0)+h>>0]=d;c[k>>2]=(c[k>>2]|0)+-1}Ar(c[m>>2]|0,0,0);if(!(c[k>>2]|0)){i=f;return}}if((c[k>>2]|0)>>>0>=(c[o>>2]|0)>>>0){c[p>>2]=((c[k>>2]|0)>>>0)/((c[o>>2]|0)>>>0)|0;c[n>>2]=sb[c[(c[m>>2]|0)+152>>2]&63](c[m>>2]|0,c[l>>2]|0,c[p>>2]|0)|0;c[(c[m>>2]|0)+144>>2]=0;d=(c[m>>2]|0)+128|0;h=Gw(c[d>>2]|0,c[d+4>>2]|0,c[p>>2]|0,0)|0;d=C;e=(d>>>0<0|((d|0)==0?h>>>0<(c[p>>2]|0)>>>0:0))&1;h=(c[m>>2]|0)+136|0;d=h;g=Gw(c[d>>2]|0,c[d+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;e=h;c[e>>2]=g;c[e+4>>2]=C;e=(c[m>>2]|0)+128|0;g=e;h=Gw(c[g>>2]|0,c[g+4>>2]|0,c[p>>2]|0,0)|0;g=e;c[g>>2]=h;c[g+4>>2]=C;g=R(c[p>>2]|0,c[o>>2]|0)|0;c[k>>2]=(c[k>>2]|0)-g;g=R(c[p>>2]|0,c[o>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+g}Qe(c[n>>2]|0);Re();while(1){if(!(c[k>>2]|0)){q=19;break}if((c[(c[m>>2]|0)+144>>2]|0)>>>0>=(c[o>>2]|0)>>>0){q=19;break}n=c[l>>2]|0;c[l>>2]=n+1;g=a[n>>0]|0;n=(c[m>>2]|0)+144|0;p=c[n>>2]|0;c[n>>2]=p+1;a[(c[m>>2]|0)+p>>0]=g;c[k>>2]=(c[k>>2]|0)+-1}if((q|0)==19){i=f;return}}function Br(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=Cr(c[f>>2]|0)|0;c[l>>2]=0;c[m>>2]=c[c[(c[f>>2]|0)+84>>2]>>2];do if(c[(c[f>>2]|0)+88>>2]|0){c[n>>2]=(c[m>>2]|0)-(c[(c[f>>2]|0)+88>>2]|0);if((c[n>>2]|0)>>>0>(c[h>>2]|0)>>>0)c[n>>2]=c[h>>2];Dr((c[f>>2]|0)+68+(c[(c[f>>2]|0)+88>>2]|0)|0,c[g>>2]|0,c[n>>2]|0);c[h>>2]=(c[h>>2]|0)-(c[n>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);d=(c[f>>2]|0)+88|0;c[d>>2]=(c[d>>2]|0)+(c[n>>2]|0);if((c[(c[f>>2]|0)+88>>2]|0)>>>0<(c[m>>2]|0)>>>0){i=e;return}else{c[l>>2]=sb[c[(c[(c[f>>2]|0)+84>>2]|0)+8>>2]&63](c[k>>2]|0,(c[f>>2]|0)+68|0,c[m>>2]|0)|0;c[(c[f>>2]|0)+88>>2]=0;break}}while(0);if((c[h>>2]|0)>>>0>=(c[m>>2]|0)>>>0){c[o>>2]=c[h>>2]&~((c[m>>2]|0)-1);c[l>>2]=sb[c[(c[(c[f>>2]|0)+84>>2]|0)+8>>2]&63](c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+(c[o>>2]|0);c[h>>2]=(c[h>>2]|0)-(c[o>>2]|0)}if(c[h>>2]|0){Dr((c[f>>2]|0)+68+(c[(c[f>>2]|0)+88>>2]|0)|0,c[g>>2]|0,c[h>>2]|0);g=(c[f>>2]|0)+88|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)}if(!(c[l>>2]|0)){i=e;return}Qe(c[l>>2]|0);Re();i=e;return}function Cr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];c[e>>2]=(c[e>>2]|0)+3;c[e>>2]=(c[e>>2]|0)+(0-(c[e>>2]&3));i=b;return c[e>>2]|0}function Dr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function Er(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Cr(c[e>>2]|0)|0;c[h>>2]=zb[c[(c[(c[e>>2]|0)+84>>2]|0)+12>>2]&7](c[g>>2]|0,(c[e>>2]|0)+68|0,c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;Qe(c[h>>2]|0);Re();i=d;return}function Fr(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+80|0;if((i|0)>=(j|0))U();h=g+8|0;k=g+40|0;l=g+36|0;m=g+32|0;n=g+28|0;o=g+48|0;p=g+20|0;q=g+16|0;r=g+44|0;s=g;t=g+12|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[g+24>>2]=cg()|0;if((c[17674]|0)==0?(c[17674]=1,c[17675]=Gr()|0,c[17675]|0):0){c[h>>2]=c[17675];Ie(50225,h)}if((c[n>>2]|0)!=32){c[k>>2]=44;u=c[k>>2]|0;i=g;return u|0}if(c[17675]|0){c[k>>2]=50;u=c[k>>2]|0;i=g;return u|0}c[(c[l>>2]|0)+84>>2]=12936;Dr(o,c[m>>2]|0,32);Nr(c[l>>2]|0,o);c[p>>2]=o;c[q>>2]=32;a[r>>0]=0;o=s;c[o>>2]=d[r>>0];c[o+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){o=s;l=Xw(c[o>>2]|0,c[o+4>>2]|0,16843009,16843009)|0;o=s;c[o>>2]=l;c[o+4>>2]=C;do{c[t>>2]=c[p>>2];o=s;l=c[o+4>>2]|0;m=c[t>>2]|0;c[m>>2]=c[o>>2];c[m+4>>2]=l;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}c[k>>2]=0;u=c[k>>2]|0;i=g;return u|0}function Gr(){var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+512|0;if((i|0)>=(j|0))U();d=b+192|0;e=b+100|0;f=b+8|0;g=b+472|0;h=b+216|0;k=b+200|0;l=b+4|0;m=b;n=e;o=n+92|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));n=f;o=n+92|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));n=k;o=n+16|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(o|0));Hr(k,49838,131,49969);if(vv(50001,k,16)|0){c[d>>2]=50017;p=c[d>>2]|0;i=b;return p|0}n=k;o=n+16|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(o|0));Fr(e,49969,32)|0;Br(e,49838,32);Br(e,49870,64);Br(e,49934,16);Br(e,49950,8);Br(e,49958,4);Br(e,49962,2);Br(e,49964,1);Br(e,49965,1);Br(e,49966,1);Br(e,49967,1);Br(e,49968,1);Er(e,k);if(vv(50001,k,16)|0){c[d>>2]=50041;p=c[d>>2]|0;i=b;return p|0}n=k;o=n+16|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(o|0));Hr(k,50065,16,50081);if(vv(50113,k,16)|0){c[d>>2]=50129;p=c[d>>2]|0;i=b;return p|0}Fr(f,50153,32)|0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=256)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=32)break;a[g+(c[m>>2]|0)>>0]=c[l>>2];c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;a[h+(c[m>>2]|0)>>0]=c[l>>2];c[m>>2]=(c[m>>2]|0)+1}Hr(k,h,c[l>>2]|0,g);Br(f,k,16);c[l>>2]=(c[l>>2]|0)+1}Er(f,k);if(vv(50185,k,16)|0){c[d>>2]=50201;p=c[d>>2]|0;i=b;return p|0}else{c[d>>2]=0;p=c[d>>2]|0;i=b;return p|0}return 0}function Hr(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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+144|0;if((i|0)>=(j|0))U();k=h+124|0;l=h+120|0;m=h+116|0;n=h+112|0;o=h+20|0;p=h+16|0;q=h+12|0;r=h+128|0;s=h;t=h+8|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;g=o;f=g+92|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(f|0));Fr(o,c[n>>2]|0,32)|0;Br(o,c[l>>2]|0,c[m>>2]|0);Er(o,c[k>>2]|0);c[p>>2]=o;c[q>>2]=92;a[r>>0]=0;o=s;c[o>>2]=d[r>>0];c[o+4>>2]=0;while(1){if(!(c[p>>2]&7|0?(c[q>>2]|0)!=0:0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}if((c[q>>2]|0)>>>0>=8){o=s;k=Xw(c[o>>2]|0,c[o+4>>2]|0,16843009,16843009)|0;o=s;c[o>>2]=k;c[o+4>>2]=C;do{c[t>>2]=c[p>>2];o=s;k=c[o+4>>2]|0;m=c[t>>2]|0;c[m>>2]=c[o>>2];c[m+4>>2]=k;c[q>>2]=(c[q>>2]|0)-8;c[p>>2]=(c[p>>2]|0)+8}while((c[q>>2]|0)>>>0>=8)}while(1){if(!(c[q>>2]|0))break;a[c[p>>2]>>0]=a[r>>0]|0;c[p>>2]=(c[p>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+-1}i=h;return}function Ir(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];f=(Jr(c[g>>2]|0)|0)&67108863;c[c[h>>2]>>2]=f;f=(Jr((c[g>>2]|0)+3|0)|0)>>>2&67108611;c[(c[h>>2]|0)+4>>2]=f;f=(Jr((c[g>>2]|0)+6|0)|0)>>>4&67092735;c[(c[h>>2]|0)+8>>2]=f;f=(Jr((c[g>>2]|0)+9|0)|0)>>>6&66076671;c[(c[h>>2]|0)+12>>2]=f;f=(Jr((c[g>>2]|0)+12|0)|0)>>>8&1048575;c[(c[h>>2]|0)+16>>2]=f;c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+20+4>>2]=0;c[(c[h>>2]|0)+20+8>>2]=0;c[(c[h>>2]|0)+20+12>>2]=0;c[(c[h>>2]|0)+20+16>>2]=0;f=Jr((c[g>>2]|0)+16|0)|0;c[(c[h>>2]|0)+40>>2]=f;f=Jr((c[g>>2]|0)+20|0)|0;c[(c[h>>2]|0)+40+4>>2]=f;f=Jr((c[g>>2]|0)+24|0)|0;c[(c[h>>2]|0)+40+8>>2]=f;f=Jr((c[g>>2]|0)+28|0)|0;c[(c[h>>2]|0)+40+12>>2]=f;a[(c[h>>2]|0)+56>>0]=0;i=e;return}function Jr(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (d[(c[f>>2]|0)+3>>0]|0)<<24|(d[(c[f>>2]|0)+2>>0]|0)<<16|(d[(c[f>>2]|0)+1>>0]|0)<<8|(d[c[f>>2]>>0]|0)|0}function Kr(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=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,D=0,E=0,F=0,G=0,H=0;f=i;i=i+128|0;if((i|0)>=(j|0))U();g=f+116|0;h=f+112|0;k=f+108|0;l=f+104|0;m=f+100|0;n=f+96|0;o=f+92|0;p=f+88|0;q=f+84|0;r=f+80|0;s=f+76|0;t=f+72|0;u=f+68|0;v=f+64|0;w=f+60|0;x=f+56|0;y=f+52|0;z=f+48|0;A=f+44|0;B=f+32|0;D=f+24|0;E=f+16|0;F=f+8|0;G=f;H=f+40|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=d[(c[l>>2]|0)+56>>0]|0|0?0:16777216;c[n>>2]=c[c[l>>2]>>2];c[o>>2]=c[(c[l>>2]|0)+4>>2];c[p>>2]=c[(c[l>>2]|0)+8>>2];c[q>>2]=c[(c[l>>2]|0)+12>>2];c[r>>2]=c[(c[l>>2]|0)+16>>2];c[s>>2]=(c[o>>2]|0)*5;c[t>>2]=(c[p>>2]|0)*5;c[u>>2]=(c[q>>2]|0)*5;c[v>>2]=(c[r>>2]|0)*5;c[w>>2]=c[(c[l>>2]|0)+20>>2];c[x>>2]=c[(c[l>>2]|0)+20+4>>2];c[y>>2]=c[(c[l>>2]|0)+20+8>>2];c[z>>2]=c[(c[l>>2]|0)+20+12>>2];c[A>>2]=c[(c[l>>2]|0)+20+16>>2];while(1){if((c[k>>2]|0)>>>0<16)break;g=(Jr(c[h>>2]|0)|0)&67108863;c[w>>2]=(c[w>>2]|0)+g;g=(Jr((c[h>>2]|0)+3|0)|0)>>>2&67108863;c[x>>2]=(c[x>>2]|0)+g;g=(Jr((c[h>>2]|0)+6|0)|0)>>>4&67108863;c[y>>2]=(c[y>>2]|0)+g;g=(Jr((c[h>>2]|0)+9|0)|0)>>>6&67108863;c[z>>2]=(c[z>>2]|0)+g;g=(Jr((c[h>>2]|0)+12|0)|0)>>>8;c[A>>2]=(c[A>>2]|0)+(g|c[m>>2]);g=Xw(c[w>>2]|0,0,c[n>>2]|0,0)|0;e=C;b=Xw(c[x>>2]|0,0,c[v>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[y>>2]|0,0,c[u>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=C;b=Xw(c[z>>2]|0,0,c[t>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[A>>2]|0,0,c[s>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=B;c[e>>2]=g;c[e+4>>2]=C;e=Xw(c[w>>2]|0,0,c[o>>2]|0,0)|0;g=C;b=Xw(c[x>>2]|0,0,c[n>>2]|0,0)|0;a=Gw(e|0,g|0,b|0,C|0)|0;b=C;g=Xw(c[y>>2]|0,0,c[v>>2]|0,0)|0;e=Gw(a|0,b|0,g|0,C|0)|0;g=C;b=Xw(c[z>>2]|0,0,c[u>>2]|0,0)|0;a=Gw(e|0,g|0,b|0,C|0)|0;b=C;g=Xw(c[A>>2]|0,0,c[t>>2]|0,0)|0;e=Gw(a|0,b|0,g|0,C|0)|0;g=D;c[g>>2]=e;c[g+4>>2]=C;g=Xw(c[w>>2]|0,0,c[p>>2]|0,0)|0;e=C;b=Xw(c[x>>2]|0,0,c[o>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[y>>2]|0,0,c[n>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=C;b=Xw(c[z>>2]|0,0,c[v>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[A>>2]|0,0,c[u>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=E;c[e>>2]=g;c[e+4>>2]=C;e=Xw(c[w>>2]|0,0,c[q>>2]|0,0)|0;g=C;b=Xw(c[x>>2]|0,0,c[p>>2]|0,0)|0;a=Gw(e|0,g|0,b|0,C|0)|0;b=C;g=Xw(c[y>>2]|0,0,c[o>>2]|0,0)|0;e=Gw(a|0,b|0,g|0,C|0)|0;g=C;b=Xw(c[z>>2]|0,0,c[n>>2]|0,0)|0;a=Gw(e|0,g|0,b|0,C|0)|0;b=C;g=Xw(c[A>>2]|0,0,c[v>>2]|0,0)|0;e=Gw(a|0,b|0,g|0,C|0)|0;g=F;c[g>>2]=e;c[g+4>>2]=C;g=Xw(c[w>>2]|0,0,c[r>>2]|0,0)|0;e=C;b=Xw(c[x>>2]|0,0,c[q>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[y>>2]|0,0,c[p>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=C;b=Xw(c[z>>2]|0,0,c[o>>2]|0,0)|0;a=Gw(g|0,e|0,b|0,C|0)|0;b=C;e=Xw(c[A>>2]|0,0,c[n>>2]|0,0)|0;g=Gw(a|0,b|0,e|0,C|0)|0;e=G;c[e>>2]=g;c[e+4>>2]=C;e=B;g=Mw(c[e>>2]|0,c[e+4>>2]|0,26)|0;c[H>>2]=g;c[w>>2]=c[B>>2]&67108863;g=D;e=Gw(c[g>>2]|0,c[g+4>>2]|0,c[H>>2]|0,0)|0;g=D;c[g>>2]=e;c[g+4>>2]=C;g=D;e=Mw(c[g>>2]|0,c[g+4>>2]|0,26)|0;c[H>>2]=e;c[x>>2]=c[D>>2]&67108863;e=E;g=Gw(c[e>>2]|0,c[e+4>>2]|0,c[H>>2]|0,0)|0;e=E;c[e>>2]=g;c[e+4>>2]=C;e=E;g=Mw(c[e>>2]|0,c[e+4>>2]|0,26)|0;c[H>>2]=g;c[y>>2]=c[E>>2]&67108863;g=F;e=Gw(c[g>>2]|0,c[g+4>>2]|0,c[H>>2]|0,0)|0;g=F;c[g>>2]=e;c[g+4>>2]=C;g=F;e=Mw(c[g>>2]|0,c[g+4>>2]|0,26)|0;c[H>>2]=e;c[z>>2]=c[F>>2]&67108863;e=G;g=Gw(c[e>>2]|0,c[e+4>>2]|0,c[H>>2]|0,0)|0;e=G;c[e>>2]=g;c[e+4>>2]=C;e=G;g=Mw(c[e>>2]|0,c[e+4>>2]|0,26)|0;c[H>>2]=g;c[A>>2]=c[G>>2]&67108863;c[w>>2]=(c[w>>2]|0)+((c[H>>2]|0)*5|0);c[H>>2]=(c[w>>2]|0)>>>26;c[w>>2]=c[w>>2]&67108863;c[x>>2]=(c[x>>2]|0)+(c[H>>2]|0);c[h>>2]=(c[h>>2]|0)+16;c[k>>2]=(c[k>>2]|0)-16}c[(c[l>>2]|0)+20>>2]=c[w>>2];c[(c[l>>2]|0)+20+4>>2]=c[x>>2];c[(c[l>>2]|0)+20+8>>2]=c[y>>2];c[(c[l>>2]|0)+20+12>>2]=c[z>>2];c[(c[l>>2]|0)+20+16>>2]=c[A>>2];i=f;return 124}function Lr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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,D=0,E=0;g=i;i=i+112|0;if((i|0)>=(j|0))U();h=g+80|0;k=g+76|0;l=g+72|0;m=g+68|0;n=g+64|0;o=g+60|0;p=g+56|0;q=g+52|0;r=g+48|0;s=g+44|0;t=g+40|0;u=g+36|0;v=g+32|0;w=g+28|0;x=g+24|0;y=g+20|0;z=g;A=g+16|0;B=g+12|0;D=g+88|0;E=g+8|0;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[h>>2];c[B>>2]=0;if(c[l>>2]|0){h=D;f=h+16|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(f|0));c[E>>2]=0;while(1){if((c[E>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break;a[D+(c[E>>2]|0)>>0]=a[(c[k>>2]|0)+(c[E>>2]|0)>>0]|0;c[E>>2]=(c[E>>2]|0)+1}a[D+(c[l>>2]|0)>>0]=1;a[(c[n>>2]|0)+56>>0]=1;c[B>>2]=Kr(c[n>>2]|0,D,16)|0}c[o>>2]=c[(c[n>>2]|0)+20>>2];c[p>>2]=c[(c[n>>2]|0)+20+4>>2];c[q>>2]=c[(c[n>>2]|0)+20+8>>2];c[r>>2]=c[(c[n>>2]|0)+20+12>>2];c[s>>2]=c[(c[n>>2]|0)+20+16>>2];c[t>>2]=(c[p>>2]|0)>>>26;c[p>>2]=c[p>>2]&67108863;c[q>>2]=(c[q>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[q>>2]|0)>>>26;c[q>>2]=c[q>>2]&67108863;c[r>>2]=(c[r>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[r>>2]|0)>>>26;c[r>>2]=c[r>>2]&67108863;c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[s>>2]|0)>>>26;c[s>>2]=c[s>>2]&67108863;c[o>>2]=(c[o>>2]|0)+((c[t>>2]|0)*5|0);c[t>>2]=(c[o>>2]|0)>>>26;c[o>>2]=c[o>>2]&67108863;c[p>>2]=(c[p>>2]|0)+(c[t>>2]|0);c[u>>2]=(c[o>>2]|0)+5;c[t>>2]=(c[u>>2]|0)>>>26;c[u>>2]=c[u>>2]&67108863;c[v>>2]=(c[p>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[v>>2]|0)>>>26;c[v>>2]=c[v>>2]&67108863;c[w>>2]=(c[q>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[w>>2]|0)>>>26;c[w>>2]=c[w>>2]&67108863;c[x>>2]=(c[r>>2]|0)+(c[t>>2]|0);c[t>>2]=(c[x>>2]|0)>>>26;c[x>>2]=c[x>>2]&67108863;c[y>>2]=(c[s>>2]|0)+(c[t>>2]|0)-67108864;c[A>>2]=((c[y>>2]|0)>>>31)-1;c[u>>2]=c[u>>2]&c[A>>2];c[v>>2]=c[v>>2]&c[A>>2];c[w>>2]=c[w>>2]&c[A>>2];c[x>>2]=c[x>>2]&c[A>>2];c[y>>2]=c[y>>2]&c[A>>2];c[A>>2]=~c[A>>2];c[o>>2]=c[o>>2]&c[A>>2]|c[u>>2];c[p>>2]=c[p>>2]&c[A>>2]|c[v>>2];c[q>>2]=c[q>>2]&c[A>>2]|c[w>>2];c[r>>2]=c[r>>2]&c[A>>2]|c[x>>2];c[s>>2]=c[s>>2]&c[A>>2]|c[y>>2];c[o>>2]=c[o>>2]|c[p>>2]<<26;c[p>>2]=(c[p>>2]|0)>>>6|c[q>>2]<<20;c[q>>2]=(c[q>>2]|0)>>>12|c[r>>2]<<14;c[r>>2]=(c[r>>2]|0)>>>18|c[s>>2]<<8;s=Gw(c[o>>2]|0,0,c[(c[n>>2]|0)+40>>2]|0,0)|0;y=z;c[y>>2]=s;c[y+4>>2]=C;c[o>>2]=c[z>>2];y=Gw(c[p>>2]|0,0,c[(c[n>>2]|0)+40+4>>2]|0,0)|0;s=Gw(y|0,C|0,c[z+4>>2]|0,0)|0;y=z;c[y>>2]=s;c[y+4>>2]=C;c[p>>2]=c[z>>2];y=Gw(c[q>>2]|0,0,c[(c[n>>2]|0)+40+8>>2]|0,0)|0;s=Gw(y|0,C|0,c[z+4>>2]|0,0)|0;y=z;c[y>>2]=s;c[y+4>>2]=C;c[q>>2]=c[z>>2];y=Gw(c[r>>2]|0,0,c[(c[n>>2]|0)+40+12>>2]|0,0)|0;s=Gw(y|0,C|0,c[z+4>>2]|0,0)|0;y=z;c[y>>2]=s;c[y+4>>2]=C;c[r>>2]=c[z>>2];Mr(c[m>>2]|0,c[o>>2]|0);Mr((c[m>>2]|0)+4|0,c[p>>2]|0);Mr((c[m>>2]|0)+8|0,c[q>>2]|0);Mr((c[m>>2]|0)+12|0,c[r>>2]|0);c[(c[n>>2]|0)+20>>2]=0;c[(c[n>>2]|0)+20+4>>2]=0;c[(c[n>>2]|0)+20+8>>2]=0;c[(c[n>>2]|0)+20+12>>2]=0;c[(c[n>>2]|0)+20+16>>2]=0;c[c[n>>2]>>2]=0;c[(c[n>>2]|0)+4>>2]=0;c[(c[n>>2]|0)+8>>2]=0;c[(c[n>>2]|0)+12>>2]=0;c[(c[n>>2]|0)+16>>2]=0;c[(c[n>>2]|0)+40>>2]=0;c[(c[n>>2]|0)+40+4>>2]=0;c[(c[n>>2]|0)+40+8>>2]=0;c[(c[n>>2]|0)+40+12>>2]=0;i=g;return 100+(c[B>>2]|0)|0}function Mr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[(c[h>>2]|0)+3>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>8;a[c[h>>2]>>0]=c[g>>2];i=e;return}function Nr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=Cr(c[e>>2]|0)|0;c[(c[e>>2]|0)+88>>2]=0;vb[c[(c[(c[e>>2]|0)+84>>2]|0)+4>>2]&7](c[g>>2]|0,c[f>>2]|0);i=d;return}function Or(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(c[d>>2]|0){Qr();i=b;return}else{Pr();i=b;return}}function Pr(){if(c[17676]|0)return;c[17676]=1;return}function Qr(){var a=0,b=0;Pr();Rr();if(c[17678]|0){Xr();return}if(c[17679]|0)a=qf(1,664)|0;else a=pf(1,664)|0;c[17678]=a;if(c[17679]|0)b=qf(1,664)|0;else b=pf(1,664)|0;c[17680]=b;c[17681]=Sr()|0;if(!(c[17681]|0)){c[17682]=1;c[17681]=3}c[17699]=Wr()|0;Xr();return}function Rr(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[d>>2]=ut(12952)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(50256,b)}else{c[17677]=1;i=a;return}}function Sr(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;if((Lv(52638,4)|0)==0?(Lv(52740,4)|0)==0:0){c[d>>2]=4;i=a;return c[d>>2]|0}Je(xe(50293)|0,b);return 0}function Tr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+24|0;k=g+20|0;l=g+12|0;m=g+8|0;n=g+4|0;c[g+28>>2]=b;c[h>>2]=d;c[k>>2]=e;c[g+16>>2]=f;if(!(c[17683]|0)){Ge(xe(50331)|0,g);c[17683]=1;f=ib(0)|0;hw(R(f,Kv()|0)|0)}f=mf(c[k>>2]|0)|0;c[m>>2]=f;c[n>>2]=f;c[l>>2]=c[k>>2];while(1){f=c[l>>2]|0;c[l>>2]=f+-1;if(!f)break;f=1+~~(+(iw()|0)*256.0/2147483648.0)-1&255;e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=f}Ur(c[m>>2]|0,c[k>>2]|0,c[h>>2]|0);hf(c[m>>2]|0);i=g;return 0}function Ur(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=c[h>>2];c[n>>2]=0;if(!(c[17677]|0))Fe(50382,50397,1074,50413);c[17692]=(c[17692]|0)+(c[k>>2]|0);c[17693]=(c[17693]|0)+1;while(1){h=c[k>>2]|0;c[k>>2]=h+-1;if(!h)break;h=c[m>>2]|0;c[m>>2]=h+1;f=d[h>>0]|0;h=c[17694]|0;c[17694]=h+1;e=(c[17678]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f;c[n>>2]=(c[n>>2]|0)+1;if((c[17694]|0)>>>0<600)continue;if(!((c[l>>2]|0)>>>0<3|(c[17695]|0)!=0)?(c[17696]=(c[17696]|0)+(c[n>>2]|0),c[n>>2]=0,(c[17696]|0)>>>0>=600):0)c[17695]=1;c[17694]=0;Vr(c[17678]|0);c[17684]=(c[17684]|0)+1;c[17698]=((c[k>>2]|0)!=0^1)&1}i=g;return}function Vr(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+224|0;if((i|0)>=(j|0))U();f=e+208|0;g=e+204|0;h=e+200|0;k=e+196|0;l=e+192|0;m=e+188|0;n=e;o=e+184|0;c[f>>2]=b;c[g>>2]=(c[f>>2]|0)+600;if(!(c[17677]|0))Fe(50382,50397,615,50428);Ok(n);c[k>>2]=(c[f>>2]|0)+600;b=c[g>>2]|0;p=(c[k>>2]|0)+-20|0;q=b+20|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));b=(c[g>>2]|0)+20|0;p=c[f>>2]|0;q=b+44|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));Pk(n,c[g>>2]|0);b=c[f>>2]|0;p=c[g>>2]|0;q=b+20|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));a:do if(c[17697]|0?(c[f>>2]|0)==(c[17678]|0):0){c[l>>2]=0;while(1){if((c[l>>2]|0)>=20)break a;r=(c[f>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=(d[r>>0]|0)^(d[76063+(c[l>>2]|0)>>0]|0);c[l>>2]=(c[l>>2]|0)+1}}while(0);c[h>>2]=c[f>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=30)break;b=c[g>>2]|0;p=c[h>>2]|0;q=b+20|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));c[h>>2]=(c[h>>2]|0)+20;b:do if(((c[h>>2]|0)+20+64|0)>>>0<(c[k>>2]|0)>>>0){b=(c[g>>2]|0)+20|0;p=(c[h>>2]|0)+20|0;q=b+44|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0))}else{c[o>>2]=(c[h>>2]|0)+20;c[l>>2]=20;while(1){if((c[l>>2]|0)>=64)break b;if((c[o>>2]|0)>>>0>=(c[k>>2]|0)>>>0)c[o>>2]=c[f>>2];r=c[o>>2]|0;c[o>>2]=r+1;a[(c[g>>2]|0)+(c[l>>2]|0)>>0]=a[r>>0]|0;c[l>>2]=(c[l>>2]|0)+1}}while(0);Pk(n,c[g>>2]|0);b=c[h>>2]|0;p=c[g>>2]|0;q=b+20|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));c[m>>2]=(c[m>>2]|0)+1}if((c[f>>2]|0)!=(c[17678]|0)){Qe(384);Re();i=e;return}Qk(76063,c[f>>2]|0,600);c[17697]=1;Qe(384);Re();i=e;return}function Wr(){return 0}function Xr(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[17677]=0;c[d>>2]=vt(12952)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(50437,b)}else{i=a;return}}function Yr(){Rr();at(0,0,0,0)|0;c[17695]=0;Xr();return}function Zr(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;a=i;i=i+48|0;if((i|0)>=(j|0))U();b=a;d=c[17684]|0;e=c[17686]|0;f=c[17687]|0;g=c[17693]|0;h=c[17692]|0;k=c[17685]|0;l=c[17689]|0;m=c[17688]|0;n=c[17691]|0;o=c[17690]|0;p=(Zs()|0)!=0;c[b>>2]=600;c[b+4>>2]=d;c[b+8>>2]=e;c[b+12>>2]=f;c[b+16>>2]=g;c[b+20>>2]=h;c[b+24>>2]=k;c[b+28>>2]=l;c[b+32>>2]=m;c[b+36>>2]=n;c[b+40>>2]=o;c[b+44>>2]=p?50474:76084;Ge(50490,b);i=a;return}function _r(){c[17679]=1;return}function $r(){c[17700]=1;return}function as(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();c[b>>2]=a;i=b;return}function bs(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();c[b>>2]=a;i=b;return 0}function cs(){Qr();return (c[17682]|0?1:(c[17700]|0)!=0)&1|0}function ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Qr();if((c[17700]|0)!=0&(c[h>>2]|0)>>>0>1)c[h>>2]=1;c[h>>2]=c[h>>2]&3;Rr();d=c[g>>2]|0;if((c[h>>2]|0)>>>0>=2){c[17690]=(c[17690]|0)+d;c[17691]=(c[17691]|0)+1}else{c[17688]=(c[17688]|0)+d;c[17689]=(c[17689]|0)+1}c[k>>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;c[l>>2]=(c[g>>2]|0)>>>0>600?600:c[g>>2]|0;es(c[k>>2]|0,c[l>>2]|0,c[h>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[l>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0)}Xr();i=e;return}function es(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f;h=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+28|0;p=f+24|0;q=f+20|0;r=f+16|0;s=f+12|0;t=f+8|0;u=f+4|0;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[17677]|0))Fe(50382,50397,934,50614);while(1){c[p>>2]=Kv()|0;if((c[3249]|0)==-1)c[3249]=c[p>>2];if((c[3249]|0)!=(c[p>>2]|0)){c[3249]=c[p>>2];c[q>>2]=c[3249];Ur(q,4,0);c[17698]=0}if(!(c[17677]|0)){v=8;break}if((c[k>>2]|0)>>>0>600){v=10;break}if((c[17695]|0)==0?fs()|0:0)c[17695]=1;if(!((c[l>>2]|0)!=2|(c[17703]|0)!=0)){c[17704]=0;c[r>>2]=(c[k>>2]|0)-(c[17704]|0);if((c[r>>2]|0)>>>0>=16){if((c[r>>2]|0)>>>0>600){v=18;break}}else c[r>>2]=16;hs(4,c[r>>2]|0,2);c[17704]=(c[17704]|0)+(c[r>>2]|0);c[17703]=1}if((c[l>>2]|0)==2?(c[17704]|0)>>>0<(c[k>>2]|0)>>>0:0){if((c[17704]|0)<0)c[17704]=0;c[s>>2]=(c[k>>2]|0)-(c[17704]|0);if((c[s>>2]|0)>>>0>600){v=25;break}hs(4,c[s>>2]|0,2);c[17704]=(c[17704]|0)+(c[s>>2]|0)}while(1){if(!((c[17695]|0)!=0^1))break;is()}js();c[t>>2]=c[3249];Ur(t,4,0);if(!(c[17698]|0)){Vr(c[17678]|0);c[17684]=(c[17684]|0)+1}c[m>>2]=0;c[o>>2]=c[17680];c[n>>2]=c[17678];while(1){if((c[m>>2]|0)>=150)break;c[c[o>>2]>>2]=(c[c[n>>2]>>2]|0)+-1515870811;c[m>>2]=(c[m>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4}Vr(c[17678]|0);c[17684]=(c[17684]|0)+1;Vr(c[17680]|0);c[17685]=(c[17685]|0)+1;while(1){e=c[k>>2]|0;c[k>>2]=e+-1;if(!e)break;e=c[17705]|0;c[17705]=e+1;d=a[(c[17680]|0)+e>>0]|0;e=c[h>>2]|0;c[h>>2]=e+1;a[e>>0]=d;if((c[17705]|0)>>>0>=600)c[17705]=0;c[17704]=(c[17704]|0)+-1}if((c[17704]|0)<0)c[17704]=0;Sw(c[17680]|0,0,600)|0;d=Kv()|0;if((d|0)==(c[p>>2]|0)){v=43;break}c[u>>2]=Kv()|0;Ur(u,4,0);c[17698]=0;c[3249]=c[u>>2]}if((v|0)==8)Fe(50382,50397,953,50614);else if((v|0)==10)Ke(50624,g);else if((v|0)==18)Ee(50397,979,50614);else if((v|0)==25)Ee(50397,995,50614);else if((v|0)==43){i=f;return}}function fs(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;a=i;i=i+768|0;if((i|0)>=(j|0))U();b=a+48|0;d=a+40|0;e=a+32|0;f=a+24|0;g=a+16|0;h=a+8|0;k=a+152|0;l=a+148|0;m=a+72|0;n=a+160|0;o=a+68|0;p=a+64|0;q=a+60|0;r=a+56|0;if(!(c[17677]|0))Fe(50382,50397,743,50656);if(!(c[17701]|0)){c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}c[l>>2]=Sv(c[17701]|0,0,a)|0;if((c[l>>2]|0)==-1?(c[(fu()|0)>>2]|0)==2:0){c[17702]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[l>>2]|0)==-1){t=xe(50671)|0;u=c[17701]|0;v=xu(c[(fu()|0)>>2]|0)|0;c[h>>2]=u;c[h+4>>2]=v;Ge(t,h);c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}h=(gs(c[l>>2]|0,c[17701]|0,0)|0)!=0;t=c[l>>2]|0;if(h){uv(t)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if(Ov(t,m)|0){t=xe(50742)|0;h=c[17701]|0;v=xu(c[(fu()|0)>>2]|0)|0;c[g>>2]=h;c[g+4>>2]=v;Ge(t,g);uv(c[l>>2]|0)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[m+12>>2]&61440|0)!=32768){g=xe(50763)|0;c[f>>2]=c[17701];Ge(g,f);uv(c[l>>2]|0)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if(!(c[m+36>>2]|0)){Ge(xe(50801)|0,e);uv(c[l>>2]|0)|0;c[17702]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[m+36>>2]|0)!=600){Ge(xe(50834)|0,d);uv(c[l>>2]|0)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}do{c[o>>2]=Rv(c[l>>2]|0,n,600)|0;if((c[o>>2]|0)!=-1)break}while((c[(fu()|0)>>2]|0)==4);if((c[o>>2]|0)!=600){o=xe(50888)|0;d=c[17701]|0;m=xu(c[(fu()|0)>>2]|0)|0;c[b>>2]=d;c[b+4>>2]=m;Je(o,b)}uv(c[l>>2]|0)|0;Ur(n,600,0);c[p>>2]=Kv()|0;Ur(p,4,0);c[q>>2]=ib(0)|0;Ur(q,4,0);c[r>>2]=Qa()|0;Ur(r,4,0);hs(0,16,0);c[17702]=1;c[k>>2]=1;s=c[k>>2]|0;i=a;return s|0}function gs(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+8|0;k=f;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;p=f+32|0;q=f+24|0;r=f+20|0;c[m>>2]=a;c[n>>2]=d;c[o>>2]=e;c[r>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;b[p>>1]=c[o>>2]|0?1:0;b[p+2>>1]=0;while(1){o=c[m>>2]|0;c[k>>2]=p;if((tv(o,13,k)|0)!=-1){s=10;break}if((c[(fu()|0)>>2]|0)!=11?(c[(fu()|0)>>2]|0)!=13:0){s=5;break}if((c[r>>2]|0)>2){o=xe(50713)|0;c[g>>2]=c[n>>2];Ge(o,g)}c[q>>2]=c[r>>2];c[q+4>>2]=25e4;Pv(0,0,0,0,q)|0;if((c[r>>2]|0)>=10)continue;c[r>>2]=(c[r>>2]|0)+1}if((s|0)==5){r=xe(50692)|0;q=c[n>>2]|0;n=xu(c[(fu()|0)>>2]|0)|0;c[h>>2]=q;c[h+4>>2]=n;Ge(r,h);c[l>>2]=-1;t=c[l>>2]|0;i=f;return t|0}else if((s|0)==10){c[l>>2]=0;t=c[l>>2]|0;i=f;return t|0}return 0}function hs(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+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[17681]|0))Je(50909,e);if((zb[c[17681]&7](3,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)<0)Je(50960,e+8|0);else{i=e;return}}function is(){c[17686]=(c[17686]|0)+1;hs(3,120,1);return}function js(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+160|0;if((i|0)>=(j|0))U();b=a+144|0;d=a+8|0;e=a+4|0;f=a;if(!(c[17677]|0))Fe(50382,50397,1180,50998);c[17687]=(c[17687]|0)+1;if(c[17699]|0)vb[c[17699]&7](3,2);if(jb(b|0,0)|0)Ee(50397,1198,50998);else{Ur(b,4,2);Ur(b+4|0,4,2);nw(0,d)|0;Ur(d,136,2);Sw(d|0,0,136)|0;c[e>>2]=ib(0)|0;Ur(e,4,2);c[f>>2]=Qa()|0;Ur(f,4,2);_s(3,2);i=a;return}}function ks(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(c[17701]|0)Ee(50397,673,51018);else{c[17701]=rf(c[d>>2]|0)|0;i=b;return}}function ls(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;a=i;i=i+64|0;if((i|0)>=(j|0))U();b=a+40|0;d=a+32|0;e=a+24|0;f=a+16|0;g=a+8|0;h=a+60|0;k=a+56|0;l=a+52|0;m=a+48|0;Pr();Rr();if(!((c[17701]|0)!=0&(c[17678]|0)!=0&(c[17695]|0)!=0)){Xr();i=a;return}if(!(c[17702]|0)){Xr();Ge(xe(51048)|0,a);i=a;return}c[m>>2]=0;c[k>>2]=c[17680];c[h>>2]=c[17678];while(1){if((c[m>>2]|0)>=150)break;c[c[k>>2]>>2]=(c[c[h>>2]>>2]|0)+-1515870811;c[m>>2]=(c[m>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+4;c[h>>2]=(c[h>>2]|0)+4}Vr(c[17678]|0);c[17684]=(c[17684]|0)+1;Vr(c[17680]|0);c[17685]=(c[17685]|0)+1;h=c[17701]|0;c[g>>2]=384;c[l>>2]=Sv(h,65,g)|0;do if((c[l>>2]|0)!=-1){g=(gs(c[l>>2]|0,c[17701]|0,1)|0)!=0;h=c[l>>2]|0;if(g){uv(h)|0;break}if(aw(h,0)|0){h=xe(51107)|0;g=c[17701]|0;k=xu(c[(fu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=k;Ge(h,e);uv(c[l>>2]|0)|0;break}do{c[m>>2]=Qv(c[l>>2]|0,c[17680]|0,600)|0;if((c[m>>2]|0)!=-1)break}while((c[(fu()|0)>>2]|0)==4);if((c[m>>2]|0)!=600){h=xe(51107)|0;k=c[17701]|0;g=xu(c[(fu()|0)>>2]|0)|0;c[d>>2]=k;c[d+4>>2]=g;Ge(h,d)}if(uv(c[l>>2]|0)|0){h=xe(51129)|0;g=c[17701]|0;k=xu(c[(fu()|0)>>2]|0)|0;c[b>>2]=g;c[b+4>>2]=k;Ge(h,b)}}else{h=xe(51084)|0;k=c[17701]|0;g=xu(c[(fu()|0)>>2]|0)|0;c[f>>2]=k;c[f+4>>2]=g;Ge(h,f)}while(0);Xr();i=a;return}function ms(){Pr();Rr();if(!(c[17678]|0)){Xr();return}js();Xr();return}function ns(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;os();if(!(c[d>>2]|0)){i=b;return}ps();do if(c[17708]|0){if(c[(c[17709]|0)+52>>2]|0)Fe(51187,51215,767,51229);if(c[(c[17710]|0)+52>>2]|0)Fe(51254,51215,768,51229);if(c[(c[17711]|0)+52>>2]|0)Fe(51284,51215,769,51229);else{rs(c[17709]|0);rs(c[17710]|0);rs(c[17711]|0);break}}else{c[17708]=of(48)|0;c[17709]=pf(1,68)|0;qs(c[17709]|0);c[17710]=qf(1,68)|0;qs(c[17710]|0);c[17711]=qf(1,68)|0;qs(c[17711]|0)}while(0);ss();i=b;return}function os(){if(c[17706]|0)return;c[17706]=1;c[17707]=0;return}function ps(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[d>>2]=ut(13e3)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(51151,b)}else{c[17707]=1;i=a;return}}function qs(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;a[c[e>>2]>>0]=17;a[(c[e>>2]|0)+16>>0]=42;a[(c[e>>2]|0)+33>>0]=-119;a[(c[e>>2]|0)+50>>0]=-4;i=d;return}function rs(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b;f=b+4|0;c[f>>2]=a;if((((d[c[f>>2]>>0]|0|0)==17?(d[(c[f>>2]|0)+16>>0]|0|0)==42:0)?(d[(c[f>>2]|0)+33>>0]|0|0)==137:0)?(d[(c[f>>2]|0)+50>>0]|0|0)==252:0){i=b;return}c[e>>2]=c[f>>2];Je(51317,e)}function ss(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[17707]=0;c[d>>2]=vt(13e3)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(51363,b)}else{i=a;return}}function ts(){ps();at(0,0,0,0)|0;ss();return}function us(){return}function vs(){return 0}function ws(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;ns(1);ps();d=c[f>>2]|0;f=c[g>>2]|0;if((c[h>>2]|0)==2){xs(d,f,c[17711]|0);ss();i=e;return}else{xs(d,f,c[17710]|0);ss();i=e;return}}function xs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f;h=f+12|0;k=f+8|0;l=f+4|0;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[h>>2]|0))Fe(52514,51215,685,52537);if(!(c[l>>2]|0))Fe(51399,51215,686,52537);rs(c[l>>2]|0);do if(!(c[(c[l>>2]|0)+4>>2]|0)){if((c[l>>2]|0)==(c[17709]|0)){e=ys(1)|0;c[(c[l>>2]|0)+4>>2]=e}else{e=ys(0)|0;c[(c[l>>2]|0)+4>>2]=e}if(c[(c[l>>2]|0)+4>>2]|0){e=Kv()|0;c[(c[l>>2]|0)+60>>2]=e;break}else Je(51932,g)}while(0);if(!((a[(c[l>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))Cs(c[l>>2]|0);e=c[(c[l>>2]|0)+60>>2]|0;if((e|0)==(Kv()|0)?(e=c[(c[l>>2]|0)+64>>2]|0,(e|0)==(Kv()|0)):0)if(Es(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)Je(51932,g);else{rs(c[l>>2]|0);i=f;return}Sg(51215,714,52537,0,51669);Je(51932,g)}function ys(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+8|0;h=e+48|0;k=e+44|0;l=e+40|0;m=e+36|0;n=e+32|0;o=e+28|0;p=e+24|0;q=e+52|0;r=e;s=e+20|0;c[k>>2]=b;if(!(c[17707]|0))Fe(51407,51215,596,51426);c[m>>2]=jh(l,7,1,1)|0;if(c[m>>2]|0){c[g>>2]=zs(c[m>>2]|0)|0;Ie(51444,g);c[h>>2]=0;t=c[h>>2]|0;i=e;return t|0}if(c[k>>2]|0){c[n>>2]=mf(16)|0;xs(c[n>>2]|0,16,c[17710]|0)}else c[n>>2]=As(16)|0;c[m>>2]=wh(c[l>>2]|0,c[n>>2]|0,16)|0;c[o>>2]=c[n>>2];c[p>>2]=16;a[q>>0]=0;k=r;c[k>>2]=d[q>>0];c[k+4>>2]=0;while(1){if(!(c[o>>2]&7|0?(c[p>>2]|0)!=0:0))break;a[c[o>>2]>>0]=a[q>>0]|0;c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1}if((c[p>>2]|0)>>>0>=8){k=r;g=Xw(c[k>>2]|0,c[k+4>>2]|0,16843009,16843009)|0;k=r;c[k>>2]=g;c[k+4>>2]=C;do{c[s>>2]=c[o>>2];k=r;g=c[k+4>>2]|0;b=c[s>>2]|0;c[b>>2]=c[k>>2];c[b+4>>2]=g;c[p>>2]=(c[p>>2]|0)-8;c[o>>2]=(c[o>>2]|0)+8}while((c[p>>2]|0)>>>0>=8)}while(1){if(!(c[p>>2]|0))break;a[c[o>>2]>>0]=a[q>>0]|0;c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+-1}hf(c[n>>2]|0);if(c[m>>2]|0){c[f>>2]=zs(c[m>>2]|0)|0;Ie(51593,f);oh(c[l>>2]|0);c[h>>2]=0;t=c[h>>2]|0;i=e;return t|0}else{c[h>>2]=c[l>>2];t=c[h>>2]|0;i=e;return t|0}return 0}function zs(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ot(c[d>>2]|0)|0;i=b;return a|0}function As(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;if(c[17712]|0)Fe(51487,51215,552,51511);c[17712]=of(c[e>>2]|0)|0;c[17713]=c[e>>2];c[17714]=0;c[g>>2]=at(4,0,16,2)|0;if((c[g>>2]|0)<0){h=c[17712]|0;hf(h);c[17712]=0;Je(51565,d)}if((c[17714]|0)!=(c[17713]|0)){h=c[17712]|0;hf(h);c[17712]=0;Je(51565,d)}else{c[f>>2]=c[17712];c[17712]=0;i=b;return c[f>>2]|0}return 0}function Bs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0;g=i;i=i+16|0;if((i|0)>=(j|0))U();h=g+12|0;k=g+8|0;l=g;c[h>>2]=b;c[k>>2]=e;c[g+4>>2]=f;c[l>>2]=c[h>>2];if(!(c[17707]|0))Fe(51407,51215,531,51523);if(!(c[17712]|0))Fe(51542,51215,532,51523);while(1){h=c[k>>2]|0;c[k>>2]=h+-1;if(!h){m=8;break}if((c[17714]|0)>>>0>=(c[17713]|0)>>>0){m=8;break}h=c[l>>2]|0;c[l>>2]=h+1;f=d[h>>0]|0;h=c[17714]|0;c[17714]=h+1;e=(c[17712]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f}if((m|0)==8){i=g;return}}function Cs(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;if(!(c[17707]|0))Fe(51407,51215,658,51625);b=(c[e>>2]|0)+17|0;if((c[e>>2]|0)==(c[17709]|0)){xs(b,16,c[17710]|0);f=(c[e>>2]|0)+8|0;a[f>>0]=a[f>>0]&-2|1;f=Kv()|0;c[(c[e>>2]|0)+64>>2]=f;i=d;return}else{Ds(b,16);b=(c[e>>2]|0)+8|0;a[b>>0]=a[b>>0]&-2|1;b=Kv()|0;c[(c[e>>2]|0)+64>>2]=b;i=d;return}}function Ds(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+32|0;o=f;p=f+8|0;c[g>>2]=b;c[h>>2]=e;if(!(c[17707]|0))Fe(51407,51215,642,51637);if((c[h>>2]|0)!=16)Fe(51656,51215,643,51637);c[k>>2]=As(16)|0;h=c[g>>2]|0;g=c[k>>2]|0;e=h+16|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(e|0));c[l>>2]=c[k>>2];c[m>>2]=16;a[n>>0]=0;g=o;c[g>>2]=d[n>>0];c[g+4>>2]=0;while(1){if(!(c[l>>2]&7|0?(c[m>>2]|0)!=0:0))break;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}if((c[m>>2]|0)>>>0>=8){g=o;h=Xw(c[g>>2]|0,c[g+4>>2]|0,16843009,16843009)|0;g=o;c[g>>2]=h;c[g+4>>2]=C;do{c[p>>2]=c[l>>2];g=o;h=c[g+4>>2]|0;e=c[p>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=h;c[m>>2]=(c[m>>2]|0)-8;c[l>>2]=(c[l>>2]|0)+8}while((c[m>>2]|0)>>>0>=8)}while(1){if(!(c[m>>2]|0))break;a[c[l>>2]>>0]=a[n>>0]|0;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+-1}hf(c[k>>2]|0);i=f;return}function Es(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+80|0;if((i|0)>=(j|0))U();h=g+48|0;k=g+44|0;l=g+40|0;m=g+36|0;n=g+56|0;o=g+32|0;p=g+28|0;q=g+24|0;r=g+20|0;s=g+16|0;t=g+12|0;u=g+52|0;v=g;w=g+8|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;if(!(c[17707]|0))Fe(51407,51215,444,51723);if(!(c[(c[m>>2]|0)+4>>2]|0))Fe(51739,51215,445,51723);if(!((a[(c[m>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))Fe(51758,51215,446,51723);if(!(c[17708]|0))Fe(51777,51215,448,51723);c[o>>2]=c[17708];c[p>>2]=(c[17708]|0)+16;c[q>>2]=(c[17708]|0)+32;while(1){if(!(c[l>>2]|0)){x=33;break}if((c[(c[m>>2]|0)+52>>2]|0)==0?(c[(c[m>>2]|0)+12>>2]|0)>>>0>1e3:0){Cs(c[m>>2]|0);c[(c[m>>2]|0)+12>>2]=0}c[r>>2]=(c[l>>2]|0)>>>0<16?c[l>>2]|0:16;Fs(n,16,c[m>>2]|0);Gs(c[q>>2]|0,n,(c[m>>2]|0)+17|0,c[(c[m>>2]|0)+4>>2]|0,c[o>>2]|0,c[p>>2]|0);f=(c[m>>2]|0)+12|0;c[f>>2]=(c[f>>2]|0)+1;if(!((((d[(c[m>>2]|0)+51>>0]|0|0?c[(c[m>>2]|0)+52>>2]|0:0)?(c[m>>2]|0)!=(c[17709]|0):0)?(c[m>>2]|0)!=(c[17710]|0):0)?(c[m>>2]|0)!=(c[17711]|0):0)){f=(c[m>>2]|0)+34|0;e=c[q>>2]|0;if(!((a[(c[m>>2]|0)+8>>0]<<6&255)<<24>>24>>7<<24>>24)){y=f;z=e;A=y+16|0;do{a[y>>0]=a[z>>0]|0;y=y+1|0;z=z+1|0}while((y|0)<(A|0));b=(c[m>>2]|0)+8|0;a[b>>0]=a[b>>0]&-3|2;continue}if(!(vv(f,e,16)|0)){x=22;break}y=(c[m>>2]|0)+34|0;z=c[q>>2]|0;A=y+16|0;do{a[y>>0]=a[z>>0]|0;y=y+1|0;z=z+1|0}while((y|0)<(A|0))}Ow(c[k>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;c[s>>2]=c[q>>2];c[t>>2]=16;a[u>>0]=0;e=v;c[e>>2]=d[u>>0];c[e+4>>2]=0;while(1){if(!(c[s>>2]&7|0?(c[t>>2]|0)!=0:0))break;a[c[s>>2]>>0]=a[u>>0]|0;c[s>>2]=(c[s>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1}if((c[t>>2]|0)>>>0>=8){e=v;f=Xw(c[e>>2]|0,c[e+4>>2]|0,16843009,16843009)|0;e=v;c[e>>2]=f;c[e+4>>2]=C;do{c[w>>2]=c[s>>2];e=v;f=c[e+4>>2]|0;b=c[w>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=f;c[t>>2]=(c[t>>2]|0)-8;c[s>>2]=(c[s>>2]|0)+8}while((c[t>>2]|0)>>>0>=8)}while(1){if(!(c[t>>2]|0))break;a[c[s>>2]>>0]=a[u>>0]|0;c[s>>2]=(c[s>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1}c[k>>2]=(c[k>>2]|0)+(c[r>>2]|0);c[l>>2]=(c[l>>2]|0)-(c[r>>2]|0)}if((x|0)==22){Sg(51215,502,51723,0,51892);c[h>>2]=-1;B=c[h>>2]|0;i=g;return B|0}else if((x|0)==33){c[h>>2]=0;B=c[h>>2]|0;i=g;return B|0}return 0}function Fs(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+8|0;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if((c[m>>2]|0)!=16)Fe(51656,51215,273,51807);if(!(c[17707]|0))Fe(51407,51215,274,51807);if(((c[(c[n>>2]|0)+52>>2]|0?(c[n>>2]|0)!=(c[17709]|0):0)?(c[n>>2]|0)!=(c[17710]|0):0)?(c[n>>2]|0)!=(c[17711]|0):0){m=c[l>>2]|0;g=c[(c[n>>2]|0)+52>>2]|0;f=m+16|0;do{a[m>>0]=a[g>>0]|0;m=m+1|0;g=g+1|0}while((m|0)<(f|0));a[(c[l>>2]|0)+12>>0]=(c[(c[n>>2]|0)+56>>2]|0)>>>24;a[(c[l>>2]|0)+13>>0]=(c[(c[n>>2]|0)+56>>2]|0)>>>16;a[(c[l>>2]|0)+14>>0]=(c[(c[n>>2]|0)+56>>2]|0)>>>8;a[(c[l>>2]|0)+15>>0]=c[(c[n>>2]|0)+56>>2];g=(c[n>>2]|0)+56|0;c[g>>2]=(c[g>>2]|0)+1;i=h;return}if(!(c[17715]|0)){c[17716]=Kv()|0;c[17717]=bw()|0}if(jb(p|0,0)|0){c[k>>2]=xu(c[(fu()|0)>>2]|0)|0;Je(51819,k)}c[o>>2]=c[p+4>>2];c[o>>2]=c[o>>2]<<4;if((c[p>>2]|0)==(c[17715]|0)?(c[o>>2]|0)==(c[17718]|0):0){b[35736]=(b[35736]|0)+1<<16>>16;b[35736]=(e[35736]|0)&4095}else{b[35736]=0;c[17715]=c[p>>2];c[17718]=c[o>>2]}a[c[l>>2]>>0]=c[p>>2]>>24;a[(c[l>>2]|0)+1>>0]=c[p>>2]>>16;a[(c[l>>2]|0)+2>>0]=c[p>>2]>>8;a[(c[l>>2]|0)+3>>0]=c[p>>2];a[(c[l>>2]|0)+4>>0]=(c[o>>2]|0)>>>16;a[(c[l>>2]|0)+5>>0]=(c[o>>2]|0)>>>8;a[(c[l>>2]|0)+6>>0]=c[o>>2]&240|(e[35736]|0)>>8&15;a[(c[l>>2]|0)+7>>0]=e[35736]|0;a[(c[l>>2]|0)+8>>0]=(c[17716]|0)>>>24;a[(c[l>>2]|0)+9>>0]=(c[17716]|0)>>>16;a[(c[l>>2]|0)+10>>0]=(c[17716]|0)>>>8;a[(c[l>>2]|0)+11>>0]=c[17716];a[(c[l>>2]|0)+12>>0]=(c[17717]|0)>>>24;a[(c[l>>2]|0)+13>>0]=(c[17717]|0)>>>16;a[(c[l>>2]|0)+14>>0]=(c[17717]|0)>>>8;a[(c[l>>2]|0)+15>>0]=c[17717];l=(c[17717]|0)+1|0;c[17717]=l;if(l|0){i=h;return}c[17716]=(c[17716]|0)+1;i=h;return}function Gs(b,e,f,g,h,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+80|0;if((i|0)>=(j|0))U();m=l+60|0;n=l+56|0;o=l+52|0;p=l+48|0;q=l+44|0;r=l+40|0;s=l+36|0;t=l+32|0;u=l+65|0;v=l+8|0;w=l+28|0;x=l+24|0;y=l+20|0;z=l+64|0;A=l;B=l+16|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=k;Hs(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,16);Is(c[r>>2]|0,c[q>>2]|0,c[o>>2]|0,16);Hs(c[p>>2]|0,c[m>>2]|0,c[r>>2]|0,16);Is(c[r>>2]|0,c[m>>2]|0,c[q>>2]|0,16);Hs(c[p>>2]|0,c[o>>2]|0,c[r>>2]|0,16);c[s>>2]=c[q>>2];c[t>>2]=16;a[u>>0]=0;q=v;c[q>>2]=d[u>>0];c[q+4>>2]=0;while(1){if(!(c[s>>2]&7|0?(c[t>>2]|0)!=0:0))break;a[c[s>>2]>>0]=a[u>>0]|0;c[s>>2]=(c[s>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1}if((c[t>>2]|0)>>>0>=8){q=v;o=Xw(c[q>>2]|0,c[q+4>>2]|0,16843009,16843009)|0;q=v;c[q>>2]=o;c[q+4>>2]=C;do{c[w>>2]=c[s>>2];q=v;o=c[q+4>>2]|0;p=c[w>>2]|0;c[p>>2]=c[q>>2];c[p+4>>2]=o;c[t>>2]=(c[t>>2]|0)-8;c[s>>2]=(c[s>>2]|0)+8}while((c[t>>2]|0)>>>0>=8)}while(1){if(!(c[t>>2]|0))break;a[c[s>>2]>>0]=a[u>>0]|0;c[s>>2]=(c[s>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1}c[x>>2]=c[r>>2];c[y>>2]=16;a[z>>0]=0;r=A;c[r>>2]=d[z>>0];c[r+4>>2]=0;while(1){if(!(c[x>>2]&7|0?(c[y>>2]|0)!=0:0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}if((c[y>>2]|0)>>>0>=8){r=A;t=Xw(c[r>>2]|0,c[r+4>>2]|0,16843009,16843009)|0;r=A;c[r>>2]=t;c[r+4>>2]=C;do{c[B>>2]=c[x>>2];r=A;t=c[r+4>>2]|0;s=c[B>>2]|0;c[s>>2]=c[r>>2];c[s+4>>2]=t;c[y>>2]=(c[y>>2]|0)-8;c[x>>2]=(c[x>>2]|0)+8}while((c[y>>2]|0)>>>0>=8)}while(1){if(!(c[y>>2]|0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}i=l;return}function Hs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((c[m>>2]|0)!=16)Fe(51656,51215,386,51846);c[n>>2]=ph(c[h>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[n>>2]|0){c[g>>2]=zs(c[n>>2]|0)|0;Je(51858,g)}else{i=f;return}}function Is(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;if((i|0)>=(j|0))U();k=h+12|0;l=h+8|0;m=h+4|0;n=h;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;while(1){if(!(c[n>>2]|0))break;a[c[k>>2]>>0]=(d[c[l>>2]>>0]|0)^(d[c[m>>2]>>0]|0);c[n>>2]=(c[n>>2]|0)+-1;c[l>>2]=(c[l>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}i=h;return}function Js(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;ns(1);ps();xs(c[e>>2]|0,c[f>>2]|0,c[17709]|0);ss();i=d;return}function Ks(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;Xm(b+8|0,8,1);c[e>>2]=Ls(c[d>>2]|0)|0;d=Ms(c[e>>2]|0)|0;i=b;return d|0}function Ls(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;n=e+24|0;c[f>>2]=b;c[m>>2]=0;if(!(c[17708]|0))Fe(51777,51215,912,51961);c[k>>2]=pf(1,68)|0;qs(c[k>>2]|0);ps();c[g>>2]=0;a:while(1){if((c[g>>2]|0)>>>0>=3)break;c[l>>2]=jh((c[k>>2]|0)+4|0,7,1,1)|0;if(c[l>>2]|0){o=6;break}c[l>>2]=wh(c[(c[k>>2]|0)+4>>2]|0,52012+((c[g>>2]|0)*96|0)|0,16)|0;if(c[l>>2]|0){o=8;break}b=Kv()|0;c[(c[k>>2]|0)+60>>2]=b;b=(c[k>>2]|0)+17|0;p=52012+((c[g>>2]|0)*96|0)+32|0;q=b+16|0;do{a[b>>0]=a[p>>0]|0;b=b+1|0;p=p+1|0}while((b|0)<(q|0));p=(c[k>>2]|0)+8|0;a[p>>0]=a[p>>0]&-2|1;p=Kv()|0;c[(c[k>>2]|0)+64>>2]=p;c[(c[k>>2]|0)+52>>2]=52012+((c[g>>2]|0)*96|0)+16;c[(c[k>>2]|0)+56>>2]=(d[52012+((c[g>>2]|0)*96|0)+16+12>>0]|0)<<24|(d[52012+((c[g>>2]|0)*96|0)+16+13>>0]|0)<<16|(d[52012+((c[g>>2]|0)*96|0)+16+14>>0]|0)<<8|(d[52012+((c[g>>2]|0)*96|0)+16+15>>0]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=3)break;if(Es(n,16,c[k>>2]|0)|0){o=12;break a}if(vv(n,52012+((c[g>>2]|0)*96|0)+48+(c[h>>2]<<4)|0,16)|0){o=14;break a}c[h>>2]=(c[h>>2]|0)+1}p=c[(c[k>>2]|0)+60>>2]|0;if((p|0)!=(Kv()|0)){o=18;break}p=c[(c[k>>2]|0)+64>>2]|0;if((p|0)!=(Kv()|0)){o=18;break}oh(c[(c[k>>2]|0)+4>>2]|0);c[(c[k>>2]|0)+4>>2]=0;p=(c[k>>2]|0)+8|0;a[p>>0]=a[p>>0]&-2;rs(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if((o|0)==6)c[m>>2]=51974;else if((o|0)==8)c[m>>2]=52300;else if((o|0)==12)c[m>>2]=52326;else if((o|0)==14)c[m>>2]=52357;else if((o|0)==18)c[m>>2]=52395;ss();oh(c[(c[k>>2]|0)+4>>2]|0);rs(c[k>>2]|0);hf(c[k>>2]|0);if(!((c[f>>2]|0)!=0&(c[m>>2]|0)!=0)){r=c[m>>2]|0;s=(r|0)!=0;t=s?50:0;i=e;return t|0}Cb[c[f>>2]&1](52417,0,52424,c[m>>2]|0);r=c[m>>2]|0;s=(r|0)!=0;t=s?50:0;i=e;return t|0}function Ms(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ns(1,c[d>>2]|0)|0;i=b;return a|0}function Ns(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function Os(b,e,f,g,h,k,l,m){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;n=i;i=i+48|0;if((i|0)>=(j|0))U();o=n+40|0;p=n+36|0;q=n+32|0;r=n+28|0;s=n+24|0;t=n+20|0;u=n+16|0;v=n+12|0;w=n+8|0;x=n+4|0;y=n;c[p>>2]=b;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=k;c[v>>2]=l;c[w>>2]=m;ns(1);if((((((c[p>>2]|0)!=0&(c[r>>2]|0)!=0^1|(c[s>>2]|0)!=16)^1)&(c[t>>2]|0)!=0^1|(c[u>>2]|0)!=16)^1)&(c[v>>2]|0)!=0^1|(c[w>>2]|0)!=16){c[o>>2]=45;z=c[o>>2]|0;i=n;return z|0}c[y>>2]=jf(1,68+(c[w>>2]|0)|0)|0;if(!(c[y>>2]|0)){c[o>>2]=rt()|0;z=c[o>>2]|0;i=n;return z|0}qs(c[y>>2]|0);c[x>>2]=jh((c[y>>2]|0)+4|0,7,1,1)|0;if((c[x>>2]|0)==0?(c[x>>2]=wh(c[(c[y>>2]|0)+4>>2]|0,c[r>>2]|0,c[s>>2]|0)|0,(c[x>>2]|0)==0):0){s=Kv()|0;c[(c[y>>2]|0)+60>>2]=s;Ow((c[y>>2]|0)+17|0,c[t>>2]|0,c[u>>2]|0)|0;u=(c[y>>2]|0)+8|0;a[u>>0]=a[u>>0]&-2|1;u=Kv()|0;c[(c[y>>2]|0)+64>>2]=u;Ow((c[y>>2]|0)+68|0,c[v>>2]|0,c[w>>2]|0)|0;c[(c[y>>2]|0)+52>>2]=(c[y>>2]|0)+68;c[(c[y>>2]|0)+56>>2]=(d[(c[(c[y>>2]|0)+52>>2]|0)+12>>0]|0)<<24|(d[(c[(c[y>>2]|0)+52>>2]|0)+13>>0]|0)<<16|(d[(c[(c[y>>2]|0)+52>>2]|0)+14>>0]|0)<<8|(d[(c[(c[y>>2]|0)+52>>2]|0)+15>>0]|0);if(c[q>>2]&1|0)a[(c[y>>2]|0)+51>>0]=1;rs(c[y>>2]|0);c[x>>2]=0}q=c[y>>2]|0;if(c[x>>2]|0){oh(c[q+4>>2]|0);hf(c[y>>2]|0);c[c[p>>2]>>2]=0}else c[c[p>>2]>>2]=q;c[o>>2]=c[x>>2];z=c[o>>2]|0;i=n;return z|0}function Ps(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=c[g>>2];if((c[l>>2]|0)!=0&(c[h>>2]|0)!=0^1|(c[k>>2]|0)!=16){c[f>>2]=45;m=c[f>>2]|0;i=e;return m|0}else{ps();xs(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);ss();c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}return 0}function Qs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];if(!(c[e>>2]|0)){i=b;return}oh(c[(c[e>>2]|0)+4>>2]|0);hf(c[e>>2]|0);i=b;return}function Rs(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();c[b>>2]=a;Ss();i=b;return}function Ss(){if(c[17719]|0)return;c[17719]=1;c[17720]=0;return}function Ts(){Us();at(0,0,0,0)|0;Vs();return}function Us(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[d>>2]=ut(13044)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(52428,b)}else{c[17720]=1;i=a;return}}function Vs(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;d=a+4|0;c[17720]=0;c[d>>2]=vt(13044)|0;if(c[d>>2]|0){c[b>>2]=ot(c[d>>2]|0)|0;Je(52471,b)}else{i=a;return}}function Ws(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Rs(1);if((c[h>>2]|0)!=2)c[h>>2]=1;Us();Xs(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);Vs();i=e;return}function Xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(!(c[g>>2]|0))Fe(52514,52521,144,52537);c[17721]=c[g>>2];c[17722]=c[h>>2];c[17723]=0;c[l>>2]=at(5,0,c[h>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)<0){m=c[l>>2]|0;c[f>>2]=m;Je(52592,f)}if((c[17723]|0)!=(c[17722]|0)){m=c[l>>2]|0;c[f>>2]=m;Je(52592,f)}else{i=e;return}}function Ys(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f;c[g>>2]=b;c[h>>2]=d;c[f+4>>2]=e;c[k>>2]=c[g>>2];if(!(c[17720]|0))Fe(52548,52521,124,52569);if(!(c[17721]|0))Fe(52577,52521,125,52569);while(1){g=c[h>>2]|0;c[h>>2]=g+-1;if(!g){l=8;break}if((c[17723]|0)>>>0>=(c[17722]|0)>>>0){l=8;break}g=c[k>>2]|0;c[k>>2]=g+1;e=a[g>>0]|0;g=c[17723]|0;c[17723]=g+1;a[(c[17721]|0)+g>>0]=e}if((l|0)==8){i=f;return}}function Zs(){return c[17724]|0}function _s(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();c[d+4>>2]=a;c[d>>2]=b;i=d;return}function $s(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[d+8>>2]=a;c[d+4>>2]=b;c[e>>2]=0;i=d;return c[e>>2]|0}function at(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;h=i;i=i+1024|0;if((i|0)>=(j|0))U();k=h+24|0;l=h+16|0;m=h+8|0;n=h+236|0;o=h+232|0;p=h+228|0;q=h+224|0;r=h+220|0;s=h+216|0;t=h+212|0;u=h+248|0;v=h+208|0;w=h+204|0;x=h+200|0;y=h+196|0;z=h+192|0;A=h+64|0;B=h+56|0;D=h+52|0;E=h+48|0;F=h+44|0;G=h+40|0;H=h+36|0;I=h+32|0;J=h+240|0;K=h;L=h+28|0;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[w>>2]=c[q>>2];c[x>>2]=0;c[y>>2]=0;if(!(c[o>>2]|0)){if((c[3272]|0)!=-1){uv(c[3272]|0)|0;c[3272]=-1}if((c[3273]|0)!=-1){uv(c[3273]|0)|0;c[3273]=-1}c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}c[v>>2]=$s(c[o>>2]|0,c[p>>2]|0)|0;if((c[v>>2]|0)>>>0>(((c[q>>2]|0)>>>0)/2|0)>>>0)c[v>>2]=((c[q>>2]|0)>>>0)/2|0;if((c[q>>2]|0)>>>0>1)c[q>>2]=(c[q>>2]|0)-(c[v>>2]|0);if((c[r>>2]|0)>=2){if((c[3272]|0)==-1){c[3272]=bt(52638,(d[76083]|0)&1)|0;a[76083]=d[76083]|0|1}c[s>>2]=c[3272]}else{if((c[3273]|0)==-1){c[3273]=bt(52740,(d[76083]|0)&2)|0;a[76083]=d[76083]|0|2}c[s>>2]=c[3273]}c[z>>2]=0;while(1){if(!(c[q>>2]|0))break;if(!(!(c[y>>2]|0)?(c[x>>2]|0)==((c[w>>2]|0)-(c[q>>2]|0)|0):0)){c[x>>2]=(c[w>>2]|0)-(c[q>>2]|0);Jm(52753,88,c[x>>2]|0,c[w>>2]|0);c[y>>2]=1}if((c[s>>2]|0)<1024){c[F>>2]=A;c[E>>2]=32;while(1){if(!(c[E>>2]|0))break;r=c[F>>2]|0;c[F>>2]=r+4;c[r>>2]=0;c[E>>2]=(c[E>>2]|0)+-1}r=A+((((c[s>>2]|0)>>>0)/32|0)<<2)|0;c[r>>2]=c[r>>2]|1<<(((c[s>>2]|0)>>>0)%32|0);c[B>>2]=c[z>>2];c[B+4>>2]=c[z>>2]|0?0:1e5;r=Pv((c[s>>2]|0)+1|0,A,0,0,B)|0;c[D>>2]=r;if(!r){c[y>>2]=1;c[z>>2]=3;continue}if((c[D>>2]|0)==-1){c[m>>2]=xu(c[(fu()|0)>>2]|0)|0;Ie(52766,m);if(c[z>>2]|0)continue;c[z>>2]=1;continue}}do{c[G>>2]=(c[q>>2]|0)>>>0<768?c[q>>2]|0:768;c[t>>2]=Rv(c[s>>2]|0,u,c[G>>2]|0)|0;if((c[t>>2]|0)>=0?(c[t>>2]|0)>>>0>(c[G>>2]|0)>>>0:0){c[l>>2]=c[t>>2];Ie(52786,l);c[t>>2]=c[G>>2]}if((c[t>>2]|0)!=-1)break}while((c[(fu()|0)>>2]|0)==4);if((c[t>>2]|0)==-1){N=38;break}xb[c[o>>2]&7](u,c[t>>2]|0,c[p>>2]|0);c[q>>2]=(c[q>>2]|0)-(c[t>>2]|0)}if((N|0)==38){c[k>>2]=xu(c[(fu()|0)>>2]|0)|0;Je(52824,k)}c[H>>2]=u;c[I>>2]=768;a[J>>0]=0;u=K;c[u>>2]=d[J>>0];c[u+4>>2]=0;while(1){if(!(c[H>>2]&7|0?(c[I>>2]|0)!=0:0))break;a[c[H>>2]>>0]=a[J>>0]|0;c[H>>2]=(c[H>>2]|0)+1;c[I>>2]=(c[I>>2]|0)+-1}if((c[I>>2]|0)>>>0>=8){u=K;k=Xw(c[u>>2]|0,c[u+4>>2]|0,16843009,16843009)|0;u=K;c[u>>2]=k;c[u+4>>2]=C;do{c[L>>2]=c[H>>2];u=K;k=c[u+4>>2]|0;N=c[L>>2]|0;c[N>>2]=c[u>>2];c[N+4>>2]=k;c[I>>2]=(c[I>>2]|0)-8;c[H>>2]=(c[H>>2]|0)+8}while((c[I>>2]|0)>>>0>=8)}while(1){if(!(c[I>>2]|0))break;a[c[H>>2]>>0]=a[J>>0]|0;c[H>>2]=(c[H>>2]|0)+1;c[I>>2]=(c[I>>2]|0)+-1}if(c[y>>2]|0)Jm(52753,88,c[w>>2]|0,c[w>>2]|0);c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}function bt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d;h=d+40|0;k=d+36|0;l=d+32|0;m=d+24|0;c[h>>2]=a;c[k>>2]=b;if(c[k>>2]|0)Jm(52650,88,1,0);while(1){c[l>>2]=Sv(c[h>>2]|0,0,g)|0;if(!((c[l>>2]|0)==-1&(c[k>>2]|0)!=0))break;c[m>>2]=5;c[m+4>>2]=0;Jm(52666,88,0,c[m>>2]|0);Pv(0,0,0,0,m)|0}if((c[l>>2]|0)==-1){m=c[h>>2]|0;h=xu(c[(fu()|0)>>2]|0)|0;c[f>>2]=m;c[f+4>>2]=h;Je(52682,f)}if(!(ct(c[l>>2]|0)|0)){n=c[l>>2]|0;i=d;return n|0}f=c[l>>2]|0;h=xu(c[(fu()|0)>>2]|0)|0;c[e>>2]=f;c[e+4>>2]=h;Ie(52701,e);n=c[l>>2]|0;i=d;return n|0}function ct(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+8|0;e=b;f=b+20|0;g=b+16|0;h=b+12|0;c[g>>2]=a;a=c[g>>2]|0;c[e>>2]=0;c[h>>2]=tv(a,1,e)|0;e=c[h>>2]|0;if((c[h>>2]|0)<0){c[f>>2]=e;k=c[f>>2]|0;i=b;return k|0}else{c[h>>2]=e|1;e=c[g>>2]|0;c[d>>2]=c[h>>2];c[f>>2]=tv(e,2,d)|0;k=c[f>>2]|0;i=b;return k|0}return 0}function dt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f+72|0;h=f+68|0;k=f+64|0;l=f+60|0;m=f+56|0;n=f+52|0;o=f+48|0;p=f+44|0;q=f+40|0;r=f+36|0;s=f+32|0;t=f+28|0;u=f+24|0;v=f+20|0;w=f+16|0;x=f+12|0;y=f+8|0;z=f+4|0;A=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[n>>2]=0-(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(0-(c[n>>2]|0)<<2);c[h>>2]=(c[h>>2]|0)+(0-(c[n>>2]|0)<<2);c[m>>2]=0;do{c[z>>2]=c[(c[h>>2]|0)+(c[n>>2]<<2)>>2];c[A>>2]=c[l>>2];c[v>>2]=c[z>>2]&65535;c[x>>2]=(c[z>>2]|0)>>>16;c[w>>2]=c[A>>2]&65535;c[y>>2]=(c[A>>2]|0)>>>16;c[r>>2]=R(c[v>>2]|0,c[w>>2]|0)|0;c[s>>2]=R(c[v>>2]|0,c[y>>2]|0)|0;c[t>>2]=R(c[x>>2]|0,c[w>>2]|0)|0;c[u>>2]=R(c[x>>2]|0,c[y>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+((c[r>>2]|0)>>>16);c[s>>2]=(c[s>>2]|0)+(c[t>>2]|0);if((c[s>>2]|0)>>>0<(c[t>>2]|0)>>>0)c[u>>2]=(c[u>>2]|0)+65536;c[o>>2]=(c[u>>2]|0)+((c[s>>2]|0)>>>16);c[p>>2]=((c[s>>2]&65535)<<16)+(c[r>>2]&65535);c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0);c[m>>2]=((c[p>>2]|0)>>>0<(c[m>>2]|0)>>>0?1:0)+(c[o>>2]|0);c[q>>2]=c[(c[g>>2]|0)+(c[n>>2]<<2)>>2];c[p>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+((c[p>>2]|0)>>>0<(c[q>>2]|0)>>>0?1:0);c[(c[g>>2]|0)+(c[n>>2]<<2)>>2]=c[p>>2];k=(c[n>>2]|0)+1|0;c[n>>2]=k}while((k|0)!=0);i=f;return c[m>>2]|0}function et(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+8|0;h=e;k=e+44|0;l=e+40|0;m=e+36|0;n=e+32|0;o=e+28|0;p=e+24|0;q=e+20|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=kp(c[(c[k>>2]|0)+4>>2]|0)|0;c[n>>2]=Zn(c[k>>2]|0)|0;c[o>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[p>>2]=0;if(sf(1)|0){d=c[l>>2]|0;c[h>>2]=c[n>>2];c[h+4>>2]=d;Le(52857,h)}while(1){if((c[p>>2]|0)==0|(c[n>>2]|0)>>>0<32){hf(c[p>>2]|0);c[p>>2]=Wm(c[o>>2]|0,c[l>>2]|0)|0}else{c[q>>2]=Wm(4,c[l>>2]|0)|0;h=c[p>>2]|0;d=c[q>>2]|0;a[h>>0]=a[d>>0]|0;a[h+1>>0]=a[d+1>>0]|0;a[h+2>>0]=a[d+2>>0]|0;a[h+3>>0]=a[d+3>>0]|0;hf(c[q>>2]|0)}Lo(c[m>>2]|0,c[p>>2]|0,c[o>>2]|0,0);d=(_n(c[m>>2]|0,(c[n>>2]|0)-1|0)|0)!=0;ao(c[m>>2]|0,(c[n>>2]|0)-1|0);if(!d)co(c[m>>2]|0,(c[n>>2]|0)-1|0);if((jo(c[m>>2]|0,c[k>>2]|0)|0)>=0){if(!(sf(1)|0))continue;Le(52904,g);continue}if((io(c[m>>2]|0,0)|0)>0)break;if(!(sf(1)|0))continue;Le(52926,f)}hf(c[p>>2]|0);i=e;return c[m>>2]|0}function ft(b,d,e,f,g,h,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,F=0;l=i;i=i+80|0;if((i|0)>=(j|0))U();m=l+72|0;n=l+68|0;o=l+64|0;p=l+60|0;q=l+56|0;r=l+52|0;s=l+48|0;t=l+44|0;u=l+40|0;v=l+36|0;w=l+32|0;x=l+28|0;y=l+24|0;z=l+20|0;A=l+16|0;B=l+12|0;C=l+8|0;D=l+4|0;E=l;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[t>>2]=k;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[D>>2]=Zn(c[o>>2]|0)|0;if(!((c[D>>2]|0)!=0&(c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){c[m>>2]=32816;F=c[m>>2]|0;i=l;return F|0}k=bj(c[s>>2]|0)|0;if((k|0)!=(c[r>>2]|0)){c[m>>2]=5;F=c[m>>2]|0;i=l;return F|0}c[v>>2]=bf(c[r>>2]|0)|0;a:do if(c[v>>2]|0){c[E>>2]=0;while(1){if((c[E>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break;a[(c[v>>2]|0)+(c[E>>2]|0)>>0]=1;c[E>>2]=(c[E>>2]|0)+1}c[w>>2]=jf(1,c[r>>2]|0)|0;if(!(c[w>>2]|0)){c[u>>2]=rt()|0;break}c[u>>2]=gt(x,c[p>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0)|0;if(((((((c[u>>2]|0)==0?(c[u>>2]=ht(y,c[q>>2]|0,c[r>>2]<<3,c[o>>2]|0,c[D>>2]|0)|0,(c[u>>2]|0)==0):0)?(c[u>>2]=Fi(z,c[s>>2]|0,3)|0,(c[u>>2]|0)==0):0)?(c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Oi(c[z>>2]|0,76084,1),Oi(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Oi(c[z>>2]|0,c[y>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),k=c[w>>2]|0,h=_i(c[z>>2]|0,0)|0,Ow(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),h=c[v>>2]|0,k=_i(c[z>>2]|0,0)|0,Ow(h|0,k|0,c[r>>2]|0)|0,c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Oi(c[z>>2]|0,52946,1),Oi(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Oi(c[z>>2]|0,c[y>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),k=c[w>>2]|0,h=_i(c[z>>2]|0,0)|0,Ow(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0){Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);h=c[v>>2]|0;k=_i(c[z>>2]|0,0)|0;Ow(h|0,k|0,c[r>>2]|0)|0;c[A>>2]=bf(((((c[D>>2]|0)+7|0)>>>0)/8|0)+(c[r>>2]|0)|0)|0;if(!(c[A>>2]|0)){c[u>>2]=rt()|0;break}while(1){c[C>>2]=0;while(1){if((c[C>>2]|0)>>>0>=(c[D>>2]|0)>>>0)break;c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=_i(c[z>>2]|0,0)|0;Ow(k|0,h|0,c[r>>2]|0)|0;Ow((c[A>>2]|0)+((((c[C>>2]|0)+7|0)>>>0)/8|0)|0,c[v>>2]|0,c[r>>2]|0)|0;c[C>>2]=(c[C>>2]|0)+(c[r>>2]<<3)}qp(c[B>>2]|0);c[B>>2]=0;c[u>>2]=Mo(B,5,c[A>>2]|0,(((c[C>>2]|0)+7|0)>>>0)/8|0,0)|0;if(c[u>>2]|0)break a;if((c[C>>2]|0)>>>0>(c[D>>2]|0)>>>0)fo(c[B>>2]|0,c[B>>2]|0,(c[C>>2]|0)-(c[D>>2]|0)|0);if((jo(c[B>>2]|0,c[o>>2]|0)|0)<0?(io(c[B>>2]|0,0)|0)>0:0){if(!(c[t>>2]|0))break a;c[t>>2]=(c[t>>2]|0)+-1;c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Oi(c[z>>2]|0,76084,1);h=c[w>>2]|0;k=_i(c[z>>2]|0,0)|0;Ow(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=_i(c[z>>2]|0,0)|0;Ow(k|0,h|0,c[r>>2]|0)|0;continue}c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Oi(c[z>>2]|0,76084,1);h=c[w>>2]|0;k=_i(c[z>>2]|0,0)|0;Ow(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Ui(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Oi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=_i(c[z>>2]|0,0)|0;Ow(k|0,h|0,c[r>>2]|0)|0}}}else c[u>>2]=rt()|0;while(0);hf(c[A>>2]|0);Ni(c[z>>2]|0);hf(c[y>>2]|0);hf(c[x>>2]|0);hf(c[w>>2]|0);hf(c[v>>2]|0);v=c[B>>2]|0;if(c[u>>2]|0)qp(v);else c[c[n>>2]>>2]=v;c[m>>2]=c[u>>2];F=c[m>>2]|0;i=l;return F|0}function gt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=Qo(5,0,0,m,c[h>>2]|0)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];q=c[f>>2]|0;i=e;return q|0}if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=67;q=c[f>>2]|0;i=e;return q|0}if((c[m>>2]|0)>>>0<(c[k>>2]|0)>>>0)r=(c[k>>2]|0)-(c[m>>2]|0)|0;else r=0;c[n>>2]=r;c[o>>2]=(c[m>>2]|0)+(c[n>>2]|0);if(c[h>>2]|0?c[(c[h>>2]|0)+12>>2]&1|0:0)s=ef(c[o>>2]|0)|0;else s=bf(c[o>>2]|0)|0;c[p>>2]=s;if(!(c[p>>2]|0)){c[f>>2]=rt()|0;q=c[f>>2]|0;i=e;return q|0}if(c[n>>2]|0)Sw(c[p>>2]|0,0,c[n>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);c[l>>2]=Qo(5,(c[p>>2]|0)+(c[n>>2]|0)|0,(c[m>>2]|0)-(c[n>>2]|0)|0,0,c[h>>2]|0)|0;h=c[p>>2]|0;if(c[l>>2]|0){hf(h);c[f>>2]=c[l>>2];q=c[f>>2]|0;i=e;return q|0}else{c[c[g>>2]>>2]=h;c[f>>2]=0;q=c[f>>2]|0;i=e;return q|0}return 0}function ht(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;q=g;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=Mo(q,5,c[l>>2]|0,(((c[m>>2]|0)+7|0)>>>0)/8|0,0)|0;if(c[p>>2]|0){c[h>>2]=c[p>>2];r=c[h>>2]|0;i=g;return r|0}if((c[m>>2]|0)>>>0>(c[o>>2]|0)>>>0)fo(c[q>>2]|0,c[q>>2]|0,(c[m>>2]|0)-(c[o>>2]|0)|0);if((jo(c[q>>2]|0,c[n>>2]|0)|0)>=0)Vn(c[q>>2]|0,c[q>>2]|0,c[n>>2]|0);c[p>>2]=gt(c[k>>2]|0,c[q>>2]|0,(((c[o>>2]|0)+7|0)>>>0)/8|0)|0;qp(c[q>>2]|0);c[h>>2]=c[p>>2];r=c[h>>2]|0;i=g;return r|0}function it(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+28|0;g=e+24|0;h=e+20|0;k=e+16|0;l=e+12|0;m=e+8|0;n=e+4|0;o=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=0;do if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0){c[m>>2]=tp(c[g>>2]|0,n)|0;c[l>>2]=Mo(o,5,c[m>>2]|0,(((c[n>>2]|0)+7|0)>>>0)/8|0,0)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];p=c[f>>2]|0;i=e;return p|0}else{if((c[n>>2]|0)>>>0<=(c[k>>2]|0)>>>0)break;fo(c[o>>2]|0,c[o>>2]|0,(c[n>>2]|0)-(c[k>>2]|0)|0);break}}else q=7;while(0);if((q|0)==7)c[o>>2]=c[g>>2];c[c[h>>2]>>2]=c[o>>2];c[f>>2]=c[l>>2];p=c[f>>2]|0;i=e;return p|0}function jt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,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=i;i=i+96|0;if((i|0)>=(j|0))U();k=h;l=h+88|0;m=h+84|0;n=h+80|0;o=h+76|0;p=h+72|0;q=h+68|0;r=h+64|0;s=h+60|0;t=h+56|0;u=h+52|0;v=h+48|0;w=h+44|0;x=h+40|0;y=h+36|0;z=h+24|0;A=h+20|0;B=h+16|0;C=h+12|0;D=h+8|0;E=h+4|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=0;c[t>>2]=0;if(sf(1)|0)Pe(52948,c[m>>2]|0);c[D>>2]=Zn(c[(c[n>>2]|0)+32>>2]|0)|0;c[s>>2]=it(c[m>>2]|0,A,c[D>>2]|0)|0;if(c[s>>2]|0){c[l>>2]=c[s>>2];F=c[l>>2]|0;i=h;return F|0}c[u>>2]=0;c[v>>2]=ip(0)|0;c[w>>2]=ip(0)|0;c[x>>2]=ip(0)|0;c[y>>2]=ip(0)|0;ln(z);c[E>>2]=rn(c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+4>>2]|0,0,c[(c[n>>2]|0)+8>>2]|0,c[(c[n>>2]|0)+12>>2]|0,c[(c[n>>2]|0)+16>>2]|0)|0;while(1){qp(c[u>>2]|0);c[u>>2]=0;if((c[q>>2]&2|0)!=0&(c[r>>2]|0)!=0){if(!(c[m>>2]|0)){G=9;break}if(!(c[(c[m>>2]|0)+12>>2]&4)){G=9;break}c[B>>2]=tp(c[m>>2]|0,C)|0;c[s>>2]=ft(u,c[(c[n>>2]|0)+32>>2]|0,c[(c[n>>2]|0)+56>>2]|0,c[B>>2]|0,(((c[C>>2]|0)+7|0)>>>0)/8|0,c[r>>2]|0,c[t>>2]|0)|0;if(c[s>>2]|0)break;c[t>>2]=(c[t>>2]|0)+1}else c[u>>2]=et(c[(c[n>>2]|0)+32>>2]|0,1)|0;On(z,c[u>>2]|0,(c[n>>2]|0)+20|0,c[E>>2]|0);if(fn(c[y>>2]|0,0,z,c[E>>2]|0)|0){G=14;break}zo(c[o>>2]|0,c[y>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if((io(c[o>>2]|0,0)|0)!=0^1)continue;Eo(c[v>>2]|0,c[(c[n>>2]|0)+56>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0);Wn(c[w>>2]|0,c[A>>2]|0,c[v>>2]|0,c[(c[n>>2]|0)+32>>2]|0);yo(c[x>>2]|0,c[u>>2]|0,c[(c[n>>2]|0)+32>>2]|0)|0;Eo(c[p>>2]|0,c[x>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if(!((io(c[p>>2]|0,0)|0)!=0^1)){G=19;break}}if((G|0)==9)c[s>>2]=70;else if((G|0)==14){if(sf(1)|0)Le(53025,k);c[s>>2]=8}else if((G|0)==19?sf(1)|0:0){Pe(52966,c[o>>2]|0);Pe(52987,c[p>>2]|0)}vn(c[E>>2]|0);nn(z);qp(c[y>>2]|0);qp(c[x>>2]|0);qp(c[w>>2]|0);qp(c[v>>2]|0);qp(c[u>>2]|0);if((c[A>>2]|0)!=(c[m>>2]|0))qp(c[A>>2]|0);c[l>>2]=c[s>>2];F=c[l>>2]|0;i=h;return F|0}function kt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+112|0;if((i|0)>=(j|0))U();g=f+8|0;h=f;k=f+96|0;l=f+92|0;m=f+88|0;n=f+84|0;o=f+80|0;p=f+76|0;q=f+72|0;r=f+68|0;s=f+64|0;t=f+60|0;u=f+56|0;v=f+44|0;w=f+32|0;x=f+20|0;y=f+16|0;z=f+12|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=0;if((io(c[n>>2]|0,0)|0)>0?(jo(c[n>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){if((io(c[o>>2]|0,0)|0)>0?(jo(c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){c[z>>2]=Zn(c[(c[m>>2]|0)+32>>2]|0)|0;c[p>>2]=it(c[l>>2]|0,q,c[z>>2]|0)|0;if(c[p>>2]|0){c[k>>2]=c[p>>2];A=c[k>>2]|0;i=f;return A|0}c[r>>2]=ip(0)|0;c[s>>2]=ip(0)|0;c[t>>2]=ip(0)|0;c[u>>2]=ip(0)|0;ln(v);ln(w);ln(x);c[y>>2]=rn(c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+4>>2]|0,0,c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+12>>2]|0,c[(c[m>>2]|0)+16>>2]|0)|0;yo(c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0;Eo(c[s>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);On(w,c[s>>2]|0,(c[m>>2]|0)+20|0,c[y>>2]|0);Eo(c[t>>2]|0,c[n>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);On(x,c[t>>2]|0,(c[m>>2]|0)+44|0,c[y>>2]|0);In(v,w,x,c[y>>2]|0);do if(io(c[v+8>>2]|0,0)|0){if(fn(c[u>>2]|0,0,v,c[y>>2]|0)|0){if(sf(1)|0)Le(53131,g);c[p>>2]=8;break}zo(c[u>>2]|0,c[u>>2]|0,c[(c[m>>2]|0)+32>>2]|0);if(jo(c[u>>2]|0,c[n>>2]|0)|0){if(sf(1)|0){Pe(53177,c[u>>2]|0);Pe(53184,c[n>>2]|0);Pe(53191,c[o>>2]|0)}c[p>>2]=8}}else{if(sf(1)|0)Le(53109,h);c[p>>2]=8}while(0);vn(c[y>>2]|0);nn(x);nn(w);nn(v);qp(c[u>>2]|0);qp(c[t>>2]|0);qp(c[s>>2]|0);qp(c[r>>2]|0);if((c[q>>2]|0)!=(c[l>>2]|0))qp(c[q>>2]|0);c[k>>2]=c[p>>2];A=c[k>>2]|0;i=f;return A|0}c[k>>2]=8;A=c[k>>2]|0;i=f;return A|0}c[k>>2]=8;A=c[k>>2]|0;i=f;return A|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,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;f=i;i=i+96|0;if((i|0)>=(j|0))U();g=f;h=f+80|0;k=f+76|0;l=f+72|0;m=f+68|0;n=f+64|0;o=f+60|0;p=f+56|0;q=f+52|0;r=f+48|0;s=f+44|0;t=f+40|0;u=f+36|0;v=f+24|0;w=f+20|0;x=f+16|0;y=f+12|0;z=f+8|0;A=f+4|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=0;if(sf(1)|0)Pe(53008,c[k>>2]|0);c[z>>2]=Zn(c[(c[l>>2]|0)+32>>2]|0)|0;do if(c[k>>2]|0?c[(c[k>>2]|0)+12>>2]&4|0:0){c[x>>2]=tp(c[k>>2]|0,y)|0;c[o>>2]=Mo(w,5,c[x>>2]|0,(((c[y>>2]|0)+7|0)>>>0)/8|0,0)|0;if(c[o>>2]|0){c[h>>2]=c[o>>2];B=c[h>>2]|0;i=f;return B|0}else{if((c[y>>2]|0)>>>0<=(c[z>>2]|0)>>>0)break;fo(c[w>>2]|0,c[w>>2]|0,(c[y>>2]|0)-(c[z>>2]|0)|0);break}}else C=9;while(0);if((C|0)==9)c[w>>2]=c[k>>2];c[p>>2]=0;c[q>>2]=ip(0)|0;c[r>>2]=ip(0)|0;c[s>>2]=ip(0)|0;c[u>>2]=ip(0)|0;c[t>>2]=ip(0)|0;ln(v);c[A>>2]=rn(c[c[l>>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0,0,c[(c[l>>2]|0)+8>>2]|0,c[(c[l>>2]|0)+12>>2]|0,c[(c[l>>2]|0)+16>>2]|0)|0;zo(c[u>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!(io(c[u>>2]|0,0)|0))Bp(c[u>>2]|0,1)|0;while(1){qp(c[p>>2]|0);c[p>>2]=et(c[(c[l>>2]|0)+32>>2]|0,1)|0;On(v,c[p>>2]|0,(c[l>>2]|0)+20|0,c[A>>2]|0);if(fn(c[t>>2]|0,0,v,c[A>>2]|0)|0){C=13;break}zo(c[m>>2]|0,c[t>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if((io(c[m>>2]|0,0)|0)!=0^1)continue;Eo(c[q>>2]|0,c[(c[l>>2]|0)+56>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+32>>2]|0);Eo(c[s>>2]|0,c[p>>2]|0,c[u>>2]|0,c[(c[l>>2]|0)+32>>2]|0);Wn(c[n>>2]|0,c[s>>2]|0,c[q>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!((io(c[n>>2]|0,0)|0)!=0^1)){C=18;break}}if((C|0)==13){if(sf(1)|0)Le(53025,g);c[o>>2]=8}else if((C|0)==18?sf(1)|0:0){Pe(53069,c[m>>2]|0);Pe(53089,c[n>>2]|0)}vn(c[A>>2]|0);nn(v);qp(c[t>>2]|0);qp(c[u>>2]|0);qp(c[s>>2]|0);qp(c[r>>2]|0);qp(c[q>>2]|0);qp(c[p>>2]|0);if((c[w>>2]|0)!=(c[k>>2]|0))qp(c[w>>2]|0);c[h>>2]=c[o>>2];B=c[h>>2]|0;i=f;return B|0}function mt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+128|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+16|0;k=f+8|0;l=f;m=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;u=f+84|0;v=f+80|0;w=f+76|0;x=f+72|0;y=f+68|0;z=f+56|0;A=f+44|0;B=f+32|0;C=f+28|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=0;if((io(c[p>>2]|0,0)|0)>0?(jo(c[p>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){if((io(c[q>>2]|0,0)|0)>0?(jo(c[q>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){c[t>>2]=ip(0)|0;c[s>>2]=ip(0)|0;c[u>>2]=ip(0)|0;c[v>>2]=ip(0)|0;c[w>>2]=ip(0)|0;c[x>>2]=ip(0)|0;c[y>>2]=ip(0)|0;ln(z);ln(A);ln(B);c[C>>2]=rn(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,0,c[(c[o>>2]|0)+8>>2]|0,c[(c[o>>2]|0)+12>>2]|0,c[(c[o>>2]|0)+16>>2]|0)|0;zo(c[s>>2]|0,c[n>>2]|0,c[(c[o>>2]|0)+32>>2]|0);if(!(io(c[s>>2]|0,0)|0))Bp(c[s>>2]|0,1)|0;yo(c[w>>2]|0,c[s>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0;Eo(c[u>>2]|0,c[q>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Eo(c[x>>2]|0,c[p>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Xn(c[v>>2]|0,c[y>>2]|0,c[x>>2]|0,c[(c[o>>2]|0)+32>>2]|0);On(A,c[u>>2]|0,(c[o>>2]|0)+20|0,c[C>>2]|0);On(B,c[v>>2]|0,(c[o>>2]|0)+44|0,c[C>>2]|0);In(z,A,B,c[C>>2]|0);do if(io(c[z+8>>2]|0,0)|0){if(fn(c[t>>2]|0,0,z,c[C>>2]|0)|0){if(sf(1)|0)Le(53131,k);c[r>>2]=8;break}zo(c[t>>2]|0,c[t>>2]|0,c[(c[o>>2]|0)+32>>2]|0);n=(jo(c[t>>2]|0,c[p>>2]|0)|0)!=0;e=(sf(1)|0)!=0;if(!n){if(!e)break;Le(53224,g);break}if(e){Pe(53177,c[t>>2]|0);Pe(53184,c[p>>2]|0);Pe(53191,c[q>>2]|0);Le(53198,h)}c[r>>2]=8}else{if(sf(1)|0)Le(53109,l);c[r>>2]=8}while(0);vn(c[C>>2]|0);nn(B);nn(A);nn(z);qp(c[y>>2]|0);qp(c[x>>2]|0);qp(c[w>>2]|0);qp(c[v>>2]|0);qp(c[u>>2]|0);qp(c[t>>2]|0);qp(c[s>>2]|0);c[m>>2]=c[r>>2];D=c[m>>2]|0;i=f;return D|0}c[m>>2]=8;D=c[m>>2]|0;i=f;return D|0}c[m>>2]=8;D=c[m>>2]|0;i=f;return D|0}function nt(){return Ct()|0}function ot(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Pt(c[d>>2]|0)|0;i=b;return a|0}function pt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Tt(c[d>>2]|0)|0;i=b;return a|0}function qt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=St(c[d>>2]|0)|0;i=b;return a|0}function rt(){return Ut()|0}function st(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Et(c[d>>2]|0);i=b;return}function tt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=xt(c[d>>2]|0)|0;i=b;return a|0}function ut(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=zt(c[d>>2]|0)|0;i=b;return a|0}function vt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=At(c[d>>2]|0)|0;i=b;return a|0}function wt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Bt(c[d>>2]|0)|0;i=b;return a|0}function xt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];if(c[c[e>>2]>>2]|0)c[e>>2]=yt(c[d>>2]|0)|0;else c[c[e>>2]>>2]=1;c[f>>2]=ta((c[e>>2]|0)+4|0,0)|0;if(!(c[f>>2]|0)){g=c[f>>2]|0;i=b;return g|0}c[f>>2]=pt(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function yt(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];if((c[c[e>>2]>>2]|0)!=1)Ba(53246,53266,114,53279);else{i=b;return c[e>>2]|0}return 0}function zt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=yt(c[d>>2]|0)|0;c[f>>2]=Hw((c[e>>2]|0)+4|0)|0;if(!(c[f>>2]|0)){g=c[f>>2]|0;i=b;return g|0}c[f>>2]=pt(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function At(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=yt(c[d>>2]|0)|0;c[f>>2]=Nw((c[e>>2]|0)+4|0)|0;if(!(c[f>>2]|0)){g=c[f>>2]|0;i=b;return g|0}c[f>>2]=pt(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function Bt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+64|0;if((i|0)>=(j|0))U();d=b+52|0;e=b+48|0;f=b+44|0;g=b;c[d>>2]=a;c[e>>2]=yt(c[d>>2]|0)|0;c[f>>2]=Va((c[e>>2]|0)+4|0)|0;if(c[f>>2]|0){c[f>>2]=pt(c[f>>2]|0)|0;h=c[f>>2]|0;i=b;return h|0}else{e=g;a=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(a|0));c[g>>2]=1;e=c[d>>2]|0;d=g;a=e+44|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(a|0));h=c[f>>2]|0;i=b;return h|0}return 0}function Ct(){Dt();return 0}function Dt(){Ft()|0;return}function Et(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=c[d>>2]|0;c[(fu()|0)>>2]=a;i=b;return}function Ft(){if(c[17725]|0)return 0;c[17725]=1;lb(3)|0;return 0}function Gt(){Ht(0)|0;c[17727]=0;c[17728]=0;return}function Ht(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(c[d>>2]|0){It(c[d>>2]|0);c[e>>2]=Jt(c[d>>2]|0)|0;Mt(c[d>>2]|0);g=c[e>>2]|0;h=(g|0)!=0;k=h?-1:0;i=b;return k|0}c[e>>2]=0;Nt();c[f>>2]=c[17726];while(1){if(!(c[f>>2]|0))break;if(c[(c[f>>2]|0)+4>>2]|0){It(c[(c[f>>2]|0)+4>>2]|0);d=Jt(c[(c[f>>2]|0)+4>>2]|0)|0;c[e>>2]=c[e>>2]|d;Mt(c[(c[f>>2]|0)+4>>2]|0)}c[f>>2]=c[c[f>>2]>>2]}Ot();g=c[e>>2]|0;h=(g|0)!=0;k=h?-1:0;i=b;return k|0}function It(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b;c[e>>2]=a;if((d[(c[(c[e>>2]|0)+36>>2]|0)+1140>>0]|0)>>>5&1|0){i=b;return}zt((c[(c[e>>2]|0)+36>>2]|0)+1040|0)|0;i=b;return}function Jt(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;a=c[d>>2]|0;if((c[c[d>>2]>>2]|0)>>>16&1|0){c[e>>2]=Kt(a)|0;f=c[e>>2]|0;i=b;return f|0}else{Lt(a);c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}return 0}function Kt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[e>>2]=b;c[f>>2]=c[(c[(c[e>>2]|0)+36>>2]|0)+1108>>2];if(!((c[c[e>>2]>>2]|0)>>>16&1))Ba(53295,53317,1654,53327);do if(c[(c[e>>2]|0)+16>>2]|0){if(!(c[f>>2]|0)){c[g>>2]=95;break}c[k>>2]=0;c[g>>2]=0;do{if(((c[(c[e>>2]|0)+16>>2]|0)-(c[k>>2]|0)|0)<=0)break;if(!((c[g>>2]|0)!=0^1))break;c[l>>2]=sb[c[f>>2]&63](c[(c[(c[e>>2]|0)+36>>2]|0)+1084>>2]|0,(c[(c[e>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0,(c[(c[e>>2]|0)+16>>2]|0)-(c[k>>2]|0)|0)|0;if((c[l>>2]|0)==-1){c[h>>2]=0;c[g>>2]=-1}else c[h>>2]=c[l>>2];c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0)}while(!(c[g>>2]|0));b=(c[e>>2]|0)+20|0;c[b>>2]=(c[b>>2]|0)+(c[k>>2]|0);if((c[(c[e>>2]|0)+16>>2]|0)==(c[k>>2]|0)){b=(c[(c[e>>2]|0)+36>>2]|0)+1100|0;c[b>>2]=(c[b>>2]|0)+(c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+20>>2]=0;sb[c[f>>2]&63](c[(c[(c[e>>2]|0)+36>>2]|0)+1084>>2]|0,0,0)|0}}else c[g>>2]=0;while(0);if(!(c[g>>2]|0)){m=c[g>>2]|0;i=d;return m|0}f=(c[(c[e>>2]|0)+36>>2]|0)+1136|0;a[f>>0]=a[f>>0]&-2|1;m=c[g>>2]|0;i=d;return m|0}function Lt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if((c[c[d>>2]>>2]|0)>>>16&1|0)Ba(53336,53317,1722,53359);else{c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+32>>2]=0;i=b;return}}function Mt(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b;c[e>>2]=a;if((d[(c[(c[e>>2]|0)+36>>2]|0)+1140>>0]|0)>>>5&1|0){i=b;return}At((c[(c[e>>2]|0)+36>>2]|0)+1040|0)|0;i=b;return}function Nt(){zt(13096)|0;return}function Ot(){At(13096)|0;return}function Pt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=Qt(c[e>>2]|0)|0;do if(c[f>>2]&32768|0){c[g>>2]=qt(c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[f>>2]=16382;break}c[d>>2]=xu(c[g>>2]|0)|0;h=c[d>>2]|0;i=b;return h|0}while(0);c[d>>2]=53368+(c[13140+((Rt(c[f>>2]|0)|0)<<2)>>2]|0);h=c[d>>2]|0;i=b;return h|0}function Qt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Rt(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=c[d>>2]|0;if((c[d>>2]|0)>=0&(c[d>>2]|0)<=213){e=a-0|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=222&(c[d>>2]|0)<=254){e=f-8|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=257&(c[d>>2]|0)<=271){e=a-10|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=273&(c[d>>2]|0)<=281){e=f-11|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=721&(c[d>>2]|0)<=729){e=a-450|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=750&(c[d>>2]|0)<=752){e=f-470|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=754&(c[d>>2]|0)<=782){e=a-471|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=784&(c[d>>2]|0)<=789){e=f-472|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=800&(c[d>>2]|0)<=804){e=a-482|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=815&(c[d>>2]|0)<=822){e=f-492|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=832&(c[d>>2]|0)<=839){e=a-501|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=844&(c[d>>2]|0)<=844){e=f-505|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=848&(c[d>>2]|0)<=848){e=a-508|0;i=b;return e|0}f=c[d>>2]|0;if((a|0)>=881&(c[d>>2]|0)<=891){e=f-540|0;i=b;return e|0}a=c[d>>2]|0;if((f|0)>=1024&(c[d>>2]|0)<=1039){e=a-672|0;i=b;return e|0}else{e=(a|0)>=16381&(c[d>>2]|0)<=16383?(c[d>>2]|0)-16013|0:371;i=b;return e|0}return 0}function St(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;do if(c[e>>2]&32768|0){c[e>>2]=c[e>>2]&-32769;if((c[e>>2]|0)>>>0<141){c[d>>2]=c[14628+(c[e>>2]<<2)>>2];break}else{c[d>>2]=0;break}}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function Tt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=b;return g|0}a=c[e>>2]|0;do if(!((c[e>>2]|0)>=1&(c[e>>2]|0)<=11)){h=c[e>>2]|0;if((a|0)>=11&(c[e>>2]|0)<=35){k=h-0|0;break}l=c[e>>2]|0;if((h|0)>=35&(c[e>>2]|0)<=40){k=l+1|0;break}h=c[e>>2]|0;if((l|0)>=42&(c[e>>2]|0)<=57){k=h-0|0;break}l=c[e>>2]|0;if((h|0)>=59&(c[e>>2]|0)<=95){k=l-1|0;break}else{k=(l|0)>=95&(c[e>>2]|0)<=125?(c[e>>2]|0)-0|0:-1;break}}else k=a-1|0;while(0);c[f>>2]=k;if((c[f>>2]|0)<0){c[d>>2]=16382;g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=32768|c[15192+(c[f>>2]<<2)>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function Ut(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a+8|0;d=a+4|0;e=a;c[d>>2]=c[(fu()|0)>>2];if(!(c[d>>2]|0)){c[b>>2]=16381;f=c[b>>2]|0;i=a;return f|0}g=c[d>>2]|0;do if(!((c[d>>2]|0)>=1&(c[d>>2]|0)<=11)){h=c[d>>2]|0;if((g|0)>=11&(c[d>>2]|0)<=35){k=h-0|0;break}l=c[d>>2]|0;if((h|0)>=35&(c[d>>2]|0)<=40){k=l+1|0;break}h=c[d>>2]|0;if((l|0)>=42&(c[d>>2]|0)<=57){k=h-0|0;break}l=c[d>>2]|0;if((h|0)>=59&(c[d>>2]|0)<=95){k=l-1|0;break}else{k=(l|0)>=95&(c[d>>2]|0)<=125?(c[d>>2]|0)-0|0:-1;break}}else k=g-1|0;while(0);c[e>>2]=k;if((c[e>>2]|0)<0){c[b>>2]=16382;f=c[b>>2]|0;i=a;return f|0}else{c[b>>2]=32768|c[15192+(c[e>>2]<<2)>>2];f=c[b>>2]|0;i=a;return f|0}return 0}function Vt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[g>>2]|0;b=qd(c[d>>2]|0,c[d+4>>2]|0)|0;d=C;h=c[f>>2]|0;k=h;a[k>>0]=b;a[k+1>>0]=b>>8;a[k+2>>0]=b>>16;a[k+3>>0]=b>>24;b=h+4|0;a[b>>0]=d;a[b+1>>0]=d>>8;a[b+2>>0]=d>>16;a[b+3>>0]=d>>24;d=sv(c[(c[g>>2]|0)+8>>2]|0)|0;b=(c[f>>2]|0)+8|0;a[b>>0]=d;a[b+1>>0]=d>>8;a[b+2>>0]=d>>16;a[b+3>>0]=d>>24;d=(c[f>>2]|0)+12|0;f=(c[g>>2]|0)+12|0;g=d+12|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(g|0));i=e;return}function Wt(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+4|0;h=f;c[g>>2]=b;c[h>>2]=e;e=c[h>>2]|0;b=e;k=e+4|0;e=rd(d[b>>0]|d[b+1>>0]<<8|d[b+2>>0]<<16|d[b+3>>0]<<24,d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;k=c[g>>2]|0;c[k>>2]=e;c[k+4>>2]=C;k=(c[h>>2]|0)+8|0;e=wv(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)|0;c[(c[g>>2]|0)+8>>2]=e;e=(c[g>>2]|0)+12|0;g=(c[h>>2]|0)+12|0;h=e+12|0;do{a[e>>0]=a[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));i=f;return}function Xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Tu(c[f>>2]|0)|0;if((c[h>>2]|0)>>>0>=12){c[e>>2]=-1;k=c[e>>2]|0;i=d;return k|0}else{b=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;Ow((c[g>>2]|0)+12|0,c[f>>2]|0,c[h>>2]|0)|0;c[e>>2]=1;k=c[e>>2]|0;i=d;return k|0}return 0}function Yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;do if(0!=(Zt(c[f>>2]|0)|0)?0!=(Zt(c[g>>2]|0)|0):0)if(!(cv((c[f>>2]|0)+12|0,(c[g>>2]|0)+12|0)|0)){c[e>>2]=1;break}else{c[e>>2]=0;break}else h=3;while(0);if((h|0)==3)c[e>>2]=-1;i=d;return c[e>>2]|0}function Zt(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;i=d;return 0!=(a[(c[e>>2]|0)+12>>0]|0)|0}function _t(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+96|0;if((i|0)>=(j|0))U();e=d+64|0;f=d+56|0;g=d+48|0;h=d+92|0;k=d+88|0;l=d+84|0;m=d+24|0;n=d;o=d+80|0;p=d+76|0;q=d+72|0;c[k>>2]=a;c[l>>2]=b;if(1!=(Yt(c[k>>2]|0,c[l>>2]|0)|0)){c[o>>2]=349;if((c[3924]|0)==-1)c[3924]=Yb(1,0,61383,61392,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3924]|0))Xb();c[g>>2]=61383;c[g+4>>2]=349;bc(1,61409,g);Xb()}g=c[k>>2]|0;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[m+16>>2]=c[g+16>>2];c[m+20>>2]=c[g+20>>2];g=c[l>>2]|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];c[n+16>>2]=c[g+16>>2];c[n+20>>2]=c[g+20>>2];if(-1==($t(m)|0)){c[p>>2]=353;if((c[3925]|0)==-1)c[3925]=Yb(1,0,61383,61392,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3925]|0))Xb();c[f>>2]=61383;c[f+4>>2]=353;bc(1,61409,f);Xb()}if(-1==($t(n)|0)){c[q>>2]=355;if((c[3926]|0)==-1)c[3926]=Yb(1,0,61383,61392,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3926]|0))Xb();c[e>>2]=61383;c[e+4>>2]=355;bc(1,61409,e);Xb()}e=m;q=n;if(!((c[e>>2]|0)==(c[q>>2]|0)?(c[e+4>>2]|0)==(c[q+4>>2]|0):0)){q=m;e=c[q+4>>2]|0;f=n;p=c[f+4>>2]|0;if(e>>>0<p>>>0|((e|0)==(p|0)?(c[q>>2]|0)>>>0<(c[f>>2]|0)>>>0:0)){c[h>>2]=-1;r=c[h>>2]|0;i=d;return r|0}else{c[h>>2]=1;r=c[h>>2]|0;i=d;return r|0}}if((c[m+8>>2]|0)>>>0<(c[n+8>>2]|0)>>>0){c[h>>2]=-1;r=c[h>>2]|0;i=d;return r|0}if((c[m+8>>2]|0)>>>0>(c[n+8>>2]|0)>>>0){c[h>>2]=1;r=c[h>>2]|0;i=d;return r|0}else{c[h>>2]=0;r=c[h>>2]|0;i=d;return r|0}return 0}function $t(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if(1!=(Zt(c[e>>2]|0)|0)){c[d>>2]=-1;g=c[d>>2]|0;i=b;return g|0}c[f>>2]=0;while(1){a=c[e>>2]|0;if((c[a>>2]|0)!=-1?1:(c[a+4>>2]|0)!=-1)h=(c[(c[e>>2]|0)+8>>2]|0)>>>0>=1e6;else h=0;a=(c[e>>2]|0)+8|0;k=c[a>>2]|0;if(!h)break;c[a>>2]=k-1e6;a=c[e>>2]|0;l=a;m=Gw(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;l=a;c[l>>2]=m;c[l+4>>2]=C;c[f>>2]=1}if(k>>>0>=1e6){au(c[e>>2]|0);c[d>>2]=-1;g=c[d>>2]|0;i=b;return g|0}else{c[d>>2]=c[f>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function au(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;i=b;return}function bu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+64|0;g=e+56|0;h=e+48|0;k=e+96|0;l=e+92|0;m=e+88|0;n=e+84|0;o=e+24|0;p=e;q=e+80|0;r=e+76|0;s=e+72|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;if(1!=(Yt(c[m>>2]|0,c[n>>2]|0)|0)){au(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}d=c[m>>2]|0;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];c[o+16>>2]=c[d+16>>2];c[o+20>>2]=c[d+20>>2];d=c[n>>2]|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];c[p+16>>2]=c[d+16>>2];c[p+20>>2]=c[d+20>>2];if(-1!=($t(o)|0)?-1!=($t(p)|0):0){do if((c[o+8>>2]|0)>>>0<(c[p+8>>2]|0)>>>0){d=o;if(!(0==(c[d>>2]|0)?0==(c[d+4>>2]|0):0)){d=o+8|0;c[d>>2]=(c[d>>2]|0)+1e6;d=o;n=Gw(c[d>>2]|0,c[d+4>>2]|0,-1,-1)|0;d=o;c[d>>2]=n;c[d+4>>2]=C;break}au(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}while(0);d=o;n=c[d+4>>2]|0;m=p;b=c[m+4>>2]|0;if(n>>>0<b>>>0|((n|0)==(b|0)?(c[d>>2]|0)>>>0<(c[m>>2]|0)>>>0:0)){au(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}if(1!=(Xt(o+12|0,c[l>>2]|0)|0)){c[q>>2]=421;if((c[3927]|0)==-1)c[3927]=Yb(1,0,61383,61437,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3927]|0))Xb();c[h>>2]=61383;c[h+4>>2]=421;bc(1,61409,h);Xb()}if((c[o+8>>2]|0)>>>0<(c[p+8>>2]|0)>>>0){c[r>>2]=422;if((c[3928]|0)==-1)c[3928]=Yb(1,0,61383,61437,c[r>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3928]|0))Xb();c[g>>2]=61383;c[g+4>>2]=422;bc(1,61409,g);Xb()}c[(c[l>>2]|0)+8>>2]=(c[o+8>>2]|0)-(c[p+8>>2]|0);g=o;r=c[g+4>>2]|0;h=p;q=c[h+4>>2]|0;if(r>>>0>q>>>0|((r|0)==(q|0)?(c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0:0)){h=o;o=p;p=Fw(c[h>>2]|0,c[h+4>>2]|0,c[o>>2]|0,c[o+4>>2]|0)|0;o=c[l>>2]|0;c[o>>2]=p;c[o+4>>2]=C;if(0==(c[(c[l>>2]|0)+8>>2]|0)?(o=c[l>>2]|0,0==(c[o>>2]|0)?0==(c[o+4>>2]|0):0):0){c[k>>2]=0;t=c[k>>2]|0;i=e;return t|0}c[k>>2]=1;t=c[k>>2]|0;i=e;return t|0}c[s>>2]=424;if((c[3929]|0)==-1)c[3929]=Yb(1,0,61383,61437,c[s>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3929]|0))Xb();c[f>>2]=61383;c[f+4>>2]=424;bc(1,61409,f);Xb()}au(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}function cu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+72|0;g=e+96|0;h=e+92|0;k=e+88|0;l=e+84|0;m=e+48|0;n=e+24|0;o=e;p=e+80|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;if(1!=(Yt(c[k>>2]|0,c[l>>2]|0)|0)){au(c[h>>2]|0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}d=c[k>>2]|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[m+16>>2]=c[d+16>>2];c[m+20>>2]=c[d+20>>2];d=c[l>>2]|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[n+16>>2]=c[d+16>>2];c[n+20>>2]=c[d+20>>2];if(-1!=($t(m)|0)?-1!=($t(n)|0):0){if(1==(Xt((c[k>>2]|0)+12|0,o)|0)){k=m;d=n;l=Gw(c[k>>2]|0,c[k+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=o;c[d>>2]=l;c[d+4>>2]=C;d=o;l=c[d+4>>2]|0;k=m;b=c[k+4>>2]|0;if(l>>>0<b>>>0|((l|0)==(b|0)?(c[d>>2]|0)>>>0<(c[k>>2]|0)>>>0:0)){au(c[h>>2]|0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}c[o+8>>2]=(c[m+8>>2]|0)+(c[n+8>>2]|0);n=-1==($t(o)|0);m=c[h>>2]|0;if(n){au(m);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}else{c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];c[m+16>>2]=c[o+16>>2];c[m+20>>2]=c[o+20>>2];c[g>>2]=1;q=c[g>>2]|0;i=e;return q|0}}c[p>>2]=468;if((c[3930]|0)==-1)c[3930]=Yb(1,0,61383,61459,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3930]|0))Xb();c[f>>2]=61383;c[f+4>>2]=468;bc(1,61409,f);Xb()}au(c[h>>2]|0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}function du(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=c[a+60>>2];a=eu(wa(6,d|0)|0)|0;i=b;return a|0}function eu(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(fu()|0)>>2]=0-a;b=-1}else b=a;return b|0}function fu(){var a=0;if(!(c[17729]|0))a=70960;else a=c[(Yw()|0)+64>>2]|0;return a|0}function gu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f;c[b+36>>2]=25;if((c[b>>2]&64|0)==0?(c[g>>2]=c[b+60>>2],c[g+4>>2]=21505,c[g+8>>2]=f+12,_a(54,g|0)|0):0)a[b+75>>0]=-1;g=hu(b,d,e)|0;i=f;return g|0}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+16|0;g=e;h=e+32|0;k=a+28|0;l=c[k>>2]|0;c[h>>2]=l;m=a+20|0;n=(c[m>>2]|0)-l|0;c[h+4>>2]=n;c[h+8>>2]=b;c[h+12>>2]=d;b=a+60|0;l=a+44|0;o=h;h=2;p=n+d|0;while(1){if(!(c[17729]|0)){c[f>>2]=c[b>>2];c[f+4>>2]=o;c[f+8>>2]=h;q=eu(qb(146,f|0)|0)|0}else{ya(6,a|0);c[g>>2]=c[b>>2];c[g+4>>2]=o;c[g+8>>2]=h;n=eu(qb(146,g|0)|0)|0;ra(0);q=n}if((p|0)==(q|0)){r=6;break}if((q|0)<0){s=o;t=h;r=8;break}n=p-q|0;u=c[o+4>>2]|0;if(q>>>0<=u>>>0)if((h|0)==2){c[k>>2]=(c[k>>2]|0)+q;v=u;w=q;x=o;y=2}else{v=u;w=q;x=o;y=h}else{z=c[l>>2]|0;c[k>>2]=z;c[m>>2]=z;v=c[o+12>>2]|0;w=q-u|0;x=o+8|0;y=h+-1|0}c[x>>2]=(c[x>>2]|0)+w;c[x+4>>2]=v-w;o=x;h=y;p=n}if((r|0)==6){p=c[l>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);l=p;c[k>>2]=l;c[m>>2]=l;A=d}else if((r|0)==8){c[a+16>>2]=0;c[k>>2]=0;c[m>>2]=0;c[a>>2]=c[a>>2]|32;if((t|0)==2)A=0;else A=d-(c[s+4>>2]|0)|0}i=e;return A|0}function iu(a){a=a|0;if(!(c[a+68>>2]|0))ju(a);return}function ju(a){a=a|0;return}function ku(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+32|0;if((i|0)>=(j|0))U();f=e;g=e+20|0;c[f>>2]=c[a+60>>2];c[f+4>>2]=0;c[f+8>>2]=b;c[f+12>>2]=g;c[f+16>>2]=d;if((eu(mb(140,f|0)|0)|0)<0){c[g>>2]=-1;h=-1}else h=c[g>>2]|0;i=e;return h|0}function lu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+16|0;h=f;k=f+32|0;c[k>>2]=d;l=k+4|0;m=b+48|0;n=c[m>>2]|0;c[l>>2]=e-((n|0)!=0&1);o=b+44|0;c[k+8>>2]=c[o>>2];c[k+12>>2]=n;if(!(c[17729]|0)){c[g>>2]=c[b+60>>2];c[g+4>>2]=k;c[g+8>>2]=2;p=eu(pb(145,g|0)|0)|0}else{ya(7,b|0);c[h>>2]=c[b+60>>2];c[h+4>>2]=k;c[h+8>>2]=2;k=eu(pb(145,h|0)|0)|0;ra(0);p=k}if((p|0)>=1){k=c[l>>2]|0;if(p>>>0>k>>>0){l=c[o>>2]|0;o=b+4|0;c[o>>2]=l;h=l;c[b+8>>2]=h+(p-k);if(!(c[m>>2]|0))q=e;else{c[o>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;q=e}}else q=p}else{c[b>>2]=c[b>>2]|p&48^16;c[b+8>>2]=0;c[b+4>>2]=0;q=p}i=f;return q|0}function mu(a){a=a|0;if(!(c[a+68>>2]|0))ju(a);return}function nu(a){a=a|0;return ou(a)|0}function ou(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function pu(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=d;g=e}else{e=b;b=c;do{e=e+1|0;b=b+1|0;c=a[e>>0]|0;d=a[b>>0]|0}while(!(c<<24>>24==0?1:c<<24>>24!=d<<24>>24));f=c;g=d}return (f&255)-(g&255)|0}function qu(a){a=a|0;var b=0;b=(ru(a)|0)==0;return (b?a:a|32)|0}function ru(a){a=a|0;return (a+-65|0)>>>0<26|0}function su(a){a=a|0;return tu(a,0)|0}function tu(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=(f<<1)+-1|0;h=f+-1|0;a:do if(!((c+-43008|0)>>>0<22272|((c+-11776|0)>>>0<30784|((c+-1536|0)>>>0<2560|(uu(c)|0)==0)))){i=(f|0)!=0;if(i&(c+-4256|0)>>>0<46){if((c|0)>4293)switch(c|0){case 4295:case 4301:break;default:{j=c;break a}}j=c+7264|0;break}if((c+-11520|0)>>>0<38&(i^1)){if((c|0)>11557)switch(c|0){case 11559:case 11565:break;default:{j=c;break a}}j=c+-7264|0;break}else k=0;do{i=a[18842+(k<<2)+2>>0]|0;l=i<<24>>24;m=c-(e[18842+(k<<2)>>1]|0)|0;if((m-(l&h)|0)>>>0<(d[18842+(k<<2)+3>>0]|0)>>>0){n=i;o=l;p=m;q=13;break}k=k+1|0}while((k|0)!=61);if((q|0)==13)if(n<<24>>24==1){j=f+c-(p&1)|0;break}else{j=(R(o,g)|0)+c|0;break}m=1-f|0;l=b[18350+(m<<1)>>1]|0;b:do if(l<<16>>16){i=l;r=0;while(1){if((i&65535|0)==(c|0)){s=r;break}r=r+1|0;i=b[18350+(r<<2)+(m<<1)>>1]|0;if(!(i<<16>>16))break b}j=e[18350+(s<<2)+(f<<1)>>1]|0;break a}while(0);if((c+-66600+(f*40|0)|0)>>>0<40)j=c+-40+(f*80|0)|0;else j=c}else j=c;while(0);return j|0}function uu(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[61476+((d[61476+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=a>>>0<196606&1;return b|0}function vu(a){a=a|0;return tu(a,1)|0}function wu(a){a=a|0;return (a+-97|0)>>>0<26|0}function xu(b){b=b|0;var c=0,e=0,f=0,g=0,h=0,i=0,j=0;c=0;while(1){if((d[64452+c>>0]|0)==(b|0)){e=c;f=2;break}c=c+1|0;if((c|0)==87){g=87;h=64540;f=5;break}}if((f|0)==2)if(!e)i=64540;else{g=e;h=64540;f=5}if((f|0)==5)while(1){f=0;e=h;while(1){c=e+1|0;if(!(a[e>>0]|0)){j=c;break}else e=c}g=g+-1|0;if(!g){i=j;break}else{h=j;f=5}}return i|0}function yu(a){a=a|0;var b=0;if(!a)b=0;else b=(zu(16160,a)|0)!=0;return b&1|0}function zu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=a+((Au(a)|0)<<2)|0;else{e=a;while(1){a=c[e>>2]|0;if((a|0)==0|(a|0)==(b|0)){f=e;g=a;break}else e=e+4|0}d=g|0?f:0}return d|0}function Au(a){a=a|0;var b=0,d=0;b=a;while(1)if(!(c[b>>2]|0)){d=b;break}else b=b+4|0;return d-a>>2|0}function Bu(a){a=a|0;var b=0;if((a+-48|0)>>>0<10)b=1;else b=((a|32)+-97|0)>>>0<6;return b&1|0}function Cu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f;c[g>>2]=e;e=Du(a,b,d,g)|0;i=f;return e|0}function Du(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+128|0;if((i|0)>=(j|0))U();h=g+112|0;k=g;l=k;m=16248;n=l+112|0;do{c[l>>2]=c[m>>2];l=l+4|0;m=m+4|0}while((l|0)<(n|0));if((d+-1|0)>>>0>2147483646)if(!d){o=h;p=1;q=4}else{c[(fu()|0)>>2]=75;r=-1}else{o=b;p=d;q=4}if((q|0)==4){q=-2-o|0;d=p>>>0>q>>>0?q:p;c[k+48>>2]=d;p=k+20|0;c[p>>2]=o;c[k+44>>2]=o;q=o+d|0;o=k+16|0;c[o>>2]=q;c[k+28>>2]=q;q=Fu(k,e,f)|0;if(!d)r=q;else{d=c[p>>2]|0;a[d+(((d|0)==(c[o>>2]|0))<<31>>31)>>0]=0;r=q}}i=g;return r|0}function Eu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+20|0;f=c[e>>2]|0;g=(c[a+16>>2]|0)-f|0;a=g>>>0>d>>>0?d:g;Ow(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Fu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+224|0;if((i|0)>=(j|0))U();g=f+120|0;h=f+80|0;k=f;l=f+136|0;m=h;n=m+40|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));c[g>>2]=c[e>>2];if((Gu(0,d,g,k,h)|0)<0)o=-1;else{if((c[b+76>>2]|0)>-1)p=Ru(b)|0;else p=0;e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){n=b+44|0;q=c[n>>2]|0;c[n>>2]=l;r=b+28|0;c[r>>2]=l;s=b+20|0;c[s>>2]=l;c[e>>2]=80;t=b+16|0;c[t>>2]=l+80;l=Gu(b,d,g,k,h)|0;if(!q)u=l;else{sb[c[b+36>>2]&63](b,0,0)|0;v=(c[s>>2]|0)==0?-1:l;c[n>>2]=q;c[e>>2]=0;c[t>>2]=0;c[r>>2]=0;c[s>>2]=0;u=v}}else u=Gu(b,d,g,k,h)|0;h=c[b>>2]|0;c[b>>2]=h|m;if(p|0)ju(b);o=(h&32|0)==0?u:-1}i=f;return o|0}function Gu(e,f,g,l,m){e=e|0;f=f|0;g=g|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0.0,fb=0.0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0.0,mb=0.0,nb=0.0,ob=0.0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0.0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0.0,_b=0.0,$b=0.0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0;n=i;i=i+624|0;if((i|0)>=(j|0))U();o=n+24|0;p=n+16|0;q=n+588|0;r=n+576|0;s=n;t=n+536|0;u=n+8|0;v=n+528|0;w=(e|0)!=0;x=t+40|0;y=x;z=t+39|0;t=u+4|0;A=q;B=0-A|0;D=r+12|0;E=r+11|0;r=D;F=r-A|0;G=-2-A|0;H=r+2|0;I=o+288|0;J=q+9|0;K=J;L=q+8|0;M=0;N=0;O=0;P=f;a:while(1){do if((M|0)>-1)if((N|0)>(2147483647-M|0)){c[(fu()|0)>>2]=75;Q=-1;break}else{Q=N+M|0;break}else Q=M;while(0);f=a[P>>0]|0;if(!(f<<24>>24)){S=Q;T=O;V=244;break}else{W=f;X=P}b:while(1){switch(W<<24>>24){case 37:{Y=X;Z=X;V=9;break b;break}case 0:{_=X;$=X;break b;break}default:{}}f=X+1|0;W=a[f>>0]|0;X=f}c:do if((V|0)==9)while(1){V=0;if((a[Y+1>>0]|0)!=37){_=Y;$=Z;break c}f=Z+1|0;aa=Y+2|0;if((a[aa>>0]|0)==37){Y=aa;Z=f;V=9}else{_=aa;$=f;break}}while(0);f=$-P|0;if(w?(c[e>>2]&32|0)==0:0)Hu(P,f,e)|0;if(($|0)!=(P|0)){M=Q;N=f;P=_;continue}aa=_+1|0;ba=a[aa>>0]|0;ca=(ba<<24>>24)+-48|0;if(ca>>>0<10){da=(a[_+2>>0]|0)==36;ea=da?_+3|0:aa;fa=a[ea>>0]|0;ga=da?ca:-1;ha=da?1:O;ia=ea}else{fa=ba;ga=-1;ha=O;ia=aa}aa=fa<<24>>24;d:do if((aa&-32|0)==32){ba=aa;ea=fa;da=0;ca=ia;while(1){if(!(1<<ba+-32&75913)){ja=ea;ka=da;la=ca;break d}ma=1<<(ea<<24>>24)+-32|da;na=ca+1|0;oa=a[na>>0]|0;ba=oa<<24>>24;if((ba&-32|0)!=32){ja=oa;ka=ma;la=na;break}else{ea=oa;da=ma;ca=na}}}else{ja=fa;ka=0;la=ia}while(0);do if(ja<<24>>24==42){aa=la+1|0;ca=(a[aa>>0]|0)+-48|0;if(ca>>>0<10?(a[la+2>>0]|0)==36:0){c[m+(ca<<2)>>2]=10;pa=1;qa=la+3|0;ra=c[l+((a[aa>>0]|0)+-48<<3)>>2]|0}else{if(ha|0){sa=-1;break a}if(!w){ta=ka;ua=0;va=aa;wa=0;break}ca=(c[g>>2]|0)+(4-1)&~(4-1);da=c[ca>>2]|0;c[g>>2]=ca+4;pa=0;qa=aa;ra=da}if((ra|0)<0){ta=ka|8192;ua=pa;va=qa;wa=0-ra|0}else{ta=ka;ua=pa;va=qa;wa=ra}}else{da=(ja<<24>>24)+-48|0;if(da>>>0<10){aa=la;ca=0;ea=da;while(1){da=(ca*10|0)+ea|0;ba=aa+1|0;ea=(a[ba>>0]|0)+-48|0;if(ea>>>0>=10){xa=da;ya=ba;break}else{aa=ba;ca=da}}if((xa|0)<0){sa=-1;break a}else{ta=ka;ua=ha;va=ya;wa=xa}}else{ta=ka;ua=ha;va=la;wa=0}}while(0);e:do if((a[va>>0]|0)==46){ca=va+1|0;aa=a[ca>>0]|0;if(aa<<24>>24!=42){ea=(aa<<24>>24)+-48|0;if(ea>>>0<10){za=ca;Aa=0;Ba=ea}else{Ca=0;Da=ca;break}while(1){ca=(Aa*10|0)+Ba|0;ea=za+1|0;Ba=(a[ea>>0]|0)+-48|0;if(Ba>>>0>=10){Ca=ca;Da=ea;break e}else{za=ea;Aa=ca}}}ca=va+2|0;ea=(a[ca>>0]|0)+-48|0;if(ea>>>0<10?(a[va+3>>0]|0)==36:0){c[m+(ea<<2)>>2]=10;Ca=c[l+((a[ca>>0]|0)+-48<<3)>>2]|0;Da=va+4|0;break}if(ua|0){sa=-1;break a}if(w){ea=(c[g>>2]|0)+(4-1)&~(4-1);aa=c[ea>>2]|0;c[g>>2]=ea+4;Ca=aa;Da=ca}else{Ca=0;Da=ca}}else{Ca=-1;Da=va}while(0);ca=Da;aa=0;while(1){ea=(a[ca>>0]|0)+-65|0;if(ea>>>0>57){sa=-1;break a}da=ca+1|0;ba=a[66344+(aa*58|0)+ea>>0]|0;ea=ba&255;if((ea+-1|0)>>>0<8){ca=da;aa=ea}else{Ea=da;Fa=ba;Ga=ea;Ha=ca;Ia=aa;break}}if(!(Fa<<24>>24)){sa=-1;break}aa=(ga|0)>-1;do if(Fa<<24>>24==19)if(aa){sa=-1;break a}else V=52;else{if(aa){c[m+(ga<<2)>>2]=Ga;ca=l+(ga<<3)|0;ea=c[ca+4>>2]|0;ba=s;c[ba>>2]=c[ca>>2];c[ba+4>>2]=ea;V=52;break}if(!w){sa=0;break a}Ju(s,Ga,g)}while(0);if((V|0)==52?(V=0,!w):0){M=Q;N=f;O=ua;P=Ea;continue}aa=a[Ha>>0]|0;ea=(Ia|0)!=0&(aa&15|0)==3?aa&-33:aa;aa=ta&-65537;ba=(ta&8192|0)==0?ta:aa;f:do switch(ea|0){case 110:{switch(Ia|0){case 0:{c[c[s>>2]>>2]=Q;M=Q;N=f;O=ua;P=Ea;continue a;break}case 1:{c[c[s>>2]>>2]=Q;M=Q;N=f;O=ua;P=Ea;continue a;break}case 2:{ca=c[s>>2]|0;c[ca>>2]=Q;c[ca+4>>2]=((Q|0)<0)<<31>>31;M=Q;N=f;O=ua;P=Ea;continue a;break}case 3:{b[c[s>>2]>>1]=Q;M=Q;N=f;O=ua;P=Ea;continue a;break}case 4:{a[c[s>>2]>>0]=Q;M=Q;N=f;O=ua;P=Ea;continue a;break}case 6:{c[c[s>>2]>>2]=Q;M=Q;N=f;O=ua;P=Ea;continue a;break}case 7:{ca=c[s>>2]|0;c[ca>>2]=Q;c[ca+4>>2]=((Q|0)<0)<<31>>31;M=Q;N=f;O=ua;P=Ea;continue a;break}default:{M=Q;N=f;O=ua;P=Ea;continue a}}break}case 112:{Ja=ba|8;Ka=Ca>>>0>8?Ca:8;La=120;V=64;break}case 88:case 120:{Ja=ba;Ka=Ca;La=ea;V=64;break}case 111:{ca=s;da=c[ca>>2]|0;na=c[ca+4>>2]|0;if((da|0)==0&(na|0)==0)Ma=x;else{ca=x;ma=da;da=na;while(1){na=ca+-1|0;a[na>>0]=ma&7|48;ma=Mw(ma|0,da|0,3)|0;da=C;if((ma|0)==0&(da|0)==0){Ma=na;break}else ca=na}}if(!(ba&8)){Na=Ma;Oa=ba;Pa=Ca;Qa=0;Ra=66824;V=77}else{ca=y-Ma|0;Na=Ma;Oa=ba;Pa=(Ca|0)>(ca|0)?Ca:ca+1|0;Qa=0;Ra=66824;V=77}break}case 105:case 100:{ca=s;da=c[ca>>2]|0;ma=c[ca+4>>2]|0;if((ma|0)<0){ca=Fw(0,0,da|0,ma|0)|0;na=C;oa=s;c[oa>>2]=ca;c[oa+4>>2]=na;Sa=ca;Ta=na;Ua=1;Va=66824;V=76;break f}if(!(ba&2048)){na=ba&1;Sa=da;Ta=ma;Ua=na;Va=(na|0)==0?66824:66826;V=76}else{Sa=da;Ta=ma;Ua=1;Va=66825;V=76}break}case 117:{ma=s;Sa=c[ma>>2]|0;Ta=c[ma+4>>2]|0;Ua=0;Va=66824;V=76;break}case 99:{a[z>>0]=c[s>>2];Wa=z;Xa=aa;Ya=1;Za=0;_a=66824;$a=x;break}case 109:{ab=xu(c[(fu()|0)>>2]|0)|0;V=82;break}case 115:{ma=c[s>>2]|0;ab=ma|0?ma:66834;V=82;break}case 67:{c[u>>2]=c[s>>2];c[t>>2]=0;c[s>>2]=u;bb=u;cb=-1;V=86;break}case 83:{ma=c[s>>2]|0;if(!Ca){Mu(e,32,wa,0,ba);db=0;V=97}else{bb=ma;cb=Ca;V=86}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{eb=+h[s>>3];c[p>>2]=0;h[k>>3]=eb;if((c[k+4>>2]|0)>=0)if(!(ba&2048)){ma=ba&1;fb=eb;gb=ma;hb=(ma|0)==0?66842:66847}else{fb=eb;gb=1;hb=66844}else{fb=-eb;gb=1;hb=66841}h[k>>3]=fb;ma=c[k+4>>2]&2146435072;do if(ma>>>0<2146435072|(ma|0)==2146435072&0<0){eb=+Pu(fb,p)*2.0;da=eb!=0.0;if(da)c[p>>2]=(c[p>>2]|0)+-1;na=ea|32;if((na|0)==97){ca=ea&32;oa=(ca|0)==0?hb:hb+9|0;ib=gb|2;jb=12-Ca|0;do if(!(Ca>>>0>11|(jb|0)==0)){kb=jb;lb=8.0;while(1){kb=kb+-1|0;mb=lb*16.0;if(!kb){nb=mb;break}else lb=mb}if((a[oa>>0]|0)==45){ob=-(nb+(-eb-nb));break}else{ob=eb+nb-nb;break}}else ob=eb;while(0);jb=c[p>>2]|0;kb=(jb|0)<0?0-jb|0:jb;pb=Ku(kb,((kb|0)<0)<<31>>31,D)|0;if((pb|0)==(D|0)){a[E>>0]=48;qb=E}else qb=pb;a[qb+-1>>0]=(jb>>31&2)+43;jb=qb+-2|0;a[jb>>0]=ea+15;pb=(Ca|0)<1;kb=(ba&8|0)==0;lb=ob;rb=q;while(1){sb=~~lb;tb=rb+1|0;a[rb>>0]=d[66808+sb>>0]|ca;lb=(lb-+(sb|0))*16.0;do if((tb-A|0)==1){if(kb&(pb&lb==0.0)){ub=tb;break}a[tb>>0]=46;ub=rb+2|0}else ub=tb;while(0);if(!(lb!=0.0)){vb=ub;break}else rb=ub}rb=vb;pb=jb;kb=(Ca|0)!=0&(G+rb|0)<(Ca|0)?H+Ca-pb|0:F-pb+rb|0;ca=kb+ib|0;Mu(e,32,wa,ca,ba);if(!(c[e>>2]&32))Hu(oa,ib,e)|0;Mu(e,48,wa,ca,ba^65536);tb=rb-A|0;if(!(c[e>>2]&32))Hu(q,tb,e)|0;rb=r-pb|0;Mu(e,48,kb-(tb+rb)|0,0,0);if(!(c[e>>2]&32))Hu(jb,rb,e)|0;Mu(e,32,wa,ca,ba^8192);wb=(ca|0)<(wa|0)?wa:ca;break}ca=(Ca|0)<0?6:Ca;if(da){rb=(c[p>>2]|0)+-28|0;c[p>>2]=rb;xb=eb*268435456.0;yb=rb}else{xb=eb;yb=c[p>>2]|0}rb=(yb|0)<0?o:I;tb=rb;lb=xb;kb=rb;while(1){pb=~~lb>>>0;c[kb>>2]=pb;sb=kb+4|0;lb=(lb-+(pb>>>0))*1.0e9;if(!(lb!=0.0)){zb=sb;break}else kb=sb}kb=c[p>>2]|0;if((kb|0)>0){da=kb;jb=rb;ib=zb;while(1){oa=(da|0)>29?29:da;sb=ib+-4|0;do if(sb>>>0<jb>>>0)Ab=jb;else{pb=0;Bb=sb;while(1){Cb=Pw(c[Bb>>2]|0,0,oa|0)|0;Db=Gw(Cb|0,C|0,pb|0,0)|0;Cb=C;Eb=Rw(Db|0,Cb|0,1e9,0)|0;c[Bb>>2]=Eb;Eb=Vw(Db|0,Cb|0,1e9,0)|0;Bb=Bb+-4|0;if(Bb>>>0<jb>>>0){Fb=Eb;break}else pb=Eb}if(!Fb){Ab=jb;break}pb=jb+-4|0;c[pb>>2]=Fb;Ab=pb}while(0);sb=ib;while(1){if(sb>>>0<=Ab>>>0){Gb=sb;break}pb=sb+-4|0;if(!(c[pb>>2]|0))sb=pb;else{Gb=sb;break}}sb=(c[p>>2]|0)-oa|0;c[p>>2]=sb;if((sb|0)>0){da=sb;jb=Ab;ib=Gb}else{Hb=sb;Ib=Ab;Jb=Gb;break}}}else{Hb=kb;Ib=rb;Jb=zb}if((Hb|0)<0){ib=((ca+25|0)/9|0)+1|0;jb=(na|0)==102;da=Hb;sb=Ib;pb=Jb;while(1){Bb=0-da|0;Eb=(Bb|0)>9?9:Bb;do if(sb>>>0<pb>>>0){Bb=(1<<Eb)+-1|0;Cb=1e9>>>Eb;Db=0;Kb=sb;while(1){Lb=c[Kb>>2]|0;c[Kb>>2]=(Lb>>>Eb)+Db;Mb=R(Lb&Bb,Cb)|0;Kb=Kb+4|0;if(Kb>>>0>=pb>>>0){Nb=Mb;break}else Db=Mb}Db=(c[sb>>2]|0)==0?sb+4|0:sb;if(!Nb){Ob=Db;Pb=pb;break}c[pb>>2]=Nb;Ob=Db;Pb=pb+4|0}else{Ob=(c[sb>>2]|0)==0?sb+4|0:sb;Pb=pb}while(0);oa=jb?rb:Ob;Db=(Pb-oa>>2|0)>(ib|0)?oa+(ib<<2)|0:Pb;da=(c[p>>2]|0)+Eb|0;c[p>>2]=da;if((da|0)>=0){Qb=Ob;Rb=Db;break}else{sb=Ob;pb=Db}}}else{Qb=Ib;Rb=Jb}do if(Qb>>>0<Rb>>>0){pb=(tb-Qb>>2)*9|0;sb=c[Qb>>2]|0;if(sb>>>0<10){Sb=pb;break}else{Tb=pb;Ub=10}while(1){Ub=Ub*10|0;pb=Tb+1|0;if(sb>>>0<Ub>>>0){Sb=pb;break}else Tb=pb}}else Sb=0;while(0);sb=(na|0)==103;Eb=(ca|0)!=0;pb=ca-((na|0)!=102?Sb:0)+((Eb&sb)<<31>>31)|0;if((pb|0)<(((Rb-tb>>2)*9|0)+-9|0)){da=pb+9216|0;pb=rb+4+(((da|0)/9|0)+-1024<<2)|0;ib=((da|0)%9|0)+1|0;if((ib|0)<9){da=10;jb=ib;while(1){ib=da*10|0;jb=jb+1|0;if((jb|0)==9){Vb=ib;break}else da=ib}}else Vb=10;da=c[pb>>2]|0;jb=(da>>>0)%(Vb>>>0)|0;na=(pb+4|0)==(Rb|0);do if(na&(jb|0)==0){Wb=Qb;Xb=pb;Yb=Sb}else{lb=(((da>>>0)/(Vb>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;ib=(Vb|0)/2|0;if(jb>>>0<ib>>>0)Zb=.5;else Zb=na&(jb|0)==(ib|0)?1.0:1.5;do if(!gb){_b=lb;$b=Zb}else{if((a[hb>>0]|0)!=45){_b=lb;$b=Zb;break}_b=-lb;$b=-Zb}while(0);ib=da-jb|0;c[pb>>2]=ib;if(!(_b+$b!=_b)){Wb=Qb;Xb=pb;Yb=Sb;break}kb=ib+Vb|0;c[pb>>2]=kb;if(kb>>>0>999999999){kb=Qb;ib=pb;while(1){Db=ib+-4|0;c[ib>>2]=0;if(Db>>>0<kb>>>0){oa=kb+-4|0;c[oa>>2]=0;ac=oa}else ac=kb;oa=(c[Db>>2]|0)+1|0;c[Db>>2]=oa;if(oa>>>0>999999999){kb=ac;ib=Db}else{bc=ac;cc=Db;break}}}else{bc=Qb;cc=pb}ib=(tb-bc>>2)*9|0;kb=c[bc>>2]|0;if(kb>>>0<10){Wb=bc;Xb=cc;Yb=ib;break}else{dc=ib;ec=10}while(1){ec=ec*10|0;ib=dc+1|0;if(kb>>>0<ec>>>0){Wb=bc;Xb=cc;Yb=ib;break}else dc=ib}}while(0);pb=Xb+4|0;fc=Wb;gc=Yb;hc=Rb>>>0>pb>>>0?pb:Rb}else{fc=Qb;gc=Sb;hc=Rb}pb=0-gc|0;jb=hc;while(1){if(jb>>>0<=fc>>>0){ic=0;jc=jb;break}da=jb+-4|0;if(!(c[da>>2]|0))jb=da;else{ic=1;jc=jb;break}}do if(sb){jb=(Eb&1^1)+ca|0;if((jb|0)>(gc|0)&(gc|0)>-5){kc=ea+-1|0;lc=jb+-1-gc|0}else{kc=ea+-2|0;lc=jb+-1|0}jb=ba&8;if(jb|0){mc=kc;nc=lc;oc=jb;break}do if(ic){jb=c[jc+-4>>2]|0;if(!jb){pc=9;break}if(!((jb>>>0)%10|0)){qc=10;rc=0}else{pc=0;break}while(1){qc=qc*10|0;da=rc+1|0;if((jb>>>0)%(qc>>>0)|0|0){pc=da;break}else rc=da}}else pc=9;while(0);jb=((jc-tb>>2)*9|0)+-9|0;if((kc|32|0)==102){da=jb-pc|0;na=(da|0)<0?0:da;mc=kc;nc=(lc|0)<(na|0)?lc:na;oc=0;break}else{na=jb+gc-pc|0;jb=(na|0)<0?0:na;mc=kc;nc=(lc|0)<(jb|0)?lc:jb;oc=0;break}}else{mc=ea;nc=ca;oc=ba&8}while(0);ca=nc|oc;tb=(ca|0)!=0&1;Eb=(mc|32|0)==102;if(Eb){sc=(gc|0)>0?gc:0;tc=0}else{sb=(gc|0)<0?pb:gc;jb=Ku(sb,((sb|0)<0)<<31>>31,D)|0;if((r-jb|0)<2){sb=jb;while(1){na=sb+-1|0;a[na>>0]=48;if((r-na|0)<2)sb=na;else{uc=na;break}}}else uc=jb;a[uc+-1>>0]=(gc>>31&2)+43;sb=uc+-2|0;a[sb>>0]=mc;sc=r-sb|0;tc=sb}sb=gb+1+nc+tb+sc|0;Mu(e,32,wa,sb,ba);if(!(c[e>>2]&32))Hu(hb,gb,e)|0;Mu(e,48,wa,sb,ba^65536);do if(Eb){pb=fc>>>0>rb>>>0?rb:fc;na=pb;while(1){da=Ku(c[na>>2]|0,0,J)|0;do if((na|0)==(pb|0)){if((da|0)!=(J|0)){vc=da;break}a[L>>0]=48;vc=L}else{if(da>>>0<=q>>>0){vc=da;break}Sw(q|0,48,da-A|0)|0;kb=da;while(1){ib=kb+-1|0;if(ib>>>0>q>>>0)kb=ib;else{vc=ib;break}}}while(0);if(!(c[e>>2]&32))Hu(vc,K-vc|0,e)|0;da=na+4|0;if(da>>>0>rb>>>0){wc=da;break}else na=da}do if(ca|0){if(c[e>>2]&32|0)break;Hu(66876,1,e)|0}while(0);if((nc|0)>0&wc>>>0<jc>>>0){na=nc;pb=wc;while(1){da=Ku(c[pb>>2]|0,0,J)|0;if(da>>>0>q>>>0){Sw(q|0,48,da-A|0)|0;kb=da;while(1){ib=kb+-1|0;if(ib>>>0>q>>>0)kb=ib;else{xc=ib;break}}}else xc=da;if(!(c[e>>2]&32))Hu(xc,(na|0)>9?9:na,e)|0;pb=pb+4|0;kb=na+-9|0;if(!((na|0)>9&pb>>>0<jc>>>0)){yc=kb;break}else na=kb}}else yc=nc;Mu(e,48,yc+9|0,9,0)}else{na=ic?jc:fc+4|0;if((nc|0)>-1){pb=(oc|0)==0;kb=nc;ib=fc;while(1){Db=Ku(c[ib>>2]|0,0,J)|0;if((Db|0)==(J|0)){a[L>>0]=48;zc=L}else zc=Db;do if((ib|0)==(fc|0)){Db=zc+1|0;if(!(c[e>>2]&32))Hu(zc,1,e)|0;if(pb&(kb|0)<1){Ac=Db;break}if(c[e>>2]&32|0){Ac=Db;break}Hu(66876,1,e)|0;Ac=Db}else{if(zc>>>0<=q>>>0){Ac=zc;break}Sw(q|0,48,zc+B|0)|0;Db=zc;while(1){oa=Db+-1|0;if(oa>>>0>q>>>0)Db=oa;else{Ac=oa;break}}}while(0);da=K-Ac|0;if(!(c[e>>2]&32))Hu(Ac,(kb|0)>(da|0)?da:kb,e)|0;Db=kb-da|0;ib=ib+4|0;if(!(ib>>>0<na>>>0&(Db|0)>-1)){Bc=Db;break}else kb=Db}}else Bc=nc;Mu(e,48,Bc+18|0,18,0);if(c[e>>2]&32|0)break;Hu(tc,r-tc|0,e)|0}while(0);Mu(e,32,wa,sb,ba^8192);wb=(sb|0)<(wa|0)?wa:sb}else{ca=(ea&32|0)!=0;rb=fb!=fb|0.0!=0.0;Eb=rb?0:gb;tb=Eb+3|0;Mu(e,32,wa,tb,aa);jb=c[e>>2]|0;if(!(jb&32)){Hu(hb,Eb,e)|0;Cc=c[e>>2]|0}else Cc=jb;if(!(Cc&32))Hu(rb?(ca?66868:66872):ca?66860:66864,3,e)|0;Mu(e,32,wa,tb,ba^8192);wb=(tb|0)<(wa|0)?wa:tb}while(0);M=Q;N=wb;O=ua;P=Ea;continue a;break}default:{Wa=P;Xa=ba;Ya=Ca;Za=0;_a=66824;$a=x}}while(0);g:do if((V|0)==64){V=0;ea=s;f=c[ea>>2]|0;ma=c[ea+4>>2]|0;ea=La&32;if(!((f|0)==0&(ma|0)==0)){tb=x;ca=f;f=ma;while(1){ma=tb+-1|0;a[ma>>0]=d[66808+(ca&15)>>0]|ea;ca=Mw(ca|0,f|0,4)|0;f=C;if((ca|0)==0&(f|0)==0){Dc=ma;break}else tb=ma}tb=s;if((Ja&8|0)==0|(c[tb>>2]|0)==0&(c[tb+4>>2]|0)==0){Na=Dc;Oa=Ja;Pa=Ka;Qa=0;Ra=66824;V=77}else{Na=Dc;Oa=Ja;Pa=Ka;Qa=2;Ra=66824+(La>>4)|0;V=77}}else{Na=x;Oa=Ja;Pa=Ka;Qa=0;Ra=66824;V=77}}else if((V|0)==76){V=0;Na=Ku(Sa,Ta,x)|0;Oa=ba;Pa=Ca;Qa=Ua;Ra=Va;V=77}else if((V|0)==82){V=0;tb=Lu(ab,0,Ca)|0;f=(tb|0)==0;Wa=ab;Xa=aa;Ya=f?Ca:tb-ab|0;Za=0;_a=66824;$a=f?ab+Ca|0:tb}else if((V|0)==86){V=0;tb=0;f=0;ca=bb;while(1){ea=c[ca>>2]|0;if(!ea){Ec=tb;Fc=f;break}ma=Nu(v,ea)|0;if((ma|0)<0|ma>>>0>(cb-tb|0)>>>0){Ec=tb;Fc=ma;break}ea=ma+tb|0;if(cb>>>0>ea>>>0){tb=ea;f=ma;ca=ca+4|0}else{Ec=ea;Fc=ma;break}}if((Fc|0)<0){sa=-1;break a}Mu(e,32,wa,Ec,ba);if(!Ec){db=0;V=97}else{ca=0;f=bb;while(1){tb=c[f>>2]|0;if(!tb){db=Ec;V=97;break g}ma=Nu(v,tb)|0;ca=ma+ca|0;if((ca|0)>(Ec|0)){db=Ec;V=97;break g}if(!(c[e>>2]&32))Hu(v,ma,e)|0;if(ca>>>0>=Ec>>>0){db=Ec;V=97;break}else f=f+4|0}}}while(0);if((V|0)==97){V=0;Mu(e,32,wa,db,ba^8192);M=Q;N=(wa|0)>(db|0)?wa:db;O=ua;P=Ea;continue}if((V|0)==77){V=0;aa=(Pa|0)>-1?Oa&-65537:Oa;f=s;ca=(c[f>>2]|0)!=0|(c[f+4>>2]|0)!=0;if((Pa|0)!=0|ca){f=(ca&1^1)+(y-Na)|0;Wa=Na;Xa=aa;Ya=(Pa|0)>(f|0)?Pa:f;Za=Qa;_a=Ra;$a=x}else{Wa=x;Xa=aa;Ya=0;Za=Qa;_a=Ra;$a=x}}aa=$a-Wa|0;f=(Ya|0)<(aa|0)?aa:Ya;ca=Za+f|0;ma=(wa|0)<(ca|0)?ca:wa;Mu(e,32,ma,ca,Xa);if(!(c[e>>2]&32))Hu(_a,Za,e)|0;Mu(e,48,ma,ca,Xa^65536);Mu(e,48,f,aa,0);if(!(c[e>>2]&32))Hu(Wa,aa,e)|0;Mu(e,32,ma,ca,Xa^8192);M=Q;N=ma;O=ua;P=Ea}h:do if((V|0)==244)if(!e)if(T){Ea=1;while(1){P=c[m+(Ea<<2)>>2]|0;if(!P){Gc=Ea;break}Ju(l+(Ea<<3)|0,P,g);Ea=Ea+1|0;if((Ea|0)>=10){sa=1;break h}}if((Gc|0)<10){Ea=Gc;while(1){if(c[m+(Ea<<2)>>2]|0){sa=-1;break h}Ea=Ea+1|0;if((Ea|0)>=10){sa=1;break}}}else sa=1}else sa=0;else sa=S;while(0);i=n;return sa|0}function Hu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Iu(e)|0)){h=c[f>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=e+20|0;f=c[g>>2]|0;k=f;if((h-f|0)>>>0<d>>>0){j=sb[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){l=d;m=b;n=k;o=0;break b}p=f+-1|0;if((a[b+p>>0]|0)==10){q=f;break}else f=p}if((sb[c[e+36>>2]&63](e,b,q)|0)>>>0<q>>>0){j=q;break a}l=d-q|0;m=b+q|0;n=c[g>>2]|0;o=q}else{l=d;m=b;n=k;o=0}while(0);Ow(n|0,m|0,l|0)|0;c[g>>2]=(c[g>>2]|0)+l;j=o+l|0}while(0);return j|0}function Iu(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=c[b>>2]|0;if(!(e&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);f=0}else{c[b>>2]=e|32;f=-1}return f|0}function Ju(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f;break a;break}case 10:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a;break}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=f;c[e+4>>2]=0;break a;break}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);f=e;g=c[f>>2]|0;i=c[f+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=g;c[e+4>>2]=i;break a;break}case 13:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&65535)<<16>>16;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 14:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&65535;c[i+4>>2]=0;break a;break}case 15:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&255)<<24>>24;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 16:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&255;c[i+4>>2]=0;break a;break}case 17:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}case 18:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}default:break a}while(0);while(0);return} +function ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=vm(c[h>>2]|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+16>>2];c[n>>2]=vm((c[h>>2]|0)+4|0)|0;c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];c[k>>2]=vm((c[h>>2]|0)+8|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];c[l>>2]=vm((c[h>>2]|0)+12|0)|0;c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+28>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+124>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+120>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+116>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+112>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+108>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+104>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+100>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+96>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+92>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+88>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+84>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+80>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+76>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+72>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+68>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+64>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+60>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+56>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+52>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+48>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+44>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+40>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+36>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+32>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+28>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+24>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+20>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+16>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[l>>2]=c[l>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+12>>2]|0);c[l>>2]=((c[l>>2]|0)>>>1)+(c[l>>2]<<31);c[k>>2]=(c[k>>2]<<1)+((c[k>>2]|0)>>>31);c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+8>>2]|0);c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[o>>2]|0);c[n>>2]=c[n>>2]^(c[p>>2]|0)+(c[(c[f>>2]|0)+4128+4>>2]|0);c[n>>2]=((c[n>>2]|0)>>>1)+(c[n>>2]<<31);c[m>>2]=(c[m>>2]<<1)+((c[m>>2]|0)>>>31);c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128>>2]|0);c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096>>2];wm(c[g>>2]|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];wm((c[g>>2]|0)+4|0,c[l>>2]|0);c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];wm((c[g>>2]|0)+8|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+12>>2];wm((c[g>>2]|0)+12|0,c[n>>2]|0);i=e;return}function zm(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=4;c[a+4>>2]=16;c[a>>2]=4256;b=jr(43259,13,14,8,4,16,4256)|0;i=a;return b|0}function Am(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+96|0;if((i|0)>=(j|0))U();l=k+60|0;m=k+56|0;n=k+52|0;o=k+48|0;p=k+44|0;q=k+40|0;r=k+36|0;s=k+32|0;t=k+72|0;u=k+28|0;v=k+24|0;w=k+20|0;x=k+16|0;y=k+12|0;z=k+64|0;A=k;B=k+8|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[o>>2];c[v>>2]=0;while(1){if(!(c[p>>2]|0))break;c[u>>2]=tm(c[q>>2]|0,t,c[m>>2]|0)|0;if((c[u>>2]|0)>>>0>(c[v>>2]|0)>>>0)c[v>>2]=c[u>>2];Bm(c[r>>2]|0,t,c[s>>2]|0,16);c[r>>2]=(c[r>>2]|0)+16;c[s>>2]=(c[s>>2]|0)+16;c[w>>2]=16;while(1){if((c[w>>2]|0)<=0)break;o=(c[m>>2]|0)+((c[w>>2]|0)-1)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;if(a[(c[m>>2]|0)+((c[w>>2]|0)-1)>>0]|0)break;c[w>>2]=(c[w>>2]|0)+-1}c[p>>2]=(c[p>>2]|0)+-1}c[x>>2]=t;c[y>>2]=16;a[z>>0]=0;t=A;c[t>>2]=d[z>>0];c[t+4>>2]=0;while(1){if(!(c[x>>2]&7|0?(c[y>>2]|0)!=0:0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}if((c[y>>2]|0)>>>0>=8){t=A;p=Xw(c[t>>2]|0,c[t+4>>2]|0,16843009,16843009)|0;t=A;c[t>>2]=p;c[t+4>>2]=C;do{c[B>>2]=c[x>>2];t=A;p=c[t+4>>2]|0;w=c[B>>2]|0;c[w>>2]=c[t>>2];c[w+4>>2]=p;c[y>>2]=(c[y>>2]|0)-8;c[x>>2]=(c[x>>2]|0)+8}while((c[y>>2]|0)>>>0>=8)}while(1){if(!(c[y>>2]|0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}Qe(c[v>>2]|0);Re();i=k;return}function Bm(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function Cm(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=5;c[a+4>>2]=16;c[a>>2]=4256;b=fr(43259,13,14,6,5,16,4256)|0;i=a;return b|0}function Dm(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+64|0;u=k+24|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+60|0;z=k;A=k+8|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[o>>2];c[v>>2]=0;while(1){if(!(c[p>>2]|0))break;c[u>>2]=xm(c[q>>2]|0,t,c[s>>2]|0)|0;if((c[u>>2]|0)>>>0>(c[v>>2]|0)>>>0)c[v>>2]=c[u>>2];Em(c[r>>2]|0,t,c[m>>2]|0,c[s>>2]|0,16);c[s>>2]=(c[s>>2]|0)+16;c[r>>2]=(c[r>>2]|0)+16;c[p>>2]=(c[p>>2]|0)+-1}c[w>>2]=t;c[x>>2]=16;a[y>>0]=0;t=z;c[t>>2]=d[y>>0];c[t+4>>2]=0;while(1){if(!(c[w>>2]&7|0?(c[x>>2]|0)!=0:0))break;a[c[w>>2]>>0]=a[y>>0]|0;c[w>>2]=(c[w>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+-1}if((c[x>>2]|0)>>>0>=8){t=z;p=Xw(c[t>>2]|0,c[t+4>>2]|0,16843009,16843009)|0;t=z;c[t>>2]=p;c[t+4>>2]=C;do{c[A>>2]=c[w>>2];t=z;p=c[t+4>>2]|0;r=c[A>>2]|0;c[r>>2]=c[t>>2];c[r+4>>2]=p;c[x>>2]=(c[x>>2]|0)-8;c[w>>2]=(c[w>>2]|0)+8}while((c[x>>2]|0)>>>0>=8)}while(1){if(!(c[x>>2]|0))break;a[c[w>>2]>>0]=a[y>>0]|0;c[w>>2]=(c[w>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+-1}Qe(c[v>>2]|0);Re();i=k;return}function Em(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+60|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+8|0;z=k+4|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[m>>2];c[t>>2]=c[o>>2];c[k>>2]=3;if(!((c[t>>2]|c[s>>2]|c[q>>2]|c[r>>2])&3)){c[v>>2]=c[q>>2];c[y>>2]=c[s>>2];c[w>>2]=c[r>>2];c[x>>2]=c[t>>2];while(1){if((c[p>>2]|0)>>>0<4)break;o=c[x>>2]|0;c[x>>2]=o+4;c[z>>2]=c[o>>2];o=c[c[w>>2]>>2]|0;m=c[y>>2]|0;c[y>>2]=m+4;n=o^c[m>>2];m=c[v>>2]|0;c[v>>2]=m+4;c[m>>2]=n;n=c[z>>2]|0;m=c[w>>2]|0;c[w>>2]=m+4;c[m>>2]=n;c[p>>2]=(c[p>>2]|0)-4}c[q>>2]=c[v>>2];c[s>>2]=c[y>>2];c[r>>2]=c[w>>2];c[t>>2]=c[x>>2]}while(1){if(!(c[p>>2]|0))break;x=c[t>>2]|0;c[t>>2]=x+1;a[u>>0]=a[x>>0]|0;x=d[c[r>>2]>>0]|0;w=c[s>>2]|0;c[s>>2]=w+1;y=(x^(d[w>>0]|0))&255;w=c[q>>2]|0;c[q>>2]=w+1;a[w>>0]=y;y=a[u>>0]|0;w=c[r>>2]|0;c[r>>2]=w+1;a[w>>0]=y;c[p>>2]=(c[p>>2]|0)+-1}i=k;return}function Fm(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=5;c[a+4>>2]=16;c[a>>2]=4256;b=hr(43259,13,14,7,5,16,4256)|0;i=a;return b|0}function Gm(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=c[h>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[s>>2]=0;while(1){if(!(c[n>>2]|0))break;c[r>>2]=tm(c[o>>2]|0,c[k>>2]|0,c[k>>2]|0)|0;if((c[r>>2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[r>>2];Hm(c[p>>2]|0,c[k>>2]|0,c[q>>2]|0,16);c[p>>2]=(c[p>>2]|0)+16;c[q>>2]=(c[q>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+-1}Qe(c[s>>2]|0);Re();i=g;return}function Hm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Em(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Im(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[17659]=c[e>>2];c[17660]=c[f>>2];i=d;return}function Jm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[17659]|0)){i=f;return}tb[c[17659]&15](c[17660]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Km(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;do if(c[d>>2]|0){if((c[d>>2]|0)==1){c[17662]=1;break}if(!(c[17661]|0)){if((c[d>>2]|0)==2){c[17663]=1;break}if((c[d>>2]|0)==3)c[17664]=1}}else c[17661]=1;while(0);i=b;return}function Lm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(Jg()|0){ns(c[d>>2]|0);i=b;return}if(c[17662]|0){Or(c[d>>2]|0);i=b;return}if(c[17663]|0){ns(c[d>>2]|0);i=b;return}a=c[d>>2]|0;if(c[17664]|0){Rs(a);i=b;return}else{Or(a);i=b;return}}function Mm(){if(Jg()|0){ts();return}if(c[17662]|0){Yr();return}if(c[17663]|0){ts();return}if(c[17664]|0){Ts();return}else{Yr();return}}function Nm(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(!(c[e>>2]|0)?Jg()|0:0)c[d>>2]=2;else f=4;do if((f|0)==4){if(c[17662]|0){c[d>>2]=1;break}if(c[17663]|0){c[d>>2]=2;break}if(c[17664]|0){c[d>>2]=3;break}else{c[d>>2]=1;break}}while(0);i=b;return c[d>>2]|0}function Om(){if(Jg()|0){us();return}else{Zr();return}}function Pm(){if(Jg()|0)return;_r();return}function Qm(){if(Jg()|0)return;$r();return}function Rm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(Jg()|0){i=b;return}as(c[d>>2]|0);i=b;return}function Sm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(Jg()|0)c[d>>2]=0;else c[d>>2]=bs(c[e>>2]|0)|0;i=b;return c[d>>2]|0}function Tm(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Jg()|0)c[b>>2]=vs()|0;else c[b>>2]=cs()|0;i=a;return c[b>>2]|0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=mf(c[e>>2]|0)|0;Vm(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Vm(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(Jg()|0){ws(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17662]|0){ds(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17663]|0){ws(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}d=c[f>>2]|0;f=c[g>>2]|0;g=c[h>>2]|0;if(c[17664]|0){Ws(d,f,g);i=e;return}else{ds(d,f,g);i=e;return}}function Wm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=of(c[e>>2]|0)|0;Vm(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Xm(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Vm(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Ym(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(Jg()|0){i=b;return}if(c[17662]|0){ks(c[d>>2]|0);i=b;return}if((c[17663]|0)!=0|(c[17664]|0)!=0){i=b;return}ks(c[d>>2]|0);i=b;return}function Zm(){if(Jg()|0)return;if(c[17662]|0){ls();return}if((c[17663]|0)!=0|(c[17664]|0)!=0)return;ls();return}function _m(){if(Jg()|0)return;if(c[17662]|0){ms();return}if((c[17663]|0)!=0|(c[17664]|0)!=0)return;ms();return}function $m(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+8|0;g=e;h=e+40|0;k=e+36|0;l=e+32|0;m=e+28|0;n=e+24|0;o=e+20|0;p=e+16|0;q=e+12|0;c[h>>2]=b;c[k>>2]=d;if(Jg()|0){Js(c[h>>2]|0,c[k>>2]|0);i=e;return}Lm(1);c[o>>2]=ut(12528)|0;if(c[o>>2]|0){c[g>>2]=ot(c[o>>2]|0)|0;Je(45309,g)}c[l>>2]=Kv()|0;if(c[17665]|0){if((c[17666]|0)!=(c[l>>2]|0)){Vm(76008,8,0);c[17666]=c[l>>2]}}else{c[p>>2]=ib(0)|0;c[q>>2]=c[l>>2];c[17666]=c[l>>2];c[m>>2]=75988;l=c[m>>2]|0;a[l>>0]=a[q>>0]|0;a[l+1>>0]=a[q+1>>0]|0;a[l+2>>0]=a[q+2>>0]|0;a[l+3>>0]=a[q+3>>0]|0;c[m>>2]=(c[m>>2]|0)+4;q=c[m>>2]|0;a[q>>0]=a[p>>0]|0;a[q+1>>0]=a[p+1>>0]|0;a[q+2>>0]=a[p+2>>0]|0;a[q+3>>0]=a[p+3>>0]|0;Xm(76008,8,0);c[17665]=1}c[m>>2]=c[h>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;Kl(75988,75988,28);c[n>>2]=(c[k>>2]|0)>>>0>20?20:c[k>>2]|0;Ow(c[m>>2]|0,75988,c[n>>2]|0)|0;c[k>>2]=(c[k>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0)}c[o>>2]=vt(12528)|0;if(c[o>>2]|0){c[f>>2]=ot(c[o>>2]|0)|0;Je(45354,f)}else{i=e;return}}function an(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[e>>2]=a;if(Jg()|0)c[d>>2]=Ks(c[e>>2]|0)|0;else c[d>>2]=0;i=b;return c[d>>2]|0}function bn(a,b,d,e,f,g,h,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|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;l=i;i=i+48|0;if((i|0)>=(j|0))U();m=l+32|0;n=l+28|0;o=l+24|0;p=l+20|0;q=l+16|0;r=l+12|0;s=l+8|0;t=l+4|0;u=l;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=k;if(Jg()|0){c[m>>2]=Os(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,c[u>>2]|0)|0;v=c[m>>2]|0;i=l;return v|0}else{c[m>>2]=60;v=c[m>>2]|0;i=l;return v|0}return 0}function cn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;if(Jg()|0){c[f>>2]=Ps(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;l=c[f>>2]|0;i=e;return l|0}else{c[f>>2]=60;l=c[f>>2]|0;i=e;return l|0}return 0}function dn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(Jg()|0)){i=b;return}Qs(c[d>>2]|0);i=b;return}function en(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+144|0;if((i|0)>=(j|0))U();g=f+8|0;h=f;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+32|0;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[k>>2]|0;if(!(c[l>>2]|0)){c[h>>2]=e;Cu(p,99,45399,h)|0;Pe(p,0);i=f;return}c[g>>2]=e;Cu(p,99,45404,g)|0;if(c[m>>2]|0){c[n>>2]=Ep(0)|0;c[o>>2]=Ep(0)|0}if(c[m>>2]|0?!(fn(c[n>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0)|0):0){a[p+((Tu(p)|0)-1)>>0]=120;Pe(p,c[n>>2]|0);a[p+((Tu(p)|0)-1)>>0]=121;Pe(p,c[o>>2]|0)}else{Pe(p,c[c[l>>2]>>2]|0);a[p+((Tu(p)|0)-1)>>0]=89;Pe(p,c[(c[l>>2]|0)+4>>2]|0);a[p+((Tu(p)|0)-1)>>0]=90;Pe(p,c[(c[l>>2]|0)+8>>2]|0)}if(!(c[m>>2]|0)){i=f;return}Gp(c[n>>2]|0);Gp(c[o>>2]|0);i=f;return}function fn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f;h=f+40|0;k=f+36|0;l=f+32|0;m=f+28|0;n=f+24|0;o=f+20|0;p=f+16|0;q=f+12|0;r=f+8|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;if(!(io(c[(c[m>>2]|0)+8>>2]|0,0)|0)){c[h>>2]=-1;s=c[h>>2]|0;i=f;return s|0}switch(c[c[n>>2]>>2]|0){case 0:{c[o>>2]=Ep(0)|0;c[p>>2]=Ep(0)|0;gn(c[o>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);hn(c[p>>2]|0,c[o>>2]|0,c[o>>2]|0,c[n>>2]|0);if(c[k>>2]|0)hn(c[k>>2]|0,c[c[m>>2]>>2]|0,c[p>>2]|0,c[n>>2]|0);if(c[l>>2]|0){c[q>>2]=Ep(0)|0;hn(c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0);hn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[q>>2]|0,c[n>>2]|0);qp(c[q>>2]|0)}qp(c[p>>2]|0);qp(c[o>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}case 1:{if(c[k>>2]|0)xp(c[k>>2]|0,c[c[m>>2]>>2]|0)|0;if(c[l>>2]|0){c[g>>2]=45500;c[g+4>>2]=45524;Je(45451,g)}c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}case 2:{c[r>>2]=Ep(0)|0;gn(c[r>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);if(c[k>>2]|0)hn(c[k>>2]|0,c[c[m>>2]>>2]|0,c[r>>2]|0,c[n>>2]|0);if(c[l>>2]|0)hn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[r>>2]|0,c[n>>2]|0);Gp(c[r>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}default:{c[h>>2]=-1;s=c[h>>2]|0;i=f;return s|0}}return 0}function gn(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;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(yo(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0){i=e;return}Ie(45409,e);Pe(45443,c[g>>2]|0);Pe(45447,c[(c[h>>2]|0)+16>>2]|0);i=e;return}function hn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Do(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);jn(c[g>>2]|0,c[l>>2]|0);i=f;return}function jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;a=c[e>>2]|0;e=c[f>>2]|0;if(c[(c[f>>2]|0)+48+12>>2]|0){Co(b,a,c[e+48+12>>2]|0);i=d;return}else{zo(b,a,c[e+16>>2]|0);i=d;return}}function kn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[b+4>>2]=a;c[d>>2]=mf(12)|0;ln(c[d>>2]|0);i=b;return c[d>>2]|0}function ln(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ep(0)|0;c[c[d>>2]>>2]=a;a=Ep(0)|0;c[(c[d>>2]|0)+4>>2]=a;a=Ep(0)|0;c[(c[d>>2]|0)+8>>2]=a;i=b;return}function mn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}nn(c[d>>2]|0);hf(c[d>>2]|0);i=b;return}function nn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;qp(c[c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;qp(c[(c[d>>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;qp(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;i=b;return}function on(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[g>>2]|0))c[g>>2]=kn(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)xp(e,c[h>>2]|0)|0;else op(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)xp(e,c[k>>2]|0)|0;else op(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){xp(e,c[l>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}else{op(e);m=c[g>>2]|0;i=f;return m|0}return 0}function pn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(!(c[g>>2]|0))c[g>>2]=kn(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)zp(e,c[h>>2]|0);else op(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)zp(e,c[k>>2]|0);else op(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){zp(e,c[l>>2]|0);m=c[g>>2]|0;i=f;return m|0}else{op(e);m=c[g>>2]|0;i=f;return m|0}return 0}function qn(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;b=(c[e>>2]|0)+48|0;a[b>>0]=a[b>>0]&-2;b=(c[e>>2]|0)+48|0;a[b>>0]=a[b>>0]&-3;i=d;return}function rn(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+24|0;l=h+20|0;m=h+16|0;n=h+12|0;o=h+8|0;p=h+4|0;q=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=pf(1,108)|0;sn(c[q>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0);i=h;return c[q>>2]|0}function sn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=i;i=i+32|0;if((i|0)>=(j|0))U();l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;do if(!(c[17667]|0))if(Ya(45535)|0){c[17667]=1;break}else{c[17667]=-1;break}while(0);c[c[l>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+4>>2]=c[n>>2];c[(c[l>>2]|0)+8>>2]=c[o>>2];if((c[n>>2]|0)==1)c[(c[l>>2]|0)+12>>2]=256;else{n=Zn(c[p>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=n}n=vp(c[p>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=n;n=vp(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=n;n=vp(c[r>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=n;if((c[17667]|0)>0)t=Ao(c[(c[l>>2]|0)+16>>2]|0,0)|0;else t=0;c[(c[l>>2]|0)+48+12>>2]=t;qn(c[l>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=11)break;t=yp(c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[l>>2]|0)+48+16+(c[s>>2]<<2)>>2]=t;c[s>>2]=(c[s>>2]|0)+1}i=k;return}function tn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=i;i=i+48|0;if((i|0)>=(j|0))U();l=k+36|0;m=k+32|0;n=k+28|0;o=k+24|0;p=k+20|0;q=k+16|0;r=k+12|0;s=k+8|0;t=k+4|0;u=k;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[c[m>>2]>>2]=0;if(!((c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){c[l>>2]=32816;v=c[l>>2]|0;i=k;return v|0}c[t>>2]=dh(1,108,5)|0;if(c[t>>2]|0){c[u>>2]=eh(c[t>>2]|0,1)|0;sn(c[u>>2]|0,c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0);c[c[m>>2]>>2]=c[t>>2];c[l>>2]=0;v=c[l>>2]|0;i=k;return v|0}else{c[l>>2]=rt()|0;v=c[l>>2]|0;i=k;return v|0}return 0}function un(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];Bo(c[(c[e>>2]|0)+48+12>>2]|0);qp(c[(c[e>>2]|0)+16>>2]|0);qp(c[(c[e>>2]|0)+20>>2]|0);qp(c[(c[e>>2]|0)+24>>2]|0);mn(c[(c[e>>2]|0)+28>>2]|0);qp(c[(c[e>>2]|0)+32>>2]|0);qp(c[(c[e>>2]|0)+36>>2]|0);mn(c[(c[e>>2]|0)+40>>2]|0);qp(c[(c[e>>2]|0)+44>>2]|0);qp(c[(c[e>>2]|0)+48+8>>2]|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=11)break;qp(c[(c[e>>2]|0)+48+16+(c[f>>2]<<2)>>2]|0);c[f>>2]=(c[f>>2]|0)+1}i=b;return}function vn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}un(c[d>>2]|0);hf(c[d>>2]|0);i=b;return}function wn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=eh(c[g>>2]|0,1)|0;g=Nh(c[f>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;i=e;return g|0}function xn(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;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e;c[f>>2]=a;c[g>>2]=b;c[e+4>>2]=d;c[h>>2]=eh(c[g>>2]|0,1)|0;g=Oh(c[f>>2]|0,c[h>>2]|0)|0;i=e;return g|0}function yn(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[c[h>>2]>>2]|0){case 0:{zn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 1:{Gn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 2:{Hn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}default:{i=e;return}}}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(io(c[(c[g>>2]|0)+4>>2]|0,0)|0?io(c[(c[g>>2]|0)+8>>2]|0,0)|0:0){d=(An(c[h>>2]|0)|0)!=0;b=(c[h>>2]|0)+48+16|0;if(d){Bn(c[b>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);Cn(c[(c[h>>2]|0)+48+16+12>>2]|0,c[c[g>>2]>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);d=c[(c[h>>2]|0)+48+16+12>>2]|0;a=c[(c[h>>2]|0)+48+16+12>>2]|0;k=Jp(3)|0;hn(d,a,k,c[h>>2]|0);Dn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[c[g>>2]>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);hn(c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0)}else{Bn(c[b+12>>2]|0,c[c[g>>2]>>2]|0,c[h>>2]|0);b=c[(c[h>>2]|0)+48+16+12>>2]|0;k=c[(c[h>>2]|0)+48+16+12>>2]|0;a=Jp(3)|0;hn(b,k,a,c[h>>2]|0);a=c[(c[h>>2]|0)+48+16>>2]|0;k=c[(c[g>>2]|0)+8>>2]|0;b=Jp(4)|0;En(a,k,b,c[h>>2]|0);hn(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[h>>2]|0);Dn(c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0)}hn(c[(c[f>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);Fn(c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0);hn(c[(c[h>>2]|0)+48+16+16>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[c[g>>2]>>2]|0,c[h>>2]|0);g=c[(c[h>>2]|0)+48+16+16>>2]|0;b=c[(c[h>>2]|0)+48+16+16>>2]|0;k=Jp(4)|0;hn(g,b,k,c[h>>2]|0);Bn(c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[h>>2]|0);Fn(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[h>>2]|0);Cn(c[c[f>>2]>>2]|0,c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0);k=c[(c[h>>2]|0)+48+16+20>>2]|0;b=c[(c[h>>2]|0)+48+16+4>>2]|0;g=Jp(5)|0;hn(k,b,g,c[h>>2]|0);Cn(c[(c[f>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[c[f>>2]>>2]|0,c[h>>2]|0);hn(c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[h>>2]|0);Cn(c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+48+16+20>>2]|0,c[h>>2]|0);i=e;return}Bp(c[c[f>>2]>>2]|0,1)|0;Bp(c[(c[f>>2]|0)+4>>2]|0,1)|0;Bp(c[(c[f>>2]|0)+8>>2]|0,0)|0;i=e;return}function An(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=b;if(a[(c[e>>2]|0)+48>>0]&1|0){g=c[e>>2]|0;h=g+48|0;k=h+4|0;l=c[k>>2]|0;i=d;return l|0}b=(c[e>>2]|0)+48|0;a[b>>0]=a[b>>0]&-2|1;c[f>>2]=yp(c[(c[e>>2]|0)+16>>2]|0)|0;Un(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0,3);b=((jo(c[(c[e>>2]|0)+20>>2]|0,c[f>>2]|0)|0)!=0^1)&1;c[(c[e>>2]|0)+48+4>>2]=b;qp(c[f>>2]|0);g=c[e>>2]|0;h=g+48|0;k=h+4|0;l=c[k>>2]|0;i=d;return l|0}function Bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;hn(c[f>>2]|0,c[g>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Cn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[f>>2]=e;Vn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);i=f;return}function Dn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Tn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);jn(c[g>>2]|0,c[l>>2]|0);i=f;return}function En(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Fo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0);i=f;return}function Fn(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;ho(c[f>>2]|0,c[g>>2]|0,1);jn(c[f>>2]|0,c[h>>2]|0);i=e;return}function Gn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e;c[e+16>>2]=a;c[e+12>>2]=b;c[e+8>>2]=d;c[f>>2]=45576;c[f+4>>2]=45524;Je(45550,f)}function Hn(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Dn(c[(c[h>>2]|0)+48+16>>2]|0,c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[c[g>>2]>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16+8>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0);d=c[(c[h>>2]|0)+48+16+12>>2]|0;b=c[h>>2]|0;if((c[(c[h>>2]|0)+4>>2]|0)==1){xp(d,c[b+48+16+4>>2]|0)|0;wp(c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0)}else hn(d,c[b+20>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0);Dn(c[(c[h>>2]|0)+48+16+16>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+8>>2]|0,c[h>>2]|0);Bn(c[(c[h>>2]|0)+48+16+20>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);Fn(c[(c[h>>2]|0)+48+16+24>>2]|0,c[(c[h>>2]|0)+48+16+20>>2]|0,c[h>>2]|0);Cn(c[(c[h>>2]|0)+48+16+24>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[(c[h>>2]|0)+48+16+24>>2]|0,c[h>>2]|0);Cn(c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0);Cn(c[c[f>>2]>>2]|0,c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16+8>>2]|0,c[h>>2]|0);hn(c[c[f>>2]>>2]|0,c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16+24>>2]|0,c[h>>2]|0);Cn(c[(c[f>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+8>>2]|0,c[h>>2]|0);hn(c[(c[f>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[h>>2]|0);hn(c[(c[f>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[(c[h>>2]|0)+48+16+24>>2]|0,c[h>>2]|0);i=e;return}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;switch(c[c[l>>2]>>2]|0){case 0:{Jn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 1:{Ln(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 2:{Mn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}default:{i=f;return}}}function Jn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if(((jo(c[c[h>>2]>>2]|0,c[c[k>>2]>>2]|0)|0)==0?(jo(c[(c[h>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0)==0:0)?(jo(c[(c[h>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0)==0:0){yn(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0);i=f;return}if(!(io(c[(c[h>>2]|0)+8>>2]|0,0)|0)){xp(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;xp(c[(c[g>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;xp(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0;i=f;return}if(!(io(c[(c[k>>2]|0)+8>>2]|0,0)|0)){xp(c[c[g>>2]>>2]|0,c[c[h>>2]>>2]|0)|0;xp(c[(c[g>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;xp(c[(c[g>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+8>>2]|0)|0;i=f;return}c[m>>2]=((io(c[(c[h>>2]|0)+8>>2]|0,1)|0)!=0^1)&1;c[n>>2]=((io(c[(c[k>>2]|0)+8>>2]|0,1)|0)!=0^1)&1;e=c[(c[l>>2]|0)+48+16>>2]|0;if(c[n>>2]|0)xp(e,c[c[h>>2]>>2]|0)|0;else{Bn(e,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[c[h>>2]>>2]|0,c[l>>2]|0)}e=c[(c[l>>2]|0)+48+16+4>>2]|0;if(c[m>>2]|0)xp(e,c[c[k>>2]>>2]|0)|0;else{Bn(e,c[(c[h>>2]|0)+8>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16+4>>2]|0,c[c[k>>2]>>2]|0,c[l>>2]|0)}Cn(c[(c[l>>2]|0)+48+16+8>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[(c[l>>2]|0)+48+16+4>>2]|0,c[l>>2]|0);e=c[(c[l>>2]|0)+48+16+12>>2]|0;m=c[(c[k>>2]|0)+8>>2]|0;n=Jp(3)|0;En(e,m,n,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[l>>2]|0);n=c[(c[l>>2]|0)+48+16+16>>2]|0;m=c[(c[h>>2]|0)+8>>2]|0;e=Jp(3)|0;En(n,m,e,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+16>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[l>>2]|0);Cn(c[(c[l>>2]|0)+48+16+20>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[l>>2]|0);e=(io(c[(c[l>>2]|0)+48+16+8>>2]|0,0)|0)!=0;m=(c[l>>2]|0)+48+16|0;if(e){Dn(c[m+24>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[(c[l>>2]|0)+48+16+4>>2]|0,c[l>>2]|0);Dn(c[(c[l>>2]|0)+48+16+28>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[l>>2]|0);hn(c[(c[g>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);hn(c[(c[g>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);Bn(c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+20>>2]|0,c[l>>2]|0);Bn(c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+24>>2]|0,c[l>>2]|0);Cn(c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+40>>2]|0,c[l>>2]|0);Fn(c[(c[l>>2]|0)+48+16+36>>2]|0,c[c[g>>2]>>2]|0,c[l>>2]|0);Cn(c[(c[l>>2]|0)+48+16+32>>2]|0,c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+36>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+32>>2]|0,c[(c[l>>2]|0)+48+16+32>>2]|0,c[(c[l>>2]|0)+48+16+20>>2]|0,c[l>>2]|0);k=c[(c[l>>2]|0)+48+16+36>>2]|0;e=c[(c[l>>2]|0)+48+16+8>>2]|0;n=Jp(3)|0;En(k,e,n,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+28>>2]|0,c[l>>2]|0);Cn(c[(c[g>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+48+16+32>>2]|0,c[(c[l>>2]|0)+48+16+36>>2]|0,c[l>>2]|0);n=c[(c[g>>2]|0)+4>>2]|0;e=c[(c[g>>2]|0)+4>>2]|0;k=Kn(c[l>>2]|0)|0;hn(n,e,k,c[l>>2]|0);i=f;return}k=(io(c[m+20>>2]|0,0)|0)!=0;m=c[g>>2]|0;if(k){Bp(c[m>>2]|0,1)|0;Bp(c[(c[g>>2]|0)+4>>2]|0,1)|0;Bp(c[(c[g>>2]|0)+8>>2]|0,0)|0;i=f;return}else{yn(m,c[h>>2]|0,c[l>>2]|0);i=f;return}}function Kn(b){b=b|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;c[f>>2]=b;if((d[(c[f>>2]|0)+48>>0]|0)>>>1&1|0){g=c[f>>2]|0;h=g+48|0;k=h+8|0;l=c[k>>2]|0;i=e;return l|0}b=(c[f>>2]|0)+48|0;a[b>>0]=a[b>>0]&-3|2;if(!(c[(c[f>>2]|0)+48+8>>2]|0)){b=ip(0)|0;c[(c[f>>2]|0)+48+8>>2]=b}b=c[(c[f>>2]|0)+48+8>>2]|0;m=Jp(2)|0;gn(b,m,c[f>>2]|0);g=c[f>>2]|0;h=g+48|0;k=h+8|0;l=c[k>>2]|0;i=e;return l|0}function Ln(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;c[f+20>>2]=a;c[f+16>>2]=b;c[f+12>>2]=d;c[f+8>>2]=e;c[g>>2]=45599;c[g+4>>2]=45524;Je(45550,g)}function Mn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,V=0,W=0,X=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;hn(c[(c[l>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);Bn(c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+8>>2]|0,c[c[h>>2]>>2]|0,c[c[k>>2]>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+16>>2]|0,c[(c[l>>2]|0)+24>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);hn(c[(c[l>>2]|0)+48+16+16>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[l>>2]|0);Cn(c[(c[l>>2]|0)+48+16+20>>2]|0,c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[l>>2]|0);Dn(c[(c[l>>2]|0)+48+16+24>>2]|0,c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16+16>>2]|0,c[l>>2]|0);Dn(c[(c[l>>2]|0)+48+16+28>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[l>>2]|0);Dn(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[l>>2]|0);hn(c[c[g>>2]>>2]|0,c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16+28>>2]|0,c[l>>2]|0);Cn(c[c[g>>2]>>2]|0,c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);Cn(c[c[g>>2]>>2]|0,c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[l>>2]|0);hn(c[c[g>>2]>>2]|0,c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16+20>>2]|0,c[l>>2]|0);hn(c[c[g>>2]>>2]|0,c[c[g>>2]>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[l>>2]|0);k=c[(c[g>>2]|0)+4>>2]|0;h=c[l>>2]|0;if((c[(c[l>>2]|0)+4>>2]|0)==1){xp(k,c[h+48+16+8>>2]|0)|0;wp(c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0);Cn(c[(c[g>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[l>>2]|0);m=c[g>>2]|0;n=m+4|0;o=c[n>>2]|0;p=c[g>>2]|0;q=p+4|0;r=c[q>>2]|0;s=c[l>>2]|0;t=s+48|0;u=t+16|0;v=u+24|0;w=c[v>>2]|0;x=c[l>>2]|0;hn(o,r,w,x);y=c[g>>2]|0;z=y+4|0;A=c[z>>2]|0;B=c[g>>2]|0;C=B+4|0;D=c[C>>2]|0;E=c[l>>2]|0;F=E+48|0;G=F+16|0;H=c[G>>2]|0;I=c[l>>2]|0;hn(A,D,H,I);J=c[g>>2]|0;K=J+8|0;L=c[K>>2]|0;M=c[l>>2]|0;N=M+48|0;O=N+16|0;P=O+20|0;Q=c[P>>2]|0;R=c[l>>2]|0;S=R+48|0;T=S+16|0;V=T+24|0;W=c[V>>2]|0;X=c[l>>2]|0;hn(L,Q,W,X);i=f;return}else{hn(k,c[h+20>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);Cn(c[(c[g>>2]|0)+4>>2]|0,c[(c[l>>2]|0)+48+16+12>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[l>>2]|0);m=c[g>>2]|0;n=m+4|0;o=c[n>>2]|0;p=c[g>>2]|0;q=p+4|0;r=c[q>>2]|0;s=c[l>>2]|0;t=s+48|0;u=t+16|0;v=u+24|0;w=c[v>>2]|0;x=c[l>>2]|0;hn(o,r,w,x);y=c[g>>2]|0;z=y+4|0;A=c[z>>2]|0;B=c[g>>2]|0;C=B+4|0;D=c[C>>2]|0;E=c[l>>2]|0;F=E+48|0;G=F+16|0;H=c[G>>2]|0;I=c[l>>2]|0;hn(A,D,H,I);J=c[g>>2]|0;K=J+8|0;L=c[K>>2]|0;M=c[l>>2]|0;N=M+48|0;O=N+16|0;P=O+20|0;Q=c[P>>2]|0;R=c[l>>2]|0;S=R+48|0;T=S+16|0;V=T+24|0;W=c[V>>2]|0;X=c[l>>2]|0;hn(L,Q,W,X);i=f;return}}function Nn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;xp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;xp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;xp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function On(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+176|0;if((i|0)>=(j|0))U();g=f+168|0;h=f+164|0;k=f+160|0;l=f+156|0;m=f+152|0;n=f+148|0;o=f+144|0;p=f+140|0;q=f+136|0;r=f+132|0;s=f+128|0;t=f+124|0;u=f+112|0;v=f+100|0;w=f+88|0;x=f+84|0;y=f+80|0;z=f+68|0;A=f+64|0;B=f+60|0;C=f+48|0;D=f+36|0;E=f+32|0;F=f+28|0;G=f+24|0;H=f+20|0;I=f+16|0;J=f+12|0;K=f+8|0;L=f+4|0;M=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;if((c[c[l>>2]>>2]|0)==2){c[x>>2]=Zn(c[h>>2]|0)|0;Bp(c[c[g>>2]>>2]|0,0)|0;Bp(c[(c[g>>2]|0)+4>>2]|0,1)|0;Bp(c[(c[g>>2]|0)+8>>2]|0,1)|0;if(c[h>>2]|0?c[(c[h>>2]|0)+12>>2]&1|0:0){ln(z);c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;yn(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);In(z,c[g>>2]|0,c[k>>2]|0,c[l>>2]|0);if(_n(c[h>>2]|0,c[y>>2]|0)|0)Nn(c[g>>2]|0,z);c[y>>2]=(c[y>>2]|0)+-1}nn(z);i=f;return}c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;yn(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);if(_n(c[h>>2]|0,c[y>>2]|0)|0)In(c[g>>2]|0,c[g>>2]|0,c[k>>2]|0,c[l>>2]|0);c[y>>2]=(c[y>>2]|0)+-1}i=f;return}if((c[c[l>>2]>>2]|0)==1){c[A>>2]=Zn(c[h>>2]|0)|0;ln(u);ln(v);ln(C);ln(D);Bp(c[u>>2]|0,1)|0;qp(c[v>>2]|0);c[v>>2]=vp(c[c[k>>2]>>2]|0)|0;Bp(c[v+8>>2]|0,1)|0;c[J>>2]=(((c[A>>2]|0)+32-1<<1>>>0)/32|0)+1;np(c[u>>2]|0,c[J>>2]|0);np(c[u+8>>2]|0,c[J>>2]|0);np(c[v>>2]|0,c[J>>2]|0);np(c[v+8>>2]|0,c[J>>2]|0);np(c[C>>2]|0,c[J>>2]|0);np(c[C+8>>2]|0,c[J>>2]|0);np(c[D>>2]|0,c[J>>2]|0);np(c[D+8>>2]|0,c[J>>2]|0);c[E>>2]=u;c[F>>2]=v;c[G>>2]=C;c[H>>2]=D;c[B>>2]=(c[A>>2]|0)-1;while(1){if((c[B>>2]|0)<0)break;c[I>>2]=_n(c[h>>2]|0,c[B>>2]|0)|0;Dp(c[c[E>>2]>>2]|0,c[c[F>>2]>>2]|0,c[I>>2]|0);Dp(c[(c[E>>2]|0)+8>>2]|0,c[(c[F>>2]|0)+8>>2]|0,c[I>>2]|0);Pn(c[G>>2]|0,c[H>>2]|0,c[E>>2]|0,c[F>>2]|0,c[c[k>>2]>>2]|0,c[l>>2]|0);Dp(c[c[G>>2]>>2]|0,c[c[H>>2]>>2]|0,c[I>>2]|0);Dp(c[(c[G>>2]|0)+8>>2]|0,c[(c[H>>2]|0)+8>>2]|0,c[I>>2]|0);c[K>>2]=c[E>>2];c[E>>2]=c[G>>2];c[G>>2]=c[K>>2];c[K>>2]=c[F>>2];c[F>>2]=c[H>>2];c[H>>2]=c[K>>2];c[B>>2]=(c[B>>2]|0)+-1}op(c[(c[g>>2]|0)+4>>2]|0);c[I>>2]=c[A>>2]&1;Dp(c[u>>2]|0,c[C>>2]|0,c[I>>2]|0);Dp(c[u+8>>2]|0,c[C+8>>2]|0,c[I>>2]|0);if(!(c[(c[u+8>>2]|0)+4>>2]|0)){Bp(c[c[g>>2]>>2]|0,1)|0;Bp(c[(c[g>>2]|0)+8>>2]|0,0)|0}else{c[o>>2]=Ep(0)|0;gn(c[o>>2]|0,c[u+8>>2]|0,c[l>>2]|0);hn(c[c[g>>2]>>2]|0,c[u>>2]|0,c[o>>2]|0,c[l>>2]|0);Bp(c[(c[g>>2]|0)+8>>2]|0,1)|0;qp(c[o>>2]|0)}nn(u);nn(v);nn(C);nn(D);i=f;return}c[m>>2]=yp(c[(c[l>>2]|0)+16>>2]|0)|0;c[n>>2]=yp(c[(c[l>>2]|0)+16>>2]|0)|0;c[q>>2]=yp(c[(c[l>>2]|0)+16>>2]|0)|0;c[p>>2]=vp(c[h>>2]|0)|0;c[r>>2]=vp(c[(c[k>>2]|0)+4>>2]|0)|0;if(c[(c[p>>2]|0)+8>>2]|0){c[(c[p>>2]|0)+8>>2]=0;gn(c[r>>2]|0,c[r>>2]|0,c[l>>2]|0)}if(io(c[(c[k>>2]|0)+8>>2]|0,1)|0){c[L>>2]=yp(c[(c[l>>2]|0)+16>>2]|0)|0;c[M>>2]=yp(c[(c[l>>2]|0)+16>>2]|0)|0;hn(c[L>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);hn(c[M>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[L>>2]|0,c[l>>2]|0);gn(c[L>>2]|0,c[L>>2]|0,c[l>>2]|0);hn(c[m>>2]|0,c[c[k>>2]>>2]|0,c[L>>2]|0,c[l>>2]|0);gn(c[M>>2]|0,c[M>>2]|0,c[l>>2]|0);hn(c[n>>2]|0,c[r>>2]|0,c[M>>2]|0,c[l>>2]|0);qp(c[L>>2]|0);qp(c[M>>2]|0)}else{xp(c[m>>2]|0,c[c[k>>2]>>2]|0)|0;xp(c[n>>2]|0,c[r>>2]|0)|0}c[o>>2]=vp(Jp(1)|0)|0;M=c[q>>2]|0;L=c[p>>2]|0;Do(M,L,Jp(3)|0);c[t>>2]=Zn(c[q>>2]|0)|0;if((c[t>>2]|0)>>>0<2){c[t>>2]=2;op(c[c[g>>2]>>2]|0);op(c[(c[g>>2]|0)+4>>2]|0);op(c[(c[g>>2]|0)+8>>2]|0)}else{xp(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;xp(c[(c[g>>2]|0)+4>>2]|0,c[r>>2]|0)|0;xp(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0}qp(c[r>>2]|0);c[r>>2]=0;c[u>>2]=c[m>>2];c[m>>2]=0;c[u+4>>2]=c[n>>2];c[n>>2]=0;c[u+8>>2]=c[o>>2];c[o>>2]=0;ln(v);ln(w);c[s>>2]=(c[t>>2]|0)-2;while(1){if((c[s>>2]|0)>>>0<=0)break;yn(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);if((_n(c[q>>2]|0,c[s>>2]|0)|0)==1?(_n(c[p>>2]|0,c[s>>2]|0)|0)==0:0){Nn(v,c[g>>2]|0);In(c[g>>2]|0,v,u,c[l>>2]|0)}if((_n(c[q>>2]|0,c[s>>2]|0)|0)==0?(_n(c[p>>2]|0,c[s>>2]|0)|0)==1:0){Nn(v,c[g>>2]|0);Nn(w,u);Cn(c[w+4>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[w+4>>2]|0,c[l>>2]|0);In(c[g>>2]|0,v,w,c[l>>2]|0)}c[s>>2]=(c[s>>2]|0)+-1}nn(u);nn(v);nn(w);qp(c[q>>2]|0);qp(c[p>>2]|0);i=f;return}function Pn(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,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+20|0;l=h+16|0;m=h+12|0;n=h+8|0;o=h+4|0;p=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;Dn(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Cn(c[(c[n>>2]|0)+8>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Cn(c[(c[m>>2]|0)+8>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);hn(c[c[n>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);hn(c[(c[n>>2]|0)+8>>2]|0,c[c[k>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Bn(c[c[m>>2]>>2]|0,c[c[k>>2]>>2]|0,c[p>>2]|0);Bn(c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Cn(c[(c[n>>2]|0)+8>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);hn(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Cn(c[(c[m>>2]|0)+8>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Bn(c[c[l>>2]>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);Bn(c[(c[l>>2]|0)+8>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);hn(c[(c[k>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[(c[p>>2]|0)+20>>2]|0,c[p>>2]|0);hn(c[(c[l>>2]|0)+8>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[o>>2]|0,c[p>>2]|0);Dn(c[(c[k>>2]|0)+8>>2]|0,c[c[m>>2]>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[p>>2]|0);hn(c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);i=h;return}function Qn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;c[k>>2]=Ep(0)|0;c[l>>2]=Ep(0)|0;c[m>>2]=Ep(0)|0;a:do switch(c[c[g>>2]>>2]|0){case 0:{c[n>>2]=Ep(0)|0;if(fn(c[k>>2]|0,c[l>>2]|0,c[f>>2]|0,c[g>>2]|0)|0){c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}Bn(c[l>>2]|0,c[l>>2]|0,c[g>>2]|0);Rn(c[n>>2]|0,c[k>>2]|0,c[g>>2]|0);hn(c[m>>2]|0,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,c[n>>2]|0,c[g>>2]|0);if(!(jo(c[l>>2]|0,c[m>>2]|0)|0))c[h>>2]=1;Gp(c[n>>2]|0);break}case 1:{if(!(fn(c[k>>2]|0,0,c[f>>2]|0,c[g>>2]|0)|0)){b=c[m>>2]|0;a=c[(c[g>>2]|0)+20>>2]|0;p=Jp(4)|0;hn(b,a,p,c[g>>2]|0);p=c[m>>2]|0;a=c[m>>2]|0;b=Jp(2)|0;Dn(p,a,b,c[g>>2]|0);hn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);Bn(c[l>>2]|0,c[k>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);b=c[m>>2]|0;a=c[m>>2]|0;p=Jp(1)|0;Dn(b,a,p,c[g>>2]|0);hn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);hn(c[m>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);p=c[l>>2]|0;a=c[(c[g>>2]|0)+16>>2]|0;b=Jp(1)|0;Cn(p,a,b,c[g>>2]|0);fo(c[l>>2]|0,c[l>>2]|0,1);En(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);c[h>>2]=io(c[m>>2]|0,1)|0;break a}c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}case 2:{if(fn(c[k>>2]|0,c[l>>2]|0,c[f>>2]|0,c[g>>2]|0)|0){c[e>>2]=0;o=c[e>>2]|0;i=d;return o|0}Bn(c[k>>2]|0,c[k>>2]|0,c[g>>2]|0);Bn(c[l>>2]|0,c[l>>2]|0,c[g>>2]|0);b=c[m>>2]|0;if((c[(c[g>>2]|0)+4>>2]|0)==1){xp(b,c[k>>2]|0)|0;wp(c[m>>2]|0,c[m>>2]|0)}else hn(b,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);Cn(c[m>>2]|0,c[m>>2]|0,Jp(1)|0,c[g>>2]|0);hn(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[g>>2]|0);hn(c[k>>2]|0,c[k>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);Cn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);if(!(io(c[m>>2]|0,0)|0))c[h>>2]=1;break}default:{}}while(0);Gp(c[m>>2]|0);Gp(c[k>>2]|0);Gp(c[l>>2]|0);c[e>>2]=c[h>>2];o=c[e>>2]|0;i=d;return o|0}function Rn(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=c[f>>2]|0;f=c[g>>2]|0;g=Jp(3)|0;Fo(d,f,g,c[(c[h>>2]|0)+16>>2]|0);i=e;return}function Sn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=c[(c[g>>2]|0)+4>>2];c[o>>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;c[n>>2]=(c[m>>2]|0)+1;if((c[c[f>>2]>>2]|0)<(c[n>>2]|0))np(c[f>>2]|0,c[n>>2]|0);c[l>>2]=c[(c[g>>2]|0)+16>>2];c[k>>2]=c[(c[f>>2]|0)+16>>2];do if(c[m>>2]|0){if(!(c[o>>2]|0)){c[q>>2]=to(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]=c[q>>2];c[n>>2]=(c[m>>2]|0)+(c[q>>2]|0);break}if((c[m>>2]|0)==1?(c[c[l>>2]>>2]|0)>>>0<(c[h>>2]|0)>>>0:0){c[c[k>>2]>>2]=(c[h>>2]|0)-(c[c[l>>2]>>2]|0);c[n>>2]=1;break}vo(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;c[n>>2]=(c[m>>2]|0)-((c[(c[k>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0)==0&1);c[p>>2]=1}else{c[c[k>>2]>>2]=c[h>>2];c[n>>2]=c[h>>2]|0?1:0}while(0);c[(c[f>>2]|0)+4>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[p>>2];i=e;return}function Tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+52|0;g=e+48|0;h=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;t=e+4|0;u=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[(c[g>>2]|0)+4>>2]|0)<(c[(c[h>>2]|0)+4>>2]|0)){c[n>>2]=c[(c[h>>2]|0)+4>>2];c[q>>2]=c[(c[h>>2]|0)+8>>2];c[o>>2]=c[(c[g>>2]|0)+4>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=(c[n>>2]|0)+1;if((c[c[f>>2]>>2]|0)<(c[p>>2]|0))np(c[f>>2]|0,c[p>>2]|0);c[l>>2]=c[(c[h>>2]|0)+16>>2];c[m>>2]=c[(c[g>>2]|0)+16>>2]}else{c[n>>2]=c[(c[g>>2]|0)+4>>2];c[q>>2]=c[(c[g>>2]|0)+8>>2];c[o>>2]=c[(c[h>>2]|0)+4>>2];c[r>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(c[n>>2]|0)+1;if((c[c[f>>2]>>2]|0)<(c[p>>2]|0))np(c[f>>2]|0,c[p>>2]|0);c[l>>2]=c[(c[g>>2]|0)+16>>2];c[m>>2]=c[(c[h>>2]|0)+16>>2]}c[k>>2]=c[(c[f>>2]|0)+16>>2];c[s>>2]=0;do if(c[o>>2]|0){if((c[q>>2]|0)==(c[r>>2]|0)){c[u>>2]=uo(c[k>>2]|0,c[l>>2]|0,c[n>>2]|0,c[m>>2]|0,c[o>>2]|0)|0;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=c[u>>2];c[p>>2]=(c[n>>2]|0)+(c[u>>2]|0);if(!(c[q>>2]|0))break;c[s>>2]=1;break}if((c[n>>2]|0)!=(c[o>>2]|0)){wo(c[k>>2]|0,c[l>>2]|0,c[n>>2]|0,c[m>>2]|0,c[o>>2]|0)|0;c[p>>2]=c[n>>2];while(1){if((c[p>>2]|0)<=0)break;if(c[(c[k>>2]|0)+((c[p>>2]|0)-1<<2)>>2]|0)break;c[p>>2]=(c[p>>2]|0)+-1}c[s>>2]=c[q>>2];break}h=(xo(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)<0;g=c[k>>2]|0;if(h){ep(g,c[m>>2]|0,c[l>>2]|0,c[n>>2]|0)|0;c[p>>2]=c[n>>2];while(1){if((c[p>>2]|0)<=0)break;if(c[(c[k>>2]|0)+((c[p>>2]|0)-1<<2)>>2]|0)break;c[p>>2]=(c[p>>2]|0)+-1}if(c[q>>2]|0)break;c[s>>2]=1;break}else{ep(g,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[p>>2]=c[n>>2];while(1){if((c[p>>2]|0)<=0)break;if(c[(c[k>>2]|0)+((c[p>>2]|0)-1<<2)>>2]|0)break;c[p>>2]=(c[p>>2]|0)+-1}if(!(c[q>>2]|0))break;c[s>>2]=1;break}}else{c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[n>>2]|0))break;c[(c[k>>2]|0)+(c[t>>2]<<2)>>2]=c[(c[l>>2]|0)+(c[t>>2]<<2)>>2];c[t>>2]=(c[t>>2]|0)+1}c[p>>2]=c[n>>2];c[s>>2]=c[q>>2]}while(0);c[(c[f>>2]|0)+4>>2]=c[p>>2];c[(c[f>>2]|0)+8>>2]=c[s>>2];i=e;return}function Un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=c[(c[g>>2]|0)+4>>2];c[o>>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;c[n>>2]=(c[m>>2]|0)+1;if((c[c[f>>2]>>2]|0)<(c[n>>2]|0))np(c[f>>2]|0,c[n>>2]|0);c[l>>2]=c[(c[g>>2]|0)+16>>2];c[k>>2]=c[(c[f>>2]|0)+16>>2];do if(c[m>>2]|0){if(c[o>>2]|0){c[q>>2]=to(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;c[(c[k>>2]|0)+(c[m>>2]<<2)>>2]=c[q>>2];c[n>>2]=(c[m>>2]|0)+(c[q>>2]|0);break}if((c[m>>2]|0)==1?(c[c[l>>2]>>2]|0)>>>0<(c[h>>2]|0)>>>0:0){c[c[k>>2]>>2]=(c[h>>2]|0)-(c[c[l>>2]>>2]|0);c[n>>2]=1;c[p>>2]=1;break}vo(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;c[n>>2]=(c[m>>2]|0)-((c[(c[k>>2]|0)+((c[m>>2]|0)-1<<2)>>2]|0)==0&1)}else{c[c[k>>2]>>2]=c[h>>2];c[n>>2]=c[h>>2]|0?1:0;c[p>>2]=1}while(0);c[(c[f>>2]|0)+4>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[p>>2];i=e;return}function Vn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=vp(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=((c[(c[k>>2]|0)+8>>2]|0)!=0^1)&1;Tn(c[f>>2]|0,c[g>>2]|0,c[k>>2]|0);qp(c[k>>2]|0);i=e;return}function Wn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Tn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);zo(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;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,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Vn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);zo(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Yn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&4|0:0){i=b;return}while(1){if(!(c[(c[d>>2]|0)+4>>2]|0)){e=6;break}if(!((c[(c[(c[d>>2]|0)+16>>2]|0)+((c[(c[d>>2]|0)+4>>2]|0)-1<<2)>>2]|0)!=0^1)){e=6;break}a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+-1}if((e|0)==6){i=b;return}}function Zn(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;k=b+4|0;l=b;c[f>>2]=a;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&4|0:0){c[e>>2]=c[(c[f>>2]|0)+8>>2];m=c[e>>2]|0;i=b;return m|0}Yn(c[f>>2]|0);if(c[(c[f>>2]|0)+4>>2]|0){c[h>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<2)>>2];if(c[h>>2]|0){c[k>>2]=c[h>>2];h=c[k>>2]|0;c[l>>2]=(c[k>>2]|0)>>>0<65536?(h>>>0<256?0:8):h>>>0<16777216?16:24;c[g>>2]=32-((d[45623+((c[k>>2]|0)>>>(c[l>>2]|0))>>0]|0)+(c[l>>2]|0))}else c[g>>2]=32;c[g>>2]=32-(c[g>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<5)}else c[g>>2]=0;c[e>>2]=c[g>>2];m=c[e>>2]|0;i=b;return m|0}function _n(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=((c[g>>2]|0)>>>0)/32|0;c[k>>2]=((c[g>>2]|0)>>>0)%32|0;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}else{c[l>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>2]<<2)>>2];c[e>>2]=c[l>>2]&1<<c[k>>2]|0?1:0;m=c[e>>2]|0;i=d;return m|0}return 0}function $n(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}c[h>>2]=((c[f>>2]|0)>>>0)/32|0;c[k>>2]=((c[f>>2]|0)>>>0)%32|0;if((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0){c[g>>2]=c[(c[e>>2]|0)+4>>2];while(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}np(c[e>>2]|0,(c[h>>2]|0)+1|0);c[(c[e>>2]|0)+4>>2]=(c[h>>2]|0)+1}g=(c[(c[e>>2]|0)+16>>2]|0)+(c[h>>2]<<2)|0;c[g>>2]=c[g>>2]|1<<c[k>>2];i=d;return}function ao(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}c[h>>2]=((c[f>>2]|0)>>>0)/32|0;c[k>>2]=((c[f>>2]|0)>>>0)%32|0;if((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0){c[g>>2]=c[(c[e>>2]|0)+4>>2];while(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;c[(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}np(c[e>>2]|0,(c[h>>2]|0)+1|0);c[(c[e>>2]|0)+4>>2]=(c[h>>2]|0)+1}g=(c[(c[e>>2]|0)+16>>2]|0)+(c[h>>2]<<2)|0;c[g>>2]=c[g>>2]|1<<c[k>>2];c[k>>2]=(c[k>>2]|0)+1;while(1){if((c[k>>2]|0)>>>0>=32)break;g=(c[(c[e>>2]|0)+16>>2]|0)+(c[h>>2]<<2)|0;c[g>>2]=c[g>>2]&~(1<<c[k>>2]);c[k>>2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=(c[h>>2]|0)+1;i=d;return}function bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}c[g>>2]=((c[f>>2]|0)>>>0)/32|0;c[h>>2]=((c[f>>2]|0)>>>0)%32|0;if((c[g>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0){i=d;return}while(1){if((c[h>>2]|0)>>>0>=32)break;f=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)|0;c[f>>2]=c[f>>2]&~(1<<c[h>>2]);c[h>>2]=(c[h>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)+1;i=d;return}function co(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}c[g>>2]=((c[f>>2]|0)>>>0)/32|0;c[h>>2]=((c[f>>2]|0)>>>0)%32|0;if((c[g>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0){i=d;return}f=(c[(c[e>>2]|0)+16>>2]|0)+(c[g>>2]<<2)|0;c[f>>2]=c[f>>2]&~(1<<c[h>>2]);i=d;return}function eo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+16>>2];c[h>>2]=c[(c[e>>2]|0)+4>>2];if(c[e>>2]|0?c[(c[e>>2]|0)+12>>2]&16|0:0){pp();i=d;return}if((c[f>>2]|0)>>>0>=(c[h>>2]|0)>>>0){c[(c[e>>2]|0)+4>>2]=0;i=d;return}c[k>>2]=0;while(1){l=c[k>>2]|0;if((c[k>>2]|0)>>>0>=((c[h>>2]|0)-(c[f>>2]|0)|0)>>>0)break;c[(c[g>>2]|0)+(c[k>>2]<<2)>>2]=c[(c[g>>2]|0)+(l+(c[f>>2]|0)<<2)>>2];c[k>>2]=(c[k>>2]|0)+1}c[(c[g>>2]|0)+(l<<2)>>2]=0;l=(c[e>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)-(c[f>>2]|0);i=d;return}function fo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=((c[h>>2]|0)>>>0)/32|0;c[n>>2]=((c[h>>2]|0)>>>0)%32|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){pp();i=e;return}h=c[m>>2]|0;a:do if((c[f>>2]|0)==(c[g>>2]|0)){if(h>>>0>=(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[(c[f>>2]|0)+4>>2]=0;i=e;return}if(c[m>>2]|0){c[l>>2]=0;while(1){o=c[l>>2]|0;if((c[l>>2]|0)>>>0>=((c[(c[f>>2]|0)+4>>2]|0)-(c[m>>2]|0)|0)>>>0)break;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(o+(c[m>>2]|0)<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}c[(c[(c[f>>2]|0)+16>>2]|0)+(o<<2)>>2]=0;d=(c[f>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)-(c[m>>2]|0)}if(c[n>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)!=0:0)dp(c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[n>>2]|0)|0}else{c[k>>2]=c[(c[g>>2]|0)+4>>2];c[(c[f>>2]|0)+8>>2]=c[(c[g>>2]|0)+8>>2];d=(c[c[f>>2]>>2]|0)<(c[k>>2]|0);if(!h){if(d)np(c[f>>2]|0,c[k>>2]|0);c[(c[f>>2]|0)+4>>2]=c[k>>2];if(!(c[k>>2]|0))break;if(c[n>>2]|0){dp(c[(c[f>>2]|0)+16>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[n>>2]|0)|0;break}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+4>>2]|0)>>>0)break a;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}}if(d)np(c[f>>2]|0,c[k>>2]|0);c[(c[f>>2]|0)+4>>2]=c[k>>2];c[l>>2]=0;while(1){p=c[l>>2]|0;if((c[l>>2]|0)>>>0>=(c[(c[g>>2]|0)+4>>2]|0)>>>0)break;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[(c[g>>2]|0)+16>>2]|0)+(p<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}c[(c[f>>2]|0)+4>>2]=p;if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[(c[f>>2]|0)+4>>2]=0;i=e;return}if(c[m>>2]|0){c[l>>2]=0;while(1){q=c[l>>2]|0;if((c[l>>2]|0)>>>0>=((c[(c[f>>2]|0)+4>>2]|0)-(c[m>>2]|0)|0)>>>0)break;c[(c[(c[f>>2]|0)+16>>2]|0)+(c[l>>2]<<2)>>2]=c[(c[(c[f>>2]|0)+16>>2]|0)+(q+(c[m>>2]|0)<<2)>>2];c[l>>2]=(c[l>>2]|0)+1}c[(c[(c[f>>2]|0)+16>>2]|0)+(q<<2)>>2]=0;d=(c[f>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)-(c[m>>2]|0)}if(c[n>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)!=0:0)dp(c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+16>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[n>>2]|0)|0}while(0);while(1){if((c[(c[f>>2]|0)+4>>2]|0)<=0){r=40;break}if(c[(c[(c[f>>2]|0)+16>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<2)>>2]|0){r=40;break}n=(c[f>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+-1}if((r|0)==40){i=e;return}}function go(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+4>>2];if(!((c[f>>2]|0)!=0&(c[h>>2]|0)!=0)){i=d;return}if((c[c[e>>2]>>2]|0)>>>0<((c[h>>2]|0)+(c[f>>2]|0)|0)>>>0)np(c[e>>2]|0,(c[h>>2]|0)+(c[f>>2]|0)|0);c[g>>2]=c[(c[e>>2]|0)+16>>2];c[k>>2]=(c[h>>2]|0)-1;while(1){if((c[k>>2]|0)<0)break;c[(c[g>>2]|0)+((c[k>>2]|0)+(c[f>>2]|0)<<2)>>2]=c[(c[g>>2]|0)+(c[k>>2]<<2)>>2];c[k>>2]=(c[k>>2]|0)+-1}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;c[(c[g>>2]|0)+(c[k>>2]<<2)>>2]=0;c[k>>2]=(c[k>>2]|0)+1}k=(c[e>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+(c[f>>2]|0);i=d;return}function ho(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+36|0;g=e+32|0;h=e+28|0;k=e+24|0;l=e+20|0;m=e+16|0;n=e+12|0;o=e+8|0;p=e+4|0;q=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=((c[h>>2]|0)>>>0)/32|0;c[l>>2]=((c[h>>2]|0)>>>0)%32|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){pp();i=e;return}if(!(c[h>>2]|0?1:(c[f>>2]|0)!=(c[g>>2]|0))){i=e;return}if((c[f>>2]|0)!=(c[g>>2]|0)){c[m>>2]=c[(c[g>>2]|0)+4>>2];c[n>>2]=c[(c[g>>2]|0)+8>>2];if((c[c[f>>2]>>2]|0)>>>0<((c[m>>2]|0)+(c[k>>2]|0)+1|0)>>>0)np(c[f>>2]|0,(c[m>>2]|0)+(c[k>>2]|0)+1|0);c[o>>2]=c[(c[f>>2]|0)+16>>2];c[p>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[(c[o>>2]|0)+(c[q>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[q>>2]<<2)>>2];c[q>>2]=(c[q>>2]|0)+1}c[(c[f>>2]|0)+4>>2]=c[m>>2];c[(c[f>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];c[(c[f>>2]|0)+8>>2]=c[n>>2]}if((c[k>>2]|0)==0|(c[l>>2]|0)!=0){if(c[h>>2]|0){go(c[f>>2]|0,(c[k>>2]|0)+1|0);fo(c[f>>2]|0,c[f>>2]|0,32-(c[l>>2]|0)|0)}}else go(c[f>>2]|0,c[k>>2]|0);while(1){if((c[(c[f>>2]|0)+4>>2]|0)<=0){r=19;break}if(c[(c[(c[f>>2]|0)+16>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<2)>>2]|0){r=19;break}k=(c[f>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+-1}if((r|0)==19){i=e;return}}function io(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=c[g>>2];Yn(c[f>>2]|0);do if(c[(c[f>>2]|0)+4>>2]|0){if(c[(c[f>>2]|0)+8>>2]|0){c[e>>2]=-1;break}if((c[(c[f>>2]|0)+4>>2]|0)!=1){c[e>>2]=1;break}if((c[c[(c[f>>2]|0)+16>>2]>>2]|0)>>>0>(c[h>>2]|0)>>>0){c[e>>2]=1;break}if((c[c[(c[f>>2]|0)+16>>2]>>2]|0)>>>0<(c[h>>2]|0)>>>0){c[e>>2]=-1;break}else{c[e>>2]=0;break}}else c[e>>2]=0-((c[h>>2]|0)!=0&1);while(0);i=d;return c[e>>2]|0}function jo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;if(!(c[f>>2]|0?(c[(c[f>>2]|0)+12>>2]&4|0)!=0:0))m=3;do if((m|0)==3){if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0)break;Yn(c[f>>2]|0);Yn(c[g>>2]|0);c[h>>2]=c[(c[f>>2]|0)+4>>2];c[k>>2]=c[(c[g>>2]|0)+4>>2];if((c[(c[f>>2]|0)+8>>2]|0)==0?c[(c[g>>2]|0)+8>>2]|0:0){c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}if(c[(c[f>>2]|0)+8>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)==0:0){c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}if(((c[h>>2]|0)!=(c[k>>2]|0)?(c[(c[f>>2]|0)+8>>2]|0)==0:0)?(c[(c[g>>2]|0)+8>>2]|0)==0:0){c[e>>2]=(c[h>>2]|0)-(c[k>>2]|0);n=c[e>>2]|0;i=d;return n|0}if(((c[h>>2]|0)!=(c[k>>2]|0)?c[(c[f>>2]|0)+8>>2]|0:0)?c[(c[g>>2]|0)+8>>2]|0:0){c[e>>2]=(c[k>>2]|0)+(c[h>>2]|0);n=c[e>>2]|0;i=d;return n|0}if(!(c[h>>2]|0)){c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}b=xo(c[(c[f>>2]|0)+16>>2]|0,c[(c[g>>2]|0)+16>>2]|0,c[h>>2]|0)|0;c[l>>2]=b;if(!b){c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}if((((c[l>>2]|0)<0?1:0)|0)==((c[(c[f>>2]|0)+8>>2]|0?1:0)|0)){c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}else{c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}}while(0);do if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&4|0:0){if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0)break;c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}while(0);if(c[f>>2]|0){if(c[g>>2]|0?(c[(c[f>>2]|0)+12>>2]&4|0)==0:0)m=13}else if(c[g>>2]|0)m=13;if((m|0)==13?c[(c[g>>2]|0)+12>>2]&4|0:0){c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}if((c[(c[f>>2]|0)+8>>2]|0)==0?(c[(c[g>>2]|0)+8>>2]|0)==0:0){c[e>>2]=0;n=c[e>>2]|0;i=d;return n|0}if((c[(c[f>>2]|0)+8>>2]|0)<(c[(c[g>>2]|0)+8>>2]|0)){c[e>>2]=-1;n=c[e>>2]|0;i=d;return n|0}if((c[(c[f>>2]|0)+8>>2]|0)>(c[(c[g>>2]|0)+8>>2]|0)){c[e>>2]=1;n=c[e>>2]|0;i=d;return n|0}else{c[e>>2]=vv(c[(c[f>>2]|0)+16>>2]|0,c[(c[g>>2]|0)+16>>2]|0,((c[(c[f>>2]|0)+8>>2]|0)+7|0)/8|0)|0;n=c[e>>2]|0;i=d;return n|0}return 0}function ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[h>>2]|0)+8>>2];c[l>>2]=0;if((c[f>>2]|0)==(c[h>>2]|0)){c[l>>2]=vp(c[h>>2]|0)|0;c[h>>2]=c[l>>2]}lo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);if((c[k>>2]|0?1:0)^(c[(c[g>>2]|0)+8>>2]|0?1:0)|0?c[(c[f>>2]|0)+4>>2]|0:0)Tn(c[f>>2]|0,c[f>>2]|0,c[h>>2]|0);if(!(c[l>>2]|0)){i=e;return}qp(c[l>>2]|0);i=e;return}function lo(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;mo(0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function mo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+160|0;if((i|0)>=(j|0))U();h=g+144|0;k=g+140|0;l=g+136|0;m=g+132|0;n=g+128|0;o=g+124|0;p=g+120|0;q=g+116|0;r=g+112|0;s=g+108|0;t=g+104|0;u=g+100|0;v=g+96|0;w=g+92|0;x=g+88|0;y=g+84|0;z=g+64|0;A=g+44|0;B=g+40|0;C=g+36|0;D=g+32|0;E=g+28|0;F=g+24|0;G=g+20|0;H=g+16|0;I=g+12|0;J=g+8|0;K=g+4|0;L=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[r>>2]=c[(c[l>>2]|0)+4>>2];c[s>>2]=c[(c[m>>2]|0)+4>>2];c[v>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=c[(c[l>>2]|0)+8>>2]^c[(c[m>>2]|0)+8>>2];c[B>>2]=0;c[u>>2]=(c[r>>2]|0)+1;np(c[k>>2]|0,c[u>>2]|0);c[t>>2]=(c[u>>2]|0)-(c[s>>2]|0);if((c[t>>2]|0)<=0){a:do if((c[l>>2]|0)!=(c[k>>2]|0)){c[(c[k>>2]|0)+4>>2]=c[(c[l>>2]|0)+4>>2];c[(c[k>>2]|0)+8>>2]=c[(c[l>>2]|0)+8>>2];c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[r>>2]|0))break a;c[(c[(c[k>>2]|0)+16>>2]|0)+(c[C>>2]<<2)>>2]=c[(c[(c[l>>2]|0)+16>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+1}}while(0);if(!(c[h>>2]|0)){i=g;return}c[(c[h>>2]|0)+4>>2]=0;c[(c[h>>2]|0)+8>>2]=0;i=g;return}if(c[h>>2]|0)np(c[h>>2]|0,c[t>>2]|0);c[n>>2]=c[(c[l>>2]|0)+16>>2];c[o>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=c[(c[k>>2]|0)+16>>2];l=(c[h>>2]|0)!=0;if((c[s>>2]|0)==1){if(l){c[p>>2]=c[(c[h>>2]|0)+16>>2];c[D>>2]=Wo(c[p>>2]|0,c[n>>2]|0,c[r>>2]|0,c[c[o>>2]>>2]|0)|0;c[t>>2]=(c[t>>2]|0)-((c[(c[p>>2]|0)+((c[t>>2]|0)-1<<2)>>2]|0)==0&1);c[(c[h>>2]|0)+4>>2]=c[t>>2];c[(c[h>>2]|0)+8>>2]=c[w>>2]}else c[D>>2]=Uo(c[n>>2]|0,c[r>>2]|0,c[c[o>>2]>>2]|0)|0;c[c[q>>2]>>2]=c[D>>2];c[u>>2]=c[D>>2]|0?1:0;c[(c[k>>2]|0)+4>>2]=c[u>>2];c[(c[k>>2]|0)+8>>2]=c[v>>2];i=g;return}b:do if(l){c[p>>2]=c[(c[h>>2]|0)+16>>2];if((c[p>>2]|0)==(c[n>>2]|0)){c[A+(c[B>>2]<<2)>>2]=c[r>>2];if(c[h>>2]|0)M=(c[(c[h>>2]|0)+12>>2]&1|0)!=0;else M=0;D=jp(c[r>>2]|0,M&1)|0;C=c[B>>2]|0;c[B>>2]=C+1;c[z+(C<<2)>>2]=D;c[n>>2]=D;c[E>>2]=0;while(1){if((c[E>>2]|0)>=(c[r>>2]|0))break b;c[(c[n>>2]|0)+(c[E>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[E>>2]<<2)>>2];c[E>>2]=(c[E>>2]|0)+1}}}else c[p>>2]=(c[q>>2]|0)+(c[s>>2]<<2);while(0);c[F>>2]=c[(c[o>>2]|0)+((c[s>>2]|0)-1<<2)>>2];E=c[F>>2]|0;c[G>>2]=(c[F>>2]|0)>>>0<65536?(E>>>0<256?0:8):E>>>0<16777216?16:24;c[x>>2]=32-((d[45623+((c[F>>2]|0)>>>(c[G>>2]|0))>>0]|0)+(c[G>>2]|0));do if(c[x>>2]|0){c[A+(c[B>>2]<<2)>>2]=c[s>>2];if(c[m>>2]|0)N=(c[(c[m>>2]|0)+12>>2]&1|0)!=0;else N=0;G=jp(c[s>>2]|0,N&1)|0;F=c[B>>2]|0;c[B>>2]=F+1;c[z+(F<<2)>>2]=G;c[H>>2]=G;Xo(c[H>>2]|0,c[o>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;c[o>>2]=c[H>>2];c[I>>2]=Xo(c[q>>2]|0,c[n>>2]|0,c[r>>2]|0,c[x>>2]|0)|0;if(c[I>>2]|0){c[(c[q>>2]|0)+(c[r>>2]<<2)>>2]=c[I>>2];c[u>>2]=(c[r>>2]|0)+1;break}else{c[u>>2]=c[r>>2];break}}else{if((c[o>>2]|0)!=(c[q>>2]|0)){if(c[h>>2]|0?(c[o>>2]|0)==(c[p>>2]|0):0)O=32}else O=32;if((O|0)==32){c[A+(c[B>>2]<<2)>>2]=c[s>>2];if(c[m>>2]|0)P=(c[(c[m>>2]|0)+12>>2]&1|0)!=0;else P=0;G=jp(c[s>>2]|0,P&1)|0;F=c[B>>2]|0;c[B>>2]=F+1;c[z+(F<<2)>>2]=G;c[J>>2]=G;c[K>>2]=0;while(1){if((c[K>>2]|0)>=(c[s>>2]|0))break;c[(c[J>>2]|0)+(c[K>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[K>>2]<<2)>>2];c[K>>2]=(c[K>>2]|0)+1}c[o>>2]=c[J>>2]}c:do if((c[q>>2]|0)!=(c[n>>2]|0)){c[L>>2]=0;while(1){if((c[L>>2]|0)>=(c[r>>2]|0))break c;c[(c[q>>2]|0)+(c[L>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[L>>2]<<2)>>2];c[L>>2]=(c[L>>2]|0)+1}}while(0);c[u>>2]=c[r>>2]}while(0);c[y>>2]=Vo(c[p>>2]|0,0,c[q>>2]|0,c[u>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;if(c[h>>2]|0){c[t>>2]=(c[u>>2]|0)-(c[s>>2]|0);if(c[y>>2]|0){c[(c[p>>2]|0)+(c[t>>2]<<2)>>2]=c[y>>2];c[t>>2]=(c[t>>2]|0)+1}c[(c[h>>2]|0)+4>>2]=c[t>>2];c[(c[h>>2]|0)+8>>2]=c[w>>2]}c[u>>2]=c[s>>2];while(1){if((c[u>>2]|0)<=0)break;if(c[(c[q>>2]|0)+((c[u>>2]|0)-1<<2)>>2]|0)break;c[u>>2]=(c[u>>2]|0)+-1}if((c[x>>2]|0)!=0&(c[u>>2]|0)!=0){dp(c[q>>2]|0,c[q>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;c[u>>2]=(c[u>>2]|0)-((c[(c[q>>2]|0)+((c[u>>2]|0)-1<<2)>>2]|0)==0?1:0)}c[(c[k>>2]|0)+4>>2]=c[u>>2];c[(c[k>>2]|0)+8>>2]=c[v>>2];while(1){if(!(c[B>>2]|0))break;c[B>>2]=(c[B>>2]|0)+-1;lp(c[z+(c[B>>2]<<2)>>2]|0,c[A+(c[B>>2]<<2)>>2]|0)}i=g;return}function no(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=Uo(c[(c[g>>2]|0)+16>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0?c[(c[g>>2]|0)+8>>2]|0:0)c[k>>2]=(c[h>>2]|0)-(c[k>>2]|0);if(!(c[f>>2]|0)){l=c[k>>2]|0;i=e;return l|0}c[c[(c[f>>2]|0)+16>>2]>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[k>>2]|0?1:0;l=c[k>>2]|0;i=e;return l|0}function oo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=ip(c[(c[f>>2]|0)+4>>2]|0)|0;po(c[f>>2]|0,c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);qp(c[k>>2]|0);i=e;return}function po(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+20|0;h=f+16|0;k=f+12|0;l=f+8|0;m=f+4|0;n=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=c[(c[l>>2]|0)+8>>2];c[n>>2]=0;if(!((c[g>>2]|0)!=(c[l>>2]|0)?(c[h>>2]|0)!=(c[l>>2]|0):0)){c[n>>2]=vp(c[l>>2]|0)|0;c[l>>2]=c[n>>2]}mo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);if(c[m>>2]^c[(c[k>>2]|0)+8>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){Un(c[g>>2]|0,c[g>>2]|0,1);Tn(c[h>>2]|0,c[h>>2]|0,c[l>>2]|0)}if(!(c[n>>2]|0)){i=f;return}qp(c[n>>2]|0);i=f;return}function qo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[g>>2]|0)+4>>2];c[m>>2]=((c[h>>2]|0)>>>0)/32|0;c[l>>2]=(c[k>>2]|0)-(c[m>>2]|0);d=c[f>>2]|0;if((c[m>>2]|0)>=(c[k>>2]|0)){c[d+4>>2]=0;i=e;return}if((c[d>>2]|0)<(c[l>>2]|0))np(c[f>>2]|0,c[l>>2]|0);c[n>>2]=c[(c[f>>2]|0)+16>>2];c[o>>2]=c[(c[g>>2]|0)+16>>2];c[h>>2]=((c[h>>2]|0)>>>0)%32|0;a:do if(c[h>>2]|0){dp(c[n>>2]|0,(c[o>>2]|0)+(c[m>>2]<<2)|0,c[l>>2]|0,c[h>>2]|0)|0;c[l>>2]=(c[l>>2]|0)-(((c[(c[n>>2]|0)+((c[l>>2]|0)-1<<2)>>2]|0)!=0^1)&1)}else{c[p>>2]=0;while(1){if((c[p>>2]|0)>=(c[l>>2]|0))break a;c[(c[n>>2]|0)+(c[p>>2]<<2)>>2]=c[(c[o>>2]|0)+(c[m>>2]<<2)+(c[p>>2]<<2)>>2];c[p>>2]=(c[p>>2]|0)+1}}while(0);c[(c[f>>2]|0)+4>>2]=c[l>>2];i=e;return}function ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=((Uo(c[(c[e>>2]|0)+16>>2]|0,c[(c[e>>2]|0)+4>>2]|0,c[f>>2]|0)|0)!=0^1)&1;i=d;return b|0}function so(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=vp(c[g>>2]|0)|0;c[l>>2]=vp(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=0;c[(c[l>>2]|0)+8>>2]=0;while(1){h=(io(c[l>>2]|0,0)|0)!=0;m=c[f>>2]|0;n=c[k>>2]|0;if(!h)break;ko(m,n,c[l>>2]|0);xp(c[k>>2]|0,c[l>>2]|0)|0;xp(c[l>>2]|0,c[f>>2]|0)|0}xp(m,n)|0;qp(c[k>>2]|0);qp(c[l>>2]|0);l=((io(c[f>>2]|0,1)|0)!=0^1)&1;i=e;return l|0}function to(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[k>>2]|0;c[k>>2]=e+4;c[n>>2]=c[e>>2];c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);e=c[m>>2]|0;d=c[h>>2]|0;c[h>>2]=d+4;c[d>>2]=e;a:do if((c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0){while(1){e=(c[l>>2]|0)+-1|0;c[l>>2]=e;if(!e)break;e=c[k>>2]|0;c[k>>2]=e+4;c[n>>2]=(c[e>>2]|0)+1;e=c[n>>2]|0;d=c[h>>2]|0;c[h>>2]=d+4;c[d>>2]=e;if(c[n>>2]|0)break a}c[g>>2]=1;p=c[g>>2]|0;i=f;return p|0}while(0);b:do if((c[h>>2]|0)!=(c[k>>2]|0)){c[o>>2]=0;while(1){if((c[o>>2]|0)>=((c[l>>2]|0)-1|0))break b;c[(c[h>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[o>>2]<<2)>>2];c[o>>2]=(c[o>>2]|0)+1}}while(0);c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}function uo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;if(c[n>>2]|0)c[o>>2]=To(c[h>>2]|0,c[k>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!((c[l>>2]|0)-(c[n>>2]|0)|0)){p=c[o>>2]|0;i=g;return p|0}c[o>>2]=to((c[h>>2]|0)+(c[n>>2]<<2)|0,(c[k>>2]|0)+(c[n>>2]<<2)|0,(c[l>>2]|0)-(c[n>>2]|0)|0,c[o>>2]|0)|0;p=c[o>>2]|0;i=g;return p|0}function vo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+24|0;h=f+20|0;k=f+16|0;l=f+12|0;m=f+8|0;n=f+4|0;o=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;e=c[k>>2]|0;c[k>>2]=e+4;c[n>>2]=c[e>>2];c[m>>2]=(c[n>>2]|0)-(c[m>>2]|0);e=c[m>>2]|0;d=c[h>>2]|0;c[h>>2]=d+4;c[d>>2]=e;a:do if((c[m>>2]|0)>>>0>(c[n>>2]|0)>>>0){while(1){e=(c[l>>2]|0)+-1|0;c[l>>2]=e;if(!e)break;e=c[k>>2]|0;c[k>>2]=e+4;c[n>>2]=c[e>>2];e=(c[n>>2]|0)-1|0;d=c[h>>2]|0;c[h>>2]=d+4;c[d>>2]=e;if(c[n>>2]|0)break a}c[g>>2]=1;p=c[g>>2]|0;i=f;return p|0}while(0);b:do if((c[h>>2]|0)!=(c[k>>2]|0)){c[o>>2]=0;while(1){if((c[o>>2]|0)>=((c[l>>2]|0)-1|0))break b;c[(c[h>>2]|0)+(c[o>>2]<<2)>>2]=c[(c[k>>2]|0)+(c[o>>2]<<2)>>2];c[o>>2]=(c[o>>2]|0)+1}}while(0);c[g>>2]=0;p=c[g>>2]|0;i=f;return p|0}function wo(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,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+20|0;k=g+16|0;l=g+12|0;m=g+8|0;n=g+4|0;o=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;if(c[n>>2]|0)c[o>>2]=ep(c[h>>2]|0,c[k>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!((c[l>>2]|0)-(c[n>>2]|0)|0)){p=c[o>>2]|0;i=g;return p|0}c[o>>2]=vo((c[h>>2]|0)+(c[n>>2]<<2)|0,(c[k>>2]|0)+(c[n>>2]<<2)|0,(c[l>>2]|0)-(c[n>>2]|0)|0,c[o>>2]|0)|0;p=c[o>>2]|0;i=g;return p|0}function xo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+20|0;h=e+16|0;k=e+12|0;l=e+8|0;m=e+4|0;n=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=(c[k>>2]|0)-1;while(1){if((c[l>>2]|0)<0){o=5;break}c[m>>2]=c[(c[g>>2]|0)+(c[l>>2]<<2)>>2];c[n>>2]=c[(c[h>>2]|0)+(c[l>>2]<<2)>>2];if((c[m>>2]|0)!=(c[n>>2]|0)){o=6;break}c[l>>2]=(c[l>>2]|0)+-1}if((o|0)==5){c[f>>2]=0;p=c[f>>2]|0;i=e;return p|0}else if((o|0)==6){c[f>>2]=(c[m>>2]|0)>>>0>(c[n>>2]|0)>>>0?1:-1;p=c[f>>2]|0;i=e;return p|0}return 0}function yo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=i;i=i+80|0;if((i|0)>=(j|0))U();f=e+68|0;g=e+64|0;h=e+60|0;k=e+56|0;l=e+52|0;m=e+48|0;n=e+44|0;o=e+40|0;p=e+36|0;q=e+32|0;r=e+28|0;s=e+24|0;t=e+20|0;u=e+16|0;v=e+12|0;w=e+8|0;x=e+4|0;y=e;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[o>>2]=0;c[r>>2]=0;c[u>>2]=0;if(!(io(c[h>>2]|0,0)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}if(!(io(c[k>>2]|0,1)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}c[l>>2]=vp(c[h>>2]|0)|0;c[m>>2]=vp(c[k>>2]|0)|0;c[w>>2]=0;while(1){if(_n(c[l>>2]|0,0)|0)break;if(!((_n(c[m>>2]|0,0)|0)!=0^1))break;fo(c[l>>2]|0,c[l>>2]|0,1);fo(c[m>>2]|0,c[m>>2]|0,1);c[w>>2]=(c[w>>2]|0)+1}c[y>>2]=_n(c[m>>2]|0,0)|0;c[n>>2]=hp(1)|0;if(!(c[y>>2]|0))c[o>>2]=hp(0)|0;c[p>>2]=vp(c[l>>2]|0)|0;c[q>>2]=vp(c[m>>2]|0)|0;if(!(c[y>>2]|0)){c[r>>2]=ip(c[(c[l>>2]|0)+4>>2]|0)|0;Vn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)}c[s>>2]=vp(c[m>>2]|0)|0;if(_n(c[l>>2]|0,0)|0){c[t>>2]=hp(0)|0;if(!(c[y>>2]|0)){c[u>>2]=hp(1)|0;c[(c[u>>2]|0)+8>>2]=1}c[v>>2]=vp(c[m>>2]|0)|0;c[(c[v>>2]|0)+8>>2]=((c[(c[v>>2]|0)+8>>2]|0)!=0^1)&1}else{c[t>>2]=hp(1)|0;if(!(c[y>>2]|0))c[u>>2]=hp(0)|0;c[v>>2]=vp(c[l>>2]|0)|0;A=20}while(1){if((A|0)==20){A=0;w=(c[y>>2]|0)!=0;k=(_n(c[t>>2]|0,0)|0)!=0;if(w){if(k)Tn(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);fo(c[t>>2]|0,c[t>>2]|0,1);fo(c[v>>2]|0,c[v>>2]|0,1);continue}if(!(!k?!(_n(c[u>>2]|0,0)|0):0)){Tn(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);Vn(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0)}fo(c[t>>2]|0,c[t>>2]|0,1);fo(c[u>>2]|0,c[u>>2]|0,1);fo(c[v>>2]|0,c[v>>2]|0,1)}if((_n(c[v>>2]|0,0)|0)!=0^1){A=20;continue}if(c[(c[v>>2]|0)+8>>2]|0){Vn(c[q>>2]|0,c[m>>2]|0,c[t>>2]|0);c[x>>2]=c[(c[l>>2]|0)+8>>2];c[(c[l>>2]|0)+8>>2]=((c[(c[l>>2]|0)+8>>2]|0)!=0^1)&1;if(!(c[y>>2]|0))Vn(c[r>>2]|0,c[l>>2]|0,c[u>>2]|0);c[(c[l>>2]|0)+8>>2]=c[x>>2];c[x>>2]=c[(c[v>>2]|0)+8>>2];c[(c[v>>2]|0)+8>>2]=((c[(c[v>>2]|0)+8>>2]|0)!=0^1)&1;xp(c[s>>2]|0,c[v>>2]|0)|0;c[(c[v>>2]|0)+8>>2]=c[x>>2]}else{xp(c[n>>2]|0,c[t>>2]|0)|0;if(!(c[y>>2]|0))xp(c[o>>2]|0,c[u>>2]|0)|0;xp(c[p>>2]|0,c[v>>2]|0)|0}Vn(c[t>>2]|0,c[n>>2]|0,c[q>>2]|0);if(!(c[y>>2]|0))Vn(c[u>>2]|0,c[o>>2]|0,c[r>>2]|0);Vn(c[v>>2]|0,c[p>>2]|0,c[s>>2]|0);if(c[(c[t>>2]|0)+8>>2]|0?(Tn(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0),(c[y>>2]|0)==0):0)Vn(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);if(io(c[v>>2]|0,0)|0)A=20;else break}xp(c[g>>2]|0,c[n>>2]|0)|0;qp(c[n>>2]|0);qp(c[q>>2]|0);qp(c[t>>2]|0);if(!(c[y>>2]|0)){qp(c[o>>2]|0);qp(c[r>>2]|0);qp(c[u>>2]|0)}qp(c[p>>2]|0);qp(c[s>>2]|0);qp(c[v>>2]|0);qp(c[l>>2]|0);qp(c[m>>2]|0);c[f>>2]=1;z=c[f>>2]|0;i=e;return z|0}function zo(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;ko(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Ao(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;Yn(c[e>>2]|0);c[g>>2]=pf(1,28)|0;b=c[e>>2]|0;if(c[f>>2]|0){f=vp(b)|0;c[c[g>>2]>>2]=f;c[(c[g>>2]|0)+4>>2]=1}else c[c[g>>2]>>2]=b;c[(c[g>>2]|0)+8>>2]=c[(c[e>>2]|0)+4>>2];c[h>>2]=ip((c[(c[g>>2]|0)+8>>2]|0)+1|0)|0;Bp(c[h>>2]|0,1)|0;go(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]<<1);oo(c[h>>2]|0,c[h>>2]|0,c[e>>2]|0);c[(c[g>>2]|0)+12>>2]=c[h>>2];h=ip((c[(c[g>>2]|0)+8>>2]<<1)+1|0)|0;c[(c[g>>2]|0)+16>>2]=h;h=ip((c[(c[g>>2]|0)+8>>2]<<1)+1|0)|0;c[(c[g>>2]|0)+20>>2]=h;i=d;return c[g>>2]|0}function Bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}qp(c[(c[d>>2]|0)+12>>2]|0);qp(c[(c[d>>2]|0)+16>>2]|0);qp(c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+24>>2]|0)qp(c[(c[d>>2]|0)+24>>2]|0);if(c[(c[d>>2]|0)+4>>2]|0)qp(c[c[d>>2]>>2]|0);hf(c[d>>2]|0);i=b;return}function Co(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[c[h>>2]>>2];c[l>>2]=c[(c[h>>2]|0)+8>>2];c[m>>2]=c[(c[h>>2]|0)+12>>2];c[n>>2]=c[(c[h>>2]|0)+16>>2];c[o>>2]=c[(c[h>>2]|0)+20>>2];Yn(c[g>>2]|0);if((c[(c[g>>2]|0)+4>>2]|0)>(c[l>>2]<<1|0)){zo(c[f>>2]|0,c[g>>2]|0,c[k>>2]|0);i=e;return}c[p>>2]=c[(c[g>>2]|0)+8>>2];c[(c[g>>2]|0)+8>>2]=0;xp(c[o>>2]|0,c[g>>2]|0)|0;eo(c[o>>2]|0,(c[l>>2]|0)-1|0);Do(c[o>>2]|0,c[o>>2]|0,c[m>>2]|0);eo(c[o>>2]|0,(c[l>>2]|0)+1|0);xp(c[n>>2]|0,c[g>>2]|0)|0;if((c[(c[n>>2]|0)+4>>2]|0)>((c[l>>2]|0)+1|0))c[(c[n>>2]|0)+4>>2]=(c[l>>2]|0)+1;Do(c[o>>2]|0,c[o>>2]|0,c[k>>2]|0);if((c[(c[o>>2]|0)+4>>2]|0)>((c[l>>2]|0)+1|0))c[(c[o>>2]|0)+4>>2]=(c[l>>2]|0)+1;Vn(c[f>>2]|0,c[n>>2]|0,c[o>>2]|0);if(c[(c[f>>2]|0)+8>>2]|0){if(!(c[(c[h>>2]|0)+24>>2]|0)){o=ip((c[l>>2]|0)+2|0)|0;c[(c[h>>2]|0)+24>>2]=o;Bp(c[(c[h>>2]|0)+24>>2]|0,1)|0;go(c[(c[h>>2]|0)+24>>2]|0,(c[l>>2]|0)+1|0)}Tn(c[f>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+24>>2]|0)}while(1){if((jo(c[f>>2]|0,c[k>>2]|0)|0)<0)break;Vn(c[f>>2]|0,c[f>>2]|0,c[k>>2]|0)}c[(c[g>>2]|0)+8>>2]=c[p>>2];i=e;return}function Do(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+96|0;if((i|0)>=(j|0))U();f=e+84|0;g=e+80|0;h=e+76|0;k=e+72|0;l=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;s=e+40|0;t=e+36|0;u=e+32|0;v=e+28|0;w=e+24|0;x=e+20|0;y=e+16|0;z=e+12|0;A=e+8|0;B=e+4|0;C=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;if((c[(c[g>>2]|0)+4>>2]|0)<(c[(c[h>>2]|0)+4>>2]|0)){c[k>>2]=c[(c[h>>2]|0)+4>>2];c[r>>2]=c[(c[h>>2]|0)+8>>2];if(c[h>>2]|0)D=(c[(c[h>>2]|0)+12>>2]&1|0)!=0;else D=0;c[t>>2]=D&1;c[n>>2]=c[(c[h>>2]|0)+16>>2];c[l>>2]=c[(c[g>>2]|0)+4>>2];c[s>>2]=c[(c[g>>2]|0)+8>>2];if(c[g>>2]|0)E=(c[(c[g>>2]|0)+12>>2]&1|0)!=0;else E=0;c[u>>2]=E&1;c[o>>2]=c[(c[g>>2]|0)+16>>2]}else{c[k>>2]=c[(c[g>>2]|0)+4>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];if(c[g>>2]|0)F=(c[(c[g>>2]|0)+12>>2]&1|0)!=0;else F=0;c[t>>2]=F&1;c[n>>2]=c[(c[g>>2]|0)+16>>2];c[l>>2]=c[(c[h>>2]|0)+4>>2];c[s>>2]=c[(c[h>>2]|0)+8>>2];if(c[h>>2]|0)G=(c[(c[h>>2]|0)+12>>2]&1|0)!=0;else G=0;c[u>>2]=G&1;c[o>>2]=c[(c[h>>2]|0)+16>>2]}c[v>>2]=c[r>>2]^c[s>>2];c[p>>2]=c[(c[f>>2]|0)+16>>2];c[m>>2]=(c[k>>2]|0)+(c[l>>2]|0);if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&1|0:0)H=19;else H=14;do if((H|0)==14){if(!(c[g>>2]|0?(c[(c[g>>2]|0)+12>>2]&1|0)!=0:0)){if(!(c[h>>2]|0)){H=19;break}if(!(c[(c[h>>2]|0)+12>>2]&1)){H=19;break}}c[p>>2]=jp(c[m>>2]|0,1)|0;c[w>>2]=2}while(0);a:do if((H|0)==19){h=(c[p>>2]|0)==(c[n>>2]|0);if((c[c[f>>2]>>2]|0)<(c[m>>2]|0)){if(!h?(c[p>>2]|0)!=(c[o>>2]|0):0){np(c[f>>2]|0,c[m>>2]|0);c[p>>2]=c[(c[f>>2]|0)+16>>2];break}if(c[f>>2]|0)I=(c[(c[f>>2]|0)+12>>2]&1|0)!=0;else I=0;c[p>>2]=jp(c[m>>2]|0,I&1)|0;c[w>>2]=1;break}if(!h){if((c[p>>2]|0)!=(c[o>>2]|0))break;c[y>>2]=c[l>>2];h=jp(c[l>>2]|0,c[u>>2]|0)|0;c[x>>2]=h;c[o>>2]=h;c[A>>2]=0;while(1){if((c[A>>2]|0)>=(c[l>>2]|0))break a;c[(c[o>>2]|0)+(c[A>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[A>>2]<<2)>>2];c[A>>2]=(c[A>>2]|0)+1}}c[y>>2]=c[k>>2];h=jp(c[k>>2]|0,c[t>>2]|0)|0;c[x>>2]=h;c[n>>2]=h;if((c[p>>2]|0)==(c[o>>2]|0))c[o>>2]=c[n>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[k>>2]|0))break a;c[(c[n>>2]|0)+(c[z>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[z>>2]<<2)>>2];c[z>>2]=(c[z>>2]|0)+1}}while(0);if(c[l>>2]|0){c[q>>2]=bp(c[p>>2]|0,c[n>>2]|0,c[k>>2]|0,c[o>>2]|0,c[l>>2]|0)|0;c[m>>2]=(c[m>>2]|0)-(c[q>>2]|0?0:1)}else c[m>>2]=0;if(c[w>>2]|0){if((c[w>>2]|0)==2){c[B>>2]=jp(c[m>>2]|0,0)|0;c[C>>2]=0;while(1){if((c[C>>2]|0)>=(c[m>>2]|0))break;c[(c[B>>2]|0)+(c[C>>2]<<2)>>2]=c[(c[p>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+1}lp(c[p>>2]|0,0);c[p>>2]=c[B>>2]}mp(c[f>>2]|0,c[p>>2]|0,c[m>>2]|0)}c[(c[f>>2]|0)+4>>2]=c[m>>2];c[(c[f>>2]|0)+8>>2]=c[v>>2];if(!(c[x>>2]|0)){i=e;return}lp(c[x>>2]|0,c[y>>2]|0);i=e;return}function Eo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;Do(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);lo(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Fo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0;g=i;i=i+512|0;if((i|0)>=(j|0))U();h=g+504|0;k=g+500|0;l=g+496|0;m=g+492|0;n=g+488|0;o=g+484|0;p=g+480|0;q=g+476|0;r=g+472|0;s=g+468|0;t=g+464|0;u=g+460|0;v=g+456|0;w=g+452|0;x=g+448|0;y=g+444|0;z=g+440|0;A=g+436|0;B=g+432|0;C=g+428|0;D=g+424|0;E=g+420|0;F=g+416|0;G=g+412|0;H=g+408|0;I=g+404|0;J=g+400|0;K=g+396|0;L=g+392|0;M=g+328|0;N=g+264|0;O=g+260|0;P=g+256|0;Q=g+252|0;R=g+248|0;S=g+244|0;T=g+240|0;V=g+236|0;W=g+232|0;X=g+228|0;Y=g+224|0;Z=g+220|0;_=g+216|0;$=g+212|0;aa=g+208|0;ba=g+204|0;ca=g+200|0;da=g+196|0;ea=g+192|0;fa=g+164|0;ga=g+160|0;ha=g+156|0;ia=g+152|0;ja=g+148|0;ka=g+144|0;la=g+140|0;ma=g+136|0;na=g+132|0;oa=g+128|0;pa=g+124|0;qa=g+120|0;ra=g+116|0;sa=g+112|0;ta=g+108|0;ua=g+104|0;va=g+100|0;wa=g+80|0;xa=g+60|0;ya=g+56|0;za=g+52|0;Aa=g+48|0;Ba=g+44|0;Ca=g+24|0;Da=g+4|0;Ea=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;c[J>>2]=0;c[K>>2]=0;c[L>>2]=0;c[r>>2]=c[(c[l>>2]|0)+4>>2];c[s>>2]=c[(c[m>>2]|0)+4>>2];c[B>>2]=c[s>>2]<<1;c[v>>2]=c[(c[m>>2]|0)+8>>2];do if((c[r>>2]<<5|0)<=512){if((c[r>>2]<<5|0)>256){c[O>>2]=4;break}if((c[r>>2]<<5|0)>128){c[O>>2]=3;break}if((c[r>>2]<<5|0)>64){c[O>>2]=2;break}else{c[O>>2]=1;break}}else c[O>>2]=5;while(0);if(c[l>>2]|0)Fa=(c[(c[l>>2]|0)+12>>2]&1|0)!=0;else Fa=0;c[y>>2]=Fa&1;if(c[m>>2]|0)Ga=(c[(c[m>>2]|0)+12>>2]&1|0)!=0;else Ga=0;c[z>>2]=Ga&1;if(c[k>>2]|0)Ha=(c[(c[k>>2]|0)+12>>2]&1|0)!=0;else Ha=0;c[A>>2]=Ha&1;c[n>>2]=c[(c[h>>2]|0)+16>>2];c[o>>2]=c[(c[l>>2]|0)+16>>2];if(!(c[s>>2]|0))Se();do if(c[r>>2]|0){c[I>>2]=c[z>>2]|0?c[s>>2]|0:0;l=jp(c[s>>2]|0,c[z>>2]|0)|0;c[E>>2]=l;c[p>>2]=l;c[S>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+((c[s>>2]|0)-1<<2)>>2];l=c[S>>2]|0;c[T>>2]=(c[S>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[C>>2]=32-((d[45623+((c[S>>2]|0)>>>(c[T>>2]|0))>>0]|0)+(c[T>>2]|0));a:do if(c[C>>2]|0)Xo(c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[s>>2]|0,c[C>>2]|0)|0;else{c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[s>>2]|0))break a;c[(c[p>>2]|0)+(c[V>>2]<<2)>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[V>>2]<<2)>>2];c[V>>2]=(c[V>>2]|0)+1}}while(0);c[t>>2]=c[(c[k>>2]|0)+4>>2];c[w>>2]=c[(c[k>>2]|0)+8>>2];b:do if((c[t>>2]|0)>(c[s>>2]|0)){c[J>>2]=c[A>>2]|0?(c[t>>2]|0)+1|0:0;l=jp((c[t>>2]|0)+1|0,c[A>>2]|0)|0;c[F>>2]=l;c[q>>2]=l;c[W>>2]=0;while(1){if((c[W>>2]|0)>=(c[t>>2]|0))break;c[(c[q>>2]|0)+(c[W>>2]<<2)>>2]=c[(c[(c[k>>2]|0)+16>>2]|0)+(c[W>>2]<<2)>>2];c[W>>2]=(c[W>>2]|0)+1}Vo((c[q>>2]|0)+(c[s>>2]<<2)|0,0,c[q>>2]|0,c[t>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[t>>2]=c[s>>2];while(1){if((c[t>>2]|0)<=0)break b;if(c[(c[q>>2]|0)+((c[t>>2]|0)-1<<2)>>2]|0)break b;c[t>>2]=(c[t>>2]|0)+-1}}else c[q>>2]=c[(c[k>>2]|0)+16>>2];while(0);if(!(c[t>>2]|0)){c[(c[h>>2]|0)+4>>2]=0;c[(c[h>>2]|0)+8>>2]=0;break}c:do if((c[n>>2]|0)==(c[q>>2]|0)){if(c[F>>2]|0)Fe(45879,45890,515,45900);c[J>>2]=c[A>>2]|0?c[t>>2]|0:0;l=jp(c[t>>2]|0,c[A>>2]|0)|0;c[F>>2]=l;c[q>>2]=l;c[X>>2]=0;while(1){if((c[X>>2]|0)>=(c[t>>2]|0))break c;c[(c[q>>2]|0)+(c[X>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[X>>2]<<2)>>2];c[X>>2]=(c[X>>2]|0)+1}}while(0);d:do if((c[n>>2]|0)==(c[o>>2]|0)){c[K>>2]=c[y>>2]|0?c[r>>2]|0:0;l=jp(c[r>>2]|0,c[y>>2]|0)|0;c[G>>2]=l;c[o>>2]=l;c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(c[r>>2]|0))break d;c[(c[o>>2]|0)+(c[Y>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[Y>>2]<<2)>>2];c[Y>>2]=(c[Y>>2]|0)+1}}while(0);if((c[c[h>>2]>>2]|0)<(c[B>>2]|0)){np(c[h>>2]|0,c[B>>2]|0);c[n>>2]=c[(c[h>>2]|0)+16>>2]}if(c[z>>2]|0)Ia=(c[s>>2]|0)+1<<1;else Ia=0;c[L>>2]=Ia;l=jp((c[s>>2]|0)+1<<1,c[z>>2]|0)|0;c[H>>2]=l;c[aa>>2]=l;c[fa>>2]=0;c[fa+4>>2]=0;c[fa+8>>2]=0;c[fa+12>>2]=0;c[fa+16>>2]=0;c[fa+20>>2]=0;c[fa+24>>2]=0;c[D>>2]=(c[c[o>>2]>>2]&1|0?(c[w>>2]|0)!=0:0)&1;if((c[O>>2]|0)>1)Go(c[aa>>2]|0,ba,c[q>>2]|0,c[t>>2]|0,c[q>>2]|0,c[t>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);l=jp(c[t>>2]|0,c[y>>2]|0)|0;c[M>>2]=l;c[P>>2]=l;l=c[t>>2]|0;c[N>>2]=l;c[R>>2]=l;c[Q>>2]=l;c[ha>>2]=0;while(1){if((c[ha>>2]|0)>=(c[t>>2]|0))break;c[(c[M>>2]|0)+(c[ha>>2]<<2)>>2]=c[(c[q>>2]|0)+(c[ha>>2]<<2)>>2];c[ha>>2]=(c[ha>>2]|0)+1}c[Z>>2]=1;while(1){if((c[Z>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;l=c[n>>2]|0;if((c[ba>>2]|0)>=(c[Q>>2]|0))Go(l,u,c[aa>>2]|0,c[ba>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);else Go(l,u,c[P>>2]|0,c[Q>>2]|0,c[aa>>2]|0,c[ba>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);l=jp(c[u>>2]|0,c[y>>2]|0)|0;c[M+(c[Z>>2]<<2)>>2]=l;c[P>>2]=l;l=c[u>>2]|0;c[N+(c[Z>>2]<<2)>>2]=l;c[Q>>2]=l;if((c[R>>2]|0)<(c[Q>>2]|0))c[R>>2]=c[Q>>2];c[ia>>2]=0;while(1){if((c[ia>>2]|0)>=(c[u>>2]|0))break;c[(c[M+(c[Z>>2]<<2)>>2]|0)+(c[ia>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[ia>>2]<<2)>>2];c[ia>>2]=(c[ia>>2]|0)+1}c[Z>>2]=(c[Z>>2]|0)+1}c[P>>2]=jp(c[R>>2]|0,c[y>>2]|0)|0;c[ja>>2]=0;while(1){if((c[ja>>2]|0)>=(c[R>>2]|0))break;c[(c[P>>2]|0)+(c[ja>>2]<<2)>>2]=0;c[ja>>2]=(c[ja>>2]|0)+1}c[Z>>2]=(c[r>>2]|0)-1;c[x>>2]=0;e:do if((c[O>>2]|0)==1)c[u>>2]=c[t>>2];else{c[u>>2]=c[s>>2];c[ka>>2]=0;while(1){if((c[ka>>2]|0)>=(c[u>>2]|0))break e;c[(c[n>>2]|0)+(c[ka>>2]<<2)>>2]=0;c[ka>>2]=(c[ka>>2]|0)+1}}while(0);c[la>>2]=0;while(1){if((c[la>>2]|0)>=(c[t>>2]|0))break;c[(c[n>>2]|0)+(c[la>>2]<<2)>>2]=c[(c[q>>2]|0)+(c[la>>2]<<2)>>2];c[la>>2]=(c[la>>2]|0)+1}c[da>>2]=c[(c[o>>2]|0)+(c[Z>>2]<<2)>>2];c[ma>>2]=c[da>>2];l=c[ma>>2]|0;c[na>>2]=(c[ma>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[ca>>2]=32-((d[45623+((c[ma>>2]|0)>>>(c[na>>2]|0))>>0]|0)+(c[na>>2]|0));c[da>>2]=c[da>>2]<<c[ca>>2]<<1;c[ca>>2]=31-(c[ca>>2]|0);c[_>>2]=0;while(1){if(!(c[da>>2]|0)){c[_>>2]=(c[_>>2]|0)+(c[ca>>2]|0);c[Z>>2]=(c[Z>>2]|0)+-1;if((c[Z>>2]|0)<0){Ja=86;break}c[da>>2]=c[(c[o>>2]|0)+(c[Z>>2]<<2)>>2];c[ca>>2]=32;continue}c[qa>>2]=c[da>>2];l=c[qa>>2]|0;c[ra>>2]=(c[qa>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[oa>>2]=32-((d[45623+((c[qa>>2]|0)>>>(c[ra>>2]|0))>>0]|0)+(c[ra>>2]|0));c[da>>2]=c[da>>2]<<c[oa>>2];c[ca>>2]=(c[ca>>2]|0)-(c[oa>>2]|0);c[_>>2]=(c[_>>2]|0)+(c[oa>>2]|0);if((c[ca>>2]|0)>=(c[O>>2]|0)){c[pa>>2]=(c[da>>2]|0)>>>(32-(c[O>>2]|0)|0);c[da>>2]=c[da>>2]<<c[O>>2];c[ca>>2]=(c[ca>>2]|0)-(c[O>>2]|0)}else{c[Z>>2]=(c[Z>>2]|0)+-1;if((c[Z>>2]|0)<0){Ja=91;break}c[oa>>2]=c[ca>>2];c[pa>>2]=(c[da>>2]|0)>>>(32-(c[O>>2]|0)|0)|(c[(c[o>>2]|0)+(c[Z>>2]<<2)>>2]|0)>>>(32-(c[O>>2]|0)+(c[oa>>2]|0)|0);c[da>>2]=c[(c[o>>2]|0)+(c[Z>>2]<<2)>>2]<<(c[O>>2]|0)-(c[oa>>2]|0);c[ca>>2]=32-(c[O>>2]|0)+(c[oa>>2]|0)}c[sa>>2]=c[pa>>2];c[ua>>2]=c[sa>>2]&0-(c[sa>>2]|0);l=c[ua>>2]|0;c[va>>2]=(c[ua>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[ta>>2]=32-((d[45623+((c[ua>>2]|0)>>>(c[va>>2]|0))>>0]|0)+(c[va>>2]|0));c[oa>>2]=31-(c[ta>>2]|0);c[pa>>2]=(c[pa>>2]|0)>>>(c[oa>>2]|0)>>>1;c[_>>2]=(c[_>>2]|0)+((c[O>>2]|0)-(c[oa>>2]|0));while(1){if(!(c[_>>2]|0))break;Go(c[aa>>2]|0,ba,c[n>>2]|0,c[u>>2]|0,c[n>>2]|0,c[u>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);c[ga>>2]=c[n>>2];c[n>>2]=c[aa>>2];c[aa>>2]=c[ga>>2];c[u>>2]=c[ba>>2];c[_>>2]=(c[_>>2]|0)+-1}c[Q>>2]=0;c[$>>2]=0;while(1){if((c[$>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;l=c[N+(c[$>>2]<<2)>>2]|0;c[wa+4>>2]=l;c[wa>>2]=l;l=c[N+(c[$>>2]<<2)>>2]|0;c[xa+4>>2]=l;c[xa>>2]=l;c[xa+8>>2]=0;c[wa+8>>2]=0;c[xa+12>>2]=0;c[wa+12>>2]=0;c[wa+16>>2]=c[P>>2];c[xa+16>>2]=c[M+(c[$>>2]<<2)>>2];Ap(wa,xa,(c[$>>2]|0)==(c[pa>>2]|0)&1)|0;c[Q>>2]=c[Q>>2]|c[N+(c[$>>2]<<2)>>2]&0-((c[$>>2]|0)==(c[pa>>2]|0)&1);c[$>>2]=(c[$>>2]|0)+1}Go(c[aa>>2]|0,ba,c[n>>2]|0,c[u>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);c[ga>>2]=c[n>>2];c[n>>2]=c[aa>>2];c[aa>>2]=c[ga>>2];c[u>>2]=c[ba>>2];c[_>>2]=c[oa>>2]}if((Ja|0)==86)c[ca>>2]=0;else if((Ja|0)==91)c[da>>2]=(c[da>>2]|0)>>>(32-(c[ca>>2]|0)|0);if(c[ca>>2]|0){c[_>>2]=(c[_>>2]|0)+(c[ca>>2]|0);c[ya>>2]=c[da>>2];c[Aa>>2]=c[ya>>2]&0-(c[ya>>2]|0);l=c[Aa>>2]|0;c[Ba>>2]=(c[Aa>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[za>>2]=32-((d[45623+((c[Aa>>2]|0)>>>(c[Ba>>2]|0))>>0]|0)+(c[Ba>>2]|0));c[ca>>2]=31-(c[za>>2]|0);c[da>>2]=(c[da>>2]|0)>>>(c[ca>>2]|0);c[_>>2]=(c[_>>2]|0)-(c[ca>>2]|0)}while(1){l=c[_>>2]|0;c[_>>2]=l+-1;if(!l)break;Go(c[aa>>2]|0,ba,c[n>>2]|0,c[u>>2]|0,c[n>>2]|0,c[u>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);c[ga>>2]=c[n>>2];c[n>>2]=c[aa>>2];c[aa>>2]=c[ga>>2];c[u>>2]=c[ba>>2]}f:do if(c[da>>2]|0){c[Q>>2]=0;c[$>>2]=0;while(1){if((c[$>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;l=c[N+(c[$>>2]<<2)>>2]|0;c[Ca+4>>2]=l;c[Ca>>2]=l;l=c[N+(c[$>>2]<<2)>>2]|0;c[Da+4>>2]=l;c[Da>>2]=l;c[Da+8>>2]=0;c[Ca+8>>2]=0;c[Da+12>>2]=0;c[Ca+12>>2]=0;c[Ca+16>>2]=c[P>>2];c[Da+16>>2]=c[M+(c[$>>2]<<2)>>2];Ap(Ca,Da,(c[$>>2]|0)==((c[da>>2]|0)>>>1|0)&1)|0;c[Q>>2]=c[Q>>2]|c[N+(c[$>>2]<<2)>>2]&0-((c[$>>2]|0)==((c[da>>2]|0)>>>1|0)&1);c[$>>2]=(c[$>>2]|0)+1}Go(c[aa>>2]|0,ba,c[n>>2]|0,c[u>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);c[ga>>2]=c[n>>2];c[n>>2]=c[aa>>2];c[aa>>2]=c[ga>>2];c[u>>2]=c[ba>>2];while(1){if(!(c[ca>>2]|0))break f;Go(c[aa>>2]|0,ba,c[n>>2]|0,c[u>>2]|0,c[n>>2]|0,c[u>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);c[ga>>2]=c[n>>2];c[n>>2]=c[aa>>2];c[aa>>2]=c[ga>>2];c[u>>2]=c[ba>>2];c[ca>>2]=(c[ca>>2]|0)+-1}}while(0);l=c[(c[h>>2]|0)+16>>2]|0;Ha=c[n>>2]|0;do if(c[C>>2]|0){c[ea>>2]=Xo(l,Ha,c[u>>2]|0,c[C>>2]|0)|0;c[n>>2]=c[(c[h>>2]|0)+16>>2];if(!(c[ea>>2]|0))break;c[(c[n>>2]|0)+(c[u>>2]<<2)>>2]=c[ea>>2];c[u>>2]=(c[u>>2]|0)+1}else{if((l|0)==(Ha|0))break;c[Ea>>2]=0;while(1){if((c[Ea>>2]|0)>=(c[u>>2]|0))break;c[(c[(c[h>>2]|0)+16>>2]|0)+(c[Ea>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[Ea>>2]<<2)>>2];c[Ea>>2]=(c[Ea>>2]|0)+1}c[n>>2]=c[(c[h>>2]|0)+16>>2]}while(0);if((c[u>>2]|0)>=(c[s>>2]|0)){Vo((c[n>>2]|0)+(c[s>>2]<<2)|0,0,c[n>>2]|0,c[u>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[u>>2]=c[s>>2]}if(c[C>>2]|0)dp(c[n>>2]|0,c[n>>2]|0,c[u>>2]|0,c[C>>2]|0)|0;while(1){if((c[u>>2]|0)<=0)break;if(c[(c[n>>2]|0)+((c[u>>2]|0)-1<<2)>>2]|0)break;c[u>>2]=(c[u>>2]|0)+-1}cp(fa);c[Z>>2]=0;while(1){if((c[Z>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;if(c[y>>2]|0)Ka=c[N+(c[Z>>2]<<2)>>2]|0;else Ka=0;lp(c[M+(c[Z>>2]<<2)>>2]|0,Ka);c[Z>>2]=(c[Z>>2]|0)+1}lp(c[P>>2]|0,c[y>>2]|0?c[R>>2]|0:0);g:do if((c[D>>2]|0)!=0&(c[u>>2]|0)!=0){if(c[C>>2]|0)dp(c[p>>2]|0,c[p>>2]|0,c[s>>2]|0,c[C>>2]|0)|0;wo(c[n>>2]|0,c[p>>2]|0,c[s>>2]|0,c[n>>2]|0,c[u>>2]|0)|0;c[u>>2]=c[s>>2];c[x>>2]=c[v>>2];while(1){if((c[u>>2]|0)<=0)break g;if(c[(c[n>>2]|0)+((c[u>>2]|0)-1<<2)>>2]|0)break g;c[u>>2]=(c[u>>2]|0)+-1}}while(0);if((c[(c[h>>2]|0)+16>>2]|0)==(c[n>>2]|0)){c[(c[h>>2]|0)+4>>2]=c[u>>2];c[(c[h>>2]|0)+8>>2]=c[x>>2];break}else Fe(45915,45890,786,45900)}else{if((c[s>>2]|0)==1)La=(c[c[(c[m>>2]|0)+16>>2]>>2]|0)==1;else La=0;c[(c[h>>2]|0)+4>>2]=La?0:1;if(c[(c[h>>2]|0)+4>>2]|0){if((c[c[h>>2]>>2]|0)<1)np(c[h>>2]|0,1);c[n>>2]=c[(c[h>>2]|0)+16>>2];c[c[n>>2]>>2]=1}c[(c[h>>2]|0)+8>>2]=0}while(0);if(c[E>>2]|0)lp(c[E>>2]|0,c[I>>2]|0);if(c[F>>2]|0)lp(c[F>>2]|0,c[J>>2]|0);if(c[G>>2]|0)lp(c[G>>2]|0,c[K>>2]|0);if(!(c[H>>2]|0)){i=g;return}lp(c[H>>2]|0,c[L>>2]|0);i=g;return}function Go(a,b,d,e,f,g,h,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=i;i=i+48|0;if((i|0)>=(j|0))U();n=m+32|0;o=m+28|0;p=m+24|0;q=m+20|0;r=m+16|0;s=m+12|0;t=m+8|0;u=m+4|0;v=m;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;c[t>>2]=h;c[u>>2]=k;c[v>>2]=l;l=c[n>>2]|0;k=c[p>>2]|0;p=c[q>>2]|0;h=c[r>>2]|0;r=c[s>>2]|0;if((c[s>>2]|0)<16)bp(l,k,p,h,r)|0;else ap(l,k,p,h,r,c[v>>2]|0);if(((c[q>>2]|0)+(c[s>>2]|0)|0)>(c[u>>2]|0)){Vo((c[n>>2]|0)+(c[u>>2]<<2)|0,0,c[n>>2]|0,(c[q>>2]|0)+(c[s>>2]|0)|0,c[t>>2]|0,c[u>>2]|0)|0;c[c[o>>2]>>2]=c[u>>2];i=m;return}else{c[c[o>>2]>>2]=(c[q>>2]|0)+(c[s>>2]|0);i=m;return}}function Ho(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;b=i;i=i+48|0;if((i|0)>=(j|0))U();e=b+32|0;f=b+28|0;g=b+24|0;h=b+20|0;k=b+16|0;l=b+12|0;m=b+8|0;n=b+4|0;o=b;c[e>>2]=a;c[g>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0){p=6;break}if(c[(c[(c[e>>2]|0)+16>>2]|0)+(c[f>>2]<<2)>>2]|0)break;c[g>>2]=(c[g>>2]|0)+32;c[f>>2]=(c[f>>2]|0)+1}if((p|0)==6){q=c[g>>2]|0;i=b;return q|0}c[k>>2]=c[(c[(c[e>>2]|0)+16>>2]|0)+(c[f>>2]<<2)>>2];c[l>>2]=c[k>>2];c[n>>2]=c[l>>2]&0-(c[l>>2]|0);l=c[n>>2]|0;c[o>>2]=(c[n>>2]|0)>>>0<65536?(l>>>0<256?0:8):l>>>0<16777216?16:24;c[m>>2]=32-((d[45623+((c[n>>2]|0)>>>(c[o>>2]|0))>>0]|0)+(c[o>>2]|0));c[h>>2]=31-(c[m>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);q=c[g>>2]|0;i=b;return q|0}function Io(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=Jo(c[g>>2]|0,c[h>>2]|0,0,c[k>>2]|0,c[l>>2]|0,0)|0;i=f;return e|0}function Jo(b,e,f,g,h,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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,F=0;l=i;i=i+64|0;if((i|0)>=(j|0))U();m=l+60|0;n=l+56|0;o=l+52|0;p=l+48|0;q=l+44|0;r=l+40|0;s=l+36|0;t=l+32|0;u=l+28|0;v=l+24|0;w=l+20|0;x=l+16|0;y=l+12|0;z=l+8|0;A=l+4|0;B=l;c[n>>2]=b;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=k;if(c[r>>2]|0)c[c[r>>2]>>2]=c[(c[n>>2]|0)+8>>2];c[c[q>>2]>>2]=c[(c[n>>2]|0)+4>>2]<<2;if(c[c[q>>2]>>2]|0)C=c[c[q>>2]>>2]|0;else C=1;c[A>>2]=C;if((c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0)c[A>>2]=c[o>>2];C=c[A>>2]|0;A=c[p>>2]|0;if((c[p>>2]|0)<0)c[B>>2]=C+(0-A);else c[B>>2]=C+A;do if(c[s>>2]|0)D=13;else{if(c[n>>2]|0?c[(c[n>>2]|0)+12>>2]&1|0:0){D=13;break}E=bf(c[B>>2]|0)|0}while(0);if((D|0)==13)E=ef(c[B>>2]|0)|0;c[v>>2]=E;if(!(c[v>>2]|0)){c[m>>2]=0;F=c[m>>2]|0;i=l;return F|0}E=c[v>>2]|0;if((c[p>>2]|0)<0)c[u>>2]=E+(0-(c[p>>2]|0));else c[u>>2]=E;c[t>>2]=c[u>>2];c[z>>2]=(c[(c[n>>2]|0)+4>>2]|0)-1;while(1){if((c[z>>2]|0)<0)break;c[y>>2]=c[(c[(c[n>>2]|0)+16>>2]|0)+(c[z>>2]<<2)>>2];E=(c[y>>2]|0)>>>24&255;p=c[t>>2]|0;c[t>>2]=p+1;a[p>>0]=E;E=(c[y>>2]|0)>>>16&255;p=c[t>>2]|0;c[t>>2]=p+1;a[p>>0]=E;E=(c[y>>2]|0)>>>8&255;p=c[t>>2]|0;c[t>>2]=p+1;a[p>>0]=E;E=c[y>>2]&255;p=c[t>>2]|0;c[t>>2]=p+1;a[p>>0]=E;c[z>>2]=(c[z>>2]|0)+-1}if(c[o>>2]|0){c[w>>2]=c[c[q>>2]>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(((c[w>>2]|0)>>>0)/2|0)>>>0)break;c[x>>2]=d[(c[u>>2]|0)+(c[z>>2]|0)>>0];a[(c[u>>2]|0)+(c[z>>2]|0)>>0]=a[(c[u>>2]|0)+((c[w>>2]|0)-1-(c[z>>2]|0))>>0]|0;a[(c[u>>2]|0)+((c[w>>2]|0)-1-(c[z>>2]|0))>>0]=c[x>>2];c[z>>2]=(c[z>>2]|0)+1}c[t>>2]=(c[u>>2]|0)+(c[w>>2]|0);while(1){if((c[w>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;z=c[t>>2]|0;c[t>>2]=z+1;a[z>>0]=0;c[w>>2]=(c[w>>2]|0)+1}c[c[q>>2]>>2]=c[w>>2];c[m>>2]=c[v>>2];F=c[m>>2]|0;i=l;return F|0}else{c[t>>2]=c[u>>2];while(1){if(!(c[c[q>>2]>>2]|0))break;if(!((a[c[t>>2]>>0]|0)!=0^1))break;c[t>>2]=(c[t>>2]|0)+1;w=c[q>>2]|0;c[w>>2]=(c[w>>2]|0)+-1}if((c[t>>2]|0)!=(c[u>>2]|0))Qw(c[u>>2]|0,c[t>>2]|0,c[c[q>>2]>>2]|0)|0;c[m>>2]=c[v>>2];F=c[m>>2]|0;i=l;return F|0}return 0}function Ko(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,k=0,l=0,m=0,n=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+16|0;k=g+12|0;l=g+8|0;m=g+4|0;n=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Jo(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,0)|0;i=g;return f|0}function Lo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+32|0;k=g+28|0;l=g+24|0;m=g+20|0;n=g+16|0;o=g+12|0;p=g+8|0;q=g+4|0;r=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=c[k>>2];if(c[h>>2]|0?c[(c[h>>2]|0)+12>>2]&16|0:0){pp();i=g;return}c[q>>2]=(((c[l>>2]|0)+4-1|0)>>>0)/4|0;if((c[c[h>>2]>>2]|0)<(c[q>>2]|0))np(c[h>>2]|0,c[q>>2]|0);c[(c[h>>2]|0)+8>>2]=c[m>>2];c[r>>2]=0;c[o>>2]=(c[n>>2]|0)+(c[l>>2]|0)+-1;while(1){s=c[o>>2]|0;if((c[o>>2]|0)>>>0<((c[n>>2]|0)+4|0)>>>0)break;c[o>>2]=s+-1;c[p>>2]=d[s>>0];l=c[o>>2]|0;c[o>>2]=l+-1;c[p>>2]=c[p>>2]|(d[l>>0]|0)<<8;l=c[o>>2]|0;c[o>>2]=l+-1;c[p>>2]=c[p>>2]|(d[l>>0]|0)<<16;l=c[o>>2]|0;c[o>>2]=l+-1;c[p>>2]=c[p>>2]|(d[l>>0]|0)<<24;l=c[p>>2]|0;m=c[r>>2]|0;c[r>>2]=m+1;c[(c[(c[h>>2]|0)+16>>2]|0)+(m<<2)>>2]=l}if(s>>>0>=(c[n>>2]|0)>>>0){s=c[o>>2]|0;c[o>>2]=s+-1;c[p>>2]=d[s>>0];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0){s=c[o>>2]|0;c[o>>2]=s+-1;c[p>>2]=c[p>>2]|(d[s>>0]|0)<<8}if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0){s=c[o>>2]|0;c[o>>2]=s+-1;c[p>>2]=c[p>>2]|(d[s>>0]|0)<<16}if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0){n=c[o>>2]|0;c[o>>2]=n+-1;c[p>>2]=c[p>>2]|(d[n>>0]|0)<<24}n=c[p>>2]|0;p=c[r>>2]|0;c[r>>2]=p+1;c[(c[(c[h>>2]|0)+16>>2]|0)+(p<<2)>>2]=n}c[(c[h>>2]|0)+4>>2]=c[r>>2];if((c[r>>2]|0)==(c[q>>2]|0)){i=g;return}else Fe(45928,45940,377,45951)}function Mo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+64|0;if((i|0)>=(j|0))U();k=h+48|0;l=h+44|0;m=h+40|0;n=h+36|0;o=h+32|0;p=h+28|0;q=h+24|0;r=h+20|0;s=h+16|0;t=h+12|0;u=h+8|0;v=h+4|0;w=h;c[l>>2]=a;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[n>>2];c[r>>2]=0;if(c[q>>2]|0)x=(ff(c[q>>2]|0)|0)!=0;else x=0;c[t>>2]=x&1;if((c[m>>2]|0)==3)c[s>>2]=0;else c[s>>2]=c[o>>2];if((c[m>>2]|0)==1){c[u>>2]=c[q>>2];x=(((c[s>>2]|0)+4-1|0)>>>0)/4|0;if(c[t>>2]|0)y=kp(x)|0;else y=ip(x)|0;c[r>>2]=y;if(c[s>>2]|0?(Lo(c[r>>2]|0,c[u>>2]|0,c[s>>2]|0,0),c[(c[r>>2]|0)+8>>2]=(((d[c[u>>2]>>0]|0)&128|0)!=0^1^1)&1,c[(c[r>>2]|0)+8>>2]|0):0){No(c[r>>2]|0);Sn(c[r>>2]|0,c[r>>2]|0,1);c[(c[r>>2]|0)+8>>2]=1}u=c[r>>2]|0;if(c[l>>2]|0){Yn(u);c[c[l>>2]>>2]=c[r>>2]}else qp(u);if(c[p>>2]|0)c[c[p>>2]>>2]=c[s>>2];c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}if((c[m>>2]|0)==5){u=(((c[s>>2]|0)+4-1|0)>>>0)/4|0;if(c[t>>2]|0)A=kp(u)|0;else A=ip(u)|0;c[r>>2]=A;if(c[s>>2]|0)Lo(c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,0);A=c[r>>2]|0;if(c[l>>2]|0){Yn(A);c[c[l>>2]>>2]=c[r>>2]}else qp(A);if(c[p>>2]|0)c[c[p>>2]>>2]=c[s>>2];c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}if((c[m>>2]|0)==2){c[r>>2]=Oo(c[q>>2]|0,s,c[t>>2]|0)|0;if(c[p>>2]|0)c[c[p>>2]>>2]=c[s>>2];A=c[r>>2]|0;if(!((c[l>>2]|0)!=0&(c[r>>2]|0)!=0)){if(A|0){qp(c[r>>2]|0);c[r>>2]=0}}else{Yn(A);c[c[l>>2]>>2]=c[r>>2]}c[k>>2]=c[r>>2]|0?0:65;z=c[k>>2]|0;i=h;return z|0}if((c[m>>2]|0)!=3){if((c[m>>2]|0)!=4){c[k>>2]=45;z=c[k>>2]|0;i=h;return z|0}if(c[o>>2]|0){c[k>>2]=45;z=c[k>>2]|0;i=h;return z|0}if(c[t>>2]|0)B=kp(0)|0;else B=ip(0)|0;c[r>>2]=B;if(Po(c[r>>2]|0,c[q>>2]|0)|0){qp(c[r>>2]|0);c[k>>2]=65;z=c[k>>2]|0;i=h;return z|0}B=c[r>>2]|0;if(c[l>>2]|0){Yn(B);c[c[l>>2]>>2]=c[r>>2]}else qp(B);if(c[p>>2]|0){B=Tu(c[q>>2]|0)|0;c[c[p>>2]>>2]=B}c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}c[v>>2]=c[q>>2];if((c[s>>2]|0)!=0&(c[s>>2]|0)>>>0<4){c[k>>2]=66;z=c[k>>2]|0;i=h;return z|0}c[w>>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[v>>2]=(c[v>>2]|0)+4;if(c[s>>2]|0)c[s>>2]=(c[s>>2]|0)-4;if(c[s>>2]|0?(c[w>>2]|0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=67;z=c[k>>2]|0;i=h;return z|0}s=(((c[w>>2]|0)+4-1|0)>>>0)/4|0;if(c[t>>2]|0)C=kp(s)|0;else C=ip(s)|0;c[r>>2]=C;if(c[w>>2]|0?(Lo(c[r>>2]|0,c[v>>2]|0,c[w>>2]|0,0),c[(c[r>>2]|0)+8>>2]=(((d[c[v>>2]>>0]|0)&128|0)!=0^1^1)&1,c[(c[r>>2]|0)+8>>2]|0):0){No(c[r>>2]|0);Sn(c[r>>2]|0,c[r>>2]|0,1);c[(c[r>>2]|0)+8>>2]=1}if(c[p>>2]|0)c[c[p>>2]>>2]=(c[w>>2]|0)+4;w=c[r>>2]|0;if(c[l>>2]|0){Yn(w);c[c[l>>2]>>2]=c[r>>2]}else qp(w);c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}function No(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[d>>2]=a;c[h>>2]=Zn(c[d>>2]|0)|0;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&16|0:0){pp();i=b;return}Yn(c[d>>2]|0);c[e>>2]=c[(c[d>>2]|0)+16>>2];c[f>>2]=c[(c[d>>2]|0)+4>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;a=(c[e>>2]|0)+(c[g>>2]<<2)|0;c[a>>2]=~c[a>>2];c[g>>2]=(c[g>>2]|0)+1}c[(c[d>>2]|0)+8>>2]=0;bo(c[d>>2]|0,(c[h>>2]|0)-1|0);i=b;return}function Oo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+40|0;h=f+36|0;k=f+32|0;l=f+28|0;m=f+24|0;n=f+20|0;o=f+16|0;p=f+12|0;q=f+8|0;r=f+4|0;s=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=e;c[q>>2]=0;c[s>>2]=0;if((c[c[h>>2]>>2]|0)>>>0<2){t=c[q>>2]|0;u=c[h>>2]|0;c[u>>2]=t;v=c[s>>2]|0;i=f;return v|0}c[n>>2]=(d[c[g>>2]>>0]|0)<<8|(d[(c[g>>2]|0)+1>>0]|0);if((c[n>>2]|0)>>>0>16384){t=c[q>>2]|0;u=c[h>>2]|0;c[u>>2]=t;v=c[s>>2]|0;i=f;return v|0}c[g>>2]=(c[g>>2]|0)+2;c[q>>2]=2;c[o>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[p>>2]=(((c[o>>2]|0)+4-1|0)>>>0)/4|0;n=c[p>>2]|0;if(c[k>>2]|0)w=kp(n)|0;else w=ip(n)|0;c[s>>2]=w;c[l>>2]=4-(((c[o>>2]|0)>>>0)%4|0);c[l>>2]=(c[l>>2]|0)%4|0;o=c[p>>2]|0;c[(c[s>>2]|0)+4>>2]=o;c[m>>2]=o;c[(c[s>>2]|0)+8>>2]=0;a:while(1){if((c[m>>2]|0)<=0){x=14;break}c[r>>2]=0;while(1){if((c[l>>2]|0)>=4)break;o=(c[q>>2]|0)+1|0;c[q>>2]=o;if(o>>>0>(c[c[h>>2]>>2]|0)>>>0)break a;c[r>>2]=c[r>>2]<<8;o=c[g>>2]|0;c[g>>2]=o+1;c[r>>2]=c[r>>2]|(d[o>>0]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=0;c[(c[(c[s>>2]|0)+16>>2]|0)+((c[m>>2]|0)-1<<2)>>2]=c[r>>2];c[m>>2]=(c[m>>2]|0)+-1}if((x|0)==14){t=c[q>>2]|0;u=c[h>>2]|0;c[u>>2]=t;v=c[s>>2]|0;i=f;return v|0}qp(c[s>>2]|0);c[s>>2]=0;t=c[q>>2]|0;u=c[h>>2]|0;c[u>>2]=t;v=c[s>>2]|0;i=f;return v|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+52|0;g=e+48|0;h=e+44|0;k=e+40|0;l=e+36|0;m=e+32|0;n=e+28|0;o=e+24|0;p=e+20|0;q=e+16|0;r=e+12|0;s=e+8|0;t=e+4|0;u=e;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[l>>2]=0;if((a[c[h>>2]>>0]|0)==45){c[k>>2]=1;c[h>>2]=(c[h>>2]|0)+1}if((a[c[h>>2]>>0]|0)==48?(a[(c[h>>2]|0)+1>>0]|0)==120:0)c[h>>2]=(c[h>>2]|0)+2;c[r>>2]=(Tu(c[h>>2]|0)|0)<<2;if(((c[r>>2]|0)>>>0)%8|0|0)c[l>>2]=1;c[s>>2]=(((c[r>>2]|0)+7|0)>>>0)/8|0;c[t>>2]=(((c[s>>2]|0)+4-1|0)>>>0)/4|0;if((c[c[g>>2]>>2]|0)>>>0<(c[t>>2]|0)>>>0)np(c[g>>2]|0,c[t>>2]|0);c[m>>2]=4-(((c[s>>2]|0)>>>0)%4|0);c[m>>2]=(c[m>>2]|0)%4|0;s=c[t>>2]|0;c[(c[g>>2]|0)+4>>2]=s;c[n>>2]=s;c[(c[g>>2]|0)+8>>2]=c[k>>2];a:while(1){if((c[n>>2]|0)<=0){v=37;break}c[u>>2]=0;while(1){if((c[m>>2]|0)>=4)break;if(c[l>>2]|0){c[p>>2]=48;c[l>>2]=0}else{k=c[h>>2]|0;c[h>>2]=k+1;c[p>>2]=a[k>>0]}if(!(c[p>>2]|0)){v=18;break a}k=c[h>>2]|0;c[h>>2]=k+1;c[q>>2]=a[k>>0];if(!(c[q>>2]|0)){v=20;break a}k=c[p>>2]|0;do if((c[p>>2]|0)>=48&(c[p>>2]|0)<=57)c[o>>2]=k-48;else{s=c[p>>2]|0;if((k|0)>=97&(c[p>>2]|0)<=102){c[o>>2]=s-97+10;break}if(!((s|0)>=65&(c[p>>2]|0)<=70)){v=27;break a}c[o>>2]=(c[p>>2]|0)-65+10}while(0);c[o>>2]=c[o>>2]<<4;k=c[q>>2]|0;do if((c[q>>2]|0)>=48&(c[q>>2]|0)<=57)c[o>>2]=c[o>>2]|k-48;else{s=c[q>>2]|0;if((k|0)>=97&(c[q>>2]|0)<=102){c[o>>2]=c[o>>2]|s-97+10;break}if(!((s|0)>=65&(c[q>>2]|0)<=70)){v=34;break a}c[o>>2]=c[o>>2]|(c[q>>2]|0)-65+10}while(0);c[u>>2]=c[u>>2]<<8;c[u>>2]=c[u>>2]|c[o>>2];c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;c[(c[(c[g>>2]|0)+16>>2]|0)+((c[n>>2]|0)-1<<2)>>2]=c[u>>2];c[n>>2]=(c[n>>2]|0)+-1}if((v|0)==18){op(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==20){op(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==27){op(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==34){op(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==37){c[f>>2]=0;w=c[f>>2]|0;i=e;return w|0}return 0}function Qo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+128|0;if((i|0)>=(j|0))U();l=k+112|0;m=k+108|0;n=k+104|0;o=k+100|0;p=k+96|0;q=k+92|0;r=k+88|0;s=k+84|0;t=k+76|0;u=k+72|0;v=k+68|0;w=k+64|0;x=k+60|0;y=k+56|0;z=k+52|0;A=k+48|0;B=k+44|0;C=k+40|0;D=k+36|0;E=k+32|0;F=k+28|0;G=k+24|0;H=k+20|0;I=k+16|0;J=k+12|0;K=k+8|0;L=k+4|0;M=k;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=Zn(c[q>>2]|0)|0;if(!(c[p>>2]|0))c[p>>2]=k+80;if(c[(c[q>>2]|0)+8>>2]|0?io(c[q>>2]|0,0)|0:0)c[t>>2]=1;else c[t>>2]=0;c[s>>2]=c[o>>2];c[c[p>>2]>>2]=0;if((c[m>>2]|0)==1){c[v>>2]=0;c[u>>2]=Io(c[q>>2]|0,0,w,0)|0;if(!(c[u>>2]|0)){c[l>>2]=rt()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){Ro(c[u>>2]|0,c[w>>2]|0);if(!((d[c[u>>2]>>0]|0)&128)){c[w>>2]=(c[w>>2]|0)+1;c[v>>2]=2}}else if(c[w>>2]|0?(d[c[u>>2]>>0]|0)&128|0:0){c[w>>2]=(c[w>>2]|0)+1;c[v>>2]=1}if(c[n>>2]|0?(c[w>>2]|0)>>>0>(c[s>>2]|0)>>>0:0){hf(c[u>>2]|0);c[l>>2]=66;N=c[l>>2]|0;i=k;return N|0}if(c[n>>2]|0){c[x>>2]=c[n>>2];if((c[v>>2]|0)!=1){if(c[v>>2]|0){o=c[x>>2]|0;c[x>>2]=o+1;a[o>>0]=-1}}else{o=c[x>>2]|0;c[x>>2]=o+1;a[o>>0]=0}Ow(c[x>>2]|0,c[u>>2]|0,(c[w>>2]|0)-(((c[v>>2]|0)!=0^1^1)&1)|0)|0}hf(c[u>>2]|0);c[c[p>>2]>>2]=c[w>>2];c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}if((c[m>>2]|0)==5){c[y>>2]=(((c[r>>2]|0)+7|0)>>>0)/8|0;if(c[n>>2]|0?(c[y>>2]|0)>>>0>(c[s>>2]|0)>>>0:0){c[l>>2]=66;N=c[l>>2]|0;i=k;return N|0}do if(c[n>>2]|0){c[z>>2]=Io(c[q>>2]|0,0,y,0)|0;if(c[z>>2]|0){Ow(c[n>>2]|0,c[z>>2]|0,c[y>>2]|0)|0;hf(c[z>>2]|0);break}c[l>>2]=rt()|0;N=c[l>>2]|0;i=k;return N|0}while(0);c[c[p>>2]>>2]=c[y>>2];c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}if((c[m>>2]|0)==2){c[A>>2]=(((c[r>>2]|0)+7|0)>>>0)/8|0;if(c[t>>2]|0){c[l>>2]=45;N=c[l>>2]|0;i=k;return N|0}if(c[n>>2]|0?((c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[l>>2]=66;N=c[l>>2]|0;i=k;return N|0}do if(c[n>>2]|0){c[C>>2]=c[n>>2];a[c[C>>2]>>0]=(c[r>>2]|0)>>>8;a[(c[C>>2]|0)+1>>0]=c[r>>2];c[B>>2]=Io(c[q>>2]|0,0,A,0)|0;if(c[B>>2]|0){Ow((c[C>>2]|0)+2|0,c[B>>2]|0,c[A>>2]|0)|0;hf(c[B>>2]|0);break}c[l>>2]=rt()|0;N=c[l>>2]|0;i=k;return N|0}while(0);c[c[p>>2]>>2]=(c[A>>2]|0)+2;c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}if((c[m>>2]|0)==3){c[E>>2]=0;c[D>>2]=Io(c[q>>2]|0,0,F,0)|0;if(!(c[D>>2]|0)){c[l>>2]=rt()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){Ro(c[D>>2]|0,c[F>>2]|0);if(!((d[c[D>>2]>>0]|0)&128)){c[F>>2]=(c[F>>2]|0)+1;c[E>>2]=2}}else if(c[F>>2]|0?(d[c[D>>2]>>0]|0)&128|0:0){c[F>>2]=(c[F>>2]|0)+1;c[E>>2]=1}if(c[n>>2]|0?((c[F>>2]|0)+4|0)>>>0>(c[s>>2]|0)>>>0:0){hf(c[D>>2]|0);c[l>>2]=66;N=c[l>>2]|0;i=k;return N|0}if(c[n>>2]|0){c[G>>2]=c[n>>2];A=(c[F>>2]|0)>>>24&255;B=c[G>>2]|0;c[G>>2]=B+1;a[B>>0]=A;A=(c[F>>2]|0)>>>16&255;B=c[G>>2]|0;c[G>>2]=B+1;a[B>>0]=A;A=(c[F>>2]|0)>>>8&255;B=c[G>>2]|0;c[G>>2]=B+1;a[B>>0]=A;A=c[F>>2]&255;B=c[G>>2]|0;c[G>>2]=B+1;a[B>>0]=A;if((c[E>>2]|0)!=1){if(c[E>>2]|0){A=c[G>>2]|0;c[G>>2]=A+1;a[A>>0]=-1}}else{A=c[G>>2]|0;c[G>>2]=A+1;a[A>>0]=0}Ow(c[G>>2]|0,c[D>>2]|0,(c[F>>2]|0)-(((c[E>>2]|0)!=0^1^1)&1)|0)|0}hf(c[D>>2]|0);c[c[p>>2]>>2]=4+(c[F>>2]|0);c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}if((c[m>>2]|0)!=4){c[l>>2]=45;N=c[l>>2]|0;i=k;return N|0}c[J>>2]=0;c[K>>2]=0;c[H>>2]=Io(c[q>>2]|0,0,K,0)|0;if(!(c[H>>2]|0)){c[l>>2]=rt()|0;N=c[l>>2]|0;i=k;return N|0}if(!(c[K>>2]|0?!((d[c[H>>2]>>0]|0)&128|0):0))c[J>>2]=2;if(c[n>>2]|0?((c[K>>2]<<1)+(c[J>>2]|0)+(c[t>>2]|0)+1|0)>>>0>(c[s>>2]|0)>>>0:0){hf(c[H>>2]|0);c[l>>2]=66;N=c[l>>2]|0;i=k;return N|0}if(c[n>>2]|0){c[L>>2]=c[n>>2];if(c[t>>2]|0){s=c[L>>2]|0;c[L>>2]=s+1;a[s>>0]=45}if(c[J>>2]|0){s=c[L>>2]|0;c[L>>2]=s+1;a[s>>0]=48;s=c[L>>2]|0;c[L>>2]=s+1;a[s>>0]=48}c[I>>2]=0;while(1){if((c[I>>2]|0)>>>0>=(c[K>>2]|0)>>>0)break;c[M>>2]=d[(c[H>>2]|0)+(c[I>>2]|0)>>0];s=(c[M>>2]|0)>>>4;q=((c[M>>2]|0)>>>4>>>0<10?48+s|0:65+s-10|0)&255;s=c[L>>2]|0;c[L>>2]=s+1;a[s>>0]=q;c[M>>2]=c[M>>2]&15;q=c[M>>2]|0;s=((c[M>>2]|0)>>>0<10?48+q|0:65+q-10|0)&255;q=c[L>>2]|0;c[L>>2]=q+1;a[q>>0]=s;c[I>>2]=(c[I>>2]|0)+1}I=c[L>>2]|0;c[L>>2]=I+1;a[I>>0]=0;c[c[p>>2]>>2]=(c[L>>2]|0)-(c[n>>2]|0)}else c[c[p>>2]>>2]=(c[K>>2]<<1)+(c[J>>2]|0)+(c[t>>2]|0)+1;hf(c[H>>2]|0);c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}function Ro(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+8|0;h=f+4|0;k=f;c[g>>2]=b;c[h>>2]=e;c[k>>2]=(c[h>>2]|0)-1;while(1){if((c[k>>2]|0)<0)break;if(!((a[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0)!=0^1))break;c[k>>2]=(c[k>>2]|0)+-1}if((c[k>>2]|0)<0){i=f;return}h=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;do if(!(d[(c[g>>2]|0)+(c[k>>2]|0)>>0]&1|0)){e=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if(h&2|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(e^252|2)&254;break}b=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if(e&4|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(b^248|4)&252;break}e=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if(b&8|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(e^240|8)&248;break}b=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if(e&16|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(b^224|16)&240;break}e=d[(c[g>>2]|0)+(c[k>>2]|0)>>0]|0;if(b&32|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(e^192|32)&224;break}b=(c[g>>2]|0)+(c[k>>2]|0)|0;if(e&64|0){a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=(d[b>>0]^128|64)&192;break}else{a[b>>0]=-128;break}}else a[(c[g>>2]|0)+(c[k>>2]|0)>>0]=h^254|1;while(0);c[k>>2]=(c[k>>2]|0)+-1;while(1){if((c[k>>2]|0)<0)break;h=(c[g>>2]|0)+(c[k>>2]|0)|0;a[h>>0]=d[h>>0]^255;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function So(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=i;i=i+48|0;if((i|0)>=(j|0))U();g=f+36|0;h=f+32|0;k=f+28|0;l=f+24|0;m=f+20|0;n=f+16|0;o=f+12|0;p=f+8|0;q=f+4|0;r=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if((((c[h>>2]|0)!=0^1)&1|0)==(((c[k>>2]|0)!=0^1)&1|0)){c[g>>2]=45;s=c[g>>2]|0;i=f;return s|0}if(c[h>>2]|0)c[c[h>>2]>>2]=0;c[n>>2]=Qo(5,0,0,o,c[l>>2]|0)|0;if(c[n>>2]|0){c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}if((c[o>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[g>>2]=67;s=c[g>>2]|0;i=f;return s|0}if((c[o>>2]|0)>>>0<(c[m>>2]|0)>>>0)t=(c[m>>2]|0)-(c[o>>2]|0)|0;else t=0;c[p>>2]=t;c[q>>2]=(c[o>>2]|0)+(c[p>>2]|0);if(!(c[k>>2]|0)){if(c[l>>2]|0?c[(c[l>>2]|0)+12>>2]&1|0:0)u=ef(c[q>>2]|0)|0;else u=bf(c[q>>2]|0)|0;c[r>>2]=u;if(!(c[r>>2]|0)){c[n>>2]=rt()|0;c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}}else c[r>>2]=c[k>>2];if(c[p>>2]|0)Sw(c[r>>2]|0,0,c[p>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[n>>2]=Qo(5,(c[r>>2]|0)+(c[p>>2]|0)|0,(c[o>>2]|0)-(c[p>>2]|0)|0,0,c[l>>2]|0)|0;if(c[n>>2]|0){hf(c[r>>2]|0);c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}if(c[h>>2]|0)c[c[h>>2]>>2]=c[r>>2];c[g>>2]=0;s=c[g>>2]|0;i=f;return s|0}function To(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;p=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;c[p>>2]=0-(c[l>>2]|0);c[h>>2]=(c[h>>2]|0)+(0-(c[p>>2]|0)<<2);c[k>>2]=(c[k>>2]|0)+(0-(c[p>>2]|0)<<2);c[g>>2]=(c[g>>2]|0)+(0-(c[p>>2]|0)<<2);c[o>>2]=0;do{c[n>>2]=c[(c[k>>2]|0)+(c[p>>2]<<2)>>2];c[m>>2]=c[(c[h>>2]|0)+(c[p>>2]<<2)>>2];c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);c[o>>2]=(c[n>>2]|0)>>>0<(c[o>>2]|0)>>>0&1;c[n>>2]=(c[n>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+((c[n>>2]|0)>>>0<(c[m>>2]|0)>>>0&1);c[(c[g>>2]|0)+(c[p>>2]<<2)>>2]=c[n>>2];l=(c[p>>2]|0)+1|0;c[p>>2]=l}while((l|0)!=0);i=f;return c[o>>2]|0}function Uo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+144|0;if((i|0)>=(j|0))U();g=f+128|0;h=f+124|0;k=f+120|0;l=f+116|0;m=f+112|0;n=f+108|0;o=f+104|0;p=f+100|0;q=f+96|0;r=f+92|0;s=f+88|0;t=f+84|0;u=f+80|0;v=f+76|0;w=f+72|0;x=f+68|0;y=f+64|0;z=f+60|0;A=f+56|0;B=f+52|0;C=f+48|0;D=f+44|0;E=f+40|0;F=f+36|0;G=f+32|0;H=f+28|0;I=f+24|0;J=f+20|0;K=f+16|0;L=f+12|0;M=f+8|0;N=f+4|0;O=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=e;if(!(c[k>>2]|0)){c[g>>2]=0;P=c[g>>2]|0;i=f;return P|0}c[s>>2]=c[l>>2];e=c[s>>2]|0;c[t>>2]=(c[s>>2]|0)>>>0<65536?(e>>>0<256?0:8):e>>>0<16777216?16:24;c[r>>2]=32-((d[45623+((c[s>>2]|0)>>>(c[t>>2]|0))>>0]|0)+(c[t>>2]|0));if(!(c[r>>2]|0)){c[m>>2]=(c[k>>2]|0)-1;c[p>>2]=c[(c[h>>2]|0)+(c[m>>2]<<2)>>2];if((c[p>>2]|0)>>>0>=(c[l>>2]|0)>>>0)c[p>>2]=0;else c[m>>2]=(c[m>>2]|0)+-1;while(1){if((c[m>>2]|0)<0)break;c[o>>2]=c[(c[h>>2]|0)+(c[m>>2]<<2)>>2];c[I>>2]=(c[l>>2]|0)>>>16;c[J>>2]=c[l>>2]&65535;c[M>>2]=((c[p>>2]|0)>>>0)%((c[I>>2]|0)>>>0)|0;c[K>>2]=((c[p>>2]|0)>>>0)/((c[I>>2]|0)>>>0)|0;c[O>>2]=R(c[K>>2]|0,c[J>>2]|0)|0;c[M>>2]=c[M>>2]<<16|(c[o>>2]|0)>>>16;if(((c[M>>2]|0)>>>0<(c[O>>2]|0)>>>0?(c[K>>2]=(c[K>>2]|0)+-1,c[M>>2]=(c[M>>2]|0)+(c[l>>2]|0),(c[M>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[M>>2]|0)>>>0<(c[O>>2]|0)>>>0:0){c[K>>2]=(c[K>>2]|0)+-1;c[M>>2]=(c[M>>2]|0)+(c[l>>2]|0)}c[M>>2]=(c[M>>2]|0)-(c[O>>2]|0);c[N>>2]=((c[M>>2]|0)>>>0)%((c[I>>2]|0)>>>0)|0;c[L>>2]=((c[M>>2]|0)>>>0)/((c[I>>2]|0)>>>0)|0;c[O>>2]=R(c[L>>2]|0,c[J>>2]|0)|0;c[N>>2]=c[N>>2]<<16|c[o>>2]&65535;if(((c[N>>2]|0)>>>0<(c[O>>2]|0)>>>0?(c[L>>2]=(c[L>>2]|0)+-1,c[N>>2]=(c[N>>2]|0)+(c[l>>2]|0),(c[N>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[N>>2]|0)>>>0<(c[O>>2]|0)>>>0:0){c[L>>2]=(c[L>>2]|0)+-1;c[N>>2]=(c[N>>2]|0)+(c[l>>2]|0)}c[N>>2]=(c[N>>2]|0)-(c[O>>2]|0);c[q>>2]=c[K>>2]<<16|c[L>>2];c[p>>2]=c[N>>2];c[m>>2]=(c[m>>2]|0)+-1}c[g>>2]=c[p>>2];P=c[g>>2]|0;i=f;return P|0}c[l>>2]=c[l>>2]<<c[r>>2];c[n>>2]=c[(c[h>>2]|0)+((c[k>>2]|0)-1<<2)>>2];c[p>>2]=(c[n>>2]|0)>>>(32-(c[r>>2]|0)|0);c[m>>2]=(c[k>>2]|0)-2;while(1){if((c[m>>2]|0)<0)break;c[o>>2]=c[(c[h>>2]|0)+(c[m>>2]<<2)>>2];c[u>>2]=(c[l>>2]|0)>>>16;c[v>>2]=c[l>>2]&65535;c[y>>2]=((c[p>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0;c[w>>2]=((c[p>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;c[A>>2]=R(c[w>>2]|0,c[v>>2]|0)|0;c[y>>2]=c[y>>2]<<16|(c[n>>2]<<c[r>>2]|(c[o>>2]|0)>>>(32-(c[r>>2]|0)|0))>>>16;if(((c[y>>2]|0)>>>0<(c[A>>2]|0)>>>0?(c[w>>2]=(c[w>>2]|0)+-1,c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0),(c[y>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[y>>2]|0)>>>0<(c[A>>2]|0)>>>0:0){c[w>>2]=(c[w>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[y>>2]=(c[y>>2]|0)-(c[A>>2]|0);c[z>>2]=((c[y>>2]|0)>>>0)%((c[u>>2]|0)>>>0)|0;c[x>>2]=((c[y>>2]|0)>>>0)/((c[u>>2]|0)>>>0)|0;c[A>>2]=R(c[x>>2]|0,c[v>>2]|0)|0;c[z>>2]=c[z>>2]<<16|(c[n>>2]<<c[r>>2]|(c[o>>2]|0)>>>(32-(c[r>>2]|0)|0))&65535;if(((c[z>>2]|0)>>>0<(c[A>>2]|0)>>>0?(c[x>>2]=(c[x>>2]|0)+-1,c[z>>2]=(c[z>>2]|0)+(c[l>>2]|0),(c[z>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[z>>2]|0)>>>0<(c[A>>2]|0)>>>0:0){c[x>>2]=(c[x>>2]|0)+-1;c[z>>2]=(c[z>>2]|0)+(c[l>>2]|0)}c[z>>2]=(c[z>>2]|0)-(c[A>>2]|0);c[q>>2]=c[w>>2]<<16|c[x>>2];c[p>>2]=c[z>>2];c[n>>2]=c[o>>2];c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=(c[l>>2]|0)>>>16;c[C>>2]=c[l>>2]&65535;c[F>>2]=((c[p>>2]|0)>>>0)%((c[B>>2]|0)>>>0)|0;c[D>>2]=((c[p>>2]|0)>>>0)/((c[B>>2]|0)>>>0)|0;c[H>>2]=R(c[D>>2]|0,c[C>>2]|0)|0;c[F>>2]=c[F>>2]<<16|c[n>>2]<<c[r>>2]>>>16;if(((c[F>>2]|0)>>>0<(c[H>>2]|0)>>>0?(c[D>>2]=(c[D>>2]|0)+-1,c[F>>2]=(c[F>>2]|0)+(c[l>>2]|0),(c[F>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[F>>2]|0)>>>0<(c[H>>2]|0)>>>0:0){c[D>>2]=(c[D>>2]|0)+-1;c[F>>2]=(c[F>>2]|0)+(c[l>>2]|0)}c[F>>2]=(c[F>>2]|0)-(c[H>>2]|0);c[G>>2]=((c[F>>2]|0)>>>0)%((c[B>>2]|0)>>>0)|0;c[E>>2]=((c[F>>2]|0)>>>0)/((c[B>>2]|0)>>>0)|0;c[H>>2]=R(c[E>>2]|0,c[C>>2]|0)|0;c[G>>2]=c[G>>2]<<16|c[n>>2]<<c[r>>2]&65535;if(((c[G>>2]|0)>>>0<(c[H>>2]|0)>>>0?(c[E>>2]=(c[E>>2]|0)+-1,c[G>>2]=(c[G>>2]|0)+(c[l>>2]|0),(c[G>>2]|0)>>>0>=(c[l>>2]|0)>>>0):0)?(c[G>>2]|0)>>>0<(c[H>>2]|0)>>>0:0){c[E>>2]=(c[E>>2]|0)+-1;c[G>>2]=(c[G>>2]|0)+(c[l>>2]|0)}c[G>>2]=(c[G>>2]|0)-(c[H>>2]|0);c[q>>2]=c[D>>2]<<16|c[E>>2];c[p>>2]=c[G>>2];c[g>>2]=(c[p>>2]|0)>>>(c[r>>2]|0);P=c[g>>2]|0;i=f;return P|0} +function Lj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=Hj(c[d>>2]|0,1,f,g)|0;do if(!(c[e>>2]|0))if(c[(c[f>>2]|0)+44>>2]|0){c[e>>2]=wb[c[(c[f>>2]|0)+44>>2]&15](c[g>>2]|0)|0;break}else{c[e>>2]=69;break}while(0);Ef(c[g>>2]|0);i=b;return c[e>>2]|0}function Mj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[k>>2]=0;c[l>>2]=0;c[c[e>>2]>>2]=0;c[h>>2]=Gf(c[f>>2]|0,37775,0)|0;do if(c[h>>2]|0){c[k>>2]=Qf(c[h>>2]|0)|0;Ef(c[h>>2]|0);c[h>>2]=c[k>>2];c[k>>2]=0;if(!(c[h>>2]|0)){c[m>>2]=68;break}c[l>>2]=Nf(c[h>>2]|0,0)|0;if(!(c[l>>2]|0)){c[m>>2]=65;break}c[g>>2]=Cj(c[l>>2]|0)|0;hf(c[l>>2]|0);c[l>>2]=0;if(!(c[g>>2]|0)){c[m>>2]=4;break}if(c[(c[g>>2]|0)+40>>2]|0){c[m>>2]=Bb[c[(c[g>>2]|0)+40>>2]&7](c[h>>2]|0,c[e>>2]|0)|0;break}else{c[m>>2]=69;break}}else c[m>>2]=65;while(0);Ef(c[h>>2]|0);hf(c[l>>2]|0);Ef(c[k>>2]|0);i=d;return c[m>>2]|0}function Nj(){return 0}function Oj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+16|0;h=f+12|0;k=f+8|0;l=f+4|0;m=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[g>>2]=Fj(c[g>>2]|0)|0;c[m>>2]=Ej(c[g>>2]|0)|0;if((c[m>>2]|0?(a[(c[m>>2]|0)+4>>0]&1|0)==0:0)?c[(c[m>>2]|0)+68>>2]|0:0){c[l>>2]=sb[c[(c[m>>2]|0)+68>>2]&63](c[g>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;n=c[l>>2]|0;o=Pj(n)|0;i=f;return o|0}c[l>>2]=4;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=Pj(n)|0;i=f;return o|0}h=c[k>>2]|0;k=c[g>>2]|0;if(c[m>>2]|0?!(a[(c[m>>2]|0)+4>>0]&1|0):0)p=37821;else p=c[m>>2]|0?37782:37801;Cb[h&1](49653,k,37843,p);n=c[l>>2]|0;o=Pj(n)|0;i=f;return o|0}function Pj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Qj(1,c[d>>2]|0)|0;i=b;return a|0}function Qj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){g=0;i=d;return g|0}g=(c[e>>2]&127)<<24|c[f>>2]&65535;i=d;return g|0}function Rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];f=Sj(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function Sj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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,D=0;g=i;i=i+144|0;if((i|0)>=(j|0))U();h=g+72|0;k=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;t=g+96|0;u=g+92|0;v=g+88|0;w=g+8|0;x=g+84|0;y=g+80|0;z=g+136|0;A=g;B=g+76|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[t>>2]=0;f=(Jg()|0)!=0;if(!(f|(c[17655]|0)!=0)?(c[17655]=1,c[17656]=Tj()|0,c[17656]|0):0){c[h>>2]=c[17656];Ie(43523,h)}if(c[17656]|0){c[k>>2]=50;D=c[k>>2]|0;i=g;return D|0}do if((c[n>>2]|0)==16){c[o>>2]=10;c[u>>2]=4}else{if((c[n>>2]|0)==24){c[o>>2]=12;c[u>>2]=6;break}if((c[n>>2]|0)==32){c[o>>2]=14;c[u>>2]=8;break}c[k>>2]=44;D=c[k>>2]|0;i=g;return D|0}while(0);c[(c[l>>2]|0)+480>>2]=c[o>>2];h=(c[l>>2]|0)+484|0;a[h>>0]=a[h>>0]&-2;c[(c[l>>2]|0)+488>>2]=29;c[(c[l>>2]|0)+492>>2]=30;c[(c[l>>2]|0)+496>>2]=1;c[(c[l>>2]|0)+500>>2]=2;c[v>>2]=4573;Zj();c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;a[w+(c[p>>2]>>2<<2)+(c[p>>2]&3)>>0]=a[(c[m>>2]|0)+(c[p>>2]|0)>>0]|0;c[p>>2]=(c[p>>2]|0)+1}c[q>>2]=(c[u>>2]|0)-1;while(1){if((c[q>>2]|0)<0)break;c[w+32+(c[q>>2]<<2)>>2]=c[w+(c[q>>2]<<2)>>2];c[q>>2]=(c[q>>2]|0)+-1}c[r>>2]=0;c[s>>2]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0))break;if((c[r>>2]|0)>=((c[o>>2]|0)+1|0))break;while(1){if(!((c[q>>2]|0)<(c[u>>2]|0)?(c[s>>2]|0)<4:0))break;c[(c[l>>2]|0)+(c[r>>2]<<4)+(c[s>>2]<<2)>>2]=c[w+32+(c[q>>2]<<2)>>2];c[q>>2]=(c[q>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)!=4)continue;c[r>>2]=(c[r>>2]|0)+1;c[s>>2]=0}a:while(1){if((c[r>>2]|0)>=((c[o>>2]|0)+1|0))break;p=w+32|0;a[p>>0]=(d[p>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+((c[u>>2]|0)-1<<2)+1>>0]|0)<<2)>>0]|0);p=w+32+1|0;a[p>>0]=(d[p>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+((c[u>>2]|0)-1<<2)+2>>0]|0)<<2)>>0]|0);p=w+32+2|0;a[p>>0]=(d[p>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+((c[u>>2]|0)-1<<2)+3>>0]|0)<<2)>>0]|0);p=w+32+3|0;a[p>>0]=(d[p>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+((c[u>>2]|0)-1<<2)>>0]|0)<<2)>>0]|0);p=c[t>>2]|0;c[t>>2]=p+1;m=w+32|0;a[m>>0]=(d[m>>0]|0)^c[6876+(p<<2)>>2];p=(c[u>>2]|0)!=8;c[q>>2]=1;b:do if(p)while(1){if((c[q>>2]|0)>=(c[u>>2]|0))break b;m=w+32+(c[q>>2]<<2)|0;c[m>>2]=c[m>>2]^c[w+32+((c[q>>2]|0)-1<<2)>>2];c[q>>2]=(c[q>>2]|0)+1}else{while(1){if((c[q>>2]|0)>=((c[u>>2]|0)/2|0|0))break;m=w+32+(c[q>>2]<<2)|0;c[m>>2]=c[m>>2]^c[w+32+((c[q>>2]|0)-1<<2)>>2];c[q>>2]=(c[q>>2]|0)+1}m=w+32+(((c[u>>2]|0)/2|0)<<2)|0;a[m>>0]=(d[m>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+(((c[u>>2]|0)/2|0)-1<<2)>>0]|0)<<2)>>0]|0);m=w+32+(((c[u>>2]|0)/2|0)<<2)+1|0;a[m>>0]=(d[m>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+(((c[u>>2]|0)/2|0)-1<<2)+1>>0]|0)<<2)>>0]|0);m=w+32+(((c[u>>2]|0)/2|0)<<2)+2|0;a[m>>0]=(d[m>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+(((c[u>>2]|0)/2|0)-1<<2)+2>>0]|0)<<2)>>0]|0);m=w+32+(((c[u>>2]|0)/2|0)<<2)+3|0;a[m>>0]=(d[m>>0]|0)^(d[(c[v>>2]|0)+((d[w+32+(((c[u>>2]|0)/2|0)-1<<2)+3>>0]|0)<<2)>>0]|0);c[q>>2]=((c[u>>2]|0)/2|0)+1;while(1){if((c[q>>2]|0)>=(c[u>>2]|0))break b;m=w+32+(c[q>>2]<<2)|0;c[m>>2]=c[m>>2]^c[w+32+((c[q>>2]|0)-1<<2)>>2];c[q>>2]=(c[q>>2]|0)+1}}while(0);c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[u>>2]|0))continue a;if((c[r>>2]|0)>=((c[o>>2]|0)+1|0))continue a;while(1){if(!((c[q>>2]|0)<(c[u>>2]|0)?(c[s>>2]|0)<4:0))break;c[(c[l>>2]|0)+(c[r>>2]<<4)+(c[s>>2]<<2)>>2]=c[w+32+(c[q>>2]<<2)>>2];c[q>>2]=(c[q>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}if((c[s>>2]|0)!=4)continue;c[r>>2]=(c[r>>2]|0)+1;c[s>>2]=0}}c[x>>2]=w;c[y>>2]=64;a[z>>0]=0;w=A;c[w>>2]=d[z>>0];c[w+4>>2]=0;while(1){if(!(c[x>>2]&7|0?(c[y>>2]|0)!=0:0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}if((c[y>>2]|0)>>>0>=8){w=A;s=Xw(c[w>>2]|0,c[w+4>>2]|0,16843009,16843009)|0;w=A;c[w>>2]=s;c[w+4>>2]=C;do{c[B>>2]=c[x>>2];w=A;s=c[w+4>>2]|0;r=c[B>>2]|0;c[r>>2]=c[w>>2];c[r+4>>2]=s;c[y>>2]=(c[y>>2]|0)-8;c[x>>2]=(c[x>>2]|0)+8}while((c[y>>2]|0)>>>0>=8)}while(1){if(!(c[y>>2]|0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}c[k>>2]=0;D=c[k>>2]|0;i=g;return D|0}function Tj(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a+4|0;d=a;e=Uj()|0;c[d>>2]=e;do if((!(e|0)?(f=bk()|0,c[d>>2]=f,!(f|0)):0)?(f=ck()|0,c[d>>2]=f,!(f|0)):0){f=dk()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}f=gk()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}else{c[d>>2]=jk()|0;c[b>>2]=c[d>>2];break}}else g=4;while(0);if((g|0)==4)c[b>>2]=c[d>>2];i=a;return c[b>>2]|0}function Uj(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))U();b=a+504|0;d=a;e=a+512|0;Rj(d,37970,16)|0;Vj(d,e,37986)|0;do if(!(vv(e,38002,16)|0)){Wj(d,e,e)|0;if(vv(e,37986,16)|0){c[b>>2]=38050;break}else{c[b>>2]=0;break}}else c[b>>2]=38018;while(0);i=a;return c[b>>2]|0}function Vj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];if(c[(c[k>>2]|0)+496>>2]|0)yb[c[(c[k>>2]|0)+496>>2]&3]();f=sb[c[(c[k>>2]|0)+488>>2]&63](c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function Wj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];Xj(c[k>>2]|0);if(c[(c[k>>2]|0)+500>>2]|0)yb[c[(c[k>>2]|0)+500>>2]&3]();f=sb[c[(c[k>>2]|0)+492>>2]&63](c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function Xj(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=b;if(a[(c[e>>2]|0)+484>>0]&1|0){i=d;return}Yj(c[e>>2]|0);b=(c[e>>2]|0)+484|0;a[b>>0]=a[b>>0]&-2|1;i=d;return}function Yj(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;k=b+4|0;l=b;c[e>>2]=a;c[g>>2]=4573;Zj();$j();c[(c[e>>2]|0)+240>>2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+240+4>>2]=c[(c[e>>2]|0)+4>>2];c[(c[e>>2]|0)+240+8>>2]=c[(c[e>>2]|0)+8>>2];c[(c[e>>2]|0)+240+12>>2]=c[(c[e>>2]|0)+12>>2];c[f>>2]=1;while(1){m=(c[e>>2]|0)+(c[f>>2]<<4)|0;if((c[f>>2]|0)>=(c[(c[e>>2]|0)+480>>2]|0))break;c[h>>2]=m;c[k>>2]=(c[e>>2]|0)+240+(c[f>>2]<<4);c[l>>2]=c[c[h>>2]>>2];a=ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>24&255)<<2)>>0]|0)<<2)>>2]|0,24)|0);c[c[k>>2]>>2]=n;c[l>>2]=c[(c[h>>2]|0)+4>>2];n=ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>24&255)<<2)>>0]|0)<<2)>>2]|0,24)|0);c[(c[k>>2]|0)+4>>2]=a;c[l>>2]=c[(c[h>>2]|0)+8>>2];a=ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>24&255)<<2)>>0]|0)<<2)>>2]|0,24)|0);c[(c[k>>2]|0)+8>>2]=n;c[l>>2]=c[(c[h>>2]|0)+12>>2];n=ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(ak(c[5596+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>24&255)<<2)>>0]|0)<<2)>>2]|0,24)|0);c[(c[k>>2]|0)+12>>2]=a;c[f>>2]=(c[f>>2]|0)+1}c[(c[e>>2]|0)+240+(c[f>>2]<<4)>>2]=c[m>>2];c[(c[e>>2]|0)+240+(c[f>>2]<<4)+4>>2]=c[(c[e>>2]|0)+(c[f>>2]<<4)+4>>2];c[(c[e>>2]|0)+240+(c[f>>2]<<4)+8>>2]=c[(c[e>>2]|0)+(c[f>>2]<<4)+8>>2];c[(c[e>>2]|0)+240+(c[f>>2]<<4)+12>>2]=c[(c[e>>2]|0)+(c[f>>2]<<4)+12>>2];i=b;return}function Zj(){_j(4572,1024);return}function _j(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[d+8>>2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;c[f>>2]=(c[f>>2]|0)+256}i=d;return}function $j(){_j(5596,1280);return}function ak(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return c[e>>2]<<(c[f>>2]&31)|(c[e>>2]|0)>>>(32-(c[f>>2]|0)&31)|0}function bk(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))U();b=a+504|0;d=a;e=a+512|0;Rj(d,38082,24)|0;Vj(d,e,38106)|0;do if(!(vv(e,38122,16)|0)){Wj(d,e,e)|0;if(vv(e,38106,16)|0){c[b>>2]=38170;break}else{c[b>>2]=0;break}}else c[b>>2]=38138;while(0);i=a;return c[b>>2]|0}function ck(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))U();b=a+504|0;d=a;e=a+512|0;Rj(d,38202,32)|0;Vj(d,e,38234)|0;do if(!(vv(e,38250,16)|0)){Wj(d,e,e)|0;if(vv(e,38234,16)|0){c[b>>2]=38298;break}else{c[b>>2]=0;break}}else c[b>>2]=38266;while(0);i=a;return c[b>>2]|0}function dk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=9;c[a+4>>2]=16;c[a>>2]=504;b=jr(37850,1,2,4,9,16,504)|0;i=a;return b|0}function ek(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+96|0;if((i|0)>=(j|0))U();l=k+76|0;m=k+72|0;n=k+68|0;o=k+64|0;p=k+60|0;q=k+56|0;r=k+52|0;s=k+48|0;t=k+44|0;u=k+40|0;v=k;w=k+36|0;x=k+32|0;y=k+28|0;z=k+80|0;A=k+16|0;B=k+24|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[o>>2];c[t>>2]=0;if(c[(c[q>>2]|0)+496>>2]|0)yb[c[(c[q>>2]|0)+496>>2]&3]();c[w>>2]=c[(c[q>>2]|0)+488>>2];while(1){if(!(c[p>>2]|0))break;c[t>>2]=sb[c[w>>2]&63](c[q>>2]|0,v,c[m>>2]|0)|0;fk(c[r>>2]|0,v,c[s>>2]|0,16);c[r>>2]=(c[r>>2]|0)+16;c[s>>2]=(c[s>>2]|0)+16;c[u>>2]=16;while(1){if((c[u>>2]|0)<=0)break;o=(c[m>>2]|0)+((c[u>>2]|0)-1)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;if(a[(c[m>>2]|0)+((c[u>>2]|0)-1)>>0]|0)break;c[u>>2]=(c[u>>2]|0)+-1}c[p>>2]=(c[p>>2]|0)+-1}c[x>>2]=v;c[y>>2]=16;a[z>>0]=0;v=A;c[v>>2]=d[z>>0];c[v+4>>2]=0;while(1){if(!(c[x>>2]&7|0?(c[y>>2]|0)!=0:0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}if((c[y>>2]|0)>>>0>=8){v=A;p=Xw(c[v>>2]|0,c[v+4>>2]|0,16843009,16843009)|0;v=A;c[v>>2]=p;c[v+4>>2]=C;do{c[B>>2]=c[x>>2];v=A;p=c[v+4>>2]|0;u=c[B>>2]|0;c[u>>2]=c[v>>2];c[u+4>>2]=p;c[y>>2]=(c[y>>2]|0)-8;c[x>>2]=(c[x>>2]|0)+8}while((c[y>>2]|0)>>>0>=8)}while(1){if(!(c[y>>2]|0))break;a[c[x>>2]>>0]=a[z>>0]|0;c[x>>2]=(c[x>>2]|0)+1;c[y>>2]=(c[y>>2]|0)+-1}if(!(c[t>>2]|0)){i=k;return}Qe((c[t>>2]|0)+16|0);Re();i=k;return}function fk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[o>>2]|c[p>>2]|c[q>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[s>>2]|0;c[s>>2]=m+4;l=c[m>>2]|0;m=c[t>>2]|0;c[t>>2]=m+4;k=l^c[m>>2];m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[p>>2]|0;c[p>>2]=t+1;s=d[t>>0]|0;t=c[q>>2]|0;c[q>>2]=t+1;r=(s^(d[t>>0]|0))&255;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function gk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=10;c[a+4>>2]=16;c[a>>2]=504;b=fr(37850,1,2,3,10,16,504)|0;i=a;return b|0}function hk(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k+72|0;m=k+68|0;n=k+64|0;o=k+60|0;p=k+56|0;q=k+52|0;r=k+48|0;s=k+44|0;t=k+40|0;u=k;v=k+36|0;w=k+32|0;x=k+28|0;y=k+76|0;z=k+16|0;A=k+24|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[o>>2];c[t>>2]=0;Xj(c[q>>2]|0);if(c[(c[q>>2]|0)+500>>2]|0)yb[c[(c[q>>2]|0)+500>>2]&3]();c[v>>2]=c[(c[q>>2]|0)+492>>2];while(1){if(!(c[p>>2]|0))break;c[t>>2]=sb[c[v>>2]&63](c[q>>2]|0,u,c[s>>2]|0)|0;ik(c[r>>2]|0,u,c[m>>2]|0,c[s>>2]|0,16);c[s>>2]=(c[s>>2]|0)+16;c[r>>2]=(c[r>>2]|0)+16;c[p>>2]=(c[p>>2]|0)+-1}c[w>>2]=u;c[x>>2]=16;a[y>>0]=0;u=z;c[u>>2]=d[y>>0];c[u+4>>2]=0;while(1){if(!(c[w>>2]&7|0?(c[x>>2]|0)!=0:0))break;a[c[w>>2]>>0]=a[y>>0]|0;c[w>>2]=(c[w>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+-1}if((c[x>>2]|0)>>>0>=8){u=z;p=Xw(c[u>>2]|0,c[u+4>>2]|0,16843009,16843009)|0;u=z;c[u>>2]=p;c[u+4>>2]=C;do{c[A>>2]=c[w>>2];u=z;p=c[u+4>>2]|0;r=c[A>>2]|0;c[r>>2]=c[u>>2];c[r+4>>2]=p;c[x>>2]=(c[x>>2]|0)-8;c[w>>2]=(c[w>>2]|0)+8}while((c[x>>2]|0)>>>0>=8)}while(1){if(!(c[x>>2]|0))break;a[c[w>>2]>>0]=a[y>>0]|0;c[w>>2]=(c[w>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+-1}if(!(c[t>>2]|0)){i=k;return}Qe((c[t>>2]|0)+16|0);Re();i=k;return}function ik(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;k=i;i=i+64|0;if((i|0)>=(j|0))U();l=k+56|0;m=k+52|0;n=k+48|0;o=k+44|0;p=k+40|0;q=k+36|0;r=k+32|0;s=k+28|0;t=k+24|0;u=k+60|0;v=k+20|0;w=k+16|0;x=k+12|0;y=k+8|0;z=k+4|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=c[l>>2];c[r>>2]=c[n>>2];c[s>>2]=c[m>>2];c[t>>2]=c[o>>2];c[k>>2]=3;if(!((c[t>>2]|c[s>>2]|c[q>>2]|c[r>>2])&3)){c[v>>2]=c[q>>2];c[y>>2]=c[s>>2];c[w>>2]=c[r>>2];c[x>>2]=c[t>>2];while(1){if((c[p>>2]|0)>>>0<4)break;o=c[x>>2]|0;c[x>>2]=o+4;c[z>>2]=c[o>>2];o=c[c[w>>2]>>2]|0;m=c[y>>2]|0;c[y>>2]=m+4;n=o^c[m>>2];m=c[v>>2]|0;c[v>>2]=m+4;c[m>>2]=n;n=c[z>>2]|0;m=c[w>>2]|0;c[w>>2]=m+4;c[m>>2]=n;c[p>>2]=(c[p>>2]|0)-4}c[q>>2]=c[v>>2];c[s>>2]=c[y>>2];c[r>>2]=c[w>>2];c[t>>2]=c[x>>2]}while(1){if(!(c[p>>2]|0))break;x=c[t>>2]|0;c[t>>2]=x+1;a[u>>0]=a[x>>0]|0;x=d[c[r>>2]>>0]|0;w=c[s>>2]|0;c[s>>2]=w+1;y=(x^(d[w>>0]|0))&255;w=c[q>>2]|0;c[q>>2]=w+1;a[w>>0]=y;y=a[u>>0]|0;w=c[r>>2]|0;c[r>>2]=w+1;a[w>>0]=y;c[p>>2]=(c[p>>2]|0)+-1}i=k;return}function jk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();c[a+8>>2]=10;c[a+4>>2]=16;c[a>>2]=504;b=hr(37850,1,2,2,10,16,504)|0;i=a;return b|0}function kk(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=c[h>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[r>>2]=0;if(c[(c[o>>2]|0)+496>>2]|0)yb[c[(c[o>>2]|0)+496>>2]&3]();c[s>>2]=c[(c[o>>2]|0)+488>>2];while(1){if(!(c[n>>2]|0))break;c[r>>2]=sb[c[s>>2]&63](c[o>>2]|0,c[k>>2]|0,c[k>>2]|0)|0;lk(c[p>>2]|0,c[k>>2]|0,c[q>>2]|0,16);c[p>>2]=(c[p>>2]|0)+16;c[q>>2]=(c[q>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+-1}if(!(c[r>>2]|0)){i=g;return}Qe((c[r>>2]|0)+16|0);Re();i=g;return}function lk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;ik(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function mk(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=nk(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function nk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f+52|0;h=f+48|0;k=f+44|0;l=f+40|0;m=f+36|0;n=f+32|0;o=f+16|0;p=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=e;c[l>>2]=4573;c[m>>2]=c[(c[g>>2]|0)+480>>2];c[p>>2]=ok(c[k>>2]|0)|0;c[p+4>>2]=ok((c[k>>2]|0)+4|0)|0;c[p+8>>2]=ok((c[k>>2]|0)+8|0)|0;c[p+12>>2]=ok((c[k>>2]|0)+12|0)|0;c[o>>2]=c[p>>2]^c[c[g>>2]>>2];c[o+4>>2]=c[p+4>>2]^c[(c[g>>2]|0)+4>>2];c[o+8>>2]=c[p+8>>2]^c[(c[g>>2]|0)+8>>2];c[o+12>>2]=c[p+12>>2]^c[(c[g>>2]|0)+12>>2];c[p>>2]=ak(c[4572+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=ak(c[4572+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=ak(c[4572+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=ak(c[4572+(((c[o>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[(c[g>>2]|0)+16>>2]^c[p>>2];k=ak(c[4572+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;c[o+4>>2]=c[(c[g>>2]|0)+16+4>>2]^c[p+4>>2];k=ak(c[4572+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;c[o+8>>2]=c[(c[g>>2]|0)+16+8>>2]^c[p+8>>2];k=ak(c[4572+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[o>>2]^k;c[o+12>>2]=c[(c[g>>2]|0)+16+12>>2]^c[p+12>>2];c[n>>2]=2;while(1){q=(c[o>>2]|0)>>>0&255;if((c[n>>2]|0)>=(c[m>>2]|0))break;c[p>>2]=ak(c[4572+(q<<2)>>2]|0,0)|0;c[p+12>>2]=ak(c[4572+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=ak(c[4572+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=ak(c[4572+(((c[o>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)>>2]^c[p>>2];k=ak(c[4572+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;c[o+4>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+4>>2]^c[p+4>>2];k=ak(c[4572+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;c[o+8>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+8>>2]^c[p+8>>2];k=ak(c[4572+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[o>>2]^k;c[o+12>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+12>>2]^c[p+12>>2];c[n>>2]=(c[n>>2]|0)+1;c[p>>2]=ak(c[4572+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=ak(c[4572+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=ak(c[4572+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=ak(c[4572+(((c[o>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)>>2]^c[p>>2];k=ak(c[4572+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;c[o+4>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+4>>2]^c[p+4>>2];k=ak(c[4572+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=ak(c[4572+(((c[o+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;c[o+8>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+8>>2]^c[p+8>>2];k=ak(c[4572+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=ak(c[4572+(((c[o+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[o>>2]=c[o>>2]^k;c[o+12>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+12>>2]^c[p+12>>2];c[n>>2]=(c[n>>2]|0)+1}c[p>>2]=(d[(c[l>>2]|0)+(q<<2)>>0]|0)<<0;c[p+12>>2]=(d[(c[l>>2]|0)+(((c[o>>2]|0)>>>8&255)<<2)>>0]|0)<<8;c[p+8>>2]=(d[(c[l>>2]|0)+(((c[o>>2]|0)>>>16&255)<<2)>>0]|0)<<16;c[p+4>>2]=(d[(c[l>>2]|0)+(((c[o>>2]|0)>>>24&255)<<2)>>0]|0)<<24;c[o>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)>>2]^c[p>>2];q=p+4|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+4>>2]|0)>>>0&255)<<2)>>0]|0)<<0;c[o>>2]=c[o>>2]^(d[(c[l>>2]|0)+(((c[o+4>>2]|0)>>>8&255)<<2)>>0]|0)<<8;q=p+12|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+4>>2]|0)>>>16&255)<<2)>>0]|0)<<16;q=p+8|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+4>>2]|0)>>>24&255)<<2)>>0]|0)<<24;c[o+4>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+4>>2]^c[p+4>>2];q=p+8|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+8>>2]|0)>>>0&255)<<2)>>0]|0)<<0;q=o+4|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+8>>2]|0)>>>8&255)<<2)>>0]|0)<<8;c[o>>2]=c[o>>2]^(d[(c[l>>2]|0)+(((c[o+8>>2]|0)>>>16&255)<<2)>>0]|0)<<16;q=p+12|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+8>>2]|0)>>>24&255)<<2)>>0]|0)<<24;c[o+8>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+8>>2]^c[p+8>>2];q=p+12|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+12>>2]|0)>>>0&255)<<2)>>0]|0)<<0;q=o+8|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+12>>2]|0)>>>8&255)<<2)>>0]|0)<<8;q=o+4|0;c[q>>2]=c[q>>2]^(d[(c[l>>2]|0)+(((c[o+12>>2]|0)>>>16&255)<<2)>>0]|0)<<16;c[o>>2]=c[o>>2]^(d[(c[l>>2]|0)+(((c[o+12>>2]|0)>>>24&255)<<2)>>0]|0)<<24;c[o+12>>2]=c[(c[g>>2]|0)+(c[n>>2]<<4)+12>>2]^c[p+12>>2];pk(c[h>>2]|0,c[o>>2]|0);pk((c[h>>2]|0)+4|0,c[o+4>>2]|0);pk((c[h>>2]|0)+8|0,c[o+8>>2]|0);pk((c[h>>2]|0)+12|0,c[o+12>>2]|0);i=f;return 64}function ok(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (d[(c[f>>2]|0)+3>>0]|0)<<24|(d[(c[f>>2]|0)+2>>0]|0)<<16|(d[(c[f>>2]|0)+1>>0]|0)<<8|(d[c[f>>2]>>0]|0)|0}function pk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[(c[h>>2]|0)+3>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>8;a[c[h>>2]>>0]=c[g>>2];i=e;return}function qk(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=rk(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function rk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+64|0;if((i|0)>=(j|0))U();g=f+48|0;h=f+44|0;k=f+40|0;l=f+36|0;m=f+32|0;n=f+16|0;o=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=e;c[l>>2]=c[(c[g>>2]|0)+480>>2];c[o>>2]=ok(c[k>>2]|0)|0;c[o+4>>2]=ok((c[k>>2]|0)+4|0)|0;c[o+8>>2]=ok((c[k>>2]|0)+8|0)|0;c[o+12>>2]=ok((c[k>>2]|0)+12|0)|0;c[n>>2]=c[o>>2]^c[(c[g>>2]|0)+240+(c[l>>2]<<4)>>2];c[n+4>>2]=c[o+4>>2]^c[(c[g>>2]|0)+240+(c[l>>2]<<4)+4>>2];c[n+8>>2]=c[o+8>>2]^c[(c[g>>2]|0)+240+(c[l>>2]<<4)+8>>2];c[n+12>>2]=c[o+12>>2]^c[(c[g>>2]|0)+240+(c[l>>2]<<4)+12>>2];c[m>>2]=(c[l>>2]|0)-1;while(1){l=(c[m>>2]|0)>1;c[o>>2]=ak(c[5596+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=ak(c[5596+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=ak(c[5596+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=ak(c[5596+(((c[n>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;if(!l)break;c[n>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)>>2]^c[o>>2];l=ak(c[5596+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[n>>2]=c[n>>2]^l;c[n+4>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+4>>2]^c[o+4>>2];l=ak(c[5596+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;c[n+8>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+8>>2]^c[o+8>>2];l=ak(c[5596+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;k=n+8|0;c[k>>2]=c[k>>2]^l;c[n+12>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+12>>2]^c[o+12>>2];c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=ak(c[5596+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=ak(c[5596+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=ak(c[5596+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=ak(c[5596+(((c[n>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[n>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)>>2]^c[o>>2];l=ak(c[5596+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[n>>2]=c[n>>2]^l;c[n+4>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+4>>2]^c[o+4>>2];l=ak(c[5596+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=ak(c[5596+(((c[n+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;c[n+8>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+8>>2]^c[o+8>>2];l=ak(c[5596+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=ak(c[5596+(((c[n+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;k=n+8|0;c[k>>2]=c[k>>2]^l;c[n+12>>2]=c[(c[g>>2]|0)+240+(c[m>>2]<<4)+12>>2]^c[o+12>>2];c[m>>2]=(c[m>>2]|0)+-1}c[n>>2]=c[(c[g>>2]|0)+240+16>>2]^c[o>>2];m=ak(c[5596+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+4|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+4>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;c[n>>2]=c[n>>2]^m;c[n+4>>2]=c[(c[g>>2]|0)+240+16+4>>2]^c[o+4>>2];m=ak(c[5596+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^m;m=ak(c[5596+(((c[n+8>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;l=n+4|0;c[l>>2]=c[l>>2]^m;c[n+8>>2]=c[(c[g>>2]|0)+240+16+8>>2]^c[o+8>>2];m=ak(c[5596+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^m;m=ak(c[5596+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=n+4|0;c[l>>2]=c[l>>2]^m;m=ak(c[5596+(((c[n+12>>2]|0)>>>24&255)<<2)>>2]|0,24)|0;l=n+8|0;c[l>>2]=c[l>>2]^m;c[n+12>>2]=c[(c[g>>2]|0)+240+16+12>>2]^c[o+12>>2];c[o>>2]=(d[6620+((c[n>>2]|0)>>>0&255)>>0]|0)<<0;c[o+4>>2]=(d[6620+((c[n>>2]|0)>>>8&255)>>0]|0)<<8;c[o+8>>2]=(d[6620+((c[n>>2]|0)>>>16&255)>>0]|0)<<16;c[o+12>>2]=(d[6620+((c[n>>2]|0)>>>24&255)>>0]|0)<<24;c[n>>2]=c[o>>2]^c[(c[g>>2]|0)+240>>2];m=o+4|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+4>>2]|0)>>>0&255)>>0]|0)<<0;m=o+8|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+4>>2]|0)>>>8&255)>>0]|0)<<8;m=o+12|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+4>>2]|0)>>>16&255)>>0]|0)<<16;c[n>>2]=c[n>>2]^(d[6620+((c[n+4>>2]|0)>>>24&255)>>0]|0)<<24;c[n+4>>2]=c[o+4>>2]^c[(c[g>>2]|0)+240+4>>2];m=o+8|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+8>>2]|0)>>>0&255)>>0]|0)<<0;m=o+12|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+8>>2]|0)>>>8&255)>>0]|0)<<8;c[n>>2]=c[n>>2]^(d[6620+((c[n+8>>2]|0)>>>16&255)>>0]|0)<<16;m=n+4|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+8>>2]|0)>>>24&255)>>0]|0)<<24;c[n+8>>2]=c[o+8>>2]^c[(c[g>>2]|0)+240+8>>2];m=o+12|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+12>>2]|0)>>>0&255)>>0]|0)<<0;c[n>>2]=c[n>>2]^(d[6620+((c[n+12>>2]|0)>>>8&255)>>0]|0)<<8;m=n+4|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+12>>2]|0)>>>16&255)>>0]|0)<<16;m=n+8|0;c[m>>2]=c[m>>2]^(d[6620+((c[n+12>>2]|0)>>>24&255)>>0]|0)<<24;c[n+12>>2]=c[o+12>>2]^c[(c[g>>2]|0)+240+12>>2];pk(c[h>>2]|0,c[n>>2]|0);pk((c[h>>2]|0)+4|0,c[n+4>>2]|0);pk((c[h>>2]|0)+8|0,c[n+8>>2]|0);pk((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=f;return 64}function sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[f>>2]|0){case 7:{c[k>>2]=tk(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=vk(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=wk(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=12}i=e;return c[k>>2]|0}function tk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=49643;c[k>>2]=Uj()|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=38330;c[k>>2]=uk(2)|0;if(c[k>>2]|0)break;c[h>>2]=38447;c[k>>2]=uk(5)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](38451,7,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function uk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+48|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+20|0;f=b+32|0;g=b+16|0;h=b+12|0;k=b+8|0;l=b+4|0;m=b;c[e>>2]=a;c[l>>2]=0;c[m>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=2)break;if((c[6996+((c[h>>2]|0)*164|0)>>2]|0)==(c[e>>2]|0))break;c[h>>2]=(c[h>>2]|0)+1}if((c[h>>2]|0)==2){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38334;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=jh(l,7,c[6996+((c[h>>2]|0)*164|0)>>2]|0,0)|0;if(c[g>>2]|0){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38361;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=jh(m,7,c[6996+((c[h>>2]|0)*164|0)>>2]|0,0)|0;e=c[l>>2]|0;if(c[g>>2]|0){oh(e);oh(c[m>>2]|0);c[d>>2]=38361;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=wh(e,6996+((c[h>>2]|0)*164|0)+4|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=wh(c[m>>2]|0,6996+((c[h>>2]|0)*164|0)+4|0,16)|0;e=c[l>>2]|0;if(c[g>>2]|0){oh(e);oh(c[m>>2]|0);c[d>>2]=38366;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=yh(e,6996+((c[h>>2]|0)*164|0)+20|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=yh(c[m>>2]|0,6996+((c[h>>2]|0)*164|0)+20|0,16)|0;if(c[g>>2]|0){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38374;n=c[d>>2]|0;i=b;return n|0}c[k>>2]=0;while(1){o=c[l>>2]|0;if((c[k>>2]|0)>>>0>=4){p=30;break}c[g>>2]=ph(o,f,16,6996+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)|0,16)|0;if(c[g>>2]|0){p=22;break}if(vv(f,6996+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0){p=24;break}c[g>>2]=th(c[m>>2]|0,f,16,6996+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0;if(c[g>>2]|0){p=26;break}if(vv(f,6996+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)|0,16)|0){p=28;break}c[k>>2]=(c[k>>2]|0)+1}if((p|0)==22){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38381;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==24){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38397;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==26){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38414;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==28){oh(c[l>>2]|0);oh(c[m>>2]|0);c[d>>2]=38430;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==30){oh(o);oh(c[m>>2]|0);c[d>>2]=0;n=c[d>>2]|0;i=b;return n|0}return 0}function vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d+4|0;h=d;c[d+12>>2]=a;c[f>>2]=b;c[g>>2]=49643;c[h>>2]=bk()|0;if(!(c[h>>2]|0)){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if(c[f>>2]|0)Cb[c[f>>2]&1](38451,8,c[g>>2]|0,c[h>>2]|0);c[e>>2]=50;k=c[e>>2]|0;i=d;return k|0}function wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d+4|0;h=d;c[d+12>>2]=a;c[f>>2]=b;c[g>>2]=49643;c[h>>2]=ck()|0;if(!(c[h>>2]|0)){c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if(c[f>>2]|0)Cb[c[f>>2]&1](38451,9,c[g>>2]|0,c[h>>2]|0);c[e>>2]=50;k=c[e>>2]|0;i=d;return k|0}function xk(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+36|0;k=g+32|0;l=g+28|0;m=g+24|0;n=g+20|0;o=g+16|0;p=g+12|0;q=g+8|0;r=g+4|0;s=g;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=c[h>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[r>>2]=0;if(c[(c[o>>2]|0)+496>>2]|0)yb[c[(c[o>>2]|0)+496>>2]&3]();c[s>>2]=c[(c[o>>2]|0)+488>>2];while(1){if(!(c[n>>2]|0))break;c[r>>2]=sb[c[s>>2]&63](c[o>>2]|0,c[k>>2]|0,c[k>>2]|0)|0;yk(c[p>>2]|0,c[k>>2]|0,c[q>>2]|0,16);c[p>>2]=(c[p>>2]|0)+16;c[q>>2]=(c[q>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+-1}if(!(c[r>>2]|0)){i=g;return}Qe((c[r>>2]|0)+16|0);Re();i=g;return}function yk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+40|0;l=h+36|0;m=h+32|0;n=h+28|0;o=h+24|0;p=h+20|0;q=h+16|0;r=h+12|0;s=h+8|0;t=h+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=c[k>>2];c[p>>2]=c[l>>2];c[q>>2]=c[m>>2];c[h>>2]=3;if(!((c[q>>2]|c[o>>2]|c[p>>2])&3)){c[r>>2]=c[o>>2];c[s>>2]=c[p>>2];c[t>>2]=c[q>>2];while(1){if((c[n>>2]|0)>>>0<4)break;m=c[t>>2]|0;c[t>>2]=m+4;l=c[m>>2]|0;m=c[s>>2]|0;c[s>>2]=m+4;k=c[m>>2]^l;c[m>>2]=k;m=c[r>>2]|0;c[r>>2]=m+4;c[m>>2]=k;c[n>>2]=(c[n>>2]|0)-4}c[o>>2]=c[r>>2];c[p>>2]=c[s>>2];c[q>>2]=c[t>>2]}while(1){if(!(c[n>>2]|0))break;t=c[q>>2]|0;c[q>>2]=t+1;s=d[t>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;r=((d[t>>0]|0)^s)&255;a[t>>0]=r;t=c[o>>2]|0;c[o>>2]=t+1;a[t>>0]=r;c[n>>2]=(c[n>>2]|0)+-1}i=h;return}function zk(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=i;i=i+48|0;if((i|0)>=(j|0))U();k=h+44|0;l=h+40|0;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;q=h+20|0;r=h+16|0;s=h+12|0;t=h+8|0;u=h+4|0;v=h;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=c[k>>2];c[r>>2]=c[m>>2];c[s>>2]=c[n>>2];c[u>>2]=0;if(c[(c[q>>2]|0)+496>>2]|0)yb[c[(c[q>>2]|0)+496>>2]&3]();c[v>>2]=c[(c[q>>2]|0)+488>>2];c[t>>2]=c[l>>2];while(1){if(!(c[o>>2]|0))break;fk(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,16);c[u>>2]=sb[c[v>>2]&63](c[q>>2]|0,c[r>>2]|0,c[r>>2]|0)|0;c[t>>2]=c[r>>2];c[s>>2]=(c[s>>2]|0)+16;if(!(c[p>>2]|0))c[r>>2]=(c[r>>2]|0)+16;c[o>>2]=(c[o>>2]|0)+-1}if((c[t>>2]|0)!=(c[l>>2]|0))Ak(c[l>>2]|0,c[t>>2]|0,16);if(!(c[u>>2]|0)){i=h;return}Qe((c[u>>2]|0)+16|0);Re();i=h;return}function Ak(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f+28|0;h=f+24|0;k=f+20|0;l=f+16|0;m=f+12|0;n=f+8|0;o=f+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;c[l>>2]=c[g>>2];c[m>>2]=c[h>>2];c[f>>2]=3;if(!((c[l>>2]|c[m>>2])&3)){c[n>>2]=c[l>>2];c[o>>2]=c[m>>2];while(1){if((c[k>>2]|0)>>>0<4)break;h=c[o>>2]|0;c[o>>2]=h+4;g=c[h>>2]|0;h=c[n>>2]|0;c[n>>2]=h+4;c[h>>2]=g;c[k>>2]=(c[k>>2]|0)-4}c[l>>2]=c[n>>2];c[m>>2]=c[o>>2]}while(1){if(!(c[k>>2]|0))break;o=c[m>>2]|0;c[m>>2]=o+1;n=a[o>>0]|0;o=c[l>>2]|0;c[l>>2]=o+1;a[o>>0]=n;c[k>>2]=(c[k>>2]|0)+-1}i=f;return}function Bk(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,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;g=i;i=i+112|0;if((i|0)>=(j|0))U();h=g+104|0;k=g+100|0;l=g+96|0;m=g+92|0;n=g+88|0;o=g+84|0;p=g+80|0;q=g+76|0;r=g+72|0;s=g+16|0;t=g+68|0;u=g+40|0;v=g+64|0;w=g+60|0;x=g;y=g+56|0;z=g+32|0;A=g+52|0;B=g+48|0;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=(c[h>>2]|0)+496;c[p>>2]=c[k>>2];c[q>>2]=c[l>>2];c[r>>2]=0;l=c[o>>2]|0;if(c[n>>2]|0){if(c[l+496>>2]|0)yb[c[(c[o>>2]|0)+496>>2]&3]()}else{Xj(l);if(c[(c[o>>2]|0)+500>>2]|0)yb[c[(c[o>>2]|0)+500>>2]&3]()}l=c[o>>2]|0;a:do if(c[n>>2]|0){c[t>>2]=c[l+488>>2];while(1){if(!(c[m>>2]|0))break a;k=(c[h>>2]|0)+128+336|0;f=k;e=Gw(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;d=k;c[d>>2]=e;c[d+4>>2]=f;d=u;c[d>>2]=e;c[d+4>>2]=f;f=u;c[v>>2]=Ck(c[f>>2]|0,c[f+4>>2]|0)|0;if((c[v>>2]|0)>>>0<16)c[w>>2]=(c[h>>2]|0)+128+32+(c[v>>2]<<4);else{f=u;c[w>>2]=Hq(c[h>>2]|0,s,c[f>>2]|0,c[f+4>>2]|0)|0}Ek((c[h>>2]|0)+64|0,c[w>>2]|0,16);Ak(s,c[q>>2]|0,16);Ek((c[h>>2]|0)+80|0,s,16);Ek(s,(c[h>>2]|0)+64|0,16);c[r>>2]=sb[c[t>>2]&63](c[o>>2]|0,s,s)|0;Ek(s,(c[h>>2]|0)+64|0,16);Ak(c[p>>2]|0,s,16);c[q>>2]=(c[q>>2]|0)+16;c[p>>2]=(c[p>>2]|0)+16;c[m>>2]=(c[m>>2]|0)+-1}}else{c[y>>2]=c[l+492>>2];while(1){if(!(c[m>>2]|0))break a;f=(c[h>>2]|0)+128+336|0;d=f;e=Gw(c[d>>2]|0,c[d+4>>2]|0,1,0)|0;d=C;k=f;c[k>>2]=e;c[k+4>>2]=d;k=z;c[k>>2]=e;c[k+4>>2]=d;d=z;c[A>>2]=Ck(c[d>>2]|0,c[d+4>>2]|0)|0;if((c[A>>2]|0)>>>0<16)c[B>>2]=(c[h>>2]|0)+128+32+(c[A>>2]<<4);else{d=z;c[B>>2]=Hq(c[h>>2]|0,x,c[d>>2]|0,c[d+4>>2]|0)|0}Ek((c[h>>2]|0)+64|0,c[B>>2]|0,16);Ak(x,c[q>>2]|0,16);Ek(x,(c[h>>2]|0)+64|0,16);c[r>>2]=sb[c[y>>2]&63](c[o>>2]|0,x,x)|0;Ek(x,(c[h>>2]|0)+64|0,16);Ek((c[h>>2]|0)+80|0,x,16);Ak(c[p>>2]|0,x,16);c[q>>2]=(c[q>>2]|0)+16;c[p>>2]=(c[p>>2]|0)+16;c[m>>2]=(c[m>>2]|0)+-1}}while(0);if(!(c[r>>2]|0)){i=g;return}Qe((c[r>>2]|0)+16|0);Re();i=g;return}function Ck(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;g=f;c[g>>2]=a;c[g+4>>2]=b;b=f;g=c[b+4>>2]|0;if((c[f>>2]|0)!=0|0!=0){c[e>>2]=Dk(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(Dk(g)|0);h=c[e>>2]|0;i=d;return h|0}return 0}function Dk(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=(c[d>>2]|0)!=0;e=Iw(c[d>>2]|0)|0;i=b;return (a?e:32)|0}function Ek(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g+28|0;k=g+24|0;l=g+20|0;m=g+16|0;n=g+12|0;o=g+8|0;p=g+4|0;c[h>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=c[h>>2];c[n>>2]=c[k>>2];c[g>>2]=3;if(!((c[m>>2]|c[n>>2])&3)){c[o>>2]=c[m>>2];c[p>>2]=c[n>>2];while(1){if((c[l>>2]|0)>>>0<4)break;k=c[p>>2]|0;c[p>>2]=k+4;h=c[k>>2]|0;k=c[o>>2]|0;c[o>>2]=k+4;c[k>>2]=c[k>>2]^h;c[l>>2]=(c[l>>2]|0)-4}c[m>>2]=c[o>>2];c[n>>2]=c[p>>2]}while(1){if(!(c[l>>2]|0))break;p=c[n>>2]|0;c[n>>2]=p+1;o=d[p>>0]|0;p=c[m>>2]|0;c[m>>2]=p+1;a[p>>0]=(d[p>>0]|0)^o;c[l>>2]=(c[l>>2]|0)+-1}i=g;return}function Fk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+96|0;if((i|0)>=(j|0))U();h=g+76|0;k=g+72|0;l=g+68|0;m=g+64|0;n=g+60|0;o=g+56|0;p=g;q=g+52|0;r=g+24|0;s=g+48|0;t=g+44|0;u=g+40|0;v=g+36|0;w=g+80|0;x=g+16|0;y=g+32|0;c[h>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[h>>2]|0)+496;c[n>>2]=c[k>>2];c[o>>2]=0;if(c[(c[m>>2]|0)+496>>2]|0)yb[c[(c[m>>2]|0)+496>>2]&3]();c[q>>2]=c[(c[m>>2]|0)+488>>2];while(1){if(!(c[l>>2]|0))break;k=(c[h>>2]|0)+128+344|0;f=k;e=Gw(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;b=k;c[b>>2]=e;c[b+4>>2]=f;b=r;c[b>>2]=e;c[b+4>>2]=f;f=r;c[s>>2]=Ck(c[f>>2]|0,c[f+4>>2]|0)|0;if((c[s>>2]|0)>>>0<16)c[t>>2]=(c[h>>2]|0)+128+32+(c[s>>2]<<4);else{f=r;c[t>>2]=Hq(c[h>>2]|0,p,c[f>>2]|0,c[f+4>>2]|0)|0}Ek((c[h>>2]|0)+128+304|0,c[t>>2]|0,16);fk(p,(c[h>>2]|0)+128+304|0,c[n>>2]|0,16);c[o>>2]=sb[c[q>>2]&63](c[m>>2]|0,p,p)|0;Ek((c[h>>2]|0)+128+320|0,p,16);c[n>>2]=(c[n>>2]|0)+16;c[l>>2]=(c[l>>2]|0)+-1}c[u>>2]=p;c[v>>2]=16;a[w>>0]=0;p=x;c[p>>2]=d[w>>0];c[p+4>>2]=0;while(1){if(!(c[u>>2]&7|0?(c[v>>2]|0)!=0:0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}if((c[v>>2]|0)>>>0>=8){p=x;l=Xw(c[p>>2]|0,c[p+4>>2]|0,16843009,16843009)|0;p=x;c[p>>2]=l;c[p+4>>2]=C;do{c[y>>2]=c[u>>2];p=x;l=c[p+4>>2]|0;n=c[y>>2]|0;c[n>>2]=c[p>>2];c[n+4>>2]=l;c[v>>2]=(c[v>>2]|0)-8;c[u>>2]=(c[u>>2]|0)+8}while((c[v>>2]|0)>>>0>=8)}while(1){if(!(c[v>>2]|0))break;a[c[u>>2]>>0]=a[w>>0]|0;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+-1}if(!(c[o>>2]|0)){i=g;return}Qe((c[o>>2]|0)+16|0);Re();i=g;return}function Gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d;c[e>>2]=a;c[d+4>>2]=b;c[f>>2]=c[e>>2];c[(c[f>>2]|0)+160>>2]=1732584193;c[(c[f>>2]|0)+164>>2]=-271733879;c[(c[f>>2]|0)+168>>2]=-1732584194;c[(c[f>>2]|0)+172>>2]=271733878;c[(c[f>>2]|0)+176>>2]=-1009589776;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=64;c[(c[f>>2]|0)+152>>2]=31;i=d;return}function Hk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{c[k>>2]=Ik(c[f>>2]|0,c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+64;d=(c[h>>2]|0)+-1|0;c[h>>2]=d}while((d|0)!=0);i=e;return c[k>>2]|0}function Ik(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+128|0;if((i|0)>=(j|0))U();e=d+120|0;f=d+116|0;g=d+112|0;h=d+108|0;k=d+104|0;l=d+100|0;m=d+96|0;n=d+92|0;o=d+88|0;p=d+84|0;q=d+80|0;r=d+76|0;s=d+72|0;t=d+8|0;u=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=16)break;e=Jk((c[f>>2]|0)+(c[u>>2]<<2)|0)|0;c[t+(c[u>>2]<<2)>>2]=e;c[u>>2]=(c[u>>2]|0)+1}u=c[(c[g>>2]|0)+160>>2]|0;c[k>>2]=u;c[h>>2]=u;u=c[(c[g>>2]|0)+164>>2]|0;c[m>>2]=u;c[l>>2]=u;u=c[(c[g>>2]|0)+168>>2]|0;c[o>>2]=u;c[n>>2]=u;u=c[(c[g>>2]|0)+172>>2]|0;c[q>>2]=u;c[p>>2]=u;u=c[(c[g>>2]|0)+176>>2]|0;c[s>>2]=u;c[r>>2]=u;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^c[n>>2]^c[p>>2])+0+(c[t>>2]|0));u=Kk(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^(c[o>>2]|~c[q>>2]))+1352829926+(c[t+20>>2]|0));u=Kk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^c[l>>2]^c[n>>2])+0+(c[t+4>>2]|0));u=Kk(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^(c[m>>2]|~c[o>>2]))+1352829926+(c[t+56>>2]|0));u=Kk(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^c[h>>2]^c[l>>2])+0+(c[t+8>>2]|0));u=Kk(c[p>>2]|0,15)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^(c[k>>2]|~c[m>>2]))+1352829926+(c[t+28>>2]|0));u=Kk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^c[r>>2]^c[h>>2])+0+(c[t+12>>2]|0));u=Kk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^(c[s>>2]|~c[k>>2]))+1352829926+(c[t>>2]|0));u=Kk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^c[p>>2]^c[r>>2])+0+(c[t+16>>2]|0));u=Kk(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^(c[q>>2]|~c[s>>2]))+1352829926+(c[t+36>>2]|0));u=Kk(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^c[n>>2]^c[p>>2])+0+(c[t+20>>2]|0));u=Kk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^(c[o>>2]|~c[q>>2]))+1352829926+(c[t+8>>2]|0));u=Kk(c[k>>2]|0,15)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^c[l>>2]^c[n>>2])+0+(c[t+24>>2]|0));u=Kk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^(c[m>>2]|~c[o>>2]))+1352829926+(c[t+44>>2]|0));u=Kk(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^c[h>>2]^c[l>>2])+0+(c[t+28>>2]|0));u=Kk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^(c[k>>2]|~c[m>>2]))+1352829926+(c[t+16>>2]|0));u=Kk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^c[r>>2]^c[h>>2])+0+(c[t+32>>2]|0));u=Kk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^(c[s>>2]|~c[k>>2]))+1352829926+(c[t+52>>2]|0));u=Kk(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^c[p>>2]^c[r>>2])+0+(c[t+36>>2]|0));u=Kk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^(c[q>>2]|~c[s>>2]))+1352829926+(c[t+24>>2]|0));u=Kk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^c[n>>2]^c[p>>2])+0+(c[t+40>>2]|0));u=Kk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^(c[o>>2]|~c[q>>2]))+1352829926+(c[t+60>>2]|0));u=Kk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^c[l>>2]^c[n>>2])+0+(c[t+44>>2]|0));u=Kk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^(c[m>>2]|~c[o>>2]))+1352829926+(c[t+32>>2]|0));u=Kk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^c[h>>2]^c[l>>2])+0+(c[t+48>>2]|0));u=Kk(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^(c[k>>2]|~c[m>>2]))+1352829926+(c[t+4>>2]|0));u=Kk(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^c[r>>2]^c[h>>2])+0+(c[t+52>>2]|0));u=Kk(c[n>>2]|0,7)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^(c[s>>2]|~c[k>>2]))+1352829926+(c[t+40>>2]|0));u=Kk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^c[p>>2]^c[r>>2])+0+(c[t+56>>2]|0));u=Kk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^(c[q>>2]|~c[s>>2]))+1352829926+(c[t+12>>2]|0));u=Kk(c[m>>2]|0,12)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^c[n>>2]^c[p>>2])+0+(c[t+60>>2]|0));u=Kk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^(c[o>>2]|~c[q>>2]))+1352829926+(c[t+48>>2]|0));u=Kk(c[k>>2]|0,6)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[l>>2]|~c[h>>2]&c[n>>2])+1518500249+(c[t+28>>2]|0));u=Kk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[o>>2]|c[m>>2]&~c[o>>2])+1548603684+(c[t+24>>2]|0));u=Kk(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[h>>2]|~c[r>>2]&c[l>>2])+1518500249+(c[t+16>>2]|0));u=Kk(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[m>>2]|c[k>>2]&~c[m>>2])+1548603684+(c[t+44>>2]|0));u=Kk(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[r>>2]|~c[p>>2]&c[h>>2])+1518500249+(c[t+52>>2]|0));u=Kk(c[n>>2]|0,8)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[k>>2]|c[s>>2]&~c[k>>2])+1548603684+(c[t+12>>2]|0));u=Kk(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[p>>2]|~c[n>>2]&c[r>>2])+1518500249+(c[t+4>>2]|0));u=Kk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[s>>2]|c[q>>2]&~c[s>>2])+1548603684+(c[t+28>>2]|0));u=Kk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[n>>2]|~c[l>>2]&c[p>>2])+1518500249+(c[t+40>>2]|0));u=Kk(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[q>>2]|c[o>>2]&~c[q>>2])+1548603684+(c[t>>2]|0));u=Kk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[l>>2]|~c[h>>2]&c[n>>2])+1518500249+(c[t+24>>2]|0));u=Kk(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[o>>2]|c[m>>2]&~c[o>>2])+1548603684+(c[t+52>>2]|0));u=Kk(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[h>>2]|~c[r>>2]&c[l>>2])+1518500249+(c[t+60>>2]|0));u=Kk(c[p>>2]|0,7)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[m>>2]|c[k>>2]&~c[m>>2])+1548603684+(c[t+20>>2]|0));u=Kk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[r>>2]|~c[p>>2]&c[h>>2])+1518500249+(c[t+12>>2]|0));u=Kk(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[k>>2]|c[s>>2]&~c[k>>2])+1548603684+(c[t+40>>2]|0));u=Kk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[p>>2]|~c[n>>2]&c[r>>2])+1518500249+(c[t+48>>2]|0));u=Kk(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[s>>2]|c[q>>2]&~c[s>>2])+1548603684+(c[t+56>>2]|0));u=Kk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[n>>2]|~c[l>>2]&c[p>>2])+1518500249+(c[t>>2]|0));u=Kk(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[q>>2]|c[o>>2]&~c[q>>2])+1548603684+(c[t+60>>2]|0));u=Kk(c[k>>2]|0,7)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[l>>2]|~c[h>>2]&c[n>>2])+1518500249+(c[t+36>>2]|0));u=Kk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[o>>2]|c[m>>2]&~c[o>>2])+1548603684+(c[t+32>>2]|0));u=Kk(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[h>>2]|~c[r>>2]&c[l>>2])+1518500249+(c[t+20>>2]|0));u=Kk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[m>>2]|c[k>>2]&~c[m>>2])+1548603684+(c[t+48>>2]|0));u=Kk(c[q>>2]|0,7)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[r>>2]|~c[p>>2]&c[h>>2])+1518500249+(c[t+8>>2]|0));u=Kk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[k>>2]|c[s>>2]&~c[k>>2])+1548603684+(c[t+16>>2]|0));u=Kk(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[p>>2]|~c[n>>2]&c[r>>2])+1518500249+(c[t+56>>2]|0));u=Kk(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[s>>2]|c[q>>2]&~c[s>>2])+1548603684+(c[t+36>>2]|0));u=Kk(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[n>>2]|~c[l>>2]&c[p>>2])+1518500249+(c[t+44>>2]|0));u=Kk(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[q>>2]|c[o>>2]&~c[q>>2])+1548603684+(c[t+4>>2]|0));u=Kk(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[l>>2]|~c[h>>2]&c[n>>2])+1518500249+(c[t+32>>2]|0));u=Kk(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[o>>2]|c[m>>2]&~c[o>>2])+1548603684+(c[t+8>>2]|0));u=Kk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+(((c[r>>2]|~c[h>>2])^c[l>>2])+1859775393+(c[t+12>>2]|0));u=Kk(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+(((c[s>>2]|~c[k>>2])^c[m>>2])+1836072691+(c[t+60>>2]|0));u=Kk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+(((c[p>>2]|~c[r>>2])^c[h>>2])+1859775393+(c[t+40>>2]|0));u=Kk(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+(((c[q>>2]|~c[s>>2])^c[k>>2])+1836072691+(c[t+20>>2]|0));u=Kk(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+(((c[n>>2]|~c[p>>2])^c[r>>2])+1859775393+(c[t+56>>2]|0));u=Kk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+(((c[o>>2]|~c[q>>2])^c[s>>2])+1836072691+(c[t+4>>2]|0));u=Kk(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+(((c[l>>2]|~c[n>>2])^c[p>>2])+1859775393+(c[t+16>>2]|0));u=Kk(c[h>>2]|0,7)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+(((c[m>>2]|~c[o>>2])^c[q>>2])+1836072691+(c[t+12>>2]|0));u=Kk(c[k>>2]|0,11)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+(((c[h>>2]|~c[l>>2])^c[n>>2])+1859775393+(c[t+36>>2]|0));u=Kk(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+(((c[k>>2]|~c[m>>2])^c[o>>2])+1836072691+(c[t+28>>2]|0));u=Kk(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+(((c[r>>2]|~c[h>>2])^c[l>>2])+1859775393+(c[t+60>>2]|0));u=Kk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+(((c[s>>2]|~c[k>>2])^c[m>>2])+1836072691+(c[t+56>>2]|0));u=Kk(c[q>>2]|0,6)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+(((c[p>>2]|~c[r>>2])^c[h>>2])+1859775393+(c[t+32>>2]|0));u=Kk(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+(((c[q>>2]|~c[s>>2])^c[k>>2])+1836072691+(c[t+24>>2]|0));u=Kk(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+(((c[n>>2]|~c[p>>2])^c[r>>2])+1859775393+(c[t+4>>2]|0));u=Kk(c[l>>2]|0,15)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+(((c[o>>2]|~c[q>>2])^c[s>>2])+1836072691+(c[t+36>>2]|0));u=Kk(c[m>>2]|0,14)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+(((c[l>>2]|~c[n>>2])^c[p>>2])+1859775393+(c[t+8>>2]|0));u=Kk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+(((c[m>>2]|~c[o>>2])^c[q>>2])+1836072691+(c[t+44>>2]|0));u=Kk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+(((c[h>>2]|~c[l>>2])^c[n>>2])+1859775393+(c[t+28>>2]|0));u=Kk(c[r>>2]|0,8)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+(((c[k>>2]|~c[m>>2])^c[o>>2])+1836072691+(c[t+32>>2]|0));u=Kk(c[s>>2]|0,13)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+(((c[r>>2]|~c[h>>2])^c[l>>2])+1859775393+(c[t>>2]|0));u=Kk(c[p>>2]|0,13)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+(((c[s>>2]|~c[k>>2])^c[m>>2])+1836072691+(c[t+48>>2]|0));u=Kk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+(((c[p>>2]|~c[r>>2])^c[h>>2])+1859775393+(c[t+24>>2]|0));u=Kk(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+(((c[q>>2]|~c[s>>2])^c[k>>2])+1836072691+(c[t+8>>2]|0));u=Kk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+(((c[n>>2]|~c[p>>2])^c[r>>2])+1859775393+(c[t+52>>2]|0));u=Kk(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+(((c[o>>2]|~c[q>>2])^c[s>>2])+1836072691+(c[t+40>>2]|0));u=Kk(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+(((c[l>>2]|~c[n>>2])^c[p>>2])+1859775393+(c[t+44>>2]|0));u=Kk(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+(((c[m>>2]|~c[o>>2])^c[q>>2])+1836072691+(c[t>>2]|0));u=Kk(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+(((c[h>>2]|~c[l>>2])^c[n>>2])+1859775393+(c[t+20>>2]|0));u=Kk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+(((c[k>>2]|~c[m>>2])^c[o>>2])+1836072691+(c[t+16>>2]|0));u=Kk(c[s>>2]|0,7)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+(((c[r>>2]|~c[h>>2])^c[l>>2])+1859775393+(c[t+48>>2]|0));u=Kk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+(((c[s>>2]|~c[k>>2])^c[m>>2])+1836072691+(c[t+52>>2]|0));u=Kk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[h>>2]|c[r>>2]&~c[h>>2])+-1894007588+(c[t+4>>2]|0));u=Kk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[s>>2]|~c[q>>2]&c[k>>2])+2053994217+(c[t+32>>2]|0));u=Kk(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[r>>2]|c[p>>2]&~c[r>>2])+-1894007588+(c[t+36>>2]|0));u=Kk(c[l>>2]|0,12)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[q>>2]|~c[o>>2]&c[s>>2])+2053994217+(c[t+24>>2]|0));u=Kk(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[p>>2]|c[n>>2]&~c[p>>2])+-1894007588+(c[t+44>>2]|0));u=Kk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[o>>2]|~c[m>>2]&c[q>>2])+2053994217+(c[t+16>>2]|0));u=Kk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[n>>2]|c[l>>2]&~c[n>>2])+-1894007588+(c[t+40>>2]|0));u=Kk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[m>>2]|~c[k>>2]&c[o>>2])+2053994217+(c[t+4>>2]|0));u=Kk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[l>>2]|c[h>>2]&~c[l>>2])+-1894007588+(c[t>>2]|0));u=Kk(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[k>>2]|~c[s>>2]&c[m>>2])+2053994217+(c[t+12>>2]|0));u=Kk(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[h>>2]|c[r>>2]&~c[h>>2])+-1894007588+(c[t+32>>2]|0));u=Kk(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[s>>2]|~c[q>>2]&c[k>>2])+2053994217+(c[t+44>>2]|0));u=Kk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[r>>2]|c[p>>2]&~c[r>>2])+-1894007588+(c[t+48>>2]|0));u=Kk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[q>>2]|~c[o>>2]&c[s>>2])+2053994217+(c[t+60>>2]|0));u=Kk(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[p>>2]|c[n>>2]&~c[p>>2])+-1894007588+(c[t+16>>2]|0));u=Kk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[o>>2]|~c[m>>2]&c[q>>2])+2053994217+(c[t>>2]|0));u=Kk(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[n>>2]|c[l>>2]&~c[n>>2])+-1894007588+(c[t+52>>2]|0));u=Kk(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[m>>2]|~c[k>>2]&c[o>>2])+2053994217+(c[t+20>>2]|0));u=Kk(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[l>>2]|c[h>>2]&~c[l>>2])+-1894007588+(c[t+12>>2]|0));u=Kk(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[k>>2]|~c[s>>2]&c[m>>2])+2053994217+(c[t+48>>2]|0));u=Kk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[h>>2]|c[r>>2]&~c[h>>2])+-1894007588+(c[t+28>>2]|0));u=Kk(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[s>>2]|~c[q>>2]&c[k>>2])+2053994217+(c[t+8>>2]|0));u=Kk(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]&c[r>>2]|c[p>>2]&~c[r>>2])+-1894007588+(c[t+60>>2]|0));u=Kk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]&c[q>>2]|~c[o>>2]&c[s>>2])+2053994217+(c[t+52>>2]|0));u=Kk(c[m>>2]|0,9)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]&c[p>>2]|c[n>>2]&~c[p>>2])+-1894007588+(c[t+56>>2]|0));u=Kk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]&c[o>>2]|~c[m>>2]&c[q>>2])+2053994217+(c[t+36>>2]|0));u=Kk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]&c[n>>2]|c[l>>2]&~c[n>>2])+-1894007588+(c[t+20>>2]|0));u=Kk(c[r>>2]|0,6)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]&c[m>>2]|~c[k>>2]&c[o>>2])+2053994217+(c[t+28>>2]|0));u=Kk(c[s>>2]|0,5)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]&c[l>>2]|c[h>>2]&~c[l>>2])+-1894007588+(c[t+24>>2]|0));u=Kk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]&c[k>>2]|~c[s>>2]&c[m>>2])+2053994217+(c[t+40>>2]|0));u=Kk(c[q>>2]|0,15)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]&c[h>>2]|c[r>>2]&~c[h>>2])+-1894007588+(c[t+8>>2]|0));u=Kk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]&c[s>>2]|~c[q>>2]&c[k>>2])+2053994217+(c[t+56>>2]|0));u=Kk(c[o>>2]|0,8)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^(c[p>>2]|~c[r>>2]))+-1454113458+(c[t+16>>2]|0));u=Kk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^c[q>>2]^c[s>>2])+0+(c[t+48>>2]|0));u=Kk(c[m>>2]|0,8)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^(c[n>>2]|~c[p>>2]))+-1454113458+(c[t>>2]|0));u=Kk(c[h>>2]|0,15)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^c[o>>2]^c[q>>2])+0+(c[t+60>>2]|0));u=Kk(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^(c[l>>2]|~c[n>>2]))+-1454113458+(c[t+20>>2]|0));u=Kk(c[r>>2]|0,5)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^c[m>>2]^c[o>>2])+0+(c[t+40>>2]|0));u=Kk(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^(c[h>>2]|~c[l>>2]))+-1454113458+(c[t+36>>2]|0));u=Kk(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^c[k>>2]^c[m>>2])+0+(c[t+16>>2]|0));u=Kk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^(c[r>>2]|~c[h>>2]))+-1454113458+(c[t+28>>2]|0));u=Kk(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^c[s>>2]^c[k>>2])+0+(c[t+4>>2]|0));u=Kk(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^(c[p>>2]|~c[r>>2]))+-1454113458+(c[t+48>>2]|0));u=Kk(c[l>>2]|0,8)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^c[q>>2]^c[s>>2])+0+(c[t+20>>2]|0));u=Kk(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^(c[n>>2]|~c[p>>2]))+-1454113458+(c[t+8>>2]|0));u=Kk(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^c[o>>2]^c[q>>2])+0+(c[t+32>>2]|0));u=Kk(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^(c[l>>2]|~c[n>>2]))+-1454113458+(c[t+40>>2]|0));u=Kk(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^c[m>>2]^c[o>>2])+0+(c[t+28>>2]|0));u=Kk(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^(c[h>>2]|~c[l>>2]))+-1454113458+(c[t+56>>2]|0));u=Kk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^c[k>>2]^c[m>>2])+0+(c[t+24>>2]|0));u=Kk(c[q>>2]|0,8)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^(c[r>>2]|~c[h>>2]))+-1454113458+(c[t+4>>2]|0));u=Kk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^c[s>>2]^c[k>>2])+0+(c[t+8>>2]|0));u=Kk(c[o>>2]|0,13)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^(c[p>>2]|~c[r>>2]))+-1454113458+(c[t+12>>2]|0));u=Kk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^c[q>>2]^c[s>>2])+0+(c[t+52>>2]|0));u=Kk(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[h>>2]=(c[h>>2]|0)+((c[l>>2]^(c[n>>2]|~c[p>>2]))+-1454113458+(c[t+32>>2]|0));u=Kk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Kk(c[n>>2]|0,10)|0;c[k>>2]=(c[k>>2]|0)+((c[m>>2]^c[o>>2]^c[q>>2])+0+(c[t+56>>2]|0));u=Kk(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Kk(c[o>>2]|0,10)|0;c[r>>2]=(c[r>>2]|0)+((c[h>>2]^(c[l>>2]|~c[n>>2]))+-1454113458+(c[t+44>>2]|0));u=Kk(c[r>>2]|0,11)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Kk(c[l>>2]|0,10)|0;c[s>>2]=(c[s>>2]|0)+((c[k>>2]^c[m>>2]^c[o>>2])+0+(c[t>>2]|0));u=Kk(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Kk(c[m>>2]|0,10)|0;c[p>>2]=(c[p>>2]|0)+((c[r>>2]^(c[h>>2]|~c[l>>2]))+-1454113458+(c[t+24>>2]|0));u=Kk(c[p>>2]|0,8)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Kk(c[h>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[s>>2]^c[k>>2]^c[m>>2])+0+(c[t+12>>2]|0));u=Kk(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Kk(c[k>>2]|0,10)|0;c[n>>2]=(c[n>>2]|0)+((c[p>>2]^(c[r>>2]|~c[h>>2]))+-1454113458+(c[t+60>>2]|0));u=Kk(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Kk(c[r>>2]|0,10)|0;c[o>>2]=(c[o>>2]|0)+((c[q>>2]^c[s>>2]^c[k>>2])+0+(c[t+36>>2]|0));u=Kk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Kk(c[s>>2]|0,10)|0;c[l>>2]=(c[l>>2]|0)+((c[n>>2]^(c[p>>2]|~c[r>>2]))+-1454113458+(c[t+52>>2]|0));u=Kk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Kk(c[p>>2]|0,10)|0;c[m>>2]=(c[m>>2]|0)+((c[o>>2]^c[q>>2]^c[s>>2])+0+(c[t+44>>2]|0));t=Kk(c[m>>2]|0,11)|0;c[m>>2]=t+(c[k>>2]|0);c[q>>2]=Kk(c[q>>2]|0,10)|0;c[q>>2]=(c[q>>2]|0)+((c[n>>2]|0)+(c[(c[g>>2]|0)+164>>2]|0));c[(c[g>>2]|0)+164>>2]=(c[(c[g>>2]|0)+168>>2]|0)+(c[p>>2]|0)+(c[s>>2]|0);c[(c[g>>2]|0)+168>>2]=(c[(c[g>>2]|0)+172>>2]|0)+(c[r>>2]|0)+(c[k>>2]|0);c[(c[g>>2]|0)+172>>2]=(c[(c[g>>2]|0)+176>>2]|0)+(c[h>>2]|0)+(c[m>>2]|0);c[(c[g>>2]|0)+176>>2]=(c[(c[g>>2]|0)+160>>2]|0)+(c[l>>2]|0)+(c[o>>2]|0);c[(c[g>>2]|0)+160>>2]=c[q>>2];i=d;return 124}function Jk(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (d[(c[f>>2]|0)+3>>0]|0)<<24|(d[(c[f>>2]|0)+2>>0]|0)<<16|(d[(c[f>>2]|0)+1>>0]|0)<<8|(d[c[f>>2]>>0]|0)|0}function Kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return c[e>>2]<<(c[f>>2]&31)|(c[e>>2]|0)>>>(32-(c[f>>2]|0)&31)|0}function Lk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=b;c[f>>2]=c[e>>2];Ar(c[f>>2]|0,0,0);c[g>>2]=c[(c[f>>2]|0)+128>>2];c[h>>2]=c[(c[f>>2]|0)+128+4>>2];c[l>>2]=c[g>>2]<<6;c[k>>2]=c[h>>2]<<6|(c[g>>2]|0)>>>26;c[g>>2]=c[l>>2];h=(c[l>>2]|0)+(c[(c[f>>2]|0)+144>>2]|0)|0;c[l>>2]=h;if(h>>>0<(c[g>>2]|0)>>>0)c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=c[l>>2];c[l>>2]=c[l>>2]<<3;c[k>>2]=c[k>>2]<<3;c[k>>2]=c[k>>2]|(c[g>>2]|0)>>>29;g=(c[(c[f>>2]|0)+144>>2]|0)<56;h=(c[f>>2]|0)+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=-128;a:do if(g)while(1){if((c[(c[f>>2]|0)+144>>2]|0)>=56)break a;e=(c[f>>2]|0)+144|0;h=c[e>>2]|0;c[e>>2]=h+1;a[(c[f>>2]|0)+h>>0]=0}else{while(1){o=c[f>>2]|0;if((c[(c[f>>2]|0)+144>>2]|0)>=64)break;h=o+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=0}Ar(o,0,0);e=c[f>>2]|0;h=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0))}while(0);Mk((c[f>>2]|0)+56|0,c[l>>2]|0);Mk((c[f>>2]|0)+60|0,c[k>>2]|0);c[n>>2]=Hk(c[f>>2]|0,c[f>>2]|0,1)|0;Qe(c[n>>2]|0);Re();c[m>>2]=c[f>>2];Mk(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Mk(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Mk(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Mk(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Mk(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Mk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[(c[h>>2]|0)+3>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>8;a[c[h>>2]>>0]=c[g>>2];i=e;return}function Nk(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function Ok(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Gk(c[d>>2]|0,0);i=b;return}function Pk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[f>>2];Hk(c[e>>2]|0,c[f>>2]|0,1)|0;c[c[g>>2]>>2]=c[(c[e>>2]|0)+160>>2];c[(c[g>>2]|0)+4>>2]=c[(c[e>>2]|0)+164>>2];c[(c[g>>2]|0)+8>>2]=c[(c[e>>2]|0)+168>>2];c[(c[g>>2]|0)+12>>2]=c[(c[e>>2]|0)+172>>2];c[(c[g>>2]|0)+16>>2]=c[(c[e>>2]|0)+176>>2];i=d;return}function Qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+208|0;if((i|0)>=(j|0))U();g=f+192|0;h=f+188|0;k=f+184|0;l=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;Ok(l);Ar(l,c[h>>2]|0,c[k>>2]|0);Lk(l);k=c[g>>2]|0;g=l;l=k+20|0;do{a[k>>0]=a[g>>0]|0;k=k+1|0;g=g+1|0}while((k|0)<(l|0));i=f;return}function Rk(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 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;k=i;i=i+80|0;if((i|0)>=(j|0))U();l=k+64|0;m=k+60|0;n=k+56|0;o=k+52|0;p=k+48|0;q=k+44|0;r=k+40|0;s=k+36|0;t=k+32|0;u=k+28|0;v=k+24|0;w=k+20|0;x=k+16|0;y=k+12|0;z=k+8|0;A=k+4|0;B=k;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;c[s>>2]=0;c[t>>2]=0;c[u>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;if(!(c[u>>2]|0?((c[p>>2]|0)+7|0)>>>0<=(c[u>>2]|0)>>>0:0)){c[l>>2]=66;C=c[l>>2]|0;i=k;return C|0}n=ef(c[u>>2]|0)|0;c[t>>2]=n;if(!n){c[l>>2]=rt()|0;C=c[l>>2]|0;i=k;return C|0}c[w>>2]=0;n=c[w>>2]|0;c[w>>2]=n+1;a[(c[t>>2]|0)+n>>0]=0;n=c[w>>2]|0;c[w>>2]=n+1;a[(c[t>>2]|0)+n>>0]=2;c[v>>2]=(c[u>>2]|0)-3-(c[p>>2]|0);if((c[v>>2]|0)<=0)Fe(38757,38763,95,38776);do if(c[q>>2]|0){if((c[r>>2]|0)!=(c[v>>2]|0)){hf(c[t>>2]|0);c[l>>2]=45;C=c[l>>2]|0;i=k;return C|0}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[r>>2]|0)>>>0){D=15;break}if(!(a[(c[q>>2]|0)+(c[y>>2]|0)>>0]|0))break;c[y>>2]=(c[y>>2]|0)+1}if((D|0)==15){Ow((c[t>>2]|0)+(c[w>>2]|0)|0,c[q>>2]|0,c[r>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+(c[r>>2]|0);break}hf(c[t>>2]|0);c[l>>2]=45;C=c[l>>2]|0;i=k;return C|0}else{c[x>>2]=Wm(c[v>>2]|0,1)|0;while(1){c[A>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>=(c[v>>2]|0))break;if(!(a[(c[x>>2]|0)+(c[z>>2]|0)>>0]|0))c[A>>2]=(c[A>>2]|0)+1;c[z>>2]=(c[z>>2]|0)+1}if(!(c[A>>2]|0))break;c[A>>2]=(c[A>>2]|0)+(((c[A>>2]|0)/128|0)+3);c[B>>2]=Wm(c[A>>2]|0,1)|0;c[z>>2]=0;while(1){if(!((c[z>>2]|0)<(c[v>>2]|0)?(c[A>>2]|0)!=0:0))break;if(!(a[(c[x>>2]|0)+(c[z>>2]|0)>>0]|0)){n=(c[A>>2]|0)+-1|0;c[A>>2]=n;a[(c[x>>2]|0)+(c[z>>2]|0)>>0]=a[(c[B>>2]|0)+n>>0]|0}if(!(a[(c[x>>2]|0)+(c[z>>2]|0)>>0]|0))continue;c[z>>2]=(c[z>>2]|0)+1}hf(c[B>>2]|0)}Ow((c[t>>2]|0)+(c[w>>2]|0)|0,c[x>>2]|0,c[v>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+(c[v>>2]|0);hf(c[x>>2]|0)}while(0);x=c[w>>2]|0;c[w>>2]=x+1;a[(c[t>>2]|0)+x>>0]=0;Ow((c[t>>2]|0)+(c[w>>2]|0)|0,c[o>>2]|0,c[p>>2]|0)|0;c[w>>2]=(c[w>>2]|0)+(c[p>>2]|0);if((c[w>>2]|0)!=(c[u>>2]|0))Fe(38807,38763,153,38776);c[s>>2]=Mo(c[m>>2]|0,5,c[t>>2]|0,c[w>>2]|0,u)|0;if((c[s>>2]|0)==0?sf(1)|0:0)Pe(38819,c[c[m>>2]>>2]|0);hf(c[t>>2]|0);c[l>>2]=c[s>>2];C=c[l>>2]|0;i=k;return C|0}function Sk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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;if((i|0)>=(j|0))U();k=h+32|0;l=h+28|0;m=h+24|0;n=h+20|0;o=h+16|0;p=h+12|0;q=h+8|0;r=h+4|0;s=h;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[q>>2]=0;c[r>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[c[l>>2]>>2]=0;n=ef(c[r>>2]|0)|0;c[q>>2]=n;if(!n){c[k>>2]=rt()|0;t=c[k>>2]|0;i=h;return t|0}c[p>>2]=Qo(5,c[q>>2]|0,c[r>>2]|0,s,c[o>>2]|0)|0;if(c[p>>2]|0){hf(c[q>>2]|0);c[k>>2]=Tk(c[p>>2]|0)|0;t=c[k>>2]|0;i=h;return t|0}c[r>>2]=c[s>>2];if((c[r>>2]|0)>>>0<4){hf(c[q>>2]|0);c[k>>2]=155;t=c[k>>2]|0;i=h;return t|0}c[s>>2]=0;if(!(a[c[q>>2]>>0]|0))c[s>>2]=(c[s>>2]|0)+1;p=c[s>>2]|0;c[s>>2]=p+1;if((d[(c[q>>2]|0)+p>>0]|0)!=2){hf(c[q>>2]|0);c[k>>2]=155;t=c[k>>2]|0;i=h;return t|0}while(1){if((c[s>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break;if(!(d[(c[q>>2]|0)+(c[s>>2]|0)>>0]|0))break;c[s>>2]=(c[s>>2]|0)+1}if(((c[s>>2]|0)+1|0)>>>0>=(c[r>>2]|0)>>>0){hf(c[q>>2]|0);c[k>>2]=155;t=c[k>>2]|0;i=h;return t|0}c[s>>2]=(c[s>>2]|0)+1;Qw(c[q>>2]|0,(c[q>>2]|0)+(c[s>>2]|0)|0,(c[r>>2]|0)-(c[s>>2]|0)|0)|0;c[c[l>>2]>>2]=c[q>>2];c[c[m>>2]>>2]=(c[r>>2]|0)-(c[s>>2]|0);if(sf(1)|0)Ne(38852,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0);c[k>>2]=0;t=c[k>>2]|0;i=h;return t|0}function Tk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Uk(c[d>>2]|0)|0;i=b;return a|0}function Uk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Vk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+160|0;if((i|0)>=(j|0))U();k=h+48|0;l=h+44|0;m=h+40|0;n=h+36|0;o=h+32|0;p=h+28|0;q=h+24|0;r=h+52|0;s=h+20|0;t=h+16|0;u=h+12|0;v=h+8|0;w=h+4|0;x=h;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=0;c[s>>2]=0;c[t>>2]=(((c[m>>2]|0)+7|0)>>>0)/8|0;c[w>>2]=100;c[x>>2]=bj(c[p>>2]|0)|0;if(cj(c[p>>2]|0,10,r,w)|0){c[k>>2]=69;y=c[k>>2]|0;i=h;return y|0}if((c[o>>2]|0)!=(c[x>>2]|0)){c[k>>2]=70;y=c[k>>2]|0;i=h;return y|0}if(c[x>>2]|0?((c[x>>2]|0)+(c[w>>2]|0)+4|0)>>>0<=(c[t>>2]|0)>>>0:0){x=bf(c[t>>2]|0)|0;c[s>>2]=x;if(!x){c[k>>2]=rt()|0;y=c[k>>2]|0;i=h;return y|0}c[v>>2]=0;x=c[v>>2]|0;c[v>>2]=x+1;a[(c[s>>2]|0)+x>>0]=0;x=c[v>>2]|0;c[v>>2]=x+1;a[(c[s>>2]|0)+x>>0]=1;c[u>>2]=(c[t>>2]|0)-(c[o>>2]|0)-(c[w>>2]|0)-3;if((c[u>>2]|0)<=1)Fe(38906,38763,303,38912);Sw((c[s>>2]|0)+(c[v>>2]|0)|0,-1,c[u>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[u>>2]|0);u=c[v>>2]|0;c[v>>2]=u+1;a[(c[s>>2]|0)+u>>0]=0;Ow((c[s>>2]|0)+(c[v>>2]|0)|0,r|0,c[w>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[w>>2]|0);Ow((c[s>>2]|0)+(c[v>>2]|0)|0,c[n>>2]|0,c[o>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[o>>2]|0);if((c[v>>2]|0)!=(c[t>>2]|0))Fe(38807,38763,311,38912);c[q>>2]=Mo(c[l>>2]|0,5,c[s>>2]|0,c[v>>2]|0,t)|0;if((c[q>>2]|0)==0?sf(1)|0:0)Pe(38943,c[c[l>>2]>>2]|0);hf(c[s>>2]|0);c[k>>2]=c[q>>2];y=c[k>>2]|0;i=h;return y|0}c[k>>2]=66;y=c[k>>2]|0;i=h;return y|0}function Wk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+48|0;if((i|0)>=(j|0))U();h=g+40|0;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=0;c[q>>2]=0;c[r>>2]=(((c[l>>2]|0)+7|0)>>>0)/8|0;if(c[n>>2]|0?((c[n>>2]|0)+4|0)>>>0<=(c[r>>2]|0)>>>0:0){l=bf(c[r>>2]|0)|0;c[q>>2]=l;if(!l){c[h>>2]=rt()|0;u=c[h>>2]|0;i=g;return u|0}c[t>>2]=0;l=c[t>>2]|0;c[t>>2]=l+1;a[(c[q>>2]|0)+l>>0]=0;l=c[t>>2]|0;c[t>>2]=l+1;a[(c[q>>2]|0)+l>>0]=1;c[s>>2]=(c[r>>2]|0)-(c[n>>2]|0)-3;if((c[s>>2]|0)<=1)Fe(38906,38763,368,38976);Sw((c[q>>2]|0)+(c[t>>2]|0)|0,-1,c[s>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+(c[s>>2]|0);s=c[t>>2]|0;c[t>>2]=s+1;a[(c[q>>2]|0)+s>>0]=0;Ow((c[q>>2]|0)+(c[t>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+(c[n>>2]|0);if((c[t>>2]|0)!=(c[r>>2]|0))Fe(38807,38763,374,38976);c[p>>2]=Mo(c[k>>2]|0,5,c[q>>2]|0,c[t>>2]|0,r)|0;if(!(c[p>>2]|0)){if(sf(1)|0)Pe(38943,c[c[k>>2]>>2]|0)}else c[o>>2]=Tk(c[p>>2]|0)|0;hf(c[q>>2]|0);c[h>>2]=c[o>>2];u=c[h>>2]|0;i=g;return u|0}c[h>>2]=66;u=c[h>>2]|0;i=g;return u|0}function Xk(b,e,f,g,h,k,l,m,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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;o=i;i=i+80|0;if((i|0)>=(j|0))U();p=o+68|0;q=o+64|0;r=o+60|0;s=o+56|0;t=o+52|0;u=o+48|0;v=o+44|0;w=o+40|0;x=o+36|0;y=o+32|0;z=o+28|0;A=o+24|0;B=o+20|0;C=o+16|0;D=o+12|0;E=o+8|0;F=o+4|0;G=o;c[q>>2]=b;c[r>>2]=e;c[s>>2]=f;c[t>>2]=g;c[u>>2]=h;c[v>>2]=k;c[w>>2]=l;c[x>>2]=m;c[y>>2]=n;c[z>>2]=0;c[A>>2]=0;c[B>>2]=(((c[r>>2]|0)+7|0)>>>0)/8|0;c[c[q>>2]>>2]=0;if(!((c[v>>2]|0)!=0&(c[w>>2]|0)!=0)){c[v>>2]=76084;c[w>>2]=0}c[D>>2]=bj(c[s>>2]|0)|0;if(!(c[B>>2]|0?(c[u>>2]|0)>>>0<=((c[B>>2]|0)-(c[D>>2]<<1)-2|0)>>>0:0)){c[p>>2]=66;H=c[p>>2]|0;i=o;return H|0}c[A>>2]=kf(1,c[B>>2]|0)|0;if(!(c[A>>2]|0)){c[p>>2]=rt()|0;H=c[p>>2]|0;i=o;return H|0}Wi(c[s>>2]|0,(c[A>>2]|0)+1+(c[D>>2]|0)|0,c[v>>2]|0,c[w>>2]|0);c[E>>2]=(c[B>>2]|0)-(c[u>>2]|0)-1;a[(c[A>>2]|0)+(c[E>>2]|0)>>0]=1;Ow((c[A>>2]|0)+(c[E>>2]|0)+1|0,c[t>>2]|0,c[u>>2]|0)|0;do if(c[x>>2]|0){u=c[A>>2]|0;if((c[y>>2]|0)==(c[D>>2]|0)){Ow(u+1|0,c[x>>2]|0,c[D>>2]|0)|0;break}hf(u);c[p>>2]=45;H=c[p>>2]|0;i=o;return H|0}else Xm((c[A>>2]|0)+1|0,c[D>>2]|0,1);while(0);c[F>>2]=ef((c[B>>2]|0)-(c[D>>2]|0)-1|0)|0;if(!(c[F>>2]|0)){c[z>>2]=rt()|0;hf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Yk(c[F>>2]|0,(c[B>>2]|0)-(c[D>>2]|0)-1|0,(c[A>>2]|0)+1|0,c[D>>2]|0,c[s>>2]|0)|0;if(c[z>>2]|0){hf(c[F>>2]|0);hf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[E>>2]=1+(c[D>>2]|0);c[C>>2]=c[F>>2];while(1){if((c[E>>2]|0)>>>0>=(c[B>>2]|0)>>>0)break;x=c[C>>2]|0;c[C>>2]=x+1;y=(c[A>>2]|0)+(c[E>>2]|0)|0;a[y>>0]=(d[y>>0]|0)^(d[x>>0]|0);c[E>>2]=(c[E>>2]|0)+1}hf(c[F>>2]|0);c[G>>2]=ef(c[D>>2]|0)|0;if(!(c[G>>2]|0)){c[z>>2]=rt()|0;hf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Yk(c[G>>2]|0,c[D>>2]|0,(c[A>>2]|0)+1+(c[D>>2]|0)|0,(c[B>>2]|0)-(c[D>>2]|0)-1|0,c[s>>2]|0)|0;if(c[z>>2]|0){hf(c[G>>2]|0);hf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[E>>2]=1;c[C>>2]=c[G>>2];while(1){if((c[E>>2]|0)>>>0>=(1+(c[D>>2]|0)|0)>>>0)break;s=c[C>>2]|0;c[C>>2]=s+1;F=(c[A>>2]|0)+(c[E>>2]|0)|0;a[F>>0]=(d[F>>0]|0)^(d[s>>0]|0);c[E>>2]=(c[E>>2]|0)+1}hf(c[G>>2]|0);c[z>>2]=Mo(c[q>>2]|0,5,c[A>>2]|0,c[B>>2]|0,0)|0;if((c[z>>2]|0)==0?sf(1)|0:0)Pe(39011,c[c[q>>2]>>2]|0);hf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}function Yk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;h=i;i=i+64|0;if((i|0)>=(j|0))U();k=h+48|0;l=h+44|0;m=h+40|0;n=h+36|0;o=h+32|0;p=h+28|0;q=h+24|0;r=h+20|0;s=h+16|0;t=h+12|0;u=h+8|0;v=h+4|0;w=h+52|0;x=h;c[l>>2]=b;c[m>>2]=d;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[v>>2]=Fi(u,c[p>>2]|0,0)|0;if(c[v>>2]|0){c[k>>2]=c[v>>2];y=c[k>>2]|0;i=h;return y|0}c[q>>2]=bj(c[p>>2]|0)|0;c[r>>2]=0;c[t>>2]=0;while(1){if((c[r>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if(c[t>>2]|0)Mi(c[u>>2]|0);a[w>>0]=c[t>>2]>>24;a[w+1>>0]=c[t>>2]>>16;a[w+2>>0]=c[t>>2]>>8;a[w+3>>0]=c[t>>2];c[t>>2]=(c[t>>2]|0)+1;Oi(c[u>>2]|0,c[n>>2]|0,c[o>>2]|0);Oi(c[u>>2]|0,w,4);c[x>>2]=_i(c[u>>2]|0,0)|0;if(((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0<(c[q>>2]|0)>>>0)z=(c[m>>2]|0)-(c[r>>2]|0)|0;else z=c[q>>2]|0;c[s>>2]=z;Ow((c[l>>2]|0)+(c[r>>2]|0)|0,c[x>>2]|0,c[s>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0)}Ni(c[u>>2]|0);c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function Zk(b,e,f,g,h,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;m=i;i=i+96|0;if((i|0)>=(j|0))U();n=m+80|0;o=m+76|0;p=m+72|0;q=m+68|0;r=m+64|0;s=m+60|0;t=m+56|0;u=m+52|0;v=m+48|0;w=m+44|0;x=m+40|0;y=m+36|0;z=m+32|0;A=m+28|0;B=m+24|0;C=m+20|0;D=m+16|0;E=m+12|0;F=m+8|0;G=m+4|0;H=m;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[t>>2]=k;c[u>>2]=l;c[w>>2]=0;c[z>>2]=0;c[B>>2]=0;c[F>>2]=(((c[q>>2]|0)+7|0)>>>0)/8|0;c[G>>2]=0;c[c[o>>2]>>2]=0;if(!((c[t>>2]|0)!=0&(c[u>>2]|0)!=0)){c[t>>2]=76084;c[u>>2]=0}c[D>>2]=bj(c[r>>2]|0)|0;c[B>>2]=bf(c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[n>>2]=rt()|0;I=c[n>>2]|0;i=m;return I|0}Wi(c[r>>2]|0,c[B>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=_k(w,0,c[s>>2]|0,c[F>>2]|0)|0;if(c[v>>2]|0){hf(c[B>>2]|0);c[n>>2]=155;I=c[n>>2]|0;i=m;return I|0}c[C>>2]=c[F>>2];if((c[C>>2]|0)>>>0<((c[D>>2]<<1)+2|0)>>>0){hf(c[w>>2]|0);hf(c[B>>2]|0);c[n>>2]=155;I=c[n>>2]|0;i=m;return I|0}c[z>>2]=ef((c[C>>2]|0)-1|0)|0;if(!(c[z>>2]|0)){c[v>>2]=rt()|0;hf(c[w>>2]|0);hf(c[B>>2]|0);c[n>>2]=c[v>>2];I=c[n>>2]|0;i=m;return I|0}c[A>>2]=(c[z>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[w>>2]|0)+1;c[y>>2]=(c[w>>2]|0)+1+(c[D>>2]|0);c[E>>2]=(c[C>>2]|0)-1-(c[D>>2]|0);if(Yk(c[z>>2]|0,c[D>>2]|0,c[y>>2]|0,c[E>>2]|0,c[r>>2]|0)|0)c[G>>2]=1;c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[D>>2]|0)>>>0)break;C=(c[z>>2]|0)+(c[H>>2]|0)|0;a[C>>0]=d[C>>0]^d[(c[x>>2]|0)+(c[H>>2]|0)>>0];c[H>>2]=(c[H>>2]|0)+1}if(Yk(c[A>>2]|0,c[E>>2]|0,c[z>>2]|0,c[D>>2]|0,c[r>>2]|0)|0)c[G>>2]=1;c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[E>>2]|0)>>>0)break;r=(c[A>>2]|0)+(c[H>>2]|0)|0;a[r>>0]=d[r>>0]^d[(c[y>>2]|0)+(c[H>>2]|0)>>0];c[H>>2]=(c[H>>2]|0)+1}if(vv(c[B>>2]|0,c[A>>2]|0,c[D>>2]|0)|0)c[G>>2]=1;c[H>>2]=c[D>>2];while(1){if((c[H>>2]|0)>>>0>=(c[E>>2]|0)>>>0)break;if((d[(c[A>>2]|0)+(c[H>>2]|0)>>0]|0)==1)break;c[H>>2]=(c[H>>2]|0)+1}if((c[H>>2]|0)==(c[E>>2]|0))c[G>>2]=1;if(a[c[w>>2]>>0]|0)c[G>>2]=1;hf(c[B>>2]|0);hf(c[w>>2]|0);if(c[G>>2]|0){hf(c[z>>2]|0);c[n>>2]=155;I=c[n>>2]|0;i=m;return I|0}c[H>>2]=(c[H>>2]|0)+1;Qw(c[z>>2]|0,(c[A>>2]|0)+(c[H>>2]|0)|0,(c[E>>2]|0)-(c[H>>2]|0)|0)|0;c[c[o>>2]>>2]=c[z>>2];c[c[p>>2]>>2]=(c[E>>2]|0)-(c[H>>2]|0);c[z>>2]=0;if(sf(1)|0)Ne(39029,c[c[o>>2]>>2]|0,c[c[p>>2]>>2]|0);c[n>>2]=0;I=c[n>>2]|0;i=m;return I|0}function _k(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f+8|0;k=f+4|0;l=f;c[g>>2]=a;c[h>>2]=b;c[k>>2]=d;c[l>>2]=e;e=So(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function $k(b,e,f,g,h,k,l,m){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,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;n=i;i=i+128|0;if((i|0)>=(j|0))U();o=n+116|0;p=n+112|0;q=n+108|0;r=n+104|0;s=n+100|0;t=n+96|0;u=n+92|0;v=n+88|0;w=n+84|0;x=n+80|0;y=n+76|0;z=n+72|0;A=n+68|0;B=n+64|0;D=n+60|0;E=n+56|0;F=n+52|0;G=n+48|0;H=n+44|0;I=n+40|0;J=n+36|0;K=n+32|0;L=n+121|0;M=n+8|0;N=n+28|0;O=n+24|0;P=n+20|0;Q=n+120|0;R=n;S=n+16|0;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;c[t>>2]=k;c[u>>2]=l;c[v>>2]=m;c[w>>2]=0;c[y>>2]=0;c[z>>2]=(((c[p>>2]|0)+7|0)>>>0)/8|0;c[B>>2]=0;c[x>>2]=bj(c[q>>2]|0)|0;if(!(c[x>>2]|0))Fe(39068,38763,800,39073);c[D>>2]=8+(c[x>>2]|0)+(c[t>>2]|0)+((c[z>>2]|0)-(c[x>>2]|0)-1);c[B>>2]=bf(c[D>>2]|0)|0;a:do if(c[B>>2]|0){c[E>>2]=(c[B>>2]|0)+8;c[F>>2]=(c[E>>2]|0)+(c[x>>2]|0);c[G>>2]=(c[F>>2]|0)+(c[t>>2]|0);if((c[s>>2]|0)!=(c[x>>2]|0)){c[w>>2]=139;break}Ow(c[E>>2]|0,c[r>>2]|0,c[x>>2]|0)|0;if((c[z>>2]|0)>>>0<((c[x>>2]|0)+(c[t>>2]|0)+2|0)>>>0){c[w>>2]=66;break}c[y>>2]=bf(c[z>>2]|0)|0;if(!(c[y>>2]|0)){c[w>>2]=rt()|0;break}c[A>>2]=(c[y>>2]|0)+(c[z>>2]|0)+-1+(0-(c[x>>2]|0));do if(c[t>>2]|0){if(!(c[u>>2]|0)){Xm(c[F>>2]|0,c[t>>2]|0,1);break}if((c[v>>2]|0)!=(c[t>>2]|0)){c[w>>2]=45;break a}else{Ow(c[F>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;break}}while(0);m=c[B>>2]|0;a[m>>0]=0;a[m+1>>0]=0;a[m+2>>0]=0;a[m+3>>0]=0;a[m+4>>0]=0;a[m+5>>0]=0;a[m+6>>0]=0;a[m+7>>0]=0;Wi(c[q>>2]|0,c[A>>2]|0,c[B>>2]|0,8+(c[x>>2]|0)+(c[t>>2]|0)|0);c[H>>2]=(c[y>>2]|0)+(c[z>>2]|0)+-1+(0-(c[x>>2]|0))+(0-(c[t>>2]|0))+-1;Sw(c[y>>2]|0,0,(c[H>>2]|0)-(c[y>>2]|0)|0)|0;m=c[H>>2]|0;c[H>>2]=m+1;a[m>>0]=1;Ow(c[H>>2]|0,c[F>>2]|0,c[t>>2]|0)|0;Yk(c[G>>2]|0,(c[z>>2]|0)-(c[x>>2]|0)-1|0,c[A>>2]|0,c[x>>2]|0,c[q>>2]|0)|0;c[I>>2]=0;c[H>>2]=c[G>>2];while(1){if((c[I>>2]|0)>>>0>=((c[z>>2]|0)-(c[x>>2]|0)-1|0)>>>0)break;m=(c[y>>2]|0)+(c[I>>2]|0)|0;a[m>>0]=(d[m>>0]|0)^(d[c[H>>2]>>0]|0);c[I>>2]=(c[I>>2]|0)+1;c[H>>2]=(c[H>>2]|0)+1}m=c[y>>2]|0;a[m>>0]=(d[m>>0]|0)&255>>(c[z>>2]<<3)-(c[p>>2]|0);a[(c[y>>2]|0)+((c[z>>2]|0)-1)>>0]=-68;c[w>>2]=Mo(c[o>>2]|0,5,c[y>>2]|0,c[z>>2]|0,0)|0;if((c[w>>2]|0)==0?sf(1)|0:0)Pe(39094,c[c[o>>2]>>2]|0)}else c[w>>2]=rt()|0;while(0);if(c[y>>2]|0){c[J>>2]=c[y>>2];c[K>>2]=c[z>>2];a[L>>0]=0;z=M;c[z>>2]=d[L>>0];c[z+4>>2]=0;while(1){if(!(c[J>>2]&7|0?(c[K>>2]|0)!=0:0))break;a[c[J>>2]>>0]=a[L>>0]|0;c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+-1}if((c[K>>2]|0)>>>0>=8){z=M;o=Xw(c[z>>2]|0,c[z+4>>2]|0,16843009,16843009)|0;z=M;c[z>>2]=o;c[z+4>>2]=C;do{c[N>>2]=c[J>>2];z=M;o=c[z+4>>2]|0;p=c[N>>2]|0;c[p>>2]=c[z>>2];c[p+4>>2]=o;c[K>>2]=(c[K>>2]|0)-8;c[J>>2]=(c[J>>2]|0)+8}while((c[K>>2]|0)>>>0>=8)}while(1){if(!(c[K>>2]|0))break;a[c[J>>2]>>0]=a[L>>0]|0;c[J>>2]=(c[J>>2]|0)+1;c[K>>2]=(c[K>>2]|0)+-1}hf(c[y>>2]|0)}if(!(c[B>>2]|0)){T=c[w>>2]|0;i=n;return T|0}c[O>>2]=c[B>>2];c[P>>2]=c[D>>2];a[Q>>0]=0;D=R;c[D>>2]=d[Q>>0];c[D+4>>2]=0;while(1){if(!(c[O>>2]&7|0?(c[P>>2]|0)!=0:0))break;a[c[O>>2]>>0]=a[Q>>0]|0;c[O>>2]=(c[O>>2]|0)+1;c[P>>2]=(c[P>>2]|0)+-1}if((c[P>>2]|0)>>>0>=8){D=R;y=Xw(c[D>>2]|0,c[D+4>>2]|0,16843009,16843009)|0;D=R;c[D>>2]=y;c[D+4>>2]=C;do{c[S>>2]=c[O>>2];D=R;y=c[D+4>>2]|0;K=c[S>>2]|0;c[K>>2]=c[D>>2];c[K+4>>2]=y;c[P>>2]=(c[P>>2]|0)-8;c[O>>2]=(c[O>>2]|0)+8}while((c[P>>2]|0)>>>0>=8)}while(1){if(!(c[P>>2]|0))break;a[c[O>>2]>>0]=a[Q>>0]|0;c[O>>2]=(c[O>>2]|0)+1;c[P>>2]=(c[P>>2]|0)+-1}hf(c[B>>2]|0);T=c[w>>2]|0;i=n;return T|0}function al(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;k=i;i=i+112|0;if((i|0)>=(j|0))U();l=k+104|0;m=k+100|0;n=k+96|0;o=k+92|0;p=k+88|0;q=k+84|0;r=k+80|0;s=k+76|0;t=k+72|0;u=k+68|0;v=k+64|0;w=k+60|0;x=k+56|0;y=k+52|0;z=k+48|0;A=k+44|0;B=k+40|0;D=k+36|0;E=k+32|0;F=k+109|0;G=k+8|0;H=k+28|0;I=k+24|0;J=k+20|0;K=k+108|0;L=k;M=k+16|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=0;c[s>>2]=0;c[t>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[w>>2]=0;c[r>>2]=bj(c[o>>2]|0)|0;if(!(c[r>>2]|0))Fe(39068,38763,926,39111);c[x>>2]=8+(c[r>>2]|0)+(c[p>>2]|0);if((c[x>>2]|0)>>>0<((c[t>>2]|0)-(c[r>>2]|0)-1|0)>>>0)c[x>>2]=(c[t>>2]|0)-(c[r>>2]|0)-1;c[x>>2]=(c[x>>2]|0)+(c[r>>2]|0);c[w>>2]=bf(c[x>>2]|0)|0;do if(c[w>>2]|0){c[y>>2]=c[w>>2];c[z>>2]=(c[w>>2]|0)+(c[x>>2]|0)+(0-(c[r>>2]|0));c[q>>2]=_k(0,c[z>>2]|0,c[l>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)==0?(c[q>>2]=_k(s,0,c[m>>2]|0,c[t>>2]|0)|0,(c[q>>2]|0)==0):0){if((c[t>>2]|0)>>>0<((c[r>>2]|0)+(c[p>>2]|0)+2|0)>>>0){c[q>>2]=66;break}if((d[(c[s>>2]|0)+((c[t>>2]|0)-1)>>0]|0)!=188){c[q>>2]=8;break}c[v>>2]=(c[s>>2]|0)+(c[t>>2]|0)+-1+(0-(c[r>>2]|0));if(d[c[s>>2]>>0]&~(255>>(c[t>>2]<<3)-(c[n>>2]|0))|0){c[q>>2]=8;break}Yk(c[y>>2]|0,(c[t>>2]|0)-(c[r>>2]|0)-1|0,c[v>>2]|0,c[r>>2]|0,c[o>>2]|0)|0;c[B>>2]=0;c[A>>2]=c[y>>2];while(1){if((c[B>>2]|0)>>>0>=((c[t>>2]|0)-(c[r>>2]|0)-1|0)>>>0)break;h=(c[s>>2]|0)+(c[B>>2]|0)|0;a[h>>0]=d[h>>0]^d[c[A>>2]>>0];c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+1}h=c[s>>2]|0;a[h>>0]=d[h>>0]&255>>(c[t>>2]<<3)-(c[n>>2]|0);c[B>>2]=0;while(1){if((c[B>>2]|0)>>>0>=((c[t>>2]|0)-(c[r>>2]|0)-(c[p>>2]|0)-2|0)>>>0)break;if(!((a[(c[s>>2]|0)+(c[B>>2]|0)>>0]|0)!=0^1))break;c[B>>2]=(c[B>>2]|0)+1}if((c[B>>2]|0)==((c[t>>2]|0)-(c[r>>2]|0)-(c[p>>2]|0)-2|0)?(h=c[B>>2]|0,c[B>>2]=h+1,(d[(c[s>>2]|0)+h>>0]|0)==1):0){c[u>>2]=(c[s>>2]|0)+(c[B>>2]|0);h=c[w>>2]|0;a[h>>0]=0;a[h+1>>0]=0;a[h+2>>0]=0;a[h+3>>0]=0;a[h+4>>0]=0;a[h+5>>0]=0;a[h+6>>0]=0;a[h+7>>0]=0;Ow((c[w>>2]|0)+8|0,c[z>>2]|0,c[r>>2]|0)|0;Ow((c[w>>2]|0)+8+(c[r>>2]|0)|0,c[u>>2]|0,c[p>>2]|0)|0;Wi(c[o>>2]|0,c[w>>2]|0,c[w>>2]|0,8+(c[r>>2]|0)+(c[p>>2]|0)|0);h=(vv(c[v>>2]|0,c[w>>2]|0,c[r>>2]|0)|0)!=0;c[q>>2]=h?8:0;break}c[q>>2]=8}}else c[q>>2]=rt()|0;while(0);if(c[s>>2]|0){c[D>>2]=c[s>>2];c[E>>2]=c[t>>2];a[F>>0]=0;t=G;c[t>>2]=d[F>>0];c[t+4>>2]=0;while(1){if(!(c[D>>2]&7|0?(c[E>>2]|0)!=0:0))break;a[c[D>>2]>>0]=a[F>>0]|0;c[D>>2]=(c[D>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+-1}if((c[E>>2]|0)>>>0>=8){t=G;r=Xw(c[t>>2]|0,c[t+4>>2]|0,16843009,16843009)|0;t=G;c[t>>2]=r;c[t+4>>2]=C;do{c[H>>2]=c[D>>2];t=G;r=c[t+4>>2]|0;v=c[H>>2]|0;c[v>>2]=c[t>>2];c[v+4>>2]=r;c[E>>2]=(c[E>>2]|0)-8;c[D>>2]=(c[D>>2]|0)+8}while((c[E>>2]|0)>>>0>=8)}while(1){if(!(c[E>>2]|0))break;a[c[D>>2]>>0]=a[F>>0]|0;c[D>>2]=(c[D>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+-1}hf(c[s>>2]|0)}if(!(c[w>>2]|0)){N=c[q>>2]|0;i=k;return N|0}c[I>>2]=c[w>>2];c[J>>2]=c[x>>2];a[K>>0]=0;x=L;c[x>>2]=d[K>>0];c[x+4>>2]=0;while(1){if(!(c[I>>2]&7|0?(c[J>>2]|0)!=0:0))break;a[c[I>>2]>>0]=a[K>>0]|0;c[I>>2]=(c[I>>2]|0)+1;c[J>>2]=(c[J>>2]|0)+-1}if((c[J>>2]|0)>>>0>=8){x=L;s=Xw(c[x>>2]|0,c[x+4>>2]|0,16843009,16843009)|0;x=L;c[x>>2]=s;c[x+4>>2]=C;do{c[M>>2]=c[I>>2];x=L;s=c[x+4>>2]|0;E=c[M>>2]|0;c[E>>2]=c[x>>2];c[E+4>>2]=s;c[J>>2]=(c[J>>2]|0)-8;c[I>>2]=(c[I>>2]|0)+8}while((c[J>>2]|0)>>>0>=8)}while(1){if(!(c[J>>2]|0))break;a[c[I>>2]>>0]=a[K>>0]|0;c[I>>2]=(c[I>>2]|0)+1;c[J>>2]=(c[J>>2]|0)+-1}hf(c[w>>2]|0);N=c[q>>2]|0;i=k;return N|0}function bl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=i;i=i+112|0;if((i|0)>=(j|0))U();e=d;f=d+100|0;g=d+96|0;h=d+92|0;k=d+88|0;l=d+84|0;m=d+80|0;n=d+56|0;o=d+52|0;p=d+48|0;q=d+44|0;r=d+40|0;s=d+36|0;c[g>>2]=a;c[h>>2]=b;c[p>>2]=0;c[r>>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[k>>2]=tj(c[g>>2]|0,l)|0;if(c[k>>2]|0){c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}c[k>>2]=uj(c[g>>2]|0,m)|0;if(c[k>>2]|0){c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}c[q>>2]=Gf(c[g>>2]|0,46984,0)|0;if(c[q>>2]|0?(c[k>>2]=sj(c[q>>2]|0,p,0)|0,Ef(c[q>>2]|0),c[k>>2]|0):0){c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}if(c[g>>2]|0)u=Gf(c[g>>2]|0,39193,0)|0;else u=0;c[o>>2]=u;if((c[o>>2]|0)==0?(c[q>>2]=Gf(c[g>>2]|0,39206,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|64;Ef(c[q>>2]|0)}if((!(c[o>>2]|0)?!(c[p>>2]&64|0):0)?!(Jg()|0):0){if((c[p>>2]&32|0)==0?(c[q>>2]=Gf(c[g>>2]|0,46990,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|32;Ef(c[q>>2]|0)}c[k>>2]=il(n,c[l>>2]|0,c[m>>2]|0,((c[p>>2]&32|0)!=0^1^1)&1)|0}else v=16;if((v|0)==16?(c[k>>2]=cl(n,c[l>>2]|0,c[m>>2]|0,c[o>>2]|0,s)|0,Ef(c[o>>2]|0),(c[k>>2]|0)==0&(c[s>>2]|0)!=0):0)c[k>>2]=Ff(r,39474,0,1)|0;if(!(c[k>>2]|0)){s=c[h>>2]|0;h=c[n+4>>2]|0;o=c[n>>2]|0;m=c[n+4>>2]|0;l=c[n+8>>2]|0;v=c[n+12>>2]|0;p=c[n+16>>2]|0;q=c[n+20>>2]|0;g=c[r>>2]|0;c[e>>2]=c[n>>2];c[e+4>>2]=h;c[e+8>>2]=o;c[e+12>>2]=m;c[e+16>>2]=l;c[e+20>>2]=v;c[e+24>>2]=p;c[e+28>>2]=q;c[e+32>>2]=g;c[k>>2]=Rf(s,0,39570,e)|0}qp(c[n>>2]|0);qp(c[n+4>>2]|0);qp(c[n+12>>2]|0);qp(c[n+16>>2]|0);qp(c[n+8>>2]|0);qp(c[n+20>>2]|0);Ef(c[r>>2]|0);c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}function cl(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,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;g=i;i=i+176|0;if((i|0)>=(j|0))U();h=g;k=g+164|0;l=g+160|0;m=g+156|0;n=g+152|0;o=g+148|0;p=g+144|0;q=g+140|0;r=g+136|0;s=g+132|0;t=g+128|0;u=g+124|0;v=g+120|0;w=g+116|0;x=g+112|0;y=g+108|0;z=g+104|0;A=g+100|0;B=g+96|0;C=g+92|0;D=g+88|0;E=g+84|0;F=g+80|0;G=g+76|0;H=g+72|0;I=g+16|0;J=g+8|0;K=g+4|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[c[p>>2]>>2]=0;if((c[n>>2]|0)==1)c[n>>2]=65537;if((c[m>>2]|0)>>>0>=1024?(((c[m>>2]|0)>>>0)%256|0|0)==0:0){if((c[n>>2]|0)>>>0<3){c[k>>2]=55;L=c[k>>2]|0;i=g;return L|0}if(!(c[n>>2]&1)){c[k>>2]=55;L=c[k>>2]|0;i=g;return L|0}c[B>>2]=0;c[C>>2]=0;c[D>>2]=0;c[E>>2]=0;c[F>>2]=0;c[G>>2]=0;if(c[o>>2]|0){f=I;e=f+56|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[I>>2]=39325;c[I+8>>2]=39329;c[I+16>>2]=39333;c[I+24>>2]=39336;c[I+32>>2]=39340;c[I+40>>2]=39344;c[I+4>>2]=B;c[I+8+4>>2]=C;c[I+16+4>>2]=D;c[I+24+4>>2]=E;c[I+32+4>>2]=F;c[I+40+4>>2]=G;c[J>>2]=0;while(1){if(!(c[I+(c[J>>2]<<3)>>2]|0))break;c[K>>2]=Gf(c[o>>2]|0,c[I+(c[J>>2]<<3)>>2]|0,0)|0;if(c[K>>2]|0){f=Of(c[K>>2]|0,1,5)|0;c[c[I+(c[J>>2]<<3)+4>>2]>>2]=f;Ef(c[K>>2]|0)}c[J>>2]=(c[J>>2]|0)+1}c[J>>2]=0;while(1){if(!(c[I+(c[J>>2]<<3)>>2]|0))break;if(!(c[c[I+(c[J>>2]<<3)+4>>2]>>2]|0))break;c[J>>2]=(c[J>>2]|0)+1}if(c[I+(c[J>>2]<<3)>>2]|0){c[J>>2]=0;while(1){if(!(c[I+(c[J>>2]<<3)>>2]|0))break;Gp(c[c[I+(c[J>>2]<<3)+4>>2]>>2]|0);c[J>>2]=(c[J>>2]|0)+1}c[k>>2]=128;L=c[k>>2]|0;i=g;return L|0}}else{c[D>>2]=dl(((c[m>>2]|0)>>>0)/2|0)|0;c[H>>2]=Fp(((c[m>>2]|0)>>>0)/2|0)|0;do{Gp(c[G>>2]|0);c[G>>2]=dl(((c[m>>2]|0)>>>0)/2|0)|0;Vn(c[H>>2]|0,c[D>>2]|0,c[G>>2]|0);J=Zn(c[H>>2]|0)|0}while(J>>>0<=((((c[m>>2]|0)>>>0)/2|0)-100|0)>>>0);Gp(c[H>>2]|0);c[B>>2]=el()|0;c[C>>2]=el()|0;c[E>>2]=el()|0;c[F>>2]=el()|0}c[s>>2]=hp(c[n>>2]|0)|0;c[q>>2]=qj(c[D>>2]|0,c[B>>2]|0,c[C>>2]|0,c[s>>2]|0,0,0)|0;c[r>>2]=qj(c[G>>2]|0,c[E>>2]|0,c[F>>2]|0,c[s>>2]|0,0,0)|0;Gp(c[D>>2]|0);c[D>>2]=0;Gp(c[B>>2]|0);c[B>>2]=0;Gp(c[C>>2]|0);c[C>>2]=0;Gp(c[G>>2]|0);c[G>>2]=0;Gp(c[E>>2]|0);c[E>>2]=0;Gp(c[F>>2]|0);c[F>>2]=0;F=c[q>>2]|0;if(!((c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){Gp(F);Gp(c[r>>2]|0);Gp(c[s>>2]|0);c[k>>2]=21;L=c[k>>2]|0;i=g;return L|0}if((jo(F,c[r>>2]|0)|0)>0){Cp(c[q>>2]|0,c[r>>2]|0);c[c[p>>2]>>2]=1}c[t>>2]=Ep(c[m>>2]|0)|0;Do(c[t>>2]|0,c[q>>2]|0,c[r>>2]|0);c[w>>2]=Fp(((c[m>>2]|0)>>>0)/2|0)|0;c[x>>2]=Fp(((c[m>>2]|0)>>>0)/2|0)|0;c[y>>2]=Fp(c[m>>2]|0)|0;Un(c[w>>2]|0,c[q>>2]|0,1);Un(c[x>>2]|0,c[r>>2]|0,1);Do(c[y>>2]|0,c[w>>2]|0,c[x>>2]|0);c[A>>2]=Fp(c[m>>2]|0)|0;if(!(so(c[A>>2]|0,c[s>>2]|0,c[y>>2]|0)|0))Fe(39347,39251,541,39381);so(c[A>>2]|0,c[w>>2]|0,c[x>>2]|0)|0;c[z>>2]=c[w>>2];c[w>>2]=0;Gp(c[x>>2]|0);c[x>>2]=0;oo(c[z>>2]|0,c[y>>2]|0,c[A>>2]|0);Gp(c[y>>2]|0);c[y>>2]=0;c[u>>2]=c[A>>2];c[A>>2]=0;yo(c[u>>2]|0,c[s>>2]|0,c[z>>2]|0)|0;c[v>>2]=c[z>>2];c[z>>2]=0;yo(c[v>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if(sf(1)|0){if(c[c[p>>2]>>2]|0)Le(39395,h);Pe(45447,c[q>>2]|0);Pe(39416,c[r>>2]|0);Pe(39420,c[t>>2]|0);Pe(39424,c[s>>2]|0);Pe(39428,c[u>>2]|0);Pe(39432,c[v>>2]|0)}c[c[l>>2]>>2]=c[t>>2];c[(c[l>>2]|0)+4>>2]=c[s>>2];c[(c[l>>2]|0)+12>>2]=c[q>>2];c[(c[l>>2]|0)+16>>2]=c[r>>2];c[(c[l>>2]|0)+8>>2]=c[u>>2];c[(c[l>>2]|0)+20>>2]=c[v>>2];if(fl(c[l>>2]|0,(c[m>>2]|0)-64|0)|0){Gp(c[c[l>>2]>>2]|0);c[c[l>>2]>>2]=0;Gp(c[(c[l>>2]|0)+4>>2]|0);c[(c[l>>2]|0)+4>>2]=0;Gp(c[(c[l>>2]|0)+12>>2]|0);c[(c[l>>2]|0)+12>>2]=0;Gp(c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;Gp(c[(c[l>>2]|0)+8>>2]|0);c[(c[l>>2]|0)+8>>2]=0;Gp(c[(c[l>>2]|0)+20>>2]|0);c[(c[l>>2]|0)+20>>2]=0;Sg(39251,586,39381,0,39436);c[k>>2]=50;L=c[k>>2]|0;i=g;return L|0}else{c[k>>2]=0;L=c[k>>2]|0;i=g;return L|0}}c[k>>2]=55;L=c[k>>2]|0;i=g;return L|0}function dl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Fp(c[d>>2]|0)|0;Hp(c[e>>2]|0,c[d>>2]|0,2);ao(c[e>>2]|0,(c[d>>2]|0)-1|0);$n(c[e>>2]|0,(c[d>>2]|0)-2|0);a=Zn(c[e>>2]|0)|0;if((a|0)==(c[d>>2]|0)){i=b;return c[e>>2]|0}else Fe(39215,39251,360,39257);return 0}function el(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=Fp(101)|0;Hp(c[b>>2]|0,101,2);ao(c[b>>2]|0,100);if((Zn(c[b>>2]|0)|0)==101){i=a;return c[b>>2]|0}else Fe(39274,39251,375,39308);return 0}function fl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+32|0;f=d+28|0;g=d+24|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=-1;c[k>>2]=Ep(c[f>>2]|0)|0;c[l>>2]=Ep(c[f>>2]|0)|0;c[m>>2]=Ep(c[f>>2]|0)|0;c[n>>2]=Ep(c[f>>2]|0)|0;c[h>>2]=c[c[e>>2]>>2];c[h+4>>2]=c[(c[e>>2]|0)+4>>2];Hp(c[k>>2]|0,c[f>>2]|0,0);gl(c[l>>2]|0,c[k>>2]|0,h);if(((jo(c[l>>2]|0,c[k>>2]|0)|0?(hl(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0),(jo(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(Hp(c[k>>2]|0,c[f>>2]|0,0),hl(c[n>>2]|0,c[k>>2]|0,c[e>>2]|0),gl(c[m>>2]|0,c[n>>2]|0,h),(jo(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(Sn(c[n>>2]|0,c[n>>2]|0,1),gl(c[m>>2]|0,c[n>>2]|0,h),jo(c[m>>2]|0,c[k>>2]|0)|0):0)c[g>>2]=0;Gp(c[n>>2]|0);Gp(c[m>>2]|0);Gp(c[l>>2]|0);Gp(c[k>>2]|0);i=d;return c[g>>2]|0}function gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[f>>2]|0)==(c[g>>2]|0)){c[k>>2]=ip(c[(c[g>>2]|0)+4>>2]<<1)|0;Fo(c[k>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[c[h>>2]>>2]|0);xp(c[f>>2]|0,c[k>>2]|0)|0;qp(c[k>>2]|0);i=e;return}else{Fo(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[c[h>>2]>>2]|0);i=e;return}}function hl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+20|0;g=e+16|0;h=e+12|0;k=e+8|0;l=e+4|0;m=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Yn(c[g>>2]|0);if((c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+16>>2]|0:0)?c[(c[h>>2]|0)+20>>2]|0:0){c[k>>2]=kp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[l>>2]=kp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[m>>2]=kp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;Un(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1);ko(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);Fo(c[k>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Un(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1);ko(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);Fo(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Vn(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0);if(c[(c[m>>2]|0)+8>>2]|0)Tn(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Eo(c[m>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Do(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Tn(c[f>>2]|0,c[k>>2]|0,c[m>>2]|0);qp(c[m>>2]|0);qp(c[k>>2]|0);qp(c[l>>2]|0);i=e;return}Fo(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[c[h>>2]>>2]|0);i=e;return}function il(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+80|0;if((i|0)>=(j|0))U();g=f+64|0;h=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+36|0;q=f+32|0;r=f+28|0;s=f+24|0;t=f+20|0;u=f+16|0;v=f+12|0;w=f+8|0;x=f+4|0;y=f;c[h>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;if(Jg()|0){if((c[k>>2]|0)>>>0<1024){c[g>>2]=55;z=c[g>>2]|0;i=f;return z|0}if(c[m>>2]|0){c[g>>2]=55;z=c[g>>2]|0;i=f;return z|0}}c[y>>2]=c[m>>2]|0?1:2;if(c[k>>2]&1|0)c[k>>2]=(c[k>>2]|0)+1;if((c[l>>2]|0)==1)c[l>>2]=65537;c[u>>2]=ip(1)|0;if(c[l>>2]|0){c[l>>2]=c[l>>2]|1;Bp(c[u>>2]|0,c[l>>2]|0)|0}else Bp(c[u>>2]|0,41)|0;c[t>>2]=Ep(c[k>>2]|0)|0;c[o>>2]=0;c[n>>2]=0;do{if(c[n>>2]|0)Gp(c[n>>2]|0);if(c[o>>2]|0)Gp(c[o>>2]|0);m=((c[k>>2]|0)>>>0)/2|0;e=c[y>>2]|0;if(c[l>>2]|0){c[n>>2]=lj(m,e,6,c[u>>2]|0)|0;c[o>>2]=lj(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,6,c[u>>2]|0)|0}else{c[n>>2]=lj(m,e,0,0)|0;c[o>>2]=lj(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,0,0)|0}if((jo(c[n>>2]|0,c[o>>2]|0)|0)>0)Cp(c[n>>2]|0,c[o>>2]|0);Do(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);e=Zn(c[t>>2]|0)|0}while((e|0)!=(c[k>>2]|0));c[r>>2]=kp(c[(c[n>>2]|0)+4>>2]|0)|0;c[s>>2]=kp(c[(c[n>>2]|0)+4>>2]|0)|0;c[v>>2]=Fp(c[k>>2]|0)|0;c[w>>2]=Fp(c[k>>2]|0)|0;c[x>>2]=Fp(c[k>>2]|0)|0;Un(c[r>>2]|0,c[n>>2]|0,1);Un(c[s>>2]|0,c[o>>2]|0,1);Do(c[v>>2]|0,c[r>>2]|0,c[s>>2]|0);so(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;oo(c[x>>2]|0,c[v>>2]|0,c[w>>2]|0);while(1){if(!((so(c[r>>2]|0,c[u>>2]|0,c[v>>2]|0)|0)!=0^1))break;if(c[l>>2]|0){A=27;break}Sn(c[u>>2]|0,c[u>>2]|0,2)}if((A|0)==27)Ee(39251,287,39503);c[p>>2]=Fp(c[k>>2]|0)|0;yo(c[p>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;c[q>>2]=Fp(c[k>>2]|0)|0;yo(c[q>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if(sf(1)|0){Pe(39516,c[n>>2]|0);Pe(39522,c[o>>2]|0);Pe(39528,c[v>>2]|0);Pe(39534,c[w>>2]|0);Pe(39540,c[x>>2]|0);Pe(39546,c[t>>2]|0);Pe(39552,c[u>>2]|0);Pe(39558,c[p>>2]|0);Pe(39564,c[q>>2]|0)}Gp(c[r>>2]|0);Gp(c[s>>2]|0);Gp(c[v>>2]|0);Gp(c[x>>2]|0);Gp(c[w>>2]|0);c[c[h>>2]>>2]=c[t>>2];c[(c[h>>2]|0)+4>>2]=c[u>>2];c[(c[h>>2]|0)+12>>2]=c[n>>2];c[(c[h>>2]|0)+16>>2]=c[o>>2];c[(c[h>>2]|0)+8>>2]=c[p>>2];c[(c[h>>2]|0)+20>>2]=c[q>>2];if(fl(c[h>>2]|0,(c[k>>2]|0)-64|0)|0){Gp(c[c[h>>2]>>2]|0);c[c[h>>2]>>2]=0;Gp(c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2]|0)+4>>2]=0;Gp(c[(c[h>>2]|0)+12>>2]|0);c[(c[h>>2]|0)+12>>2]=0;Gp(c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=0;Gp(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0;Gp(c[(c[h>>2]|0)+20>>2]|0);c[(c[h>>2]|0)+20>>2]=0;Sg(39251,334,39503,0,39436);c[g>>2]=50;z=c[g>>2]|0;i=f;return z|0}else{c[g>>2]=0;z=c[g>>2]|0;i=f;return z|0}return 0}function jl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];Un(c[f>>2]|0,c[f>>2]|0,1);c[h>>2]=yp(c[f>>2]|0)|0;c[k>>2]=((so(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0)!=0^1)&1;Gp(c[h>>2]|0);Sn(c[f>>2]|0,c[f>>2]|0,1);i=d;return c[k>>2]|0}function kl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0;b=i;i=i+80|0;if((i|0)>=(j|0))U();d=b+32|0;e=b;f=b+68|0;g=b+64|0;h=b+40|0;c[f>>2]=a;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;a=c[f>>2]|0;c[e>>2]=h;c[e+4>>2]=h+4;c[e+8>>2]=h+8;c[e+12>>2]=h+12;c[e+16>>2]=h+16;c[e+20>>2]=h+20;c[e+24>>2]=0;c[g>>2]=_f(a,0,39180,e)|0;if((c[g>>2]|0)==0?(ll(h)|0)==0:0)c[g>>2]=7;Gp(c[h>>2]|0);Gp(c[h+4>>2]|0);Gp(c[h+8>>2]|0);Gp(c[h+12>>2]|0);Gp(c[h+16>>2]|0);Gp(c[h+20>>2]|0);if(!(sf(1)|0)){k=c[g>>2]|0;i=b;return k|0}c[d>>2]=ot(c[g>>2]|0)|0;Le(39665,d);k=c[g>>2]|0;i=b;return k|0}function ll(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=ip(c[(c[(c[d>>2]|0)+12>>2]|0)+4>>2]<<1)|0;Do(c[f>>2]|0,c[(c[d>>2]|0)+12>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[e>>2]=jo(c[f>>2]|0,c[c[d>>2]>>2]|0)|0;qp(c[f>>2]|0);i=b;return ((c[e>>2]|0)!=0^1)&1|0}function ml(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+128|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+24|0;h=e+16|0;k=e;l=e+116|0;m=e+112|0;n=e+108|0;o=e+104|0;p=e+64|0;q=e+56|0;r=e+48|0;s=e+44|0;t=e+40|0;u=e+36|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[q>>2]=0;c[r>>2]=0;c[r+4>>2]=0;c[s>>2]=0;yj(p,0,nl(c[n>>2]|0)|0);c[o>>2]=Aj(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(sf(1)|0)Pe(39687,c[q>>2]|0);if(c[q>>2]|0?c[(c[q>>2]|0)+12>>2]&4|0:0){c[o>>2]=79;break}m=c[n>>2]|0;c[k>>2]=r;c[k+4>>2]=r+4;c[k+8>>2]=0;c[o>>2]=_f(m,0,39177,k)|0;if(!(c[o>>2]|0)){if(sf(1)|0){Pe(39704,c[r>>2]|0);Pe(39721,c[r+4>>2]|0)}c[s>>2]=Ep(0)|0;gl(c[s>>2]|0,c[q>>2]|0,r);if(sf(1)|0)Pe(39738,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Rf(m,0,39775,g)|0;break}c[u>>2]=(((Zn(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=So(t,0,c[s>>2]|0,c[u>>2]|0)|0;if(!(c[o>>2]|0)){m=c[l>>2]|0;d=c[t>>2]|0;c[h>>2]=c[u>>2];c[h+4>>2]=d;c[o>>2]=Rf(m,0,39755,h)|0;hf(c[t>>2]|0)}}}while(0);Gp(c[s>>2]|0);Gp(c[r>>2]|0);Gp(c[r+4>>2]|0);Gp(c[q>>2]|0);zj(p);if(!(sf(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=ot(c[o>>2]|0)|0;Le(39795,f);v=c[o>>2]|0;i=e;return v|0}function nl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+16|0;e=b+12|0;f=b+8|0;g=b+4|0;h=b;c[e>>2]=a;c[f>>2]=Gf(c[e>>2]|0,39191,1)|0;if(!(c[f>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}c[g>>2]=Of(c[f>>2]|0,1,5)|0;Ef(c[f>>2]|0);if(c[g>>2]|0)l=Zn(c[g>>2]|0)|0;else l=0;c[h>>2]=l;Gp(c[g>>2]|0);c[d>>2]=c[h>>2];k=c[d>>2]|0;i=b;return k|0}function ol(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+192|0;if((i|0)>=(j|0))U();f=e+64|0;g=e+56|0;h=e+48|0;k=e+40|0;l=e+8|0;m=e;n=e+180|0;o=e+176|0;p=e+172|0;q=e+168|0;r=e+128|0;s=e+124|0;t=e+120|0;u=e+96|0;v=e+88|0;w=e+84|0;x=e+80|0;y=e+76|0;z=e+72|0;A=e+68|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;yj(r,1,nl(c[p>>2]|0)|0);c[q>>2]=wj(c[o>>2]|0,7704,s,r)|0;a:do if((c[q>>2]|0)==0?(o=c[s>>2]|0,c[m>>2]=t,c[m+4>>2]=0,c[q>>2]=_f(o,0,39187,m)|0,(c[q>>2]|0)==0):0){if(sf(1)|0)Pe(39817,c[t>>2]|0);if(c[t>>2]|0?c[(c[t>>2]|0)+12>>2]&4|0:0){c[q>>2]=79;break}o=c[p>>2]|0;c[l>>2]=u;c[l+4>>2]=u+4;c[l+8>>2]=u+8;c[l+12>>2]=u+12;c[l+16>>2]=u+16;c[l+20>>2]=u+20;c[l+24>>2]=0;c[q>>2]=_f(o,0,39834,l)|0;if(!(c[q>>2]|0)){if(sf(1)|0?(Pe(39844,c[u>>2]|0),Pe(39861,c[u+4>>2]|0),(Jg()|0)==0):0){Pe(39878,c[u+8>>2]|0);Pe(39895,c[u+12>>2]|0);Pe(39912,c[u+16>>2]|0);Pe(39929,c[u+20>>2]|0)}Yn(c[t>>2]|0);ko(c[t>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=Fp(c[r+4>>2]|0)|0;if(c[r+12>>2]&1|0)hl(c[v>>2]|0,c[t>>2]|0,u);else{c[w>>2]=Fp(c[r+4>>2]|0)|0;c[x>>2]=Fp(c[r+4>>2]|0)|0;c[y>>2]=Fp(c[r+4>>2]|0)|0;do{Hp(c[w>>2]|0,c[r+4>>2]|0,0);zo(c[w>>2]|0,c[w>>2]|0,c[u>>2]|0)}while((yo(c[x>>2]|0,c[w>>2]|0,c[u>>2]|0)|0)!=0^1);Fo(c[y>>2]|0,c[w>>2]|0,c[u+4>>2]|0,c[u>>2]|0);Eo(c[y>>2]|0,c[y>>2]|0,c[t>>2]|0,c[u>>2]|0);hl(c[v>>2]|0,c[y>>2]|0,u);Gp(c[y>>2]|0);c[y>>2]=0;Eo(c[v>>2]|0,c[v>>2]|0,c[x>>2]|0,c[u>>2]|0);Gp(c[w>>2]|0);c[w>>2]=0;Gp(c[x>>2]|0);c[x>>2]=0}if(sf(1)|0)Pe(39946,c[v>>2]|0);switch(c[r+8>>2]|0){case 1:{c[q>>2]=Sk(z,A,c[r+4>>2]|0,c[v>>2]|0)|0;qp(c[v>>2]|0);c[v>>2]=0;if(c[q>>2]|0)break a;o=c[n>>2]|0;d=c[z>>2]|0;c[k>>2]=c[A>>2];c[k+4>>2]=d;c[q>>2]=Rf(o,0,39963,k)|0;break a;break}case 3:{c[q>>2]=Zk(z,A,c[r+4>>2]|0,c[r+16>>2]|0,c[v>>2]|0,c[r+20>>2]|0,c[r+24>>2]|0)|0;qp(c[v>>2]|0);c[v>>2]=0;if(c[q>>2]|0)break a;o=c[n>>2]|0;d=c[z>>2]|0;c[h>>2]=c[A>>2];c[h+4>>2]=d;c[q>>2]=Rf(o,0,39963,h)|0;break a;break}default:{o=c[n>>2]|0;d=c[r+12>>2]&8|0?39974:49059;c[g>>2]=c[v>>2];c[q>>2]=Rf(o,0,d,g)|0;break a}}}}while(0);hf(c[z>>2]|0);Gp(c[v>>2]|0);Gp(c[u>>2]|0);Gp(c[u+4>>2]|0);Gp(c[u+8>>2]|0);Gp(c[u+12>>2]|0);Gp(c[u+16>>2]|0);Gp(c[u+20>>2]|0);Gp(c[t>>2]|0);Gp(c[w>>2]|0);Gp(c[x>>2]|0);Gp(c[y>>2]|0);Ef(c[s>>2]|0);zj(r);if(!(sf(1)|0)){B=c[q>>2]|0;i=e;return B|0}c[f>>2]=ot(c[q>>2]|0)|0;Le(39977,f);B=c[q>>2]|0;i=e;return B|0}function pl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+160|0;if((i|0)>=(j|0))U();f=e+48|0;g=e+40|0;h=e+32|0;k=e;l=e+148|0;m=e+144|0;n=e+140|0;o=e+136|0;p=e+96|0;q=e+88|0;r=e+64|0;s=e+60|0;t=e+56|0;u=e+52|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[q>>2]=0;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[s>>2]=0;yj(p,2,nl(c[n>>2]|0)|0);c[o>>2]=Aj(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(sf(1)|0)Pe(39999,c[q>>2]|0);if(c[q>>2]|0?c[(c[q>>2]|0)+12>>2]&4|0:0){c[o>>2]=79;break}m=c[n>>2]|0;c[k>>2]=r;c[k+4>>2]=r+4;c[k+8>>2]=r+8;c[k+12>>2]=r+12;c[k+16>>2]=r+16;c[k+20>>2]=r+20;c[k+24>>2]=0;c[o>>2]=_f(m,0,39834,k)|0;if(!(c[o>>2]|0)){if(sf(1)|0?(Pe(40015,c[r>>2]|0),Pe(40031,c[r+4>>2]|0),(Jg()|0)==0):0){Pe(40047,c[r+8>>2]|0);Pe(40063,c[r+12>>2]|0);Pe(40079,c[r+16>>2]|0);Pe(40095,c[r+20>>2]|0)}c[s>>2]=Ep(0)|0;hl(c[s>>2]|0,c[q>>2]|0,r);if(sf(1)|0)Pe(40111,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Rf(m,0,40147,g)|0;break}c[u>>2]=(((Zn(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=So(t,0,c[s>>2]|0,c[u>>2]|0)|0;if(!(c[o>>2]|0)){m=c[l>>2]|0;d=c[t>>2]|0;c[h>>2]=c[u>>2];c[h+4>>2]=d;c[o>>2]=Rf(m,0,40127,h)|0;hf(c[t>>2]|0)}}}while(0);Gp(c[s>>2]|0);Gp(c[r>>2]|0);Gp(c[r+4>>2]|0);Gp(c[r+8>>2]|0);Gp(c[r+12>>2]|0);Gp(c[r+16>>2]|0);Gp(c[r+20>>2]|0);Gp(c[q>>2]|0);zj(p);if(!(sf(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=ot(c[o>>2]|0)|0;Le(40167,f);v=c[o>>2]|0;i=e;return v|0}function ql(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+24|0;g=e+8|0;h=e;k=e+108|0;l=e+104|0;m=e+100|0;n=e+96|0;o=e+56|0;p=e+48|0;q=e+44|0;r=e+40|0;s=e+32|0;t=e+28|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[s+4>>2]=0;c[t>>2]=0;yj(o,3,nl(c[m>>2]|0)|0);c[n>>2]=Aj(c[l>>2]|0,r,o)|0;do if(!(c[n>>2]|0)){if(sf(1)|0)Pe(40188,c[r>>2]|0);if(c[r>>2]|0?c[(c[r>>2]|0)+12>>2]&4|0:0){c[n>>2]=79;break}c[n>>2]=vj(c[k>>2]|0,7704,p,0)|0;if((c[n>>2]|0)==0?(l=c[p>>2]|0,c[h>>2]=q,c[h+4>>2]=0,c[n>>2]=_f(l,0,39189,h)|0,(c[n>>2]|0)==0):0){if(sf(1)|0)Pe(40204,c[q>>2]|0);l=c[m>>2]|0;c[g>>2]=s;c[g+4>>2]=s+4;c[g+8>>2]=0;c[n>>2]=_f(l,0,39177,g)|0;if(!(c[n>>2]|0)){if(sf(1)|0){Pe(40220,c[s>>2]|0);Pe(40236,c[s+4>>2]|0)}c[t>>2]=Ep(0)|0;gl(c[t>>2]|0,c[q>>2]|0,s);if(sf(1)|0)Pe(40252,c[t>>2]|0);if(c[o+32>>2]|0){c[n>>2]=Bb[c[o+32>>2]&7](o,c[t>>2]|0)|0;break}else{l=(jo(c[t>>2]|0,c[r>>2]|0)|0)!=0;c[n>>2]=l?8:0;break}}}}while(0);Gp(c[t>>2]|0);Gp(c[s>>2]|0);Gp(c[s+4>>2]|0);Gp(c[r>>2]|0);Gp(c[q>>2]|0);Ef(c[p>>2]|0);zj(o);if(!(sf(1)|0)){u=c[n>>2]|0;i=e;return u|0}if(c[n>>2]|0)v=ot(c[n>>2]|0)|0;else v=49617;c[f>>2]=v;Le(40268,f);u=c[n>>2]|0;i=e;return u|0}function rl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+4|0;h=e;c[f>>2]=a;c[e+8>>2]=b;c[g>>2]=d;if((c[f>>2]|0)==1){c[h>>2]=sl(c[g>>2]|0)|0;k=c[h>>2]|0;i=e;return k|0}else{c[h>>2]=4;k=c[h>>2]|0;i=e;return k|0}return 0}function sl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;k=b+4|0;l=b;c[e>>2]=a;c[k>>2]=0;c[l>>2]=0;c[f>>2]=40289;c[h>>2]=Tf(k,0,40297,Tu(40297)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Tf(l,0,41327,Tu(41327)|0)|0;do if(!(c[h>>2]|0)){c[f>>2]=41644;c[h>>2]=Lj(c[k>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=tl(c[h>>2]|0)|0;break}c[f>>2]=41660;c[g>>2]=ul(c[l>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)==0?(c[f>>2]=41896,c[g>>2]=xl(c[l>>2]|0,c[k>>2]|0)|0,(c[g>>2]|0)==0):0){Ef(c[l>>2]|0);Ef(c[k>>2]|0);c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}}else c[g>>2]=tl(c[h>>2]|0)|0;while(0);Ef(c[l>>2]|0);Ef(c[k>>2]|0);if(c[e>>2]|0)Cb[c[e>>2]&1](49653,1,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;m=c[d>>2]|0;i=b;return m|0}function tl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=ot(c[d>>2]|0)|0;i=b;return a|0}function ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+24|0;f=d+20|0;g=d+16|0;h=d+12|0;k=d+8|0;l=d+4|0;m=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[k>>2]=0;c[l>>2]=0;c[m>>2]=0;c[h>>2]=Tf(k,0,41665,Tu(41665)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Tf(l,0,41741,Tu(41741)|0)|0;do if(!(c[h>>2]|0)){c[h>>2]=Jj(m,c[k>>2]|0,c[f>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=41840;break}c[h>>2]=Kj(c[m>>2]|0,c[k>>2]|0,c[e>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=41855;break}c[h>>2]=Kj(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0)|0;if((vl(c[h>>2]|0)|0)!=8)c[g>>2]=41869}else c[g>>2]=41817;while(0);Ef(c[m>>2]|0);Ef(c[l>>2]|0);Ef(c[k>>2]|0);i=d;return c[g>>2]|0}function vl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=wl(c[d>>2]|0)|0;i=b;return a|0}function wl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function xl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+64|0;if((i|0)>=(j|0))U();e=d;f=d+48|0;g=d+44|0;h=d+40|0;k=d+36|0;l=d+28|0;m=d+24|0;n=d+20|0;o=d+16|0;p=d+12|0;q=d+8|0;r=d+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=0;c[d+32>>2]=1e3;c[l>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[l>>2]=Ep(1e3)|0;Hp(c[l>>2]|0,1e3,0);c[e>>2]=c[l>>2];c[k>>2]=Rf(m,0,41904,e)|0;do if(!(c[k>>2]|0)){c[k>>2]=Gj(n,c[m>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=41934;break}c[o>>2]=yl(c[n>>2]|0)|0;if(!(c[o>>2]|0)){c[h>>2]=41957;break}if(!(jo(c[l>>2]|0,c[o>>2]|0)|0)){c[h>>2]=41990;break}c[k>>2]=Ij(p,c[n>>2]|0,c[g>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=42019;break}c[r>>2]=Gf(c[p>>2]|0,42034,0)|0;if(c[r>>2]|0)c[q>>2]=Of(c[r>>2]|0,1,5)|0;else c[q>>2]=Of(c[p>>2]|0,0,5)|0;if(!(c[q>>2]|0)){c[h>>2]=42040;break}if(jo(c[l>>2]|0,c[q>>2]|0)|0)c[h>>2]=42070}else c[h>>2]=41817;while(0);Ef(c[r>>2]|0);Gp(c[q>>2]|0);Ef(c[p>>2]|0);Gp(c[o>>2]|0);Ef(c[n>>2]|0);Ef(c[m>>2]|0);Gp(c[l>>2]|0);i=d;return c[h>>2]|0}function yl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+20|0;e=b+16|0;f=b+12|0;g=b+8|0;h=b+4|0;k=b;c[e>>2]=a;c[f>>2]=Gf(c[e>>2]|0,41949,0)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[g>>2]=Gf(c[f>>2]|0,39136,0)|0;Ef(c[f>>2]|0);if(!(c[g>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[h>>2]=Gf(c[g>>2]|0,39187,0)|0;Ef(c[g>>2]|0);if(c[h>>2]|0){c[k>>2]=Of(c[h>>2]|0,1,0)|0;Ef(c[h>>2]|0);c[d>>2]=c[k>>2];l=c[d>>2]|0;i=b;return l|0}else{c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}return 0}function zl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+20|0;f=d+16|0;g=d+12|0;h=d+8|0;k=d+4|0;l=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=Gf(c[g>>2]|0,39191,1)|0;if(!(c[h>>2]|0)){c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}c[k>>2]=Kf(c[h>>2]|0,1,l)|0;if(c[k>>2]|0){Oi(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0);Ef(c[h>>2]|0);c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}else{Ef(c[h>>2]|0);c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}return 0}function Al(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+4|0;c[e>>2]=a;c[d+8>>2]=b;c[f>>2]=c[e>>2];c[d>>2]=cg()|0;c[(c[f>>2]|0)+160>>2]=1732584193;c[(c[f>>2]|0)+164>>2]=-271733879;c[(c[f>>2]|0)+168>>2]=-1732584194;c[(c[f>>2]|0)+172>>2]=271733878;c[(c[f>>2]|0)+176>>2]=-1009589776;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=64;c[(c[f>>2]|0)+152>>2]=32;i=d;return}function Bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];do{c[l>>2]=Cl(c[k>>2]|0,c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+64;f=(c[h>>2]|0)+-1|0;c[h>>2]=f}while((f|0)!=0);i=e;return c[l>>2]|0} +function Ku(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){e=d;f=b;g=c;while(1){c=Rw(f|0,g|0,10,0)|0;h=e+-1|0;a[h>>0]=c|48;c=Vw(f|0,g|0,10,0)|0;if(g>>>0>9|(g|0)==9&f>>>0>4294967295){e=h;f=c;g=C}else{i=h;j=c;break}}k=i;l=j}else{k=d;l=b}if(!l)m=k;else{b=k;k=l;while(1){l=b+-1|0;a[l>>0]=(k>>>0)%10|0|48;if(k>>>0<10){m=l;break}else{b=l;k=(k>>>0)/10|0}}}return m|0}function Lu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=d&255;g=(e|0)!=0;a:do if(g&(b&3|0)!=0){h=d&255;i=e;j=b;while(1){if((a[j>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=j+1|0;o=i+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=o;j=n}else{q=o;r=p;s=n;m=5;break}}}else{q=e;r=g;s=b;m=5}while(0);if((m|0)==5)if(r){k=q;l=s;m=6}else{t=0;u=s}b:do if((m|0)==6){s=d&255;if((a[l>>0]|0)==s<<24>>24){t=k;u=l}else{q=R(f,16843009)|0;c:do if(k>>>0>3){r=k;b=l;while(1){g=c[b>>2]^q;if((g&-2139062144^-2139062144)&g+-16843009|0){v=r;w=b;break}g=b+4|0;e=r+-4|0;if(e>>>0>3){r=e;b=g}else{x=e;y=g;m=11;break c}}z=v;A=w}else{x=k;y=l;m=11}while(0);if((m|0)==11)if(!x){t=0;u=y;break}else{z=x;A=y}while(1){if((a[A>>0]|0)==s<<24>>24){t=z;u=A;break b}q=A+1|0;z=z+-1|0;if(!z){t=0;u=q;break}else A=q}}}while(0);return (t|0?u:0)|0}function Mu(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i;i=i+256|0;if((i|0)>=(j|0))U();h=g;do if((d|0)>(e|0)&(f&73728|0)==0){k=d-e|0;Sw(h|0,b|0,(k>>>0>256?256:k)|0)|0;l=c[a>>2]|0;m=(l&32|0)==0;if(k>>>0>255){n=d-e|0;o=k;p=l;l=m;while(1){if(l){Hu(h,256,a)|0;q=c[a>>2]|0}else q=p;o=o+-256|0;l=(q&32|0)==0;if(o>>>0<=255)break;else p=q}if(l)r=n&255;else break}else if(m)r=k;else break;Hu(h,r,a)|0}while(0);i=g;return}function Nu(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Ou(a,b,0)|0;return c|0}function Ou(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;do if(b){if(d>>>0<128){a[b>>0]=d;f=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;f=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;f=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;f=4;break}else{c[(fu()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function Pu(a,b){a=+a;b=b|0;return +(+Qu(a,b))}function Qu(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,l=0,m=0.0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Mw(d|0,e|0,52)|0;g=f&2047;switch(g|0){case 0:{if(a!=0.0){i=+Qu(a*18446744073709551616.0,b);j=i;l=(c[b>>2]|0)+-64|0}else{j=a;l=0}c[b>>2]=l;m=j;break}case 2047:{m=a;break}default:{c[b>>2]=g+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;m=+h[k>>3]}}return +m}function Ru(a){a=a|0;return 0}function Su(a){a=a|0;var b=0;b=(wu(a)|0)==0;return (b?a:a&95)|0}function Tu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=b;a:do if(!(d&3)){e=b;f=4}else{g=b;h=d;while(1){if(!(a[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){e=j;f=4;break}else g=j}}while(0);if((f|0)==4){f=e;while(1){e=c[f>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009))f=f+4|0;else{k=e;l=f;break}}if(!((k&255)<<24>>24))m=l;else{k=l;while(1){l=k+1|0;if(!(a[l>>0]|0)){m=l;break}else k=l}}i=m}return i-d|0}function Uu(a){a=a|0;return ((a|0)==223|(su(a)|0)!=(a|0))&1|0}function Vu(a){a=a|0;var b=0;if(a>>>0>=255)if((a+-57344|0)>>>0<8185|(a>>>0<8232|(a+-8234|0)>>>0<47062))b=1;else return ((a+-65532|0)>>>0>1048579|(a&65534|0)==65534)&1^1|0;else b=(a+1&127)>>>0>32&1;return b|0}function Wu(a,b){a=a|0;b=b|0;var c=0;do switch(b|0){case 1:{c=Xu(a)|0;break}case 2:{c=uu(a)|0;break}case 3:{c=nu(a)|0;break}case 4:{c=Zu(a)|0;break}case 5:{c=Yu(a)|0;break}case 6:{c=_u(a)|0;break}case 7:{c=Uu(a)|0;break}case 8:{c=Vu(a)|0;break}case 9:{c=$u(a)|0;break}case 10:{c=yu(a)|0;break}case 11:{c=av(a)|0;break}case 12:{c=bv(a)|0;break}default:c=0}while(0);return c|0}function Xu(a){a=a|0;var b=0;if(!(Yu(a)|0))b=(uu(a)|0)!=0;else b=1;return b&1|0}function Yu(a){a=a|0;return (a+-48|0)>>>0<10|0}function Zu(a){a=a|0;var b=0;if((a&-2|0)==8232|(a>>>0<32|(a+-127|0)>>>0<33))b=1;else b=(a+-65529|0)>>>0<3;return b&1|0}function _u(a){a=a|0;var b=0;if(!(yu(a)|0))b=(Vu(a)|0)!=0;else b=0;return b&1|0}function $u(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[66878+((d[66878+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=0;return b|0}function av(a){a=a|0;return (vu(a)|0)!=(a|0)|0}function bv(a){a=a|0;var b=0;if((a+-48|0)>>>0<10)b=1;else b=((a|32)+-97|0)>>>0<6;return b&1|0}function cv(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=a[b>>0]|0;a:do if(!(e<<24>>24)){f=0;g=c}else{h=e;i=e&255;j=b;k=c;while(1){l=a[k>>0]|0;if(!(l<<24>>24)){f=h;g=k;break a}if(h<<24>>24!=l<<24>>24?(l=qu(i)|0,(l|0)!=(qu(d[k>>0]|0)|0)):0){m=j;n=k;break}j=j+1|0;l=k+1|0;o=a[j>>0]|0;if(!(o<<24>>24)){f=0;g=l;break a}else{h=o;i=o&255;k=l}}f=a[m>>0]|0;g=n}while(0);n=qu(f&255)|0;return n-(qu(d[g>>0]|0)|0)|0}function dv(a,b){a=a|0;b=b|0;ev(a,b)|0;return a|0}function ev(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=d;a:do if(!((e^b)&3)){if(!(e&3)){f=d;g=b}else{h=b;i=d;while(1){j=a[i>>0]|0;a[h>>0]=j;if(!(j<<24>>24)){k=h;break a}j=i+1|0;l=h+1|0;if(!(j&3)){f=j;g=l;break}else{h=l;i=j}}}i=c[f>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009)){h=i;i=g;j=f;while(1){l=j+4|0;m=i+4|0;c[i>>2]=h;h=c[l>>2]|0;if((h&-2139062144^-2139062144)&h+-16843009|0){n=m;o=l;break}else{i=m;j=l}}}else{n=g;o=f}p=o;q=n;r=8}else{p=d;q=b;r=8}while(0);if((r|0)==8){r=a[p>>0]|0;a[q>>0]=r;if(!(r<<24>>24))k=q;else{r=q;q=p;while(1){q=q+1|0;p=r+1|0;b=a[q>>0]|0;a[p>>0]=b;if(!(b<<24>>24)){k=p;break}else r=p}}}return k|0}function fv(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function gv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=hv(a,b,c,-1,0)|0;return d|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,k=0,l=0,m=0;g=i;i=i+112|0;if((i|0)>=(j|0))U();h=g;c[h>>2]=0;k=h+4|0;c[k>>2]=a;c[h+44>>2]=a;l=h+8|0;c[l>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;iv(h,0);m=jv(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[k>>2]|0)+(c[h+108>>2]|0)-(c[l>>2]|0));i=g;return m|0}function iv(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 jv(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;a:do if(e>>>0>36){c[(fu()|0)>>2]=22;i=0;j=0}else{k=b+4|0;l=b+100|0;do{m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;n=d[m>>0]|0}else n=kv(b)|0}while((fv(n)|0)!=0);o=n;b:do switch(o|0){case 43:case 45:{m=((o|0)==45)<<31>>31;p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;q=d[p>>0]|0;r=m;break b}else{q=kv(b)|0;r=m;break b}break}default:{q=o;r=0}}while(0);m=(e|0)==0;do if((e|16|0)==16&(q|0)==48){p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;s=d[p>>0]|0}else s=kv(b)|0;if((s|32|0)!=120)if(m){t=8;u=s;v=46;break}else{w=e;x=s;v=32;break}p=c[k>>2]|0;if(p>>>0<(c[l>>2]|0)>>>0){c[k>>2]=p+1;y=d[p>>0]|0}else y=kv(b)|0;if((d[70047+y>>0]|0)>15){p=(c[l>>2]|0)==0;if(!p)c[k>>2]=(c[k>>2]|0)+-1;if(!f){iv(b,0);i=0;j=0;break a}if(p){i=0;j=0;break a}c[k>>2]=(c[k>>2]|0)+-1;i=0;j=0;break a}else{t=16;u=y;v=46}}else{p=m?10:e;if((d[70047+q>>0]|0)>>>0<p>>>0){w=p;x=q;v=32}else{if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;iv(b,0);c[(fu()|0)>>2]=22;i=0;j=0;break a}}while(0);if((v|0)==32)if((w|0)==10){m=x+-48|0;if(m>>>0<10){p=m;m=0;while(1){z=(m*10|0)+p|0;A=c[k>>2]|0;if(A>>>0<(c[l>>2]|0)>>>0){c[k>>2]=A+1;B=d[A>>0]|0}else B=kv(b)|0;p=B+-48|0;if(!(p>>>0<10&z>>>0<429496729)){D=z;E=B;break}else m=z}F=D;G=0;H=E}else{F=0;G=0;H=x}m=H+-48|0;if(m>>>0<10){p=F;z=G;A=m;m=H;while(1){I=Xw(p|0,z|0,10,0)|0;J=C;K=((A|0)<0)<<31>>31;L=~K;if(J>>>0>L>>>0|(J|0)==(L|0)&I>>>0>~A>>>0){M=A;N=p;O=z;P=m;break}L=Gw(I|0,J|0,A|0,K|0)|0;K=C;J=c[k>>2]|0;if(J>>>0<(c[l>>2]|0)>>>0){c[k>>2]=J+1;Q=d[J>>0]|0}else Q=kv(b)|0;J=Q+-48|0;if(J>>>0<10&(K>>>0<429496729|(K|0)==429496729&L>>>0<2576980378)){p=L;z=K;A=J;m=Q}else{M=J;N=L;O=K;P=Q;break}}if(M>>>0>9){S=O;T=N;U=r}else{V=10;W=N;X=O;Y=P;v=72}}else{S=G;T=F;U=r}}else{t=w;u=x;v=46}c:do if((v|0)==46){if(!(t+-1&t)){m=a[70303+((t*23|0)>>>5&7)>>0]|0;A=a[70047+u>>0]|0;z=A&255;if(z>>>0<t>>>0){p=z;z=0;while(1){K=p|z<<m;L=c[k>>2]|0;if(L>>>0<(c[l>>2]|0)>>>0){c[k>>2]=L+1;Z=d[L>>0]|0}else Z=kv(b)|0;L=a[70047+Z>>0]|0;p=L&255;if(!(K>>>0<134217728&p>>>0<t>>>0)){_=K;$=L;aa=Z;break}else z=K}ba=$;ca=0;da=_;ea=aa}else{ba=A;ca=0;da=0;ea=u}z=Mw(-1,-1,m|0)|0;p=C;if((ba&255)>>>0>=t>>>0|(ca>>>0>p>>>0|(ca|0)==(p|0)&da>>>0>z>>>0)){V=t;W=da;X=ca;Y=ea;v=72;break}else{fa=da;ga=ca;ha=ba}while(1){K=Pw(fa|0,ga|0,m|0)|0;L=C;J=ha&255|K;K=c[k>>2]|0;if(K>>>0<(c[l>>2]|0)>>>0){c[k>>2]=K+1;ia=d[K>>0]|0}else ia=kv(b)|0;ha=a[70047+ia>>0]|0;if((ha&255)>>>0>=t>>>0|(L>>>0>p>>>0|(L|0)==(p|0)&J>>>0>z>>>0)){V=t;W=J;X=L;Y=ia;v=72;break c}else{fa=J;ga=L}}}z=a[70047+u>>0]|0;p=z&255;if(p>>>0<t>>>0){m=p;p=0;while(1){A=m+(R(p,t)|0)|0;L=c[k>>2]|0;if(L>>>0<(c[l>>2]|0)>>>0){c[k>>2]=L+1;ja=d[L>>0]|0}else ja=kv(b)|0;L=a[70047+ja>>0]|0;m=L&255;if(!(A>>>0<119304647&m>>>0<t>>>0)){ka=A;la=L;ma=ja;break}else p=A}na=la;oa=ka;pa=0;qa=ma}else{na=z;oa=0;pa=0;qa=u}if((na&255)>>>0<t>>>0){p=Vw(-1,-1,t|0,0)|0;m=C;A=pa;L=oa;J=na;K=qa;while(1){if(A>>>0>m>>>0|(A|0)==(m|0)&L>>>0>p>>>0){V=t;W=L;X=A;Y=K;v=72;break c}I=Xw(L|0,A|0,t|0,0)|0;ra=C;sa=J&255;if(ra>>>0>4294967295|(ra|0)==-1&I>>>0>~sa>>>0){V=t;W=L;X=A;Y=K;v=72;break c}ta=Gw(sa|0,0,I|0,ra|0)|0;ra=C;I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;ua=d[I>>0]|0}else ua=kv(b)|0;J=a[70047+ua>>0]|0;if((J&255)>>>0>=t>>>0){V=t;W=ta;X=ra;Y=ua;v=72;break}else{A=ra;L=ta;K=ua}}}else{V=t;W=oa;X=pa;Y=qa;v=72}}while(0);if((v|0)==72)if((d[70047+Y>>0]|0)>>>0<V>>>0){do{K=c[k>>2]|0;if(K>>>0<(c[l>>2]|0)>>>0){c[k>>2]=K+1;va=d[K>>0]|0}else va=kv(b)|0}while((d[70047+va>>0]|0)>>>0<V>>>0);c[(fu()|0)>>2]=34;S=h;T=g;U=(g&1|0)==0&0==0?r:0}else{S=X;T=W;U=r}if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;if(!(S>>>0<h>>>0|(S|0)==(h|0)&T>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(U|0)!=0)){c[(fu()|0)>>2]=34;K=Gw(g|0,h|0,-1,-1)|0;i=C;j=K;break}if(S>>>0>h>>>0|(S|0)==(h|0)&T>>>0>g>>>0){c[(fu()|0)>>2]=34;i=h;j=g;break}}K=((U|0)<0)<<31>>31;L=Fw(T^U|0,S^K|0,U|0,K|0)|0;i=C;j=L}while(0);C=i;return j|0}function kv(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=b+104|0;f=c[e>>2]|0;if((f|0)!=0?(c[b+108>>2]|0)>=(f|0):0)g=4;else{f=lv(b)|0;if((f|0)>=0){h=c[e>>2]|0;e=c[b+8>>2]|0;if(h){i=c[b+4>>2]|0;j=h-(c[b+108>>2]|0)|0;h=e;if((e-i|0)<(j|0)){k=h;g=9}else{c[b+100>>2]=i+(j+-1);l=h}}else{k=e;g=9}if((g|0)==9){c[b+100>>2]=e;l=k}k=b+4|0;if(!l)m=c[k>>2]|0;else{e=c[k>>2]|0;k=b+108|0;c[k>>2]=l+1-e+(c[k>>2]|0);m=e}e=m+-1|0;if((d[e>>0]|0|0)==(f|0))n=f;else{a[e>>0]=f;n=f}}else g=4}if((g|0)==4){c[b+100>>2]=0;n=-1}return n|0}function lv(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b;if((c[a+8>>2]|0)==0?(mv(a)|0)!=0:0)f=-1;else if((sb[c[a+32>>2]&63](a,e,1)|0)==1)f=d[e>>0]|0;else f=-1;i=b;return f|0}function mv(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=b+20|0;d=b+44|0;if((c[e>>2]|0)>>>0>(c[d>>2]|0)>>>0)sb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[e>>2]=0;e=c[b>>2]|0;if(e&20)if(!(e&4))f=-1;else{c[b>>2]=e|32;f=-1}else{e=c[d>>2]|0;c[b+8>>2]=e;c[b+4>>2]=e;f=0}return f|0}function nv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;c[f>>2]=d;d=ov(a,b,f)|0;i=e;return d|0}function ov(a,b,c){a=a|0;b=b|0;c=c|0;return Du(a,2147483647,b,c)|0}function pv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;c[f>>2]=d;d=Fu(a,b,f)|0;i=e;return d|0}function qv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((c[f+76>>2]|0)>-1)g=Ru(f)|0;else g=0;h=e+-1|0;if((e|0)<2){e=f+74|0;i=a[e>>0]|0;a[e>>0]=i+255|i;if(g|0)ju(f);if(!h){a[b>>0]=0;j=b}else j=0}else{a:do if(h){i=f+4|0;e=f+8|0;k=h;l=b;while(1){m=c[i>>2]|0;n=m;o=(c[e>>2]|0)-n|0;p=Lu(m,10,o)|0;q=(p|0)==0;r=q?o:1-n+p|0;p=r>>>0<k>>>0;n=p?r:k;Ow(l|0,m|0,n|0)|0;m=(c[i>>2]|0)+n|0;c[i>>2]=m;r=l+n|0;o=k-n|0;if(!(q&p)){s=r;t=17;break a}if(m>>>0>=(c[e>>2]|0)>>>0){p=lv(f)|0;if((p|0)<0){u=r;break}else v=p}else{c[i>>2]=m+1;v=d[m>>0]|0}k=o+-1|0;o=r+1|0;a[r>>0]=v;if(!((k|0)!=0&(v&255|0)!=10)){s=o;t=17;break a}else l=o}if((u|0)!=(b|0)?(c[f>>2]&16|0)!=0:0){s=u;t=17}else w=0}else{s=b;t=17}while(0);if((t|0)==17)if(!b)w=0;else{a[s>>0]=0;w=b}if(!g)j=w;else{ju(f);j=w}}return j|0}function rv(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!e)f=0;else{g=a[b>>0]|0;a:do if(!(g<<24>>24)){h=0;i=c}else{j=e;k=g;l=b;m=c;while(1){j=j+-1|0;n=a[m>>0]|0;if(!(k<<24>>24==n<<24>>24&((j|0)!=0&n<<24>>24!=0))){h=k;i=m;break a}l=l+1|0;n=m+1|0;k=a[l>>0]|0;if(!(k<<24>>24)){h=0;i=n;break}else m=n}}while(0);f=(h&255)-(d[i>>0]|0)|0}return f|0}function sv(a){a=a|0;return Uw(a|0)|0}function tv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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;e=i;i=i+192|0;if((i|0)>=(j|0))U();f=e+152|0;g=e+136|0;h=e+120|0;k=e+104|0;l=e+96|0;m=e+80|0;n=e+64|0;o=e+48|0;p=e+32|0;q=e+16|0;r=e;s=e+176|0;t=e+168|0;c[s>>2]=d;d=(c[s>>2]|0)+(4-1)&~(4-1);u=c[d>>2]|0;c[s>>2]=d+4;d=(b|0)==4?u|32768:u;a:do switch(b|0){case 14:{c[r>>2]=a;c[r+4>>2]=14;c[r+8>>2]=d;v=eu(sa(221,r|0)|0)|0;break}case 9:{c[q>>2]=a;c[q+4>>2]=16;c[q+8>>2]=t;u=sa(221,q|0)|0;switch(u|0){case -22:{c[p>>2]=a;c[p+4>>2]=9;c[p+8>>2]=d;w=sa(221,p|0)|0;break}case 0:{s=c[t+4>>2]|0;w=(c[t>>2]|0)==2?0-s|0:s;break}default:w=eu(u)|0}v=w;break}case 1030:{c[o>>2]=a;c[o+4>>2]=1030;c[o+8>>2]=d;u=sa(221,o|0)|0;if((u|0)!=-22){if((u|0)>-1){c[n>>2]=u;c[n+4>>2]=2;c[n+8>>2]=1;sa(221,n|0)|0}v=eu(u)|0;break a}c[m>>2]=a;c[m+4>>2]=1030;c[m+8>>2]=0;u=sa(221,m|0)|0;if((u|0)==-22){c[k>>2]=a;c[k+4>>2]=0;c[k+8>>2]=d;s=sa(221,k|0)|0;if((s|0)>-1){c[h>>2]=s;c[h+4>>2]=2;c[h+8>>2]=1;sa(221,h|0)|0}v=eu(s)|0;break a}else{if((u|0)>-1){c[l>>2]=u;wa(6,l|0)|0}v=eu(-22)|0;break a}break}default:if((b+-12|0)>>>0<5){c[g>>2]=a;c[g+4>>2]=b;c[g+8>>2]=d;v=eu(sa(221,g|0)|0)|0;break a}else{c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;v=eu(sa(221,f|0)|0)|0;break a}}while(0);i=e;return v|0}function uv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=wa(6,d|0)|0;d=eu((a|0)==-4?-115:a)|0;i=b;return d|0}function vv(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:do if(!d)e=0;else{f=d;g=b;h=c;while(1){i=a[g>>0]|0;j=a[h>>0]|0;if(i<<24>>24!=j<<24>>24){k=i;l=j;break}f=f+-1|0;if(!f){e=0;break a}else{g=g+1|0;h=h+1|0}}e=(k&255)-(l&255)|0}while(0);return e|0}function wv(a){a=a|0;return Uw(a|0)|0}function xv(a,b,c){a=a|0;b=b|0;c=c|0;yv(a,b,c)|0;return a|0}function yv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;f=d;do if(!((f^b)&3)){g=(e|0)!=0;a:do if(g&(f&3|0)!=0){h=e;i=d;j=b;while(1){k=a[i>>0]|0;a[j>>0]=k;if(!(k<<24>>24)){l=h;m=i;n=j;break a}k=h+-1|0;o=i+1|0;p=j+1|0;q=(k|0)!=0;if(q&(o&3|0)!=0){h=k;i=o;j=p}else{r=k;s=o;t=p;u=q;v=5;break}}}else{r=e;s=d;t=b;u=g;v=5}while(0);if((v|0)==5)if(u){l=r;m=s;n=t}else{w=t;x=0;break}if(!(a[m>>0]|0)){w=n;x=l}else{b:do if(l>>>0>3){g=l;j=n;i=m;while(1){h=c[i>>2]|0;if((h&-2139062144^-2139062144)&h+-16843009|0){y=g;z=j;A=i;break b}c[j>>2]=h;h=g+-4|0;q=i+4|0;p=j+4|0;if(h>>>0>3){g=h;j=p;i=q}else{y=h;z=p;A=q;break}}}else{y=l;z=n;A=m}while(0);B=A;C=z;D=y;v=11}}else{B=d;C=b;D=e;v=11}while(0);c:do if((v|0)==11)if(!D){w=C;x=0}else{e=B;b=C;d=D;while(1){y=a[e>>0]|0;a[b>>0]=y;if(!(y<<24>>24)){w=b;x=d;break c}d=d+-1|0;y=b+1|0;if(!d){w=y;x=0;break}else{e=e+1|0;b=y}}}while(0);Sw(w|0,0,x|0)|0;return w|0}function zv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e;if(Lu(70312,a[d>>0]|0,4)|0){h=Av(d)|0|32768;c[g>>2]=b;c[g+4>>2]=h;c[g+8>>2]=438;h=eu(gb(5,g|0)|0)|0;if((h|0)>=0){g=Dv(h,d)|0;if(!g){c[f>>2]=h;wa(6,f|0)|0;k=0}else k=g}else k=0}else{c[(fu()|0)>>2]=22;k=0}i=e;return k|0}function Av(b){b=b|0;var c=0,d=0,e=0,f=0;c=(Bv(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(Bv(b,120)|0)==0;f=c?e:e|128;e=(Bv(b,101)|0)==0;b=e?f:f|524288;f=d<<24>>24==114?b:b|64;b=d<<24>>24==119?f|512:f;return (d<<24>>24==97?b|1024:b)|0}function Bv(b,c){b=b|0;c=c|0;var d=0;d=Cv(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function Cv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=d&255;a:do if(!e)f=b+(Tu(b)|0)|0;else{if(!(b&3))g=b;else{h=d&255;i=b;while(1){j=a[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){f=i;break a}j=i+1|0;if(!(j&3)){g=j;break}else i=j}}i=R(e,16843009)|0;h=c[g>>2]|0;b:do if(!((h&-2139062144^-2139062144)&h+-16843009)){j=h;k=g;while(1){l=j^i;if((l&-2139062144^-2139062144)&l+-16843009|0){m=k;break b}l=k+4|0;j=c[l>>2]|0;if((j&-2139062144^-2139062144)&j+-16843009|0){m=l;break}else k=l}}else m=g;while(0);i=d&255;h=m;while(1){k=a[h>>0]|0;if(k<<24>>24==0?1:k<<24>>24==i<<24>>24){f=h;break}else h=h+1|0}}while(0);return f|0}function Dv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;i=i+112|0;if((i|0)>=(j|0))U();f=e+40|0;g=e+24|0;h=e+16|0;k=e;l=e+52|0;m=a[d>>0]|0;if(Lu(70312,m<<24>>24,4)|0){n=yw(1144)|0;if(!n)o=0;else{p=n;q=p+112|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));if(!(Bv(d,43)|0))c[n>>2]=m<<24>>24==114?8:4;if(!(Bv(d,101)|0))r=m;else{c[k>>2]=b;c[k+4>>2]=2;c[k+8>>2]=1;sa(221,k|0)|0;r=a[d>>0]|0}if(r<<24>>24==97){c[h>>2]=b;c[h+4>>2]=3;r=sa(221,h|0)|0;if(!(r&1024)){c[g>>2]=b;c[g+4>>2]=4;c[g+8>>2]=r|1024;sa(221,g|0)|0}g=c[n>>2]|128;c[n>>2]=g;s=g}else s=c[n>>2]|0;c[n+60>>2]=b;c[n+44>>2]=n+120;c[n+48>>2]=1024;g=n+75|0;a[g>>0]=-1;if((s&8|0)==0?(c[f>>2]=b,c[f+4>>2]=21505,c[f+8>>2]=l,(_a(54,f|0)|0)==0):0)a[g>>0]=10;c[n+32>>2]=35;c[n+36>>2]=25;c[n+40>>2]=24;c[n+12>>2]=10;if(!(c[17730]|0))c[n+76>>2]=-1;eb(70944);g=c[17735]|0;c[n+56>>2]=g;if(g|0)c[g+52>>2]=n;c[17735]=n;$a(70944);o=n}}else{c[(fu()|0)>>2]=22;o=0}i=e;return o|0}function Ev(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a>>2]&1|0)!=0;if(!b){eb(70944);d=c[a+52>>2]|0;e=a+56|0;if(d|0)c[d+56>>2]=c[e>>2];f=c[e>>2]|0;if(f|0)c[f+52>>2]=d;if((c[17735]|0)==(a|0))c[17735]=f;$a(70944)}f=Fv(a)|0;d=wb[c[a+12>>2]&15](a)|0|f;f=c[a+92>>2]|0;if(f|0)zw(f);if(!b)zw(a);return d|0}function Fv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Gv(a)|0;break}d=(Ru(a)|0)==0;e=Gv(a)|0;if(d)b=e;else{ju(a);b=e}}else{if(!(c[3959]|0))f=0;else f=Fv(c[3959]|0)|0;eb(70944);e=c[17735]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=Ru(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=Gv(d)|0|e;else i=e;if(h|0)ju(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}$a(70944);b=g}while(0);return b|0}function Gv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+20|0;d=a+28|0;if((c[b>>2]|0)>>>0>(c[d>>2]|0)>>>0?(sb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)e=-1;else{f=a+4|0;g=c[f>>2]|0;h=a+8|0;i=c[h>>2]|0;if(g>>>0<i>>>0)sb[c[a+40>>2]&63](a,g-i|0,1)|0;c[a+16>>2]=0;c[d>>2]=0;c[b>>2]=0;c[h>>2]=0;c[f>>2]=0;e=0}return e|0}function Hv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+16|0;if((i|0)>=(j|0))U();h=g;a:do if(!e)k=0;else{do if(f|0){l=(b|0)==0?h:b;m=a[e>>0]|0;n=m&255;if(m<<24>>24>-1){c[l>>2]=n;k=m<<24>>24!=0&1;break a}m=n+-194|0;if(m>>>0<=50){n=e+1|0;o=c[15956+(m<<2)>>2]|0;if(f>>>0<4?o&-2147483648>>>((f*6|0)+-6|0)|0:0)break;m=d[n>>0]|0;n=m>>>3;if((n+-16|n+(o>>26))>>>0<=7){n=m+-128|o<<6;if((n|0)>=0){c[l>>2]=n;k=2;break a}o=d[e+2>>0]|0;if((o&192|0)==128){m=o+-128|n<<6;if((m|0)>=0){c[l>>2]=m;k=3;break a}n=d[e+3>>0]|0;if((n&192|0)==128){c[l>>2]=n+-128|m<<6;k=4;break a}}}}}while(0);c[(fu()|0)>>2]=84;k=-1}while(0);i=g;return k|0}function Iv(a,b){a=a|0;b=b|0;return (Jv(a,Tu(a)|0,1,b)|0)+-1|0}function Jv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=R(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Ru(e)|0)==0;h=Hu(a,f,e)|0;if(g)i=h;else{ju(e);i=h}}else i=Hu(a,f,e)|0;if((i|0)==(f|0))j=d;else j=(i>>>0)/(b>>>0)|0;return j|0}function Kv(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=za(20,a|0)|0;i=a;return b|0}function Lv(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=a;c[e+4>>2]=b;b=eu(Za(33,e|0)|0)|0;i=d;return b|0}function Mv(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(Ru(a)|0)==0;d=(c[a>>2]|0)>>>4&1;if(b)e=d;else e=d}else e=(c[a>>2]|0)>>>4&1;return e|0}function Nv(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=b;e=70316;f=d+15|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(!c){a[b+14>>0]=48;a[b+15>>0]=0}else{e=14;d=c;while(1){f=e+1|0;if(d>>>0<10){g=f;break}else{e=f;d=(d>>>0)/10|0}}a[b+g>>0]=0;d=c;c=g;while(1){c=c+-1|0;a[b+c>>0]=(d>>>0)%10|0|48;if(d>>>0<10)break;else d=(d>>>0)/10|0}}return}function Ov(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+40|0;f=d+8|0;g=d;c[g>>2]=a;c[g+4>>2]=b;h=Ka(197,g|0)|0;if((h|0)==-9?(c[f>>2]=a,c[f+4>>2]=1,(sa(221,f|0)|0)>=0):0){Nv(f,a);c[e>>2]=f;c[e+4>>2]=b;k=eu(La(195,e|0)|0)|0}else k=eu(h)|0;i=d;return k|0}function Pv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+32|0;if((i|0)>=(j|0))U();h=g;c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=d;c[h+12>>2]=e;c[h+16>>2]=f;f=eu(ob(142,h|0)|0)|0;i=g;return f|0}function Qv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=eu(hb(4,f|0)|0)|0;i=e;return d|0}function Rv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=eu(cb(3,f|0)|0)|0;i=e;return d|0}function Sv(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+32|0;if((i|0)>=(j|0))U();f=e;g=e+16|0;c[g>>2]=d;d=(c[g>>2]|0)+(4-1)&~(4-1);h=c[d>>2]|0;c[g>>2]=d+4;c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=h;h=eu(gb(5,f|0)|0)|0;i=e;return h|0}function Tv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=eu(bb(10,d|0)|0)|0;i=b;return a|0}function Uv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+32|0;if((i|0)>=(j|0))U();g=f;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=e;c[g+12>>2]=a;e=g+16|0;c[e>>2]=0;d=g+20|0;c[d>>2]=0;switch(a|0){case 208:case 203:case 213:{c[e>>2]=1;break}default:{}}Zv(8,g);g=c[d>>2]|0;if(!g)h=0;else{c[(fu()|0)>>2]=g;h=-1}i=f;return h|0}function Vv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+32|0;if((i|0)>=(j|0))U();d=b+16|0;e=b;f=a+20|0;do if(!(c[f>>2]|0)){if((c[a+16>>2]|0?(g=c[a>>2]|0,(g|0)>-1):0)?(g|0)!=(Wv()|0):0){c[d>>2]=c[178];c[d+4>>2]=c[179];c[d+8>>2]=c[180];c[d+12>>2]=c[181];Xv(6,e)|0;g=Yv(6,d)|0;c[f>>2]=0-g;if(!((g|0)!=0?(c[17733]|0)!=0:0)){c[f>>2]=1;Yv(6,e)|0}break}c[f>>2]=1}while(0);i=b;return}function Wv(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=Na(199,a|0)|0;i=a;return b|0}function Xv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;g=d+24|0;c[f>>2]=0;c[f+4>>2]=a;c[f+8>>2]=0;c[f+12>>2]=b;h=eu(db(340,f|0)|0)|0;if(!h){f=b;if((c[f>>2]|0)==-1?(c[f+4>>2]|0)==-1:0){f=b;c[f>>2]=-1;c[f+4>>2]=-1}f=b+8|0;k=f;if((c[k>>2]|0)==-1?(c[k+4>>2]|0)==-1:0){k=f;c[k>>2]=-1;c[k+4>>2]=-1;l=0}else l=0}else if((c[(fu()|0)>>2]|0)==38){c[e>>2]=a;c[e+4>>2]=g;if((eu(Ja(191,e|0)|0)|0)>=0){e=c[g>>2]|0;a=(e|0)==-1;k=b;c[k>>2]=a?-1:e;c[k+4>>2]=a?-1:0;k=c[g+4>>2]|0;g=(k|0)==-1;e=b+8|0;f=e;c[f>>2]=g?-1:k;c[f+4>>2]=g?-1:0;if(a){a=b;c[a>>2]=-1;c[a+4>>2]=-1}if(g){g=e;c[g>>2]=-1;c[g+4>>2]=-1;l=0}else l=0}else l=-1}else l=h;i=d;return l|0}function Yv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d;g=d+24|0;c[f>>2]=0;c[f+4>>2]=a;c[f+8>>2]=b;c[f+12>>2]=0;h=db(340,f|0)|0;if((h|0)==-38){f=b;k=c[f>>2]|0;l=c[f+4>>2]|0;f=l>>>0<0|(l|0)==0&k>>>0<4294967295;l=f?k:-1;c[g>>2]=l;l=b+8|0;b=c[l>>2]|0;k=c[l+4>>2]|0;l=k>>>0<0|(k|0)==0&b>>>0<4294967295;k=l?b:-1;c[g+4>>2]=k;c[e>>2]=a;c[e+4>>2]=g;m=Ua(75,e|0)|0}else m=h;i=d;return m|0}function Zv(a,b){a=a|0;b=b|0;ub[a&15](b);return}function _v(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=kb(201,a|0)|0;i=a;return b|0}function $v(a){a=a|0;return Uv(213,a,0,0)|0}function aw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=a;c[e+4>>2]=0;c[e+8>>2]=b;c[e+12>>2]=((b|0)<0)<<31>>31;b=eu(Ma(194,e|0)|0)|0;i=d;return b|0}function bw(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=ua(64,a|0)|0;i=a;return b|0}function cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;do{c[e>>2]=a;c[e+4>>2]=b;f=va(63,e|0)|0}while((f|0)==-16);g=f;e=eu(g)|0;i=d;return e|0}function dw(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,k=0,l=0,m=0,n=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h;do if((g&4095|0)==0&(((g|0)<0)<<31>>31&-4096|0)==0){if(b>>>0>2147483646){c[(fu()|0)>>2]=12;l=-1;break}m=(e&16|0)!=0;if(m)ew(-1);c[k>>2]=a;c[k+4>>2]=b;c[k+8>>2]=d;c[k+12>>2]=e;c[k+16>>2]=f;c[k+20>>2]=g>>12;n=eu(Ia(192,k|0)|0)|0;if(m){fw();l=n}else l=n}else{c[(fu()|0)>>2]=22;l=-1}while(0);i=h;return l|0}function ew(a){a=a|0;return}function fw(){return}function gw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;ew(-1);c[e>>2]=a;c[e+4>>2]=b;b=eu(Ta(91,e|0)|0)|0;fw();i=d;return b|0}function hw(a){a=a|0;var b=0;b=70360;c[b>>2]=a+-1;c[b+4>>2]=0;return}function iw(){var a=0,b=0,d=0;a=70360;b=Xw(c[a>>2]|0,c[a+4>>2]|0,1284865837,1481765933)|0;a=Gw(b|0,C|0,1,0)|0;b=C;d=70360;c[d>>2]=a;c[d+4>>2]=b;d=Mw(a|0,b|0,33)|0;return d|0}function jw(a){a=a|0;eb(70964);kw(a);$a(70964);return}function kw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[4090]|0;if(!b)c[c[4091]>>2]=a;else{c[4124]=(b|0)==31|(b|0)==7?3:1;c[17743]=0;if((b|0)>0){d=c[4091]|0;e=0;f=a;a=0;do{g=Xw(f|0,e|0,1284865837,1481765933)|0;f=Gw(g|0,C|0,1,0)|0;e=C;c[d+(a<<2)>>2]=e;a=a+1|0}while((a|0)<(b|0));h=d}else h=c[4091]|0;c[h>>2]=c[h>>2]|1}return}function lw(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;eb(70964);a=c[4090]|0;if(!a){b=c[4091]|0;d=(R(c[b>>2]|0,1103515245)|0)+12345&2147483647;c[b>>2]=d;e=d}else{d=c[17743]|0;b=c[4091]|0;f=c[4124]|0;g=b+(f<<2)|0;h=(c[g>>2]|0)+(c[b+(d<<2)>>2]|0)|0;c[g>>2]=h;g=f+1|0;c[4124]=(g|0)==(a|0)?0:g;g=d+1|0;c[17743]=(g|0)==(a|0)?0:g;e=h>>>1}$a(70964);return e|0}function mw(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=b;while(1){b=c+1|0;if(!(fv(a[c>>0]|0)|0)){d=c;e=b;break}else c=b}c=a[d>>0]|0;switch(c<<24>>24|0){case 45:{f=1;g=5;break}case 43:{f=0;g=5;break}default:{h=d;i=c;j=0}}if((g|0)==5){h=e;i=a[e>>0]|0;j=f}f=(i<<24>>24)+-48|0;if(f>>>0<10){i=h;h=f;f=0;while(1){i=i+1|0;e=(f*10|0)-h|0;h=(a[i>>0]|0)+-48|0;if(h>>>0>=10){k=e;break}else f=e}}else k=0;return (j|0?k:0-k|0)|0}function nw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;c[e>>2]=a;c[e+4>>2]=b;b=eu(Xa(77,e|0)|0)|0;i=d;return b|0}function ow(a,b){a=a|0;b=b|0;return pw(a,b,(Tu(a)|0)+1|0)|0}function pw(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=c&255;c=d;while(1){if(!c){f=0;break}c=c+-1|0;d=b+c|0;if((a[d>>0]|0)==e<<24>>24){f=d;break}}return f|0}function qw(a){a=a|0;return (a+-48|0)>>>0<10|0}function rw(a,b){a=a|0;b=b|0;var d=0;if(!a)d=Aw(1,24)|0;else{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;d=b}return d|0}function sw(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0){d=b;do{zw(c[d>>2]|0);b=d;d=c[d+4>>2]|0;zw(b)}while((d|0)!=0)}zw(a);return}function tw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=a+16|0;a:do if(!(c[g>>2]|0)){h=a+12|0;i=c[h>>2]|0;do if(i>>>0<f>>>0){if(b|0)if(!d){c[g>>2]=1;j=0;break a}else{k=a+8|0;c[k>>2]=d;c[h>>2]=1024;l=k;m=d;n=d;o=1024;break}k=f<<3;p=k>>>0>1024?k:1024;k=yw(8)|0;if(!k){c[g>>2]=1;j=0;break a}q=yw(p)|0;c[k>>2]=q;r=q;if(!q){zw(k);c[g>>2]=1;j=0;break a}c[k+4>>2]=0;s=a+4|0;t=c[s>>2]|0;if(t|0)c[t+4>>2]=k;if(!(c[a>>2]|0))c[a>>2]=k;c[s>>2]=k;k=a+8|0;c[k>>2]=r;c[h>>2]=p;l=k;m=r;n=q;o=p}else{p=a+8|0;q=c[p>>2]|0;l=p;m=q;n=q;o=i}while(0);i=m+f&3;q=((i|0)==0?0:4-i|0)+f|0;c[l>>2]=n+q;c[h>>2]=o-q;if(!e)j=n;else{Sw(n|0,0,q|0)|0;j=n}}else j=0;while(0);return j|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,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,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0;g=i;i=i+16|0;if((i|0)>=(j|0))U();h=g;k=c[a+4>>2]|0;a=k+56|0;l=(c[a>>2]&8|0)==0?d:0;d=k+40|0;m=c[d>>2]|0;if((m|0)>0&(l|0)!=0){n=yw(m<<2)|0;if(!n)o=12;else{p=n;q=3}}else{p=0;q=3}if((q|0)==3){if(!(c[k+60>>2]|0)){c[h>>2]=0;n=f&1;m=f&2;r=c[a>>2]&4;if(!p)s=0;else s=c[d>>2]|0;t=s<<2;u=c[k+52>>2]|0;v=u<<3;w=v+8|0;x=t+12+v+(w+(R(t,u)|0)<<1)|0;y=yw(x)|0;if(!y){z=12;A=0}else{Sw(y|0,0,x|0)|0;x=y+t|0;B=x&3;C=x+((B|0)==0?0:4-B|0)|0;B=C+w|0;x=B&3;D=B+((x|0)==0?0:4-x|0)|0;x=D+w|0;w=x&3;B=x+((w|0)==0?0:4-w|0)|0;w=B+v|0;v=w&3;if((u|0)>0){x=0;E=w+((v|0)==0?0:4-v|0)|0;while(1){c[D+(x<<3)+4>>2]=E;v=E+t|0;c[C+(x<<3)+4>>2]=v;x=x+1|0;if((x|0)==(u|0)){F=0;break}else E=v+t|0}do{c[B+(F<<3)>>2]=-1;F=F+1|0}while((F|0)!=(u|0))}u=Hv(h,b,4)|0;if((u|0)<1)if((u|0)<0){G=0;H=1}else{I=1;q=201}else{I=u;q=201}a:do if((q|0)==201){u=k+8|0;F=(r|0)!=0;E=(s|0)>0;x=k+12|0;v=k+44|0;w=k+32|0;J=k+36|0;K=(s|0)==0;L=(n|0)==0;M=(s|0)<1;N=-1;O=0;P=0;Q=I;S=0;T=D;V=C;W=C;X=b+I|0;Y=y;while(1){if((N|0)<0){Z=c[u>>2]|0;_=Z+8|0;b:do if(!(c[_>>2]|0)){$=N;aa=O;ba=W}else{ca=(P|0)!=0;da=(S|0)==95;ea=(P|0)==0;fa=F&(S|0)==10;ga=L&(P|0)<1;ha=_;ia=N;ja=O;ka=W;la=Z;while(1){ma=ha;na=la;c:while(1){oa=na+12|0;if((c[B+(c[oa>>2]<<3)>>2]|0)>=(P|0)){pa=ia;qa=ja;ra=ka;sa=na;break}ta=na+20|0;ua=c[ta>>2]|0;if(!ua){va=ma;wa=oa;xa=na;q=236;break}d:do if(fa|(ga|(ua&1|0)==0)){if(ua&2|0?(ya=c[h>>2]|0,!((ya|m|0)==0|F&(ya|0)==10)):0)break;do if(ua&16|0){if(da)break d;if(Xu(S)|0)break d;ya=c[h>>2]|0;if((ya|0)==95)break;if(!(Xu(ya)|0))break d}while(0);ya=c[ta>>2]|0;if(!(ya&32))za=ya;else{if(da){ya=c[h>>2]|0;if((ya|0)==95)break;else Aa=ya}else{ya=(Xu(S)|0)==0;Ba=c[h>>2]|0;if(ya|(Ba|0)==95)break;else Aa=Ba}if(Xu(Aa)|0)break;za=c[ta>>2]|0}Ba=c[h>>2]|0;do if((Ba|0)!=0&(ca&(za&64|0)!=0)){if(da){Ca=Ba;Da=1}else{ya=(Xu(S)|0)!=0;Ca=c[h>>2]|0;Da=ya}if((Ca|0)==95)if(Da)break d;else break;else if(Da^(Xu(Ca)|0)!=0)break;else break d}while(0);if(!(c[ta>>2]&128)){va=ma;wa=oa;xa=na;q=236;break c}Ba=c[h>>2]|0;if(ea|(Ba|0)==0)break;if(da){Ea=Ba;Fa=1}else{Ba=(Xu(S)|0)!=0;Ea=c[h>>2]|0;Fa=Ba}if((Ea|0)==95)if(Fa){va=ma;wa=oa;xa=na;q=236;break c}else break;else if(Fa^(Xu(Ea)|0)!=0)break;else{va=ma;wa=oa;xa=na;q=236;break c}}while(0);ma=na+40|0;if(!(c[ma>>2]|0)){$=ia;aa=ja;ba=ka;break b}else na=na+32|0}if((q|0)==236){q=0;c[ka>>2]=c[va>>2];if(E)Sw(c[ka+4>>2]|0,-1,t|0)|0;na=c[xa+16>>2]|0;do if(na|0){ma=c[na>>2]|0;if((ma|0)<=-1)break;oa=ka+4|0;ta=ma;ma=na;do{if((ta|0)<(s|0))c[(c[oa>>2]|0)+(ta<<2)>>2]=P;ma=ma+4|0;ta=c[ma>>2]|0}while((ta|0)>-1)}while(0);na=(c[ka>>2]|0)!=(c[x>>2]|0);if(M|na){Ga=ka+4|0;Ha=na?ia:P;Ia=na?ja:1}else{na=ka+4|0;ta=c[na>>2]|0;ma=0;do{c[p+(ma<<2)>>2]=c[ta+(ma<<2)>>2];ma=ma+1|0}while((ma|0)!=(s|0));Ga=na;Ha=P;Ia=1}na=c[wa>>2]|0;c[B+(na<<3)>>2]=P;c[B+(na<<3)+4>>2]=Ga;pa=Ha;qa=Ia;ra=ka+8|0;sa=xa}ha=sa+40|0;if(!(c[ha>>2]|0)){$=pa;aa=qa;ba=ra;break}else{ia=pa;ja=qa;ka=ra;la=sa+32|0}}}while(0);c[ba>>2]=0;Z=c[h>>2]|0;if(!Z){Ja=$;break}else{Ka=Z;La=$;Ma=aa}}else{if(K){Ja=N;break}Z=c[h>>2]|0;if((W|0)!=(V|0)&(Z|0)!=0){Ka=Z;La=N;Ma=O}else{Ja=N;break}}Z=P+Q|0;_=Hv(h,X,4)|0;if((_|0)<1)if((_|0)<0){G=0;H=1;break a}else Na=1;else Na=_;_=X+Na|0;if((Ma|0)!=0&(c[v>>2]|0)!=0){if(!(c[V>>2]|0))Oa=T;else{la=c[J>>2]|0;ka=c[la>>2]|0;ja=(ka|0)>-1;ia=V;ha=T;while(1){da=ia+4|0;e:do if(ja){ea=la;ca=ka;ga=0;while(1){fa=c[ea+((ga|1)<<2)>>2]|0;if((ca|0)>=(s|0)){Pa=ha;break e}na=c[da>>2]|0;if((c[na+(fa<<2)>>2]|0)==(c[p+(fa<<2)>>2]|0)?(c[na+(ca<<2)>>2]|0)<(c[p+(ca<<2)>>2]|0):0){Pa=ha;break e}ga=ga+2|0;ea=c[J>>2]|0;ca=c[ea+(ga<<2)>>2]|0;if((ca|0)<=-1){Qa=na;break}}Ra=da;Sa=Qa;q=265}else{Ra=da;Sa=c[da>>2]|0;q=265}while(0);if((q|0)==265){q=0;c[ha>>2]=c[ia>>2];da=ha+4|0;ca=c[da>>2]|0;c[da>>2]=Sa;c[Ra>>2]=ca;Pa=ha+8|0}ia=ia+8|0;if(!(c[ia>>2]|0)){Oa=Pa;break}else ha=Pa}}c[Oa>>2]=0;Ta=0;Ua=T;Va=V}else{Ta=Ma;Ua=V;Va=T}ha=c[Ua>>2]|0;if(!ha){Wa=La;Xa=Ta;Ya=Va;Za=Y}else{ia=(Z|0)!=0;ka=(Ka|0)==95;la=(Z|0)==0;ja=F&(Ka|0)==10;ca=L&(Z|0)<1;da=ha;ha=La;ga=Ta;ea=Ua;na=Va;fa=Y;while(1){ma=da+8|0;if(!(c[ma>>2]|0)){_a=ha;$a=ga;ab=na;bb=fa}else{ta=ea+4|0;oa=fa;ua=ma;ma=ha;Ba=ga;ya=na;cb=da;while(1){f:do if((c[cb>>2]|0)>>>0>Ka>>>0){db=ma;eb=Ba;fb=ya;gb=oa}else{if((c[cb+4>>2]|0)>>>0<Ka>>>0){db=ma;eb=Ba;fb=ya;gb=oa;break}hb=cb+20|0;ib=c[hb>>2]|0;do if(ib|0){if(!(ja|(ca|(ib&1|0)==0))){db=ma;eb=Ba;fb=ya;gb=oa;break f}if(ib&2|0?(jb=c[h>>2]|0,!((jb|m|0)==0|F&(jb|0)==10)):0){db=ma;eb=Ba;fb=ya;gb=oa;break f}do if(ib&16|0){if(ka){db=ma;eb=Ba;fb=ya;gb=oa;break f}if(Xu(Ka)|0){db=ma;eb=Ba;fb=ya;gb=oa;break f}jb=c[h>>2]|0;if((jb|0)==95)break;if(!(Xu(jb)|0)){db=ma;eb=Ba;fb=ya;gb=oa;break f}}while(0);jb=c[hb>>2]|0;if(!(jb&32))kb=jb;else{if(ka){jb=c[h>>2]|0;if((jb|0)==95){db=ma;eb=Ba;fb=ya;gb=oa;break f}else lb=jb}else{jb=(Xu(Ka)|0)==0;mb=c[h>>2]|0;if(jb|(mb|0)==95){db=ma;eb=Ba;fb=ya;gb=oa;break f}else lb=mb}if(Xu(lb)|0){db=ma;eb=Ba;fb=ya;gb=oa;break f}kb=c[hb>>2]|0}mb=c[h>>2]|0;do if((mb|0)!=0&(ia&(kb&64|0)!=0)){if(ka){nb=mb;ob=1}else{jb=(Xu(Ka)|0)!=0;nb=c[h>>2]|0;ob=jb}if((nb|0)==95)if(ob){db=ma;eb=Ba;fb=ya;gb=oa;break f}else break;else if(ob^(Xu(nb)|0)!=0)break;else{db=ma;eb=Ba;fb=ya;gb=oa;break f}}while(0);do if(c[hb>>2]&128|0){mb=c[h>>2]|0;if(la|(mb|0)==0){db=ma;eb=Ba;fb=ya;gb=oa;break f}if(ka){pb=mb;qb=1}else{mb=(Xu(Ka)|0)!=0;pb=c[h>>2]|0;qb=mb}if((pb|0)==95)if(qb)break;else{db=ma;eb=Ba;fb=ya;gb=oa;break f}else if(qb^(Xu(pb)|0)!=0){db=ma;eb=Ba;fb=ya;gb=oa;break f}else break}while(0);mb=c[hb>>2]|0;do if(!(mb&4))rb=mb;else{if(c[a>>2]&2|0){rb=mb;break}if(!(Wu(Ka,c[cb+24>>2]|0)|0)){db=ma;eb=Ba;fb=ya;gb=oa;break f}rb=c[hb>>2]|0}while(0);do if(rb&4|0){if(!(c[a>>2]&2))break;mb=vu(Ka)|0;jb=cb+24|0;if(Wu(mb,c[jb>>2]|0)|0)break;mb=su(Ka)|0;if(!(Wu(mb,c[jb>>2]|0)|0)){db=ma;eb=Ba;fb=ya;gb=oa;break f}}while(0);if(!(c[hb>>2]&8))break;if(xw(c[cb+28>>2]|0,Ka,c[a>>2]&2)|0){db=ma;eb=Ba;fb=ya;gb=oa;break f}}while(0);if(E){hb=c[ta>>2]|0;ib=0;do{c[oa+(ib<<2)>>2]=c[hb+(ib<<2)>>2];ib=ib+1|0}while((ib|0)!=(s|0))}ib=c[cb+16>>2]|0;do if(ib|0){hb=c[ib>>2]|0;if((hb|0)>-1){sb=hb;tb=ib}else break;do{if((sb|0)<(s|0))c[oa+(sb<<2)>>2]=Z;tb=tb+4|0;sb=c[tb>>2]|0}while((sb|0)>-1)}while(0);ib=c[cb+12>>2]|0;hb=B+(ib<<3)|0;if((c[hb>>2]|0)>=(Z|0)){jb=c[B+(ib<<3)+4>>2]|0;mb=c[jb>>2]|0;if(!(vw(s,c[w>>2]|0,oa,mb)|0)){db=ma;eb=Ba;fb=ya;gb=oa;break}c[jb>>2]=oa;if((c[ua>>2]|0)!=(c[x>>2]|0)){db=ma;eb=Ba;fb=ya;gb=mb;break}if(E)ub=0;else{db=Z;eb=1;fb=ya;gb=mb;break}while(1){c[p+(ub<<2)>>2]=c[oa+(ub<<2)>>2];ub=ub+1|0;if((ub|0)==(s|0)){db=Z;eb=1;fb=ya;gb=mb;break f}}}mb=c[ua>>2]|0;c[ya>>2]=mb;jb=ya+4|0;vb=c[jb>>2]|0;c[jb>>2]=oa;c[hb>>2]=Z;c[B+(ib<<3)+4>>2]=jb;do if((mb|0)==(c[x>>2]|0)){if((ma|0)==-1){if(!E){wb=Z;xb=1;break}}else{if(!E){wb=ma;xb=Ba;break}if((c[oa>>2]|0)>(c[p>>2]|0)){wb=ma;xb=Ba;break}}yb=c[jb>>2]|0;zb=0;do{c[p+(zb<<2)>>2]=c[yb+(zb<<2)>>2];zb=zb+1|0}while((zb|0)<(s|0));wb=Z;xb=1}else{wb=ma;xb=Ba}while(0);db=wb;eb=xb;fb=ya+8|0;gb=vb}while(0);ua=cb+40|0;if(!(c[ua>>2]|0)){_a=db;$a=eb;ab=fb;bb=gb;break}else{oa=gb;ma=db;Ba=eb;ya=fb;cb=cb+32|0}}}ea=ea+8|0;da=c[ea>>2]|0;if(!da){Wa=_a;Xa=$a;Ya=ab;Za=bb;break}else{ha=_a;ga=$a;na=ab;fa=bb}}}c[Ya>>2]=0;N=Wa;O=Xa;P=Z;Q=Na;S=Ka;T=Ua;V=Va;W=Ya;X=_;Y=Za}G=Ja;H=Ja>>>31}while(0);zw(y);z=H;A=G}Ab=A;Bb=z}else{c[h>>2]=0;z=f&1;A=f&2;f=c[a>>2]&4;G=rw(0,0)|0;g:do if(G){H=tw(G,0,0,0,32)|0;if(!H){sw(G);Cb=12;Db=0;break}c[H+24>>2]=0;c[H+28>>2]=0;y=c[d>>2]|0;if(y){Ja=yw(y<<2)|0;if(!Ja){Eb=0;Fb=0;Gb=12;Hb=0;Ib=Ja}else{Jb=Ja;q=9}}else{Jb=0;q=9}h:do if((q|0)==9){Ja=c[k+28>>2]|0;if(Ja){Za=yw(Ja<<3)|0;if(!Za){Eb=0;Fb=Za;Gb=12;Hb=0;Ib=Jb;break}else Kb=Za}else Kb=0;Za=k+52|0;Ja=c[Za>>2]|0;if(Ja){Ya=yw(Ja<<2)|0;if(!Ya){Eb=0;Fb=Kb;Gb=12;Hb=Ya;Ib=Jb;break}else Lb=Ya}else Lb=0;Ya=k+8|0;Ja=k+12|0;Va=(p|0)==0;Ua=(p|0)!=0;Ka=k+32|0;Na=(f|0)!=0;Xa=(Jb|0)==0;Wa=(Kb|0)==0;bb=(Lb|0)==0;ab=(z|0)==0;$a=y;_a=-1;fb=1;eb=-1;db=H;gb=b;i:while(1){if(($a|0)>0){xb=$a;wb=0;while(1){c[Jb+(wb<<2)>>2]=-1;if(Va)Mb=xb;else{c[p+(wb<<2)>>2]=-1;Mb=c[d>>2]|0}wb=wb+1|0;if((wb|0)>=(Mb|0))break;else xb=Mb}}xb=c[Za>>2]|0;if((xb|0)>0)Sw(Lb|0,0,((xb|0)>1?xb:1)<<2|0)|0;xb=c[h>>2]|0;wb=fb+eb|0;s=Hv(h,gb,4)|0;if((s|0)<1)if((s|0)<0){Eb=0;Fb=Kb;Gb=1;Hb=Lb;Ib=Jb;break h}else Nb=1;else Nb=s;s=gb+Nb|0;B=c[h>>2]|0;ub=c[Ya>>2]|0;sb=ub+8|0;if(c[sb>>2]|0){tb=(wb|0)!=0;rb=(xb|0)==95;pb=(wb|0)==0;qb=Na&(xb|0)==10;nb=ab&(wb|0)<1;ob=sb;sb=0;kb=db;lb=0;m=ub;while(1){ub=m+20|0;Ta=c[ub>>2]|0;j:do if(Ta){if(!(qb|(nb|(Ta&1|0)==0))){Ob=sb;Pb=kb;Qb=lb;break}if(Ta&2|0?(La=c[h>>2]|0,!((La|A|0)==0|Na&(La|0)==10)):0){Ob=sb;Pb=kb;Qb=lb;break}do if(Ta&16|0){if(rb){Ob=sb;Pb=kb;Qb=lb;break j}if(Xu(xb)|0){Ob=sb;Pb=kb;Qb=lb;break j}La=c[h>>2]|0;if((La|0)==95)break;if(!(Xu(La)|0)){Ob=sb;Pb=kb;Qb=lb;break j}}while(0);vb=c[ub>>2]|0;if(!(vb&32))Rb=vb;else{if(rb){vb=c[h>>2]|0;if((vb|0)==95){Ob=sb;Pb=kb;Qb=lb;break}else Sb=vb}else{vb=(Xu(xb)|0)==0;La=c[h>>2]|0;if(vb|(La|0)==95){Ob=sb;Pb=kb;Qb=lb;break}else Sb=La}if(Xu(Sb)|0){Ob=sb;Pb=kb;Qb=lb;break}Rb=c[ub>>2]|0}La=c[h>>2]|0;do if((La|0)!=0&(tb&(Rb&64|0)!=0)){if(rb){Tb=La;Ub=1}else{vb=(Xu(xb)|0)!=0;Tb=c[h>>2]|0;Ub=vb}if((Tb|0)==95)if(Ub){Ob=sb;Pb=kb;Qb=lb;break j}else break;else if(Ub^(Xu(Tb)|0)!=0)break;else{Ob=sb;Pb=kb;Qb=lb;break j}}while(0);if(!(c[ub>>2]&128)){q=52;break}La=c[h>>2]|0;if(pb|(La|0)==0){Ob=sb;Pb=kb;Qb=lb;break}if(rb){Vb=La;Wb=1}else{La=(Xu(xb)|0)!=0;Vb=c[h>>2]|0;Wb=La}if((Vb|0)==95)if(Wb){q=52;break}else{Ob=sb;Pb=kb;Qb=lb;break}else if(Wb^(Xu(Vb)|0)!=0){Ob=sb;Pb=kb;Qb=lb;break}else{q=52;break}}else q=52;while(0);do if((q|0)==52){q=0;if(!lb){Ob=c[m+16>>2]|0;Pb=kb;Qb=c[ob>>2]|0;break}ub=kb+28|0;Ta=c[ub>>2]|0;if(!Ta){La=tw(G,0,0,0,32)|0;if(!La){q=56;break i}c[La+24>>2]=kb;c[La+28>>2]=0;vb=tw(G,0,0,0,c[d>>2]<<2)|0;c[La+20>>2]=vb;if(!vb){q=63;break i}c[ub>>2]=La;Xb=La}else Xb=Ta;c[Xb>>2]=wb;c[Xb+4>>2]=s;c[Xb+8>>2]=c[ob>>2];c[Xb+12>>2]=c[m+12>>2];c[Xb+16>>2]=c[h>>2];if((c[d>>2]|0)>0){Ta=c[Xb+20>>2]|0;La=0;do{c[Ta+(La<<2)>>2]=c[Jb+(La<<2)>>2];La=La+1|0}while((La|0)<(c[d>>2]|0))}La=c[m+16>>2]|0;if(!La){Ob=sb;Pb=Xb;Qb=lb;break}Ta=c[La>>2]|0;if((Ta|0)<=-1){Ob=sb;Pb=Xb;Qb=lb;break}ub=c[Xb+20>>2]|0;vb=Ta;Ta=La;do{Ta=Ta+4|0;c[ub+(vb<<2)>>2]=wb;vb=c[Ta>>2]|0}while((vb|0)>-1);Ob=sb;Pb=Xb;Qb=lb}while(0);ob=m+40|0;if(!(c[ob>>2]|0)){Yb=Ob;Zb=Pb;_b=Qb;break}else{sb=Ob;kb=Pb;lb=Qb;m=m+32|0}}if(Yb){m=c[Yb>>2]|0;if((m|0)>-1){lb=m;m=Yb;while(1){c[Jb+(lb<<2)>>2]=wb;kb=m+4|0;lb=c[kb>>2]|0;if((lb|0)<=-1){$b=kb;break}else m=kb}}else $b=Yb}else $b=0;if(!_b){ac=_a;bc=$b;cc=wb;dc=Nb;ec=Zb;fc=0;gc=s;q=174}else{hc=_a;ic=$b;jc=wb;kc=Nb;lc=Zb;mc=_b;nc=s;q=82}}else{ac=_a;bc=0;cc=wb;dc=Nb;ec=db;fc=0;gc=s;q=174}k:while(1){l:do if((q|0)==82){q=0;if((mc|0)==(c[Ja>>2]|0)){if((hc|0)>=(jc|0)){if(!(Ua&(hc|0)==(jc|0))){ac=hc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}if(!(vw(c[d>>2]|0,c[Ka>>2]|0,Jb,p)|0)){ac=hc;bc=ic;cc=hc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}}if(Va){ac=jc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}if((c[d>>2]|0)>0)oc=0;else{ac=jc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}while(1){c[p+(oc<<2)>>2]=c[Jb+(oc<<2)>>2];m=oc+1|0;if((m|0)<(c[d>>2]|0))oc=m;else{ac=jc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}}}m=mc+8|0;do if(!(c[m>>2]|0))q=97;else{if(!(c[mc+20>>2]&256)){q=97;break}lb=c[mc+24>>2]|0;ww(lb+1|0,Kb,c[a>>2]&-9,k,Jb,jc);kb=c[Kb+(lb<<3)>>2]|0;sb=c[Kb+(lb<<3)+4>>2]|0;lb=sb-kb|0;if(rv(b+kb|0,nc+-1|0,lb)|0){ac=hc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}ob=(sb|0)==(kb|0);kb=ob&1;sb=Lb+(c[mc+12>>2]<<2)|0;if(ob?c[sb>>2]|0:0){ac=hc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}c[sb>>2]=kb;kb=lb+-1|0;lb=nc+kb|0;sb=c[h>>2]|0;ob=jc+kc+kb|0;kb=Hv(h,lb,4)|0;if((kb|0)<1)if((kb|0)<0){pc=2;qc=hc;rc=ic;sc=ob;tc=kb;uc=lc;vc=mc;wc=lb;break l}else xc=1;else xc=kb;yc=ob;zc=xc;Ac=sb;Bc=lb+xc|0}while(0);if((q|0)==97){q=0;lb=c[h>>2]|0;if(!lb){ac=hc;bc=ic;cc=jc;dc=kc;ec=lc;fc=mc;gc=nc;q=174;continue k}sb=jc+kc|0;ob=Hv(h,nc,4)|0;if((ob|0)<1){if((ob|0)<0){pc=2;qc=hc;rc=ic;sc=sb;tc=ob;uc=lc;vc=mc;wc=nc;break}Cc=ob+1|0}else Cc=ob;yc=sb;zc=Cc;Ac=lb;Bc=nc+Cc|0}if(!(c[m>>2]|0)){ac=hc;bc=ic;cc=yc;dc=zc;ec=lc;fc=mc;gc=Bc;q=174;continue k}lb=(yc|0)!=0;sb=(Ac|0)==95;ob=(yc|0)==0;kb=Na&(Ac|0)==10;xb=ab&(yc|0)<1;rb=m;pb=0;tb=ic;nb=lc;qb=mc;m:while(1){n:do if((c[qb>>2]|0)>>>0>Ac>>>0){Dc=pb;Ec=tb;Fc=nb}else{if((c[qb+4>>2]|0)>>>0<Ac>>>0){Dc=pb;Ec=tb;Fc=nb;break}vb=qb+20|0;Ta=c[vb>>2]|0;do if(Ta|0){if(!(kb|(xb|(Ta&1|0)==0))){Dc=pb;Ec=tb;Fc=nb;break n}if(Ta&2|0?(ub=c[h>>2]|0,!((ub|A|0)==0|Na&(ub|0)==10)):0){Dc=pb;Ec=tb;Fc=nb;break n}do if(Ta&16|0){if(sb){Dc=pb;Ec=tb;Fc=nb;break n}if(Xu(Ac)|0){Dc=pb;Ec=tb;Fc=nb;break n}ub=c[h>>2]|0;if((ub|0)==95)break;if(!(Xu(ub)|0)){Dc=pb;Ec=tb;Fc=nb;break n}}while(0);ub=c[vb>>2]|0;if(!(ub&32))Gc=ub;else{if(sb){ub=c[h>>2]|0;if((ub|0)==95){Dc=pb;Ec=tb;Fc=nb;break n}else Hc=ub}else{ub=(Xu(Ac)|0)==0;La=c[h>>2]|0;if(ub|(La|0)==95){Dc=pb;Ec=tb;Fc=nb;break n}else Hc=La}if(Xu(Hc)|0){Dc=pb;Ec=tb;Fc=nb;break n}Gc=c[vb>>2]|0}La=c[h>>2]|0;do if((La|0)!=0&(lb&(Gc&64|0)!=0)){if(sb){Ic=La;Jc=1}else{ub=(Xu(Ac)|0)!=0;Ic=c[h>>2]|0;Jc=ub}if((Ic|0)==95)if(Jc){Dc=pb;Ec=tb;Fc=nb;break n}else break;else if(Jc^(Xu(Ic)|0)!=0)break;else{Dc=pb;Ec=tb;Fc=nb;break n}}while(0);do if(c[vb>>2]&128|0){La=c[h>>2]|0;if(ob|(La|0)==0){Dc=pb;Ec=tb;Fc=nb;break n}if(sb){Kc=La;Lc=1}else{La=(Xu(Ac)|0)!=0;Kc=c[h>>2]|0;Lc=La}if((Kc|0)==95)if(Lc)break;else{Dc=pb;Ec=tb;Fc=nb;break n}else if(Lc^(Xu(Kc)|0)!=0){Dc=pb;Ec=tb;Fc=nb;break n}else break}while(0);La=c[vb>>2]|0;do if(!(La&4))Mc=La;else{if(c[a>>2]&2|0){Mc=La;break}if(!(Wu(Ac,c[qb+24>>2]|0)|0)){Dc=pb;Ec=tb;Fc=nb;break n}Mc=c[vb>>2]|0}while(0);do if(Mc&4|0){if(!(c[a>>2]&2))break;La=vu(Ac)|0;ub=qb+24|0;if(Wu(La,c[ub>>2]|0)|0)break;La=su(Ac)|0;if(!(Wu(La,c[ub>>2]|0)|0)){Dc=pb;Ec=tb;Fc=nb;break n}}while(0);if(!(c[vb>>2]&8))break;if(xw(c[qb+28>>2]|0,Ac,c[a>>2]&2)|0){Dc=pb;Ec=tb;Fc=nb;break n}}while(0);if(!pb){Dc=c[rb>>2]|0;Ec=c[qb+16>>2]|0;Fc=nb;break}vb=nb+28|0;Ta=c[vb>>2]|0;if(!Ta){ub=tw(G,0,0,0,32)|0;if(!ub){Nc=tb;Oc=nb;q=148;break m}c[ub+24>>2]=nb;c[ub+28>>2]=0;La=tw(G,0,0,0,c[d>>2]<<2)|0;c[ub+20>>2]=La;if(!La){Pc=tb;Qc=nb;q=155;break m}c[vb>>2]=ub;Rc=ub}else Rc=Ta;c[Rc>>2]=yc;c[Rc+4>>2]=Bc;c[Rc+8>>2]=c[rb>>2];c[Rc+12>>2]=c[qb+12>>2];c[Rc+16>>2]=c[h>>2];if((c[d>>2]|0)>0){Ta=c[Rc+20>>2]|0;ub=0;do{c[Ta+(ub<<2)>>2]=c[Jb+(ub<<2)>>2];ub=ub+1|0}while((ub|0)<(c[d>>2]|0))}ub=c[qb+16>>2]|0;if(!ub){Dc=pb;Ec=tb;Fc=Rc;break}Ta=c[ub>>2]|0;if((Ta|0)<=-1){Dc=pb;Ec=tb;Fc=Rc;break}vb=c[Rc+20>>2]|0;La=Ta;Ta=ub;do{c[vb+(La<<2)>>2]=yc;Ta=Ta+4|0;La=c[Ta>>2]|0}while((La|0)>-1);Dc=pb;Ec=tb;Fc=Rc}while(0);rb=qb+40|0;if(!(c[rb>>2]|0)){Sc=Dc;Tc=Ec;Uc=Fc;q=170;break}else{pb=Dc;tb=Ec;nb=Fc;qb=qb+32|0}}if((q|0)==148){q=0;sw(G);if(!Xa)zw(Jb);if(!Wa)zw(Kb);if(bb){pc=1;qc=hc;rc=Nc;sc=yc;tc=zc;uc=Oc;vc=mc;wc=Bc;break}zw(Lb);pc=1;qc=hc;rc=Nc;sc=yc;tc=zc;uc=Oc;vc=mc;wc=Bc;break}else if((q|0)==155){q=0;sw(G);if(!Xa)zw(Jb);if(!Wa)zw(Kb);if(bb){pc=1;qc=hc;rc=Pc;sc=yc;tc=zc;uc=Qc;vc=mc;wc=Bc;break}zw(Lb);pc=1;qc=hc;rc=Pc;sc=yc;tc=zc;uc=Qc;vc=mc;wc=Bc;break}else if((q|0)==170){q=0;if(!Sc){ac=hc;bc=Tc;cc=yc;dc=zc;ec=Uc;fc=mc;gc=Bc;q=174;continue k}if(!Tc){pc=0;qc=hc;rc=0;sc=yc;tc=zc;uc=Uc;vc=Sc;wc=Bc;break}qb=c[Tc>>2]|0;if((qb|0)>-1){Vc=qb;Wc=Tc}else{pc=0;qc=hc;rc=Tc;sc=yc;tc=zc;uc=Uc;vc=Sc;wc=Bc;break}while(1){qb=Wc+4|0;c[Jb+(Vc<<2)>>2]=yc;Vc=c[qb>>2]|0;if((Vc|0)<=-1){pc=0;qc=hc;rc=qb;sc=yc;tc=zc;uc=Uc;vc=Sc;wc=Bc;break}else Wc=qb}}}else if((q|0)==174){q=0;qb=c[ec+24>>2]|0;if(!qb){if((ac|0)>-1|(c[h>>2]|0)==0){pc=27;qc=ac;rc=bc;sc=cc;tc=dc;uc=ec;vc=fc;wc=gc;break}c[h>>2]=B;pc=3;qc=ac;rc=bc;sc=cc;tc=dc;uc=ec;vc=fc;wc=s;break}nb=c[ec+8>>2]|0;if(c[nb+20>>2]&256|0)c[Lb+(c[ec+12>>2]<<2)>>2]=0;tb=c[ec>>2]|0;pb=c[ec+4>>2]|0;c[h>>2]=c[ec+16>>2];rb=c[d>>2]|0;if((rb|0)<=0){pc=0;qc=ac;rc=bc;sc=tb;tc=dc;uc=qb;vc=nb;wc=pb;break}sb=c[ec+20>>2]|0;ob=0;do{c[Jb+(ob<<2)>>2]=c[sb+(ob<<2)>>2];ob=ob+1|0}while((ob|0)!=(rb|0));pc=0;qc=ac;rc=bc;sc=tb;tc=dc;uc=qb;vc=nb;wc=pb}while(0);switch(pc|0){case 2:{Eb=0;Fb=Kb;Gb=1;Hb=Lb;Ib=Jb;break h;break}case 27:{Xc=qc;q=184;break i;break}case 0:{hc=qc;ic=rc;jc=sc;kc=tc;lc=uc;mc=vc;nc=wc;q=82;break}case 3:{break k;break}default:{Cb=12;Db=0;break g}}}$a=c[d>>2]|0;_a=qc;fb=tc;eb=wb;db=uc;gb=wc}if((q|0)==56){sw(G);if(!Xa)zw(Jb);if(!Wa)zw(Kb);if(bb){Cb=12;Db=0;break g}zw(Lb);Cb=12;Db=0;break g}else if((q|0)==63){sw(G);if(!Xa)zw(Jb);if(!Wa)zw(Kb);if(bb){Cb=12;Db=0;break g}zw(Lb);Cb=12;Db=0;break g}else if((q|0)==184){Eb=Xc;Fb=Kb;Gb=Xc>>>31;Hb=Lb;Ib=Jb;break}}while(0);sw(G);if(Ib|0)zw(Ib);if(Fb|0)zw(Fb);if(!Hb){Cb=Gb;Db=Eb}else{zw(Hb);Cb=Gb;Db=Eb}}else{Cb=12;Db=0}while(0);Ab=Db;Bb=Cb}if(!Bb)ww(l,e,c[a>>2]|0,k,p,Ab);if(!p)o=Bb;else{zw(p);o=Bb}}i=g;return o|0}function vw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a:do if((a|0)>0){f=0;while(1){g=c[d+(f<<2)>>2]|0;h=c[e+(f<<2)>>2]|0;if(!(c[b+(f<<2)>>2]|0)){if((g|0)<(h|0)){i=1;break a}if((g|0)>(h|0)){i=0;break a}}else{if((g|0)>(h|0)){i=1;break a}if((g|0)<(h|0)){i=0;break a}}f=f+1|0;if((f|0)>=(a|0)){i=0;break}}}else i=0;while(0);return i|0}function ww(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((d&8|0)==0&(g|0)>-1){d=c[e+16>>2]|0;h=e+28|0;i=c[h>>2]|0;j=(a|0)!=0;if(j&(i|0)!=0){k=e+48|0;e=0;do{l=c[d+(e*12|0)>>2]|0;if((l|0)==(c[k>>2]|0))m=g;else m=c[f+(l<<2)>>2]|0;l=b+(e<<3)|0;c[l>>2]=m;n=c[d+(e*12|0)+4>>2]|0;if((n|0)==(c[k>>2]|0))o=g;else o=c[f+(n<<2)>>2]|0;n=b+(e<<3)+4|0;c[n>>2]=o;if((m|0)==-1|(o|0)==-1){c[n>>2]=-1;c[l>>2]=-1}e=e+1|0;l=c[h>>2]|0}while(e>>>0<a>>>0&e>>>0<l>>>0);p=l}else p=i;if(j&(p|0)!=0){j=0;while(1){i=b+(j<<3)+4|0;e=c[d+(j*12|0)+8>>2]|0;if(e|0?(h=c[e>>2]|0,(h|0)>-1):0){o=b+(j<<3)|0;m=h;h=c[o>>2]|0;f=0;while(1){if((h|0)>=(c[b+(m<<3)>>2]|0)?(c[i>>2]|0)<=(c[b+(m<<3)+4>>2]|0):0)q=h;else{c[i>>2]=-1;c[o>>2]=-1;q=-1}f=f+1|0;m=c[e+(f<<2)>>2]|0;if((m|0)<=-1)break;else h=q}}h=j+1|0;if(h>>>0<a>>>0&h>>>0<p>>>0)j=h;else{r=h;break}}}else r=0}else r=0;if(r>>>0<a>>>0){j=r;do{c[b+(j<<3)>>2]=-1;c[b+(j<<3)+4>>2]=-1;j=j+1|0}while((j|0)!=(a|0))}return}function xw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=c[a>>2]|0;a:do if(!e)f=0;else{g=(d|0)==0;h=a;i=e;while(1){if(g){if(Wu(b,i)|0){f=1;break a}}else{j=su(b)|0;if(Wu(j,c[h>>2]|0)|0){f=1;break a}j=vu(b)|0;if(Wu(j,c[h>>2]|0)|0){f=1;break a}}h=h+4|0;i=c[h>>2]|0;if(!i){f=0;break}}}while(0);return f|0}function yw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;do if(a>>>0<245){e=a>>>0<11?16:a+11&-8;f=e>>>3;g=c[17744]|0;h=g>>>f;if(h&3|0){k=(h&1^1)+f|0;l=71016+(k<<1<<2)|0;m=l+8|0;n=c[m>>2]|0;o=n+8|0;p=c[o>>2]|0;do if((l|0)!=(p|0)){if(p>>>0<(c[17748]|0)>>>0)fb();q=p+12|0;if((c[q>>2]|0)==(n|0)){c[q>>2]=l;c[m>>2]=p;break}else fb()}else c[17744]=g&~(1<<k);while(0);p=k<<3;c[n+4>>2]=p|3;m=n+p+4|0;c[m>>2]=c[m>>2]|1;r=o;i=b;return r|0}m=c[17746]|0;if(e>>>0>m>>>0){if(h|0){p=2<<f;l=h<<f&(p|0-p);p=(l&0-l)+-1|0;l=p>>>12&16;q=p>>>l;p=q>>>5&8;s=q>>>p;q=s>>>2&4;t=s>>>q;s=t>>>1&2;u=t>>>s;t=u>>>1&1;v=(p|l|q|s|t)+(u>>>t)|0;t=71016+(v<<1<<2)|0;u=t+8|0;s=c[u>>2]|0;q=s+8|0;l=c[q>>2]|0;do if((t|0)!=(l|0)){if(l>>>0<(c[17748]|0)>>>0)fb();p=l+12|0;if((c[p>>2]|0)==(s|0)){c[p>>2]=t;c[u>>2]=l;w=c[17746]|0;break}else fb()}else{c[17744]=g&~(1<<v);w=m}while(0);m=(v<<3)-e|0;c[s+4>>2]=e|3;g=s+e|0;c[g+4>>2]=m|1;c[g+m>>2]=m;if(w|0){l=c[17749]|0;u=w>>>3;t=71016+(u<<1<<2)|0;f=c[17744]|0;h=1<<u;if(f&h){u=t+8|0;o=c[u>>2]|0;if(o>>>0<(c[17748]|0)>>>0)fb();else{x=u;y=o}}else{c[17744]=f|h;x=t+8|0;y=t}c[x>>2]=l;c[y+12>>2]=l;c[l+8>>2]=y;c[l+12>>2]=t}c[17746]=m;c[17749]=g;r=q;i=b;return r|0}g=c[17745]|0;if(g){m=(g&0-g)+-1|0;g=m>>>12&16;t=m>>>g;m=t>>>5&8;l=t>>>m;t=l>>>2&4;h=l>>>t;l=h>>>1&2;f=h>>>l;h=f>>>1&1;o=c[71280+((m|g|t|l|h)+(f>>>h)<<2)>>2]|0;h=(c[o+4>>2]&-8)-e|0;f=o;l=o;while(1){o=c[f+16>>2]|0;if(!o){t=c[f+20>>2]|0;if(!t){z=h;A=l;break}else B=t}else B=o;o=(c[B+4>>2]&-8)-e|0;t=o>>>0<h>>>0;h=t?o:h;f=B;l=t?B:l}l=c[17748]|0;if(A>>>0<l>>>0)fb();f=A+e|0;if(A>>>0>=f>>>0)fb();h=c[A+24>>2]|0;q=c[A+12>>2]|0;do if((q|0)==(A|0)){s=A+20|0;v=c[s>>2]|0;if(!v){t=A+16|0;o=c[t>>2]|0;if(!o){C=0;break}else{D=o;E=t}}else{D=v;E=s}while(1){s=D+20|0;v=c[s>>2]|0;if(v|0){D=v;E=s;continue}s=D+16|0;v=c[s>>2]|0;if(!v){F=D;G=E;break}else{D=v;E=s}}if(G>>>0<l>>>0)fb();else{c[G>>2]=0;C=F;break}}else{s=c[A+8>>2]|0;if(s>>>0<l>>>0)fb();v=s+12|0;if((c[v>>2]|0)!=(A|0))fb();t=q+8|0;if((c[t>>2]|0)==(A|0)){c[v>>2]=q;c[t>>2]=s;C=q;break}else fb()}while(0);do if(h|0){q=c[A+28>>2]|0;l=71280+(q<<2)|0;if((A|0)==(c[l>>2]|0)){c[l>>2]=C;if(!C){c[17745]=c[17745]&~(1<<q);break}}else{if(h>>>0<(c[17748]|0)>>>0)fb();q=h+16|0;if((c[q>>2]|0)==(A|0))c[q>>2]=C;else c[h+20>>2]=C;if(!C)break}q=c[17748]|0;if(C>>>0<q>>>0)fb();c[C+24>>2]=h;l=c[A+16>>2]|0;do if(l|0)if(l>>>0<q>>>0)fb();else{c[C+16>>2]=l;c[l+24>>2]=C;break}while(0);l=c[A+20>>2]|0;if(l|0)if(l>>>0<(c[17748]|0)>>>0)fb();else{c[C+20>>2]=l;c[l+24>>2]=C;break}}while(0);if(z>>>0<16){h=z+e|0;c[A+4>>2]=h|3;l=A+h+4|0;c[l>>2]=c[l>>2]|1}else{c[A+4>>2]=e|3;c[f+4>>2]=z|1;c[f+z>>2]=z;l=c[17746]|0;if(l|0){h=c[17749]|0;q=l>>>3;l=71016+(q<<1<<2)|0;s=c[17744]|0;t=1<<q;if(s&t){q=l+8|0;v=c[q>>2]|0;if(v>>>0<(c[17748]|0)>>>0)fb();else{H=q;I=v}}else{c[17744]=s|t;H=l+8|0;I=l}c[H>>2]=h;c[I+12>>2]=h;c[h+8>>2]=I;c[h+12>>2]=l}c[17746]=z;c[17749]=f}r=A+8|0;i=b;return r|0}else J=e}else J=e}else if(a>>>0<=4294967231){l=a+11|0;h=l&-8;t=c[17745]|0;if(t){s=0-h|0;v=l>>>8;if(v)if(h>>>0>16777215)K=31;else{l=(v+1048320|0)>>>16&8;q=v<<l;v=(q+520192|0)>>>16&4;o=q<<v;q=(o+245760|0)>>>16&2;g=14-(v|l|q)+(o<<q>>>15)|0;K=h>>>(g+7|0)&1|g<<1}else K=0;g=c[71280+(K<<2)>>2]|0;a:do if(!g){L=s;M=0;N=0;O=86}else{q=s;o=0;l=h<<((K|0)==31?0:25-(K>>>1)|0);v=g;m=0;while(1){u=c[v+4>>2]&-8;n=u-h|0;if(n>>>0<q>>>0)if((u|0)==(h|0)){P=n;Q=v;R=v;O=90;break a}else{S=n;T=v}else{S=q;T=m}n=c[v+20>>2]|0;v=c[v+16+(l>>>31<<2)>>2]|0;u=(n|0)==0|(n|0)==(v|0)?o:n;n=(v|0)==0;if(n){L=S;M=u;N=T;O=86;break}else{q=S;o=u;l=l<<(n&1^1);m=T}}}while(0);if((O|0)==86){if((M|0)==0&(N|0)==0){g=2<<K;s=t&(g|0-g);if(!s){J=h;break}g=(s&0-s)+-1|0;s=g>>>12&16;e=g>>>s;g=e>>>5&8;f=e>>>g;e=f>>>2&4;m=f>>>e;f=m>>>1&2;l=m>>>f;m=l>>>1&1;V=c[71280+((g|s|e|f|m)+(l>>>m)<<2)>>2]|0}else V=M;if(!V){W=L;X=N}else{P=L;Q=V;R=N;O=90}}if((O|0)==90)while(1){O=0;m=(c[Q+4>>2]&-8)-h|0;l=m>>>0<P>>>0;f=l?m:P;m=l?Q:R;l=c[Q+16>>2]|0;if(l|0){P=f;Q=l;R=m;O=90;continue}Q=c[Q+20>>2]|0;if(!Q){W=f;X=m;break}else{P=f;R=m;O=90}}if((X|0)!=0?W>>>0<((c[17746]|0)-h|0)>>>0:0){t=c[17748]|0;if(X>>>0<t>>>0)fb();m=X+h|0;if(X>>>0>=m>>>0)fb();f=c[X+24>>2]|0;l=c[X+12>>2]|0;do if((l|0)==(X|0)){e=X+20|0;s=c[e>>2]|0;if(!s){g=X+16|0;o=c[g>>2]|0;if(!o){Y=0;break}else{Z=o;_=g}}else{Z=s;_=e}while(1){e=Z+20|0;s=c[e>>2]|0;if(s|0){Z=s;_=e;continue}e=Z+16|0;s=c[e>>2]|0;if(!s){$=Z;aa=_;break}else{Z=s;_=e}}if(aa>>>0<t>>>0)fb();else{c[aa>>2]=0;Y=$;break}}else{e=c[X+8>>2]|0;if(e>>>0<t>>>0)fb();s=e+12|0;if((c[s>>2]|0)!=(X|0))fb();g=l+8|0;if((c[g>>2]|0)==(X|0)){c[s>>2]=l;c[g>>2]=e;Y=l;break}else fb()}while(0);do if(f|0){l=c[X+28>>2]|0;t=71280+(l<<2)|0;if((X|0)==(c[t>>2]|0)){c[t>>2]=Y;if(!Y){c[17745]=c[17745]&~(1<<l);break}}else{if(f>>>0<(c[17748]|0)>>>0)fb();l=f+16|0;if((c[l>>2]|0)==(X|0))c[l>>2]=Y;else c[f+20>>2]=Y;if(!Y)break}l=c[17748]|0;if(Y>>>0<l>>>0)fb();c[Y+24>>2]=f;t=c[X+16>>2]|0;do if(t|0)if(t>>>0<l>>>0)fb();else{c[Y+16>>2]=t;c[t+24>>2]=Y;break}while(0);t=c[X+20>>2]|0;if(t|0)if(t>>>0<(c[17748]|0)>>>0)fb();else{c[Y+20>>2]=t;c[t+24>>2]=Y;break}}while(0);do if(W>>>0>=16){c[X+4>>2]=h|3;c[m+4>>2]=W|1;c[m+W>>2]=W;f=W>>>3;if(W>>>0<256){t=71016+(f<<1<<2)|0;l=c[17744]|0;e=1<<f;if(l&e){f=t+8|0;g=c[f>>2]|0;if(g>>>0<(c[17748]|0)>>>0)fb();else{ba=f;ca=g}}else{c[17744]=l|e;ba=t+8|0;ca=t}c[ba>>2]=m;c[ca+12>>2]=m;c[m+8>>2]=ca;c[m+12>>2]=t;break}t=W>>>8;if(t)if(W>>>0>16777215)da=31;else{e=(t+1048320|0)>>>16&8;l=t<<e;t=(l+520192|0)>>>16&4;g=l<<t;l=(g+245760|0)>>>16&2;f=14-(t|e|l)+(g<<l>>>15)|0;da=W>>>(f+7|0)&1|f<<1}else da=0;f=71280+(da<<2)|0;c[m+28>>2]=da;l=m+16|0;c[l+4>>2]=0;c[l>>2]=0;l=c[17745]|0;g=1<<da;if(!(l&g)){c[17745]=l|g;c[f>>2]=m;c[m+24>>2]=f;c[m+12>>2]=m;c[m+8>>2]=m;break}g=W<<((da|0)==31?0:25-(da>>>1)|0);l=c[f>>2]|0;while(1){if((c[l+4>>2]&-8|0)==(W|0)){ea=l;O=148;break}f=l+16+(g>>>31<<2)|0;e=c[f>>2]|0;if(!e){fa=f;ga=l;O=145;break}else{g=g<<1;l=e}}if((O|0)==145)if(fa>>>0<(c[17748]|0)>>>0)fb();else{c[fa>>2]=m;c[m+24>>2]=ga;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((O|0)==148){l=ea+8|0;g=c[l>>2]|0;e=c[17748]|0;if(g>>>0>=e>>>0&ea>>>0>=e>>>0){c[g+12>>2]=m;c[l>>2]=m;c[m+8>>2]=g;c[m+12>>2]=ea;c[m+24>>2]=0;break}else fb()}}else{g=W+h|0;c[X+4>>2]=g|3;l=X+g+4|0;c[l>>2]=c[l>>2]|1}while(0);r=X+8|0;i=b;return r|0}else J=h}else J=h}else J=-1;while(0);X=c[17746]|0;if(X>>>0>=J>>>0){W=X-J|0;ea=c[17749]|0;if(W>>>0>15){ga=ea+J|0;c[17749]=ga;c[17746]=W;c[ga+4>>2]=W|1;c[ga+W>>2]=W;c[ea+4>>2]=J|3}else{c[17746]=0;c[17749]=0;c[ea+4>>2]=X|3;W=ea+X+4|0;c[W>>2]=c[W>>2]|1}r=ea+8|0;i=b;return r|0}ea=c[17747]|0;if(ea>>>0>J>>>0){W=ea-J|0;c[17747]=W;ea=c[17750]|0;X=ea+J|0;c[17750]=X;c[X+4>>2]=W|1;c[ea+4>>2]=J|3;r=ea+8|0;i=b;return r|0}if(!(c[17862]|0)){c[17864]=4096;c[17863]=4096;c[17865]=-1;c[17866]=-1;c[17867]=0;c[17855]=0;ea=d&-16^1431655768;c[d>>2]=ea;c[17862]=ea}ea=J+48|0;d=c[17864]|0;W=J+47|0;X=d+W|0;ga=0-d|0;d=X&ga;if(d>>>0<=J>>>0){r=0;i=b;return r|0}fa=c[17854]|0;if(fa|0?(da=c[17852]|0,ca=da+d|0,ca>>>0<=da>>>0|ca>>>0>fa>>>0):0){r=0;i=b;return r|0}b:do if(!(c[17855]&4)){fa=c[17750]|0;c:do if(fa){ca=71424;while(1){da=c[ca>>2]|0;if(da>>>0<=fa>>>0?(ba=ca+4|0,(da+(c[ba>>2]|0)|0)>>>0>fa>>>0):0){ha=ca;ia=ba;break}ca=c[ca+8>>2]|0;if(!ca){O=171;break c}}ca=X-(c[17747]|0)&ga;if(ca>>>0<2147483647){ba=Ha(ca|0)|0;if((ba|0)==((c[ha>>2]|0)+(c[ia>>2]|0)|0)){if((ba|0)!=(-1|0)){ja=ba;ka=ca;O=191;break b}}else{la=ba;ma=ca;O=181}}}else O=171;while(0);do if((O|0)==171?(fa=Ha(0)|0,(fa|0)!=(-1|0)):0){h=fa;ca=c[17863]|0;ba=ca+-1|0;if(!(ba&h))na=d;else na=d-h+(ba+h&0-ca)|0;ca=c[17852]|0;h=ca+na|0;if(na>>>0>J>>>0&na>>>0<2147483647){ba=c[17854]|0;if(ba|0?h>>>0<=ca>>>0|h>>>0>ba>>>0:0)break;ba=Ha(na|0)|0;if((ba|0)==(fa|0)){ja=fa;ka=na;O=191;break b}else{la=ba;ma=na;O=181}}}while(0);d:do if((O|0)==181){ba=0-ma|0;do if(ea>>>0>ma>>>0&(ma>>>0<2147483647&(la|0)!=(-1|0))?(fa=c[17864]|0,h=W-ma+fa&0-fa,h>>>0<2147483647):0)if((Ha(h|0)|0)==(-1|0)){Ha(ba|0)|0;break d}else{oa=h+ma|0;break}else oa=ma;while(0);if((la|0)!=(-1|0)){ja=la;ka=oa;O=191;break b}}while(0);c[17855]=c[17855]|4;O=188}else O=188;while(0);if((((O|0)==188?d>>>0<2147483647:0)?(oa=Ha(d|0)|0,d=Ha(0)|0,oa>>>0<d>>>0&((oa|0)!=(-1|0)&(d|0)!=(-1|0))):0)?(la=d-oa|0,la>>>0>(J+40|0)>>>0):0){ja=oa;ka=la;O=191}if((O|0)==191){la=(c[17852]|0)+ka|0;c[17852]=la;if(la>>>0>(c[17853]|0)>>>0)c[17853]=la;la=c[17750]|0;do if(la){oa=71424;do{d=c[oa>>2]|0;ma=oa+4|0;W=c[ma>>2]|0;if((ja|0)==(d+W|0)){pa=d;qa=ma;ra=W;sa=oa;O=201;break}oa=c[oa+8>>2]|0}while((oa|0)!=0);if(((O|0)==201?(c[sa+12>>2]&8|0)==0:0)?la>>>0<ja>>>0&la>>>0>=pa>>>0:0){c[qa>>2]=ra+ka;oa=la+8|0;W=(oa&7|0)==0?0:0-oa&7;oa=la+W|0;ma=ka-W+(c[17747]|0)|0;c[17750]=oa;c[17747]=ma;c[oa+4>>2]=ma|1;c[oa+ma+4>>2]=40;c[17751]=c[17866];break}ma=c[17748]|0;if(ja>>>0<ma>>>0){c[17748]=ja;ta=ja}else ta=ma;ma=ja+ka|0;oa=71424;while(1){if((c[oa>>2]|0)==(ma|0)){ua=oa;va=oa;O=209;break}oa=c[oa+8>>2]|0;if(!oa){wa=71424;break}}if((O|0)==209)if(!(c[va+12>>2]&8)){c[ua>>2]=ja;oa=va+4|0;c[oa>>2]=(c[oa>>2]|0)+ka;oa=ja+8|0;W=ja+((oa&7|0)==0?0:0-oa&7)|0;oa=ma+8|0;d=ma+((oa&7|0)==0?0:0-oa&7)|0;oa=W+J|0;ea=d-W-J|0;c[W+4>>2]=J|3;do if((d|0)!=(la|0)){if((d|0)==(c[17749]|0)){na=(c[17746]|0)+ea|0;c[17746]=na;c[17749]=oa;c[oa+4>>2]=na|1;c[oa+na>>2]=na;break}na=c[d+4>>2]|0;if((na&3|0)==1){ia=na&-8;ha=na>>>3;e:do if(na>>>0>=256){ga=c[d+24>>2]|0;X=c[d+12>>2]|0;do if((X|0)==(d|0)){ba=d+16|0;h=ba+4|0;fa=c[h>>2]|0;if(!fa){ca=c[ba>>2]|0;if(!ca){xa=0;break}else{ya=ca;za=ba}}else{ya=fa;za=h}while(1){h=ya+20|0;fa=c[h>>2]|0;if(fa|0){ya=fa;za=h;continue}h=ya+16|0;fa=c[h>>2]|0;if(!fa){Aa=ya;Ba=za;break}else{ya=fa;za=h}}if(Ba>>>0<ta>>>0)fb();else{c[Ba>>2]=0;xa=Aa;break}}else{h=c[d+8>>2]|0;if(h>>>0<ta>>>0)fb();fa=h+12|0;if((c[fa>>2]|0)!=(d|0))fb();ba=X+8|0;if((c[ba>>2]|0)==(d|0)){c[fa>>2]=X;c[ba>>2]=h;xa=X;break}else fb()}while(0);if(!ga)break;X=c[d+28>>2]|0;h=71280+(X<<2)|0;do if((d|0)!=(c[h>>2]|0)){if(ga>>>0<(c[17748]|0)>>>0)fb();ba=ga+16|0;if((c[ba>>2]|0)==(d|0))c[ba>>2]=xa;else c[ga+20>>2]=xa;if(!xa)break e}else{c[h>>2]=xa;if(xa|0)break;c[17745]=c[17745]&~(1<<X);break e}while(0);X=c[17748]|0;if(xa>>>0<X>>>0)fb();c[xa+24>>2]=ga;h=d+16|0;ba=c[h>>2]|0;do if(ba|0)if(ba>>>0<X>>>0)fb();else{c[xa+16>>2]=ba;c[ba+24>>2]=xa;break}while(0);ba=c[h+4>>2]|0;if(!ba)break;if(ba>>>0<(c[17748]|0)>>>0)fb();else{c[xa+20>>2]=ba;c[ba+24>>2]=xa;break}}else{ba=c[d+8>>2]|0;X=c[d+12>>2]|0;ga=71016+(ha<<1<<2)|0;do if((ba|0)!=(ga|0)){if(ba>>>0<ta>>>0)fb();if((c[ba+12>>2]|0)==(d|0))break;fb()}while(0);if((X|0)==(ba|0)){c[17744]=c[17744]&~(1<<ha);break}do if((X|0)==(ga|0))Ca=X+8|0;else{if(X>>>0<ta>>>0)fb();h=X+8|0;if((c[h>>2]|0)==(d|0)){Ca=h;break}fb()}while(0);c[ba+12>>2]=X;c[Ca>>2]=ba}while(0);Da=d+ia|0;Ea=ia+ea|0}else{Da=d;Ea=ea}ha=Da+4|0;c[ha>>2]=c[ha>>2]&-2;c[oa+4>>2]=Ea|1;c[oa+Ea>>2]=Ea;ha=Ea>>>3;if(Ea>>>0<256){na=71016+(ha<<1<<2)|0;ga=c[17744]|0;h=1<<ha;do if(!(ga&h)){c[17744]=ga|h;Fa=na+8|0;Ga=na}else{ha=na+8|0;fa=c[ha>>2]|0;if(fa>>>0>=(c[17748]|0)>>>0){Fa=ha;Ga=fa;break}fb()}while(0);c[Fa>>2]=oa;c[Ga+12>>2]=oa;c[oa+8>>2]=Ga;c[oa+12>>2]=na;break}h=Ea>>>8;do if(!h)Ia=0;else{if(Ea>>>0>16777215){Ia=31;break}ga=(h+1048320|0)>>>16&8;ia=h<<ga;fa=(ia+520192|0)>>>16&4;ha=ia<<fa;ia=(ha+245760|0)>>>16&2;ca=14-(fa|ga|ia)+(ha<<ia>>>15)|0;Ia=Ea>>>(ca+7|0)&1|ca<<1}while(0);h=71280+(Ia<<2)|0;c[oa+28>>2]=Ia;na=oa+16|0;c[na+4>>2]=0;c[na>>2]=0;na=c[17745]|0;ca=1<<Ia;if(!(na&ca)){c[17745]=na|ca;c[h>>2]=oa;c[oa+24>>2]=h;c[oa+12>>2]=oa;c[oa+8>>2]=oa;break}ca=Ea<<((Ia|0)==31?0:25-(Ia>>>1)|0);na=c[h>>2]|0;while(1){if((c[na+4>>2]&-8|0)==(Ea|0)){Ja=na;O=279;break}h=na+16+(ca>>>31<<2)|0;ia=c[h>>2]|0;if(!ia){Ka=h;La=na;O=276;break}else{ca=ca<<1;na=ia}}if((O|0)==276)if(Ka>>>0<(c[17748]|0)>>>0)fb();else{c[Ka>>2]=oa;c[oa+24>>2]=La;c[oa+12>>2]=oa;c[oa+8>>2]=oa;break}else if((O|0)==279){na=Ja+8|0;ca=c[na>>2]|0;ia=c[17748]|0;if(ca>>>0>=ia>>>0&Ja>>>0>=ia>>>0){c[ca+12>>2]=oa;c[na>>2]=oa;c[oa+8>>2]=ca;c[oa+12>>2]=Ja;c[oa+24>>2]=0;break}else fb()}}else{ca=(c[17747]|0)+ea|0;c[17747]=ca;c[17750]=oa;c[oa+4>>2]=ca|1}while(0);r=W+8|0;i=b;return r|0}else wa=71424;while(1){oa=c[wa>>2]|0;if(oa>>>0<=la>>>0?(ea=oa+(c[wa+4>>2]|0)|0,ea>>>0>la>>>0):0){Ma=ea;break}wa=c[wa+8>>2]|0}W=Ma+-47|0;ea=W+8|0;oa=W+((ea&7|0)==0?0:0-ea&7)|0;ea=la+16|0;W=oa>>>0<ea>>>0?la:oa;oa=W+8|0;d=ja+8|0;ma=(d&7|0)==0?0:0-d&7;d=ja+ma|0;ca=ka+-40-ma|0;c[17750]=d;c[17747]=ca;c[d+4>>2]=ca|1;c[d+ca+4>>2]=40;c[17751]=c[17866];ca=W+4|0;c[ca>>2]=27;c[oa>>2]=c[17856];c[oa+4>>2]=c[17857];c[oa+8>>2]=c[17858];c[oa+12>>2]=c[17859];c[17856]=ja;c[17857]=ka;c[17859]=0;c[17858]=oa;oa=W+24|0;do{oa=oa+4|0;c[oa>>2]=7}while((oa+4|0)>>>0<Ma>>>0);if((W|0)!=(la|0)){oa=W-la|0;c[ca>>2]=c[ca>>2]&-2;c[la+4>>2]=oa|1;c[W>>2]=oa;d=oa>>>3;if(oa>>>0<256){ma=71016+(d<<1<<2)|0;na=c[17744]|0;ia=1<<d;if(na&ia){d=ma+8|0;h=c[d>>2]|0;if(h>>>0<(c[17748]|0)>>>0)fb();else{Na=d;Oa=h}}else{c[17744]=na|ia;Na=ma+8|0;Oa=ma}c[Na>>2]=la;c[Oa+12>>2]=la;c[la+8>>2]=Oa;c[la+12>>2]=ma;break}ma=oa>>>8;if(ma)if(oa>>>0>16777215)Pa=31;else{ia=(ma+1048320|0)>>>16&8;na=ma<<ia;ma=(na+520192|0)>>>16&4;h=na<<ma;na=(h+245760|0)>>>16&2;d=14-(ma|ia|na)+(h<<na>>>15)|0;Pa=oa>>>(d+7|0)&1|d<<1}else Pa=0;d=71280+(Pa<<2)|0;c[la+28>>2]=Pa;c[la+20>>2]=0;c[ea>>2]=0;na=c[17745]|0;h=1<<Pa;if(!(na&h)){c[17745]=na|h;c[d>>2]=la;c[la+24>>2]=d;c[la+12>>2]=la;c[la+8>>2]=la;break}h=oa<<((Pa|0)==31?0:25-(Pa>>>1)|0);na=c[d>>2]|0;while(1){if((c[na+4>>2]&-8|0)==(oa|0)){Qa=na;O=305;break}d=na+16+(h>>>31<<2)|0;ia=c[d>>2]|0;if(!ia){Ra=d;Sa=na;O=302;break}else{h=h<<1;na=ia}}if((O|0)==302)if(Ra>>>0<(c[17748]|0)>>>0)fb();else{c[Ra>>2]=la;c[la+24>>2]=Sa;c[la+12>>2]=la;c[la+8>>2]=la;break}else if((O|0)==305){na=Qa+8|0;h=c[na>>2]|0;oa=c[17748]|0;if(h>>>0>=oa>>>0&Qa>>>0>=oa>>>0){c[h+12>>2]=la;c[na>>2]=la;c[la+8>>2]=h;c[la+12>>2]=Qa;c[la+24>>2]=0;break}else fb()}}}else{h=c[17748]|0;if((h|0)==0|ja>>>0<h>>>0)c[17748]=ja;c[17856]=ja;c[17857]=ka;c[17859]=0;c[17753]=c[17862];c[17752]=-1;h=0;do{na=71016+(h<<1<<2)|0;c[na+12>>2]=na;c[na+8>>2]=na;h=h+1|0}while((h|0)!=32);h=ja+8|0;na=(h&7|0)==0?0:0-h&7;h=ja+na|0;oa=ka+-40-na|0;c[17750]=h;c[17747]=oa;c[h+4>>2]=oa|1;c[h+oa+4>>2]=40;c[17751]=c[17866]}while(0);ka=c[17747]|0;if(ka>>>0>J>>>0){ja=ka-J|0;c[17747]=ja;ka=c[17750]|0;la=ka+J|0;c[17750]=la;c[la+4>>2]=ja|1;c[ka+4>>2]=J|3;r=ka+8|0;i=b;return r|0}}c[(fu()|0)>>2]=12;r=0;i=b;return r|0}function zw(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;if(!a)return;b=a+-8|0;d=c[17748]|0;if(b>>>0<d>>>0)fb();e=c[a+-4>>2]|0;a=e&3;if((a|0)==1)fb();f=e&-8;g=b+f|0;do if(!(e&1)){h=c[b>>2]|0;if(!a)return;i=b+(0-h)|0;j=h+f|0;if(i>>>0<d>>>0)fb();if((i|0)==(c[17749]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;break}c[17746]=j;c[k>>2]=l&-2;c[i+4>>2]=j|1;c[i+j>>2]=j;return}l=h>>>3;if(h>>>0<256){h=c[i+8>>2]|0;k=c[i+12>>2]|0;o=71016+(l<<1<<2)|0;if((h|0)!=(o|0)){if(h>>>0<d>>>0)fb();if((c[h+12>>2]|0)!=(i|0))fb()}if((k|0)==(h|0)){c[17744]=c[17744]&~(1<<l);m=i;n=j;break}if((k|0)!=(o|0)){if(k>>>0<d>>>0)fb();o=k+8|0;if((c[o>>2]|0)==(i|0))p=o;else fb()}else p=k+8|0;c[h+12>>2]=k;c[p>>2]=h;m=i;n=j;break}h=c[i+24>>2]|0;k=c[i+12>>2]|0;do if((k|0)==(i|0)){o=i+16|0;l=o+4|0;q=c[l>>2]|0;if(!q){r=c[o>>2]|0;if(!r){s=0;break}else{t=r;u=o}}else{t=q;u=l}while(1){l=t+20|0;q=c[l>>2]|0;if(q|0){t=q;u=l;continue}l=t+16|0;q=c[l>>2]|0;if(!q){v=t;w=u;break}else{t=q;u=l}}if(w>>>0<d>>>0)fb();else{c[w>>2]=0;s=v;break}}else{l=c[i+8>>2]|0;if(l>>>0<d>>>0)fb();q=l+12|0;if((c[q>>2]|0)!=(i|0))fb();o=k+8|0;if((c[o>>2]|0)==(i|0)){c[q>>2]=k;c[o>>2]=l;s=k;break}else fb()}while(0);if(h){k=c[i+28>>2]|0;l=71280+(k<<2)|0;if((i|0)==(c[l>>2]|0)){c[l>>2]=s;if(!s){c[17745]=c[17745]&~(1<<k);m=i;n=j;break}}else{if(h>>>0<(c[17748]|0)>>>0)fb();k=h+16|0;if((c[k>>2]|0)==(i|0))c[k>>2]=s;else c[h+20>>2]=s;if(!s){m=i;n=j;break}}k=c[17748]|0;if(s>>>0<k>>>0)fb();c[s+24>>2]=h;l=i+16|0;o=c[l>>2]|0;do if(o|0)if(o>>>0<k>>>0)fb();else{c[s+16>>2]=o;c[o+24>>2]=s;break}while(0);o=c[l+4>>2]|0;if(o)if(o>>>0<(c[17748]|0)>>>0)fb();else{c[s+20>>2]=o;c[o+24>>2]=s;m=i;n=j;break}else{m=i;n=j}}else{m=i;n=j}}else{m=b;n=f}while(0);if(m>>>0>=g>>>0)fb();f=g+4|0;b=c[f>>2]|0;if(!(b&1))fb();if(!(b&2)){if((g|0)==(c[17750]|0)){s=(c[17747]|0)+n|0;c[17747]=s;c[17750]=m;c[m+4>>2]=s|1;if((m|0)!=(c[17749]|0))return;c[17749]=0;c[17746]=0;return}if((g|0)==(c[17749]|0)){s=(c[17746]|0)+n|0;c[17746]=s;c[17749]=m;c[m+4>>2]=s|1;c[m+s>>2]=s;return}s=(b&-8)+n|0;d=b>>>3;do if(b>>>0>=256){v=c[g+24>>2]|0;w=c[g+12>>2]|0;do if((w|0)==(g|0)){u=g+16|0;t=u+4|0;p=c[t>>2]|0;if(!p){a=c[u>>2]|0;if(!a){x=0;break}else{y=a;z=u}}else{y=p;z=t}while(1){t=y+20|0;p=c[t>>2]|0;if(p|0){y=p;z=t;continue}t=y+16|0;p=c[t>>2]|0;if(!p){A=y;B=z;break}else{y=p;z=t}}if(B>>>0<(c[17748]|0)>>>0)fb();else{c[B>>2]=0;x=A;break}}else{t=c[g+8>>2]|0;if(t>>>0<(c[17748]|0)>>>0)fb();p=t+12|0;if((c[p>>2]|0)!=(g|0))fb();u=w+8|0;if((c[u>>2]|0)==(g|0)){c[p>>2]=w;c[u>>2]=t;x=w;break}else fb()}while(0);if(v|0){w=c[g+28>>2]|0;j=71280+(w<<2)|0;if((g|0)==(c[j>>2]|0)){c[j>>2]=x;if(!x){c[17745]=c[17745]&~(1<<w);break}}else{if(v>>>0<(c[17748]|0)>>>0)fb();w=v+16|0;if((c[w>>2]|0)==(g|0))c[w>>2]=x;else c[v+20>>2]=x;if(!x)break}w=c[17748]|0;if(x>>>0<w>>>0)fb();c[x+24>>2]=v;j=g+16|0;i=c[j>>2]|0;do if(i|0)if(i>>>0<w>>>0)fb();else{c[x+16>>2]=i;c[i+24>>2]=x;break}while(0);i=c[j+4>>2]|0;if(i|0)if(i>>>0<(c[17748]|0)>>>0)fb();else{c[x+20>>2]=i;c[i+24>>2]=x;break}}}else{i=c[g+8>>2]|0;w=c[g+12>>2]|0;v=71016+(d<<1<<2)|0;if((i|0)!=(v|0)){if(i>>>0<(c[17748]|0)>>>0)fb();if((c[i+12>>2]|0)!=(g|0))fb()}if((w|0)==(i|0)){c[17744]=c[17744]&~(1<<d);break}if((w|0)!=(v|0)){if(w>>>0<(c[17748]|0)>>>0)fb();v=w+8|0;if((c[v>>2]|0)==(g|0))C=v;else fb()}else C=w+8|0;c[i+12>>2]=w;c[C>>2]=i}while(0);c[m+4>>2]=s|1;c[m+s>>2]=s;if((m|0)==(c[17749]|0)){c[17746]=s;return}else D=s}else{c[f>>2]=b&-2;c[m+4>>2]=n|1;c[m+n>>2]=n;D=n}n=D>>>3;if(D>>>0<256){b=71016+(n<<1<<2)|0;f=c[17744]|0;s=1<<n;if(f&s){n=b+8|0;C=c[n>>2]|0;if(C>>>0<(c[17748]|0)>>>0)fb();else{E=n;F=C}}else{c[17744]=f|s;E=b+8|0;F=b}c[E>>2]=m;c[F+12>>2]=m;c[m+8>>2]=F;c[m+12>>2]=b;return}b=D>>>8;if(b)if(D>>>0>16777215)G=31;else{F=(b+1048320|0)>>>16&8;E=b<<F;b=(E+520192|0)>>>16&4;s=E<<b;E=(s+245760|0)>>>16&2;f=14-(b|F|E)+(s<<E>>>15)|0;G=D>>>(f+7|0)&1|f<<1}else G=0;f=71280+(G<<2)|0;c[m+28>>2]=G;c[m+20>>2]=0;c[m+16>>2]=0;E=c[17745]|0;s=1<<G;do if(E&s){F=D<<((G|0)==31?0:25-(G>>>1)|0);b=c[f>>2]|0;while(1){if((c[b+4>>2]&-8|0)==(D|0)){H=b;I=130;break}C=b+16+(F>>>31<<2)|0;n=c[C>>2]|0;if(!n){J=C;K=b;I=127;break}else{F=F<<1;b=n}}if((I|0)==127)if(J>>>0<(c[17748]|0)>>>0)fb();else{c[J>>2]=m;c[m+24>>2]=K;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((I|0)==130){b=H+8|0;F=c[b>>2]|0;j=c[17748]|0;if(F>>>0>=j>>>0&H>>>0>=j>>>0){c[F+12>>2]=m;c[b>>2]=m;c[m+8>>2]=F;c[m+12>>2]=H;c[m+24>>2]=0;break}else fb()}}else{c[17745]=E|s;c[f>>2]=m;c[m+24>>2]=f;c[m+12>>2]=m;c[m+8>>2]=m}while(0);m=(c[17752]|0)+-1|0;c[17752]=m;if(!m)L=71432;else return;while(1){m=c[L>>2]|0;if(!m)break;else L=m+8|0}c[17752]=-1;return}function Aw(a,b){a=a|0;b=b|0;var d=0,e=0;if(a){d=R(b,a)|0;if((b|a)>>>0>65535)e=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1;else e=d}else e=0;d=yw(e)|0;if(!d)return d|0;if(!(c[d+-4>>2]&3))return d|0;Sw(d|0,0,e|0)|0;return d|0}function Bw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=yw(b)|0;return d|0}if(b>>>0>4294967231){c[(fu()|0)>>2]=12;d=0;return d|0}e=Cw(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e|0){d=e+8|0;return d|0}e=yw(b)|0;if(!e){d=0;return d|0}f=c[a+-4>>2]|0;g=(f&-8)-((f&3|0)==0?8:4)|0;Ow(e|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;zw(a);d=e;return d|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[17748]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0<g>>>0))fb();j=c[g+4>>2]|0;if(!(j&1))fb();if(!i){if(b>>>0<256){k=0;return k|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[17864]<<1>>>0:0){k=a;return k|0}k=0;return k|0}if(f>>>0>=b>>>0){i=f-b|0;if(i>>>0<=15){k=a;return k|0}l=a+b|0;c[d>>2]=e&1|b|2;c[l+4>>2]=i|3;m=l+i+4|0;c[m>>2]=c[m>>2]|1;Dw(l,i);k=a;return k|0}if((g|0)==(c[17750]|0)){i=(c[17747]|0)+f|0;if(i>>>0<=b>>>0){k=0;return k|0}l=i-b|0;i=a+b|0;c[d>>2]=e&1|b|2;c[i+4>>2]=l|1;c[17750]=i;c[17747]=l;k=a;return k|0}if((g|0)==(c[17749]|0)){l=(c[17746]|0)+f|0;if(l>>>0<b>>>0){k=0;return k|0}i=l-b|0;if(i>>>0>15){m=a+b|0;n=m+i|0;c[d>>2]=e&1|b|2;c[m+4>>2]=i|1;c[n>>2]=i;o=n+4|0;c[o>>2]=c[o>>2]&-2;p=m;q=i}else{c[d>>2]=e&1|l|2;i=a+l+4|0;c[i>>2]=c[i>>2]|1;p=0;q=0}c[17746]=q;c[17749]=p;k=a;return k|0}if(j&2|0){k=0;return k|0}p=(j&-8)+f|0;if(p>>>0<b>>>0){k=0;return k|0}f=p-b|0;q=j>>>3;do if(j>>>0>=256){i=c[g+24>>2]|0;l=c[g+12>>2]|0;do if((l|0)==(g|0)){m=g+16|0;o=m+4|0;n=c[o>>2]|0;if(!n){r=c[m>>2]|0;if(!r){s=0;break}else{t=r;u=m}}else{t=n;u=o}while(1){o=t+20|0;n=c[o>>2]|0;if(n|0){t=n;u=o;continue}o=t+16|0;n=c[o>>2]|0;if(!n){v=t;w=u;break}else{t=n;u=o}}if(w>>>0<h>>>0)fb();else{c[w>>2]=0;s=v;break}}else{o=c[g+8>>2]|0;if(o>>>0<h>>>0)fb();n=o+12|0;if((c[n>>2]|0)!=(g|0))fb();m=l+8|0;if((c[m>>2]|0)==(g|0)){c[n>>2]=l;c[m>>2]=o;s=l;break}else fb()}while(0);if(i|0){l=c[g+28>>2]|0;o=71280+(l<<2)|0;if((g|0)==(c[o>>2]|0)){c[o>>2]=s;if(!s){c[17745]=c[17745]&~(1<<l);break}}else{if(i>>>0<(c[17748]|0)>>>0)fb();l=i+16|0;if((c[l>>2]|0)==(g|0))c[l>>2]=s;else c[i+20>>2]=s;if(!s)break}l=c[17748]|0;if(s>>>0<l>>>0)fb();c[s+24>>2]=i;o=g+16|0;m=c[o>>2]|0;do if(m|0)if(m>>>0<l>>>0)fb();else{c[s+16>>2]=m;c[m+24>>2]=s;break}while(0);m=c[o+4>>2]|0;if(m|0)if(m>>>0<(c[17748]|0)>>>0)fb();else{c[s+20>>2]=m;c[m+24>>2]=s;break}}}else{m=c[g+8>>2]|0;l=c[g+12>>2]|0;i=71016+(q<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0<h>>>0)fb();if((c[m+12>>2]|0)!=(g|0))fb()}if((l|0)==(m|0)){c[17744]=c[17744]&~(1<<q);break}if((l|0)!=(i|0)){if(l>>>0<h>>>0)fb();i=l+8|0;if((c[i>>2]|0)==(g|0))x=i;else fb()}else x=l+8|0;c[m+12>>2]=l;c[x>>2]=m}while(0);if(f>>>0<16){c[d>>2]=p|e&1|2;x=a+p+4|0;c[x>>2]=c[x>>2]|1;k=a;return k|0}else{x=a+b|0;c[d>>2]=e&1|b|2;c[x+4>>2]=f|3;b=x+f+4|0;c[b>>2]=c[b>>2]|1;Dw(x,f);k=a;return k|0}return 0}function Dw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;d=a+b|0;e=c[a+4>>2]|0;do if(!(e&1)){f=c[a>>2]|0;if(!(e&3))return;g=a+(0-f)|0;h=f+b|0;i=c[17748]|0;if(g>>>0<i>>>0)fb();if((g|0)==(c[17749]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[17746]=h;c[j>>2]=k&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}k=f>>>3;if(f>>>0<256){f=c[g+8>>2]|0;j=c[g+12>>2]|0;n=71016+(k<<1<<2)|0;if((f|0)!=(n|0)){if(f>>>0<i>>>0)fb();if((c[f+12>>2]|0)!=(g|0))fb()}if((j|0)==(f|0)){c[17744]=c[17744]&~(1<<k);l=g;m=h;break}if((j|0)!=(n|0)){if(j>>>0<i>>>0)fb();n=j+8|0;if((c[n>>2]|0)==(g|0))o=n;else fb()}else o=j+8|0;c[f+12>>2]=j;c[o>>2]=f;l=g;m=h;break}f=c[g+24>>2]|0;j=c[g+12>>2]|0;do if((j|0)==(g|0)){n=g+16|0;k=n+4|0;p=c[k>>2]|0;if(!p){q=c[n>>2]|0;if(!q){r=0;break}else{s=q;t=n}}else{s=p;t=k}while(1){k=s+20|0;p=c[k>>2]|0;if(p|0){s=p;t=k;continue}k=s+16|0;p=c[k>>2]|0;if(!p){u=s;v=t;break}else{s=p;t=k}}if(v>>>0<i>>>0)fb();else{c[v>>2]=0;r=u;break}}else{k=c[g+8>>2]|0;if(k>>>0<i>>>0)fb();p=k+12|0;if((c[p>>2]|0)!=(g|0))fb();n=j+8|0;if((c[n>>2]|0)==(g|0)){c[p>>2]=j;c[n>>2]=k;r=j;break}else fb()}while(0);if(f){j=c[g+28>>2]|0;i=71280+(j<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[17745]=c[17745]&~(1<<j);l=g;m=h;break}}else{if(f>>>0<(c[17748]|0)>>>0)fb();j=f+16|0;if((c[j>>2]|0)==(g|0))c[j>>2]=r;else c[f+20>>2]=r;if(!r){l=g;m=h;break}}j=c[17748]|0;if(r>>>0<j>>>0)fb();c[r+24>>2]=f;i=g+16|0;k=c[i>>2]|0;do if(k|0)if(k>>>0<j>>>0)fb();else{c[r+16>>2]=k;c[k+24>>2]=r;break}while(0);k=c[i+4>>2]|0;if(k)if(k>>>0<(c[17748]|0)>>>0)fb();else{c[r+20>>2]=k;c[k+24>>2]=r;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);b=c[17748]|0;if(d>>>0<b>>>0)fb();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){if((d|0)==(c[17750]|0)){u=(c[17747]|0)+m|0;c[17747]=u;c[17750]=l;c[l+4>>2]=u|1;if((l|0)!=(c[17749]|0))return;c[17749]=0;c[17746]=0;return}if((d|0)==(c[17749]|0)){u=(c[17746]|0)+m|0;c[17746]=u;c[17749]=l;c[l+4>>2]=u|1;c[l+u>>2]=u;return}u=(r&-8)+m|0;v=r>>>3;do if(r>>>0>=256){t=c[d+24>>2]|0;s=c[d+12>>2]|0;do if((s|0)==(d|0)){o=d+16|0;e=o+4|0;k=c[e>>2]|0;if(!k){j=c[o>>2]|0;if(!j){w=0;break}else{x=j;y=o}}else{x=k;y=e}while(1){e=x+20|0;k=c[e>>2]|0;if(k|0){x=k;y=e;continue}e=x+16|0;k=c[e>>2]|0;if(!k){z=x;A=y;break}else{x=k;y=e}}if(A>>>0<b>>>0)fb();else{c[A>>2]=0;w=z;break}}else{e=c[d+8>>2]|0;if(e>>>0<b>>>0)fb();k=e+12|0;if((c[k>>2]|0)!=(d|0))fb();o=s+8|0;if((c[o>>2]|0)==(d|0)){c[k>>2]=s;c[o>>2]=e;w=s;break}else fb()}while(0);if(t|0){s=c[d+28>>2]|0;h=71280+(s<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=w;if(!w){c[17745]=c[17745]&~(1<<s);break}}else{if(t>>>0<(c[17748]|0)>>>0)fb();s=t+16|0;if((c[s>>2]|0)==(d|0))c[s>>2]=w;else c[t+20>>2]=w;if(!w)break}s=c[17748]|0;if(w>>>0<s>>>0)fb();c[w+24>>2]=t;h=d+16|0;g=c[h>>2]|0;do if(g|0)if(g>>>0<s>>>0)fb();else{c[w+16>>2]=g;c[g+24>>2]=w;break}while(0);g=c[h+4>>2]|0;if(g|0)if(g>>>0<(c[17748]|0)>>>0)fb();else{c[w+20>>2]=g;c[g+24>>2]=w;break}}}else{g=c[d+8>>2]|0;s=c[d+12>>2]|0;t=71016+(v<<1<<2)|0;if((g|0)!=(t|0)){if(g>>>0<b>>>0)fb();if((c[g+12>>2]|0)!=(d|0))fb()}if((s|0)==(g|0)){c[17744]=c[17744]&~(1<<v);break}if((s|0)!=(t|0)){if(s>>>0<b>>>0)fb();t=s+8|0;if((c[t>>2]|0)==(d|0))B=t;else fb()}else B=s+8|0;c[g+12>>2]=s;c[B>>2]=g}while(0);c[l+4>>2]=u|1;c[l+u>>2]=u;if((l|0)==(c[17749]|0)){c[17746]=u;return}else C=u}else{c[a>>2]=r&-2;c[l+4>>2]=m|1;c[l+m>>2]=m;C=m}m=C>>>3;if(C>>>0<256){r=71016+(m<<1<<2)|0;a=c[17744]|0;u=1<<m;if(a&u){m=r+8|0;B=c[m>>2]|0;if(B>>>0<(c[17748]|0)>>>0)fb();else{D=m;E=B}}else{c[17744]=a|u;D=r+8|0;E=r}c[D>>2]=l;c[E+12>>2]=l;c[l+8>>2]=E;c[l+12>>2]=r;return}r=C>>>8;if(r)if(C>>>0>16777215)F=31;else{E=(r+1048320|0)>>>16&8;D=r<<E;r=(D+520192|0)>>>16&4;u=D<<r;D=(u+245760|0)>>>16&2;a=14-(r|E|D)+(u<<D>>>15)|0;F=C>>>(a+7|0)&1|a<<1}else F=0;a=71280+(F<<2)|0;c[l+28>>2]=F;c[l+20>>2]=0;c[l+16>>2]=0;D=c[17745]|0;u=1<<F;if(!(D&u)){c[17745]=D|u;c[a>>2]=l;c[l+24>>2]=a;c[l+12>>2]=l;c[l+8>>2]=l;return}u=C<<((F|0)==31?0:25-(F>>>1)|0);F=c[a>>2]|0;while(1){if((c[F+4>>2]&-8|0)==(C|0)){G=F;H=127;break}a=F+16+(u>>>31<<2)|0;D=c[a>>2]|0;if(!D){I=a;J=F;H=124;break}else{u=u<<1;F=D}}if((H|0)==124){if(I>>>0<(c[17748]|0)>>>0)fb();c[I>>2]=l;c[l+24>>2]=J;c[l+12>>2]=l;c[l+8>>2]=l;return}else if((H|0)==127){H=G+8|0;J=c[H>>2]|0;I=c[17748]|0;if(!(J>>>0>=I>>>0&G>>>0>=I>>>0))fb();c[J+12>>2]=l;c[H>>2]=l;c[l+8>>2]=J;c[l+12>>2]=G;c[l+24>>2]=0;return}}function Ew(){}function Fw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (C=e,a-c>>>0|0)|0}function Gw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (C=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function Hw(a){a=a|0;return 0}function Iw(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 Jw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0;g=a;h=b;i=h;j=d;k=e;l=k;if(!i){m=(f|0)!=0;if(!l){if(m){c[f>>2]=(g>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (C=n,o)|0}else{if(!m){n=0;o=0;return (C=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;o=0;return (C=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(T(l|0)|0)-(T(i|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=g>>>(q>>>0)&s|i<<r;v=i>>>(q>>>0)&s;w=0;x=g<<r;break}if(!f){n=0;o=0;return (C=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (C=n,o)|0}r=j-1|0;if(r&j|0){s=(T(j|0)|0)+33-(T(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<<p|g>>>(s>>>0))&A;v=A&i>>>(s>>>0);w=g<<q&y;x=(i<<q|g>>>(z>>>0))&y|g<<p&s-33>>31;break}if(f|0){c[f>>2]=r&g;c[f+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (C=n,o)|0}else{r=Iw(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (C=n,o)|0}}else{if(m){if(f|0){c[f>>2]=(i>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (C=n,o)|0}if(!g){if(f|0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (C=n,o)|0}r=l-1|0;if(!(r&l)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=r&i|b&0}n=0;o=i>>>((Iw(l|0)|0)>>>0);return (C=n,o)|0}r=(T(l|0)|0)-(T(i|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=i<<p|g>>>(s>>>0);v=i>>>(s>>>0);w=0;x=g<<p;break}if(!f){n=0;o=0;return (C=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (C=n,o)|0}while(0);if(!t){B=x;D=w;E=v;F=u;G=0;H=0}else{b=d|0|0;d=k|e&0;e=Gw(b|0,d|0,-1,-1)|0;k=C;h=x;x=w;w=v;v=u;u=t;t=0;do{a=h;h=x>>>31|h<<1;x=t|x<<1;g=v<<1|a>>>31|0;a=v>>>31|w<<1|0;Fw(e|0,k|0,g|0,a|0)|0;i=C;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=Fw(g|0,a|0,l&b|0,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&d|0)|0;w=C;u=u-1|0}while((u|0)!=0);B=h;D=x;E=w;F=v;G=0;H=t}t=D;D=0;if(f|0){c[f>>2]=F;c[f+4>>2]=E}n=(t|0)>>>31|(B|D)<<1|(D<<1|t>>>31)&0|G;o=(t<<1|0>>>31)&-2|H;return (C=n,o)|0}function Kw(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;f=i;i=i+16|0;g=f|0;h=b>>31|((b|0)<0?-1:0)<<1;j=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;l=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;m=Fw(h^a|0,j^b|0,h|0,j|0)|0;b=C;Jw(m,b,Fw(k^d|0,l^e|0,k|0,l|0)|0,C,g)|0;l=Fw(c[g>>2]^h|0,c[g+4>>2]^j|0,h|0,j|0)|0;j=C;i=f;return (C=j,l)|0}function Lw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Nw(a){a=a|0;return 0}function Ow(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Sa(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 Pw(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<<c-32;return 0}function Qw(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 Ow(b,c,d)|0;return b|0}function Rw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f|0;Jw(a,b,d,e,g)|0;i=f;return (C=c[g+4>>2]|0,c[g>>2]|0)|0}function Sw(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;g=b&3;h=d|d<<8|d<<16|d<<24;i=f&~3;if(g){g=b+4-g|0;while((b|0)<(g|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(i|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Tw(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;e=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;g=d>>31|((d|0)<0?-1:0)<<1;h=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;i=Fw(e^a|0,f^b|0,e|0,f|0)|0;b=C;a=g^e;e=h^f;return Fw((Jw(i,b,Fw(g^c|0,h^d|0,g|0,h|0)|0,C,0)|0)^a|0,C^e|0,a|0,e|0)|0}function Uw(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Vw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jw(a,b,c,d,0)|0}function Ww(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=R(d,c)|0;f=a>>>16;a=(e>>>16)+(R(d,f)|0)|0;d=b>>>16;b=R(d,c)|0;return (C=(a>>>16)+(R(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function Xw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=Ww(e,a)|0;f=C;return (C=(R(b,a)|0)+(R(d,e)|0)+f|f&0,c|0|0)|0}function Yw(){return 0}function Zw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return sb[a&63](b|0,c|0,d|0)|0}function _w(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;tb[a&15](b|0,c|0,d|0,e|0,f|0)}function $w(a,b){a=a|0;b=b|0;ub[a&15](b|0)}function ax(a,b,c){a=a|0;b=b|0;c=c|0;vb[a&7](b|0,c|0)}function bx(a,b){a=a|0;b=b|0;return wb[a&15](b|0)|0}function cx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;xb[a&7](b|0,c|0,d|0)}function dx(a){a=a|0;yb[a&3]()}function ex(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return zb[a&7](b|0,c|0,d|0,e|0)|0}function fx(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;Ab[a&1](b|0,c|0,d|0,e|0,f|0,g|0)}function gx(a,b,c){a=a|0;b=b|0;c=c|0;return Bb[a&7](b|0,c|0)|0}function hx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Cb[a&1](b|0,c|0,d|0,e|0)}function ix(a,b,c){a=a|0;b=b|0;c=c|0;X(0);return 0}function jx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Y(1)}function kx(a){a=a|0;Z(2)}function lx(a,b){a=a|0;b=b|0;_(3)}function mx(a){a=a|0;$(4);return 0}function nx(a,b,c){a=a|0;b=b|0;c=c|0;aa(5)}function ox(){ba(6)}function px(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(7);return 0}function qx(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;da(8)}function rx(a,b){a=a|0;b=b|0;ea(9);return 0}function sx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa(10)} +function Cl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;i=i+112|0;if((i|0)>=(j|0))U();e=d+100|0;f=d+96|0;g=d+92|0;h=d+88|0;k=d+84|0;l=d+80|0;m=d+76|0;n=d+72|0;o=d+68|0;p=d+64|0;q=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[h>>2]=c[f>>2];c[k>>2]=c[(c[g>>2]|0)+160>>2];c[l>>2]=c[(c[g>>2]|0)+164>>2];c[m>>2]=c[(c[g>>2]|0)+168>>2];c[n>>2]=c[(c[g>>2]|0)+172>>2];c[o>>2]=c[(c[g>>2]|0)+176>>2];f=Dl(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=El(c[h>>2]|0)|0;c[q>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=El((c[h>>2]|0)+4|0)|0;c[q+4>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=El((c[h>>2]|0)+8|0)|0;c[q+8>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=El((c[h>>2]|0)+12|0)|0;c[q+12>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=El((c[h>>2]|0)+16|0)|0;c[q+16>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=El((c[h>>2]|0)+20|0)|0;c[q+20>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=El((c[h>>2]|0)+24|0)|0;c[q+24>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=El((c[h>>2]|0)+28|0)|0;c[q+28>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=El((c[h>>2]|0)+32|0)|0;c[q+32>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=El((c[h>>2]|0)+36|0)|0;c[q+36>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=El((c[h>>2]|0)+40|0)|0;c[q+40>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=El((c[h>>2]|0)+44|0)|0;c[q+44>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=El((c[h>>2]|0)+48|0)|0;c[q+48>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=El((c[h>>2]|0)+52|0)|0;c[q+52>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=El((c[h>>2]|0)+56|0)|0;c[q+56>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=El((c[h>>2]|0)+60|0)|0;c[q+60>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;c[p>>2]=c[q>>2]^c[q+8>>2]^c[q+32>>2]^c[q+52>>2];f=Dl(c[p>>2]|0,1)|0;c[q>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;c[p>>2]=c[q+4>>2]^c[q+12>>2]^c[q+36>>2]^c[q+56>>2];f=Dl(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;c[p>>2]=c[q+8>>2]^c[q+16>>2]^c[q+40>>2]^c[q+60>>2];f=Dl(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;c[p>>2]=c[q+12>>2]^c[q+20>>2]^c[q+44>>2]^c[q>>2];f=Dl(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+1859775393|0;c[p>>2]=c[q+16>>2]^c[q+24>>2]^c[q+48>>2]^c[q+4>>2];f=Dl(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+1859775393|0;c[p>>2]=c[q+20>>2]^c[q+28>>2]^c[q+52>>2]^c[q+8>>2];f=Dl(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+1859775393|0;c[p>>2]=c[q+24>>2]^c[q+32>>2]^c[q+56>>2]^c[q+12>>2];f=Dl(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+1859775393|0;c[p>>2]=c[q+28>>2]^c[q+36>>2]^c[q+60>>2]^c[q+16>>2];f=Dl(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+1859775393|0;c[p>>2]=c[q+32>>2]^c[q+40>>2]^c[q>>2]^c[q+20>>2];f=Dl(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+1859775393|0;c[p>>2]=c[q+36>>2]^c[q+44>>2]^c[q+4>>2]^c[q+24>>2];f=Dl(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+1859775393|0;c[p>>2]=c[q+40>>2]^c[q+48>>2]^c[q+8>>2]^c[q+28>>2];f=Dl(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+1859775393|0;c[p>>2]=c[q+44>>2]^c[q+52>>2]^c[q+12>>2]^c[q+32>>2];f=Dl(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+1859775393|0;c[p>>2]=c[q+48>>2]^c[q+56>>2]^c[q+16>>2]^c[q+36>>2];f=Dl(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+1859775393|0;c[p>>2]=c[q+52>>2]^c[q+60>>2]^c[q+20>>2]^c[q+40>>2];f=Dl(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+1859775393|0;c[p>>2]=c[q+56>>2]^c[q>>2]^c[q+24>>2]^c[q+44>>2];f=Dl(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+1859775393|0;c[p>>2]=c[q+60>>2]^c[q+4>>2]^c[q+28>>2]^c[q+48>>2];f=Dl(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+1859775393|0;c[p>>2]=c[q>>2]^c[q+8>>2]^c[q+32>>2]^c[q+52>>2];f=Dl(c[p>>2]|0,1)|0;c[q>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+1859775393|0;c[p>>2]=c[q+4>>2]^c[q+12>>2]^c[q+36>>2]^c[q+56>>2];f=Dl(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+1859775393|0;c[p>>2]=c[q+8>>2]^c[q+16>>2]^c[q+40>>2]^c[q+60>>2];f=Dl(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+1859775393|0;c[p>>2]=c[q+12>>2]^c[q+20>>2]^c[q+44>>2]^c[q>>2];f=Dl(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+1859775393|0;c[p>>2]=c[q+16>>2]^c[q+24>>2]^c[q+48>>2]^c[q+4>>2];f=Dl(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+1859775393|0;c[p>>2]=c[q+20>>2]^c[q+28>>2]^c[q+52>>2]^c[q+8>>2];f=Dl(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+1859775393|0;c[p>>2]=c[q+24>>2]^c[q+32>>2]^c[q+56>>2]^c[q+12>>2];f=Dl(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+1859775393|0;c[p>>2]=c[q+28>>2]^c[q+36>>2]^c[q+60>>2]^c[q+16>>2];f=Dl(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]&c[m>>2]|c[n>>2]&(c[l>>2]|c[m>>2]))+-1894007588|0;c[p>>2]=c[q+32>>2]^c[q+40>>2]^c[q>>2]^c[q+20>>2];f=Dl(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]&c[l>>2]|c[m>>2]&(c[k>>2]|c[l>>2]))+-1894007588|0;c[p>>2]=c[q+36>>2]^c[q+44>>2]^c[q+4>>2]^c[q+24>>2];f=Dl(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]&c[k>>2]|c[l>>2]&(c[o>>2]|c[k>>2]))+-1894007588|0;c[p>>2]=c[q+40>>2]^c[q+48>>2]^c[q+8>>2]^c[q+28>>2];f=Dl(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]&c[o>>2]|c[k>>2]&(c[n>>2]|c[o>>2]))+-1894007588|0;c[p>>2]=c[q+44>>2]^c[q+52>>2]^c[q+12>>2]^c[q+32>>2];f=Dl(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]&c[n>>2]|c[o>>2]&(c[m>>2]|c[n>>2]))+-1894007588|0;c[p>>2]=c[q+48>>2]^c[q+56>>2]^c[q+16>>2]^c[q+36>>2];f=Dl(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]&c[m>>2]|c[n>>2]&(c[l>>2]|c[m>>2]))+-1894007588|0;c[p>>2]=c[q+52>>2]^c[q+60>>2]^c[q+20>>2]^c[q+40>>2];f=Dl(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]&c[l>>2]|c[m>>2]&(c[k>>2]|c[l>>2]))+-1894007588|0;c[p>>2]=c[q+56>>2]^c[q>>2]^c[q+24>>2]^c[q+44>>2];f=Dl(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]&c[k>>2]|c[l>>2]&(c[o>>2]|c[k>>2]))+-1894007588|0;c[p>>2]=c[q+60>>2]^c[q+4>>2]^c[q+28>>2]^c[q+48>>2];f=Dl(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]&c[o>>2]|c[k>>2]&(c[n>>2]|c[o>>2]))+-1894007588|0;c[p>>2]=c[q>>2]^c[q+8>>2]^c[q+32>>2]^c[q+52>>2];f=Dl(c[p>>2]|0,1)|0;c[q>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]&c[n>>2]|c[o>>2]&(c[m>>2]|c[n>>2]))+-1894007588|0;c[p>>2]=c[q+4>>2]^c[q+12>>2]^c[q+36>>2]^c[q+56>>2];f=Dl(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]&c[m>>2]|c[n>>2]&(c[l>>2]|c[m>>2]))+-1894007588|0;c[p>>2]=c[q+8>>2]^c[q+16>>2]^c[q+40>>2]^c[q+60>>2];f=Dl(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]&c[l>>2]|c[m>>2]&(c[k>>2]|c[l>>2]))+-1894007588|0;c[p>>2]=c[q+12>>2]^c[q+20>>2]^c[q+44>>2]^c[q>>2];f=Dl(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]&c[k>>2]|c[l>>2]&(c[o>>2]|c[k>>2]))+-1894007588|0;c[p>>2]=c[q+16>>2]^c[q+24>>2]^c[q+48>>2]^c[q+4>>2];f=Dl(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]&c[o>>2]|c[k>>2]&(c[n>>2]|c[o>>2]))+-1894007588|0;c[p>>2]=c[q+20>>2]^c[q+28>>2]^c[q+52>>2]^c[q+8>>2];f=Dl(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]&c[n>>2]|c[o>>2]&(c[m>>2]|c[n>>2]))+-1894007588|0;c[p>>2]=c[q+24>>2]^c[q+32>>2]^c[q+56>>2]^c[q+12>>2];f=Dl(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]&c[m>>2]|c[n>>2]&(c[l>>2]|c[m>>2]))+-1894007588|0;c[p>>2]=c[q+28>>2]^c[q+36>>2]^c[q+60>>2]^c[q+16>>2];f=Dl(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]&c[l>>2]|c[m>>2]&(c[k>>2]|c[l>>2]))+-1894007588|0;c[p>>2]=c[q+32>>2]^c[q+40>>2]^c[q>>2]^c[q+20>>2];f=Dl(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]&c[k>>2]|c[l>>2]&(c[o>>2]|c[k>>2]))+-1894007588|0;c[p>>2]=c[q+36>>2]^c[q+44>>2]^c[q+4>>2]^c[q+24>>2];f=Dl(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]&c[o>>2]|c[k>>2]&(c[n>>2]|c[o>>2]))+-1894007588|0;c[p>>2]=c[q+40>>2]^c[q+48>>2]^c[q+8>>2]^c[q+28>>2];f=Dl(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]&c[n>>2]|c[o>>2]&(c[m>>2]|c[n>>2]))+-1894007588|0;c[p>>2]=c[q+44>>2]^c[q+52>>2]^c[q+12>>2]^c[q+32>>2];f=Dl(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+-899497514|0;c[p>>2]=c[q+48>>2]^c[q+56>>2]^c[q+16>>2]^c[q+36>>2];f=Dl(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+-899497514|0;c[p>>2]=c[q+52>>2]^c[q+60>>2]^c[q+20>>2]^c[q+40>>2];f=Dl(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+-899497514|0;c[p>>2]=c[q+56>>2]^c[q>>2]^c[q+24>>2]^c[q+44>>2];f=Dl(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+-899497514|0;c[p>>2]=c[q+60>>2]^c[q+4>>2]^c[q+28>>2]^c[q+48>>2];f=Dl(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+-899497514|0;c[p>>2]=c[q>>2]^c[q+8>>2]^c[q+32>>2]^c[q+52>>2];f=Dl(c[p>>2]|0,1)|0;c[q>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+-899497514|0;c[p>>2]=c[q+4>>2]^c[q+12>>2]^c[q+36>>2]^c[q+56>>2];f=Dl(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+-899497514|0;c[p>>2]=c[q+8>>2]^c[q+16>>2]^c[q+40>>2]^c[q+60>>2];f=Dl(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+-899497514|0;c[p>>2]=c[q+12>>2]^c[q+20>>2]^c[q+44>>2]^c[q>>2];f=Dl(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+-899497514|0;c[p>>2]=c[q+16>>2]^c[q+24>>2]^c[q+48>>2]^c[q+4>>2];f=Dl(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+-899497514|0;c[p>>2]=c[q+20>>2]^c[q+28>>2]^c[q+52>>2]^c[q+8>>2];f=Dl(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+-899497514|0;c[p>>2]=c[q+24>>2]^c[q+32>>2]^c[q+56>>2]^c[q+12>>2];f=Dl(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+-899497514|0;c[p>>2]=c[q+28>>2]^c[q+36>>2]^c[q+60>>2]^c[q+16>>2];f=Dl(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+-899497514|0;c[p>>2]=c[q+32>>2]^c[q+40>>2]^c[q>>2]^c[q+20>>2];f=Dl(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+-899497514|0;c[p>>2]=c[q+36>>2]^c[q+44>>2]^c[q+4>>2]^c[q+24>>2];f=Dl(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+-899497514|0;c[p>>2]=c[q+40>>2]^c[q+48>>2]^c[q+8>>2]^c[q+28>>2];f=Dl(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=Dl(c[k>>2]|0,5)|0;e=f+(c[l>>2]^c[m>>2]^c[n>>2])+-899497514|0;c[p>>2]=c[q+44>>2]^c[q+52>>2]^c[q+12>>2]^c[q+32>>2];f=Dl(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=Dl(c[l>>2]|0,30)|0;f=Dl(c[o>>2]|0,5)|0;e=f+(c[k>>2]^c[l>>2]^c[m>>2])+-899497514|0;c[p>>2]=c[q+48>>2]^c[q+56>>2]^c[q+16>>2]^c[q+36>>2];f=Dl(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=Dl(c[k>>2]|0,30)|0;f=Dl(c[n>>2]|0,5)|0;e=f+(c[o>>2]^c[k>>2]^c[l>>2])+-899497514|0;c[p>>2]=c[q+52>>2]^c[q+60>>2]^c[q+20>>2]^c[q+40>>2];f=Dl(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=Dl(c[o>>2]|0,30)|0;f=Dl(c[m>>2]|0,5)|0;e=f+(c[n>>2]^c[o>>2]^c[k>>2])+-899497514|0;c[p>>2]=c[q+56>>2]^c[q>>2]^c[q+24>>2]^c[q+44>>2];f=Dl(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=Dl(c[n>>2]|0,30)|0;f=Dl(c[l>>2]|0,5)|0;e=f+(c[m>>2]^c[n>>2]^c[o>>2])+-899497514|0;c[p>>2]=c[q+60>>2]^c[q+4>>2]^c[q+28>>2]^c[q+48>>2];f=Dl(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=Dl(c[m>>2]|0,30)|0;f=(c[g>>2]|0)+160|0;c[f>>2]=(c[f>>2]|0)+(c[k>>2]|0);k=(c[g>>2]|0)+164|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);l=(c[g>>2]|0)+168|0;c[l>>2]=(c[l>>2]|0)+(c[m>>2]|0);m=(c[g>>2]|0)+172|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);n=(c[g>>2]|0)+176|0;c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);i=d;return 104}function Dl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return c[e>>2]<<(c[f>>2]&31)|(c[e>>2]|0)>>>(32-(c[f>>2]|0)&31)|0}function El(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (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)|0}function Fl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=b;c[f>>2]=c[e>>2];Ar(c[f>>2]|0,0,0);c[g>>2]=c[(c[f>>2]|0)+128>>2];c[h>>2]=c[(c[f>>2]|0)+128+4>>2];c[l>>2]=c[g>>2]<<6;c[k>>2]=c[h>>2]<<6|(c[g>>2]|0)>>>26;c[g>>2]=c[l>>2];h=(c[l>>2]|0)+(c[(c[f>>2]|0)+144>>2]|0)|0;c[l>>2]=h;if(h>>>0<(c[g>>2]|0)>>>0)c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=c[l>>2];c[l>>2]=c[l>>2]<<3;c[k>>2]=c[k>>2]<<3;c[k>>2]=c[k>>2]|(c[g>>2]|0)>>>29;g=(c[(c[f>>2]|0)+144>>2]|0)<56;h=(c[f>>2]|0)+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=-128;a:do if(g)while(1){if((c[(c[f>>2]|0)+144>>2]|0)>=56)break a;e=(c[f>>2]|0)+144|0;h=c[e>>2]|0;c[e>>2]=h+1;a[(c[f>>2]|0)+h>>0]=0}else{while(1){o=c[f>>2]|0;if((c[(c[f>>2]|0)+144>>2]|0)>=64)break;h=o+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=0}Ar(o,0,0);e=c[f>>2]|0;h=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0))}while(0);Gl((c[f>>2]|0)+56|0,c[k>>2]|0);Gl((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=Bl(c[f>>2]|0,c[f>>2]|0,1)|0;Qe(c[n>>2]|0);Re();c[m>>2]=c[f>>2];Gl(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Gl(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Gl(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Gl(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Gl(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Gl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[c[h>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[h>>2]|0)+3>>0]=c[g>>2];i=e;return}function Hl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function Il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[f>>2]|0)==2){c[k>>2]=Jl(c[g>>2]|0,c[h>>2]|0)|0;l=c[k>>2]|0;i=e;return l|0}else{c[k>>2]=5;l=c[k>>2]|0;i=e;return l|0}return 0}function Jl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=42681;c[k>>2]=zr(2,0,42694,3,42184,20)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42747;c[k>>2]=zr(2,0,42325,56,42205,20)|0;if(c[k>>2]|0)break;c[h>>2]=42921;c[k>>2]=zr(2,1,0,0,42226,20)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](42986,2,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function Kl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+208|0;if((i|0)>=(j|0))U();g=f+192|0;h=f+188|0;k=f+184|0;l=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;Al(l,0);Ar(l,c[h>>2]|0,c[k>>2]|0);Fl(l);k=c[g>>2]|0;g=l;l=k+20|0;do{a[k>>0]=a[g>>0]|0;k=k+1|0;g=g+1|0}while((k|0)<(l|0));i=f;return}function Ll(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+208|0;if((i|0)>=(j|0))U();g=f+192|0;h=f+188|0;k=f+184|0;l=f;c[g>>2]=b;c[h>>2]=d;c[k>>2]=e;Al(l,0);while(1){if((c[k>>2]|0)<=0)break;Ar(l,(c[(c[h>>2]|0)+12>>2]|0)+(c[(c[h>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+8>>2]|0);c[h>>2]=(c[h>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+-1}Fl(l);k=c[g>>2]|0;g=l;l=k+20|0;do{a[k>>0]=a[g>>0]|0;k=k+1|0;g=g+1|0}while((k|0)<(l|0));i=f;return}function Ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+4|0;c[e>>2]=a;c[d+8>>2]=b;c[f>>2]=c[e>>2];c[d>>2]=cg()|0;c[(c[f>>2]|0)+160>>2]=-1056596264;c[(c[f>>2]|0)+164>>2]=914150663;c[(c[f>>2]|0)+168>>2]=812702999;c[(c[f>>2]|0)+172>>2]=-150054599;c[(c[f>>2]|0)+176>>2]=-4191439;c[(c[f>>2]|0)+180>>2]=1750603025;c[(c[f>>2]|0)+184>>2]=1694076839;c[(c[f>>2]|0)+188>>2]=-1090891868;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=64;c[(c[f>>2]|0)+152>>2]=33;i=d;return}function Nl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];do{c[l>>2]=Ol(c[k>>2]|0,c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+64;f=(c[h>>2]|0)+-1|0;c[h>>2]=f}while((f|0)!=0);i=e;return c[l>>2]|0}function Ol(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+320|0;if((i|0)>=(j|0))U();e=d+312|0;f=d+308|0;g=d+304|0;h=d+300|0;k=d+296|0;l=d+292|0;m=d+288|0;n=d+284|0;o=d+280|0;p=d+276|0;q=d+272|0;r=d+268|0;s=d+264|0;t=d+8|0;u=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[e>>2];c[h>>2]=c[(c[g>>2]|0)+160>>2];c[k>>2]=c[(c[g>>2]|0)+164>>2];c[l>>2]=c[(c[g>>2]|0)+168>>2];c[m>>2]=c[(c[g>>2]|0)+172>>2];c[n>>2]=c[(c[g>>2]|0)+176>>2];c[o>>2]=c[(c[g>>2]|0)+180>>2];c[p>>2]=c[(c[g>>2]|0)+184>>2];c[q>>2]=c[(c[g>>2]|0)+188>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>=16)break;e=Pl((c[f>>2]|0)+(c[u>>2]<<2)|0)|0;c[t+(c[u>>2]<<2)>>2]=e;c[u>>2]=(c[u>>2]|0)+1}while(1){if((c[u>>2]|0)>=64)break;f=Ql(c[t+((c[u>>2]|0)-2<<2)>>2]|0,17)|0;e=f^(Ql(c[t+((c[u>>2]|0)-2<<2)>>2]|0,19)|0);f=(e^(c[t+((c[u>>2]|0)-2<<2)>>2]|0)>>>10)+(c[t+((c[u>>2]|0)-7<<2)>>2]|0)|0;e=Ql(c[t+((c[u>>2]|0)-15<<2)>>2]|0,7)|0;b=e^(Ql(c[t+((c[u>>2]|0)-15<<2)>>2]|0,18)|0);c[t+(c[u>>2]<<2)>>2]=f+(b^(c[t+((c[u>>2]|0)-15<<2)>>2]|0)>>>3)+(c[t+((c[u>>2]|0)-16<<2)>>2]|0);c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>>2]|0)>=64)break;b=c[q>>2]|0;f=b+(Rl(c[n>>2]|0)|0)|0;b=f+(Sl(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0)|0;c[r>>2]=b+(c[7856+(c[u>>2]<<2)>>2]|0)+(c[t+(c[u>>2]<<2)>>2]|0);b=Tl(c[h>>2]|0)|0;c[s>>2]=b+(Ul(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0);c[m>>2]=(c[m>>2]|0)+(c[r>>2]|0);c[q>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[p>>2]|0;f=b+(Rl(c[m>>2]|0)|0)|0;b=f+(Sl(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+1<<2)>>2]|0)+(c[t+((c[u>>2]|0)+1<<2)>>2]|0);b=Tl(c[q>>2]|0)|0;c[s>>2]=b+(Ul(c[q>>2]|0,c[h>>2]|0,c[k>>2]|0)|0);c[l>>2]=(c[l>>2]|0)+(c[r>>2]|0);c[p>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[o>>2]|0;f=b+(Rl(c[l>>2]|0)|0)|0;b=f+(Sl(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+2<<2)>>2]|0)+(c[t+((c[u>>2]|0)+2<<2)>>2]|0);b=Tl(c[p>>2]|0)|0;c[s>>2]=b+(Ul(c[p>>2]|0,c[q>>2]|0,c[h>>2]|0)|0);c[k>>2]=(c[k>>2]|0)+(c[r>>2]|0);c[o>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[n>>2]|0;f=b+(Rl(c[k>>2]|0)|0)|0;b=f+(Sl(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+3<<2)>>2]|0)+(c[t+((c[u>>2]|0)+3<<2)>>2]|0);b=Tl(c[o>>2]|0)|0;c[s>>2]=b+(Ul(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0);c[h>>2]=(c[h>>2]|0)+(c[r>>2]|0);c[n>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[m>>2]|0;f=b+(Rl(c[h>>2]|0)|0)|0;b=f+(Sl(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+4<<2)>>2]|0)+(c[t+((c[u>>2]|0)+4<<2)>>2]|0);b=Tl(c[n>>2]|0)|0;c[s>>2]=b+(Ul(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0);c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[l>>2]|0;f=b+(Rl(c[q>>2]|0)|0)|0;b=f+(Sl(c[q>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+5<<2)>>2]|0)+(c[t+((c[u>>2]|0)+5<<2)>>2]|0);b=Tl(c[m>>2]|0)|0;c[s>>2]=b+(Ul(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0);c[p>>2]=(c[p>>2]|0)+(c[r>>2]|0);c[l>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[k>>2]|0;f=b+(Rl(c[p>>2]|0)|0)|0;b=f+(Sl(c[p>>2]|0,c[q>>2]|0,c[h>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+6<<2)>>2]|0)+(c[t+((c[u>>2]|0)+6<<2)>>2]|0);b=Tl(c[l>>2]|0)|0;c[s>>2]=b+(Ul(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0);c[o>>2]=(c[o>>2]|0)+(c[r>>2]|0);c[k>>2]=(c[r>>2]|0)+(c[s>>2]|0);b=c[h>>2]|0;f=b+(Rl(c[o>>2]|0)|0)|0;b=f+(Sl(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)|0;c[r>>2]=b+(c[7856+((c[u>>2]|0)+7<<2)>>2]|0)+(c[t+((c[u>>2]|0)+7<<2)>>2]|0);b=Tl(c[k>>2]|0)|0;c[s>>2]=b+(Ul(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0);c[n>>2]=(c[n>>2]|0)+(c[r>>2]|0);c[h>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[u>>2]=(c[u>>2]|0)+8}u=(c[g>>2]|0)+160|0;c[u>>2]=(c[u>>2]|0)+(c[h>>2]|0);h=(c[g>>2]|0)+164|0;c[h>>2]=(c[h>>2]|0)+(c[k>>2]|0);k=(c[g>>2]|0)+168|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);l=(c[g>>2]|0)+172|0;c[l>>2]=(c[l>>2]|0)+(c[m>>2]|0);m=(c[g>>2]|0)+176|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);n=(c[g>>2]|0)+180|0;c[n>>2]=(c[n>>2]|0)+(c[o>>2]|0);o=(c[g>>2]|0)+184|0;c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);p=(c[g>>2]|0)+188|0;c[p>>2]=(c[p>>2]|0)+(c[q>>2]|0);i=d;return 328}function Pl(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (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)|0}function Ql(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;i=d;return (c[e>>2]|0)>>>(c[f>>2]&31)|c[e>>2]<<(32-(c[f>>2]|0)&31)|0}function Rl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ql(c[d>>2]|0,6)|0;e=a^(Ql(c[d>>2]|0,11)|0);a=e^(Ql(c[d>>2]|0,25)|0);i=b;return a|0}function Sl(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;i=e;return c[h>>2]^c[f>>2]&(c[g>>2]^c[h>>2])|0}function Tl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ql(c[d>>2]|0,2)|0;e=a^(Ql(c[d>>2]|0,13)|0);a=e^(Ql(c[d>>2]|0,22)|0);i=b;return a|0}function Ul(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;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;i=e;return c[f>>2]&c[g>>2]|c[h>>2]&(c[f>>2]|c[g>>2])|0}function Vl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+28|0;f=d+24|0;g=d+20|0;h=d+16|0;k=d+12|0;l=d+8|0;m=d+4|0;n=d;c[e>>2]=b;c[f>>2]=c[e>>2];Ar(c[f>>2]|0,0,0);c[g>>2]=c[(c[f>>2]|0)+128>>2];c[h>>2]=c[(c[f>>2]|0)+128+4>>2];c[l>>2]=c[g>>2]<<6;c[k>>2]=c[h>>2]<<6|(c[g>>2]|0)>>>26;c[g>>2]=c[l>>2];h=(c[l>>2]|0)+(c[(c[f>>2]|0)+144>>2]|0)|0;c[l>>2]=h;if(h>>>0<(c[g>>2]|0)>>>0)c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=c[l>>2];c[l>>2]=c[l>>2]<<3;c[k>>2]=c[k>>2]<<3;c[k>>2]=c[k>>2]|(c[g>>2]|0)>>>29;g=(c[(c[f>>2]|0)+144>>2]|0)<56;h=(c[f>>2]|0)+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=-128;a:do if(g)while(1){if((c[(c[f>>2]|0)+144>>2]|0)>=56)break a;e=(c[f>>2]|0)+144|0;h=c[e>>2]|0;c[e>>2]=h+1;a[(c[f>>2]|0)+h>>0]=0}else{while(1){o=c[f>>2]|0;if((c[(c[f>>2]|0)+144>>2]|0)>=64)break;h=o+144|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[f>>2]|0)+e>>0]=0}Ar(o,0,0);e=c[f>>2]|0;h=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0))}while(0);Wl((c[f>>2]|0)+56|0,c[k>>2]|0);Wl((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=Nl(c[f>>2]|0,c[f>>2]|0,1)|0;Qe(c[n>>2]|0);Re();c[m>>2]=c[f>>2];Wl(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+180>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+184>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Wl(c[m>>2]|0,c[(c[f>>2]|0)+188>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Wl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[c[h>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[h>>2]|0)+3>>0]=c[g>>2];i=e;return}function Xl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function Yl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[f>>2]|0){case 11:{c[k>>2]=Zl(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=_l(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function Zl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=42681;c[k>>2]=zr(11,0,42694,3,42296,28)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42747;c[k>>2]=zr(11,0,42325,56,42382,28)|0;if(c[k>>2]|0)break;c[h>>2]=42921;c[k>>2]=zr(11,1,0,0,42411,28)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](42986,11,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function _l(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=42681;c[k>>2]=zr(8,0,42694,3,42440,32)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42747;c[k>>2]=zr(8,0,42325,56,42473,32)|0;if(c[k>>2]|0)break;c[h>>2]=42921;c[k>>2]=zr(8,1,0,0,42506,32)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](42986,8,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function $l(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d+12|0;f=d+4|0;c[e>>2]=a;c[d+8>>2]=b;c[f>>2]=c[e>>2];c[d>>2]=cg()|0;c[(c[f>>2]|0)+160>>2]=1779033703;c[(c[f>>2]|0)+164>>2]=-1150833019;c[(c[f>>2]|0)+168>>2]=1013904242;c[(c[f>>2]|0)+172>>2]=-1521486534;c[(c[f>>2]|0)+176>>2]=1359893119;c[(c[f>>2]|0)+180>>2]=-1694144372;c[(c[f>>2]|0)+184>>2]=528734635;c[(c[f>>2]|0)+188>>2]=1541459225;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=64;c[(c[f>>2]|0)+152>>2]=33;i=d;return}function am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d+4|0;c[e>>2]=a;c[d+12>>2]=b;c[f>>2]=c[e>>2];c[g>>2]=(c[f>>2]|0)+160;c[d>>2]=cg()|0;e=c[g>>2]|0;c[e>>2]=-205731576;c[e+4>>2]=1779033703;e=(c[g>>2]|0)+8|0;c[e>>2]=-2067093701;c[e+4>>2]=-1150833019;e=(c[g>>2]|0)+16|0;c[e>>2]=-23791573;c[e+4>>2]=1013904242;e=(c[g>>2]|0)+24|0;c[e>>2]=1595750129;c[e+4>>2]=-1521486534;e=(c[g>>2]|0)+32|0;c[e>>2]=-1377402159;c[e+4>>2]=1359893119;e=(c[g>>2]|0)+40|0;c[e>>2]=725511199;c[e+4>>2]=-1694144372;e=(c[g>>2]|0)+48|0;c[e>>2]=-79577749;c[e+4>>2]=528734635;e=(c[g>>2]|0)+56|0;c[e>>2]=327033209;c[e+4>>2]=1541459225;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=128;c[(c[f>>2]|0)+152>>2]=34;i=d;return}function bm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];do{c[l>>2]=(cm((c[k>>2]|0)+160|0,c[g>>2]|0)|0)+12;c[g>>2]=(c[g>>2]|0)+128;f=(c[h>>2]|0)+-1|0;c[h>>2]=f}while((f|0)!=0);i=e;return c[l>>2]|0}function cm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=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;d=i;i=i+240|0;if((i|0)>=(j|0))U();e=d+232|0;f=d+228|0;g=d+216|0;h=d+208|0;k=d+200|0;l=d+192|0;m=d+184|0;n=d+176|0;o=d+168|0;p=d+160|0;q=d+32|0;r=d+224|0;s=d+24|0;t=d+16|0;u=d+8|0;v=d;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;a=c[b+4>>2]|0;w=g;c[w>>2]=c[b>>2];c[w+4>>2]=a;a=(c[e>>2]|0)+8|0;w=c[a+4>>2]|0;b=h;c[b>>2]=c[a>>2];c[b+4>>2]=w;w=(c[e>>2]|0)+16|0;b=c[w+4>>2]|0;a=k;c[a>>2]=c[w>>2];c[a+4>>2]=b;b=(c[e>>2]|0)+24|0;a=c[b+4>>2]|0;w=l;c[w>>2]=c[b>>2];c[w+4>>2]=a;a=(c[e>>2]|0)+32|0;w=c[a+4>>2]|0;b=m;c[b>>2]=c[a>>2];c[b+4>>2]=w;w=(c[e>>2]|0)+40|0;b=c[w+4>>2]|0;a=n;c[a>>2]=c[w>>2];c[a+4>>2]=b;b=(c[e>>2]|0)+48|0;a=c[b+4>>2]|0;w=o;c[w>>2]=c[b>>2];c[w+4>>2]=a;a=(c[e>>2]|0)+56|0;w=c[a+4>>2]|0;b=p;c[b>>2]=c[a>>2];c[b+4>>2]=w;c[r>>2]=0;while(1){if((c[r>>2]|0)>=16)break;w=dm((c[f>>2]|0)+(c[r>>2]<<3)|0)|0;b=q+(c[r>>2]<<3)|0;c[b>>2]=w;c[b+4>>2]=C;c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=64)break;f=p;b=c[f>>2]|0;w=c[f+4>>2]|0;f=m;a=em(c[f>>2]|0,c[f+4>>2]|0)|0;f=Gw(b|0,w|0,a|0,C|0)|0;a=C;w=m;b=n;x=o;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(f|0,a|0,y|0,C|0)|0;y=72+(c[r>>2]<<3)|0;a=Gw(x|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;x=Gw(a|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=s;c[y>>2]=x;c[y+4>>2]=C;y=q+112|0;x=fm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+112|0;f=fm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+112|0;b=Mw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+72|0;w=Gw(x^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+8|0;b=fm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+8|0;x=fm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+8|0;z=Mw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Gw(w|0,y|0,b^x^z|0,f^C|0)|0;f=q;z=Gw(c[f>>2]|0,c[f+4>>2]|0,a|0,C|0)|0;a=q;c[a>>2]=z;c[a+4>>2]=C;a=g;z=hm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=g;x=h;b=k;y=im(c[f>>2]|0,c[f+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,a|0,y|0,C|0)|0;y=t;c[y>>2]=b;c[y+4>>2]=C;y=s;b=l;a=Gw(c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=l;c[y>>2]=a;c[y+4>>2]=C;y=s;a=t;b=Gw(c[y>>2]|0,c[y+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=p;c[a>>2]=b;c[a+4>>2]=C;a=o;b=c[a>>2]|0;y=c[a+4>>2]|0;a=l;z=em(c[a>>2]|0,c[a+4>>2]|0)|0;a=Gw(b|0,y|0,z|0,C|0)|0;z=C;y=l;b=m;x=n;f=gm(c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+1<<3)|0;z=Gw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+8|0;x=Gw(z|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=s;c[f>>2]=x;c[f+4>>2]=C;f=q+120|0;x=fm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+120|0;a=fm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+120|0;b=Mw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+80|0;y=Gw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+16|0;b=fm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+16|0;x=fm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+16|0;w=Mw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Gw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+8|0;w=a;x=Gw(c[w>>2]|0,c[w+4>>2]|0,z|0,C|0)|0;z=a;c[z>>2]=x;c[z+4>>2]=C;z=p;x=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=p;w=g;b=h;f=im(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(x|0,z|0,f|0,C|0)|0;f=t;c[f>>2]=b;c[f+4>>2]=C;f=s;b=k;z=Gw(c[b>>2]|0,c[b+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=k;c[f>>2]=z;c[f+4>>2]=C;f=s;z=t;b=Gw(c[f>>2]|0,c[f+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=o;c[z>>2]=b;c[z+4>>2]=C;z=n;b=c[z>>2]|0;f=c[z+4>>2]|0;z=k;x=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(b|0,f|0,x|0,C|0)|0;x=C;f=k;b=l;w=m;a=gm(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=Gw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+2<<3)|0;x=Gw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+16|0;w=Gw(x|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=s;c[a>>2]=w;c[a+4>>2]=C;a=q;w=fm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q;z=fm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q;b=Mw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+88|0;f=Gw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+24|0;b=fm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+24|0;w=fm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+24|0;y=Mw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Gw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+16|0;y=z;w=Gw(c[y>>2]|0,c[y+4>>2]|0,x|0,C|0)|0;x=z;c[x>>2]=w;c[x+4>>2]=C;x=o;w=hm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=o;y=p;b=g;a=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(w|0,x|0,a|0,C|0)|0;a=t;c[a>>2]=b;c[a+4>>2]=C;a=s;b=h;x=Gw(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=h;c[a>>2]=x;c[a+4>>2]=C;a=s;x=t;b=Gw(c[a>>2]|0,c[a+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=n;c[x>>2]=b;c[x+4>>2]=C;x=m;b=c[x>>2]|0;a=c[x+4>>2]|0;x=h;w=em(c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(b|0,a|0,w|0,C|0)|0;w=C;a=h;b=k;y=l;z=gm(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+3<<3)|0;w=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+24|0;y=Gw(w|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=s;c[z>>2]=y;c[z+4>>2]=C;z=q+8|0;y=fm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+8|0;x=fm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+8|0;b=Mw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+96|0;a=Gw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+32|0;b=fm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+32|0;y=fm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+32|0;f=Mw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Gw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+24|0;f=x;y=Gw(c[f>>2]|0,c[f+4>>2]|0,w|0,C|0)|0;w=x;c[w>>2]=y;c[w+4>>2]=C;w=n;y=hm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=n;f=o;b=p;z=im(c[x>>2]|0,c[x+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(y|0,w|0,z|0,C|0)|0;z=t;c[z>>2]=b;c[z+4>>2]=C;z=s;b=g;w=Gw(c[b>>2]|0,c[b+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=g;c[z>>2]=w;c[z+4>>2]=C;z=s;w=t;b=Gw(c[z>>2]|0,c[z+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=m;c[w>>2]=b;c[w+4>>2]=C;w=l;b=c[w>>2]|0;z=c[w+4>>2]|0;w=g;y=em(c[w>>2]|0,c[w+4>>2]|0)|0;w=Gw(b|0,z|0,y|0,C|0)|0;y=C;z=g;b=h;f=k;x=gm(c[z>>2]|0,c[z+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=Gw(w|0,y|0,x|0,C|0)|0;x=72+((c[r>>2]|0)+4<<3)|0;y=Gw(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+32|0;f=Gw(y|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=s;c[x>>2]=f;c[x+4>>2]=C;x=q+16|0;f=fm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+16|0;w=fm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+16|0;b=Mw(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+104|0;z=Gw(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+40|0;b=fm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+40|0;f=fm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+40|0;a=Mw(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=Gw(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+32|0;a=w;f=Gw(c[a>>2]|0,c[a+4>>2]|0,y|0,C|0)|0;y=w;c[y>>2]=f;c[y+4>>2]=C;y=m;f=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=m;a=n;b=o;x=im(c[w>>2]|0,c[w+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(f|0,y|0,x|0,C|0)|0;x=t;c[x>>2]=b;c[x+4>>2]=C;x=s;b=p;y=Gw(c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=p;c[x>>2]=y;c[x+4>>2]=C;x=s;y=t;b=Gw(c[x>>2]|0,c[x+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=l;c[y>>2]=b;c[y+4>>2]=C;y=k;b=c[y>>2]|0;x=c[y+4>>2]|0;y=p;f=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,x|0,f|0,C|0)|0;f=C;x=p;b=g;a=h;w=gm(c[x>>2]|0,c[x+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=Gw(y|0,f|0,w|0,C|0)|0;w=72+((c[r>>2]|0)+5<<3)|0;f=Gw(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+40|0;a=Gw(f|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=s;c[w>>2]=a;c[w+4>>2]=C;w=q+24|0;a=fm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+24|0;y=fm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+24|0;b=Mw(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+112|0;x=Gw(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+48|0;b=fm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+48|0;a=fm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+48|0;z=Mw(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=Gw(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+40|0;z=y;a=Gw(c[z>>2]|0,c[z+4>>2]|0,f|0,C|0)|0;f=y;c[f>>2]=a;c[f+4>>2]=C;f=l;a=hm(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=l;z=m;b=n;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(a|0,f|0,w|0,C|0)|0;w=t;c[w>>2]=b;c[w+4>>2]=C;w=s;b=o;f=Gw(c[b>>2]|0,c[b+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=o;c[w>>2]=f;c[w+4>>2]=C;w=s;f=t;b=Gw(c[w>>2]|0,c[w+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=k;c[f>>2]=b;c[f+4>>2]=C;f=h;b=c[f>>2]|0;w=c[f+4>>2]|0;f=o;a=em(c[f>>2]|0,c[f+4>>2]|0)|0;f=Gw(b|0,w|0,a|0,C|0)|0;a=C;w=o;b=p;z=g;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(f|0,a|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+6<<3)|0;a=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+48|0;z=Gw(a|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=s;c[y>>2]=z;c[y+4>>2]=C;y=q+32|0;z=fm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+32|0;f=fm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+32|0;b=Mw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+120|0;w=Gw(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+56|0;b=fm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+56|0;z=fm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+56|0;x=Mw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Gw(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+48|0;x=f;z=Gw(c[x>>2]|0,c[x+4>>2]|0,a|0,C|0)|0;a=f;c[a>>2]=z;c[a+4>>2]=C;a=k;z=hm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=k;x=l;b=m;y=im(c[f>>2]|0,c[f+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,a|0,y|0,C|0)|0;y=t;c[y>>2]=b;c[y+4>>2]=C;y=s;b=n;a=Gw(c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=n;c[y>>2]=a;c[y+4>>2]=C;y=s;a=t;b=Gw(c[y>>2]|0,c[y+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=h;c[a>>2]=b;c[a+4>>2]=C;a=g;b=c[a>>2]|0;y=c[a+4>>2]|0;a=n;z=em(c[a>>2]|0,c[a+4>>2]|0)|0;a=Gw(b|0,y|0,z|0,C|0)|0;z=C;y=n;b=o;x=p;f=gm(c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+7<<3)|0;z=Gw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+56|0;x=Gw(z|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=s;c[f>>2]=x;c[f+4>>2]=C;f=q+40|0;x=fm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+40|0;a=fm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+40|0;b=Mw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q;y=Gw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+64|0;b=fm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+64|0;x=fm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+64|0;w=Mw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Gw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+56|0;w=a;x=Gw(c[w>>2]|0,c[w+4>>2]|0,z|0,C|0)|0;z=a;c[z>>2]=x;c[z+4>>2]=C;z=h;x=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=h;w=k;b=l;f=im(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(x|0,z|0,f|0,C|0)|0;f=t;c[f>>2]=b;c[f+4>>2]=C;f=s;b=m;z=Gw(c[b>>2]|0,c[b+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=m;c[f>>2]=z;c[f+4>>2]=C;f=s;z=t;b=Gw(c[f>>2]|0,c[f+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=g;c[z>>2]=b;c[z+4>>2]=C;z=p;b=c[z>>2]|0;f=c[z+4>>2]|0;z=m;x=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(b|0,f|0,x|0,C|0)|0;x=C;f=m;b=n;w=o;a=gm(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=Gw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+8<<3)|0;x=Gw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+64|0;w=Gw(x|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=s;c[a>>2]=w;c[a+4>>2]=C;a=q+48|0;w=fm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+48|0;z=fm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+48|0;b=Mw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+8|0;f=Gw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+72|0;b=fm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+72|0;w=fm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+72|0;y=Mw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Gw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+64|0;y=z;w=Gw(c[y>>2]|0,c[y+4>>2]|0,x|0,C|0)|0;x=z;c[x>>2]=w;c[x+4>>2]=C;x=g;w=hm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=g;y=h;b=k;a=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(w|0,x|0,a|0,C|0)|0;a=t;c[a>>2]=b;c[a+4>>2]=C;a=s;b=l;x=Gw(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=l;c[a>>2]=x;c[a+4>>2]=C;a=s;x=t;b=Gw(c[a>>2]|0,c[a+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=p;c[x>>2]=b;c[x+4>>2]=C;x=o;b=c[x>>2]|0;a=c[x+4>>2]|0;x=l;w=em(c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(b|0,a|0,w|0,C|0)|0;w=C;a=l;b=m;y=n;z=gm(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+9<<3)|0;w=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+72|0;y=Gw(w|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=s;c[z>>2]=y;c[z+4>>2]=C;z=q+56|0;y=fm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+56|0;x=fm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+56|0;b=Mw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+16|0;a=Gw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+80|0;b=fm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+80|0;y=fm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+80|0;f=Mw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Gw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+72|0;f=x;y=Gw(c[f>>2]|0,c[f+4>>2]|0,w|0,C|0)|0;w=x;c[w>>2]=y;c[w+4>>2]=C;w=p;y=hm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=p;f=g;b=h;z=im(c[x>>2]|0,c[x+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(y|0,w|0,z|0,C|0)|0;z=t;c[z>>2]=b;c[z+4>>2]=C;z=s;b=k;w=Gw(c[b>>2]|0,c[b+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=k;c[z>>2]=w;c[z+4>>2]=C;z=s;w=t;b=Gw(c[z>>2]|0,c[z+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=o;c[w>>2]=b;c[w+4>>2]=C;w=n;b=c[w>>2]|0;z=c[w+4>>2]|0;w=k;y=em(c[w>>2]|0,c[w+4>>2]|0)|0;w=Gw(b|0,z|0,y|0,C|0)|0;y=C;z=k;b=l;f=m;x=gm(c[z>>2]|0,c[z+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=Gw(w|0,y|0,x|0,C|0)|0;x=72+((c[r>>2]|0)+10<<3)|0;y=Gw(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+80|0;f=Gw(y|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=s;c[x>>2]=f;c[x+4>>2]=C;x=q+64|0;f=fm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+64|0;w=fm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+64|0;b=Mw(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+24|0;z=Gw(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+88|0;b=fm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+88|0;f=fm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+88|0;a=Mw(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=Gw(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+80|0;a=w;f=Gw(c[a>>2]|0,c[a+4>>2]|0,y|0,C|0)|0;y=w;c[y>>2]=f;c[y+4>>2]=C;y=o;f=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=o;a=p;b=g;x=im(c[w>>2]|0,c[w+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(f|0,y|0,x|0,C|0)|0;x=t;c[x>>2]=b;c[x+4>>2]=C;x=s;b=h;y=Gw(c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=h;c[x>>2]=y;c[x+4>>2]=C;x=s;y=t;b=Gw(c[x>>2]|0,c[x+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=n;c[y>>2]=b;c[y+4>>2]=C;y=m;b=c[y>>2]|0;x=c[y+4>>2]|0;y=h;f=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,x|0,f|0,C|0)|0;f=C;x=h;b=k;a=l;w=gm(c[x>>2]|0,c[x+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=Gw(y|0,f|0,w|0,C|0)|0;w=72+((c[r>>2]|0)+11<<3)|0;f=Gw(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+88|0;a=Gw(f|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=s;c[w>>2]=a;c[w+4>>2]=C;w=q+72|0;a=fm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+72|0;y=fm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+72|0;b=Mw(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+32|0;x=Gw(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+96|0;b=fm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+96|0;a=fm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+96|0;z=Mw(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=Gw(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+88|0;z=y;a=Gw(c[z>>2]|0,c[z+4>>2]|0,f|0,C|0)|0;f=y;c[f>>2]=a;c[f+4>>2]=C;f=n;a=hm(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=n;z=o;b=p;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(a|0,f|0,w|0,C|0)|0;w=t;c[w>>2]=b;c[w+4>>2]=C;w=s;b=g;f=Gw(c[b>>2]|0,c[b+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=g;c[w>>2]=f;c[w+4>>2]=C;w=s;f=t;b=Gw(c[w>>2]|0,c[w+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=m;c[f>>2]=b;c[f+4>>2]=C;f=l;b=c[f>>2]|0;w=c[f+4>>2]|0;f=g;a=em(c[f>>2]|0,c[f+4>>2]|0)|0;f=Gw(b|0,w|0,a|0,C|0)|0;a=C;w=g;b=h;z=k;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(f|0,a|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+12<<3)|0;a=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=Gw(a|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=s;c[y>>2]=z;c[y+4>>2]=C;y=q+80|0;z=fm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+80|0;f=fm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+80|0;b=Mw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+40|0;w=Gw(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+104|0;b=fm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+104|0;z=fm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+104|0;x=Mw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Gw(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+96|0;x=f;z=Gw(c[x>>2]|0,c[x+4>>2]|0,a|0,C|0)|0;a=f;c[a>>2]=z;c[a+4>>2]=C;a=m;z=hm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=m;x=n;b=o;y=im(c[f>>2]|0,c[f+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,a|0,y|0,C|0)|0;y=t;c[y>>2]=b;c[y+4>>2]=C;y=s;b=p;a=Gw(c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=p;c[y>>2]=a;c[y+4>>2]=C;y=s;a=t;b=Gw(c[y>>2]|0,c[y+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=l;c[a>>2]=b;c[a+4>>2]=C;a=k;b=c[a>>2]|0;y=c[a+4>>2]|0;a=p;z=em(c[a>>2]|0,c[a+4>>2]|0)|0;a=Gw(b|0,y|0,z|0,C|0)|0;z=C;y=p;b=g;x=h;f=gm(c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+13<<3)|0;z=Gw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+104|0;x=Gw(z|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=s;c[f>>2]=x;c[f+4>>2]=C;f=q+88|0;x=fm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+88|0;a=fm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+88|0;b=Mw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+48|0;y=Gw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+112|0;b=fm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+112|0;x=fm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+112|0;w=Mw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Gw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+104|0;w=a;x=Gw(c[w>>2]|0,c[w+4>>2]|0,z|0,C|0)|0;z=a;c[z>>2]=x;c[z+4>>2]=C;z=l;x=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=l;w=m;b=n;f=im(c[a>>2]|0,c[a+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(x|0,z|0,f|0,C|0)|0;f=t;c[f>>2]=b;c[f+4>>2]=C;f=s;b=o;z=Gw(c[b>>2]|0,c[b+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=o;c[f>>2]=z;c[f+4>>2]=C;f=s;z=t;b=Gw(c[f>>2]|0,c[f+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=k;c[z>>2]=b;c[z+4>>2]=C;z=h;b=c[z>>2]|0;f=c[z+4>>2]|0;z=o;x=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(b|0,f|0,x|0,C|0)|0;x=C;f=o;b=p;w=g;a=gm(c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=Gw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+14<<3)|0;x=Gw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+112|0;w=Gw(x|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=s;c[a>>2]=w;c[a+4>>2]=C;a=q+96|0;w=fm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+96|0;z=fm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+96|0;b=Mw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+56|0;f=Gw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+120|0;b=fm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+120|0;w=fm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+120|0;y=Mw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Gw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+112|0;y=z;w=Gw(c[y>>2]|0,c[y+4>>2]|0,x|0,C|0)|0;x=z;c[x>>2]=w;c[x+4>>2]=C;x=k;w=hm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=k;y=l;b=m;a=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(w|0,x|0,a|0,C|0)|0;a=t;c[a>>2]=b;c[a+4>>2]=C;a=s;b=n;x=Gw(c[b>>2]|0,c[b+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=n;c[a>>2]=x;c[a+4>>2]=C;a=s;x=t;b=Gw(c[a>>2]|0,c[a+4>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=h;c[x>>2]=b;c[x+4>>2]=C;x=g;b=c[x>>2]|0;a=c[x+4>>2]|0;x=n;w=em(c[x>>2]|0,c[x+4>>2]|0)|0;x=Gw(b|0,a|0,w|0,C|0)|0;w=C;a=n;b=o;y=p;z=gm(c[a>>2]|0,c[a+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+15<<3)|0;w=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+120|0;y=Gw(w|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=s;c[z>>2]=y;c[z+4>>2]=C;z=q+104|0;y=fm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+104|0;x=fm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+104|0;b=Mw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+64|0;a=Gw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q;b=fm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q;y=fm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q;f=Mw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Gw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+120|0;f=x;y=Gw(c[f>>2]|0,c[f+4>>2]|0,w|0,C|0)|0;w=x;c[w>>2]=y;c[w+4>>2]=C;w=h;y=hm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=h;f=k;b=l;z=im(c[x>>2]|0,c[x+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(y|0,w|0,z|0,C|0)|0;z=t;c[z>>2]=b;c[z+4>>2]=C;z=s;b=m;w=Gw(c[b>>2]|0,c[b+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=m;c[z>>2]=w;c[z+4>>2]=C;z=s;w=t;b=Gw(c[z>>2]|0,c[z+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=g;c[w>>2]=b;c[w+4>>2]=C;c[r>>2]=(c[r>>2]|0)+16}while(1){if((c[r>>2]|0)>=80)break;t=p;s=c[t>>2]|0;w=c[t+4>>2]|0;t=m;b=em(c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(t|0,b|0,y|0,C|0)|0;y=72+(c[r>>2]<<3)|0;b=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;z=Gw(b|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=u;c[y>>2]=z;c[y+4>>2]=C;y=g;z=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=im(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(z|0,y|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=l;y=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=l;c[w>>2]=y;c[w+4>>2]=C;w=u;y=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=p;c[y>>2]=s;c[y+4>>2]=C;y=o;s=c[y>>2]|0;w=c[y+4>>2]|0;y=l;z=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+1<<3)|0;z=Gw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+8|0;t=Gw(z|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=u;c[b>>2]=t;c[b+4>>2]=C;b=p;t=hm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(t|0,b|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=k;b=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=k;c[w>>2]=b;c[w+4>>2]=C;w=u;b=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=o;c[b>>2]=s;c[b+4>>2]=C;b=n;s=c[b>>2]|0;w=c[b+4>>2]|0;b=k;t=em(c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+2<<3)|0;t=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+16|0;y=Gw(t|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=u;c[z>>2]=y;c[z+4>>2]=C;z=o;y=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=im(c[t>>2]|0,c[t+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(y|0,z|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=h;z=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=h;c[w>>2]=z;c[w+4>>2]=C;w=u;z=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=n;c[z>>2]=s;c[z+4>>2]=C;z=m;s=c[z>>2]|0;w=c[z+4>>2]|0;z=h;y=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+3<<3)|0;y=Gw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+24|0;b=Gw(y|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=u;c[t>>2]=b;c[t+4>>2]=C;t=n;b=hm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(b|0,t|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=g;t=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=g;c[w>>2]=t;c[w+4>>2]=C;w=u;t=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=m;c[t>>2]=s;c[t+4>>2]=C;t=l;s=c[t>>2]|0;w=c[t+4>>2]|0;t=g;b=em(c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+4<<3)|0;b=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+32|0;z=Gw(b|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=u;c[y>>2]=z;c[y+4>>2]=C;y=m;z=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=im(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(z|0,y|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=p;y=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=p;c[w>>2]=y;c[w+4>>2]=C;w=u;y=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=l;c[y>>2]=s;c[y+4>>2]=C;y=k;s=c[y>>2]|0;w=c[y+4>>2]|0;y=p;z=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+5<<3)|0;z=Gw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+40|0;t=Gw(z|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=u;c[b>>2]=t;c[b+4>>2]=C;b=l;t=hm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(t|0,b|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=o;b=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=o;c[w>>2]=b;c[w+4>>2]=C;w=u;b=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=k;c[b>>2]=s;c[b+4>>2]=C;b=h;s=c[b>>2]|0;w=c[b+4>>2]|0;b=o;t=em(c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+6<<3)|0;t=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+48|0;y=Gw(t|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=u;c[z>>2]=y;c[z+4>>2]=C;z=k;y=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=im(c[t>>2]|0,c[t+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(y|0,z|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=n;z=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=n;c[w>>2]=z;c[w+4>>2]=C;w=u;z=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=h;c[z>>2]=s;c[z+4>>2]=C;z=g;s=c[z>>2]|0;w=c[z+4>>2]|0;z=n;y=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+7<<3)|0;y=Gw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+56|0;b=Gw(y|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=u;c[t>>2]=b;c[t+4>>2]=C;t=h;b=hm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(b|0,t|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=m;t=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=m;c[w>>2]=t;c[w+4>>2]=C;w=u;t=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=C;t=p;s=c[t>>2]|0;w=c[t+4>>2]|0;t=m;b=em(c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+8<<3)|0;b=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+64|0;z=Gw(b|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=u;c[y>>2]=z;c[y+4>>2]=C;y=g;z=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=im(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(z|0,y|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=l;y=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=l;c[w>>2]=y;c[w+4>>2]=C;w=u;y=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=p;c[y>>2]=s;c[y+4>>2]=C;y=o;s=c[y>>2]|0;w=c[y+4>>2]|0;y=l;z=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+9<<3)|0;z=Gw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+72|0;t=Gw(z|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=u;c[b>>2]=t;c[b+4>>2]=C;b=p;t=hm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(t|0,b|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=k;b=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=k;c[w>>2]=b;c[w+4>>2]=C;w=u;b=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=o;c[b>>2]=s;c[b+4>>2]=C;b=n;s=c[b>>2]|0;w=c[b+4>>2]|0;b=k;t=em(c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+10<<3)|0;t=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+80|0;y=Gw(t|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=u;c[z>>2]=y;c[z+4>>2]=C;z=o;y=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=im(c[t>>2]|0,c[t+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(y|0,z|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=h;z=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=h;c[w>>2]=z;c[w+4>>2]=C;w=u;z=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=n;c[z>>2]=s;c[z+4>>2]=C;z=m;s=c[z>>2]|0;w=c[z+4>>2]|0;z=h;y=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+11<<3)|0;y=Gw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+88|0;b=Gw(y|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=u;c[t>>2]=b;c[t+4>>2]=C;t=n;b=hm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(b|0,t|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=g;t=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=g;c[w>>2]=t;c[w+4>>2]=C;w=u;t=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=m;c[t>>2]=s;c[t+4>>2]=C;t=l;s=c[t>>2]|0;w=c[t+4>>2]|0;t=g;b=em(c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+12<<3)|0;b=Gw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=Gw(b|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=u;c[y>>2]=z;c[y+4>>2]=C;y=m;z=hm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=im(c[b>>2]|0,c[b+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(z|0,y|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=p;y=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=p;c[w>>2]=y;c[w+4>>2]=C;w=u;y=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=l;c[y>>2]=s;c[y+4>>2]=C;y=k;s=c[y>>2]|0;w=c[y+4>>2]|0;y=p;z=em(c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=Gw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+13<<3)|0;z=Gw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+104|0;t=Gw(z|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=u;c[b>>2]=t;c[b+4>>2]=C;b=l;t=hm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=im(c[z>>2]|0,c[z+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(t|0,b|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=o;b=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=o;c[w>>2]=b;c[w+4>>2]=C;w=u;b=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=k;c[b>>2]=s;c[b+4>>2]=C;b=h;s=c[b>>2]|0;w=c[b+4>>2]|0;b=o;t=em(c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=Gw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+14<<3)|0;t=Gw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+112|0;y=Gw(t|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=u;c[z>>2]=y;c[z+4>>2]=C;z=k;y=hm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=im(c[t>>2]|0,c[t+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(y|0,z|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=n;z=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=n;c[w>>2]=z;c[w+4>>2]=C;w=u;z=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=h;c[z>>2]=s;c[z+4>>2]=C;z=g;s=c[z>>2]|0;w=c[z+4>>2]|0;z=n;y=em(c[z>>2]|0,c[z+4>>2]|0)|0;z=Gw(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=gm(c[w>>2]|0,c[w+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=Gw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+15<<3)|0;y=Gw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+120|0;b=Gw(y|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=u;c[t>>2]=b;c[t+4>>2]=C;t=h;b=hm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=im(c[y>>2]|0,c[y+4>>2]|0,c[z>>2]|0,c[z+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;s=Gw(b|0,t|0,w|0,C|0)|0;w=v;c[w>>2]=s;c[w+4>>2]=C;w=u;s=m;t=Gw(c[s>>2]|0,c[s+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=m;c[w>>2]=t;c[w+4>>2]=C;w=u;t=v;s=Gw(c[w>>2]|0,c[w+4>>2]|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=g;c[t>>2]=s;c[t+4>>2]=C;c[r>>2]=(c[r>>2]|0)+16}r=g;g=c[e>>2]|0;v=g;u=Gw(c[v>>2]|0,c[v+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=g;c[r>>2]=u;c[r+4>>2]=C;r=h;h=(c[e>>2]|0)+8|0;u=h;g=Gw(c[u>>2]|0,c[u+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=h;c[r>>2]=g;c[r+4>>2]=C;r=k;k=(c[e>>2]|0)+16|0;g=k;h=Gw(c[g>>2]|0,c[g+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=k;c[r>>2]=h;c[r+4>>2]=C;r=l;l=(c[e>>2]|0)+24|0;h=l;k=Gw(c[h>>2]|0,c[h+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=l;c[r>>2]=k;c[r+4>>2]=C;r=m;m=(c[e>>2]|0)+32|0;k=m;l=Gw(c[k>>2]|0,c[k+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=m;c[r>>2]=l;c[r+4>>2]=C;r=n;n=(c[e>>2]|0)+40|0;l=n;m=Gw(c[l>>2]|0,c[l+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=n;c[r>>2]=m;c[r+4>>2]=C;r=o;o=(c[e>>2]|0)+48|0;m=o;n=Gw(c[m>>2]|0,c[m+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=o;c[r>>2]=n;c[r+4>>2]=C;r=p;p=(c[e>>2]|0)+56|0;e=p;n=Gw(c[e>>2]|0,c[e+4>>2]|0,c[r>>2]|0,c[r+4>>2]|0)|0;r=p;c[r>>2]=n;c[r+4>>2]=C;i=d;return 208}function dm(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];e=Pw(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Pw(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Pw(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Pw(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Pw(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Pw(d[(c[f>>2]|0)+6>>0]|0|0,0,8)|0;C=m|C;i=b;return e|g|a|h|k|l|(d[(c[f>>2]|0)+7>>0]|0)|0}function em(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=e;f=fm(c[b>>2]|0,c[b+4>>2]|0,14,0)|0;b=C;a=e;g=fm(c[a>>2]|0,c[a+4>>2]|0,18,0)|0;a=b^C;b=e;e=fm(c[b>>2]|0,c[b+4>>2]|0,41,0)|0;C=a^C;i=d;return f^g^e|0}function fm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+8|0;h=f;k=g;c[k>>2]=a;c[k+4>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;e=g;b=Mw(c[e>>2]|0,c[e+4>>2]|0,c[h>>2]|0)|0;e=C;d=g;g=c[d>>2]|0;k=c[d+4>>2]|0;d=h;h=Fw(64,0,c[d>>2]|0,c[d+4>>2]|0)|0;d=Pw(g|0,k|0,h|0)|0;C=e|C;i=f;return b|d|0}function gm(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,k=0,l=0,m=0,n=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+16|0;l=h+8|0;m=h;n=k;c[n>>2]=a;c[n+4>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;e=m;c[e>>2]=f;c[e+4>>2]=g;g=k;e=l;l=k;k=m;C=c[g+4>>2]&c[e+4>>2]^~c[l+4>>2]&c[k+4>>2];i=h;return c[g>>2]&c[e>>2]^~c[l>>2]&c[k>>2]|0}function hm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))U();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=e;f=fm(c[b>>2]|0,c[b+4>>2]|0,28,0)|0;b=C;a=e;g=fm(c[a>>2]|0,c[a+4>>2]|0,34,0)|0;a=b^C;b=e;e=fm(c[b>>2]|0,c[b+4>>2]|0,39,0)|0;C=a^C;i=d;return f^g^e|0}function im(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,k=0,l=0,m=0,n=0;h=i;i=i+32|0;if((i|0)>=(j|0))U();k=h+16|0;l=h+8|0;m=h;n=k;c[n>>2]=a;c[n+4>>2]=b;b=l;c[b>>2]=d;c[b+4>>2]=e;e=m;c[e>>2]=f;c[e+4>>2]=g;g=k;e=l;f=k;k=m;b=l;l=m;C=c[g+4>>2]&c[e+4>>2]^c[f+4>>2]&c[k+4>>2]^c[b+4>>2]&c[l+4>>2];i=h;return c[g>>2]&c[e>>2]^c[f>>2]&c[k>>2]^c[b>>2]&c[l>>2]|0}function jm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+48|0;if((i|0)>=(j|0))U();e=d+44|0;f=d+40|0;g=d+36|0;h=d+24|0;k=d+16|0;l=d+8|0;m=d;n=d+32|0;c[e>>2]=b;c[f>>2]=c[e>>2];Ar(c[e>>2]|0,0,0);b=(c[f>>2]|0)+128|0;o=c[b+4>>2]|0;p=h;c[p>>2]=c[b>>2];c[p+4>>2]=o;o=(c[f>>2]|0)+136|0;p=c[o+4>>2]|0;b=k;c[b>>2]=c[o>>2];c[b+4>>2]=p;p=h;b=Pw(c[p>>2]|0,c[p+4>>2]|0,7)|0;p=m;c[p>>2]=b;c[p+4>>2]=C;p=k;k=Pw(c[p>>2]|0,c[p+4>>2]|0,7)|0;p=C;b=h;o=Mw(c[b>>2]|0,c[b+4>>2]|0,57)|0;b=l;c[b>>2]=k|o;c[b+4>>2]=p|C;p=m;b=c[p+4>>2]|0;o=h;c[o>>2]=c[p>>2];c[o+4>>2]=b;b=c[(c[f>>2]|0)+144>>2]|0;o=m;p=Gw(c[o>>2]|0,c[o+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;b=C;o=m;c[o>>2]=p;c[o+4>>2]=b;o=h;k=c[o+4>>2]|0;if(b>>>0<k>>>0|((b|0)==(k|0)?p>>>0<(c[o>>2]|0)>>>0:0)){o=l;p=Gw(c[o>>2]|0,c[o+4>>2]|0,1,0)|0;o=l;c[o>>2]=p;c[o+4>>2]=C}o=m;p=c[o+4>>2]|0;k=h;c[k>>2]=c[o>>2];c[k+4>>2]=p;p=m;k=Pw(c[p>>2]|0,c[p+4>>2]|0,3)|0;p=m;c[p>>2]=k;c[p+4>>2]=C;p=l;k=Pw(c[p>>2]|0,c[p+4>>2]|0,3)|0;p=l;c[p>>2]=k;c[p+4>>2]=C;p=h;h=Mw(c[p>>2]|0,c[p+4>>2]|0,61)|0;p=l;k=c[p+4>>2]|C;o=l;c[o>>2]=c[p>>2]|h;c[o+4>>2]=k;k=(c[(c[f>>2]|0)+144>>2]|0)<112;o=(c[f>>2]|0)+144|0;h=c[o>>2]|0;c[o>>2]=h+1;a[(c[f>>2]|0)+h>>0]=-128;a:do if(k)while(1){if((c[(c[f>>2]|0)+144>>2]|0)>=112)break a;h=(c[f>>2]|0)+144|0;o=c[h>>2]|0;c[h>>2]=o+1;a[(c[f>>2]|0)+o>>0]=0}else{while(1){if((c[(c[f>>2]|0)+144>>2]|0)>=128)break;o=(c[f>>2]|0)+144|0;h=c[o>>2]|0;c[o>>2]=h+1;a[(c[f>>2]|0)+h>>0]=0}Ar(c[e>>2]|0,0,0);h=c[f>>2]|0;o=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(o|0))}while(0);e=l;km((c[f>>2]|0)+112|0,c[e>>2]|0,c[e+4>>2]|0);e=m;km((c[f>>2]|0)+120|0,c[e>>2]|0,c[e+4>>2]|0);c[g>>2]=bm(c[f>>2]|0,c[f>>2]|0,1)|0;Qe(c[g>>2]|0);Re();c[n>>2]=c[f>>2];g=(c[f>>2]|0)+160|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+8|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+16|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+24|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+32|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+40|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+48|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;g=(c[f>>2]|0)+160+56|0;km(c[n>>2]|0,c[g>>2]|0,c[g+4>>2]|0);c[n>>2]=(c[n>>2]|0)+8;i=d;return}function km(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0;f=i;i=i+16|0;if((i|0)>=(j|0))U();g=f+12|0;h=f;k=f+8|0;c[g>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[k>>2]=c[g>>2];g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,40)|0;a[(c[k>>2]|0)+2>>0]=e;a[(c[k>>2]|0)+3>>0]=c[h+4>>2];e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Mw(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Mw(c[e>>2]|0,c[e+4>>2]|0,8)|0;a[(c[k>>2]|0)+6>>0]=g;a[(c[k>>2]|0)+7>>0]=c[h>>2];i=f;return}function lm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function mm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;switch(c[f>>2]|0){case 9:{c[k>>2]=nm(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=om(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function nm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=42681;c[k>>2]=zr(9,0,42694,3,42698,48)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42747;c[k>>2]=zr(9,0,42759,112,42872,48)|0;if(c[k>>2]|0)break;c[h>>2]=42921;c[k>>2]=zr(9,1,0,0,42937,48)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](42986,9,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function om(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,k=0,l=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+12|0;g=d+8|0;h=d+4|0;k=d;c[f>>2]=a;c[g>>2]=b;c[h>>2]=42681;c[k>>2]=zr(10,0,42694,3,42993,64)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42747;c[k>>2]=zr(10,0,42759,112,43058,64)|0;if(c[k>>2]|0)break;c[h>>2]=42921;c[k>>2]=zr(10,1,0,0,43123,64)|0;if(c[k>>2]|0)break}c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}while(0);if(c[g>>2]|0)Cb[c[g>>2]&1](42986,10,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function pm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+32|0;if((i|0)>=(j|0))U();e=d+16|0;f=d+8|0;g=d+4|0;c[e>>2]=a;c[d+12>>2]=b;c[f>>2]=c[e>>2];c[g>>2]=(c[f>>2]|0)+160;c[d>>2]=cg()|0;e=c[g>>2]|0;c[e>>2]=-1056596264;c[e+4>>2]=-876896931;e=(c[g>>2]|0)+8|0;c[e>>2]=914150663;c[e+4>>2]=1654270250;e=(c[g>>2]|0)+16|0;c[e>>2]=812702999;c[e+4>>2]=-1856437926;e=(c[g>>2]|0)+24|0;c[e>>2]=-150054599;c[e+4>>2]=355462360;e=(c[g>>2]|0)+32|0;c[e>>2]=-4191439;c[e+4>>2]=1731405415;e=(c[g>>2]|0)+40|0;c[e>>2]=1750603025;c[e+4>>2]=-1900787065;e=(c[g>>2]|0)+48|0;c[e>>2]=1694076839;c[e+4>>2]=-619958771;e=(c[g>>2]|0)+56|0;c[e>>2]=-1090891868;c[e+4>>2]=1203062813;e=(c[f>>2]|0)+128|0;c[e>>2]=0;c[e+4>>2]=0;e=(c[f>>2]|0)+136|0;c[e>>2]=0;c[e+4>>2]=0;c[(c[f>>2]|0)+144>>2]=0;c[(c[f>>2]|0)+148>>2]=128;c[(c[f>>2]|0)+152>>2]=34;i=d;return}function qm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))U();f=e+16|0;g=e+12|0;h=e+8|0;k=e+4|0;l=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];c[l>>2]=rm(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;Qe(47);Re();i=e;return c[l>>2]|0} +function rm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=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;g=i;i=i+64|0;if((i|0)>=(j|0))U();h=g;k=g+36|0;l=g+32|0;m=g+28|0;n=g+24|0;o=g+20|0;p=g+16|0;q=g+12|0;r=g+8|0;s=g+4|0;t=g+56|0;u=g+55|0;v=g+54|0;w=g+53|0;x=g+52|0;y=g+51|0;z=g+50|0;A=g+49|0;B=g+48|0;C=g+47|0;D=g+46|0;E=g+45|0;F=g+44|0;G=g+43|0;H=g+42|0;I=g+41|0;J=g+40|0;c[l>>2]=b;c[m>>2]=e;c[n>>2]=f;a[t>>0]=0;a[u>>0]=0;a[v>>0]=0;a[w>>0]=0;a[x>>0]=0;a[y>>0]=0;a[z>>0]=0;a[A>>0]=0;a[B>>0]=0;a[C>>0]=0;a[D>>0]=0;a[E>>0]=0;a[F>>0]=0;a[G>>0]=0;a[H>>0]=0;a[I>>0]=0;if(((c[n>>2]|0)-16|16|0)!=16){c[k>>2]=44;K=c[k>>2]|0;i=g;return K|0}if((c[17657]|0)==0?(c[17657]=1,c[17658]=sm()|0,c[17658]|0):0){c[h>>2]=c[17658];Ie(43523,h)}if(c[17658]|0){c[k>>2]=50;K=c[k>>2]|0;i=g;return K|0}if(a[c[m>>2]>>0]|0){a[J>>0]=a[43527+((d[c[m>>2]>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+0)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+1)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+1>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+1>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+164)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+68)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+2>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+2>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+138)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+213)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+191)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+3>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+3>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+209)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+127)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+61)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+4>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+4>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+153)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+70)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+102)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+5>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+5>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+150)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+60)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+91)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+6>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+6>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+237)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+55)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+79)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+7>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+7>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43782+((d[J>>0]|0)+224)>>0];a[u>>0]=d[u>>0]^d[43782+((d[J>>0]|0)+208)>>0];a[v>>0]=d[v>>0]^d[43782+((d[J>>0]|0)+140)>>0];a[w>>0]=d[w>>0]^d[43782+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+8>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+8>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+0)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+1)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+9>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+9>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+164)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+68)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+10>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+10>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+138)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+213)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+191)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+11>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+11>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+209)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+127)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+61)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+12>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+12>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+153)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+70)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+102)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+13>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+13>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+150)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+60)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+91)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+14>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+14>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+237)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+55)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+79)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+15>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+15>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43782+((d[J>>0]|0)+224)>>0];a[y>>0]=d[y>>0]^d[43782+((d[J>>0]|0)+208)>>0];a[z>>0]=d[z>>0]^d[43782+((d[J>>0]|0)+140)>>0];a[A>>0]=d[A>>0]^d[43782+((d[J>>0]|0)+23)>>0]}if((c[n>>2]|0)==32){if(a[(c[m>>2]|0)+16>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+16>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+0)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+1)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+17>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+17>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+164)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+68)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+18>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+18>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+138)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+213)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+191)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+19>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+19>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+209)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+127)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+61)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+20>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+20>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+153)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+70)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+102)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+21>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+21>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+150)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+60)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+91)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+22>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+22>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+237)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+55)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+79)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+23>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+23>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43782+((d[J>>0]|0)+224)>>0];a[C>>0]=d[C>>0]^d[43782+((d[J>>0]|0)+208)>>0];a[D>>0]=d[D>>0]^d[43782+((d[J>>0]|0)+140)>>0];a[E>>0]=d[E>>0]^d[43782+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+24>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+24>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+0)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+1)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+25>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+25>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+45)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+164)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+68)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+26>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+26>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+138)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+213)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+191)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+27>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+27>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+209)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+127)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+61)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+28>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+28>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+153)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+70)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+102)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+29>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+29>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+150)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+60)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+91)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+30>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+30>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+237)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+55)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+79)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+31>>0]|0){a[J>>0]=a[43527+((d[(c[m>>2]|0)+31>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43782+((d[J>>0]|0)+224)>>0];a[G>>0]=d[G>>0]^d[43782+((d[J>>0]|0)+208)>>0];a[H>>0]=d[H>>0]^d[43782+((d[J>>0]|0)+140)>>0];a[I>>0]=d[I>>0]^d[43782+((d[J>>0]|0)+23)>>0]}c[p>>2]=0;c[o>>2]=0;c[q>>2]=1;while(1){if((c[o>>2]|0)>=256)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=c[8368+((d[45042+(d[45042+(d[44786+(d[44274+(c[q>>2]|0)>>0]^d[t>>0])>>0]^d[x>>0])>>0]^d[B>>0])>>0]^d[F>>0])<<2)>>2];c[(c[l>>2]|0)+1024+(c[o>>2]<<2)>>2]=c[9392+((d[45042+(d[44786+(d[44786+(d[44274+(c[p>>2]|0)>>0]^d[u>>0])>>0]^d[y>>0])>>0]^d[C>>0])>>0]^d[G>>0])<<2)>>2];c[(c[l>>2]|0)+2048+(c[o>>2]<<2)>>2]=c[10416+((d[44786+(d[45042+(d[45042+(d[44274+(c[p>>2]|0)>>0]^d[v>>0])>>0]^d[z>>0])>>0]^d[D>>0])>>0]^d[H>>0])<<2)>>2];c[(c[l>>2]|0)+3072+(c[o>>2]<<2)>>2]=c[11440+((d[44786+(d[44786+(d[45042+(d[44274+(c[q>>2]|0)>>0]^d[w>>0])>>0]^d[A>>0])>>0]^d[E>>0])>>0]^d[I>>0])<<2)>>2];c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+2}c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(117^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(169^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(169^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(117^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(243^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(103^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(103^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(243^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096>>2]=c[r>>2];c[(c[l>>2]|0)+4096+4>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(198^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(179^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(179^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(198^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(244^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(232^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(232^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(244^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+8>>2]=c[r>>2];c[(c[l>>2]|0)+4096+12>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(219^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(4^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(4^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(219^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(123^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(253^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(253^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(123^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+16>>2]=c[r>>2];c[(c[l>>2]|0)+4096+20>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(251^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(163^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(163^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(251^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(200^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(118^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(118^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(200^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+24>>2]=c[r>>2];c[(c[l>>2]|0)+4096+28>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(74^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(154^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(154^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(74^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(211^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(146^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(146^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(211^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128>>2]=c[r>>2];c[(c[l>>2]|0)+4128+4>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(230^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(128^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(128^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(230^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(107^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(120^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(120^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(107^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+8>>2]=c[r>>2];c[(c[l>>2]|0)+4128+12>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(69^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(228^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(228^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(69^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(125^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(221^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(221^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(125^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+16>>2]=c[r>>2];c[(c[l>>2]|0)+4128+20>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(232^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(209^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(209^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(232^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(75^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(56^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(56^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(75^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+24>>2]=c[r>>2];c[(c[l>>2]|0)+4128+28>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(214^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(13^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(13^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(214^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(50^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(198^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(198^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(50^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+32>>2]=c[r>>2];c[(c[l>>2]|0)+4128+36>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(216^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(53^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(53^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(216^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(253^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(152^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(152^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(253^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+40>>2]=c[r>>2];c[(c[l>>2]|0)+4128+44>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(55^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(24^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(24^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(55^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(113^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(247^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(247^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(113^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+48>>2]=c[r>>2];c[(c[l>>2]|0)+4128+52>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(241^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(236^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(236^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(241^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(225^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(108^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(108^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(225^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+56>>2]=c[r>>2];c[(c[l>>2]|0)+4128+60>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(48^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(67^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(67^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(48^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(15^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(117^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(117^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(15^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+64>>2]=c[r>>2];c[(c[l>>2]|0)+4128+68>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(248^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(55^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(55^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(248^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(27^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(38^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(38^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(27^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+72>>2]=c[r>>2];c[(c[l>>2]|0)+4128+76>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(135^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(250^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(250^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(135^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(250^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(19^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(19^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(250^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+80>>2]=c[r>>2];c[(c[l>>2]|0)+4128+84>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(6^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(148^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(148^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(6^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(63^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(72^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(72^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(63^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+88>>2]=c[r>>2];c[(c[l>>2]|0)+4128+92>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(94^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(242^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(242^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(94^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(186^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(208^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(208^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(186^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+96>>2]=c[r>>2];c[(c[l>>2]|0)+4128+100>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(174^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(139^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(139^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(174^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(91^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(48^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(48^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(91^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+104>>2]=c[r>>2];c[(c[l>>2]|0)+4128+108>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(138^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(132^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(132^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(138^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(0^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(84^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(84^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(0^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+112>>2]=c[r>>2];c[(c[l>>2]|0)+4128+116>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(d[45042+(d[44786+(188^d[(c[m>>2]|0)+24>>0])>>0]^d[(c[m>>2]|0)+16>>0])>>0]^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(223^d[(c[m>>2]|0)+25>>0])>>0]^d[(c[m>>2]|0)+17>>0])>>0]^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(223^d[(c[m>>2]|0)+26>>0])>>0]^d[(c[m>>2]|0)+18>>0])>>0]^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(188^d[(c[m>>2]|0)+27>>0])>>0]^d[(c[m>>2]|0)+19>>0])>>0]^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(d[45042+(d[44786+(157^d[(c[m>>2]|0)+28>>0])>>0]^d[(c[m>>2]|0)+20>>0])>>0]^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(d[44786+(d[44786+(35^d[(c[m>>2]|0)+29>>0])>>0]^d[(c[m>>2]|0)+21>>0])>>0]^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(d[45042+(d[45042+(35^d[(c[m>>2]|0)+30>>0])>>0]^d[(c[m>>2]|0)+22>>0])>>0]^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(d[44786+(d[45042+(157^d[(c[m>>2]|0)+31>>0])>>0]^d[(c[m>>2]|0)+23>>0])>>0]^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+120>>2]=c[r>>2];c[(c[l>>2]|0)+4128+124>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23)}else{c[p>>2]=0;c[o>>2]=0;c[q>>2]=1;while(1){if((c[o>>2]|0)>=256)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=c[8368+((d[45042+(d[44274+(c[p>>2]|0)>>0]^d[t>>0])>>0]^d[x>>0])<<2)>>2];c[(c[l>>2]|0)+1024+(c[o>>2]<<2)>>2]=c[9392+((d[45042+(d[44274+(c[q>>2]|0)>>0]^d[u>>0])>>0]^d[y>>0])<<2)>>2];c[(c[l>>2]|0)+2048+(c[o>>2]<<2)>>2]=c[10416+((d[44786+(d[44274+(c[p>>2]|0)>>0]^d[v>>0])>>0]^d[z>>0])<<2)>>2];c[(c[l>>2]|0)+3072+(c[o>>2]<<2)>>2]=c[11440+((d[44786+(d[44274+(c[q>>2]|0)>>0]^d[w>>0])>>0]^d[A>>0])<<2)>>2];c[o>>2]=(c[o>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+2}c[r>>2]=c[8368+((d[45042+(169^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(117^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(169^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(117^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(103^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(243^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(103^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(243^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096>>2]=c[r>>2];c[(c[l>>2]|0)+4096+4>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(179^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(198^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(179^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(198^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(232^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(244^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(232^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(244^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+8>>2]=c[r>>2];c[(c[l>>2]|0)+4096+12>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(4^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(219^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(4^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(219^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(253^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(123^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(253^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(123^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+16>>2]=c[r>>2];c[(c[l>>2]|0)+4096+20>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(163^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(251^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(163^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(251^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(118^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(200^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(118^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(200^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4096+24>>2]=c[r>>2];c[(c[l>>2]|0)+4096+28>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(154^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(74^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(154^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(74^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(146^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(211^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(146^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(211^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128>>2]=c[r>>2];c[(c[l>>2]|0)+4128+4>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(128^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(230^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(128^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(230^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(120^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(107^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(120^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(107^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+8>>2]=c[r>>2];c[(c[l>>2]|0)+4128+12>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(228^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(69^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(228^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(69^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(221^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(125^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(221^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(125^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+16>>2]=c[r>>2];c[(c[l>>2]|0)+4128+20>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(209^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(232^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(209^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(232^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(56^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(75^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(56^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(75^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+24>>2]=c[r>>2];c[(c[l>>2]|0)+4128+28>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(13^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(214^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(13^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(214^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(198^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(50^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(198^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(50^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+32>>2]=c[r>>2];c[(c[l>>2]|0)+4128+36>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(53^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(216^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(53^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(216^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(152^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(253^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(152^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(253^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+40>>2]=c[r>>2];c[(c[l>>2]|0)+4128+44>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(24^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(55^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(24^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(55^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(247^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(113^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(247^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(113^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+48>>2]=c[r>>2];c[(c[l>>2]|0)+4128+52>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(236^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(241^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(236^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(241^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(108^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(225^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(108^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(225^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+56>>2]=c[r>>2];c[(c[l>>2]|0)+4128+60>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(67^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(48^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(67^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(48^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(117^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(15^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(117^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(15^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+64>>2]=c[r>>2];c[(c[l>>2]|0)+4128+68>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(55^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(248^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(55^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(248^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(38^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(27^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(38^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(27^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+72>>2]=c[r>>2];c[(c[l>>2]|0)+4128+76>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(250^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(135^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(250^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(135^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(19^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(250^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(19^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(250^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+80>>2]=c[r>>2];c[(c[l>>2]|0)+4128+84>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(148^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(6^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(148^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(6^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(72^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(63^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(72^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(63^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+88>>2]=c[r>>2];c[(c[l>>2]|0)+4128+92>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(242^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(94^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(242^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(94^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(208^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(186^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(208^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(186^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+96>>2]=c[r>>2];c[(c[l>>2]|0)+4128+100>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(139^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(174^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(139^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(174^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(48^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(91^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(48^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(91^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+104>>2]=c[r>>2];c[(c[l>>2]|0)+4128+108>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(132^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(138^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(132^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(138^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(84^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(0^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(84^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(0^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+112>>2]=c[r>>2];c[(c[l>>2]|0)+4128+116>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23);c[r>>2]=c[8368+((d[45042+(223^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9392+((d[45042+(188^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10416+((d[44786+(223^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11440+((d[44786+(188^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8368+((d[45042+(35^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9392+((d[45042+(157^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10416+((d[44786+(35^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11440+((d[44786+(157^d[(c[m>>2]|0)+15>>0])>>0]^d[(c[m>>2]|0)+7>>0])<<2)>>2];c[s>>2]=(c[s>>2]<<8)+((c[s>>2]|0)>>>24);c[r>>2]=(c[r>>2]|0)+(c[s>>2]|0);c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);c[(c[l>>2]|0)+4128+120>>2]=c[r>>2];c[(c[l>>2]|0)+4128+124>>2]=(c[s>>2]<<9)+((c[s>>2]|0)>>>23)}c[k>>2]=0;K=c[k>>2]|0;i=g;return K|0}function sm(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+4288|0;if((i|0)>=(j|0))U();b=a+4264|0;d=a+8|0;e=a+4272|0;f=a;qm(d,43267,16)|0;tm(d,e,43283)|0;do if(!(vv(e,43299,16)|0)){xm(d,e,e)|0;if(vv(e,43283,16)|0){c[b>>2]=43351;break}qm(d,43387,32)|0;tm(d,e,43419)|0;if(vv(e,43435,16)|0){c[b>>2]=43451;break}xm(d,e,e)|0;if(vv(e,43419,16)|0){c[b>>2]=43487;break}g=zm()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=Cm()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=Fm()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}else{c[b>>2]=0;break}}else c[b>>2]=43315;while(0);i=a;return c[b>>2]|0}function tm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];um(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36}function um(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;e=i;i=i+48|0;if((i|0)>=(j|0))U();f=e+32|0;g=e+28|0;h=e+24|0;k=e+20|0;l=e+16|0;m=e+12|0;n=e+8|0;o=e+4|0;p=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=vm(c[h>>2]|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096>>2];c[l>>2]=vm((c[h>>2]|0)+4|0)|0;c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];c[m>>2]=vm((c[h>>2]|0)+8|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];c[n>>2]=vm((c[h>>2]|0)+12|0)|0;c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+12>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+4>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+12>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+8>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+20>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+16>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+28>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+24>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+36>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+32>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+44>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+40>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+52>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+48>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+60>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+56>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+68>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+64>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+76>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+72>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+84>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+80>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+92>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+88>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+100>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+96>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+108>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+104>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[k>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[k>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[k>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[k>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[l>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[l>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[l>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[l>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+116>>2]|0));c[m>>2]=c[m>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+112>>2]|0);c[m>>2]=((c[m>>2]|0)>>>1)+(c[m>>2]<<31);c[n>>2]=(c[n>>2]<<1)+((c[n>>2]|0)>>>31)^c[p>>2];c[o>>2]=c[(c[f>>2]|0)+((c[m>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+1024+(((c[m>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[m>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+3072+((c[m>>2]|0)>>>24<<2)>>2];c[p>>2]=c[(c[f>>2]|0)+1024+((c[n>>2]&255)<<2)>>2]^c[(c[f>>2]|0)+2048+(((c[n>>2]|0)>>>8&255)<<2)>>2]^c[(c[f>>2]|0)+3072+(((c[n>>2]|0)>>>16&255)<<2)>>2]^c[(c[f>>2]|0)+((c[n>>2]|0)>>>24<<2)>>2];c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+((c[o>>2]|0)+(c[(c[f>>2]|0)+4128+124>>2]|0));c[k>>2]=c[k>>2]^(c[o>>2]|0)+(c[(c[f>>2]|0)+4128+120>>2]|0);c[k>>2]=((c[k>>2]|0)>>>1)+(c[k>>2]<<31);c[l>>2]=(c[l>>2]<<1)+((c[l>>2]|0)>>>31)^c[p>>2];c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+16>>2];wm(c[g>>2]|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];wm((c[g>>2]|0)+4|0,c[n>>2]|0);c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];wm((c[g>>2]|0)+8|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+28>>2];wm((c[g>>2]|0)+12|0,c[l>>2]|0);i=e;return}function vm(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];i=b;return (d[(c[f>>2]|0)+3>>0]|0)<<24|(d[(c[f>>2]|0)+2>>0]|0)<<16|(d[(c[f>>2]|0)+1>>0]|0)<<8|(d[c[f>>2]>>0]|0)|0}function wm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+8|0;g=e+4|0;h=e;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[f>>2];a[(c[h>>2]|0)+3>>0]=(c[g>>2]|0)>>>24;a[(c[h>>2]|0)+2>>0]=(c[g>>2]|0)>>>16;a[(c[h>>2]|0)+1>>0]=(c[g>>2]|0)>>>8;a[c[h>>2]>>0]=c[g>>2];i=e;return}function xm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0;e=i;i=i+16|0;if((i|0)>=(j|0))U();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[f>>2];ym(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36} + +// EMSCRIPTEN_END_FUNCS +var sb=[ix,Rj,Vj,Wj,sk,ml,ol,pl,ql,rl,Il,Yl,mm,qm,tm,xm,rr,tr,ur,vr,wr,Hh,Kr,gu,ku,hu,Eu,He,pv,mk,qk,Hk,Bl,Nl,bm,lu,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix,ix];var tb=[jx,xk,kk,hk,ek,Bk,Dm,Gm,Am,jx,jx,jx,jx,jx,jx,jx];var ub=[kx,Lk,Fl,Vl,jm,un,iu,mu,Vv,kx,kx,kx,kx,kx,kx,kx];var vb=[lx,Gk,Al,Ml,$l,am,pm,Ir];var wb=[mx,Nk,kl,nl,Hl,Xl,lm,pr,sr,Mh,du,mx,mx,mx,mx,mx];var xb=[nx,Ar,Fk,Ur,Bs,Ys,nx,nx];var yb=[ox,Zj,$j,Gt];var zb=[px,Lr,Aq,Tr,at,px,px,px];var Ab=[qx,zk];var Bb=[rx,bl,zl,kr,yr,Bj,jl,rx];var Cb=[sx,Xg];return{_GNUNET_CRYPTO_rsa_signature_encode:Xc,_GNUNET_CRYPTO_rsa_verify:fd,_bitshift64Shl:Pw,_bitshift64Lshr:Mw,_GNUNET_STRINGS_string_to_data:jd,_GNUNET_CRYPTO_rsa_private_key_get_public:Sc,_memset:Sw,_GNUNET_CRYPTO_eddsa_verify:uc,_TALER_amount_normalize:$t,_GNUNET_CRYPTO_symmetric_encrypt:hc,_TALER_WR_get_fraction:Ob,_GNUNET_CRYPTO_rsa_unblind:ed,_TALER_amount_cmp:_t,_GNUNET_CRYPTO_rsa_blind:Yc,_TALER_WR_get_currency:Pb,_GNUNET_CRYPTO_rsa_private_key_free:Pc,_fflush:Fv,_GNUNET_CRYPTO_hash_create_random:xc,_bitshift64Ashr:Lw,_TALER_WRALL_get_amount:Mb,_GNUNET_CRYPTO_rsa_private_key_create:Oc,_GNUNET_CRYPTO_eddsa_key_create:rc,_TALER_WRALL_eddsa_public_key_from_private:Kb,_llvm_bswap_i32:Uw,___muldi3:Xw,_GNUNET_CRYPTO_ecc_ecdh:vc,_GNUNET_CRYPTO_rsa_private_key_decode:Rc,_GNUNET_CRYPTO_symmetric_decrypt:kc,_GNUNET_CRYPTO_rsa_signature_free:cd,___divdi3:Tw,_TALER_amount_ntoh:Wt,_pthread_self:Yw,_GNUNET_CRYPTO_ecdhe_key_create:pc,_TALER_amount_subtract:bu,___udivmoddi4:Jw,_GNUNET_CRYPTO_random_block:Nc,_i64Add:Gw,_GNUNET_CRYPTO_ecdhe_key_get_public:nc,_TALER_WRALL_purpose_create:Lb,_pthread_mutex_unlock:Nw,_GNUNET_CRYPTO_rsa_public_key_free:Uc,_GNUNET_CRYPTO_hkdf:Bc,_TALER_amount_hton:Vt,_i64Subtract:Fw,_pthread_mutex_lock:Hw,_GNUNET_CRYPTO_rsa_private_key_encode:Qc,_GNUNET_CRYPTO_eddsa_key_get_public:lc,___udivdi3:Vw,___errno_location:fu,___muldsi3:Ww,_TALER_WR_get_value:Nb,_TALER_amount_add:cu,_free:zw,_GNUNET_STRINGS_data_to_string_alloc:id,_memmove:Qw,_llvm_cttz_i32:Iw,_malloc:yw,_memcpy:Ow,_TALER_amount_get_zero:Xt,_GNUNET_CRYPTO_eddsa_sign:sc,_GNUNET_CRYPTO_rsa_public_key_decode:Wc,_GNUNET_CRYPTO_rsa_public_key_encode:Vc,___remdi3:Kw,_GNUNET_CRYPTO_hash:wc,_GNUNET_CRYPTO_rsa_signature_decode:dd,___uremdi3:Rw,_GNUNET_util_cl_init:Vb,_GNUNET_CRYPTO_random_init:Ic,_gpg_err_init:nt,runPostSets:Ew,stackAlloc:Db,stackSave:Eb,stackRestore:Fb,establishStackSpace:Gb,setThrew:Hb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:Zw,dynCall_viiiii:_w,dynCall_vi:$w,dynCall_vii:ax,dynCall_ii:bx,dynCall_viii:cx,dynCall_v:dx,dynCall_iiiii:ex,dynCall_viiiiii:fx,dynCall_iii:gx,dynCall_viiii:hx}}) + + +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var real__GNUNET_CRYPTO_rsa_signature_encode=asm["_GNUNET_CRYPTO_rsa_signature_encode"];asm["_GNUNET_CRYPTO_rsa_signature_encode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_signature_encode.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_verify=asm["_GNUNET_CRYPTO_rsa_verify"];asm["_GNUNET_CRYPTO_rsa_verify"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_verify.apply(null,arguments)});var real____uremdi3=asm["___uremdi3"];asm["___uremdi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____uremdi3.apply(null,arguments)});var real__GNUNET_STRINGS_string_to_data=asm["_GNUNET_STRINGS_string_to_data"];asm["_GNUNET_STRINGS_string_to_data"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_STRINGS_string_to_data.apply(null,arguments)});var real__i64Subtract=asm["_i64Subtract"];asm["_i64Subtract"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__i64Subtract.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_private_key_get_public=asm["_GNUNET_CRYPTO_rsa_private_key_get_public"];asm["_GNUNET_CRYPTO_rsa_private_key_get_public"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_private_key_get_public.apply(null,arguments)});var real__TALER_WRALL_get_amount=asm["_TALER_WRALL_get_amount"];asm["_TALER_WRALL_get_amount"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WRALL_get_amount.apply(null,arguments)});var real__GNUNET_CRYPTO_eddsa_verify=asm["_GNUNET_CRYPTO_eddsa_verify"];asm["_GNUNET_CRYPTO_eddsa_verify"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_eddsa_verify.apply(null,arguments)});var real__GNUNET_util_cl_init=asm["_GNUNET_util_cl_init"];asm["_GNUNET_util_cl_init"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_util_cl_init.apply(null,arguments)});var real__TALER_amount_normalize=asm["_TALER_amount_normalize"];asm["_TALER_amount_normalize"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_normalize.apply(null,arguments)});var real__bitshift64Lshr=asm["_bitshift64Lshr"];asm["_bitshift64Lshr"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__bitshift64Lshr.apply(null,arguments)});var real__TALER_WR_get_fraction=asm["_TALER_WR_get_fraction"];asm["_TALER_WR_get_fraction"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WR_get_fraction.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_unblind=asm["_GNUNET_CRYPTO_rsa_unblind"];asm["_GNUNET_CRYPTO_rsa_unblind"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_unblind.apply(null,arguments)});var real__TALER_amount_cmp=asm["_TALER_amount_cmp"];asm["_TALER_amount_cmp"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_cmp.apply(null,arguments)});var real__bitshift64Shl=asm["_bitshift64Shl"];asm["_bitshift64Shl"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__bitshift64Shl.apply(null,arguments)});var real__TALER_WR_get_currency=asm["_TALER_WR_get_currency"];asm["_TALER_WR_get_currency"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WR_get_currency.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_private_key_free=asm["_GNUNET_CRYPTO_rsa_private_key_free"];asm["_GNUNET_CRYPTO_rsa_private_key_free"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_private_key_free.apply(null,arguments)});var real__fflush=asm["_fflush"];asm["_fflush"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__fflush.apply(null,arguments)});var real__GNUNET_CRYPTO_hash_create_random=asm["_GNUNET_CRYPTO_hash_create_random"];asm["_GNUNET_CRYPTO_hash_create_random"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_hash_create_random.apply(null,arguments)});var real__bitshift64Ashr=asm["_bitshift64Ashr"];asm["_bitshift64Ashr"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__bitshift64Ashr.apply(null,arguments)});var real__GNUNET_CRYPTO_eddsa_key_create=asm["_GNUNET_CRYPTO_eddsa_key_create"];asm["_GNUNET_CRYPTO_eddsa_key_create"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_eddsa_key_create.apply(null,arguments)});var real__TALER_WRALL_eddsa_public_key_from_private=asm["_TALER_WRALL_eddsa_public_key_from_private"];asm["_TALER_WRALL_eddsa_public_key_from_private"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WRALL_eddsa_public_key_from_private.apply(null,arguments)});var real____errno_location=asm["___errno_location"];asm["___errno_location"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____errno_location.apply(null,arguments)});var real____muldi3=asm["___muldi3"];asm["___muldi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____muldi3.apply(null,arguments)});var real__GNUNET_CRYPTO_ecc_ecdh=asm["_GNUNET_CRYPTO_ecc_ecdh"];asm["_GNUNET_CRYPTO_ecc_ecdh"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_ecc_ecdh.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_private_key_decode=asm["_GNUNET_CRYPTO_rsa_private_key_decode"];asm["_GNUNET_CRYPTO_rsa_private_key_decode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_private_key_decode.apply(null,arguments)});var real__GNUNET_CRYPTO_symmetric_encrypt=asm["_GNUNET_CRYPTO_symmetric_encrypt"];asm["_GNUNET_CRYPTO_symmetric_encrypt"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_symmetric_encrypt.apply(null,arguments)});var real__GNUNET_CRYPTO_ecdhe_key_get_public=asm["_GNUNET_CRYPTO_ecdhe_key_get_public"];asm["_GNUNET_CRYPTO_ecdhe_key_get_public"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_ecdhe_key_get_public.apply(null,arguments)});var real____divdi3=asm["___divdi3"];asm["___divdi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____divdi3.apply(null,arguments)});var real__TALER_amount_ntoh=asm["_TALER_amount_ntoh"];asm["_TALER_amount_ntoh"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_ntoh.apply(null,arguments)});var real__llvm_cttz_i32=asm["_llvm_cttz_i32"];asm["_llvm_cttz_i32"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__llvm_cttz_i32.apply(null,arguments)});var real__GNUNET_CRYPTO_ecdhe_key_create=asm["_GNUNET_CRYPTO_ecdhe_key_create"];asm["_GNUNET_CRYPTO_ecdhe_key_create"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_ecdhe_key_create.apply(null,arguments)});var real__TALER_amount_subtract=asm["_TALER_amount_subtract"];asm["_TALER_amount_subtract"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_subtract.apply(null,arguments)});var real____udivmoddi4=asm["___udivmoddi4"];asm["___udivmoddi4"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____udivmoddi4.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_private_key_create=asm["_GNUNET_CRYPTO_rsa_private_key_create"];asm["_GNUNET_CRYPTO_rsa_private_key_create"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_private_key_create.apply(null,arguments)});var real__i64Add=asm["_i64Add"];asm["_i64Add"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__i64Add.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_signature_free=asm["_GNUNET_CRYPTO_rsa_signature_free"];asm["_GNUNET_CRYPTO_rsa_signature_free"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_signature_free.apply(null,arguments)});var real__pthread_self=asm["_pthread_self"];asm["_pthread_self"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__pthread_self.apply(null,arguments)});var real__pthread_mutex_unlock=asm["_pthread_mutex_unlock"];asm["_pthread_mutex_unlock"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__pthread_mutex_unlock.apply(null,arguments)});var real__TALER_WRALL_purpose_create=asm["_TALER_WRALL_purpose_create"];asm["_TALER_WRALL_purpose_create"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WRALL_purpose_create.apply(null,arguments)});var real__gpg_err_init=asm["_gpg_err_init"];asm["_gpg_err_init"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__gpg_err_init.apply(null,arguments)});var real__GNUNET_CRYPTO_hkdf=asm["_GNUNET_CRYPTO_hkdf"];asm["_GNUNET_CRYPTO_hkdf"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_hkdf.apply(null,arguments)});var real__TALER_amount_hton=asm["_TALER_amount_hton"];asm["_TALER_amount_hton"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_hton.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_public_key_free=asm["_GNUNET_CRYPTO_rsa_public_key_free"];asm["_GNUNET_CRYPTO_rsa_public_key_free"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_public_key_free.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_private_key_encode=asm["_GNUNET_CRYPTO_rsa_private_key_encode"];asm["_GNUNET_CRYPTO_rsa_private_key_encode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_private_key_encode.apply(null,arguments)});var real__GNUNET_CRYPTO_eddsa_key_get_public=asm["_GNUNET_CRYPTO_eddsa_key_get_public"];asm["_GNUNET_CRYPTO_eddsa_key_get_public"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_eddsa_key_get_public.apply(null,arguments)});var real____udivdi3=asm["___udivdi3"];asm["___udivdi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____udivdi3.apply(null,arguments)});var real__llvm_bswap_i32=asm["_llvm_bswap_i32"];asm["_llvm_bswap_i32"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__llvm_bswap_i32.apply(null,arguments)});var real____muldsi3=asm["___muldsi3"];asm["___muldsi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____muldsi3.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_blind=asm["_GNUNET_CRYPTO_rsa_blind"];asm["_GNUNET_CRYPTO_rsa_blind"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_blind.apply(null,arguments)});var real__TALER_amount_add=asm["_TALER_amount_add"];asm["_TALER_amount_add"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_add.apply(null,arguments)});var real__free=asm["_free"];asm["_free"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__free.apply(null,arguments)});var real__GNUNET_STRINGS_data_to_string_alloc=asm["_GNUNET_STRINGS_data_to_string_alloc"];asm["_GNUNET_STRINGS_data_to_string_alloc"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_STRINGS_data_to_string_alloc.apply(null,arguments)});var real__GNUNET_CRYPTO_symmetric_decrypt=asm["_GNUNET_CRYPTO_symmetric_decrypt"];asm["_GNUNET_CRYPTO_symmetric_decrypt"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_symmetric_decrypt.apply(null,arguments)});var real__GNUNET_CRYPTO_random_init=asm["_GNUNET_CRYPTO_random_init"];asm["_GNUNET_CRYPTO_random_init"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_random_init.apply(null,arguments)});var real__GNUNET_CRYPTO_random_block=asm["_GNUNET_CRYPTO_random_block"];asm["_GNUNET_CRYPTO_random_block"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_random_block.apply(null,arguments)});var real__TALER_amount_get_zero=asm["_TALER_amount_get_zero"];asm["_TALER_amount_get_zero"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_amount_get_zero.apply(null,arguments)});var real__malloc=asm["_malloc"];asm["_malloc"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__malloc.apply(null,arguments)});var real__pthread_mutex_lock=asm["_pthread_mutex_lock"];asm["_pthread_mutex_lock"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__pthread_mutex_lock.apply(null,arguments)});var real__GNUNET_CRYPTO_eddsa_sign=asm["_GNUNET_CRYPTO_eddsa_sign"];asm["_GNUNET_CRYPTO_eddsa_sign"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_eddsa_sign.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_public_key_decode=asm["_GNUNET_CRYPTO_rsa_public_key_decode"];asm["_GNUNET_CRYPTO_rsa_public_key_decode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_public_key_decode.apply(null,arguments)});var real__memmove=asm["_memmove"];asm["_memmove"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__memmove.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_public_key_encode=asm["_GNUNET_CRYPTO_rsa_public_key_encode"];asm["_GNUNET_CRYPTO_rsa_public_key_encode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_public_key_encode.apply(null,arguments)});var real____remdi3=asm["___remdi3"];asm["___remdi3"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real____remdi3.apply(null,arguments)});var real__GNUNET_CRYPTO_hash=asm["_GNUNET_CRYPTO_hash"];asm["_GNUNET_CRYPTO_hash"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_hash.apply(null,arguments)});var real__TALER_WR_get_value=asm["_TALER_WR_get_value"];asm["_TALER_WR_get_value"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__TALER_WR_get_value.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_signature_decode=asm["_GNUNET_CRYPTO_rsa_signature_decode"];asm["_GNUNET_CRYPTO_rsa_signature_decode"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_rsa_signature_decode.apply(null,arguments)});var _GNUNET_CRYPTO_rsa_signature_encode=Module["_GNUNET_CRYPTO_rsa_signature_encode"]=asm["_GNUNET_CRYPTO_rsa_signature_encode"];var _GNUNET_CRYPTO_rsa_verify=Module["_GNUNET_CRYPTO_rsa_verify"]=asm["_GNUNET_CRYPTO_rsa_verify"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _GNUNET_STRINGS_string_to_data=Module["_GNUNET_STRINGS_string_to_data"]=asm["_GNUNET_STRINGS_string_to_data"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _GNUNET_CRYPTO_rsa_private_key_get_public=Module["_GNUNET_CRYPTO_rsa_private_key_get_public"]=asm["_GNUNET_CRYPTO_rsa_private_key_get_public"];var _TALER_WRALL_get_amount=Module["_TALER_WRALL_get_amount"]=asm["_TALER_WRALL_get_amount"];var _GNUNET_CRYPTO_eddsa_verify=Module["_GNUNET_CRYPTO_eddsa_verify"]=asm["_GNUNET_CRYPTO_eddsa_verify"];var _GNUNET_util_cl_init=Module["_GNUNET_util_cl_init"]=asm["_GNUNET_util_cl_init"];var _TALER_amount_normalize=Module["_TALER_amount_normalize"]=asm["_TALER_amount_normalize"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _TALER_WR_get_fraction=Module["_TALER_WR_get_fraction"]=asm["_TALER_WR_get_fraction"];var _GNUNET_CRYPTO_rsa_unblind=Module["_GNUNET_CRYPTO_rsa_unblind"]=asm["_GNUNET_CRYPTO_rsa_unblind"];var _TALER_amount_cmp=Module["_TALER_amount_cmp"]=asm["_TALER_amount_cmp"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _TALER_WR_get_currency=Module["_TALER_WR_get_currency"]=asm["_TALER_WR_get_currency"];var _GNUNET_CRYPTO_rsa_private_key_free=Module["_GNUNET_CRYPTO_rsa_private_key_free"]=asm["_GNUNET_CRYPTO_rsa_private_key_free"];var _fflush=Module["_fflush"]=asm["_fflush"];var _GNUNET_CRYPTO_hash_create_random=Module["_GNUNET_CRYPTO_hash_create_random"]=asm["_GNUNET_CRYPTO_hash_create_random"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _memset=Module["_memset"]=asm["_memset"];var _GNUNET_CRYPTO_eddsa_key_create=Module["_GNUNET_CRYPTO_eddsa_key_create"]=asm["_GNUNET_CRYPTO_eddsa_key_create"];var _TALER_WRALL_eddsa_public_key_from_private=Module["_TALER_WRALL_eddsa_public_key_from_private"]=asm["_TALER_WRALL_eddsa_public_key_from_private"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _GNUNET_CRYPTO_ecc_ecdh=Module["_GNUNET_CRYPTO_ecc_ecdh"]=asm["_GNUNET_CRYPTO_ecc_ecdh"];var _GNUNET_CRYPTO_rsa_private_key_decode=Module["_GNUNET_CRYPTO_rsa_private_key_decode"]=asm["_GNUNET_CRYPTO_rsa_private_key_decode"];var _GNUNET_CRYPTO_symmetric_encrypt=Module["_GNUNET_CRYPTO_symmetric_encrypt"]=asm["_GNUNET_CRYPTO_symmetric_encrypt"];var _GNUNET_CRYPTO_ecdhe_key_get_public=Module["_GNUNET_CRYPTO_ecdhe_key_get_public"]=asm["_GNUNET_CRYPTO_ecdhe_key_get_public"];var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var _TALER_amount_ntoh=Module["_TALER_amount_ntoh"]=asm["_TALER_amount_ntoh"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _GNUNET_CRYPTO_ecdhe_key_create=Module["_GNUNET_CRYPTO_ecdhe_key_create"]=asm["_GNUNET_CRYPTO_ecdhe_key_create"];var _TALER_amount_subtract=Module["_TALER_amount_subtract"]=asm["_TALER_amount_subtract"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var _GNUNET_CRYPTO_rsa_private_key_create=Module["_GNUNET_CRYPTO_rsa_private_key_create"]=asm["_GNUNET_CRYPTO_rsa_private_key_create"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _GNUNET_CRYPTO_rsa_signature_free=Module["_GNUNET_CRYPTO_rsa_signature_free"]=asm["_GNUNET_CRYPTO_rsa_signature_free"];var _pthread_self=Module["_pthread_self"]=asm["_pthread_self"];var _pthread_mutex_unlock=Module["_pthread_mutex_unlock"]=asm["_pthread_mutex_unlock"];var _TALER_WRALL_purpose_create=Module["_TALER_WRALL_purpose_create"]=asm["_TALER_WRALL_purpose_create"];var _gpg_err_init=Module["_gpg_err_init"]=asm["_gpg_err_init"];var _GNUNET_CRYPTO_hkdf=Module["_GNUNET_CRYPTO_hkdf"]=asm["_GNUNET_CRYPTO_hkdf"];var _TALER_amount_hton=Module["_TALER_amount_hton"]=asm["_TALER_amount_hton"];var _GNUNET_CRYPTO_rsa_public_key_free=Module["_GNUNET_CRYPTO_rsa_public_key_free"]=asm["_GNUNET_CRYPTO_rsa_public_key_free"];var _GNUNET_CRYPTO_rsa_private_key_encode=Module["_GNUNET_CRYPTO_rsa_private_key_encode"]=asm["_GNUNET_CRYPTO_rsa_private_key_encode"];var _GNUNET_CRYPTO_eddsa_key_get_public=Module["_GNUNET_CRYPTO_eddsa_key_get_public"]=asm["_GNUNET_CRYPTO_eddsa_key_get_public"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _GNUNET_CRYPTO_rsa_blind=Module["_GNUNET_CRYPTO_rsa_blind"]=asm["_GNUNET_CRYPTO_rsa_blind"];var _TALER_amount_add=Module["_TALER_amount_add"]=asm["_TALER_amount_add"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _GNUNET_STRINGS_data_to_string_alloc=Module["_GNUNET_STRINGS_data_to_string_alloc"]=asm["_GNUNET_STRINGS_data_to_string_alloc"];var _GNUNET_CRYPTO_symmetric_decrypt=Module["_GNUNET_CRYPTO_symmetric_decrypt"]=asm["_GNUNET_CRYPTO_symmetric_decrypt"];var _GNUNET_CRYPTO_random_init=Module["_GNUNET_CRYPTO_random_init"]=asm["_GNUNET_CRYPTO_random_init"];var _GNUNET_CRYPTO_random_block=Module["_GNUNET_CRYPTO_random_block"]=asm["_GNUNET_CRYPTO_random_block"];var _TALER_amount_get_zero=Module["_TALER_amount_get_zero"]=asm["_TALER_amount_get_zero"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _pthread_mutex_lock=Module["_pthread_mutex_lock"]=asm["_pthread_mutex_lock"];var _GNUNET_CRYPTO_eddsa_sign=Module["_GNUNET_CRYPTO_eddsa_sign"]=asm["_GNUNET_CRYPTO_eddsa_sign"];var _GNUNET_CRYPTO_rsa_public_key_decode=Module["_GNUNET_CRYPTO_rsa_public_key_decode"]=asm["_GNUNET_CRYPTO_rsa_public_key_decode"];var _memmove=Module["_memmove"]=asm["_memmove"];var _GNUNET_CRYPTO_rsa_public_key_encode=Module["_GNUNET_CRYPTO_rsa_public_key_encode"]=asm["_GNUNET_CRYPTO_rsa_public_key_encode"];var ___remdi3=Module["___remdi3"]=asm["___remdi3"];var _GNUNET_CRYPTO_hash=Module["_GNUNET_CRYPTO_hash"]=asm["_GNUNET_CRYPTO_hash"];var _TALER_WR_get_value=Module["_TALER_WR_get_value"]=asm["_TALER_WR_get_value"];var _GNUNET_CRYPTO_rsa_signature_decode=Module["_GNUNET_CRYPTO_rsa_signature_decode"]=asm["_GNUNET_CRYPTO_rsa_signature_decode"];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_viii=Module["dynCall_viii"]=asm["dynCall_viii"];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_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"];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){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");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){Module.printErr("run() called, but dependencies remain, so not running");return}writeStackCookie();preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(ENVIRONMENT_IS_WEB&&preloadStartTime!==null){Module.printErr("pre-main prep time: "+(Date.now()-preloadStartTime)+" ms")}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()}checkStackCookie()}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){Module.printErr("exit("+status+") implicitly called by end of main(), but noExitRuntime, so not exiting the runtime (you can use emscripten_force_exit, if you want to force a true shutdown)");return}if(Module["noExitRuntime"]){Module.printErr("exit("+status+") called, but noExitRuntime, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)")}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="";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() + + + + |