diff options
author | Florian Dold <florian.dold@gmail.com> | 2016-05-24 01:53:56 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2016-05-24 01:53:56 +0200 |
commit | 741dff270689ce8a16359e116f8e7dd02dd74c09 (patch) | |
tree | fa0c89fa4c23b1bd8d60625c4fa30522939cfaf6 /lib | |
parent | 50fb0f2beb5e5a2ac6a08b694fbec9e4300fe734 (diff) |
check for re-payment (fix #4525)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/emscripten/libwrapper.js | 26 | ||||
-rw-r--r-- | lib/wallet/wallet.ts | 103 |
2 files changed, 81 insertions, 48 deletions
diff --git a/lib/emscripten/libwrapper.js b/lib/emscripten/libwrapper.js index fcc3f9f56..480df68bc 100644 --- a/lib/emscripten/libwrapper.js +++ b/lib/emscripten/libwrapper.js @@ -1,23 +1,23 @@ -var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){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);if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");return Module["dynCall_"+sig].apply(null,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]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;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){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){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(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){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"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;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+77536;__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,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,196,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,131,88,0,0,2,0,0,0,143,88,0,0,4,0,0,0,155,88,0,0,8,0,0,0,167,88,0,0,16,0,0,0,180,88,0,0,32,0,0,0,190,88,0,0,64,0,0,0,201,88,0,0,128,0,0,0,213,88,0,0,0,1,0,0,226,88,0,0,0,2,0,0,238,88,0,0,0,4,0,0,251,88,0,0,0,8,0,0,5,89,0,0,0,16,0,0,16,89,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,104,17,0,0,160,28,0,0,20,29,0,0,116,32,0,0,180,48,0,0,0,0,0,0,48,140,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,196,95,0,0,7,96,0,0,13,96,0,0,81,96,0,0,148,96,0,0,215,96,0,0,26,97,0,0,31,97,0,0,192,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,42,97,0,0,93,97,0,0,144,97,0,0,195,97,0,0,246,97,0,0,41,98,0,0,92,98,0,0,97,98,0,0,224,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,108,98,0,0,167,98,0,0,226,98,0,0,29,99,0,0,88,99,0,0,147,99,0,0,92,98,0,0,206,99,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,217,99,0,0,28,100,0,0,95,100,0,0,162,100,0,0,229,100,0,0,40,101,0,0,92,98,0,0,107,101,0,0,128,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,118,101,0,0,217,101,0,0,60,102,0,0,159,102,0,0,2,103,0,0,101,103,0,0,92,98,0,0,200,103,0,0,9,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,211,103,0,0,90,104,0,0,225,104,0,0,103,105,0,0,237,105,0,0,116,106,0,0,92,98,0,0,251,106,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,107,0,0,54,107,0,0,97,107,0,0,140,107,0,0,183,107,0,0,226,107,0,0,92,98,0,0,13,108,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,108,0,0,80,108,0,0,131,108,0,0,182,108,0,0,233,108,0,0,28,109,0,0,92,98,0,0,79,109,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,109,0,0,154,109,0,0,213,109,0,0,16,110,0,0,75,110,0,0,134,110,0,0,92,98,0,0,193,110,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,209,110,0,0,20,111,0,0,87,111,0,0,154,111,0,0,221,111,0,0,32,112,0,0,92,98,0,0,99,112,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,112,0,0,198,112,0,0,25,113,0,0,108,113,0,0,191,113,0,0,18,114,0,0,92,98,0,0,101,114,0,0,128,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,114,0,0,216,114,0,0,59,115,0,0,158,115,0,0,1,116,0,0,100,116,0,0,92,98,0,0,199,116,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,215,116,0,0,90,117,0,0,221,117,0,0,96,118,0,0,227,118,0,0,102,119,0,0,92,98,0,0,233,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,247,119,0,0,58,120,0,0,125,120,0,0,192,120,0,0,3,121,0,0,70,121,0,0,92,98,0,0,137,121,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,158,121,0,0,225,121,0,0,36,122,0,0,103,122,0,0,170,122,0,0,237,122,0,0,92,98,0,0,48,123,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,123,0,0,136,123,0,0,203,123,0,0,14,124,0,0,170,122,0,0,81,124,0,0,92,98,0,0,148,124,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,169,124,0,0,236,124,0,0,47,125,0,0,114,125,0,0,181,125,0,0,248,125,0,0,92,98,0,0,59,126,0,0,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,126,0,0,58,120,0,0,204,126,0,0,79,127,0,0,210,127,0,0,85,128,0,0,92,98,0,0,216,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,128,0,0,107,129,0,0,238,129,0,0,113,130,0,0,244,130,0,0,119,131,0,0,92,98,0,0,250,131,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,132,0,0,141,132,0,0,16,133,0,0,147,133,0,0,22,134,0,0,153,134,0,0,92,98,0,0,28,135,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,135,0,0,181,125,0,0,58,120,0,0,105,135,0,0,172,135,0,0,239,135,0,0,92,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,48,140,0,0,50,136,0,0,31,97,0,0,73,136,0,0,31,97,0,0,93,136,0,0,31,97,0,0,104,136,0,0,31,97,0,0,114,136,0,0,97,98,0,0,123,136,0,0,97,98,0,0,133,136,0,0,97,98,0,0,146,136,0,0,206,99,0,0,155,136,0,0,206,99,0,0,175,136,0,0,206,99,0,0,186,136,0,0,206,99,0,0,196,136,0,0,107,101,0,0,205,136,0,0,107,101,0,0,215,136,0,0,107,101,0,0,228,136,0,0,200,103,0,0,237,136,0,0,200,103,0,0,247,136,0,0,200,103,0,0,4,137,0,0,251,106,0,0,13,137,0,0,13,108,0,0,34,137,0,0,79,109,0,0,55,137,0,0,193,110,0,0,76,137,0,0,99,112,0,0,97,137,0,0,101,114,0,0,118,137,0,0,199,116,0,0,140,137,0,0,233,119,0,0,162,137,0,0,137,121,0,0,179,137,0,0,48,123,0,0,196,137,0,0,148,124,0,0,213,137,0,0,137,121,0,0,230,137,0,0,148,124,0,0,254,137,0,0,137,121,0,0,22,138,0,0,148,124,0,0,39,138,0,0,216,128,0,0,56,138,0,0,250,131,0,0,76,138,0,0,28,135,0,0,96,138,0,0,0,0,0,0,0,0,0,0,108,141,0,0,122,141,0,0,151,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,156,141,0,0,170,141,0,0,179,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,200,141,0,0,215,141,0,0,10,142,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,31,142,0,0,46,142,0,0,97,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,123,142,0,0,139,142,0,0,194,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,70,143,0,0,87,143,0,0,194,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,108,141,0,0,122,141,0,0,151,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,156,141,0,0,170,141,0,0,179,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,200,141,0,0,215,141,0,0,10,142,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,31,142,0,0,46,142,0,0,97,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,123,142,0,0,139,142,0,0,194,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,70,143,0,0,87,143,0,0,194,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,108,141,0,0,122,141,0,0,151,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,156,141,0,0,170,141,0,0,179,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,200,141,0,0,215,141,0,0,10,142,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,31,142,0,0,46,142,0,0,97,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,123,142,0,0,139,142,0,0,194,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,70,143,0,0,87,143,0,0,194,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,108,141,0,0,122,141,0,0,151,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,156,141,0,0,170,141,0,0,179,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,200,141,0,0,215,141,0,0,10,142,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,31,142,0,0,46,142,0,0,97,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,123,142,0,0,139,142,0,0,194,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,70,143,0,0,87,143,0,0,194,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,44,30,0,0,180,31,0,0,120,30,0,0,244,31,0,0,52,32,0,0,136,29,0,0,0,0,0,0,156,2,0,0,150,147,0,0,2,0,0,0,155,147,0,0,1,0,0,0,159,147,0,0,8,0,0,0,166,147,0,0,3,0,0,0,176,147,0,0,3,0,0,0,183,147,0,0,9,0,0,0,190,147,0,0,10,0,0,0,197,147,0,0,11,0,0,0,204,147,0,0,5,0,0,0,208,147,0,0,45,1,0,0,212,147,0,0,6,0,0,0,218,147,0,0,7,0,0,0,0,0,0,0,0,0,0,0,32,50,0,0,200,29,0,0,0,0,0,0,7,0,0,0,2,0,0,0,112,148,0,0,168,17,0,0,184,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,116,148,0,0,125,148,0,0,132,148,0,0,0,0,0,0,140,148,0,0,1,0,0,0,163,148,0,0,3,0,0,0,186,148,0,0,5,0,0,0,209,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,208,150,0,0,224,28,0,0,236,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,215,150,0,0,227,150,0,0,0,0,0,0,235,150,0,0,1,0,0,0,3,151,0,0,3,0,0,0,27,151,0,0,5,0,0,0,51,151,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,75,151,0,0,84,29,0,0,96,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,82,151,0,0,94,151,0,0,0,0,0,0,102,151,0,0,1,0,0,0,126,151,0,0,3,0,0,0,150,151,0,0,5,0,0,0,174,151,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,198,151,0,0,208,151,0,0,15,0,0,0,188,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,223,151,0,0,238,151,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,114,153,0,0,28,30,0,0,159,153,0,0,162,153,0,0,169,153,0,0,171,153,0,0,173,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,118,153,0,0,122,153,0,0,134,153,0,0,0,0,0,0,2,0,0,0,2,0,0,0,245,164,0,0,250,164,0,0,15,0,0,0,96,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,9,165,0,0,30,165,0,0,48,165,0,0,62,165,0,0,76,165,0,0,0,0,0,0,11,0,0,0,2,0,0,0,157,165,0,0,164,165,0,0,19,0,0,0,172,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,183,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,193,166,0,0,200,166,0,0,19,0,0,0,232,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,219,166,0,0,242,166,0,0,0,0,0,0,10,0,0,0,2,0,0,0,8,167,0,0,15,167,0,0,19,0,0,0,40,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,34,167,0,0,57,167,0,0,0,0,0,0,9,0,0,0,2,0,0,0,74,169,0,0,81,169,0,0,19,0,0,0,104,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,100,169,0,0,123,169,0,0,0,0,0,0,10,0,0,0,0,0,0,0,145,169,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([151,151,245,196,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,136,177,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,227,183,0,0,116,50,0,0,1,184,0,0,9,184,0,0,18,184,0,0,21,184,0,0,1,184,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,231,183,0,0,235,183,0,0,241,183,0,0,246,183,0,0,252,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,116,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,23,0,0,0,24,0,0,0,216,42,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,116,61,0,0,236,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,224,46,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,252,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,97,109,111,117,110,116,32,115,116,111,114,101,100,32,97,116,32,37,112,44,32,105,115,32,37,115,32,37,108,108,117,46,37,108,117,10,0,72,101,108,108,111,44,32,119,111,114,108,100,32,40,98,121,32,84,97,108,101,114,32,101,109,115,99,114,105,112,116,101,100,32,99,111,100,101,41,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([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,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,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,112,117,98,108,105,99,95,107,101,121,95,108,101,110,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,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,105,110,103,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,98,108,105,110,100,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,95,98,108,105,110,100,101,100,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,114,115,97,95,115,105,103,110,95,109,112,105,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,101,110,100,32,111,102,32,116,105,109,101,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,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],"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,52,51,49,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,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,97,104,100,45,62,98,117,102,115,105,122,101,32,61,61,32,40,110,32,45,32,115,105,122,101,111,102,32,40,115,116,114,117,99,116,32,103,99,114,121,95,109,100,95,104,97,110,100,108,101,41,32,43,32,49,41,0,109,100,95,99,111,112,121,0,33,32,97,104,100,45,62,98,117,102,112,111,115,0,117,110,107,110,111,119,110,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([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,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,52,45,48,52,84,50,49,58,51,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([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,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);var PROCINFO={ppid:1,pid:42,sid:42,pgid:42};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,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){if(err===ERRNO_CODES.EISDIR)err=ERRNO_CODES.EPERM;throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];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 ___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}}Module["_i64Subtract"]=_i64Subtract;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 _pthread_mutex_lock(){}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function _abort(){Module["abort"]()}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)}function _pthread_mutex_init(){}function ___lock(){}function ___unlock(){}Module["_i64Add"]=_i64Add;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 _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}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;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;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}}Module["_llvm_bswap_i32"]=_llvm_bswap_i32;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}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}}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}function _pthread_mutex_unlock(){}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 _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);Runtime.stackRestore(ret)}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;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 _pthread_mutex_destroy(){}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 ___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 ___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 ___syscall201(){return ___syscall202.apply(null,arguments)}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}}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}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,"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,"_abort":_abort,"___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_self":_pthread_self,"_pthread_mutex_destroy":_pthread_mutex_destroy,"_pthread_mutex_unlock":_pthread_mutex_unlock,"___syscall77":___syscall77,"_llvm_stacksave":_llvm_stacksave,"_getenv":_getenv,"___syscall33":___syscall33,"___syscall54":___syscall54,"___unlock":___unlock,"__isLeapYear":__isLeapYear,"___syscall10":___syscall10,"___syscall3":___syscall3,"___syscall340":___syscall340,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"___syscall4":___syscall4,"_time":_time,"_pthread_mutex_lock":_pthread_mutex_lock,"_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 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+77104;__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,18,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,209,87,0,0,2,0,0,0,221,87,0,0,4,0,0,0,233,87,0,0,8,0,0,0,245,87,0,0,16,0,0,0,2,88,0,0,32,0,0,0,12,88,0,0,64,0,0,0,23,88,0,0,128,0,0,0,35,88,0,0,0,1,0,0,48,88,0,0,0,2,0,0,60,88,0,0,0,4,0,0,73,88,0,0,0,8,0,0,83,88,0,0,0,16,0,0,94,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,84,17,0,0,140,28,0,0,0,29,0,0,96,32,0,0,160,48,0,0,0,0,0,0,126,139,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,18,95,0,0,85,95,0,0,91,95,0,0,159,95,0,0,226,95,0,0,37,96,0,0,104,96,0,0,109,96,0,0,192,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,120,96,0,0,171,96,0,0,222,96,0,0,17,97,0,0,68,97,0,0,119,97,0,0,170,97,0,0,175,97,0,0,224,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,186,97,0,0,245,97,0,0,48,98,0,0,107,98,0,0,166,98,0,0,225,98,0,0,170,97,0,0,28,99,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,39,99,0,0,106,99,0,0,173,99,0,0,240,99,0,0,51,100,0,0,118,100,0,0,170,97,0,0,185,100,0,0,128,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,196,100,0,0,39,101,0,0,138,101,0,0,237,101,0,0,80,102,0,0,179,102,0,0,170,97,0,0,22,103,0,0,9,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,33,103,0,0,168,103,0,0,47,104,0,0,181,104,0,0,59,105,0,0,194,105,0,0,170,97,0,0,73,106,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,89,106,0,0,132,106,0,0,175,106,0,0,218,106,0,0,5,107,0,0,48,107,0,0,170,97,0,0,91,107,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,107,107,0,0,158,107,0,0,209,107,0,0,4,108,0,0,55,108,0,0,106,108,0,0,170,97,0,0,157,108,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,173,108,0,0,232,108,0,0,35,109,0,0,94,109,0,0,153,109,0,0,212,109,0,0,170,97,0,0,15,110,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,110,0,0,98,110,0,0,165,110,0,0,232,110,0,0,43,111,0,0,110,111,0,0,170,97,0,0,177,111,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,193,111,0,0,20,112,0,0,103,112,0,0,186,112,0,0,13,113,0,0,96,113,0,0,170,97,0,0,179,113,0,0,128,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,195,113,0,0,38,114,0,0,137,114,0,0,236,114,0,0,79,115,0,0,178,115,0,0,170,97,0,0,21,116,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,116,0,0,168,116,0,0,43,117,0,0,174,117,0,0,49,118,0,0,180,118,0,0,170,97,0,0,55,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,119,0,0,136,119,0,0,203,119,0,0,14,120,0,0,81,120,0,0,148,120,0,0,170,97,0,0,215,120,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,120,0,0,47,121,0,0,114,121,0,0,181,121,0,0,248,121,0,0,59,122,0,0,170,97,0,0,126,122,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,147,122,0,0,214,122,0,0,25,123,0,0,92,123,0,0,248,121,0,0,159,123,0,0,170,97,0,0,226,123,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,247,123,0,0,58,124,0,0,125,124,0,0,192,124,0,0,3,125,0,0,70,125,0,0,170,97,0,0,137,125,0,0,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,151,125,0,0,136,119,0,0,26,126,0,0,157,126,0,0,32,127,0,0,163,127,0,0,170,97,0,0,38,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,128,0,0,185,128,0,0,60,129,0,0,191,129,0,0,66,130,0,0,197,130,0,0,170,97,0,0,72,131,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,131,0,0,219,131,0,0,94,132,0,0,225,132,0,0,100,133,0,0,231,133,0,0,170,97,0,0,106,134,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,134,0,0,3,125,0,0,136,119,0,0,183,134,0,0,250,134,0,0,61,135,0,0,170,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,139,0,0,128,135,0,0,109,96,0,0,151,135,0,0,109,96,0,0,171,135,0,0,109,96,0,0,182,135,0,0,109,96,0,0,192,135,0,0,175,97,0,0,201,135,0,0,175,97,0,0,211,135,0,0,175,97,0,0,224,135,0,0,28,99,0,0,233,135,0,0,28,99,0,0,253,135,0,0,28,99,0,0,8,136,0,0,28,99,0,0,18,136,0,0,185,100,0,0,27,136,0,0,185,100,0,0,37,136,0,0,185,100,0,0,50,136,0,0,22,103,0,0,59,136,0,0,22,103,0,0,69,136,0,0,22,103,0,0,82,136,0,0,73,106,0,0,91,136,0,0,91,107,0,0,112,136,0,0,157,108,0,0,133,136,0,0,15,110,0,0,154,136,0,0,177,111,0,0,175,136,0,0,179,113,0,0,196,136,0,0,21,116,0,0,218,136,0,0,55,119,0,0,240,136,0,0,215,120,0,0,1,137,0,0,126,122,0,0,18,137,0,0,226,123,0,0,35,137,0,0,215,120,0,0,52,137,0,0,226,123,0,0,76,137,0,0,215,120,0,0,100,137,0,0,226,123,0,0,117,137,0,0,38,128,0,0,134,137,0,0,72,131,0,0,154,137,0,0,106,134,0,0,174,137,0,0,0,0,0,0,0,0,0,0,186,140,0,0,200,140,0,0,229,140,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,234,140,0,0,248,140,0,0,1,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,22,141,0,0,37,141,0,0,88,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,109,141,0,0,124,141,0,0,175,141,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,201,141,0,0,217,141,0,0,16,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,148,142,0,0,165,142,0,0,16,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,186,140,0,0,200,140,0,0,229,140,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,234,140,0,0,248,140,0,0,1,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,22,141,0,0,37,141,0,0,88,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,109,141,0,0,124,141,0,0,175,141,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,201,141,0,0,217,141,0,0,16,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,148,142,0,0,165,142,0,0,16,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,186,140,0,0,200,140,0,0,229,140,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,234,140,0,0,248,140,0,0,1,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,22,141,0,0,37,141,0,0,88,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,109,141,0,0,124,141,0,0,175,141,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,201,141,0,0,217,141,0,0,16,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,148,142,0,0,165,142,0,0,16,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,186,140,0,0,200,140,0,0,229,140,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,234,140,0,0,248,140,0,0,1,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,22,141,0,0,37,141,0,0,88,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,109,141,0,0,124,141,0,0,175,141,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,201,141,0,0,217,141,0,0,16,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,148,142,0,0,165,142,0,0,16,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,24,30,0,0,160,31,0,0,100,30,0,0,224,31,0,0,32,32,0,0,116,29,0,0,0,0,0,0,156,2,0,0,228,146,0,0,2,0,0,0,233,146,0,0,1,0,0,0,237,146,0,0,8,0,0,0,244,146,0,0,3,0,0,0,254,146,0,0,3,0,0,0,5,147,0,0,9,0,0,0,12,147,0,0,10,0,0,0,19,147,0,0,11,0,0,0,26,147,0,0,5,0,0,0,30,147,0,0,45,1,0,0,34,147,0,0,6,0,0,0,40,147,0,0,7,0,0,0,0,0,0,0,0,0,0,0,12,50,0,0,180,29,0,0,0,0,0,0,7,0,0,0,2,0,0,0,190,147,0,0,148,17,0,0,164,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,194,147,0,0,203,147,0,0,210,147,0,0,0,0,0,0,218,147,0,0,1,0,0,0,241,147,0,0,3,0,0,0,8,148,0,0,5,0,0,0,31,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,30,150,0,0,204,28,0,0,216,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,37,150,0,0,49,150,0,0,0,0,0,0,57,150,0,0,1,0,0,0,81,150,0,0,3,0,0,0,105,150,0,0,5,0,0,0,129,150,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,153,150,0,0,64,29,0,0,76,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,160,150,0,0,172,150,0,0,0,0,0,0,180,150,0,0,1,0,0,0,204,150,0,0,3,0,0,0,228,150,0,0,5,0,0,0,252,150,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,20,151,0,0,30,151,0,0,15,0,0,0,168,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,45,151,0,0,60,151,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,192,152,0,0,8,30,0,0,237,152,0,0,240,152,0,0,247,152,0,0,249,152,0,0,251,152,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,196,152,0,0,200,152,0,0,212,152,0,0,0,0,0,0,2,0,0,0,2,0,0,0,67,164,0,0,72,164,0,0,15,0,0,0,76,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,87,164,0,0,108,164,0,0,126,164,0,0,140,164,0,0,154,164,0,0,0,0,0,0,11,0,0,0,2,0,0,0,235,164,0,0,242,164,0,0,19,0,0,0,152,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,5,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,15,166,0,0,22,166,0,0,19,0,0,0,212,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,41,166,0,0,64,166,0,0,0,0,0,0,10,0,0,0,2,0,0,0,86,166,0,0,93,166,0,0,19,0,0,0,20,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,112,166,0,0,135,166,0,0,0,0,0,0,9,0,0,0,2,0,0,0,152,168,0,0,159,168,0,0,19,0,0,0,84,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,178,168,0,0,201,168,0,0,0,0,0,0,10,0,0,0,0,0,0,0,223,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,173,173,86,159,227,227,218,114,234,234,213,126,244,244,74,21],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([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,214,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,49,183,0,0,96,50,0,0,79,183,0,0,87,183,0,0,96,183,0,0,99,183,0,0,79,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,53,183,0,0,57,183,0,0,63,183,0,0,68,183,0,0,74,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,25,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,92,61,0,0,212,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,33,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,228,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,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([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,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,112,117,98,108,105,99,95,107,101,121,95,108,101,110,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,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,105,110,103,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,98,108,105,110,100,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,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([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,97,104,100,45,62,98,117,102,115,105,122,101,32,61,61,32,40,110,32,45,32,115,105,122,101,111,102,32,40,115,116,114,117,99,116,32,103,99,114,121,95,109,100,95,104,97,110,100,108,101,41,32,43,32,49,41,0,109,100,95,99,111,112,121,0,33,32,97,104,100,45,62,98,117,102,112,111,115,0,117,110,107,110,111,119,110,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([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,52,45,48,52,84,50,49,58,51,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([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=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var da=env.nullFunc_iiii;var ea=env.nullFunc_viiiii;var fa=env.nullFunc_vi;var ga=env.nullFunc_vii;var ha=env.nullFunc_ii;var ia=env.nullFunc_viii;var ja=env.nullFunc_v;var ka=env.nullFunc_iiiii;var la=env.nullFunc_viiiiii;var ma=env.nullFunc_iii;var na=env.nullFunc_viiii;var oa=env.invoke_iiii;var pa=env.invoke_viiiii;var qa=env.invoke_vi;var ra=env.invoke_vii;var sa=env.invoke_ii;var ta=env.invoke_viii;var ua=env.invoke_v;var va=env.invoke_iiiii;var wa=env.invoke_viiiiii;var xa=env.invoke_iii;var ya=env.invoke_viiii;var za=env._pthread_cleanup_pop;var Aa=env.___syscall221;var Ba=env._pthread_mutex_init;var Ca=env.___syscall64;var Da=env.___syscall63;var Ea=env._abort;var Fa=env.___syscall202;var Ga=env._pthread_cleanup_push;var Ha=env.___syscall20;var Ia=env._llvm_stackrestore;var Ja=env.___assert_fail;var Ka=env.___buildEnvironment;var La=env.__addDays;var Ma=env._localtime_r;var Na=env._tzset;var Oa=env.___setErrNo;var Pa=env._sbrk;var Qa=env.___syscall192;var Ra=env.___syscall191;var Sa=env.___syscall197;var Ta=env.___syscall195;var Ua=env.___syscall194;var Va=env.___syscall199;var Wa=env._sysconf;var Xa=env._strftime;var Ya=env._clock;var Za=env.__arraySum;var _a=env._emscripten_memcpy_big;var $a=env.___syscall91;var ab=env.___syscall75;var bb=env._pthread_self;var cb=env._pthread_mutex_destroy;var db=env._pthread_mutex_unlock;var eb=env.___syscall77;var fb=env._llvm_stacksave;var gb=env._getenv;var hb=env.___syscall33;var ib=env.___syscall54;var jb=env.___unlock;var kb=env.__isLeapYear;var lb=env.___syscall10;var mb=env.___syscall3;var nb=env.___syscall340;var ob=env.___lock;var pb=env.___syscall6;var qb=env.___syscall5;var rb=env.___syscall4;var sb=env._time;var tb=env._pthread_mutex_lock;var ub=env._gettimeofday;var vb=env.___syscall201;var wb=env._atexit;var xb=env.___syscall140;var yb=env._localtime;var zb=env.___syscall142;var Ab=env.___syscall145;var Bb=env.___syscall146;var Cb=0.0; +"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 Ob(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;if((i|0)>=(j|0))ba();return b|0}function Pb(){return i|0}function Qb(a){a=a|0;i=a}function Rb(a,b){a=a|0;b=b|0;i=a;j=b}function Sb(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function Tb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Ub(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Vb(a){a=a|0;C=a}function Wb(){return C|0}function Xb(){var a=0,b=0,d=0;a=vc(8,19098,45)|0;b=$d()|0;d=a;c[d>>2]=b;c[d+4>>2]=C;return a|0}function Yb(a,b){a=a|0;b=b|0;var c=0;c=vc(64,19098,64)|0;cd(a,b,c);return c|0}function Zb(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))ba();d=b;e=a;f=c[e>>2]|0;g=c[e+4>>2]|0;e=c[a+8>>2]|0;c[d>>2]=a;c[d+4>>2]=a+12;a=d+8|0;c[a>>2]=f;c[a+4>>2]=g;c[d+16>>2]=e;Cw(19105,d)|0;i=b;return}function _b(a){a=a|0;var b=0;b=vc(32,19098,116)|0;Uc(a,b);return b|0}function $b(a,b){a=a|0;b=b|0;var c=0,d=0;c=vc(64,19098,131)|0;d=(bd(a,b,c)|0)==-1;return (d?0:c)|0}function ac(a){a=a|0;var b=0,c=0;b=vc(32,19098,151)|0;c=(Wc(a,Hv(a)|0,b)|0)==1;return (c?b:0)|0}function bc(a){a=a|0;var b=0,c=0,d=0;b=i;i=i+32|0;if((i|0)>=(j|0))ba();c=b;if((Wc(a,Hv(a)|0,c)|0)!=1){d=0;i=b;return d|0}a=vc(32,19098,173)|0;Sc(c,a);d=a;i=b;return d|0}function cc(a){a=a|0;var b=0;b=vc(32,19098,190)|0;Sc(a,b);return b|0}function dc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];a=Td(d)|0;i=b;return a|0}function ec(a){a=a|0;xc(a,19098,213);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))ba();d=b;c[d>>2]=gw(8)|0;c[d+4>>2]=gw(1302)|0;e=vc(64,19098,234)|0;_c(a,d,e)|0;i=b;return e|0}function gc(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=d+8|0;f=vc(e,19098,249)|0;Ax(f+8|0,c|0,d|0)|0;d=gw(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=gw(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 hc(a){a=a|0;var b=0,c=0;b=~~+M(+(+(((Hv(a)|0)*5|0)>>>3>>>0)))>>>0;c=vc(b,19098,274)|0;Wd(a,Hv(a)|0,c,b)|0;a=Bd(c,b)|0;xc(c,19098,213);return a|0}function ic(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;e=Dd(a,d)|0;a=Vd(c[d>>2]|0,e)|0;xc(c[d>>2]|0,19098,213);i=b;return a|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;e=i;i=i+16|0;if((i|0)>=(j|0))ba();f=e;g=vc(64,19098,317)|0;h=Hv(a)|0;c[f>>2]=0;c[f+4>>2]=0;k=(jd(g,64,a,h,b,d,f)|0)==1;i=e;return (k?g:0)|0}function kc(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))ba();f=e;g=vc(32,19098,342)|0;h=Hv(a)|0;c[f>>2]=0;c[f+4>>2]=0;k=(jd(g,32,a,h,b,d,f)|0)==1;i=e;return (k?g:0)|0}function lc(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))ba();f=e;g=vc(64,19098,365)|0;h=Hv(a)|0;c[f>>2]=0;c[f+4>>2]=0;k=(jd(g,64,a,h,b,d,f)|0)==1;i=e;return (k?g:0)|0}function mc(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;k=i;i=i+80|0;if((i|0)>=(j|0))ba();l=k+48|0;m=k+24|0;n=k;if((Lu(h,l)|0)!=1){o=0;i=k;return o|0}if((Lu(h,m)|0)!=1){o=0;i=k;return o|0}if((Lu(h,n)|0)!=1){o=0;i=k;return o|0}h=l;c[h>>2]=a;c[h+4>>2]=b;c[l+8>>2]=f;f=m;c[f>>2]=d;c[f+4>>2]=e;c[m+8>>2]=g;if((Su(n,l,m)|0)!=1){o=0;i=k;return o|0}m=vc(24,19098,413)|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];c[m+16>>2]=c[n+16>>2];c[m+20>>2]=c[n+20>>2];o=m;i=k;return o|0}function nc(a){a=a|0;var b=0;b=vc(64,19098,458)|0;Ad(a,b);return b|0}function oc(a,b){a=a|0;b=b|0;var c=0;c=vc(64,19098,479)|0;_c(a,b,c)|0;return c|0}function pc(a){a=a|0;return kw(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24)|0}function qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+32|0;if((i|0)>=(j|0))ba();g=f;if((Lu(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=vc(24,19098,522)|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 rc(){zw(19142)|0;return}function sc(a){a=a|0;var b=0;b=a;C=c[b+4>>2]|0;return c[b>>2]|0}function tc(a){a=a|0;return c[a+8>>2]|0}function uc(a){a=a|0;return a+12|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;e=i;i=i+64|0;if((i|0)>=(j|0))ba();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[184]|0)==-1)c[184]=Dc(1,0,19182,19202,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[184]|0))Cc();o=c[m>>2]|0;c[h>>2]=c[l>>2];c[h+4>>2]=o;Ic(1,61559,h);Cc()}c[n>>2]=wc(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[185]|0)==-1)c[185]=Dc(1,20922,19182,19202,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[185]|0){p=lv(c[(Vu()|0)>>2]|0)|0;c[g>>2]=19218;c[g+4>>2]=19182;c[g+8>>2]=81;c[g+12>>2]=p;Nc(1,20922,20500,g)}}else Hc(-1,0);c[q>>2]=82;if((c[186]|0)==-1)c[186]=Dc(1,0,19182,19202,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[186]|0))Cc();c[f>>2]=19182;c[f+4>>2]=82;Ic(1,61559,f);Cc();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,k=0;e=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=px(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{xx(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 xc(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))ba();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){qx(c[g>>2]|0);i=e;return}c[l>>2]=237;if((c[187]|0)==-1)c[187]=Dc(1,0,19182,19225,c[l>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[187]|0))Cc();l=c[k>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=l;Ic(1,61559,f);Cc()}function yc(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))ba();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]=(Hv(c[g>>2]|0)|0)+1;c[l>>2]=vc(c[m>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;Ax(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[188]|0)==-1)c[188]=Dc(1,0,19182,19239,c[n>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[188]|0))Cc();n=c[k>>2]|0;c[f>>2]=c[h>>2];c[f+4>>2]=n;Ic(1,61559,f);Cc();return 0}function zc(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))ba();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]=rv(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[189]|0)==-1)c[189]=Dc(1,0,19182,19255,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[189]|0))Cc();c[g>>2]=19182;c[g+4>>2]=433;Ic(1,61559,g);Cc();return 0}function Ac(){c[17632]=c[3962];return}function Bc(){return}function Cc(){Ea()}function Dc(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))ba();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[17633];if((c[17634]|0)>=0&0==(c[17635]|0)){c[h>>2]=(c[k>>2]|0)<=(c[17634]|0)&1;s=c[h>>2]|0;i=g;return s|0}c[r>>2]=(c[17634]|0)>=0&1;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[17636]|0))break;c[p>>2]=(c[17637]|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==(lx(c[p>>2]|0,c[l>>2]|0,0,0,0)|0):0)?0==(lx((c[p>>2]|0)+32|0,c[m>>2]|0,0,0,0)|0):0)?0==(lx((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[17634]|0)>=0){c[h>>2]=(p|0)<=(c[17634]|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 Ec(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))ba();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[17639]|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}if(!(Xa(l|0,4097,c[17639]|0,c[k>>2]|0)|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}c[p>>2]=fx(l,91)|0;if(0!=(c[p>>2]|0)?93==(a[(c[p>>2]|0)+1>>0]|0):0){c[q>>2]=yc(l,19301,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=Aw()|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;qv(l,4096,19324,g)|0;xc(c[q>>2]|0,19301,354)}if(!(dv(l,71630)|0)){c[h>>2]=1;s=c[h>>2]|0;i=d;return s|0}Fc(71630);Tv(71630,l)|0;c[f>>2]=420;c[m>>2]=Jw(l,1089,f)|0;do if(-1!=(c[m>>2]|0)){if(c[17632]|0)sw(c[17632]|0)|0;c[n>>2]=Vw(c[m>>2]|0,2)|0;iw(c[m>>2]|0)|0;if(-1==(c[n>>2]|0)){c[m>>2]=-1;break}c[o>>2]=rw(2,19331)|0;if(!(c[o>>2]|0)){iw(2)|0;c[m>>2]=-1}}while(0);if(-1!=(c[m>>2]|0)){c[17632]=c[o>>2];c[h>>2]=1;s=c[h>>2]|0;i=d;return s|0}c[r>>2]=392;if((c[190]|0)==-1)c[190]=Dc(1,0,19301,19334,c[r>>2]|0)|0;if((Gc()|0)<=0){if(c[190]|0){r=lv(c[(Vu()|0)>>2]|0)|0;c[e>>2]=38511;c[e+4>>2]=l;c[e+8>>2]=19301;c[e+12>>2]=392;c[e+16>>2]=r;Ic(1,19477,e)}}else Hc(-1,0);c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}function Fc(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d+4|0;f=d;c[e>>2]=b;if(!(a[c[e>>2]>>0]|0)){i=d;return}c[f>>2]=c[70564+((((c[17640]|0)>>>0)%3|0)<<2)>>2];if(c[f>>2]|0){Kw(c[f>>2]|0)|0;xc(c[f>>2]|0,19301,314)}f=yc(c[e>>2]|0,19301,316)|0;c[70564+((((c[17640]|0)>>>0)%3|0)<<2)>>2]=f;c[17640]=(c[17640]|0)+1;i=d;return}function Gc(){return c[17644]|0}function Hc(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))ba();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[17644]=(c[17644]|0)+(c[f>>2]|0);i=d;return}c[h>>2]=0==(c[17644]|0)&1;c[17644]=0;if((c[g>>2]|0)==0|(c[h>>2]|0)!=0){i=d;return}c[k>>2]=867;if((c[191]|0)==-1)c[191]=Dc(1,0,19301,19349,c[k>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);i=d;return}if(!(c[191]|0)){i=d;return}c[e>>2]=19301;c[e+4>>2]=867;Ic(1,61559,e);i=d;return}function Ic(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))ba();f=e+20|0;g=e+16|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Jc(c[f>>2]|0,c[17638]|0,c[g>>2]|0,h);i=e;return}function Jc(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))ba();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]=(rv(0,0,c[o>>2]|0,u)|0)+1;if(!(c[t>>2]|0)){c[v>>2]=910;if((c[192]|0)==-1)c[192]=Dc(1,0,19301,19365,c[v>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[192]|0))Cc();c[l>>2]=19301;c[l+4>>2]=910;Ic(1,61559,l);Cc()}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]=fb()|0;v=i;i=i+((1*l|0)+15&-16)|0;if((i|0)>=(j|0))ba();ub(y|0,0)|0;l=Yd()|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=Hx(c[u>>2]|0,c[u+4>>2]|0,1e3,0)|0;u=c[y>>2]|0;e=yx(u|0,((u|0)<0)<<31>>31|0,l|0,C|0)|0;c[y>>2]=e;do if(f){e=x;l=Ix(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0;e=Jx(l|0,C|0,1e3,0)|0;l=y+4|0;u=c[l>>2]|0;d=yx(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=wx(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=Ix(c[l>>2]|0,c[l+4>>2]|0,1e3,0)|0;l=wx(0,0,u|0,C|0)|0;u=Jx(l|0,C|0,1e3,0)|0;l=C;b=x;D=Ix(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=Jx(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=yx(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;c[u>>2]=l;break}else{l=yx(1e6,0,b|0,D|0)|0;D=y+4|0;b=c[D>>2]|0;u=yx(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]=yb(y|0)|0;if(!(c[s>>2]|0))Tv(q,19371)|0;else{Xa(r|0,64,19387,c[s>>2]|0)|0;c[k>>2]=c[y+4>>2];qv(q,64,r,k)|0}rv(v,c[t>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[s>>2]|0)Ec(c[s>>2]|0)|0;s=70496;if(0!=(c[m>>2]&32|0)&(0!=(c[s>>2]|0)?1:0!=(c[s+4>>2]|0))?0==(fw(v,75727,256)|0):0){c[17645]=(c[17645]|0)+1;c[h>>2]=c[17624];c[h+4>>2]=c[17625];s=be(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[17645]|0)>>>0>1e3)Kc(q);c[A>>2]=1;E=c[w>>2]|0;Ia(E|0);i=g;return}Kc(q);lw(75727,v,256)|0;c[17645]=0;c[17646]=c[m>>2];h=$d()|0;z=B;c[z>>2]=h;c[z+4>>2]=C;c[17624]=c[B>>2];c[17625]=c[B+4>>2];lw(75983,c[n>>2]|0,32)|0;Lc(c[m>>2]|0,c[n>>2]|0,q,v);c[A>>2]=0;E=c[w>>2]|0;Ia(E|0);i=g;return}function Kc(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))ba();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=70496;if((0==(c[b>>2]|0)?0==(c[b+4>>2]|0):0)|0==(c[17645]|0)){i=d;return}c[k>>2]=0;c[l>>2]=zv(75727,0,256)|0;if(c[l>>2]|0){if((c[l>>2]|0)!=75727)c[l>>2]=(c[l>>2]|0)+-1}else c[l>>2]=75982;if((a[c[l>>2]>>0]|0)==10){c[k>>2]=1;a[c[l>>2]>>0]=0};c[e>>2]=c[17624];c[e+4>>2]=c[17625];b=be(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]=Sd(e,1)|0;e=c[17645]|0;n=c[m>>2]|0;c[f>>2]=256;c[f+4>>2]=75727;c[f+8>>2]=e;c[f+12>>2]=n;qv(h,576,19408,f)|0;if((c[k>>2]|0)==1)a[c[l>>2]>>0]=10;Lc(c[17646]|0,75983,c[g>>2]|0,h);h=$d()|0;g=o;c[g>>2]=h;c[g+4>>2]=C;c[17624]=c[o>>2];c[17625]=c[o+4>>2];c[17645]=0;i=d;return}function Lc(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))ba();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[17632]|0)&0==(c[17647]|0)){e=c[17632]|0;d=c[l>>2]|0;b=c[k>>2]|0;a=Mc(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;dw(e,19465,g)|0;tw(c[17632]|0)|0}c[n>>2]=c[17647];while(1){if(!(c[n>>2]|0))break;Eb[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 Mc(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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]=19282;break}if((c[e>>2]&4|0)>0){c[d>>2]=19277;break}if((c[e>>2]&8|0)>0){c[d>>2]=19271;break}if(!(c[e>>2]&-33)){c[d>>2]=19296;break}else{c[d>>2]=19457;break}}else c[d>>2]=19290;while(0);i=b;return c[d>>2]|0}function Nc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0;f=i;i=i+176|0;if((i|0)>=(j|0))ba();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[17633];c[m>>2]=e;e=c[k>>2]|0;k=Aw()|0;c[g>>2]=e;c[g+4>>2]=k;zc(n,128,19318,g)|0;Jc(c[h>>2]|0,n,c[l>>2]|0,m);i=f;return}function Oc(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))ba();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]=fb()|0;e=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))ba();if(1!=(Pc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}if(Pe(c[r>>2]|0,e,c[n>>2]|0,c[m>>2]|0,c[n>>2]|0)|0){c[u>>2]=136;if((c[196]|0)==-1)c[196]=Dc(1,0,19527,19563,c[u>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[196]|0))Cc();c[k>>2]=19527;c[k+4>>2]=136;Ic(1,61559,k);Cc()}Ke(c[r>>2]|0);if(1!=(Qc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}if(!(Pe(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){Ke(c[r>>2]|0);xx(e|0,0,f|0)|0;c[l>>2]=c[n>>2];c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}c[v>>2]=140;if((c[200]|0)==-1)c[200]=Dc(1,0,19527,19563,c[v>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[200]|0))Cc();c[h>>2]=19527;c[h+4>>2]=140;Ic(1,61559,h);Cc();return 0}function Pc(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))ba();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(Je(c[k>>2]|0,9,2,0)|0){c[o>>2]=68;if((c[193]|0)==-1)c[193]=Dc(1,0,19527,19546,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[193]|0))Cc();c[h>>2]=19527;c[h+4>>2]=68;Ic(1,61559,h);Cc()}c[n>>2]=Le(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[194]|0)==-1)c[194]=Dc(1,0,19527,19546,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[194]|0))Cc();c[g>>2]=19527;c[g+4>>2]=72;Ic(1,61559,g);Cc()}c[n>>2]=Oe(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[195]|0)==-1)c[195]=Dc(1,0,19527,19546,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[195]|0))Cc();c[f>>2]=19527;c[f+4>>2]=76;Ic(1,61559,f);Cc();return 0}function Qc(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))ba();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(Je(c[k>>2]|0,10,2,0)|0){c[o>>2]=98;if((c[197]|0)==-1)c[197]=Dc(1,0,19527,19595,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[197]|0))Cc();c[h>>2]=19527;c[h+4>>2]=98;Ic(1,61559,h);Cc()}c[n>>2]=Le(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[198]|0)==-1)c[198]=Dc(1,0,19527,19595,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[198]|0))Cc();c[g>>2]=19527;c[g+4>>2]=102;Ic(1,61559,g);Cc()}c[n>>2]=Oe(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[199]|0)==-1)c[199]=Dc(1,0,19527,19595,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[199]|0))Cc();c[f>>2]=19527;c[f+4>>2]=106;Ic(1,61559,f);Cc();return 0}function Rc(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))ba();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]=fb()|0;e=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))ba();if(1!=(Qc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}if(Qe(c[r>>2]|0,e,c[n>>2]|0,c[m>>2]|0,c[n>>2]|0)|0){c[u>>2]=171;if((c[201]|0)==-1)c[201]=Dc(1,0,19527,19616,c[u>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[201]|0))Cc();c[k>>2]=19527;c[k+4>>2]=171;Ic(1,61559,k);Cc()}Ke(c[r>>2]|0);if(1!=(Pc(r,c[o>>2]|0,c[p>>2]|0)|0)){c[l>>2]=-1;c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}if(!(Qe(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){Ke(c[r>>2]|0);xx(e|0,0,f|0)|0;c[l>>2]=c[n>>2];c[t>>2]=1;w=c[s>>2]|0;Ia(w|0);x=c[l>>2]|0;i=g;return x|0}c[v>>2]=175;if((c[202]|0)==-1)c[202]=Dc(1,0,19527,19616,c[v>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[202]|0))Cc();c[h>>2]=19527;c[h+4>>2]=175;Ic(1,61559,h);Cc();return 0}function Sc(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))ba();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]=Tc(c[h>>2]|0)|0;if(!(c[l>>2]|0)){c[o>>2]=257;if((c[205]|0)==-1)c[205]=Dc(1,0,19690,19807,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[205]|0))Cc();c[g>>2]=19690;c[g+4>>2]=257;Ic(1,61559,g);Cc()}if(Ae(m,c[l>>2]|0,0)|0){c[p>>2]=258;if((c[206]|0)==-1)c[206]=Dc(1,0,19690,19807,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[206]|0))Cc();c[f>>2]=19690;c[f+4>>2]=258;Ic(1,61559,f);Cc()}me(c[l>>2]|0);c[n>>2]=Be(19719,c[m>>2]|0,0)|0;if(c[n>>2]|0){kd(c[k>>2]|0,32,c[n>>2]|0);se(c[n>>2]|0);gf(c[m>>2]|0);i=d;return}c[q>>2]=261;if((c[207]|0)==-1)c[207]=Dc(1,0,19690,19807,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[207]|0))Cc();c[e>>2]=19690;c[e+4>>2]=261;Ic(1,61559,e);Cc()}function Tc(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))ba();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]=le(h,0,19727,f)|0;if(!(c[k>>2]|0)){i=b;return c[h>>2]|0}c[l>>2]=169;if((c[203]|0)==-1)c[203]=Dc(1,20922,19690,19782,c[l>>2]|0)|0;if((Gc()|0)<=0){if(c[203]|0){l=ee(c[k>>2]|0)|0;c[e>>2]=19703;c[e+4>>2]=19690;c[e+8>>2]=169;c[e+12>>2]=l;Nc(1,20922,20500,e)}}else Hc(-1,0);c[m>>2]=170;if((c[204]|0)==-1)c[204]=Dc(1,0,19690,19782,c[m>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[204]|0))Cc();c[d>>2]=19690;c[d+4>>2]=170;Ic(1,61559,d);Cc();return 0}function Uc(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))ba();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]=Vc(c[h>>2]|0)|0;if(!(c[l>>2]|0)){c[o>>2]=283;if((c[210]|0)==-1)c[210]=Dc(1,0,19690,19867,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[210]|0))Cc();c[g>>2]=19690;c[g+4>>2]=283;Ic(1,61559,g);Cc()}if(Ae(m,c[l>>2]|0,0)|0){c[p>>2]=284;if((c[211]|0)==-1)c[211]=Dc(1,0,19690,19867,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[211]|0))Cc();c[f>>2]=19690;c[f+4>>2]=284;Ic(1,61559,f);Cc()}me(c[l>>2]|0);c[n>>2]=Be(19719,c[m>>2]|0,0)|0;if(c[n>>2]|0){kd(c[k>>2]|0,32,c[n>>2]|0);se(c[n>>2]|0);gf(c[m>>2]|0);i=d;return}c[q>>2]=287;if((c[212]|0)==-1)c[212]=Dc(1,0,19690,19867,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[212]|0))Cc();c[e>>2]=19690;c[e+4>>2]=287;Ic(1,61559,e);Cc()}function Vc(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))ba();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]=le(h,0,19648,f)|0;if(!(c[k>>2]|0)){i=b;return c[h>>2]|0}c[l>>2]=202;if((c[208]|0)==-1)c[208]=Dc(1,20922,19690,19842,c[l>>2]|0)|0;if((Gc()|0)<=0){if(c[208]|0){l=ee(c[k>>2]|0)|0;c[e>>2]=19703;c[e+4>>2]=19690;c[e+8>>2]=202;c[e+12>>2]=l;Nc(1,20922,20500,e)}}else Hc(-1,0);c[m>>2]=203;if((c[209]|0)==-1)c[209]=Dc(1,0,19690,19842,c[m>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[209]|0))Cc();c[d>>2]=19690;c[d+4>>2]=203;Ic(1,61559,d);Cc();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,k=0,l=0,m=0;e=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=256;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;if((c[h>>2]|0)!=(c[l>>2]|0)){c[f>>2]=-1;m=c[f>>2]|0;i=e;return m|0}if(1!=(Wd(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,32)|0)){c[f>>2]=-1;m=c[f>>2]|0;i=e;return m|0}else{c[f>>2]=1;m=c[f>>2]|0;i=e;return m|0}return 0}function Xc(){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))ba();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=le(k,0,19902,a)|0;c[m>>2]=q;if(q){c[n>>2]=505;if((c[213]|0)==-1)c[213]=Dc(1,20922,19690,19957,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[213]|0){n=ee(c[m>>2]|0)|0;c[e>>2]=19703;c[e+4>>2]=19690;c[e+8>>2]=505;c[e+12>>2]=n;Nc(1,20922,20500,e)}}else Hc(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=Ue(h,c[k>>2]|0)|0;c[m>>2]=e;if(e){c[o>>2]=510;if((c[214]|0)==-1)c[214]=Dc(1,20922,19690,19957,c[o>>2]|0)|0;if((Gc()|0)<=0){if(c[214]|0){o=ee(c[m>>2]|0)|0;c[d>>2]=19988;c[d+4>>2]=19690;c[d+8>>2]=510;c[d+12>>2]=o;Nc(1,20922,20500,d)}}else Hc(-1,0);me(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}me(c[k>>2]|0);k=Yc(l,c[h>>2]|0,37902,35465)|0;c[m>>2]=k;if(!k){me(c[h>>2]|0);c[g>>2]=vc(32,19690,530)|0;kd(c[g>>2]|0,32,c[l>>2]|0);se(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[215]|0)==-1)c[215]=Dc(1,20922,19690,19957,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[215]|0){p=ee(c[m>>2]|0)|0;c[b>>2]=20003;c[b+4>>2]=19690;c[b+8>>2]=525;c[b+12>>2]=p;Nc(1,20922,20500,b)}}else Hc(-1,0);me(c[h>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}function Yc(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))ba();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]=oe(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]=pe(c[o>>2]|0)|0;me(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]=oe(u,c[q>>2]|0,1)|0;if(!(c[p>>2]|0)){v=8;break}n=qe(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;me(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;jf(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}me(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;jf(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}me(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){me(u);c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}return 0}function Zc(){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))ba();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=le(k,0,20017,a)|0;c[m>>2]=q;if(q){c[n>>2]=604;if((c[216]|0)==-1)c[216]=Dc(1,20922,19690,20061,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[216]|0){n=ee(c[m>>2]|0)|0;c[e>>2]=19703;c[e+4>>2]=19690;c[e+8>>2]=604;c[e+12>>2]=n;Nc(1,20922,20500,e)}}else Hc(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=Ue(h,c[k>>2]|0)|0;c[m>>2]=e;if(e){c[o>>2]=609;if((c[217]|0)==-1)c[217]=Dc(1,20922,19690,20061,c[o>>2]|0)|0;if((Gc()|0)<=0){if(c[217]|0){o=ee(c[m>>2]|0)|0;c[d>>2]=19988;c[d+4>>2]=19690;c[d+8>>2]=609;c[d+12>>2]=o;Nc(1,20922,20500,d)}}else Hc(-1,0);me(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}me(c[k>>2]|0);k=Yc(l,c[h>>2]|0,37902,35465)|0;c[m>>2]=k;if(!k){me(c[h>>2]|0);c[g>>2]=vc(32,19690,629)|0;kd(c[g>>2]|0,32,c[l>>2]|0);se(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[218]|0)==-1)c[218]=Dc(1,20922,19690,20061,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[218]|0){p=ee(c[m>>2]|0)|0;c[b>>2]=20003;c[b+4>>2]=19690;c[b+8>>2]=624;c[b+12>>2]=p;Nc(1,20922,20500,b)}}else Hc(-1,0);me(c[h>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}function _c(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))ba();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]=Tc(c[k>>2]|0)|0;c[p>>2]=$c(c[l>>2]|0)|0;l=Re(o,c[p>>2]|0,c[n>>2]|0)|0;c[q>>2]=l;if(l){c[s>>2]=807;if((c[220]|0)==-1)c[220]=Dc(2,20922,19690,20156,c[s>>2]|0)|0;if((Gc()|0)<=0){if(c[220]|0){s=ee(c[q>>2]|0)|0;c[g>>2]=19690;c[g+4>>2]=807;c[g+8>>2]=s;Nc(2,20922,20181,g)}}else Hc(-1,0);me(c[p>>2]|0);me(c[n>>2]|0);c[h>>2]=-1;u=c[h>>2]|0;i=e;return u|0}me(c[n>>2]|0);me(c[p>>2]|0);p=Yc(r,c[o>>2]|0,37764,47125)|0;c[q>>2]=p;if(!p){me(c[o>>2]|0);kd(c[m>>2]|0,32,c[r>>2]|0);kd((c[m>>2]|0)+32|0,32,c[r+4>>2]|0);se(c[r>>2]|0);se(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[221]|0)==-1)c[221]=Dc(1,0,19690,20156,c[t>>2]|0)|0;if((Gc()|0)<=0){if(c[221]|0){c[f>>2]=19690;c[f+4>>2]=819;Ic(1,61559,f)}}else Hc(-1,0);me(c[o>>2]|0);c[h>>2]=-1;u=c[h>>2]|0;i=e;return u|0}function $c(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))ba();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;cd(a,kw(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0,k);c[f>>2]=37822;c[f+4>>2]=64;c[f+8>>2]=k;k=le(l,0,20092,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[219]|0)==-1)c[219]=Dc(1,20922,19690,20136,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[219]|0){n=ee(c[m>>2]|0)|0;c[e>>2]=19703;c[e+4>>2]=19690;c[e+8>>2]=698;c[e+12>>2]=n;Nc(1,20922,20500,e)}}else Hc(-1,0);c[g>>2]=0;p=c[g>>2]|0;i=b;return p|0}function ad(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))ba();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)!=(kw(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=le(t,0,20255,m)|0;c[v>>2]=f;if(f){c[w>>2]=918;if((c[222]|0)==-1)c[222]=Dc(1,20922,19690,20284,c[w>>2]|0)|0;if((Gc()|0)<=0){if(c[222]|0){w=ee(c[v>>2]|0)|0;c[l>>2]=19703;c[l+4>>2]=19690;c[l+8>>2]=918;c[l+12>>2]=w;Nc(1,20922,20500,l)}}else Hc(-1,0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}c[s>>2]=$c(c[p>>2]|0)|0;p=c[r>>2]|0;c[k>>2]=32;c[k+4>>2]=p;p=le(u,0,20311,k)|0;c[v>>2]=p;if(p){me(c[s>>2]|0);me(c[t>>2]|0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}c[v>>2]=Se(c[t>>2]|0,c[s>>2]|0,c[u>>2]|0)|0;me(c[u>>2]|0);me(c[s>>2]|0);me(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[223]|0)==-1)c[223]=Dc(4,20922,19690,20284,c[x>>2]|0)|0;if((Gc()|0)<=0){if(c[223]|0){x=ee(c[v>>2]|0)|0;c[h>>2]=19690;c[h+4>>2]=938;c[h+8>>2]=x;Nc(4,20922,20363,h)}}else Hc(-1,0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}function bd(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))ba();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(le(u,0,20216,l)|0){c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}if(Ae(t,c[u>>2]|0,0)|0){c[y>>2]=972;if((c[224]|0)==-1)c[224]=Dc(1,0,19690,20413,c[y>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[224]|0))Cc();c[k>>2]=19690;c[k+4>>2]=972;Ic(1,61559,k);Cc()}me(c[u>>2]|0);c[r>>2]=Ce(49839,c[t>>2]|0,0)|0;md(s,c[n>>2]|0,32);c[q>>2]=ye(0)|0;Ee(c[q>>2]|0,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);ze(c[r>>2]|0);se(c[s>>2]|0);c[v>>2]=re(256)|0;if(De(c[v>>2]|0,0,c[q>>2]|0,c[t>>2]|0)|0){c[z>>2]=989;if((c[225]|0)==-1)c[225]=Dc(1,20922,19690,20413,c[z>>2]|0)|0;if((Gc()|0)<=0){if(c[225]|0){z=ee(0)|0;c[h>>2]=20436;c[h+4>>2]=19690;c[h+8>>2]=989;c[h+12>>2]=z;Nc(1,20922,20500,h)}}else Hc(-1,0);ze(c[q>>2]|0);gf(c[t>>2]|0);c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}ze(c[q>>2]|0);gf(c[t>>2]|0);c[x>>2]=32;if(Ie(c[v>>2]|0,2)|0){c[A>>2]=998;if((c[226]|0)==-1)c[226]=Dc(1,0,19690,20413,c[A>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[226]|0))Cc();c[g>>2]=19690;c[g+4>>2]=998;Ic(1,61559,g);Cc()}if(!(ue(1,w,c[x>>2]|0,x,c[v>>2]|0)|0)){cd(w,c[x>>2]|0,c[p>>2]|0);se(c[v>>2]|0);c[m>>2]=1;C=c[m>>2]|0;i=e;return C|0}c[B>>2]=1005;if((c[227]|0)==-1)c[227]=Dc(1,0,19690,20413,c[B>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[227]|0))Cc();c[f>>2]=19690;c[f+4>>2]=1005;Ic(1,61559,f);Cc();return 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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;$e(10,c[h>>2]|0,c[f>>2]|0,c[g>>2]|0);i=e;return}function dd(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))ba();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=od(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 ed(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))ba();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]=bf(c[s>>2]|0)|0;c[F>>2]=bf(c[r>>2]|0)|0;m=c[F>>2]|0;c[G>>2]=fb()|0;l=i;i=i+((1*m|0)+15&-16)|0;if((i|0)>=(j|0))ba();if(!(c[E>>2]|0)){c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Ia(Q|0);R=c[o>>2]|0;i=n;return R|0}if(Ve(y,c[r>>2]|0,2)|0){c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Ia(Q|0);R=c[o>>2]|0;i=n;return R|0}if(Ve(z,c[s>>2]|0,2)|0){We(c[y>>2]|0);c[o>>2]=-1;c[K>>2]=1;Q=c[G>>2]|0;Ia(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}xx(c[p>>2]|0,0,c[q>>2]|0)|0;a:do if((fd(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]=fb()|0;r=i;i=i+((1*s|0)+15&-16)|0;if((i|0)>=(j|0))ba();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;Ax(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]=gd(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{Ax(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;Ax(r|0,(c[p>>2]|0)+(0-(c[E>>2]|0))|0,c[E>>2]|0)|0;xx(r+(c[E>>2]|0)+(c[I>>2]|0)|0,(c[B>>2]|0)+1&255|0,1)|0;Ye(c[z>>2]|0);c[A>>2]=gd(c[z>>2]|0,l,c[F>>2]|0,r,c[L>>2]|0)|0;if(!(c[A>>2]|0)){S=21;break}Ax(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){Ax(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}xx(r+(c[E>>2]|0)+(c[I>>2]|0)|0,c[B>>2]&255|0,1)|0;Ye(c[z>>2]|0);s=c[z>>2]|0;m=c[F>>2]|0;if((c[C>>2]|0)>>>0>0)c[A>>2]=gd(s,l,m,r,c[L>>2]|0)|0;else c[A>>2]=gd(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{Ax(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);Ia(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;Ia(Q|0);R=c[o>>2]|0;i=n;return R|0}while(0);if((S|0)==34)c[H>>2]=-1;We(c[y>>2]|0);We(c[z>>2]|0);c[o>>2]=c[H>>2];c[K>>2]=1;Q=c[G>>2]|0;Ia(Q|0);R=c[o>>2]|0;i=n;return R|0}function fd(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))ba();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]=gd(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;Ax(p|0,q|0,bf(af(c[l>>2]|0)|0)|0)|0;c[k>>2]=1;s=c[k>>2]|0;i=h;return s|0}return 0}function gd(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))ba();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;cf(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;Ze(c[h>>2]|0,c[m>>2]|0,c[n>>2]|0);n=_e(c[h>>2]|0,0)|0;i=g;return n|0}function hd(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))ba();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]=ed(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 id(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))ba();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=ed(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 jd(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))ba();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]=id(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 kd(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))ba();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(Ie(c[m>>2]|0,2)|0){c[q>>2]=He(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];Ax(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}xx((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[228]|0)==-1)c[228]=Dc(1,0,20454,20467,c[r>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[228]|0))Cc();c[h>>2]=20454;c[h+4>>2]=89;Ic(1,61559,h);Cc()}c[n>>2]=c[l>>2];h=ue(5,c[k>>2]|0,c[n>>2]|0,n,c[m>>2]|0)|0;c[o>>2]=h;if(!h){ld(c[k>>2]|0,c[n>>2]|0,c[l>>2]|0);i=e;return}c[s>>2]=110;if((c[229]|0)==-1)c[229]=Dc(1,20922,20454,20467,c[s>>2]|0)|0;if((Gc()|0)<=0){if(c[229]|0){s=ee(c[o>>2]|0)|0;c[g>>2]=20537;c[g+4>>2]=20454;c[g+8>>2]=110;c[g+12>>2]=s;Nc(1,20922,20500,g)}}else Hc(-1,0);c[t>>2]=111;if((c[230]|0)==-1)c[230]=Dc(1,0,20454,20467,c[t>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[230]|0))Cc();c[f>>2]=20454;c[f+4>>2]=111;Ic(1,61559,f);Cc()}function ld(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))ba();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}Bx((c[k>>2]|0)+((c[h>>2]|0)-(c[g>>2]|0))|0,c[f>>2]|0,c[g>>2]|0)|0;xx(c[f>>2]|0,0,(c[h>>2]|0)-(c[g>>2]|0)|0)|0;i=e;return}function md(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))ba();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=te(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[231]|0)==-1)c[231]=Dc(1,20922,20454,20552,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[231]|0){n=ee(c[m>>2]|0)|0;c[g>>2]=20584;c[g+4>>2]=20454;c[g+8>>2]=140;c[g+12>>2]=n;Nc(1,20922,20500,g)}}else Hc(-1,0);c[o>>2]=141;if((c[232]|0)==-1)c[232]=Dc(1,0,20454,20552,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[232]|0))Cc();c[f>>2]=20454;c[f+4>>2]=141;Ic(1,61559,f);Cc()}function nd(){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))ba();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(ie(20598)|0){c[h>>2]=0;o=je(37,h)|0;c[m>>2]=o;if(o|0){o=c[3962]|0;h=ee(c[m>>2]|0)|0;c[g>>2]=20751;c[g+4>>2]=h;dw(o,20712,g)|0}c[f>>2]=0;g=je(44,f)|0;c[m>>2]=g;if(!g){c[d>>2]=0;je(38,d)|0;c[b>>2]=0;je(48,b)|0;p=sb(0)|0;q=od(2,-1)|0;r=p^q;qd(r);i=a;return}g=c[3962]|0;f=ee(c[m>>2]|0)|0;c[e>>2]=20766;c[e+4>>2]=f;dw(g,20712,e)|0;c[d>>2]=0;je(38,d)|0;c[b>>2]=0;je(48,b)|0;p=sb(0)|0;q=od(2,-1)|0;r=p^q;qd(r);i=a;return}a=c[3962]|0;c[l>>2]=20598;dw(a,20604,l)|0;c[n>>2]=286;if((c[233]|0)==-1)c[233]=Dc(1,0,20670,20686,c[n>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[233]|0))Cc();c[k>>2]=20670;c[k+4>>2]=286;Ic(1,61559,k);Cc()}function od(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))ba();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[234]|0)==-1)c[234]=Dc(1,0,20670,20786,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[234]|0))Cc();c[g>>2]=20670;c[g+4>>2]=157;Ic(1,61559,g);Cc()}switch(c[k>>2]|0){case 1:{k=c[17648]|0;c[17648]=k+1;if(!((k>>>0)%256|0)){c[f>>2]=0;je(48,f)|0}c[n>>2]=-1-(4294967295%((c[l>>2]|0)>>>0)|0);do df(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 ff(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*+pd())>>>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[235]|0)==-1)c[235]=Dc(1,0,20670,20786,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[235]|0))Cc();c[e>>2]=20670;c[e+4>>2]=189;Ic(1,61559,e);Cc()}}return 0}function pd(){return +(+(cx()|0)/2147483647.0)}function qd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;ax(c[d>>2]|0);i=b;return}function rd(){hf(0,0);return}function sd(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))ba();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(le(l,0,20811,f)|0){c[m>>2]=155;if((c[236]|0)==-1)c[236]=Dc(1,0,20835,20848,c[m>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[236]|0))Cc();c[e>>2]=20835;c[e+4>>2]=155;Ic(1,61559,e);Cc()}if(!(Ue(k,c[l>>2]|0)|0)){me(c[l>>2]|0);c[h>>2]=vc(4,20835,164)|0;c[c[h>>2]>>2]=c[k>>2];i=b;return c[h>>2]|0}c[n>>2]=158;if((c[237]|0)==-1)c[237]=Dc(1,0,20835,20848,c[n>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[237]|0))Cc();c[d>>2]=20835;c[d+4>>2]=158;Ic(1,61559,d);Cc();return 0}function td(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;me(c[c[d>>2]>>2]|0);xc(c[d>>2]|0,20835,179);i=b;return}function ud(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))ba();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]=ne(c[c[f>>2]>>2]|0,0,0,0)|0;c[k>>2]=vc(c[h>>2]|0,20835,202)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(ne(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[238]|0)==-1)c[238]=Dc(1,0,20835,20885,c[l>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[238]|0))Cc();c[e>>2]=20835;c[e+4>>2]=207;Ic(1,61559,e);Cc();return 0}function vd(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))ba();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]=vc(4,20835,226)|0;if(ke(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[m>>2]=234;if((c[239]|0)==-1)c[239]=Dc(2,20922,20835,20927,c[m>>2]|0)|0;if((Gc()|0)<=0){if(c[239]|0)Nc(2,20922,20964,f)}else Hc(-1,0);xc(c[l>>2]|0,20835,235);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}if(!(Te(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[240]|0)==-1)c[240]=Dc(2,20922,20835,20927,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[240]|0)Nc(2,20922,20964,e)}else Hc(-1,0);td(c[l>>2]|0);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}function wd(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))ba();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]=xd(k,c[c[g>>2]>>2]|0,37914,39327)|0;if(c[l>>2]|0)c[l>>2]=xd(k,c[c[g>>2]>>2]|0,37902,39327)|0;if(c[l>>2]|0)c[l>>2]=xd(k,c[c[g>>2]>>2]|0,39286,39327)|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]=le(m,0,21087,d)|0;se(c[k>>2]|0);se(c[k+4>>2]|0);c[h>>2]=vc(4,20835,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[241]|0)==-1)c[241]=Dc(2,0,20835,20998,c[n>>2]|0)|0;if((Gc()|0)<=0){if(c[241]|0){c[e>>2]=20835;c[e+4>>2]=270;Ic(34,21039,e)}}else Hc(-1,0);c[f>>2]=0;o=c[f>>2]|0;i=b;return o|0}function xd(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))ba();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=oe(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]=pe(c[o>>2]|0)|0;me(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=oe(u,c[q>>2]|0,1)|0;c[p>>2]=n;if(!n){v=8;break}n=qe(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;me(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;jf(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}me(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;jf(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}me(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){me(u);c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}return 0}function yd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;me(c[c[d>>2]>>2]|0);xc(c[d>>2]|0,20835,295);i=b;return}function zd(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))ba();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]=ne(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=vc(c[h>>2]|0,20835,318)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(ne(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[242]|0)==-1)c[242]=Dc(1,0,20835,21117,c[l>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[242]|0))Cc();c[e>>2]=20835;c[e+4>>2]=323;Ic(1,61559,e);Cc();return 0}function Ad(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))ba();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]=zd(c[e>>2]|0,g)|0;cd(c[g>>2]|0,c[h>>2]|0,c[f>>2]|0);xc(c[g>>2]|0,20835,347);i=d;return}function Bd(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))ba();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]=vc(4,20835,367)|0;if(ke(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=374;if((c[243]|0)==-1)c[243]=Dc(2,0,20835,21153,c[o>>2]|0)|0;if((Gc()|0)<=0){if(c[243]|0){c[f>>2]=20835;c[f+4>>2]=374;Ic(34,21039,f)}}else Hc(-1,0);xc(c[l>>2]|0,20835,375);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[n>>2]=xd(m,c[c[l>>2]>>2]|0,37914,39341)|0;if(c[n>>2]|0)c[n>>2]=xd(m,c[c[l>>2]>>2]|0,39286,39341)|0;if(!(c[n>>2]|0)){se(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[244]|0)==-1)c[244]=Dc(1,0,20835,21153,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[244]|0){c[e>>2]=20835;c[e+4>>2]=385;Ic(1,61559,e)}}else Hc(-1,0);me(c[c[l>>2]>>2]|0);xc(c[l>>2]|0,20835,387);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function Cd(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=vc(4,20835,406)|0;a=re(c[d>>2]|0)|0;c[c[e>>2]>>2]=a;ef(c[c[e>>2]>>2]|0,c[d>>2]|0,1);i=b;return c[e>>2]|0}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;d=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=ne(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=vc(c[h>>2]|0,20835,968)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(ne(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]=973;if((c[245]|0)==-1)c[245]=Dc(1,0,20835,21189,c[l>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[245]|0))Cc();c[e>>2]=20835;c[e+4>>2]=973;Ic(1,61559,e);Cc();return 0}function Ed(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))ba();d=b;e=b+28|0;f=b+24|0;g=b+20|0;h=b+16|0;k=b+12|0;l=b+8|0;c[f>>2]=a;c[h>>2]=xd(g,c[c[f>>2]>>2]|0,39286,39341)|0;if(!(c[h>>2]|0)){c[k>>2]=Fe(c[g>>2]|0)|0;se(c[g>>2]|0);c[e>>2]=c[k>>2];m=c[e>>2]|0;i=b;return m|0}c[l>>2]=547;if((c[246]|0)==-1)c[246]=Dc(1,0,20835,21224,c[l>>2]|0)|0;if((Gc()|0)<=0){if(c[246]|0){c[d>>2]=20835;c[d+4>>2]=547;Ic(1,61559,d)}}else Hc(-1,0);c[e>>2]=0;m=c[e>>2]|0;i=b;return m|0}function Fd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;se(c[c[d>>2]>>2]|0);xc(c[d>>2]|0,20835,565);i=b;return}function Gd(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Hd(c[c[e>>2]>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Hd(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))ba();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;ue(5,0,0,h,c[f>>2]|0)|0;c[k>>2]=vc(c[h>>2]|0,20835,589)|0;if(!(ue(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]=595;if((c[247]|0)==-1)c[247]=Dc(1,0,20835,21257,c[l>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[247]|0))Cc();c[e>>2]=20835;c[e+4>>2]=595;Ic(1,61559,e);Cc();return 0}function Id(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))ba();e=d;f=d+28|0;g=d+24|0;h=d+20|0;k=d+16|0;l=d+8|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=vc(4,20835,632)|0;if(!(te(c[k>>2]|0,5,c[g>>2]|0,c[h>>2]|0,d+12|0)|0)){c[f>>2]=c[k>>2];m=c[f>>2]|0;i=d;return m|0}c[l>>2]=640;if((c[248]|0)==-1)c[248]=Dc(2,0,20835,21283,c[l>>2]|0)|0;if((Gc()|0)<=0){if(c[248]|0){c[e>>2]=20835;c[e+4>>2]=640;Ic(34,21039,e)}}else Hc(-1,0);xc(c[k>>2]|0,20835,641);c[f>>2]=0;m=c[f>>2]|0;i=d;return m|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))ba();h=g+56|0;k=g+52|0;l=g+48|0;m=g+44|0;n=g+40|0;o=g+36|0;p=g+32|0;q=g+28|0;r=g+24|0;s=g+20|0;t=g+16|0;u=g+12|0;v=g+8|0;w=g+4|0;x=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Ed(c[m>>2]|0)|0;c[p>>2]=f;c[p>>2]=(c[p>>2]|0)>>>0<512?512:f;c[r>>2]=Ve(u,10,0)|0;if(c[r>>2]|0){c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}c[t>>2]=zd(c[m>>2]|0,s)|0;Ze(c[u>>2]|0,c[s>>2]|0,c[t>>2]|0);xc(c[s>>2]|0,20835,702);c[q>>2]=((((c[p>>2]|0)-1|0)>>>0)/512|0)+1;c[w>>2]=vc(c[q>>2]<<6,20835,706)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[q>>2]|0)>>>0)break;Ze(c[u>>2]|0,c[l>>2]|0,64);c[r>>2]=Xe(v,c[u>>2]|0)|0;z=c[v>>2]|0;if(c[r>>2]|0){A=6;break}c[x>>2]=z;if((c[(c[x>>2]|0)+4>>2]|0)==(c[(c[x>>2]|0)+8>>2]|0))Ze(c[x>>2]|0,0,0);s=(((c[o>>2]|0)>>>0)%256|0)&255;t=(c[x>>2]|0)+4|0;m=c[t>>2]|0;c[t>>2]=m+1;a[(c[x>>2]|0)+12+m>>0]=s;s=(c[w>>2]|0)+(c[o>>2]<<6)|0;m=s;s=_e(c[v>>2]|0,10)|0;t=m+64|0;do{a[m>>0]=a[s>>0]|0;m=m+1|0;s=s+1|0}while((m|0)<(t|0));We(c[v>>2]|0);c[o>>2]=(c[o>>2]|0)+1}if((A|0)==6)We(z);We(c[u>>2]|0);if(c[r>>2]|0){xc(c[w>>2]|0,20835,725);c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}c[r>>2]=te(c[k>>2]|0,5,c[w>>2]|0,c[q>>2]<<6,c[n>>2]|0)|0;xc(c[w>>2]|0,20835,734);if(c[r>>2]|0){c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}else{Ge(c[c[k>>2]>>2]|0,(c[p>>2]|0)-2|0);c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}return 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,m=0,n=0,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))ba();g=f+8|0;h=f;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+48|0;r=f+44|0;s=f+40|0;t=f+36|0;u=f+32|0;v=f+28|0;w=f+24|0;x=f+20|0;y=f+16|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[w>>2]=xd(q,c[c[n>>2]>>2]|0,37914,39327)|0;if(c[w>>2]|0)c[w>>2]=xd(q,c[c[n>>2]>>2]|0,39286,39327)|0;if(c[w>>2]|0){c[x>>2]=775;if((c[249]|0)==-1)c[249]=Dc(1,0,20835,21321,c[x>>2]|0)|0;if((Gc()|0)<=0){if(c[249]|0){c[h>>2]=20835;c[h+4>>2]=775;Ic(1,61559,h)}}else Hc(-1,0);c[c[o>>2]>>2]=0;c[k>>2]=0;z=c[k>>2]|0;i=f;return z|0}c[v>>2]=Jd(p,c[l>>2]|0,c[n>>2]|0,t)|0;if(!(c[v>>2]|0)){c[r>>2]=re(0)|0;we(c[r>>2]|0,c[c[m>>2]>>2]|0,c[q+4>>2]|0,c[q>>2]|0);c[s>>2]=re(0)|0;ve(c[s>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0);se(c[p>>2]|0);se(c[q>>2]|0);se(c[q+4>>2]|0);se(c[r>>2]|0);c[u>>2]=Hd(c[s>>2]|0,c[o>>2]|0)|0;se(c[s>>2]|0);c[k>>2]=c[u>>2];z=c[k>>2]|0;i=f;return z|0}c[y>>2]=783;if((c[250]|0)==-1)c[250]=Dc(1,0,20835,21321,c[y>>2]|0)|0;if((Gc()|0)<=0){if(c[250]|0){c[g>>2]=20835;c[g+4>>2]=783;Ic(1,61559,g)}}else Hc(-1,0);se(c[q>>2]|0);se(c[q+4>>2]|0);c[c[o>>2]>>2]=0;c[k>>2]=0;z=c[k>>2]|0;i=f;return z|0}function Ld(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))ba();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;c[l>>2]=0;if(!(te(l,5,c[h>>2]|0,c[k>>2]|0,0)|0)){c[m>>2]=Md(c[g>>2]|0,c[l>>2]|0)|0;se(c[l>>2]|0);i=e;return c[m>>2]|0}c[n>>2]=901;if((c[251]|0)==-1)c[251]=Dc(1,0,20835,21345,c[n>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[251]|0))Cc();c[f>>2]=20835;c[f+4>>2]=901;Ic(1,61559,f);Cc();return 0}function Md(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))ba();e=d+8|0;f=d;g=d+48|0;h=d+44|0;k=d+40|0;l=d+36|0;m=d+32|0;n=d+28|0;o=d+24|0;p=d+20|0;q=d+16|0;c[h>>2]=a;c[k>>2]=b;c[n>>2]=Nd(c[k>>2]|0)|0;if(Re(o,c[n>>2]|0,c[c[h>>2]>>2]|0)|0){c[p>>2]=853;if((c[253]|0)==-1)c[253]=Dc(1,0,20835,21418,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[253]|0){c[f>>2]=20835;c[f+4>>2]=853;Ic(1,61559,f)}}else Hc(-1,0);c[g>>2]=0;r=c[g>>2]|0;i=d;return r|0}c[m>>2]=wd(c[h>>2]|0)|0;if(!(Se(c[o>>2]|0,c[n>>2]|0,c[c[m>>2]>>2]|0)|0)){yd(c[m>>2]|0);me(c[n>>2]|0);c[l>>2]=vc(4,20835,874)|0;c[c[l>>2]>>2]=c[o>>2];c[g>>2]=c[l>>2];r=c[g>>2]|0;i=d;return r|0}c[q>>2]=864;if((c[254]|0)==-1)c[254]=Dc(1,0,20835,21418,c[q>>2]|0)|0;if((Gc()|0)<=0){if(c[254]|0){c[e>>2]=20835;c[e+4>>2]=864;Ic(1,61559,e)}}else Hc(-1,0);yd(c[m>>2]|0);me(c[n>>2]|0);me(c[o>>2]|0);c[g>>2]=0;r=c[g>>2]|0;i=d;return r|0}function Nd(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))ba();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(!(le(g,0,21376,e)|0)){i=b;return c[g>>2]|0}c[h>>2]=825;if((c[252]|0)==-1)c[252]=Dc(1,0,20835,21406,c[h>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[252]|0))Cc();c[d>>2]=20835;c[d+4>>2]=825;Ic(1,61559,d);Cc();return 0}function Od(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;me(c[c[d>>2]>>2]|0);xc(c[d>>2]|0,20835,946);i=b;return}function Pd(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))ba();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]=vc(4,20835,995)|0;if(ke(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=1002;if((c[255]|0)==-1)c[255]=Dc(2,0,20835,21431,c[o>>2]|0)|0;if((Gc()|0)<=0){if(c[255]|0){c[f>>2]=20835;c[f+4>>2]=1002;Ic(34,21039,f)}}else Hc(-1,0);xc(c[l>>2]|0,20835,1003);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[m>>2]=xd(n,c[c[l>>2]>>2]|0,37764,39339)|0;if(c[m>>2]|0)c[m>>2]=xd(n,c[c[l>>2]>>2]|0,39286,39339)|0;if(!(c[m>>2]|0)){se(c[n>>2]|0);c[g>>2]=c[l>>2];q=c[g>>2]|0;i=d;return q|0}c[p>>2]=1013;if((c[256]|0)==-1)c[256]=Dc(2,0,20835,21431,c[p>>2]|0)|0;if((Gc()|0)<=0){if(c[256]|0){c[e>>2]=20835;c[e+4>>2]=1013;Ic(34,21039,e)}}else Hc(-1,0);me(c[c[l>>2]>>2]|0);xc(c[l>>2]|0,20835,1015);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function Qd(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+96|0;if((i|0)>=(j|0))ba();f=e+32|0;g=e+24|0;h=e+16|0;k=e+8|0;l=e;m=e+92|0;n=e+88|0;o=e+84|0;p=e+80|0;q=e+76|0;r=e+72|0;s=e+68|0;t=e+64|0;u=e+60|0;v=e+56|0;w=e+52|0;x=e+48|0;y=e+44|0;z=e+40|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[u>>2]=xd(q,c[c[p>>2]>>2]|0,37914,39341)|0;if(c[u>>2]|0)c[u>>2]=xd(q,c[c[p>>2]>>2]|0,39286,39341)|0;if(c[u>>2]|0){c[w>>2]=1075;if((c[257]|0)==-1)c[257]=Dc(2,0,20835,21466,c[w>>2]|0)|0;if((Gc()|0)<=0){if(c[257]|0){c[l>>2]=20835;c[l+4>>2]=1075;Ic(34,21039,l)}}else Hc(-1,0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[u>>2]=xd(r,c[c[n>>2]>>2]|0,37764,39339)|0;if(c[u>>2]|0)c[u>>2]=xd(r,c[c[n>>2]>>2]|0,39286,39339)|0;if(c[u>>2]|0){se(c[q>>2]|0);c[x>>2]=1084;if((c[258]|0)==-1)c[258]=Dc(2,0,20835,21466,c[x>>2]|0)|0;if((Gc()|0)<=0){if(c[258]|0){c[k>>2]=20835;c[k+4>>2]=1084;Ic(34,21039,k)}}else Hc(-1,0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[s>>2]=re(0)|0;if(1!=(xe(c[s>>2]|0,c[c[o>>2]>>2]|0,c[q>>2]|0)|0)){c[y>>2]=1093;if((c[259]|0)==-1)c[259]=Dc(2,0,20835,21466,c[y>>2]|0)|0;if((Gc()|0)<=0){if(c[259]|0){c[h>>2]=20835;c[h+4>>2]=1093;Ic(34,21039,h)}}else Hc(-1,0);se(c[q>>2]|0);se(c[s>>2]|0);se(c[r>>2]|0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[t>>2]=re(0)|0;ve(c[t>>2]|0,c[r>>2]|0,c[s>>2]|0,c[q>>2]|0);se(c[q>>2]|0);se(c[s>>2]|0);se(c[r>>2]|0);c[v>>2]=vc(4,20835,1105)|0;r=c[v>>2]|0;c[g>>2]=c[t>>2];if(!(le(r,0,21492,g)|0)){se(c[t>>2]|0);c[m>>2]=c[v>>2];A=c[m>>2]|0;i=e;return A|0}c[z>>2]=1110;if((c[260]|0)==-1)c[260]=Dc(1,0,20835,21466,c[z>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[260]|0))Cc();c[f>>2]=20835;c[f+4>>2]=1110;Ic(1,61559,f);Cc();return 0}function Rd(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+64|0;if((i|0)>=(j|0))ba();f=e+8|0;g=e;h=e+52|0;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;r=e+20|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[p>>2]=Jd(o,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[p>>2]|0){c[q>>2]=1135;if((c[261]|0)==-1)c[261]=Dc(1,0,20835,21515,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[261]|0))Cc();c[g>>2]=20835;c[g+4>>2]=1135;Ic(1,61559,g);Cc()}c[n>>2]=Nd(c[o>>2]|0)|0;se(c[o>>2]|0);c[p>>2]=Se(c[c[l>>2]>>2]|0,c[n>>2]|0,c[c[m>>2]>>2]|0)|0;me(c[n>>2]|0);if(!(c[p>>2]|0)){c[h>>2]=1;s=c[h>>2]|0;i=e;return s|0}c[r>>2]=1149;if((c[262]|0)==-1)c[262]=Dc(2,20922,20835,21515,c[r>>2]|0)|0;if((Gc()|0)<=0){if(c[262]|0){r=ee(c[p>>2]|0)|0;c[f>>2]=20835;c[f+4>>2]=1148;c[f+8>>2]=r;Nc(2,20922,21540,f)}}else Hc(-1,0);c[h>>2]=-1;s=c[h>>2]|0;i=e;return s|0}function Sd(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))ba();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]=21661;b=a;m=c[b+4>>2]|0;n=k;c[n>>2]=c[b>>2];c[n+4>>2]=m;m=_d()|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]=21606;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]=21665;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=Lx(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=Kx(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]=21614;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=Lx(c[a>>2]|0,c[a+4>>2]|0,1e3,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Kx(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]=39339;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=Lx(c[l>>2]|0,c[l+4>>2]|0,60,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Kx(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]=21617;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=Lx(c[a>>2]|0,c[a+4>>2]|0,60,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Kx(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]=35463;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=Lx(c[l>>2]|0,c[l+4>>2]|0,24,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Kx(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]=21619;break}else{c[h>>2]=21623;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;zc(76016,128,21598,e)|0;c[f>>2]=76016;o=c[f>>2]|0;i=d;return o|0}function Td(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+32|0;if((i|0)>=(j|0))ba();d=b+16|0;e=b+12|0;f=b+8|0;g=b;h=a;k=c[h>>2]|0;l=c[h+4>>2]|0;h=Zd()|0;m=g;c[m>>2]=h;c[m+4>>2]=C;m=g;if((k|0)==(c[m>>2]|0)?(l|0)==(c[m+4>>2]|0):0){c[d>>2]=21628;n=c[d>>2]|0;i=b;return n|0}else{m=a;a=Kx(c[m>>2]|0,c[m+4>>2]|0,1e3,0)|0;m=Kx(a|0,C|0,1e3,0)|0;c[e>>2]=m;c[f>>2]=yb(e|0)|0;Xa(76144,255,21640,c[f>>2]|0)|0;c[d>>2]=76144;n=c[d>>2]|0;i=b;return n|0}return 0}function Ud(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))ba();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[263]|0)==-1)c[263]=Dc(1,0,21588,21670,c[y>>2]|0)|0;if((Gc()|0)<=0){if(c[263]|0){c[n>>2]=21588;c[n+4>>2]=873;Ic(1,61559,n)}}else Hc(-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[266]|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[264]|0)==-1)c[264]=Dc(1,0,21588,21670,c[z>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[264]|0))Cc();c[m>>2]=21588;c[m+4>>2]=890;Ic(1,61559,m);Cc()}else if((D|0)==24){c[A>>2]=895;if((c[265]|0)==-1)c[265]=Dc(1,0,21588,21670,c[A>>2]|0)|0;if((Gc()|0)<=0){if(c[265]|0){c[l>>2]=21588;c[l+4>>2]=895;Ic(1,61559,l)}}else Hc(-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[267]|0)==-1)c[267]=Dc(1,0,21588,21670,c[B>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[267]|0))Cc();c[k>>2]=21588;c[k+4>>2]=901;Ic(1,61559,k);Cc()}return 0}function Vd(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))ba();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]=vc((c[l>>2]|0)+1|0,21588,929)|0;c[m>>2]=Ud(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(!(c[m>>2]|0)){xc(c[k>>2]|0,21588,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 Wd(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))ba();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=Xd(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=Xd(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=Xd(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[268]|0)==-1)c[268]=Dc(1,0,21588,21733,c[x>>2]|0)|0;if((Gc()|0)<=0){if(c[268]|0){c[h>>2]=21588;c[h+4>>2]=993;Ic(1,61559,h)}}else Hc(-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 Xd(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))ba();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]=Gv(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 Yd(){var a=0;a=70504;C=c[a+4>>2]|0;return c[a>>2]|0}function Zd(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();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 _d(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;c[b>>2]=c[18];c[b+4>>2]=c[19];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function $d(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+32|0;if((i|0)>=(j|0))ba();b=a+8|0;d=a;e=a+16|0;ub(e|0,0)|0;f=c[e>>2]|0;g=Jx(f|0,((f|0)<0)<<31>>31|0,1e3,0)|0;f=Jx(g|0,C|0,1e3,0)|0;g=c[e+4>>2]|0;e=yx(f|0,C|0,g|0,((g|0)<0)<<31>>31|0)|0;g=70504;f=yx(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 ae(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;c[b>>2]=c[17628];c[b+4>>2]=c[17629];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function be(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))ba();d=b+24|0;e=b+16|0;f=b+8|0;g=b;h=$d()|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=ae()|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=wx(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 ce(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))ba();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=gw(c[e>>2]|0)|0;f=yx(0,b|0,gw(c[e+4>>2]|0)|0,0)|0;i=d;return f|0}function de(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))ba();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=kw(c[e>>2]|0)|0;f=yx(0,b|0,kw(c[e+4>>2]|0)|0,0)|0;i=d;return f|0}function ee(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=fe(c[d>>2]|0)|0;i=b;return a|0}function fe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=cu(c[d>>2]|0)|0;i=b;return a|0}function ge(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))ba();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 he(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=ge(1,c[d>>2]|0)|0;i=b;return a|0}function ie(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=If(c[d>>2]|0)|0;i=b;return a|0}function je(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))ba();e=d+20|0;f=d+16|0;g=d;c[e>>2]=a;c[g>>2]=b;c[f>>2]=he(Lf(c[e>>2]|0,g)|0)|0;i=d;return c[f>>2]|0}function ke(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))ba();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=he(rg(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;i=f;return e|0}function le(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))ba();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]=Eg(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,m)|0;m=he(c[l>>2]|0)|0;i=f;return m|0}function me(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;qg(c[d>>2]|0);i=b;return}function ne(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))ba();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=Gg(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function oe(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=sg(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function pe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Cg(c[d>>2]|0)|0;i=b;return a|0}function qe(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=Ag(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function re(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=sq(c[d>>2]|0)|0;i=b;return a|0}function se(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;uq(c[d>>2]|0);i=b;return}function te(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))ba();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=he(Ap(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 ue(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))ba();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=he(Ep(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 ve(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))ba();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;sp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function we(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))ba();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;tp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function xe(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=mp(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function ye(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=_n(c[d>>2]|0)|0;i=b;return a|0}function ze(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;ao(c[d>>2]|0);i=b;return}function Ae(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=he(vi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)|0;i=e;return d|0}function Be(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=lo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Ce(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=mo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function De(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))ba();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=Wn(e,g,h,Sh(c[l>>2]|0,1)|0)|0;i=f;return k|0}function Ee(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))ba();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;Do(e,g,h,Sh(c[l>>2]|0,1)|0);i=f;return}function Fe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Oo(c[d>>2]|0)|0;i=b;return a|0}function Ge(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Ro(c[e>>2]|0,c[f>>2]|0);i=d;return}function He(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=hq(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Ie(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=wq(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Je(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))ba();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=(Gf()|0)!=0;d=c[h>>2]|0;if(e){c[g>>2]=he(Xh(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]=he(176)|0;n=c[g>>2]|0;i=f;return n|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))ba();d=b;c[d>>2]=a;ai(c[d>>2]|0);i=b;return}function Le(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))ba();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(Gf()|0){c[f>>2]=Me(ii(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]=he(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function Me(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Ne(32,c[d>>2]|0)|0;i=b;return a|0}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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=ge(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Oe(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))ba();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(Gf()|0){c[f>>2]=Me(ki(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]=he(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function Pe(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))ba();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(Gf()|0){c[h>>2]=he(bi(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)xx(c[l>>2]|0,66,c[m>>2]|0)|0;c[h>>2]=he(176)|0;p=c[h>>2]|0;i=g;return p|0}function Qe(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))ba();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(Gf()|0){c[h>>2]=he(fi(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]=he(176)|0;p=c[h>>2]|0;i=g;return p|0}return 0}function Re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))ba();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=(Gf()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=he(xk(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]=he(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,k=0,l=0;e=i;i=i+16|0;if((i|0)>=(j|0))ba();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(Gf()|0){c[f>>2]=he(yk(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]=he(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function Te(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(Gf()|0){c[d>>2]=he(zk(c[e>>2]|0)|0)|0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=he(176)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function Ue(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=(Gf()|0)!=0;a=c[f>>2]|0;if(b){c[e>>2]=he(Ak(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]=he(176)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function Ve(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))ba();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=(Gf()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=he(rj(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]=he(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function We(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;Bj(c[d>>2]|0);i=b;return}function Xe(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;b=(Gf()|0)!=0;a=c[f>>2]|0;if(b){c[e>>2]=he(xj(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]=he(176)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function Ye(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;Aj(c[d>>2]|0);i=b;return}function Ze(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(Gf()|0)){i=e;return}Cj(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function _e(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Oj(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function $e(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))ba();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(!(Gf()|0))Eh(21763,1175,21776,0,21796);Kj(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function af(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(Gf()|0){c[d>>2]=Qj(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}else{Eh(21763,1198,21828,0,21845);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}return 0}function bf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Rj(c[d>>2]|0)|0;i=b;return a|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;e=i;i=i+16|0;if((i|0)>=(j|0))ba();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(Gf()|0){c[f>>2]=he(Ij(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]=he(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function df(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(Gf()|0)){Eh(21763,1287,21875,1,21796);Ah()}Mn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;if((i|0)>=(j|0))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;vq(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function ff(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(Gf()|0)){Eh(21763,1340,21890,1,21796);Ah()}Qn(c[e>>2]|0,c[f>>2]|0);i=d;return}function gf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;Th(c[d>>2]|0);i=b;return}function hf(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;fg(c[e>>2]|0,c[f>>2]|0);i=d;return}function jf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;Wf(c[d>>2]|0);i=b;return}function kf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(c[17649]|0){c[d>>2]=Hb[c[17649]&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 lf(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[f>>2]=cu(c[e>>2]|0)|0;if(c[17651]|0?(vh()|0)==0:0)Ib[c[17651]&7](c[17650]|0,c[e>>2]|0,c[f>>2]|0);Eh(21908,86,21915,1,c[f>>2]|0);mf(21933);mf(c[f>>2]|0);mf(22364);sh();Ea()}function mf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;c[d>>2]=a;a=c[d>>2]|0;c[b>>2]=Hw(2,a,Hv(c[d>>2]|0)|0)|0;i=b;return}function nf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;c[17654]=c[d>>2];i=b;return}function of(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return (c[17654]|0)>=(c[d>>2]|0)|0}function pf(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))ba();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[17652]|0)Nb[c[17652]&1](c[17653]|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:{xw(21948,c[3962]|0)|0;break}case 50:{xw(21956,c[3962]|0)|0;break}case 100:{xw(21970,c[3962]|0)|0;break}default:{d=c[3962]|0;c[f>>2]=c[g>>2];dw(d,21976,f)|0}}tv(c[3962]|0,c[h>>2]|0,c[k>>2]|0)|0}if((c[g>>2]|0)==40|(c[g>>2]|0)==50){Eh(21908,140,22001,1,22012);sh();Ea()}else{i=e;return}}function qf(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))ba();f=e+20|0;g=e+16|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;pf(c[f>>2]|0,c[g>>2]|0,h);i=e;return}function rf(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))ba();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;qf(50,22042,f);Ea()}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,m=0;f=i;i=i+32|0;if((i|0)>=(j|0))ba();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;qf(50,22072,g);Ea()}function tf(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))ba();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;pf(10,c[e>>2]|0,f);i=d;return}function uf(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))ba();f=e+16|0;g=e;c[e+20>>2]=a;c[f>>2]=b;c[g>>2]=d;pf(10,c[f>>2]|0,g);i=e;return 0}function vf(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))ba();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;pf(30,c[e>>2]|0,f);i=d;return}function wf(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))ba();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;pf(40,c[e>>2]|0,f);Ea()}function xf(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))ba();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;pf(50,c[e>>2]|0,f);Ea()}function yf(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))ba();e=d+16|0;f=d;c[e>>2]=a;c[f>>2]=b;pf(100,c[e>>2]|0,f);i=d;return}function zf(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))ba();e=d+16|0;f=d;c[e>>2]=a;if(!(c[e>>2]|0)){i=d;return}c[f>>2]=b;pf(0,c[e>>2]|0,f);i=d;return}function Af(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Bf(c[f>>2]|0,22106,c[g>>2]|0,c[h>>2]|0);i=e;return}function Bf(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))ba();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,yf(22108,q),(c[u>>2]|0?(a[(c[s>>2]|0)+1>>0]|0)==91:0)&(c[t>>2]|0)!=0):0){zf(22364,p);c[s>>2]=22106;c[o>>2]=Hv(c[r>>2]|0)|0;c[o+4>>2]=76495;yf(22114,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];zf(22120,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;zf(22125,m);o=Hv(c[r>>2]|0)|0;p=Hv(c[s>>2]|0)|0;c[l>>2]=o;c[l+4>>2]=76495;c[l+8>>2]=p;c[l+12>>2]=76495;yf(22129,l)}c[x>>2]=(c[x>>2]|0)+1}}while(0);if(!(c[r>>2]|0)){i=h;return}zf(22364,k);i=h;return}function Cf(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))ba();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)){Bf(c[f>>2]|0?c[f>>2]|0:22106,22137,0,0);i=d;return}if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0){c[n>>2]=hq(c[g>>2]|0,m)|0;c[e>>2]=c[m>>2];qv(o,30,22145,e)|0;Bf(c[f>>2]|0?c[f>>2]|0:22106,o,c[n>>2]|0,(((c[m>>2]|0)+7|0)>>>0)/8|0);i=d;return}c[h>>2]=wp(c[g>>2]|0,0,k,l)|0;if(!(c[h>>2]|0)){Bf(c[f>>2]|0?c[f>>2]|0:22106,22155,0,0);i=d;return}g=c[f>>2]|0;f=c[l>>2]|0?22170:22172;if(c[k>>2]|0)Bf(g,f,c[h>>2]|0,c[k>>2]|0);else Bf(g,f,76495,1);Wf(c[h>>2]|0);i=d;return}function Df(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))ba();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]=fb()|0;g=i;i=i+((1*f|0)+15&-16)|0;if((i|0)>=(j|0))ba();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=Jx(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}Ia(c[h>>2]|0);i=e;return}function Ef(){return}function Ff(){gu(33);lf(du(c[(Vu()|0)>>2]|0)|0,22174)}function Gf(){if(!(c[17655]|0))Hf();return Gh()|0}function Hf(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;c[b>>2]=0;if(c[17655]|0){i=a;return}c[17655]=1;zn(0);uh(c[17656]|0);Sg();c[b>>2]=mi()|0;if((((((c[b>>2]|0)==0?(c[b>>2]=Yj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=Bk()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=Zj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=fh()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=Wp()|0,(c[b>>2]|0)==0):0){i=a;return}rf(22189,123,22198)}function If(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))ba();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]=22210;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]=yq()|0;q=c[e>>2]|0;i=d;return q|0}Hf();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]=Jf(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(!(Jf(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 Jf(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))ba();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]=Kf(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]=Kf(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]=Kf(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 Kf(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))ba();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?hx(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=(hx(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 Lf(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))ba();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:{Ug();break}case 44:{zn(0);Fn();break}case 51:{if(In()|0)c[g>>2]=1;break}case 13:{Dn();break}case 62:case 23:break;case 14:{th();break}case 30:{Hf();bh(0);break}case 37:{Hf();c[17657]=1;break}case 24:{Hf();b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;bh(z);if((ah()|0)&4|0)c[g>>2]=1;break}case 25:{Hf();sh();break}case 27:{zn(0);_g(ah()|0|1);break}case 28:{zn(0);_g(ah()|0|2);break}case 29:{zn(0);_g((ah()|0)&-3);break}case 22:{Hf();En();break}case 45:{zn(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;Nn(b);break}case 46:{zn(0);if(Gf()|0)On();break}case 19:{zn(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;nf(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[17658]=c[17658]|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[17658]=c[17658]&~z;break}case 36:{Hf();break}case 40:{if(c[17655]|0)c[g>>2]=1;break}case 39:{if(c[17659]|0)c[g>>2]=1;break}case 38:{if(!(c[17659]|0)){Hf();An(0);c[17659]=1;Gf()|0}break}case 47:{zn(0);Hf();break}case 48:{zn(0);An(1);if(Gf()|0)Pn();break}case 52:{c[g>>2]=Mf(60)|0;break}case 49:{zn(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;Gn(b);break}case 50:{zn(0);An(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;Hn(((z|0)!=0^1^1)&1)|0;break}case 70:{Bn();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;zn(0);Of(c[h>>2]|0?28:27,c[h>>2]|0);break}case 54:{zn(0);if(Ph()|0)c[g>>2]=1;break}case 55:{if(vh()|0?(b=(Fh()|0)!=0,!(b|(c[17657]|0)!=0)):0)c[g>>2]=1;break}case 56:{zn(0);if(!(c[17655]|0)){c[17656]=1;break a}if(Qh()|0)Hh(1)|0;if(Gh()|0)c[g>>2]=1;break}case 57:{Hf();c[g>>2]=Hh(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(Gf()|0){c[g>>2]=Sn(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(Gf()|0){c[g>>2]=Tn(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;Un(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]=Pf(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]=Pg(c[w>>2]|0)|0;break}case 64:{if(c[17655]|0){c[g>>2]=1;break a}else{zn(0);Ch();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)zn(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=Cn(((c[17655]|0)!=0^1)&1)|0;c[c[y>>2]>>2]=b}break}case 67:{zn(0);_g(ah()|0|8);break}case 68:{zn(0);_g(ah()|0|16);break}case 72:case 71:{c[g>>2]=69;break}default:{zn(0);c[g>>2]=61}}while(0);i=d;return c[g>>2]|0}function Mf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Nf(1,c[d>>2]|0)|0;i=b;return a|0}function Nf(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))ba();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 Of(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))ba();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]=22210;Db[b&63](a,22224,o)|0;o=c[p>>2]|0;a=c[q>>2]|0;c[n>>2]=22250;Db[o&63](a,22237,n)|0;n=c[p>>2]|0;a=c[q>>2]|0;c[m>>2]=22275;Db[n&63](a,22262,m)|0;m=c[p>>2]|0;a=c[q>>2]|0;c[l>>2]=22296;Db[m&63](a,22283,l)|0;Db[c[p>>2]&63](c[q>>2]|0,22310,d+32|0)|0;Db[c[p>>2]&63](c[q>>2]|0,22326,d+40|0)|0;l=c[p>>2]|0;a=c[q>>2]|0;c[k>>2]=Vp()|0;Db[l&63](a,22338,k)|0;c[r>>2]=Qg()|0;Db[c[p>>2]&63](c[q>>2]|0,22351,d+56|0)|0;c[t>>2]=0;while(1){k=Rg(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];Db[k&63](a,22360,h)|0}c[t>>2]=(c[t>>2]|0)+1}Db[c[p>>2]&63](c[q>>2]|0,22364,g)|0;g=c[p>>2]|0;h=c[q>>2]|0;s=(vh()|0)!=0;r=(Bh()|0)!=0;c[f>>2]=s?121:110;c[f+4>>2]=r?121:110;Db[g&63](h,22366,f)|0;c[t>>2]=Cn(0)|0;switch(c[t>>2]|0){case 1:{c[u>>2]=22384;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;Db[v&63](w,22418,e)|0;i=d;return}case 2:{c[u>>2]=22393;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;Db[v&63](w,22418,e)|0;i=d;return}case 3:{c[u>>2]=22398;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;Db[v&63](w,22418,e)|0;i=d;return}default:rf(22189,321,22405)}}function Pf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;switch(c[d>>2]|0){case 30111:{c[e>>2]=hu(1076)|0;break}case 30112:{c[e>>2]=iu(1076)|0;break}case 30113:{c[e>>2]=ju(1076)|0;break}case 30114:{c[e>>2]=ku(1076)|0;break}default:c[e>>2]=61}i=b;return c[e>>2]|0}function Qf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;Rf(c[d>>2]|0,0,e)|0;i=b;return c[e>>2]|0}function Rf(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))ba();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?!(Sf()|0):0)if(c[17661]|0){c[l>>2]=Hb[c[17661]&15](c[f>>2]|0)|0;break}else{c[l>>2]=Wg(c[f>>2]|0)|0;break}else m=6;while(0);do if((m|0)==6)if(c[17660]|0){c[l>>2]=Hb[c[17660]&15](c[f>>2]|0)|0;break}else{c[l>>2]=Vg(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[(Vu()|0)>>2]|0))gu(12);c[k>>2]=du(c[(Vu()|0)>>2]|0)|0;n=c[k>>2]|0;i=e;return n|0}function Sf(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;do if(c[17657]|0)if(Bh()|0){c[17657]=0;c[b>>2]=0;break}else{c[b>>2]=c[17657];break}else c[b>>2]=0;while(0);i=a;return c[b>>2]|0}function Tf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=0;Rf(c[d>>2]|0,1,e)|0;i=b;return c[e>>2]|0}function Uf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;do if(!(Sf()|0))if(c[17662]|0){c[d>>2]=Hb[c[17662]&15](c[e>>2]|0)|0;break}else{c[d>>2]=rh(c[e>>2]|0)|0;break}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function Vf(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))ba();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]=Qf(b)|0;k=c[e>>2]|0;i=d;return k|0}if(!b){Wf(c[f>>2]|0);c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if(c[17663]|0)c[h>>2]=Mb[c[17663]&7](c[f>>2]|0,c[g>>2]|0)|0;else c[h>>2]=Xg(c[f>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0?(c[(Vu()|0)>>2]|0)==0:0)gu(12);c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function Wf(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}c[e>>2]=c[(Vu()|0)>>2];if(c[17664]|0)Fb[c[17664]&15](c[d>>2]|0);else Zg(c[d>>2]|0);if(!(c[e>>2]|0)){i=b;return}gu(c[e>>2]|0);i=b;return}function Xf(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))ba();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]=_(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){gu(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=Qf(c[h>>2]|0)|0;if(c[k>>2]|0)xx(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 Yf(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))ba();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]=_(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){gu(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=Tf(c[h>>2]|0)|0;if(c[k>>2]|0)xx(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 Zf(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))ba();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]=Hv(c[d>>2]|0)|0;a=(Uf(c[d>>2]|0)|0)!=0;g=(c[f>>2]|0)+1|0;if(a)c[e>>2]=Tf(g)|0;else c[e>>2]=Qf(g)|0;if(!(c[e>>2]|0)){h=c[e>>2]|0;i=b;return h|0}Tv(c[e>>2]|0,c[d>>2]|0)|0;h=c[e>>2]|0;i=b;return h|0}function _f(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;while(1){a=Qf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(vh()|0)==0;if(!(a&(c[17665]|0)!=0)){f=5;break}if(!(Db[c[17665]&63](c[17666]|0,c[d>>2]|0,0)|0)){f=5;break}}if((f|0)==5)lf(du(c[(Vu()|0)>>2]|0)|0,0);else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function $f(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;while(1){b=Vf(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=b;if(!((b|0)!=0^1)){h=6;break}b=(vh()|0)==0;if(!(b&(c[17665]|0)!=0)){h=5;break}b=c[17665]|0;a=c[17666]|0;k=c[f>>2]|0;l=(Uf(c[e>>2]|0)|0)!=0;if(!(Db[b&63](a,k,l?3:2)|0)){h=5;break}}if((h|0)==5)lf(du(c[(Vu()|0)>>2]|0)|0,0);else if((h|0)==6){i=d;return c[g>>2]|0}return 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))ba();d=b+4|0;e=b;c[d>>2]=a;while(1){a=Tf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(vh()|0)==0;if(!(a&(c[17665]|0)!=0)){f=5;break}if(!(Db[c[17665]&63](c[17666]|0,c[d>>2]|0,1)|0)){f=5;break}}if((f|0)==5){d=du(c[(Vu()|0)>>2]|0)|0;lf(d,kf(22435)|0)}else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function bg(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))ba();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]|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){gu(12);lf(du(c[(Vu()|0)>>2]|0)|0,0)}c[h>>2]=_f(c[g>>2]|0)|0;xx(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function cg(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))ba();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]|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){gu(12);lf(du(c[(Vu()|0)>>2]|0)|0,0)}c[h>>2]=ag(c[g>>2]|0)|0;xx(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function dg(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;do{a=Zf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){h=8;break}c[f>>2]=Hv(c[d>>2]|0)|0;c[g>>2]=((Uf(c[d>>2]|0)|0)!=0^1^1)&1;a=(vh()|0)==0;if(!(a&(c[17665]|0)!=0))break}while((Db[c[17665]&63](c[17666]|0,c[f>>2]|0,c[g>>2]|0)|0)!=0);if((h|0)==8){i=b;return c[e>>2]|0}e=du(c[(Vu()|0)>>2]|0)|0;if(!(c[g>>2]|0)){k=0;lf(e,k)}k=kf(22435)|0;lf(e,k);return 0}function eg(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(vh()|0)c[d>>2]=0;else c[d>>2]=c[17658]&c[e>>2];i=b;return c[d>>2]|0}function fg(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;_j(c[e>>2]|0,c[f>>2]|0);xn(c[e>>2]|0,c[f>>2]|0);i=d;return}function gg(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))ba();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]=Hv(c[m>>2]|0)|0}else{c[n>>2]=hg(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]=ig(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)Fb[c[p>>2]&15](c[m>>2]|0);c[k>>2]=0;s=c[k>>2]|0;i=g;return s|0}function hg(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))ba();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 ig(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))ba();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]=jg(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 jg(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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=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))ba();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;U=n+314|0;V=n+312|0;W=n+168|0;X=n+310|0;Y=n+164|0;Z=n+160|0;_=n+308|0;$=n+156|0;aa=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?Uf(c[t>>2]|0)|0:0)c[M>>2]=Tf(1+(c[M+4>>2]|0)-1|0)|0;else c[M>>2]=Qf(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(!(pw(22471,a[c[z>>2]>>0]|0)|0)){c[L>>2]=(c[z>>2]|0)-(c[E>>2]|0);c[P>>2]=kg(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;Ax(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]=kg(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[U>>1]=0;k=c[M+8>>2]|0;a[k>>0]=a[U>>0]|0;a[k+1>>0]=a[U+1>>0]|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+2;c[S>>2]=lg(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[V>>1]=c[S>>2];k=c[R>>2]|0;a[k>>0]=a[V>>0]|0;a[k+1>>0]=a[V+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(pv(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(mg(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[W>>2]=kg(M,c[L>>2]|0)|0;if(c[W>>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[X>>1]=c[L>>2];k=c[M+8>>2]|0;a[k>>0]=a[X>>0]|0;a[k+1>>0]=a[X+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(!(mg(c[F>>2]|0)|0)){c[Y>>2]=ng(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(!(mg(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[Y>>2]=c[Y>>2]<<4;k=ng(d[c[F>>2]>>0]|0)|0;c[Y>>2]=(c[Y>>2]|0)+k}k=c[Y>>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]=dx(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[Z>>2]=kg(M,c[L>>2]|0)|0;if(c[Z>>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;Ax(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]=kg(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]=kg(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=(pw(22471,a[c[z>>2]>>0]|0)|0)!=0;l=c[z>>2]|0;if(k){c[E>>2]=l;break}if(mg(l)|0)break;Xa=c[z>>2]|0;if((a[c[z>>2]>>0]|0)==123){Ua=212;break b}if(pw(22570,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]=Hv(c[na>>2]|0)|0;c[pa>>2]=kg(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;Ax(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]=kg(M,c[sa>>2]|0)|0;if(c[ta>>2]|0){Ua=145;break b}do if(c[sa>>2]|0){if(Uf(c[M>>2]|0)|0)break;if(!(Uf(c[ra>>2]|0)|0))break;c[ua>>2]=Tf(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ua>>2]|0)){Ua=150;break b}c[va>>2]=c[ua>>2];Ax(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));Wf(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;Ax(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];bw(za,22564,p)|0;c[ya>>2]=Hv(za)|0;c[Aa>>2]=kg(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;Ax(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];bw(Ea,22567,o)|0;c[Da>>2]=Hv(Ea)|0;c[Fa>>2]=kg(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;Ax(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]=og(c[Ha>>2]|0,Ja)|0;if(!(c[Ia>>2]|0))break;c[Ka>>2]=kg(M,c[Ia>>2]|0)|0;if(c[Ka>>2]|0){Ua=173;break b}Ax(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[aa>>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[$>>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[$>>2]=h}if(wq(c[$>>2]|0,2)|0){c[da>>2]=hq(c[$>>2]|0,ea)|0;c[aa>>2]=(((c[ea>>2]|0)+7|0)>>>0)/8|0;if(!((c[da>>2]|0)!=0&(c[aa>>2]|0)!=0))break;c[fa>>2]=kg(M,c[aa>>2]|0)|0;if(c[fa>>2]|0){Ua=111;break b}do if(!(Uf(c[M>>2]|0)|0)){if(!(wq(c[$>>2]|0,1)|0))break;c[ga>>2]=Tf(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ga>>2]|0)){Ua=115;break b}c[ha>>2]=c[ga>>2];Ax(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));Wf(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[aa>>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;Ax(c[M+8>>2]|0,c[da>>2]|0,c[aa>>2]|0)|0;k=M+8|0;c[k>>2]=(c[k>>2]|0)+(c[aa>>2]|0);break}if(Ep(c[ca>>2]|0,0,0,aa,c[$>>2]|0)|0){Ua=119;break b}c[ja>>2]=kg(M,c[aa>>2]|0)|0;if(c[ja>>2]|0){Ua=121;break b}do if(!(Uf(c[M>>2]|0)|0)){if(!(wq(c[$>>2]|0,1)|0))break;c[ka>>2]=Tf(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ka>>2]|0)){Ua=125;break b}c[la>>2]=c[ka>>2];Ax(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));Wf(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[aa>>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(Ep(c[ca>>2]|0,c[M+8>>2]|0,c[aa>>2]|0,aa,c[$>>2]|0)|0){Ua=128;break b}h=M+8|0;c[h>>2]=(c[h>>2]|0)+(c[aa>>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[W>>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[Z>>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]=du(c[(Vu()|0)>>2]|0)|0;break a;break}case 119:{rf(22542,1433,22549);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]=du(c[(Vu()|0)>>2]|0)|0;break a;break}case 128:{rf(22542,1460,22549);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]=du(c[(Vu()|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]=kg(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]=du(c[(Vu()|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(Uf(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=Jx(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);Wf(c[M>>2]|0)}}else{M=pg(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 kg(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))ba();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]=Vf(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]=du(c[(Vu()|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 lg(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))ba();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 mg(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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 ng(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 og(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))ba();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 pg(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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)){qg(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){qg(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 qg(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))ba();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(Uf(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=Jx(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);Wf(c[g>>2]|0);i=f;return}function rg(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))ba();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=gg(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,0)|0;i=f;return e|0}function sg(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))ba();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]=Hv(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)?(jw(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)rf(22542,481,22573);b[q>>1]=x-(c[r>>2]|0);c[s>>2]=Qf(1+(e[q>>1]|0)|0)|0;if(c[s>>2]|0){c[t>>2]=c[s>>2];Ax(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]=pg(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 tg(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))ba();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 ug(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))ba();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]=Qf(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;Ax(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)rf(22542,673,22595);b[o>>1]=(c[n>>2]|0)+1-(c[s>>2]|0);c[p>>2]=Qf(1+(e[o>>1]|0)|0)|0;if(c[p>>2]|0){c[q>>2]=c[p>>2];Ax(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]=pg(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 vg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=ug(c[d>>2]|0,0)|0;i=b;return a|0}function wg(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=xg(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function xg(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))ba();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 yg(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))ba();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]=xg(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]=Qf(c[m>>2]|0)|0;if(c[n>>2]|0){Ax(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 zg(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))ba();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]=xg(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]=Qf((c[l>>2]|0)+1|0)|0;if(c[m>>2]|0){Ax(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 Ag(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))ba();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]=yg(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(Uf(c[g>>2]|0)|0)q=tq(0)|0;else q=sq(0)|0;c[m>>2]=q;if(c[m>>2]|0){fq(c[m>>2]|0,c[n>>2]|0,c[l>>2]<<3)|0;break}else{Wf(c[n>>2]|0);break}}else{if(!(c[k>>2]|0))c[k>>2]=1;c[o>>2]=xg(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(Ap(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 Bg(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))ba();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]=Qf(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;Ax(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]=pg(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 Cg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=Bg(c[d>>2]|0)|0;c[f>>2]=vg(c[e>>2]|0)|0;qg(c[e>>2]|0);i=b;return c[f>>2]|0}function Dg(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))ba();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]=jg(e,g,h,Hv(c[k>>2]|0)|0,1,0,m)|0;i=f;return c[l>>2]|0}function Eg(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))ba();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=Hv(c[k>>2]|0)|0;k=jg(e,g,h,d,1,0,c[l>>2]|0)|0;i=f;return k|0}function Fg(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))ba();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=ig(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 Gg(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))ba();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:22610;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=Hg(c[r>>2]|0,e[t>>1]|0)|0;c[y>>2]=n;switch(n|0){case 1:{c[z>>2]=Ig(c[r>>2]|0,e[t>>1]|0,0)|0;break}case 2:{c[z>>2]=Jg(c[r>>2]|0,e[t>>1]|0,0)|0;break}default:c[z>>2]=Kg(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:{Ig(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}case 2:{Jg(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}default:Kg(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];bw(u,22637,l)|0;n=Hv(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]=Uv(c[s>>2]|0,u)|0;Ax(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)rf(22542,2008,22641);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 Hg(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))ba();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,(pw(22613,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(!(pw(22623,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 Ig(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))ba();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];bw(p,22464,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 Jg(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))ba();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}Ax(c[h>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;k=c[g>>2]|0;i=e;return k|0}function Kg(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))ba();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];bw(r,22632,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 Lg(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))ba();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)?(mg(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]=pw(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]=pw(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]=sg(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;qg(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((mg(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]=pw(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]=sg(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]=sg(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=Ag(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=Ag(l,1,1)|0;c[c[r+(c[t>>2]<<2)>>2]>>2]=x;break}else{x=Ag(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=yg(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]=wg(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}Ax((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);qg(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){qg(c[w>>2]|0);c[h>>2]=0;G=c[h>>2]|0;i=g;return G|0}}while(0);qg(c[w>>2]|0);qg(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)){uq(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;Wf(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 Mg(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))ba();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]=Lg(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,m)|0;m=Ng(c[l>>2]|0)|0;i=f;return m|0}function Ng(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Og(1,c[d>>2]|0)|0;i=b;return a|0}function Og(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))ba();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 Pg(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))ba();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=(dv(c[1120+(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[17667]=c[17667]|c[1120+(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 Qg(){return c[17668]|0}function Rg(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))ba();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[1120+(c[f>>2]<<3)>>2];c[e>>2]=c[1120+(c[f>>2]<<3)+4>>2];h=c[e>>2]|0;i=d;return h|0}function Sg(){c[17668]=0;if(vh()|0)return;Tg();c[17668]=c[17668]&~c[17667];return}function Tg(){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))ba();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]=22809;c[l>>2]=0;c[e>>2]=nw(c[d>>2]|0,23690)|0;if(!(c[e>>2]|0)){i=b;return}while(1){if(!(ew(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(!(Vv(a[c[g>>2]>>0]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=pw(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=(Hv(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?Vv(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=(dv(c[1120+(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[17667]=c[17667]|c[1120+(n<<3)>>2]}}Dw(c[e>>2]|0)|0;sw(c[e>>2]|0)|0;i=b;return}function Ug(){c[17669]=1;return}function Vg(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(!(c[f>>2]|0)){gu(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17669]|0)){c[e>>2]=px(b)|0;h=c[e>>2]|0;i=d;return h|0}k=px(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 Wg(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;if(!(c[f>>2]|0)){gu(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17669]|0)){c[e>>2]=gh(b)|0;h=c[e>>2]|0;i=d;return h|0}k=gh(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 Xg(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))ba();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[17669]|0)){a=(rh(b)|0)!=0;n=c[g>>2]|0;o=c[h>>2]|0;if(a){c[f>>2]=qh(n,o)|0;p=c[f>>2]|0;i=e;return p|0}else{c[f>>2]=sx(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]=Vg(c[h>>2]|0)|0;p=c[f>>2]|0;i=e;return p|0}Yg(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]=Wg(b)|0;else c[l>>2]=Vg(b)|0;if(c[l>>2]|0){Ax(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;xx((c[l>>2]|0)+(c[m>>2]|0)|0,0,(c[h>>2]|0)-(c[m>>2]|0)|0)|0;Zg(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 Yg(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))ba();e=b+8|0;f=b;g=b+24|0;h=b+20|0;k=b+16|0;c[g>>2]=a;if(!(c[17669]|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;wf(22830,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;wf(22871,e)}else{i=b;return}}function Zg(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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[17669]|0){Yg(c[e>>2]|0);a=(rh(c[d>>2]|0)|0)!=0;f=(c[e>>2]|0)+-4|0;if(a){oh(f);i=b;return}else{qx(f);i=b;return}}else{f=(rh(c[d>>2]|0)|0)!=0;d=c[e>>2]|0;if(f){oh(d);i=b;return}else{qx(d);i=b;return}}}function _g(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;iu(1224)|0;c[e>>2]=c[17670];c[17671]=c[d>>2]&1;c[17670]=c[d>>2]&2;c[17672]=c[d>>2]&8;c[17673]=c[d>>2]&16;if(!((((c[e>>2]|0)==0|(c[17670]|0)!=0)^1)&(c[17674]|0)!=0)){ju(1224)|0;i=b;return}c[17674]=0;$g();ju(1224)|0;i=b;return}function $g(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();if(c[17671]|0){i=a;return}tf(kf(22911)|0,a);i=a;return}function ah(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;iu(1224)|0;c[b>>2]=c[17671]|0?1:0;c[b>>2]=c[b>>2]|(c[17670]|0?2:0);c[b>>2]=c[b>>2]|(c[17675]|0?4:0);c[b>>2]=c[b>>2]|(c[17672]|0?8:0);c[b>>2]=c[b>>2]|(c[17673]|0?16:0);ju(1224)|0;i=a;return c[b>>2]|0}function bh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;iu(1224)|0;ch(c[d>>2]|0);ju(1224)|0;i=b;return}function ch(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))ba();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[17677]|0){vf(23143,d);i=b;return}else{dh(c[f>>2]|0);eh(c[17679]|0,c[f>>2]|0);i=b;return}}c[17676]=1;c[g>>2]=Nw()|0;f=c[g>>2]|0;if((f|0)==(Rw()|0)){i=b;return}if(Sw(c[g>>2]|0)|0)wf(22944,e);g=Nw()|0;if((g|0)!=(Rw()|0))wf(22944,e);if(Sw(0)|0){i=b;return}else wf(22944,e)}function dh(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))ba();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[17678]=c[f>>2];if(c[17676]|0)xf(22967,b);c[h>>2]=Wa(30)|0;c[g>>2]=(c[h>>2]|0)!=-1&(c[h>>2]|0)>0?c[h>>2]|0:4096;c[17678]=(c[17678]|0)+(c[g>>2]|0)-1&~((c[g>>2]|0)-1);c[17679]=Ww(0,c[17678]|0,3,34,-1,0)|0;if((c[17679]|0)==(-1|0)){g=c[17678]|0;h=lv(c[(Vu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=h;tf(22993,e)}else{c[17680]=1;c[17677]=1}if(c[17677]|0){l=c[17679]|0;c[k>>2]=l;m=c[17678]|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[17679]=px(c[17678]|0)|0;if(!(c[17679]|0)){c[d>>2]=c[17678];wf(23041,d)}c[17677]=1;l=c[17679]|0;c[k>>2]=l;m=c[17678]|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 eh(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();c[d+8>>2]=a;c[d+4>>2]=b;if(c[17672]|0){i=d;return}tf(23081,d);i=d;return}function fh(){return 0}function gh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;iu(1224)|0;c[e>>2]=hh(c[d>>2]|0)|0;ju(1224)|0;i=b;return c[e>>2]|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+32|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b;f=b+20|0;g=b+16|0;h=b+12|0;c[g>>2]=a;if((c[17677]|0)==0?(ch(32768),(c[17677]|0)==0):0){tf(kf(23189)|0,e);gu(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(c[17675]|0?vh()|0:0){tf(kf(23250)|0,d);gu(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(!((c[17674]|0)==0|(c[17670]|0)!=0)){c[17674]=0;$g()}c[g>>2]=((((c[g>>2]|0)+31|0)>>>0)/32|0)<<5;c[h>>2]=ih(c[17679]|0,c[g>>2]|0)|0;if(c[h>>2]|0)nh(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 ih(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))ba();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(!(jh(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]=mh(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];kh(c[h>>2]|0)}if(jh(c[g>>2]|0)|0){l=c[g>>2]|0;i=d;return l|0}gu(12);c[g>>2]=0;l=c[g>>2]|0;i=d;return l|0}function jh(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];c[f>>2]=c[17679];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[17678]|0)|0)>>>0;h=g&1;i=b;return h|0}function kh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=lh(c[d>>2]|0)|0;c[f>>2]=mh(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 lh(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if((c[d>>2]|0)==(c[17679]|0)){c[e>>2]=0;g=c[e>>2]|0;i=b;return g|0}c[e>>2]=c[17679];while(1){c[f>>2]=mh(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 mh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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(jh(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 nh(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0){c[17681]=(c[17681]|0)+(c[e>>2]|0);c[17682]=(c[17682]|0)+1}if(!(c[f>>2]|0)){i=d;return}c[17681]=(c[17681]|0)-(c[f>>2]|0);c[17682]=(c[17682]|0)+-1;i=d;return}function oh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;iu(1224)|0;ph(c[d>>2]|0);ju(1224)|0;i=b;return}function ph(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))ba();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=Jx(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=Jx(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=Jx(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=Jx(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}nh(0,c[h>>2]|0);h=(c[g>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2;kh(c[g>>2]|0);i=e;return}function qh(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))ba();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;iu(1224)|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];ju(1224)|0;l=c[k>>2]|0;i=d;return l|0}c[k>>2]=hh(c[f>>2]|0)|0;if(!(c[k>>2]|0)){ju(1224)|0;l=c[k>>2]|0;i=d;return l|0}Ax(c[k>>2]|0,c[e>>2]|0,c[h>>2]|0)|0;xx((c[k>>2]|0)+(c[h>>2]|0)|0,0,(c[f>>2]|0)-(c[h>>2]|0)|0)|0;ph(c[e>>2]|0);ju(1224)|0;l=c[k>>2]|0;i=d;return l|0}function rh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(c[17677]|0)e=(jh(c[d>>2]|0)|0)!=0;else e=0;i=b;return e&1|0}function sh(){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))ba();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[17677]|0)){i=b;return}c[e>>2]=c[17679];c[f>>2]=c[17678];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=Jx(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[17679];c[m>>2]=c[17678];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=Jx(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[17679];c[r>>2]=c[17678];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=Jx(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[17679];c[w>>2]=c[17678];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=Jx(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[17680]|0)Zw(c[17679]|0,c[17678]|0)|0;c[17679]=0;c[17677]=0;c[17678]=0;c[17675]=0;i=b;return}function th(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;iu(1224)|0;if(!(c[17677]|0)){ju(1224)|0;i=a;return}d=c[17678]|0;e=c[17682]|0;c[b>>2]=c[17681];c[b+4>>2]=d;c[b+8>>2]=e;tf(23303,b);ju(1224)|0;i=a;return}function uh(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))ba();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[17683]|0){if(vh()|0){wh(5);Ah()}if(c[17683]|0)sf(23572,23578,114,23585)}c[17683]=1;do if(c[f>>2]|0){if(c[17684]|0)sf(23612,23578,121,23585)}else{if(!(Bw(23635,0)|0)){if(!(c[17684]|0))break;sf(23612,23578,132,23585)}c[h>>2]=nw(23660,23690)|0;if(!(c[h>>2]|0)){a=c[(Vu()|0)>>2]|0;c[k>>2]=a;if((a|0)!=2&(c[k>>2]|0)!=13?(Bw(23692,0)|0)==0:0){a=lv(c[k>>2]|0)|0;c[e>>2]=23660;c[e+4>>2]=a;tf(23706,e);Ea()}}else{if(ew(l,256,c[h>>2]|0)|0?dx(l)|0:0){sw(c[h>>2]|0)|0;if(!(c[17684]|0))break;sf(23612,23578,151,23585)}sw(c[h>>2]|0)|0}c[17684]=1}while(0);if(c[17684]|0){i=b;return}c[g>>2]=hu(1268)|0;if(c[g>>2]|0){c[d>>2]=cu(c[g>>2]|0)|0;tf(23750,d);Ea()}c[m>>2]=nw(23635,23690)|0;if(c[m>>2]|0){if(ew(n,256,c[m>>2]|0)|0?dx(n)|0:0)c[17686]=1;sw(c[m>>2]|0)|0}wh(1);i=b;return}function vh(){return ((c[17684]|0)!=0^1)&1|0}function wh(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))ba();d=b;e=b+20|0;f=b+16|0;g=b+12|0;c[e>>2]=a;c[f>>2]=0;xh();c[g>>2]=c[17685];switch(c[17685]|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[17685]=c[e>>2];yh();if(!(c[f>>2]|0?!(of(2)|0):0)){a=zh(c[g>>2]|0)|0;g=zh(c[e>>2]|0)|0;e=c[f>>2]|0?23517:23525;c[d>>2]=a;c[d+4>>2]=g;c[d+8>>2]=e;tf(23532,d)}if(c[f>>2]|0){i=b;return}else{Ah();i=b;return}}function xh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[d>>2]=iu(1268)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;tf(23344,b);Ea()}else{i=a;return}}function yh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[d>>2]=ju(1268)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;tf(23399,b);Ea()}else{i=a;return}}function zh(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;switch(c[d>>2]|0){case 0:{c[e>>2]=23454;break}case 1:{c[e>>2]=23463;break}case 2:{c[e>>2]=23468;break}case 3:{c[e>>2]=23478;break}case 4:{c[e>>2]=23490;break}case 5:{c[e>>2]=23496;break}case 6:{c[e>>2]=23508;break}default:c[e>>2]=37900}i=b;return c[e>>2]|0}function Ah(){tw(0)|0;Ea()}function Bh(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;if(vh()|0)c[b>>2]=c[17686];else c[b>>2]=0;i=a;return c[b>>2]|0}function Ch(){c[17686]=1;return}function Dh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(vh()|0))sf(23805,23578,295,23824);if(Bh()|0){Eh(23578,300,23824,0,c[d>>2]|0);i=b;return}xh();if(c[17687]|0){yh();i=b;return}else{c[17687]=1;yh();i=b;return}}function Eh(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))ba();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(!(vh()|0)){i=g;return}wh(c[n>>2]|0?5:4);f=c[k>>2]|0;k=c[l>>2]|0;l=c[m>>2]|0?23858:76495;e=c[m>>2]|0?c[m>>2]|0:76495;m=c[o>>2]|0?c[o>>2]|0:23870;c[h>>2]=c[n>>2]|0?23851:76495;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;tf(23895,h);i=g;return}function Fh(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a+4|0;d=a;if(vh()|0){xh();c[d>>2]=c[17687];yh();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 Gh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;if(!(vh()|0)){c[b>>2]=1;d=c[b>>2]|0;i=a;return d|0}xh();if((c[17685]|0)==1){yh();Hh(0)|0;xh()}c[b>>2]=(c[17685]|0)==3&1;yh();d=c[b>>2]|0;i=a;return d|0}function Hh(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=4;c[f>>2]=50;if(vh()|0)wh(2);if((((((Ih(c[d>>2]|0)|0)==0?(Kh(c[d>>2]|0)|0)==0:0)?(Lh(c[d>>2]|0)|0)==0:0)?(Mh()|0)==0:0)?(Nh(c[d>>2]|0)|0)==0:0)?(Oh()|0)==0:0){c[e>>2]=3;c[f>>2]=0}if(!(vh()|0)){g=c[f>>2]|0;i=b;return g|0}wh(c[e>>2]|0);g=c[f>>2]|0;i=b;return g|0}function Ih(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))ba();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[1312+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=ni(c[1312+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1312+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=cu(c[f>>2]|0)|0;else h=0;Jh(38601,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 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+48|0;if((i|0)>=(j|0))ba();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?(of(2)|0)==0:0){i=f;return}e=(dv(c[h>>2]|0,36199)|0)!=0;d=e?c[h>>2]|0:43136;e=(dv(c[h>>2]|0,36199)|0)!=0^1;b=e?23943:76495;do if(dv(c[h>>2]|0,38601)|0){if(!(dv(c[h>>2]|0,43136)|0)){n=oj(c[k>>2]|0)|0;break}if(!(dv(c[h>>2]|0,36199)|0)){n=oj(c[k>>2]|0)|0;break}if(dv(c[h>>2]|0,49803)|0)n=76495;else n=rk(c[k>>2]|0)|0}else n=Uh(c[k>>2]|0)|0;while(0);h=c[k>>2]|0;k=c[m>>2]|0?c[m>>2]|0:23949;m=c[l>>2]|0?23954:76495;e=c[l>>2]|0?c[l>>2]|0:76495;a=c[l>>2]|0?49857:76495;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;tf(23957,g);i=f;return}function Kh(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))ba();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[1332+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Vj(c[1332+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1332+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=cu(c[f>>2]|0)|0;else h=0;Jh(43136,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 Lh(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))ba();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[1356+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=aj(c[1356+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1356+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=cu(c[f>>2]|0)|0;else h=0;Jh(36199,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 Mh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;c[b>>2]=Rn(1)|0;if(c[b>>2]|0)d=cu(c[b>>2]|0)|0;else d=0;Jh(52567,0,0,d);i=a;return ((c[b>>2]|0)!=0^1^1)&1|0}function Nh(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))ba();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[1380+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Ck(c[1380+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1380+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=cu(c[f>>2]|0)|0;else h=0;Jh(49803,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 Oh(){return 0}function Ph(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;if(vh()|0){xh();c[b>>2]=(c[17685]|0)==3&1;yh()}else c[b>>2]=1;i=a;return c[b>>2]|0}function Qh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;if(vh()|0){xh();c[b>>2]=((c[17685]|0)==3?1:(c[17685]|0)==4)&1;yh();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 Rh(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))ba();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];xf(24001,g)}if((c[l>>2]|0)>>>0<8)c[l>>2]=8;c[n>>2]=Xf(1,8+(c[l>>2]|0)|0)|0;if(c[n>>2]|0){l=c[n>>2]|0;a[l>>0]=a[24047]|0;a[l+1>>0]=a[24048]|0;a[l+2>>0]=a[24049]|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 Sh(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))ba();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;wf(24051,g)}if(jw(c[h>>2]|0,24047,3)|0){l=c[h>>2]|0;c[g>>2]=l;wf(24051,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;wf(24099,f)}else{i=e;return (c[h>>2]|0)+8|0}return 0}function Th(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))ba();e=d+8|0;f=d;g=d+12|0;c[g>>2]=b;if(!(c[g>>2]|0)){i=d;return}b=(jw(c[g>>2]|0,24047,3)|0)!=0;h=c[g>>2]|0;if(b){c[f>>2]=h;wf(24156,f)}f=c[g>>2]|0;if((a[h+3>>0]|0)!=1){c[e>>2]=a[f+3>>0];wf(24198,e)}if(c[f+4>>2]|0)Fb[c[(c[g>>2]|0)+4>>2]&15]((c[g>>2]|0)+8|0);Wf(c[g>>2]|0);i=d;return}function Uh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Vh(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37900;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function Vh(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=Wh(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[1392+(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 Wh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]|0}function Xh(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))ba();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]=Yh(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 Yh(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))ba();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;Pn();c[o>>2]=Vh(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((vh()|0)==0?eg(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=Zh(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]=Yf(1,t)|0;else c[p>>2]=Xf(1,t)|0;if(!(c[p>>2]|0)){c[q>>2]=fu()|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=Zh(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=Zh(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=Zh(z)|0;i=g;return A|0}function Zh(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=_h(32,c[d>>2]|0)|0;i=b;return a|0}function _h(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=$h(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function $h(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))ba();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 ai(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))ba();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)lf(63,24247);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=Jx(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}Wf((c[f>>2]|0)+(0-(c[g>>2]|0))|0);i=e;return}function bi(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))ba();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]=ci(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}xx(c[k>>2]|0,66,c[l>>2]|0)|0;p=c[o>>2]|0;i=g;return p|0}function ci(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))ba();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]=$q(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]=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 8:{c[p>>2]=Rq(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;wf(24342,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=cr(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]=Qr(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;wf(24342,h)}}if((f|0)<65537)switch(f|0){case 11:{c[p>>2]=Hr(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;wf(24342,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;wf(24342,h)}}}else switch(f|0){case 1:{c[p>>2]=di(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]=Jq(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]=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}case 5:{c[p>>2]=Lr(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:{Nb[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((vh()|0)==0?eg(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Bx(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Eh(24296,875,24305,0,24320);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;wf(24342,h)}}while(0);i=g;return c[p>>2]|0}function di(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))ba();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=ei(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 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;h=i;i=i+48|0;if((i|0)>=(j|0))ba();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]=Db[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){Df((c[u>>2]|0)+16|0);Ef()}c[k>>2]=0;w=c[k>>2]|0;i=h;return w|0}function fi(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))ba();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=gi(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 gi(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))ba();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]=$q(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]=Iq(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]=Sq(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;wf(24390,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=lr(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]=Tr(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;wf(24390,h)}}if((f|0)<65537)switch(f|0){case 11:{c[p>>2]=Kr(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;wf(24390,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;wf(24390,h)}}}else switch(f|0){case 1:{c[p>>2]=hi(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]=Mq(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]=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}case 5:{c[p>>2]=Lr(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:{Nb[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((vh()|0)==0?eg(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Bx(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Eh(24296,992,24375,0,24320);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;wf(24390,h)}}while(0);i=g;return c[p>>2]|0}function hi(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))ba();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=ei(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 ii(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=ji(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function ji(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))ba();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]=Db[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)){Ax(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}mr(c[g>>2]|0);break}if((h|0)<65537){switch(h|0){case 10:break;default:break a}Ur(c[g>>2]|0);break}else{switch(h|0){case 65537:break;default:break a}Zq(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 ki(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))ba();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]=Oq(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=dr(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=Or(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}case 11:{c[k>>2]=Dr(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=li(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}i=e;return c[k>>2]|0}function li(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))ba();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){Ib[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}xx(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;tf(24423,g);Eh(24296,682,24466,0,24479)}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];Ax((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 mi(){return 0}function ni(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))ba();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]=Vh(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]=Db[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=oi(n)|0;i=f;return o|0}c[l>>2]=12;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=oi(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=37971;else p=c[m>>2]|0?37932:37951;Nb[h&1](38601,k,37993,p);n=c[l>>2]|0;o=oi(n)|0;i=f;return o|0}function oi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=$h(1,c[d>>2]|0)|0;i=b;return a|0}function pi(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))ba();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[1416+((c[o>>2]|0)*48|0)>>2]|0))break;if((c[k>>2]|0)==(c[1416+((c[o>>2]|0)*48|0)+4>>2]|0)?(c[1416+((c[o>>2]|0)*48|0)+12>>2]|0)==0:0)break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[1416+((c[o>>2]|0)*48|0)>>2]|0))c[o>>2]=-1}else c[o>>2]=qi(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[1416+((c[o>>2]|0)*48|0)>>2];if(vh()|0?(a[1416+((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[1416+((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[1416+((c[o>>2]|0)*48|0)+4>>2];if(c[m>>2]|0){c[c[m>>2]>>2]=c[1416+((c[o>>2]|0)*48|0)+12>>2];c[(c[m>>2]|0)+4>>2]=c[1416+((c[o>>2]|0)*48|0)+16>>2];if(!(c[(c[m>>2]|0)+8>>2]|0)){n=ri(c[1416+((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=ri(c[1416+((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=ri(c[1416+((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=ri(c[1416+((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=ri(c[1416+((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=ri(c[1416+((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=ri(c[1416+((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=Xp(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 qi(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))ba();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[1416+((c[f>>2]|0)*48|0)>>2]|0))break;a=(dv(c[e>>2]|0,c[1416+((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[1416+((c[f>>2]|0)*48|0)>>2]|0)){c[g>>2]=0;while(1){if(!(c[2472+(c[g>>2]<<3)>>2]|0))break;if(!(dv(c[e>>2]|0,c[2472+(c[g>>2]<<3)+4>>2]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[2472+(c[g>>2]<<3)>>2]|0){c[f>>2]=0;while(1){if(!(c[1416+((c[f>>2]|0)*48|0)>>2]|0))break a;h=(dv(c[2472+(c[g>>2]<<3)>>2]|0,c[1416+((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 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))ba();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;c[f>>2]=Ap(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=cu(c[f>>2]|0)|0;wf(35698,d)}else{i=b;return c[g>>2]|0}return 0}function si(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))ba();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]=qi(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=Hv((c[1416+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;c[z>>2]=(c[z>>2]|0)+o;o=Hv((c[1416+((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]=Qf(c[z>>2]|0)|0;if(c[y>>2]|0){o=Uv(c[y>>2]|0,35437)|0;l=Uv(o,(c[1416+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;Tv(l,(c[1416+((c[x>>2]|0)*48|0)+40>>2]|0)+2|0)|0;uq(c[c[u>>2]>>2]|0);l=ri(c[y>>2]|0)|0;c[c[u>>2]>>2]=l;Wf(c[y>>2]|0);break}c[n>>2]=fu()|0;A=c[n>>2]|0;i=m;return A|0}while(0);if(c[p>>2]|0)c[c[p>>2]>>2]=c[1416+((c[x>>2]|0)*48|0)+12>>2];if(c[q>>2]|0)c[c[q>>2]>>2]=c[1416+((c[x>>2]|0)*48|0)+16>>2];if(c[r>>2]|0){uq(c[c[r>>2]>>2]|0);q=ri(c[1416+((c[x>>2]|0)*48|0)+20>>2]|0)|0;c[c[r>>2]>>2]=q}if(c[s>>2]|0){uq(c[c[s>>2]>>2]|0);q=ri(c[1416+((c[x>>2]|0)*48|0)+24>>2]|0)|0;c[c[s>>2]>>2]=q}if(c[t>>2]|0){uq(c[c[t>>2]>>2]|0);q=ri(c[1416+((c[x>>2]|0)*48|0)+28>>2]|0)|0;c[c[t>>2]>>2]=q}if(c[v>>2]|0){uq(c[c[v>>2]>>2]|0);q=ri(c[1416+((c[x>>2]|0)*48|0)+32>>2]|0)|0;c[c[v>>2]>>2]=q}if(c[w>>2]|0){uq(c[c[w>>2]>>2]|0);q=ri(c[1416+((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 ti(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))ba();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[1416+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1416+((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]=ui(Mg(k,0,35442,f)|0)|0;a:do if((c[m>>2]|0)==68){c[s>>2]=sg(c[h>>2]|0,47128,5)|0;if(c[s>>2]|0?(c[t>>2]=zg(c[s>>2]|0,1)|0,qg(c[s>>2]|0),c[t>>2]|0):0){c[r>>2]=qi(c[t>>2]|0)|0;Wf(c[t>>2]|0);if((c[r>>2]|0)>=0?(c[n>>2]=c[1416+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1416+((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?($n(o+20|0),_i(o+20|0,c[p>>2]|0)|0):0)break;c[r>>2]=0;while(1){if(!(c[1416+((c[r>>2]|0)*48|0)>>2]|0))break a;eq(c[q>>2]|0);c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+20>>2]|0)|0;if(((((((Zo(c[q>>2]|0,c[o+8>>2]|0)|0)==0?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+24>>2]|0)|0,(Zo(c[q>>2]|0,c[o+12>>2]|0)|0)==0):0)?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+28>>2]|0)|0,(Zo(c[q>>2]|0,c[o+16>>2]|0)|0)==0):0)?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+32>>2]|0)|0,(Zo(c[q>>2]|0,c[o+32>>2]|0)|0)==0):0)?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+44>>2]|0)|0,(Zo(c[q>>2]|0,c[o+36>>2]|0)|0)==0):0)?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+36>>2]|0)|0,(Zo(c[q>>2]|0,c[o+20>>2]|0)|0)==0):0)?(eq(c[q>>2]|0),c[q>>2]=ri(c[1416+((c[r>>2]|0)*48|0)+40>>2]|0)|0,(Zo(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[1416+((c[r>>2]|0)*48|0)>>2];if(c[l>>2]|0)c[c[l>>2]>>2]=c[1416+((c[r>>2]|0)*48|0)+4>>2]}while(0);uq(c[q>>2]|0);uq(c[o+8>>2]|0);uq(c[o+12>>2]|0);uq(c[o+16>>2]|0);uq(c[p>>2]|0);bo(o+20|0);uq(c[o+32>>2]|0);uq(c[o+36>>2]|0);c[g>>2]=c[n>>2];u=c[g>>2]|0;i=e;return u|0}function ui(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function vi(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))ba();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]=sg(c[g>>2]|0,47134,0)|0;if(c[x>>2]|0?(c[k>>2]=gk(c[x>>2]|0,w,0)|0,qg(c[x>>2]|0),c[x>>2]=0,c[k>>2]|0):0)break;c[x>>2]=sg(c[g>>2]|0,47128,5)|0;if(c[x>>2]|0?(c[w>>2]&512|0)==0:0){B=13;break}c[k>>2]=wi(o,c[g>>2]|0,48611)|0;if((((((c[k>>2]|0)==0?(c[k>>2]=wi(p,c[g>>2]|0,39337)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=wi(q,c[g>>2]|0,35450)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=xi(r,c[g>>2]|0,35452,0)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=wi(s,c[g>>2]|0,39341)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=wi(t,c[g>>2]|0,35463)|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]=zg(c[x>>2]|0,1)|0;qg(c[x>>2]|0);if(!(c[y>>2]|0)){c[k>>2]=65;break}}else c[y>>2]=0;c[z>>2]=Xf(1,44)|0;if(!(c[z>>2]|0)){c[k>>2]=fu()|0;Wf(c[y>>2]|0);break}c[k>>2]=pi(0,c[y>>2]|0?c[y>>2]|0:c[h>>2]|0,c[z>>2]|0,0)|0;Wf(c[y>>2]|0);d=c[z>>2]|0;if(c[k>>2]|0){Wf(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]=eo(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}Ti(c[z>>2]|0);Wf(c[z>>2]|0)}c[k>>2]=io(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]=Sh(c[l>>2]|0,1)|0;if(c[q>>2]|0){eq(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]=xi(u,c[g>>2]|0,49839,c[A>>2]|0)|0;if(c[k>>2]|0)break;c[k>>2]=wi(v,c[g>>2]|0,35465)|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);Th(c[l>>2]|0);eq(c[o>>2]|0);eq(c[p>>2]|0);eq(c[q>>2]|0);ao(c[r>>2]|0);eq(c[s>>2]|0);eq(c[t>>2]|0);ao(c[u>>2]|0);eq(c[v>>2]|0);i=e;return c[k>>2]|0}function wi(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))ba();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]=sg(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=Ag(c[l>>2]|0,1,5)|0;c[c[f>>2]>>2]=h;qg(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 xi(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))ba();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]=sg(c[k>>2]|0,c[l>>2]|0,0)|0;if(c[o>>2]|0){c[q>>2]=Ag(c[o>>2]|0,1,8)|0;qg(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]=_n(0)|0;if(c[m>>2]|0?(c[(c[m>>2]|0)+4>>2]|0)==1:0)c[n>>2]=Ii(c[q>>2]|0,c[m>>2]|0,c[p>>2]|0,0,0)|0;else c[n>>2]=_i(c[p>>2]|0,c[q>>2]|0)|0;eq(c[q>>2]|0);if(c[n>>2]|0){ao(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]=Qf((Hv(c[l>>2]|0)|0)+2+1|0)|0;if(!(c[r>>2]|0)){c[g>>2]=fu()|0;v=c[g>>2]|0;i=f;return v|0}Tv(Uv(c[r>>2]|0,c[l>>2]|0)|0,35454)|0;c[n>>2]=wi(s,c[k>>2]|0,c[r>>2]|0)|0;q=c[r>>2]|0;if(c[n>>2]|0){Wf(q);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}Tv(Uv(q,c[l>>2]|0)|0,35457)|0;c[n>>2]=wi(t,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){eq(c[s>>2]|0);Wf(c[r>>2]|0);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}Tv(Uv(c[r>>2]|0,c[l>>2]|0)|0,35460)|0;c[n>>2]=wi(u,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){eq(c[t>>2]|0);eq(c[s>>2]|0);Wf(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]=pq(0,1)|0;n=c[s>>2]|0;if((c[s>>2]|0)!=0&(c[t>>2]|0)!=0)c[p>>2]=eo(0,n,c[t>>2]|0,c[u>>2]|0)|0;else{eq(n);eq(c[t>>2]|0);eq(c[u>>2]|0);c[p>>2]=0}Wf(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 yi(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))ba();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(pi(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]=sq(0)|0;c[n>>2]=sq(0)|0;c[l>>2]=go(0,0,0,c[k+8>>2]|0,c[k+12>>2]|0,0)|0;if(Wn(c[m>>2]|0,c[n>>2]|0,k+20|0,c[l>>2]|0)|0)wf(35467,e);ko(c[l>>2]|0);bo(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]=Yi(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;eq(c[m>>2]|0);eq(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(Dg(p,0,35516,d)|0)c[p>>2]=0;c[q>>2]=0;while(1){if(!(c[o+(c[q>>2]<<2)>>2]|0))break;uq(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 zi(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))ba();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((dv(c[h>>2]|0,48611)|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=jq(c[(c[k>>2]|0)+16>>2]|0)|0;c[g>>2]=p;o=c[g>>2]|0;i=f;return o|0}if((dv(c[h>>2]|0,39337)|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=jq(c[(c[k>>2]|0)+20>>2]|0)|0;c[g>>2]=q;o=c[g>>2]|0;i=f;return o|0}if((dv(c[h>>2]|0,35450)|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=jq(c[(c[k>>2]|0)+24>>2]|0)|0;c[g>>2]=r;o=c[g>>2]|0;i=f;return o|0}if((dv(c[h>>2]|0,39341)|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=jq(c[(c[k>>2]|0)+32>>2]|0)|0;c[g>>2]=s;o=c[g>>2]|0;i=f;return o|0}if((dv(c[h>>2]|0,35463)|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=jq(c[(c[k>>2]|0)+36>>2]|0)|0;c[g>>2]=t;o=c[g>>2]|0;i=f;return o|0}if((dv(c[h>>2]|0,35465)|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=jq(c[(c[k>>2]|0)+44>>2]|0)|0;c[g>>2]=u;o=c[g>>2]|0;i=f;return o|0}if(((dv(c[h>>2]|0,35564)|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=jq(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(((dv(c[h>>2]|0,35568)|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=jq(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(((dv(c[h>>2]|0,35572)|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=jq(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(((dv(c[h>>2]|0,35576)|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=jq(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((dv(c[h>>2]|0,35452)|0)==0?c[(c[k>>2]|0)+28>>2]|0:0){c[g>>2]=Zi(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=$i(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]=Zi(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0)|0;o=c[g>>2]|0;i=f;return o|0}if((dv((c[h>>2]|0)+2|0,47094)|0)==0?(c[c[k>>2]>>2]|0)==2:0){if(Di(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0,0,0,0,m,n)|0)break;c[g>>2]=fq(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 Ai(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;if((dv(c[f>>2]|0,35452)|0)==0?c[(c[g>>2]|0)+28>>2]|0:0){c[e>>2]=Bi(c[(c[g>>2]|0)+28>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}if(!(dv(c[f>>2]|0,49839)|0)){if(!(c[(c[g>>2]|0)+40>>2]|0)){f=$i(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]=Bi(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 Bi(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;if(c[d>>2]|0){c[e>>2]=_n(0)|0;Ci(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 Ci(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lq(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;lq(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;lq(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Di(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))ba();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=sq(0)|0;c[t>>2]=v;if(c[o>>2]|0)w=c[o>>2]|0;else w=sq(0)|0;c[u>>2]=w;if(Wn(c[t>>2]|0,c[u>>2]|0,c[l>>2]|0,c[m>>2]|0)|0){vf(35580,k);c[s>>2]=63}else c[s>>2]=Ei(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))eq(c[t>>2]|0);if(c[o>>2]|0){x=c[s>>2]|0;i=k;return x|0}eq(c[u>>2]|0);x=c[s>>2]|0;i=k;return x|0}function Ei(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))ba();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]=yp(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]=fu()|0;w=c[m>>2]|0;i=l;return w|0}p=(Po(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 Fi(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))ba();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]=hq(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(gq(c[g>>2]|0,(c[l>>2]|0)+1|0,(c[m>>2]|0)-1<<3)|0)break;c[f>>2]=fu()|0;r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Ap(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]=Ap(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){eq(b);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Ei(b,c[o>>2]|0,((c[h>>2]|0)>>>0)/8|0,0,p,q)|0;eq(c[n>>2]|0);eq(c[o>>2]|0);if(!(c[k>>2]|0)){fq(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 Gi(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))ba();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[17688]|0))c[17688]=Hi(35633)|0;if(!(c[17689]|0))c[17689]=pq(0,7)|0;c[o>>2]=sq(0)|0;c[p>>2]=sq(0)|0;c[q>>2]=sq(0)|0;c[r>>2]=sq(0)|0;sp(c[o>>2]|0,c[k>>2]|0,c[k>>2]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[p>>2]|0,c[(c[m>>2]|0)+24>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Jo(c[o>>2]|0,c[o>>2]|0,1);Ho(c[p>>2]|0,c[p>>2]|0,1);k=c[q>>2]|0;e=c[p>>2]|0;d=xq(3)|0;tp(k,e,d,c[(c[m>>2]|0)+16>>2]|0);tp(c[r>>2]|0,c[p>>2]|0,c[17689]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);tp(c[r>>2]|0,c[r>>2]|0,c[17688]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[h>>2]|0,c[r>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);kq(c[r>>2]|0,c[r>>2]|0);if(!(Zo(c[r>>2]|0,c[o>>2]|0)|0)){if(!(c[17690]|0))c[17690]=Hi(35733)|0;sp(c[h>>2]|0,c[h>>2]|0,c[17690]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);sp(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);kq(c[r>>2]|0,c[r>>2]|0);if(!(Zo(c[r>>2]|0,c[o>>2]|0)|0))c[n>>2]=65}d=Po(c[h>>2]|0,0)|0;if((d|0)!=(((c[l>>2]|0)!=0^1^1)&1|0))Ko(c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[h>>2]|0);eq(c[r>>2]|0);eq(c[q>>2]|0);eq(c[p>>2]|0);eq(c[o>>2]|0);c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}function Hi(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))ba();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;c[f>>2]=Ap(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=cu(c[f>>2]|0)|0;wf(35698,d)}else{i=b;return c[g>>2]|0}return 0}function Ii(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))ba();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]=hq(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]=Ap(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]=Ap(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){eq(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]=Ei(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){eq(c[w>>2]|0);eq(c[x>>2]|0);c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}nq(c[c[o>>2]>>2]|0,c[w>>2]|0);nq(c[(c[o>>2]|0)+4>>2]|0,c[x>>2]|0);pq(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]=Qf(c[t>>2]|0?c[t>>2]|0:1)|0;if(c[s>>2]|0){Ax(c[s>>2]|0,c[v>>2]|0,c[t>>2]|0)|0;Ji(c[s>>2]|0,c[t>>2]|0);break}c[l>>2]=fu()|0;y=c[l>>2]|0;i=k;return y|0}else z=21;while(0);if((z|0)==21?(c[s>>2]=wp(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]=fu()|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;zp(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}Ji(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 Wf(c[s>>2]|0);c[r>>2]=Gi(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[u>>2]|0,c[n>>2]|0)|0;pq(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 Ji(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))ba();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 Ki(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))ba();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]=Yf(2,c[t>>2]|0)|0;if(!(c[q>>2]|0)){c[h>>2]=fu()|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]=wp(c[l>>2]|0,0,p,0)|0;l=c[q>>2]|0;if(!(c[o>>2]|0)){Wf(l);c[h>>2]=fu()|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]=Pj(c[s>>2]|0,0,c[q>>2]|0,r,2)|0;Wf(c[o>>2]|0);o=c[q>>2]|0;if(c[n>>2]|0){Wf(o);c[h>>2]=c[n>>2];u=c[h>>2]|0;i=g;return u|0}else{Ji(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 Li(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))ba();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;$n(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]=tq(0)|0;c[r>>2]=sq(0)|0;c[s>>2]=sq(0)|0;c[y>>2]=Tf(c[p>>2]<<1)|0;if(!(c[y>>2]|0)){c[o>>2]=Mi()|0;bo(t);z=c[q>>2]|0;uq(z);A=c[r>>2]|0;uq(A);B=c[s>>2]|0;uq(B);C=c[y>>2]|0;Wf(C);D=c[o>>2]|0;i=h;return D|0}c[w>>2]=c[p>>2];c[v>>2]=Ln(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]=Pj(10,0,c[y>>2]|0,x,1)|0;if(c[o>>2]|0){bo(t);z=c[q>>2]|0;uq(z);A=c[r>>2]|0;uq(A);B=c[s>>2]|0;uq(B);C=c[y>>2]|0;Wf(C);D=c[o>>2]|0;i=h;return D|0}x=fq(0,c[v>>2]|0,c[w>>2]<<3)|0;c[(c[k>>2]|0)+56>>2]=x;c[v>>2]=0;Ji(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;zp(c[q>>2]|0,c[y>>2]|0,32,0);Wf(c[y>>2]|0);c[y>>2]=0;Do(t,c[q>>2]|0,(c[l>>2]|0)+20|0,c[m>>2]|0);if(eg(1)|0)Vn(35798,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=jq(c[(c[l>>2]|0)+8>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=m;m=jq(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=m;m=jq(c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=m;$n((c[k>>2]|0)+20|0);Pi((c[k>>2]|0)+20|0,(c[l>>2]|0)+20|0);m=jq(c[(c[l>>2]|0)+32>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=m;m=jq(c[(c[l>>2]|0)+36>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=m;$n((c[k>>2]|0)+44|0);Pi((c[k>>2]|0)+44|0,t);bo(t);z=c[q>>2]|0;uq(z);A=c[r>>2]|0;uq(A);B=c[s>>2]|0;uq(B);C=c[y>>2]|0;Wf(C);D=c[o>>2]|0;i=h;return D|0}function Mi(){return Ni(fu()|0)|0}function Ni(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Oi(1,c[d>>2]|0)|0;i=b;return a|0}function Oi(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))ba();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 Pi(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lq(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;lq(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;lq(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Qi(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))ba();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){$n(D);$n(E);c[F>>2]=tq(0)|0;c[G>>2]=sq(0)|0;c[H>>2]=sq(0)|0;c[I>>2]=sq(0)|0;c[s>>2]=go(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]=Ki(v,c[(c[m>>2]|0)+56>>2]|0,c[s>>2]|0)|0;do if(!(c[r>>2]|0)){zp(c[F>>2]|0,c[v>>2]|0,32,0);if(c[q>>2]|0){c[r>>2]=Ii(c[q>>2]|0,c[s>>2]|0,E,B,C)|0;if(c[r>>2]|0)break;if(eg(1)|0)Af(35812,c[B>>2]|0,c[C>>2]|0);if(!(Fo(E,c[s>>2]|0)|0)){c[r>>2]=195;break}}else{Do(E,c[F>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);c[r>>2]=Di(E,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,B,C)|0;if(c[r>>2]|0)break;if(eg(1)|0)Af(35819,c[B>>2]|0,c[C>>2]|0)}c[x>>2]=hq(c[l>>2]|0,u)|0;c[y>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(eg(1)|0)Af(35826,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]=Pj(c[p>>2]|0,0,c[v>>2]|0,w,2)|0;if(!(c[r>>2]|0)){Ji(c[v>>2]|0,64);if(eg(1)|0)Af(53334,c[v>>2]|0,64);zp(c[I>>2]|0,c[v>>2]|0,64,0);Do(D,c[I>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);if(eg(1)|0)Vn(35833,D,c[s>>2]|0);c[r>>2]=Di(D,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,z,A)|0;if(!(c[r>>2]|0)){if(eg(1)|0)Af(35838,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]=Pj(c[p>>2]|0,0,c[v>>2]|0,w,3)|0;if(!(c[r>>2]|0)){fq(c[n>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;Ji(c[v>>2]|0,64);if(eg(1)|0)Af(35845,c[v>>2]|0,64);zp(c[o>>2]|0,c[v>>2]|0,64,0);sp(c[o>>2]|0,c[o>>2]|0,c[F>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Lo(c[o>>2]|0,c[o>>2]|0,c[I>>2]|0,c[(c[m>>2]|0)+32>>2]|0);c[r>>2]=Ri(c[o>>2]|0,c[t>>2]|0,z,A)|0;if(!(c[r>>2]|0)){if(eg(1)|0)Af(35852,c[z>>2]|0,c[A>>2]|0);fq(c[o>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;c[r>>2]=0}}}}}while(0);uq(c[F>>2]|0);uq(c[G>>2]|0);uq(c[H>>2]|0);uq(c[I>>2]|0);Wf(c[v>>2]|0);ko(c[s>>2]|0);bo(D);bo(E);Wf(c[B>>2]|0);Wf(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 Ri(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))ba();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]=wp(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]=fu()|0;p=c[g>>2]|0;i=f;return p|0}return 0}function Si(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))ba();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}$n(v);$n(I);$n(J);c[G>>2]=sq(0)|0;c[H>>2]=sq(0)|0;c[s>>2]=go(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]=Ii(c[q>>2]|0,c[s>>2]|0,v,w,x)|0;a:do if(!(c[r>>2]|0)){if(!(Fo(v,c[s>>2]|0)|0)){c[r>>2]=195;break}if(eg(1)|0)Af(35819,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]=hq(c[l>>2]|0,u)|0;c[B>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(eg(1)|0)Af(35826,c[y>>2]|0,c[B>>2]|0);c[z>>2]=hq(c[n>>2]|0,u)|0;c[C>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(eg(1)|0)Af(53334,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]=Pj(c[p>>2]|0,0,E,F,3)|0;if(!(c[r>>2]|0)){Ji(E,64);if(eg(1)|0)Af(35845,E,64);zp(c[G>>2]|0,E,64,0);c[K>>2]=iq(c[o>>2]|0,u)|0;c[L>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;Ji(c[K>>2]|0,c[L>>2]|0);if(eg(1)|0)Af(53341,c[K>>2]|0,c[L>>2]|0);zp(c[H>>2]|0,c[K>>2]|0,c[L>>2]|0,0);Wf(c[K>>2]|0);if((c[L>>2]|0)!=(c[t>>2]|0)){c[r>>2]=139;break}Do(I,c[H>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);Do(J,c[G>>2]|0,v,c[s>>2]|0);kq(c[J>>2]|0,c[J>>2]|0);xo(I,I,J,c[s>>2]|0);c[r>>2]=Di(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(jw(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);Wf(c[w>>2]|0);Wf(c[A>>2]|0);ko(c[s>>2]|0);uq(c[H>>2]|0);uq(c[G>>2]|0);bo(I);bo(J);bo(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 Ti(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;eq(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;eq(c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;eq(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0;bo((c[d>>2]|0)+20|0);eq(c[(c[d>>2]|0)+32>>2]|0);c[(c[d>>2]|0)+32>>2]=0;eq(c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;i=b;return}function Ui(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+48|0;if((i|0)>=(j|0))ba();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]=jq(c[b+8>>2]|0)|0;c[e+12>>2]=jq(c[b+12>>2]|0)|0;c[e+16>>2]=jq(c[b+16>>2]|0)|0;$n(e+20|0);Vi(e+20|0,b+20|0);c[e+32>>2]=jq(c[b+32>>2]|0)|0;c[e+36>>2]=jq(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 Vi(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lq(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;lq(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;lq(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Wi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=37900;switch(c[d>>2]|0){case 0:{c[e>>2]=35859;break}case 1:{c[e>>2]=45674;break}case 2:{c[e>>2]=35871;break}default:{}}i=b;return c[e>>2]|0}function Xi(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=37900;switch(c[d>>2]|0){case 0:{c[e>>2]=35879;break}case 1:{c[e>>2]=35888;break}default:{}}i=b;return c[e>>2]|0}function Yi(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))ba();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]=(((Oo(c[n>>2]|0)|0)+7|0)>>>0)/8|0;c[r>>2]=_f(1+(c[p>>2]<<1)|0)|0;a[c[r>>2]>>0]=4;c[s>>2]=(c[r>>2]|0)+1;c[o>>2]=Ep(5,c[s>>2]|0,c[p>>2]|0,q,c[l>>2]|0)|0;if(c[o>>2]|0){c[k>>2]=cu(c[o>>2]|0)|0;wf(35896,k)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Bx((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;xx(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]=Ep(5,c[s>>2]|0,c[p>>2]|0,q,c[m>>2]|0)|0;if(c[o>>2]|0){c[h>>2]=cu(c[o>>2]|0)|0;wf(35896,h)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Bx((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;xx(c[s>>2]|0,0,(c[p>>2]|0)-(c[q>>2]|0)|0)|0}c[o>>2]=Ap(t,5,c[r>>2]|0,1+(c[p>>2]<<1)|0,0)|0;if(c[o>>2]|0){c[g>>2]=cu(c[o>>2]|0)|0;wf(35918,g)}else{Wf(c[r>>2]|0);i=f;return c[t>>2]|0}return 0}function Zi(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))ba();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]=sq(0)|0;c[h>>2]=sq(0)|0;if(Wn(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]=Yi(c[g>>2]|0,c[h>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;eq(c[g>>2]|0);eq(c[h>>2]|0);i=d;return c[k>>2]|0}function _i(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))ba();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]=hq(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]=(((Oo(c[h>>2]|0)|0)+7|0)>>>0)/8|0;c[n>>2]=_f(c[l>>2]|0)|0;c[k>>2]=Ep(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}Wf(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){Wf(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){Wf(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){Wf(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]=Ap(o,5,(c[m>>2]|0)+1|0,c[l>>2]|0,0)|0;if(c[k>>2]|0){Wf(c[n>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Ap(p,5,(c[m>>2]|0)+1+(c[l>>2]|0)|0,c[l>>2]|0,0)|0;Wf(c[n>>2]|0);if(c[k>>2]|0){eq(c[o>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}else{lq(c[c[g>>2]>>2]|0,c[o>>2]|0)|0;lq(c[(c[g>>2]|0)+4>>2]|0,c[p>>2]|0)|0;pq(c[(c[g>>2]|0)+8>>2]|0,1)|0;eq(c[o>>2]|0);eq(c[p>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}return 0}function $i(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))ba();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(Ki(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]=tq(0)|0;zp(c[n>>2]|0,c[o>>2]|0,32,0);Wf(c[o>>2]|0);if(!(c[h>>2]|0))c[h>>2]=_n(0)|0;if(c[h>>2]|0)Do(c[h>>2]|0,c[n>>2]|0,c[l>>2]|0,c[k>>2]|0);eq(c[n>>2]|0)}else{if(!(c[h>>2]|0))c[h>>2]=_n(0)|0;if(c[h>>2]|0)Do(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 aj(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))ba();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(Sj(c[f>>2]|0,8,0,0)|0){c[k>>2]=5;if(c[h>>2]|0)Nb[c[h>>2]&1](36199,c[f>>2]|0,37993,36943)}else c[k>>2]=bj(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;h=ij(c[k>>2]|0)|0;i=e;return h|0}function bj(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))ba();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]=cj(c[g>>2]|0,c[h>>2]|0)|0;break}case 11:{c[k>>2]=ej(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=fj(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=gj(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=hj(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function cj(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))ba();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]=35939;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]=dj(2,35954,9,m,64,35964,20)|0;do if(!(c[l>>2]|0)){if(c[g>>2]|0){c[k>>2]=36061;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]=dj(2,36076,9,m,20,36086,20)|0;if(c[l>>2]|0)break;c[k>>2]=36107;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]=dj(2,36122,9,m,100,36132,20)|0;if(c[l>>2]|0)break;c[k>>2]=36153;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]=dj(2,36168,9,m,49,36178,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)Nb[c[h>>2]&1](36199,2,c[k>>2]|0,c[l>>2]|0);c[f>>2]=50;p=c[f>>2]|0;i=e;return p|0}function dj(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))ba();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=Rj(c[m>>2]|0)|0;if((h|0)!=(c[s>>2]|0)){c[l>>2]=35985;v=c[l>>2]|0;i=k;return v|0}if(rj(t,c[m>>2]|0,2)|0){c[l>>2]=49900;v=c[l>>2]|0;i=k;return v|0}h=(Ij(c[t>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)!=0;q=c[t>>2]|0;if(h){Bj(q);c[l>>2]=36004;v=c[l>>2]|0;i=k;return v|0}Cj(q,c[n>>2]|0,c[o>>2]|0);c[u>>2]=Oj(c[t>>2]|0,c[m>>2]|0)|0;if(!(c[u>>2]|0)){Bj(c[t>>2]|0);c[l>>2]=36026;v=c[l>>2]|0;i=k;return v|0}m=(jw(c[u>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)!=0;Bj(c[t>>2]|0);if(m){c[l>>2]=36046;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 ej(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))ba();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[2768+((c[l>>2]|0)*40|0)>>2]|0)){m=6;break}c[h>>2]=c[2768+((c[l>>2]|0)*40|0)>>2];b=c[2768+((c[l>>2]|0)*40|0)+4>>2]|0;a=Hv(c[2768+((c[l>>2]|0)*40|0)+4>>2]|0)|0;n=c[2768+((c[l>>2]|0)*40|0)+8>>2]|0;o=Hv(c[2768+((c[l>>2]|0)*40|0)+8>>2]|0)|0;c[k>>2]=dj(11,b,a,n,o,2768+((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)Nb[c[g>>2]&1](36199,11,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function fj(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))ba();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[3048+((c[l>>2]|0)*44|0)>>2]|0)){p=13;break}c[h>>2]=c[3048+((c[l>>2]|0)*44|0)>>2];b=c[3048+((c[l>>2]|0)*44|0)+4>>2]|0;a=Hv(c[3048+((c[l>>2]|0)*44|0)+4>>2]|0)|0;q=c[3048+((c[l>>2]|0)*44|0)+8>>2]|0;r=Hv(c[3048+((c[l>>2]|0)*44|0)+8>>2]|0)|0;c[k>>2]=dj(8,b,a,q,r,3048+((c[l>>2]|0)*44|0)+12|0,32)|0;if(c[k>>2]|0)break;r=c[3048+((c[l>>2]|0)*44|0)+8>>2]|0;c[m>>2]=zq(r,Hv(c[3048+((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[3048+((c[l>>2]|0)*44|0)+4>>2]|0;Aq(r,q,Hv(c[3048+((c[l>>2]|0)*44|0)+4>>2]|0)|0);c[n>>2]=Fq(c[m>>2]|0,o)|0;if(!(c[n>>2]|0)){p=7;break}if((c[o>>2]|0)!=32){p=10;break}if(jw(c[n>>2]|0,3048+((c[l>>2]|0)*44|0)+12|0,32)|0){p=10;break}Eq(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]=36848;else if((p|0)==7){c[k>>2]=36873;Eq(c[m>>2]|0)}else if((p|0)==10){c[k>>2]=36903;Eq(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)Nb[c[g>>2]&1](36199,8,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;s=c[e>>2]|0;i=d;return s|0}function gj(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))ba();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[3356+((c[l>>2]|0)*60|0)>>2]|0)){m=6;break}c[h>>2]=c[3356+((c[l>>2]|0)*60|0)>>2];b=c[3356+((c[l>>2]|0)*60|0)+4>>2]|0;a=Hv(c[3356+((c[l>>2]|0)*60|0)+4>>2]|0)|0;n=c[3356+((c[l>>2]|0)*60|0)+8>>2]|0;o=Hv(c[3356+((c[l>>2]|0)*60|0)+8>>2]|0)|0;c[k>>2]=dj(9,b,a,n,o,3356+((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)Nb[c[g>>2]&1](36199,9,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function hj(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))ba();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[3776+((c[l>>2]|0)*76|0)>>2]|0)){m=6;break}c[h>>2]=c[3776+((c[l>>2]|0)*76|0)>>2];b=c[3776+((c[l>>2]|0)*76|0)+4>>2]|0;a=Hv(c[3776+((c[l>>2]|0)*76|0)+4>>2]|0)|0;n=c[3776+((c[l>>2]|0)*76|0)+8>>2]|0;o=Hv(c[3776+((c[l>>2]|0)*76|0)+8>>2]|0)|0;c[k>>2]=dj(10,b,a,n,o,3776+((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)Nb[c[g>>2]&1](36199,10,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|0}function ij(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=jj(1,c[d>>2]|0)|0;i=b;return a|0}function jj(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))ba();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 kj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;do if(c[e>>2]|0){c[f>>2]=lj(c[e>>2]|0,0)|0;if(c[f>>2]|0){c[d>>2]=c[c[f>>2]>>2];break}c[f>>2]=nj(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 lj(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))ba();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(fw(c[f>>2]|0,36967,4)|0?fw(c[f>>2]|0,36972,4)|0:0)break;c[f>>2]=(c[f>>2]|0)+4}while(0);c[h>>2]=mj(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(!(Sv(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 mj(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))ba();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[4308+(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(!(Sv(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 nj(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))ba();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[4308+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){h=6;break}if(!(Sv(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 oj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=pj(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37900;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function pj(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=qj(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4308+(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 qj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]|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,l=0;e=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=sj(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 sj(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))ba();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]=Tf(o)|0;else c[q>>2]=Qf(o)|0;if(!(c[q>>2]|0))c[l>>2]=du(c[(Vu()|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=Tf(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]=du(c[(Vu()|0)>>2]|0)|0;tj(c[q>>2]|0)}}if(((c[l>>2]|0)==0?(Pn(),c[h>>2]|0):0)?(c[l>>2]=wj(c[q>>2]|0,c[h>>2]|0)|0,c[l>>2]|0):0)tj(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 tj(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))ba();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)uj(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=Jx(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}Wf(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=Jx(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}Wf(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=Jx(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}Wf(c[f>>2]|0);i=e;return}function uj(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))ba();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)vj(c[d>>2]|0,0,0);sw(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=Jx(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 vj(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))ba();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?(yw((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)rf(36977,630,36982);if(c[h>>2]|0?(yw(c[g>>2]|0,c[h>>2]|0,1,c[(c[c[f>>2]>>2]|0)+8>>2]|0)|0)!=1:0)rf(36977,632,36982)}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)Ib[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);Ib[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 wj(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))ba();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]=pj(c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=c[l>>2];yf(36991,g);c[p>>2]=5}if(((c[p>>2]|0)==0&(c[l>>2]|0)==1?vh()|0:0)?(Dh(37030),Bh()|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]=Tf(l)|0;else c[o>>2]=Qf(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];Gb[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]=du(c[(Vu()|0)>>2]|0)|0;break}}while(0);c[h>>2]=c[p>>2];s=c[h>>2]|0;i=f;return s|0}function xj(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=yj(c[f>>2]|0,c[e>>2]|0)|0;if(!(c[g>>2]|0)){h=c[g>>2]|0;i=d;return h|0}c[c[e>>2]>>2]=0;h=c[g>>2]|0;i=d;return h|0}function yj(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))ba();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]=b;c[g>>2]=d;c[h>>2]=0;c[k>>2]=c[c[f>>2]>>2];if(c[(c[f>>2]|0)+4>>2]|0)vj(c[f>>2]|0,0,0);c[p>>2]=(c[c[f>>2]>>2]|0)-(c[f>>2]|0);d=(c[p>>2]|0)+28|0;if(a[(c[k>>2]|0)+12>>0]&1|0)c[o>>2]=Tf(d)|0;else c[o>>2]=Qf(d)|0;if(!(c[o>>2]|0))c[h>>2]=du(c[(Vu()|0)>>2]|0)|0;do if(!(c[h>>2]|0)){d=(c[o>>2]|0)+(c[p>>2]|0)|0;c[l>>2]=d;c[c[o>>2]>>2]=d;if((c[(c[f>>2]|0)+8>>2]|0)!=((c[p>>2]|0)-16+1|0))sf(37039,36977,493,37096);c[(c[o>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];c[(c[o>>2]|0)+4>>2]=0;if(c[(c[f>>2]|0)+4>>2]|0)sf(37104,36977,496,37096);d=c[l>>2]|0;b=c[k>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];c[d+24>>2]=c[b+24>>2];c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+8>>2]=0;if(c[(c[k>>2]|0)+20>>2]|0){b=Tf(c[(c[k>>2]|0)+24>>2]<<1)|0;c[(c[l>>2]|0)+20>>2]=b;if(c[(c[l>>2]|0)+20>>2]|0){Ax(c[(c[l>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+24>>2]<<1|0)|0;break}else{c[h>>2]=du(c[(Vu()|0)>>2]|0)|0;tj(c[o>>2]|0);break}}}while(0);a:do if(!(c[h>>2]|0)){c[m>>2]=c[(c[k>>2]|0)+16>>2];while(1){if(!(c[m>>2]|0))break a;f=24+(c[(c[c[m>>2]>>2]|0)+44>>2]|0)-8|0;if(a[(c[k>>2]|0)+12>>0]&1|0)c[n>>2]=Tf(f)|0;else c[n>>2]=Qf(f)|0;if(!(c[n>>2]|0))break;Ax(c[n>>2]|0,c[m>>2]|0,24+(c[(c[c[m>>2]>>2]|0)+44>>2]|0)-8|0)|0;c[(c[n>>2]|0)+4>>2]=c[(c[l>>2]|0)+16>>2];c[(c[l>>2]|0)+16>>2]=c[n>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}c[h>>2]=du(c[(Vu()|0)>>2]|0)|0;tj(c[o>>2]|0)}while(0);if(!(c[h>>2]|0?1:(c[(c[k>>2]|0)+8>>2]|0)==0))zj(c[o>>2]|0,37118);if(c[h>>2]|0){q=c[h>>2]|0;i=e;return q|0}c[c[g>>2]>>2]=c[o>>2];q=c[h>>2]|0;i=e;return q|0}function zj(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))ba();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(vh()|0){i=d;return}if(c[(c[c[g>>2]>>2]|0)+8>>2]|0){yf(37126,d);i=d;return}c[17691]=(c[17691]|0)+1;b=c[h>>2]|0;c[f>>2]=c[17691];c[f+4>>2]=b;qv(k,49,37158,f)|0;f=nw(k,37175)|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;yf(37177,e);i=d;return}function Aj(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;if((i|0)>=(j|0))ba();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;xx((c[g>>2]|0)+16|0,0,c[(c[c[g>>2]>>2]|0)+44>>2]|0)|0;Gb[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}vj(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 Bj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;tj(c[d>>2]|0);i=b;return}function Cj(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;vj(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Dj(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))ba();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:{Ej(c[g>>2]|0);break}case 32:{zj(c[g>>2]|0,c[k>>2]|0);break}case 33:{uj(c[g>>2]|0);break}default:c[l>>2]=61}i=f;return c[l>>2]|0}function Ej(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))ba();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)vj(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;Fb[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]=Fj(c[f>>2]|0)|0;c[k>>2]=Gj(c[f>>2]|0,c[h>>2]|0)|0;c[l>>2]=Hj(c[h>>2]|0)|0;c[n>>2]=sj(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)lf(c[n>>2]|0,0);vj(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);vj(c[m>>2]|0,c[k>>2]|0,c[l>>2]|0);Ej(c[m>>2]|0);f=c[k>>2]|0;k=Gj(c[m>>2]|0,c[h>>2]|0)|0;Ax(f|0,k|0,c[l>>2]|0)|0;tj(c[m>>2]|0);i=e;return}function Fj(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))ba();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){Eh(36977,980,37202,0,37214);vf(37235,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 Gj(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))ba();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))rf(36977,816,37325);if(c[(c[k>>2]|0)+4>>2]|0)yf(37286,e);c[f>>2]=Hb[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)rf(36977,816,37325);c[f>>2]=Hb[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 Hj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=pj(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 Ij(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))ba();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]=Jj(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(!(c[k>>2]|0))Aj(c[f>>2]|0)}else c[k>>2]=70;i=e;return c[k>>2]|0}function Jj(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))ba();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]=Fj(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]=Tf(Hj(c[o>>2]|0)|0)|0;if(c[p>>2]|0){Kj(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]=Hj(c[o>>2]|0)|0;if((c[m>>2]|0)>>>0<=(c[(c[c[k>>2]>>2]|0)+24>>2]|0)>>>0)break;sf(37369,36977,716,37402)}else{c[h>>2]=du(c[(Vu()|0)>>2]|0)|0;s=c[h>>2]|0;i=g;return s|0}}while(0);xx(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);Ax(c[q>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;Ax(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}Wf(c[p>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}function Kj(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))ba();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){ym(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if((c[h>>2]|0)==3?(vh()|0)==0:0){El(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if(((c[h>>2]|0)==1?vh()|0:0)?(Dh(37030),Bh()|0):0)Ah();c[o>>2]=sj(n,c[h>>2]|0,0)|0;if(c[o>>2]|0){e=c[h>>2]|0;d=cu(Lj(c[o>>2]|0)|0)|0;c[g>>2]=e;c[g+4>>2]=d;xf(37333,g)}vj(c[n>>2]|0,c[l>>2]|0,c[m>>2]|0);Ej(c[n>>2]|0);m=c[k>>2]|0;k=Gj(c[n>>2]|0,c[h>>2]|0)|0;Ax(m|0,k|0,Hj(c[h>>2]|0)|0)|0;tj(c[n>>2]|0);i=f;return}function Lj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Mj(32,c[d>>2]|0)|0;i=b;return a|0}function Mj(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=Nj(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Nj(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))ba();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 Oj(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;Dj(c[e>>2]|0,5,0,0)|0;b=Gj(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Pj(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))ba();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?vh()|0:0)?(Dh(37030),Bh()|0):0)Ah();c[r>>2]=sj(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]=Ij(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}tj(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;vj(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}Ej(t);t=c[m>>2]|0;r=Gj(c[q>>2]|0,c[k>>2]|0)|0;Ax(t|0,r|0,Hj(c[k>>2]|0)|0)|0;tj(c[q>>2]|0)}else zm(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 Qj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Fj(c[d>>2]|0)|0;i=b;return a|0}function Rj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Hj(c[d>>2]|0)|0;i=b;return a|0}function Sj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=Tj(c[g>>2]|0)|0;break a}break}case 10:{c[m>>2]=Tj(c[g>>2]|0)|0;if(!(c[m>>2]|0)){c[n>>2]=Uj(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){Ax(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]=Xj(Vj(c[g>>2]|0,p,0)|0)|0;break}default:c[m>>2]=61}while(0);i=f;return c[m>>2]|0}function Tj(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=b;c[g>>2]=pj(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 Uj(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))ba();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]=pj(c[g>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=c[g>>2];xf(37418,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 Vj(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))ba();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]=pj(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]=Db[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=Wj(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=Wj(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=37971;else q=c[m>>2]|0?37932:37951;Nb[p&1](43136,k,37993,q);n=c[l>>2]|0;o=Wj(n)|0;i=f;return o|0}function Wj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Nj(1,c[d>>2]|0)|0;i=b;return a|0}function Xj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Yj(){return 0}function Zj(){return 0}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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[17692]=c[e>>2];c[17693]=c[f>>2];i=d;return}function $j(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))ba();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]=ak(c[g>>2]|0,1,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;ck(10);i=f;return c[m>>2]|0}function ak(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))ba();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;wf(37447,l)}c[C>>2]=_f(c[1084]<<2)|0;c[u>>2]=Xp(2)|0;c[v>>2]=Xp(3)|0;l=c[m>>2]|0;if(c[n>>2]|0)E=tq(l)|0;else E=sq(l)|0;c[r>>2]=E;c[w>>2]=mq(c[r>>2]|0)|0;c[t>>2]=mq(c[r>>2]|0)|0;c[s>>2]=mq(c[r>>2]|0)|0;c[B>>2]=0;c[A>>2]=0;a:while(1){c[D>>2]=0;vq(c[r>>2]|0,c[m>>2]|0,c[o>>2]|0);Ro(c[r>>2]|0,(c[m>>2]|0)-1|0);if(c[n>>2]|0)Qo(c[r>>2]|0,(c[m>>2]|0)-2|0);Qo(c[r>>2]|0,0);c[x>>2]=0;while(1){E=e[16508+(c[x>>2]<<1)>>1]|0;c[y>>2]=E;if(!E)break;E=bp(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[16508+(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)){Ho(c[s>>2]|0,c[r>>2]|0,c[z>>2]|0);c[B>>2]=(c[B>>2]|0)+1;Jo(c[t>>2]|0,c[s>>2]|0,1);tp(c[w>>2]|0,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0);if((Yo(c[w>>2]|0,1)|0)==0?bk(c[s>>2]|0,5,B)|0:0){if(!(Po(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(!(Mb[c[p>>2]&7](c[q>>2]|0,c[s>>2]|0)|0)){F=28;break a}ck(47)}E=(c[D>>2]|0)+1|0;c[D>>2]=E;if((E|0)==10){ck(46);c[D>>2]=0}}c[z>>2]=(c[z>>2]|0)+2}if((F|0)==24){F=0;ck(10);yf(37595,k)}ck(58)}if((F|0)==28){eq(c[u>>2]|0);eq(c[v>>2]|0);eq(c[w>>2]|0);eq(c[t>>2]|0);eq(c[r>>2]|0);Wf(c[C>>2]|0);i=h;return c[s>>2]|0}return 0}function bk(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))ba();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]=Yp(c[(c[f>>2]|0)+4>>2]|0)|0;c[l>>2]=Yp(c[(c[f>>2]|0)+4>>2]|0)|0;c[m>>2]=Yp(c[(c[f>>2]|0)+4>>2]|0)|0;c[n>>2]=Yp(c[(c[f>>2]|0)+4>>2]|0)|0;c[o>>2]=Xp(2)|0;c[t>>2]=0;c[u>>2]=Oo(c[f>>2]|0)|0;if((c[g>>2]|0)<5)c[g>>2]=5;Jo(c[n>>2]|0,c[f>>2]|0,1);c[p>>2]=jq(c[n>>2]|0)|0;c[s>>2]=vp(c[p>>2]|0)|0;ep(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){vq(d,c[u>>2]|0,0);b=(Po(c[k>>2]|0,(c[u>>2]|0)-2|0)|0)!=0;Ro(c[k>>2]|0,(c[u>>2]|0)-2|0);if(!b)To(c[k>>2]|0,(c[u>>2]|0)-2|0);if((Zo(c[k>>2]|0,c[n>>2]|0)|0)>=0){v=11;break}if((Yo(c[k>>2]|0,1)|0)<=0){v=11;break}}else pq(d,2)|0;tp(c[l>>2]|0,c[k>>2]|0,c[p>>2]|0,c[f>>2]|0);if(Yo(c[l>>2]|0,1)|0?Zo(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=(Zo(c[l>>2]|0,c[n>>2]|0)|0)!=0;else w=0;x=c[l>>2]|0;if(!w)break;tp(x,c[l>>2]|0,c[o>>2]|0,c[f>>2]|0);if(!(Yo(c[l>>2]|0,1)|0)){v=23;break a}c[r>>2]=(c[r>>2]|0)+1}if(Zo(x,c[n>>2]|0)|0){v=23;break}}ck(43);c[q>>2]=(c[q>>2]|0)+1}if((v|0)==11)sf(37494,37566,951,37577);else if((v|0)==22){c[t>>2]=1;y=c[k>>2]|0;eq(y);z=c[l>>2]|0;eq(z);A=c[m>>2]|0;eq(A);B=c[n>>2]|0;eq(B);C=c[p>>2]|0;eq(C);D=c[o>>2]|0;eq(D);E=c[t>>2]|0;i=e;return E|0}else if((v|0)==23){y=c[k>>2]|0;eq(y);z=c[l>>2]|0;eq(z);A=c[m>>2]|0;eq(A);B=c[n>>2]|0;eq(B);C=c[p>>2]|0;eq(C);D=c[o>>2]|0;eq(D);E=c[t>>2]|0;i=e;return E|0}return 0}function ck(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(c[17692]|0)){i=b;return}Eb[c[17692]&15](c[17693]|0,37586,c[d>>2]|0,0,0);i=b;return}function dk(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))ba();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[16508+(c[q>>2]<<1)>>1]|0;c[r>>2]=g;v=c[l>>2]|0;if(!g)break;if(fp(v,c[r>>2]|0)|0){w=4;break}c[q>>2]=(c[q>>2]|0)+1}if((w|0)==4){c[k>>2]=((Yo(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]=mq(v)|0;c[u>>2]=mq(c[l>>2]|0)|0;Jo(c[u>>2]|0,c[l>>2]|0,1);tp(c[t>>2]|0,c[m>>2]|0,c[u>>2]|0,c[l>>2]|0);eq(c[u>>2]|0);u=(Yo(c[t>>2]|0,1)|0)!=0;eq(c[t>>2]|0);if(u){ck(46);c[k>>2]=0;x=c[k>>2]|0;i=h;return x|0}if(!(c[o>>2]|0?!(Db[c[o>>2]&63](c[p>>2]|0,2,c[l>>2]|0)|0):0))w=10;do if((w|0)==10?bk(c[l>>2]|0,c[n>>2]|0,s)|0:0){if(c[o>>2]|0?(Db[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);ck(46);c[k>>2]=0;x=c[k>>2]|0;i=h;return x|0}function ek(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))ba();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?Po(c[o>>2]|0,0)|0:0){c[r>>2]=fk(c[m>>2]|0)|0;c[s>>2]=fk(c[n>>2]|0)|0;c[t>>2]=mq(c[l>>2]|0)|0;rp(c[t>>2]|0,c[r>>2]|0,c[s>>2]|0);c[w>>2]=mq(c[r>>2]|0)|0;mp(c[w>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;rp(c[w>>2]|0,c[w>>2]|0,c[s>>2]|0);c[v>>2]=c[w>>2];c[w>>2]=mq(c[s>>2]|0)|0;mp(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;rp(c[w>>2]|0,c[w>>2]|0,c[r>>2]|0);Ko(c[v>>2]|0,c[v>>2]|0,c[w>>2]|0);if(c[(c[v>>2]|0)+8>>2]|0)Io(c[v>>2]|0,c[v>>2]|0,c[t>>2]|0);c[u>>2]=c[w>>2];c[w>>2]=0;Mo(c[u>>2]|0,c[v>>2]|0,c[l>>2]|0,c[t>>2]|0);Io(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);eq(c[v>>2]|0);if((Zo(c[u>>2]|0,c[l>>2]|0)|0)<0)Io(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0);c[x>>2]=Xp(2)|0;c[y>>2]=mq(c[u>>2]|0)|0;Jo(c[t>>2]|0,c[t>>2]|0,1);Jo(c[u>>2]|0,c[u>>2]|0,1);while(1){c[z>>2]=gp(c[y>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;Ho(c[u>>2]|0,c[u>>2]|0,1);if(c[z>>2]|0){if(dk(c[u>>2]|0,c[x>>2]|0,64,0,0)|0)break}else ck(47);Io(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0)}eq(c[y>>2]|0);eq(c[x>>2]|0);eq(c[t>>2]|0);ck(10);t=c[r>>2]|0;if(c[p>>2]|0)c[c[p>>2]>>2]=t;else eq(t);t=c[s>>2]|0;if(c[q>>2]|0)c[c[q>>2]>>2]=t;else eq(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 fk(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=Xp(2)|0;c[f>>2]=jq(c[d>>2]|0)|0;Qo(c[f>>2]|0,0);while(1){if(!((dk(c[f>>2]|0,c[e>>2]|0,64,0,0)|0)!=0^1))break;Ho(c[f>>2]|0,c[f>>2]|0,2)}eq(c[e>>2]|0);i=b;return c[f>>2]|0}function gk(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))ba();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=(tg(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]=wg(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((jw(c[l>>2]|0,37625,3)|0)==0&(c[o>>2]|0)==5){c[o>>2]=4;c[p>>2]=c[p>>2]|4;break a}if((jw(c[l>>2]|0,37629,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(!(jw(c[l>>2]|0,37633,4)|0)){c[p>>2]=c[p>>2]|1024;break a}if((jw(c[l>>2]|0,37638,4)|0)==0&(c[o>>2]|0)==5){c[o>>2]=3;c[p>>2]=c[p>>2]|4;break a}if(!(jw(c[l>>2]|0,47100,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(!(jw(c[l>>2]|0,47094,5)|0)){c[o>>2]=0;c[p>>2]=c[p>>2]|4096;break a}if((jw(c[l>>2]|0,37643,5)|0)==0&(c[o>>2]|0)==5){c[o>>2]=1;c[p>>2]=c[p>>2]|4;break a}if(!(jw(c[l>>2]|0,37649,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(!(jw(c[l>>2]|0,37655,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(!(jw(c[l>>2]|0,37662,7)|0)){c[p>>2]=c[p>>2]|2;break a}if((jw(c[l>>2]|0,37670,7)|0)==0|(c[q>>2]|0)!=0)break a;c[k>>2]=72;break a;break}case 8:{if(!(jw(c[l>>2]|0,39356,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((jw(c[l>>2]|0,37678,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(!(jw(c[l>>2]|0,37688,10)|0)){c[q>>2]=1;break a}if(!(jw(c[l>>2]|0,37699,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(!(jw(c[l>>2]|0,37710,11)|0)){c[p>>2]=c[p>>2]|1;break a}if(!(jw(c[l>>2]|0,37722,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(!(jw(c[l>>2]|0,37734,13)|0)){c[p>>2]=c[p>>2]|256;break a}if(!(jw(c[l>>2]|0,47140,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 hk(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))ba();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]=sg(c[g>>2]|0,37748,0)|0;if(!(c[g>>2]|0)){c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}c[l>>2]=wg(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){qg(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Ax(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=Wv(k,0,0)|0;c[c[h>>2]>>2]=m;qg(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 0}function ik(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))ba();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]=sg(c[g>>2]|0,37754,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]=wg(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){qg(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Ax(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=Wv(k,0,0)|0;c[c[h>>2]>>2]=m;qg(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 0}function jk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,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))ba();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]=sg(c[g>>2]|0,37764,0)|0;do if(c[n>>2]|0){c[o>>2]=ug(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=zg(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(dv(c[p>>2]|0,47134)|0)){qg(c[o>>2]|0);c[o>>2]=ug(c[n>>2]|0,2)|0;if(!(c[o>>2]|0)){c[m>>2]=65;break}Wf(c[p>>2]|0);c[p>>2]=zg(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(!(Sv(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(!(dv(c[p>>2]|0,47094)|0))c[c[l>>2]>>2]=4096;if(!(dv(c[p>>2]|0,47100)|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);Wf(c[p>>2]|0);qg(c[o>>2]|0);qg(c[n>>2]|0);i=f;return c[m>>2]|0}function kk(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))ba();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]=sg(c[g>>2]|0,42099,0)|0;do if(c[n>>2]|0){c[o>>2]=ug(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=zg(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(dv(c[p>>2]|0,47134)|0)){c[m>>2]=gk(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){qg(c[o>>2]|0);c[o>>2]=sg(c[n>>2]|0,37772,0)|0;if(c[o>>2]|0){c[t>>2]=wg(c[o>>2]|0,1,q)|0;if(c[t>>2]|0){g=lk(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}qg(c[o>>2]|0);c[o>>2]=sg(c[n>>2]|0,37856,0)|0;if(c[o>>2]|0){c[t>>2]=wg(c[o>>2]|0,1,q)|0;do if(c[t>>2]|0){if((c[q>>2]|0)>>>0>0){g=Qf(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=g;if(c[(c[l>>2]|0)+20>>2]|0){Ax(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]=fu()|0;break}}}else c[m>>2]=68;while(0);if(c[m>>2]|0)break}}c[s>>2]=2;a:while(1){qg(c[o>>2]|0);g=ug(c[n>>2]|0,c[s>>2]|0)|0;c[o>>2]=g;if(!g)break;c[t>>2]=wg(c[o>>2]|0,0,q)|0;if(!((c[q>>2]|0)==9?!(jw(c[t>>2]|0,37772,9)|0):0))u=30;do if((u|0)==30){u=0;if((c[q>>2]|0)==5?(jw(c[t>>2]|0,37856,5)|0)==0:0)break;if((c[q>>2]|0)!=15)break a;if(jw(c[t>>2]|0,37862,15)|0)break a}while(0);c[s>>2]=(c[s>>2]|0)+1}if(!(c[o>>2]|0)){c[m>>2]=68;break}Wf(c[p>>2]|0);c[p>>2]=zg(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(!(Sv(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);Wf(c[p>>2]|0);qg(c[o>>2]|0);qg(c[n>>2]|0);i=f;return c[m>>2]|0}function lk(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))ba();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[4340+(c[k>>2]<<3)>>2]|0))break;d=Hv(c[4340+(c[k>>2]<<3)>>2]|0)|0;if((d|0)==(c[g>>2]|0)?(jw(c[4340+(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[4340+(c[k>>2]<<3)>>2]|0){c[h>>2]=c[4340+(c[k>>2]<<3)+4>>2];m=c[h>>2]|0;i=e;return m|0}c[l>>2]=Qf((c[g>>2]|0)+1|0)|0;if(c[l>>2]|0){Ax(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]=kj(c[l>>2]|0)|0;Wf(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 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))ba();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 nk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;Wf(c[(c[d>>2]|0)+20>>2]|0);i=b;return} -function Jp(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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=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))ba();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;R=h+184|0;S=h+180|0;T=h+176|0;U=h+172|0;V=h+168|0;W=h+164|0;X=h+160|0;Y=h+156|0;Z=h+152|0;$=h+148|0;aa=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:{Ff();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]=_(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]=_(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]=_(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]=_(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[R>>2]=(c[c[m>>2]>>2]|0)+(c[N>>2]|0);c[J>>2]=(c[Q>>2]|0)-(c[N>>2]|0)+0+((c[R>>2]|0)>>>0<(c[c[m>>2]>>2]|0)>>>0&1);c[K>>2]=c[R>>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[S>>2]=(c[M>>2]|0)>>>16;c[T>>2]=c[M>>2]&65535;c[W>>2]=((c[J>>2]|0)>>>0)%((c[S>>2]|0)>>>0)|0;c[U>>2]=((c[J>>2]|0)>>>0)/((c[S>>2]|0)>>>0)|0;c[Y>>2]=_(c[U>>2]|0,c[T>>2]|0)|0;c[W>>2]=c[W>>2]<<16|(c[K>>2]|0)>>>16;if(((c[W>>2]|0)>>>0<(c[Y>>2]|0)>>>0?(c[U>>2]=(c[U>>2]|0)+-1,c[W>>2]=(c[W>>2]|0)+(c[M>>2]|0),(c[W>>2]|0)>>>0>=(c[M>>2]|0)>>>0):0)?(c[W>>2]|0)>>>0<(c[Y>>2]|0)>>>0:0){c[U>>2]=(c[U>>2]|0)+-1;c[W>>2]=(c[W>>2]|0)+(c[M>>2]|0)}c[W>>2]=(c[W>>2]|0)-(c[Y>>2]|0);c[X>>2]=((c[W>>2]|0)>>>0)%((c[S>>2]|0)>>>0)|0;c[V>>2]=((c[W>>2]|0)>>>0)/((c[S>>2]|0)>>>0)|0;c[Y>>2]=_(c[V>>2]|0,c[T>>2]|0)|0;c[X>>2]=c[X>>2]<<16|c[K>>2]&65535;if(((c[X>>2]|0)>>>0<(c[Y>>2]|0)>>>0?(c[V>>2]=(c[V>>2]|0)+-1,c[X>>2]=(c[X>>2]|0)+(c[M>>2]|0),(c[X>>2]|0)>>>0>=(c[M>>2]|0)>>>0):0)?(c[X>>2]|0)>>>0<(c[Y>>2]|0)>>>0:0){c[V>>2]=(c[V>>2]|0)+-1;c[X>>2]=(c[X>>2]|0)+(c[M>>2]|0)}c[X>>2]=(c[X>>2]|0)-(c[Y>>2]|0);c[P>>2]=c[U>>2]<<16|c[V>>2];c[Q>>2]=c[X>>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[Z>>2]=_(c[da>>2]|0,c[ea>>2]|0)|0;c[$>>2]=_(c[da>>2]|0,c[ga>>2]|0)|0;c[aa>>2]=_(c[fa>>2]|0,c[ea>>2]|0)|0;c[ca>>2]=_(c[fa>>2]|0,c[ga>>2]|0)|0;c[$>>2]=(c[$>>2]|0)+((c[Z>>2]|0)>>>16);c[$>>2]=(c[$>>2]|0)+(c[aa>>2]|0);if((c[$>>2]|0)>>>0<(c[aa>>2]|0)>>>0)c[ca>>2]=(c[ca>>2]|0)+65536;c[J>>2]=(c[ca>>2]|0)+((c[$>>2]|0)>>>16);c[K>>2]=((c[$>>2]&65535)<<16)+(c[Z>>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?(lp(c[m>>2]|0,c[o>>2]|0,(c[p>>2]|0)-1|0)|0)<0:0)break;Up(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]=_(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]=_(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]=_(c[Ga>>2]|0,c[Ha>>2]|0)|0;c[Da>>2]=_(c[Ga>>2]|0,c[Ja>>2]|0)|0;c[Ea>>2]=_(c[Ia>>2]|0,c[Ha>>2]|0)|0;c[Fa>>2]=_(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]=Np(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)){Hp(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 Kp(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))ba();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[45773+((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]=_(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]=_(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]=_(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]=_(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]=_(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]=_(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 Lp(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))ba();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 Mp(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))ba();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]=_(c[u>>2]|0,c[v>>2]|0)|0;c[r>>2]=_(c[u>>2]|0,c[x>>2]|0)|0;c[s>>2]=_(c[w>>2]|0,c[v>>2]|0)|0;c[t>>2]=_(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 Np(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))ba();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]=_(c[v>>2]|0,c[w>>2]|0)|0;c[s>>2]=_(c[v>>2]|0,c[y>>2]|0)|0;c[t>>2]=_(c[x>>2]|0,c[w>>2]|0)|0;c[u>>2]=_(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 Op(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))ba();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]=Mp(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]=Hp(c[g>>2]|0,c[g>>2]|0,c[h>>2]|0,c[l>>2]|0)|0}else c[n>>2]=Tt(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 Pp(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))ba();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)Op(e,d,b,a)|0;else Pp(e,d,b,a,c[n>>2]|0);c[p>>2]=Tt((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]=Tt((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)Op(f,p,o,a)|0;else Pp(f,p,o,a,c[n>>2]|0);a=(lp((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){Up(o,p+(c[q>>2]<<2)|0,c[k>>2]|0,c[q>>2]|0)|0;c[s>>2]=0}else{Up(o,p,(c[k>>2]|0)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;c[s>>2]=1}p=(lp((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){Up(o,a+(c[q>>2]<<2)|0,c[l>>2]|0,c[q>>2]|0)|0;c[s>>2]=c[s>>2]^1}else Up(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)Op(a,o,p,f)|0;else Pp(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]=Hp((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=Up(t,f,p,o)|0;c[r>>2]=(c[r>>2]|0)-s}else{s=Hp(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)Op(s,o,k,l)|0;else Pp(s,o,k,l,(c[n>>2]|0)+(c[m>>2]<<2)|0);l=Hp((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)hp((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]=Hp((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}hp((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 Qp(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))ba();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)$p(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(Uf(c[l>>2]|0)|0)r=1;else r=(Uf(c[n>>2]|0)|0)!=0;f=Zp(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)Op(f,r,g,e)|0;else Pp(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)$p(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(Uf(c[l>>2]|0)|0)s=1;else s=(Uf(c[n>>2]|0)|0)!=0;g=Zp(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)Op(g,s,e,r)|0;else Pp(g,s,e,r,c[(c[p>>2]|0)+4>>2]|0);c[q>>2]=Hp(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[o>>2]|0)|0;hp((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)Rp(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=bg(1,28)|0;c[c[p>>2]>>2]=r}Qp(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]=Hp(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[o>>2]|0)|0;hp((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 Rp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,k=0,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))ba();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;Qp(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,r);Sp(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]=Mp(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]=Hp(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else c[q>>2]=Tt(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 Sp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;if(c[(c[d>>2]|0)+16>>2]|0)$p(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)$p(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)$p(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)$p(c[(c[d>>2]|0)+4>>2]|0,c[(c[d>>2]|0)+8>>2]|0);Wf(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}function Tp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,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))ba();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 Up(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))ba();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 Vp(){return 46123}function Wp(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();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=Xp(c[e>>2]|0)|0;c[70828+(c[d>>2]<<2)>>2]=g;c[(c[70828+(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];xf(46267,b)}else if((f|0)==12){i=a;return 0}return 0}function Xp(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=Yp(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 Yp(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=_f(20)|0;if(c[d>>2]|0)f=Zp(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 Zp(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))ba();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=ag(b)|0;else k=_f(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 _p(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=_f(20)|0;if(c[d>>2]|0)f=Zp(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 $p(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))ba();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=Jx(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);Wf(c[g>>2]|0);i=f;return}function aq(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;$p(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 bq(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))ba();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=cg(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}else{k=bg(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}}else{k=$f(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 cq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&16|0:0){dq();i=b;return}c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function dq(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();tf(46298,a);i=a;return}function eq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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)Wf(a);else $p(a,c[c[d>>2]>>2]|0);if(c[(c[d>>2]|0)+12>>2]&-3864|0)xf(46342,b);Wf(c[d>>2]|0);i=b;return}function fq(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))ba();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]=Yp(0)|0;if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&16|0:0){dq();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)Wf(d);else $p(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(Uf(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 gq(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))ba();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=(Uf(c[h>>2]|0)|0)!=0;b=c[m>>2]|0;if(d)n=Tf(b)|0;else n=Qf(b)|0;c[l>>2]=n;if(c[l>>2]|0){Ax(c[l>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[f>>2]=fq(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 hq(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))ba();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))xf(46374,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 iq(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))ba();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]=hq(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=(Uf(c[h>>2]|0)|0)!=0;f=c[l>>2]|0;if(g)n=Tf(f)|0;else n=Qf(f)|0;c[k>>2]=n;if(c[k>>2]|0)Ax(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 jq(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))ba();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=(Uf(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=ag(h)|0;else k=_f(h)|0;c[g>>2]=k;if(c[(c[d>>2]|0)+16>>2]|0)Ax(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]=fq(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=_p(c[(c[d>>2]|0)+4>>2]|0)|0;else m=Yp(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 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))ba();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){dq();i=d;return}}else lq(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 lq(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))ba();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]=Yp(c[(c[g>>2]|0)+4>>2]|0)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){dq();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))bq(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 mq(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))ba();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=(Uf(c[(c[d>>2]|0)+16>>2]|0)|0)!=0;h=c[f>>2]|0;if(a)k=Tf(h)|0;else k=Qf(h)|0;c[g>>2]=k;Ax(c[g>>2]|0,c[(c[d>>2]|0)+16>>2]|0,c[f>>2]|0)|0;c[e>>2]=fq(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=_p(c[(c[d>>2]|0)+4>>2]|0)|0;else m=Yp(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 nq(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))ba();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){dq();i=d;return}aq(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}eq(c[f>>2]|0);i=d;return}function oq(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))ba();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))xf(46404,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 pq(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))ba();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]=Yp(1)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){dq();c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}if((c[c[f>>2]>>2]|0)<1)bq(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 qq(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))ba();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 rq(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))ba();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))xf(46435,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 sq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Yp((((c[d>>2]|0)+32-1|0)>>>0)/32|0)|0;i=b;return a|0}function tq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=_p((((c[d>>2]|0)+32-1|0)>>>0)/32|0)|0;i=b;return a|0}function uq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;eq(c[d>>2]|0);i=b;return}function vq(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))ba();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){dq();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=ag(c[l>>2]|0)|0;else m=_f(c[l>>2]|0)|0;c[k>>2]=m;Qn(c[k>>2]|0,c[l>>2]|0)}else{if(g?c[(c[f>>2]|0)+12>>2]&1|0:0)n=Ln(c[l>>2]|0,c[h>>2]|0)|0;else n=Jn(c[l>>2]|0,c[h>>2]|0)|0;c[k>>2]=n}zp(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0,0);Wf(c[k>>2]|0);i=e;return}function wq(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))ba();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:xf(46467,d)}return 0}function xq(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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;xf(46267,d)}if(c[70828+(a<<2)>>2]|0){i=b;return c[70828+(c[e>>2]<<2)>>2]|0}else xf(46487,b+8|0);return 0}function yq(){return 46518}function zq(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))ba();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]=px(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){Ax(n|0,c[h>>2]|0,c[k>>2]|0)|0;Ax((c[l>>2]|0)+105|0,c[h>>2]|0,c[k>>2]|0)|0}else{c[o>>2]=zq(0,0)|0;if(c[o>>2]|0){Aq(c[o>>2]|0,c[h>>2]|0,c[k>>2]|0);Dq(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));Eq(c[o>>2]|0);break}qx(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;Aq(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 Aq(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))ba();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){Bq(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}Aq(c[g>>2]|0,0,0);if(!(c[k>>2]|0)){i=f;return}}while(1){if((c[k>>2]|0)>>>0<64)break;Bq(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 Bq(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))ba();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=Cq(c[v+((c[w>>2]|0)-2<<2)>>2]|0,17)|0;x=u^(Cq(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=Cq(c[v+((c[w>>2]|0)-15<<2)>>2]|0,7)|0;h=x^(Cq(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=Cq(c[o>>2]|0,6)|0;x=u^(Cq(c[o>>2]|0,11)|0);u=h+(x^(Cq(c[o>>2]|0,25)|0))|0;c[s>>2]=u+(c[q>>2]^c[o>>2]&(c[p>>2]^c[q>>2]))+(c[12576+(c[w>>2]<<2)>>2]|0)+(c[v+(c[w>>2]<<2)>>2]|0);u=Cq(c[k>>2]|0,2)|0;x=u^(Cq(c[k>>2]|0,13)|0);u=x^(Cq(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 Cq(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))ba();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 Dq(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))ba();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}Aq(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}Aq(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];Bq(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 Eq(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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);qx(c[e>>2]|0);i=d;return}function Fq(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))ba();f=e+12|0;g=e+8|0;h=e+4|0;k=e;c[g>>2]=b;c[h>>2]=d;Dq(c[g>>2]|0);do if((a[(c[g>>2]|0)+40>>0]<<6&255)<<24>>24>>7<<24>>24|0){c[k>>2]=zq(0,0)|0;if(c[k>>2]|0){Aq(c[k>>2]|0,(c[g>>2]|0)+105|0,64);Aq(c[k>>2]|0,(c[g>>2]|0)+41|0,32);Dq(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));Eq(c[k>>2]|0);break}qx(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 Gq(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))ba();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}Bx((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]=Db[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}Hq(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){Df((c[z>>2]|0)+16|0);Ef()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Hq(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))ba();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 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,A=0,B=0;k=i;i=i+80|0;if((i|0)>=(j|0))ba();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;Bx(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;Hq(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]=Db[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]=jw(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){Df((c[z>>2]|0)+16|0);Ef()}c[l>>2]=c[r>>2]|0?10:0;B=c[l>>2]|0;i=k;return B|0}function Jq(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))ba();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){Lb[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=_(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=_(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;Kq(c[n>>2]|0,c[p>>2]|0,c[s>>2]|0,c[u>>2]|0);c[y>>2]=Db[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))Lq((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]=Db[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;Lq((c[m>>2]|0)+64|0,c[n>>2]|0,c[u>>2]|0)}if((c[x>>2]|0)>>>0>0){Df((c[x>>2]|0)+16|0);Ef()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Kq(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))ba();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 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))ba();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(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))ba();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;Lq((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){Eb[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=_(c[u>>2]|0,c[s>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+n;n=_(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]=Db[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;Nq(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;Lq((c[l>>2]|0)+96|0,(c[l>>2]|0)+64|0,c[s>>2]|0);Lq((c[l>>2]|0)+64|0,(c[o>>2]|0)+(c[s>>2]|0)|0,c[x>>2]|0);c[w>>2]=Db[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;Kq(c[m>>2]|0,c[m>>2]|0,(c[l>>2]|0)+64|0,c[x>>2]|0);Lq((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]=Db[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;Kq(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){Df((c[v>>2]|0)+16|0);Ef()}c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function Nq(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))ba();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 Oq(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))ba();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{xx((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];Ax((c[h>>2]|0)+80+1|0,c[k>>2]|0,c[l>>2]|0)|0;xx((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];Ax((c[h>>2]|0)+64+1|0,c[k>>2]|0,c[l>>2]|0)|0;xx((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 Pq(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))ba();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){Qq((c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0,(c[l>>2]|0)+128+20|0,16);c[u>>2]=Db[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;Lb[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=Jx(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;Qq((c[l>>2]|0)+64|0,(c[l>>2]|0)+64|0,c[m>>2]|0,16);c[A>>2]=Db[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 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))ba();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,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))ba();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=wx(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]=Pq(c[m>>2]|0,c[p>>2]|0,c[q>>2]|0,0)|0;if(c[r>>2]|0){Df((c[r>>2]|0)+20|0);Ef()}c[l>>2]=$q(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 Sq(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))ba();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]=$q(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=wx(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]=Pq(c[m>>2]|0,c[n>>2]|0,c[q>>2]|0,0)|0;if(c[s>>2]|0){Df((c[s>>2]|0)+20|0);Ef()}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 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,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))ba();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));Uq(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));Uq(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;Eb[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=_(c[v>>2]|0,c[r>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+p;p=_(c[v>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+p;p=_(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]=Db[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;Uq(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){Vq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=Db[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;Uq(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){Vq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=Db[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);Uq(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){Df((c[t>>2]|0)+16|0);Ef()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function Uq(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))ba();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 Vq(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))ba();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 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,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))ba();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));Xq(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));Xq(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;Eb[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=_(c[v>>2]|0,c[r>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+p;p=_(c[v>>2]|0,c[r>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+p;p=_(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]=Db[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;Xq(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){Vq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=Db[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;Xq(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){Vq((c[k>>2]|0)+96|0,(c[k>>2]|0)+64|0,c[r>>2]|0);c[u>>2]=Db[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);Xq(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){Df((c[t>>2]|0)+16|0);Ef()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function Xq(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))ba();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;Yq(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Yq(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))ba();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 Zq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;_q(c[d>>2]|0);i=b;return 0}function _q(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))ba();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)rf(46746,113,46760);xx(q|0,0,c[g>>2]|0)|0;c[n>>2]=Db[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=Jx(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}Df((c[n>>2]|0)+16|0);Ef();i=e;return}function $q(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))ba();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)sf(46782,46804,53,46817);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;ar(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){Eb[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=_(c[v>>2]|0,c[u>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+G;G=_(c[v>>2]|0,c[u>>2]|0)|0;c[n>>2]=(c[n>>2]|0)+G;G=_(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]=Db[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;ar(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)br((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=Jx(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){Df((c[w>>2]|0)+16|0);Ef()}c[l>>2]=0;F=c[l>>2]|0;i=k;return F|0}function ar(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))ba();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 br(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))ba();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 cr(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))ba();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))dr(c[m>>2]|0,76427,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)){hr(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}fr((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(kr((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]=$q(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{hr(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 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+16|0;if((i|0)>=(j|0))ba();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(!(vh()|0)){l=c[g>>2]|0;m=c[h>>2]|0;n=c[k>>2]|0;o=er(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=er(l,m,n)|0;i=f;return o|0}function er(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))ba();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;fr(n,c[m>>2]|0);f=(gr(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}hr(e,(c[k>>2]|0)+80|0,c[l>>2]|0,c[m>>2]|0,1);c[o+8+4>>2]=Cx(c[n>>2]<<3|0)|0;c[o+8>>2]=Cx((c[n>>2]|0)>>>29|c[n+4>>2]<<3|0)|0;c[o+4>>2]=0;c[o>>2]=0;hr(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=Jx(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=Jx(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{Ax((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);Db[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;jr((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 fr(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))ba();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 gr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 hr(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))ba();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;ir((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]=Kb[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]=Kb[c[r>>2]&7](c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[s>>2]|0)|0;g=_(c[p>>2]|0,c[s>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+g;g=_(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)sf(46842,46862,499,46875);c[(c[k>>2]|0)+128+32>>2]=c[q>>2];if(!(c[u>>2]|0)){i=h;return}Df(c[u>>2]|0);Ef();i=h;return}function ir(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))ba();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 jr(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))ba();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=Cx(c[c[g>>2]>>2]|0)|0;c[h>>2]=e+(c[f>>2]|0);f=Cx(c[h>>2]|0)|0;c[c[g>>2]>>2]=f;i=d;return c[h>>2]|0}function kr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 lr(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))ba();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))dr(c[m>>2]|0,76443,16)|0;if(!((d[(c[m>>2]|0)+128+68>>0]|0)>>>1&1)){hr(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}fr((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(kr((c[m>>2]|0)+128+44|0)|0)!=0;g=c[m>>2]|0;if(h){hr(g,(c[m>>2]|0)+128|0,c[p>>2]|0,c[q>>2]|0,0);c[l>>2]=$q(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 mr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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;Db[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;nr(c[d>>2]|0);i=b;return}function nr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;c[(c[d>>2]|0)+128+96>>2]=2;sr((c[d>>2]|0)+128+80|0,(c[d>>2]|0)+128+100|0);i=b;return}function or(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))ba();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]=pr(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 pr(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))ba();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;qr(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=Fx(e[17846+((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[17846+((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=Fx(e[17846+((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]}rr(c[h>>2]|0,c[n>>2]|0);rr((c[h>>2]|0)+4|0,c[n+4>>2]|0);rr((c[h>>2]|0)+8|0,c[n+8>>2]|0);rr((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=g;return 76}function qr(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))ba();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 rr(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))ba();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 sr(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))ba();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=tr(c[e>>2]|0)|0;c[(c[f>>2]|0)+128>>2]=b;b=tr((c[e>>2]|0)+4|0)|0;c[(c[f>>2]|0)+132>>2]=b;b=tr((c[e>>2]|0)+8|0)|0;c[(c[f>>2]|0)+136>>2]=b;b=tr((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];ur(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 tr(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 ur(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))ba();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 vr(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))ba();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]=wr(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}yr(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;Ar(o);c[m>>2]=(c[m>>2]|0)+-1}c[g>>2]=o;n=c[g>>2]|0;i=f;return n|0}function wr(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))ba();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]=xr(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(xr(g)|0);h=c[e>>2]|0;i=d;return h|0}return 0}function xr(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=(c[d>>2]|0)!=0;e=zx(c[d>>2]|0)|0;i=b;return (a?e:32)|0}function yr(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)!=(c[f>>2]|0))zr(c[e>>2]|0,c[f>>2]|0,16);Ar(c[e>>2]|0);i=d;return}function zr(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))ba();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 Ar(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))ba();d=b+24|0;e=b+16|0;f=b+8|0;g=b;c[d>>2]=a;a=Br(c[d>>2]|0)|0;h=f;c[h>>2]=a;c[h+4>>2]=C;h=Br((c[d>>2]|0)+8|0)|0;a=g;c[a>>2]=h;c[a+4>>2]=C;a=f;h=Dx(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=yx(c[a>>2]|0,c[a+4>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0;h=C;a=g;l=Ex(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=yx(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;Cr(c[d>>2]|0,c[a>>2]|0,c[a+4>>2]|0);a=g;Cr((c[d>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=b;return}function Br(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))ba();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];e=Fx(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Fx(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Fx(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Fx(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Fx(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Fx(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 Cr(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))ba();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=Ex(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Ex(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Ex(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=Ex(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Ex(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Ex(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 Dr(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))ba();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]=Db[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;yr((c[k>>2]|0)+128+16|0,(c[k>>2]|0)+128|0);yr((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;yr((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}xx(n|0,0,16-(c[m>>2]|0)|0)|0;zr(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]=Db[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;zr(o,n,16);Er(o+16|0,n,n+1|0,8);Fr((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=Jx(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=Jx(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){Df((c[r>>2]|0)+16|0);Ef()}c[h>>2]=0;E=c[h>>2]|0;i=g;return E|0}function Er(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))ba();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 Fr(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))ba();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 Gr(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))ba();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 Hr(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))ba();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=Ir(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 Ir(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))ba();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){Eb[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)Jr((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=yx(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;Gr(k,vr(c[n>>2]|0,t,c[h>>2]|0,c[h+4>>2]|0)|0,16);Er(c[p>>2]|0,(c[n>>2]|0)+64|0,c[r>>2]|0,16);c[v>>2]=Db[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;Gr(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))Jr((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){Gr((c[n>>2]|0)+64|0,(c[n>>2]|0)+128|0,16);c[v>>2]=Db[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){zr(t,c[r>>2]|0,c[s>>2]|0);xx(t+(c[s>>2]|0)|0,0,16-(c[s>>2]|0)|0)|0;a[t+(c[s>>2]|0)>>0]=-128;Gr((c[n>>2]|0)+80|0,t,16);Er(c[p>>2]|0,c[r>>2]|0,y,c[s>>2]|0);break}else{zr(t,y,16);zr(t,c[r>>2]|0,c[s>>2]|0);Gr(t,y,16);a[t+(c[s>>2]|0)>>0]=-128;zr(c[p>>2]|0,t,c[s>>2]|0);Gr((c[n>>2]|0)+80|0,t,16);break}}while(0);if((d[(c[n>>2]|0)+56>>0]|0)>>>3&1|0){Er((c[n>>2]|0)+128+288|0,(c[n>>2]|0)+80|0,(c[n>>2]|0)+64|0,16);Gr((c[n>>2]|0)+128+288|0,(c[n>>2]|0)+128+16|0,16);c[v>>2]=Db[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){Df((c[u>>2]|0)+16|0);Ef()}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 Jr(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))ba();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;Gr(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 Kr(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))ba();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=Ir(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 Lr(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))ba();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));Mr(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));Mr(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]=Db[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;Mr(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]=Db[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);Mr(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){Df((c[s>>2]|0)+16|0);Ef()}c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}function Mr(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))ba();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 Nr(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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=Or(c[e>>2]|0,f,8)|0;i=d;return b|0}function Or(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))ba();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;Ib[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));Nb[c[(c[(c[k>>2]|0)+12>>2]|0)+44>>2]&1]((c[k>>2]|0)+496|0,n,n,64);c[o>>2]=ts((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=Jx(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 Pr(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))ba();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 Qr(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))ba();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]=Nr(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))Rr(c[m>>2]|0);r=(Pr((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{Nb[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);ps((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 Rr(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=b;Sr(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 Sr(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))ba();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);ps((c[e>>2]|0)+128+20|0,76459,c[g>>2]|0);i=d;return}function Tr(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))ba();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]=Nr(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))Rr(c[m>>2]|0);r=(Pr((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{ps(o+20|0,c[p>>2]|0,c[q>>2]|0);Nb[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 Ur(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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 Vr(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))ba();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)+((_(c[r>>2]|0,c[q>>2]|0)|0)*3|0)+16;c[B>>2]=Xf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46888;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)+(_(c[q>>2]|0,c[r>>2]|0)|0);c[y>>2]=(c[x>>2]|0)+(_(c[q>>2]|0,c[r>>2]|0)|0);if(Db[c[n>>2]&63](c[v>>2]|0,16,16)|0){Wf(c[B>>2]|0);c[m>>2]=46914;E=c[m>>2]|0;i=l;return E|0}xx(c[z>>2]|0,78,c[r>>2]|0)|0;xx(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}Wr(c[y>>2]|0,c[z>>2]|0,c[w>>2]|0,c[r>>2]|0);Db[c[o>>2]&63](c[v>>2]|0,c[y>>2]|0,c[y>>2]|0)|0;Ax(c[z>>2]|0,c[y>>2]|0,c[r>>2]|0)|0;Eb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,1);if(jw(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){Wf(c[B>>2]|0);c[m>>2]=46928;E=c[m>>2]|0;i=l;return E|0}if(jw(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){Wf(c[B>>2]|0);c[m>>2]=46928;E=c[m>>2]|0;i=l;return E|0}xx(c[z>>2]|0,95,c[r>>2]|0)|0;xx(c[A>>2]|0,95,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(_(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)>=(_(c[q>>2]|0,c[r>>2]|0)|0))break;Wr((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);Db[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;Ax(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)}Eb[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(jw(c[x>>2]|0,c[w>>2]|0,_(c[q>>2]|0,c[r>>2]|0)|0)|0){Wf(c[B>>2]|0);c[m>>2]=46928;E=c[m>>2]|0;i=l;return E|0}q=(jw(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;Wf(c[B>>2]|0);if(q){c[m>>2]=46928;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 Wr(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))ba();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 Xr(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))ba();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)+((_(c[r>>2]|0,c[q>>2]|0)|0)*3|0)+16;c[B>>2]=Xf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46888;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)+(_(c[q>>2]|0,c[r>>2]|0)|0);c[y>>2]=(c[x>>2]|0)+(_(c[q>>2]|0,c[r>>2]|0)|0);if(Db[c[n>>2]&63](c[v>>2]|0,32,16)|0){Wf(c[B>>2]|0);c[m>>2]=46914;E=c[m>>2]|0;i=l;return E|0}xx(c[z>>2]|0,-45,c[r>>2]|0)|0;xx(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}Db[c[o>>2]&63](c[v>>2]|0,c[y>>2]|0,c[z>>2]|0)|0;Yr(c[z>>2]|0,c[y>>2]|0,c[w>>2]|0,c[r>>2]|0);Eb[c[p>>2]&15](c[v>>2]|0,c[A>>2]|0,c[x>>2]|0,c[y>>2]|0,1);if(jw(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){Wf(c[B>>2]|0);c[m>>2]=46977;E=c[m>>2]|0;i=l;return E|0}if(jw(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){Wf(c[B>>2]|0);c[m>>2]=46977;E=c[m>>2]|0;i=l;return E|0}xx(c[z>>2]|0,-26,c[r>>2]|0)|0;xx(c[A>>2]|0,-26,c[r>>2]|0)|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>=(_(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)>=(_(c[q>>2]|0,c[r>>2]|0)|0))break;Db[c[o>>2]&63](c[v>>2]|0,(c[y>>2]|0)+(c[t>>2]|0)|0,c[z>>2]|0)|0;Yr(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)}Eb[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(jw(c[x>>2]|0,c[w>>2]|0,_(c[q>>2]|0,c[r>>2]|0)|0)|0){Wf(c[B>>2]|0);c[m>>2]=46977;E=c[m>>2]|0;i=l;return E|0}q=(jw(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;Wf(c[B>>2]|0);if(q){c[m>>2]=46977;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 Yr(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))ba();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 Zr(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))ba();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)+((_(c[s>>2]|0,c[r>>2]|0)|0)<<2)+16;c[F>>2]=Xf(1,c[H>>2]|0)|0;if(!(c[F>>2]|0)){c[n>>2]=46888;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)+(_(c[r>>2]|0,c[s>>2]|0)|0);c[B>>2]=(c[A>>2]|0)+(_(c[r>>2]|0,c[s>>2]|0)|0);c[C>>2]=(c[B>>2]|0)+(_(c[r>>2]|0,c[s>>2]|0)|0);if(Db[c[o>>2]&63](c[y>>2]|0,48,16)|0){Wf(c[F>>2]|0);c[n>>2]=46914;I=c[n>>2]|0;i=m;return I|0}xx(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}Db[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}xx(c[E>>2]|0,-1,c[s>>2]|0)|0;Eb[c[q>>2]&15](c[y>>2]|0,c[E>>2]|0,c[A>>2]|0,c[B>>2]|0,1);if(jw(c[A>>2]|0,c[z>>2]|0,c[s>>2]|0)|0){Wf(c[F>>2]|0);c[n>>2]=47026;I=c[n>>2]|0;i=m;return I|0}if(jw(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){Wf(c[F>>2]|0);c[n>>2]=47026;I=c[n>>2]|0;i=m;return I|0}xx(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;xx(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)>=(_(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)>=(_(c[s>>2]|0,c[r>>2]|0)|0))break;Db[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)}Eb[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(jw(c[C>>2]|0,c[B>>2]|0,_(c[s>>2]|0,c[r>>2]|0)|0)|0){Wf(c[F>>2]|0);c[n>>2]=47026;I=c[n>>2]|0;i=m;return I|0}if(jw(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){Wf(c[F>>2]|0);c[n>>2]=47026;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}xx(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)>=(_(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)>=(_(c[s>>2]|0,c[r>>2]|0)|0))break;Db[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)}xx(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;Eb[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(jw(c[A>>2]|0,c[z>>2]|0,_(c[s>>2]|0,c[r>>2]|0)|0)|0){J=52;break}if(jw(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){Wf(c[F>>2]|0);c[n>>2]=47026;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==54){Wf(c[F>>2]|0);c[n>>2]=47026;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==56){Wf(c[F>>2]|0);c[n>>2]=0;I=c[n>>2]|0;i=m;return I|0}return 0}function _r(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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ca=0,da=0;d=i;i=i+352|0;if((i|0)>=(j|0))ba();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]=hk(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]=sg(c[q>>2]|0,47128,0)|0;if(c[B>>2]|0?(c[A>>2]=zg(c[B>>2]|0,1)|0,qg(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]=sg(c[q>>2]|0,47134,0)|0;if(!(c[B>>2]|0?(c[s>>2]=gk(c[B>>2]|0,I,0)|0,qg(c[B>>2]|0),(c[s>>2]|0)!=0):0))M=8;do if((M|0)==8){c[B>>2]=sg(c[q>>2]|0,47140,0)|0;if(c[B>>2]|0){c[I>>2]=c[I>>2]|32;qg(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]=pi(c[t>>2]|0,c[A>>2]|0,u,t)|0;Wf(c[A>>2]|0);c[A>>2]=0;if(!(c[s>>2]|0)){if(eg(1)|0){b=Wi(c[u>>2]|0)|0;a=Xi(c[u+4>>2]|0)|0;c[o>>2]=b;c[o+4>>2]=a;yf(47154,o);if(c[u+40>>2]|0){c[n>>2]=c[u+40>>2];yf(47179,n)}Cf(47201,c[u+8>>2]|0);Cf(47217,c[u+12>>2]|0);Cf(47233,c[u+16>>2]|0);Cf(47249,c[u+32>>2]|0);Cf(47265,c[u+36>>2]|0);Vn(47281,u+20|0,0)}c[C>>2]=go(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]=Li(v,u,a,b)|0;else c[s>>2]=$r(v,u,a,b,c[t>>2]|0,y,z)|0;if(!(c[s>>2]|0)){c[w>>2]=sq(0)|0;c[x>>2]=sq(0)|0;if(Wn(c[w>>2]|0,c[x>>2]|0,v+20|0,c[C>>2]|0)|0){c[m>>2]=47671;wf(47295,m)}c[F>>2]=Yi(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]=Di(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]=sq(0)|0;fq(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]=sq(0)|0,c[z>>2]=sq(0)|0,Wn(c[y>>2]|0,c[z>>2]|0,v+44|0,c[C>>2]|0)|0):0){c[l>>2]=47343;wf(47295,l)}c[G>>2]=Yi(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]=Dg(D,0,47673,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=47712;else N=c[I>>2]&512|0?47684:47698;c[s>>2]=Dg(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;U=c[G>>2]|0;V=c[D>>2]|0;W=c[E>>2]|0;X=c[v+8>>2]|0;Y=c[v+12>>2]|0;Z=c[v+16>>2]|0;_=c[F>>2]|0;$=c[v+32>>2]|0;aa=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]=U;c[g+36>>2]=V;c[g+40>>2]=W;c[g+44>>2]=X;c[g+48>>2]=Y;c[g+52>>2]=Z;c[g+56>>2]=_;c[g+60>>2]=$;c[g+64>>2]=aa;c[g+68>>2]=ca;c[g+72>>2]=da;c[s>>2]=Dg(b,0,47732,g)|0}else{b=c[r>>2]|0;da=c[E>>2]|0;ca=c[G>>2]|0;aa=c[D>>2]|0;$=c[E>>2]|0;_=c[G>>2]|0;Z=c[H>>2]|0;c[f>>2]=c[D>>2];c[f+4>>2]=da;c[f+8>>2]=ca;c[f+12>>2]=aa;c[f+16>>2]=$;c[f+20>>2]=_;c[f+24>>2]=Z;c[s>>2]=Dg(b,0,47868,f)|0}if(((c[s>>2]|0)==0?eg(1)|0:0)?(Cf(47944,c[v+8>>2]|0),Cf(47960,c[v+12>>2]|0),Cf(47976,c[v+16>>2]|0),Cf(47992,c[F>>2]|0),Cf(48008,c[v+32>>2]|0),Cf(48024,c[v+36>>2]|0),Cf(48040,c[G>>2]|0),Cf(48056,c[H>>2]|0),c[I>>2]&4096|0):0)yf(48072,e)}}}while(0);eq(c[H>>2]|0);eq(c[G>>2]|0);eq(c[F>>2]|0);Ti(v);bo(v+44|0);eq(c[v+56>>2]|0);Ti(u);eq(c[w>>2]|0);eq(c[x>>2]|0);eq(c[y>>2]|0);eq(c[z>>2]|0);ko(c[C>>2]|0);qg(c[E>>2]|0);qg(c[D>>2]|0);c[p>>2]=c[s>>2];L=c[p>>2]|0;i=d;return L|0} -function $r(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))ba();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]=Oo(c[(c[q>>2]|0)+8>>2]|0)|0;$n(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=tq(256)|0;c[(c[p>>2]|0)+56>>2]=k;c[B>>2]=Ln(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;zp(c[(c[p>>2]|0)+56>>2]|0,c[B>>2]|0,32,0);Wf(c[B>>2]|0)}else{B=Ut(c[(c[q>>2]|0)+32>>2]|0,c[x>>2]|0)|0;c[(c[p>>2]|0)+56>>2]=B}Do(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=jq(c[(c[q>>2]|0)+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=B;B=jq(c[(c[q>>2]|0)+12>>2]|0)|0;c[(c[p>>2]|0)+12>>2]=B;B=jq(c[(c[q>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+16>>2]=B;$n((c[p>>2]|0)+20|0);as((c[p>>2]|0)+20|0,(c[q>>2]|0)+20|0);B=jq(c[(c[q>>2]|0)+32>>2]|0)|0;c[(c[p>>2]|0)+32>>2]=B;B=jq(c[(c[q>>2]|0)+36>>2]|0)|0;c[(c[p>>2]|0)+36>>2]=B;$n((c[p>>2]|0)+44|0);c[y>>2]=sq(c[A>>2]|0)|0;c[z>>2]=sq(c[A>>2]|0)|0;if(Wn(c[y>>2]|0,c[z>>2]|0,w,c[r>>2]|0)|0){c[o>>2]=47343;wf(47295,o)}do if((c[(c[q>>2]|0)+4>>2]|0)!=1){c[C>>2]=sq(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))Ko(o,r,c[z>>2]|0);else Ko(o,r,c[y>>2]|0);if((Zo(c[C>>2]|0,c[z>>2]|0)|0)>=0){eq(c[C>>2]|0);as((c[p>>2]|0)+44|0,w);if(!(eg(1)|0))break;yf(47385,m);break}if(!(c[c[q>>2]>>2]|0)){eq(c[z>>2]|0);c[z>>2]=c[C>>2]}else{eq(c[y>>2]|0);c[y>>2]=c[C>>2]}Ko(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;co(r,o,B,xq(1)|0)|0;if(eg(1)|0)yf(47345,n)}else as((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];bo(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){bs(s,w);i=l;return 0}else{cs(s,w);i=l;return 0}return 0}function as(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lq(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;lq(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;lq(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function bs(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))ba();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]=sq(c[l>>2]|0)|0;c[p>>2]=sq(c[l>>2]|0)|0;c[q>>2]=sq(c[l>>2]|0)|0;c[r>>2]=sq(c[l>>2]|0)|0;c[s>>2]=sq(c[l>>2]|0)|0;if(eg(1)|0)yf(47438,d);$n(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));Ui(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));$n(m+44|0);as(m+44|0,(c[k>>2]|0)+44|0);vq(c[n>>2]|0,c[l>>2]|0,0);if(Zt(c[n>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0)|0)wf(47452,h);if(_t(c[n>>2]|0,m,c[r>>2]|0,c[s>>2]|0)|0)wf(47482,g);if(!(eg(1)|0)){v=m+44|0;bo(v);Ti(m);bo(o);w=c[s>>2]|0;eq(w);x=c[r>>2]|0;eq(x);y=c[q>>2]|0;eq(y);z=c[p>>2]|0;eq(z);A=c[n>>2]|0;eq(A);i=d;return}yf(47520,f);v=m+44|0;bo(v);Ti(m);bo(o);w=c[s>>2]|0;eq(w);x=c[r>>2]|0;eq(x);y=c[q>>2]|0;eq(y);z=c[p>>2]|0;eq(z);A=c[n>>2]|0;eq(A);i=d;return}function cs(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))ba();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(eg(1)|0)yf(47438,e);$n(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));Ui(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));$n(n+44|0);as(n+44|0,(c[l>>2]|0)+44|0);if((c[(c[l>>2]|0)+4>>2]|0)==1){c[o>>2]=sq(256)|0;c[u>>2]=Jn(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;zp(c[o>>2]|0,c[u>>2]|0,32,0);Wf(c[u>>2]|0)}else{c[o>>2]=sq(c[m>>2]|0)|0;vq(c[o>>2]|0,c[m>>2]|0,0)}c[s>>2]=go(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]=sq(0)|0;c[r>>2]=sq(0)|0;Do(p,c[o>>2]|0,n+44|0,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)Do(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(Wn(c[q>>2]|0,0,p,c[s>>2]|0)|0)wf(47555,k);Do(p,c[o>>2]|0,n+20|0,c[s>>2]|0);Do(p,c[(c[l>>2]|0)+56>>2]|0,p,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)Do(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(Wn(c[r>>2]|0,0,p,c[s>>2]|0)|0)wf(47603,h);if(Zo(c[q>>2]|0,c[r>>2]|0)|0)wf(47652,g);else{eq(c[q>>2]|0);eq(c[r>>2]|0);ko(c[s>>2]|0);bo(n+44|0);Ti(n);bo(p);eq(c[o>>2]|0);i=e;return}}function ds(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))ba();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]=sg(c[l>>2]|0,47134,0)|0;if(!(c[n>>2]|0?(c[m>>2]=gk(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]=Mg(a,0,48107,h)|0}else{c[g>>2]=r;c[g+4>>2]=s+56;c[g+8>>2]=0;c[m>>2]=Mg(a,0,48126,g)|0}if(!(c[m>>2]|0)){qg(c[n>>2]|0);c[n>>2]=sg(c[l>>2]|0,47128,5)|0;if((c[n>>2]|0?(c[p>>2]=zg(c[n>>2]|0,1)|0,c[p>>2]|0):0)?(c[m>>2]=si(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?($n(s+20|0),c[m>>2]=_i(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(eg(1)|0){a=Wi(c[s>>2]|0)|0;u=Xi(c[s+4>>2]|0)|0;c[f>>2]=a;c[f+4>>2]=u;yf(48132,f);if(c[s+40>>2]|0){c[e>>2]=c[s+40>>2];yf(48156,e)}Cf(48177,c[s+8>>2]|0);Cf(48193,c[s+12>>2]|0);Cf(48209,c[s+16>>2]|0);Vn(48225,s+20|0,0);Cf(48239,c[s+32>>2]|0);Cf(48255,c[s+36>>2]|0);Cf(48271,c[r>>2]|0);if(!(vh()|0))Cf(48287,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]=go(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}$n(s+44|0);if((c[(c[t>>2]|0)+4>>2]|0)==1)c[m>>2]=Ii(c[r>>2]|0,c[t>>2]|0,s+44|0,0,0)|0;else c[m>>2]=_i(s+44|0,c[r>>2]|0)|0;if(c[m>>2]|0)break;if(!(es(s,c[t>>2]|0,c[o>>2]|0)|0))break;c[m>>2]=7;break}c[m>>2]=68}}while(0);ko(c[t>>2]|0);uq(c[s+8>>2]|0);uq(c[s+12>>2]|0);uq(c[s+16>>2]|0);uq(c[q>>2]|0);bo(s+20|0);uq(c[s+32>>2]|0);uq(c[s+36>>2]|0);uq(c[r>>2]|0);bo(s+44|0);uq(c[s+56>>2]|0);Wf(c[p>>2]|0);qg(c[n>>2]|0);if(eg(1)|0){c[d>>2]=cu(c[m>>2]|0)|0;yf(48590,d)}c[k>>2]=c[m>>2];w=c[k>>2]|0;i=b;return w|0}function es(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))ba();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;$n(u);c[v>>2]=sq(0)|0;if((c[c[r>>2]>>2]|0)==1)c[w>>2]=0;else c[w>>2]=sq(0)|0;a:do if(!(Fo((c[q>>2]|0)+20|0,c[r>>2]|0)|0)){if(eg(1)|0)yf(48303,p)}else{if(!(Yo(c[(c[q>>2]|0)+20+8>>2]|0,0)|0)){if(!(eg(1)|0))break;yf(48355,o);break}if((c[(c[q>>2]|0)+4>>2]|0)!=1?(Do(u,c[(c[q>>2]|0)+32>>2]|0,(c[q>>2]|0)+20|0,c[r>>2]|0),Yo(c[u+8>>2]|0,0)|0):0){if(!(eg(1)|0))break;yf(48400,n);break}if(!(Yo(c[(c[q>>2]|0)+44+8>>2]|0,0)|0)){if(!(eg(1)|0))break;yf(48447,m);break}if(!($i(u,c[r>>2]|0,(c[q>>2]|0)+20|0,c[(c[q>>2]|0)+56>>2]|0)|0)){if(!(eg(1)|0))break;yf(48493,l);break}if(Wn(c[v>>2]|0,c[w>>2]|0,u,c[r>>2]|0)|0){if(!(eg(1)|0))break;yf(48447,k);break}do if(!(c[s>>2]&4096)){if(!(Yo(c[(c[q>>2]|0)+44+8>>2]|0,1)|0)){if(!(Zo(c[v>>2]|0,c[(c[q>>2]|0)+44>>2]|0)|0)){if(c[w>>2]|0)break;if(!(Zo(c[w>>2]|0,c[(c[q>>2]|0)+44+4>>2]|0)|0))break}if(!(eg(1)|0))break a;yf(48530,h);break a}c[x>>2]=sq(0)|0;c[y>>2]=sq(0)|0;if(Wn(c[x>>2]|0,c[y>>2]|0,(c[q>>2]|0)+44|0,c[r>>2]|0)|0){if(!(eg(1)|0))break a;yf(48447,g);break a}if((Zo(c[v>>2]|0,c[x>>2]|0)|0)==0?(Zo(c[w>>2]|0,c[y>>2]|0)|0)==0:0)break;if(!(eg(1)|0))break a;yf(48530,f);break a}while(0);c[t>>2]=0}while(0);eq(c[x>>2]|0);eq(c[v>>2]|0);eq(c[w>>2]|0);eq(c[y>>2]|0);bo(u);i=e;return c[t>>2]|0}function fs(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))ba();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));mk(t,0,gs(c[r>>2]|0)|0);c[s>>2]=ok(c[q>>2]|0,A,t)|0;do if(!(c[s>>2]|0)){if(eg(1)|0)Cf(48613,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]=Mg(q,0,48630,n)|0;if(!(c[s>>2]|0)){if(c[w>>2]|0?($n(B+20|0),c[s>>2]=_i(B+20|0,c[w>>2]|0)|0,c[s>>2]|0):0)break;qg(c[u>>2]|0);c[u>>2]=sg(c[r>>2]|0,47128,5)|0;if((c[u>>2]|0?(c[v>>2]=zg(c[u>>2]|0,1)|0,c[v>>2]|0):0)?(c[s>>2]=pi(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(eg(1)|0){q=Wi(c[B>>2]|0)|0;d=Xi(c[B+4>>2]|0)|0;c[m>>2]=q;c[m+4>>2]=d;yf(48646,m);if(c[B+40>>2]|0){c[l>>2]=c[B+40>>2];yf(48671,l)}Cf(48693,c[B+8>>2]|0);Cf(48710,c[B+12>>2]|0);Cf(48727,c[B+16>>2]|0);Vn(48744,B+20|0,0);Cf(48759,c[B+32>>2]|0);Cf(48776,c[B+36>>2]|0);Cf(48793,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?($n(B+44|0),c[s>>2]=_i(B+44|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;c[C>>2]=go(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]=sq(0)|0;c[F>>2]=sq(0)|0;$n(D);Do(D,c[A>>2]|0,B+44|0,c[C>>2]|0);if(Wn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)wf(48810,k);c[y>>2]=Yi(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;Do(D,c[A>>2]|0,B+20|0,c[C>>2]|0);if(Wn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)wf(48858,h);else{c[z>>2]=Yi(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;eq(c[E>>2]|0);eq(c[F>>2]|0);bo(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]=Dg(d,0,48905,g)|0;break}}c[s>>2]=68}}while(0);uq(c[B+8>>2]|0);uq(c[B+12>>2]|0);uq(c[B+16>>2]|0);uq(c[w>>2]|0);bo(B+20|0);uq(c[B+32>>2]|0);uq(c[B+36>>2]|0);uq(c[x>>2]|0);bo(B+44|0);uq(c[A>>2]|0);uq(c[y>>2]|0);uq(c[z>>2]|0);Wf(c[v>>2]|0);ko(c[C>>2]|0);nk(t);if(eg(1)|0){c[f>>2]=cu(c[s>>2]|0)|0;yf(48931,f)}c[o>>2]=c[s>>2];G=c[o>>2]|0;i=e;return G|0}function gs(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))ba();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]=sg(c[e>>2]|0,48611,1)|0;if(c[f>>2]|0){c[g>>2]=Ag(c[f>>2]|0,1,5)|0;qg(c[f>>2]|0);if(c[g>>2]|0){c[h>>2]=Oo(c[g>>2]|0)|0;uq(c[g>>2]|0)}}else{c[f>>2]=sg(c[e>>2]|0,47128,5)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[k>>2]=zg(c[f>>2]|0,1)|0;qg(c[f>>2]|0);if(!(c[k>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}if(pi(0,c[k>>2]|0,0,h)|0)c[h>>2]=0;Wf(c[k>>2]|0)}c[d>>2]=c[h>>2];l=c[d>>2]|0;i=b;return l|0}function hs(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))ba();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));$n(A);$n(B);mk(t,1,gs(c[r>>2]|0)|0);c[s>>2]=kk(c[q>>2]|0,12916,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]=Mg(q,0,48953,n)|0,(c[s>>2]|0)==0):0){if(eg(1)|0)Cf(48955,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]=Mg(q,0,48972,m)|0;if(!(c[s>>2]|0)){if(c[x>>2]|0?($n(w+20|0),c[s>>2]=_i(w+20|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;qg(c[u>>2]|0);c[u>>2]=sg(c[r>>2]|0,47128,5)|0;if((c[u>>2]|0?(c[y>>2]=zg(c[u>>2]|0,1)|0,c[y>>2]|0):0)?(c[s>>2]=pi(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(eg(1)|0){q=Wi(c[w>>2]|0)|0;d=Xi(c[w+4>>2]|0)|0;c[l>>2]=q;c[l+4>>2]=d;yf(48988,l);if(c[w+40>>2]|0){c[k>>2]=c[w+40>>2];yf(49013,k)}Cf(49035,c[w+8>>2]|0);Cf(49052,c[w+12>>2]|0);Cf(49069,c[w+16>>2]|0);Vn(49086,w+20|0,0);Cf(49101,c[w+32>>2]|0);Cf(49118,c[w+36>>2]|0);if(!(vh()|0))Cf(49135,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]=_i(A,c[v>>2]|0)|0;if(c[s>>2]|0){bo(A);c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}c[z>>2]=go(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;Do(B,c[w+56>>2]|0,A,c[z>>2]|0);c[D>>2]=sq(0)|0;c[E>>2]=sq(0)|0;if(Wn(c[D>>2]|0,c[E>>2]|0,B,c[z>>2]|0)|0)wf(49152,h);c[C>>2]=Yi(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]=fu()|0;eq(c[D>>2]|0);eq(c[E>>2]|0);if(eg(1)|0)Cf(49192,c[C>>2]|0);if(c[s>>2]|0)break;d=c[p>>2]|0;c[g>>2]=c[C>>2];c[s>>2]=Dg(d,0,49209,g)|0;break}c[s>>2]=68}}while(0);bo(B);bo(A);uq(c[C>>2]|0);uq(c[w+8>>2]|0);uq(c[w+12>>2]|0);uq(c[w+16>>2]|0);uq(c[x>>2]|0);bo(w+20|0);uq(c[w+32>>2]|0);uq(c[w+36>>2]|0);uq(c[w+56>>2]|0);uq(c[v>>2]|0);Wf(c[y>>2]|0);qg(c[u>>2]|0);ko(c[z>>2]|0);nk(t);if(eg(1)|0){c[f>>2]=cu(c[s>>2]|0)|0;yf(49220,f)}c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}function is(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))ba();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));mk(u,2,0);c[t>>2]=ok(c[r>>2]|0,v,u)|0;do if(!(c[t>>2]|0)){if(eg(1)|0)Cf(49242,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]=Mg(r,0,48107,o)|0}else{c[n>>2]=z;c[n+4>>2]=A+56;c[n+8>>2]=0;c[t>>2]=Mg(r,0,48126,n)|0}if(!(c[t>>2]|0)){if(c[y>>2]|0?($n(A+20|0),c[t>>2]=_i(A+20|0,c[y>>2]|0)|0,c[t>>2]|0):0)break;qg(c[w>>2]|0);c[w>>2]=sg(c[s>>2]|0,47128,5)|0;if((c[w>>2]|0?(c[x>>2]=zg(c[w>>2]|0,1)|0,c[x>>2]|0):0)?(c[t>>2]=pi(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(eg(1)|0){r=Wi(c[A>>2]|0)|0;d=Xi(c[A+4>>2]|0)|0;b=c[u+12>>2]&4096|0?49258:76495;c[m>>2]=r;c[m+4>>2]=d;c[m+8>>2]=b;yf(49265,m);if(c[A+40>>2]|0){c[l>>2]=c[A+40>>2];yf(49291,l)}Cf(49312,c[A+8>>2]|0);Cf(49328,c[A+12>>2]|0);Cf(49344,c[A+16>>2]|0);Vn(49360,A+20|0,0);Cf(49374,c[A+32>>2]|0);Cf(49390,c[A+36>>2]|0);Cf(49406,c[z>>2]|0);if(!(vh()|0))Cf(49422,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]=sq(0)|0;c[C>>2]=sq(0)|0;if(c[u+12>>2]&4096|0){c[t>>2]=Qi(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]=Dg(b,0,49438,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]=$t(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]=Dg(a,0,49465,h)|0;break}else{c[t>>2]=Zt(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]=Dg(r,0,49491,g)|0;break}}c[t>>2]=68}}while(0);uq(c[A+8>>2]|0);uq(c[A+12>>2]|0);uq(c[A+16>>2]|0);uq(c[y>>2]|0);bo(A+20|0);uq(c[A+32>>2]|0);uq(c[A+36>>2]|0);uq(c[z>>2]|0);bo(A+44|0);uq(c[A+56>>2]|0);uq(c[B>>2]|0);uq(c[C>>2]|0);Wf(c[x>>2]|0);uq(c[v>>2]|0);qg(c[w>>2]|0);nk(u);if(eg(1)|0){c[f>>2]=cu(c[t>>2]|0)|0;yf(49518,f)}c[p>>2]=c[t>>2];D=c[p>>2]|0;i=e;return D|0}function js(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))ba();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));mk(s,3,gs(c[q>>2]|0)|0);c[r>>2]=ok(c[p>>2]|0,z,s)|0;a:do if(!(c[r>>2]|0)){if(eg(1)|0)Cf(49539,c[z>>2]|0);c[r>>2]=jk(c[o>>2]|0,12916,t,B)|0;if((c[r>>2]|0)==0?(p=c[t>>2]|0,d=c[B>>2]&4096|0?49555:47125,c[m>>2]=x,c[m+4>>2]=y,c[m+8>>2]=0,c[r>>2]=Mg(p,0,d,m)|0,(c[r>>2]|0)==0):0){if(eg(1)|0){Cf(49559,c[x>>2]|0);Cf(49575,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]=Mg(d,0,49591,l)|0}else{c[k>>2]=w;c[k+4>>2]=0;c[r>>2]=Mg(d,0,49607,k)|0}if(!(c[r>>2]|0)){if(c[v>>2]|0?($n(A+20|0),c[r>>2]=_i(A+20|0,c[v>>2]|0)|0,c[r>>2]|0):0)break;qg(c[t>>2]|0);c[t>>2]=sg(c[q>>2]|0,47128,5)|0;if((c[t>>2]|0?(c[u>>2]=zg(c[t>>2]|0,1)|0,c[u>>2]|0):0)?(c[r>>2]=pi(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(eg(1)|0){d=Wi(c[A>>2]|0)|0;p=Xi(c[A+4>>2]|0)|0;b=c[B>>2]&4096|0?49258:76495;c[h>>2]=d;c[h+4>>2]=p;c[h+8>>2]=b;yf(49610,h);if(c[A+40>>2]|0){c[g>>2]=c[A+40>>2];yf(49636,g)}Cf(49657,c[A+8>>2]|0);Cf(49673,c[A+12>>2]|0);Cf(49689,c[A+16>>2]|0);Vn(49705,A+20|0,0);Cf(49719,c[A+32>>2]|0);Cf(49735,c[A+36>>2]|0);Cf(49751,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]=Si(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;$n(A+44|0);if(b){c[r>>2]=_i(A+44|0,c[w>>2]|0)|0;if(c[r>>2]|0)break;c[r>>2]=au(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]=go(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]=Ii(c[w>>2]|0,c[C>>2]|0,A+44|0,0,0)|0;ko(c[C>>2]|0)}else c[r>>2]=_i(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]=Oo(c[A+32>>2]|0)|0;c[D>>2]=hq(c[z>>2]|0,E)|0;c[r>>2]=Ap(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)Vo(c[G>>2]|0,c[G>>2]|0,(c[E>>2]|0)-(c[F>>2]|0)|0);c[r>>2]=_t(c[G>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;uq(c[G>>2]|0);break a}while(0);c[r>>2]=_t(c[z>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;break}c[r>>2]=68}}}while(0);uq(c[A+8>>2]|0);uq(c[A+12>>2]|0);uq(c[A+16>>2]|0);uq(c[v>>2]|0);bo(A+20|0);uq(c[A+32>>2]|0);uq(c[A+36>>2]|0);uq(c[w>>2]|0);bo(A+44|0);uq(c[z>>2]|0);uq(c[x>>2]|0);uq(c[y>>2]|0);Wf(c[u>>2]|0);qg(c[t>>2]|0);nk(s);if(eg(1)|0){if(c[r>>2]|0)I=cu(c[r>>2]|0)|0;else I=49767;c[f>>2]=I;yf(49772,f)}c[n>>2]=c[r>>2];H=c[n>>2]|0;i=e;return H|0}function ks(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))ba();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]=ls(c[h>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}return 0}function ls(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=49793;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)Nb[c[e>>2]&1](49803,18,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;h=c[d>>2]|0;i=b;return h|0}function ms(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))ba();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]=sg(c[o>>2]|0,47134,0)|0;if(!(c[q>>2]|0?(c[p>>2]=gk(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]=Mg(b,0,49810,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]=Mg(b,0,49825,l)|0;break}}else{I=r+24|0;if(d){c[k>>2]=I;c[k+4>>2]=0;c[p>>2]=Mg(b,0,49607,k)|0;break}else{c[h>>2]=I;c[h+4>>2]=0;c[p>>2]=Mg(b,0,49839,h)|0;break}}while(0);if(!(c[p>>2]|0)){qg(c[q>>2]|0);c[q>>2]=sg(c[o>>2]|0,47128,5)|0;if((c[q>>2]|0?(c[t>>2]=zg(c[q>>2]|0,1)|0,c[t>>2]|0):0)?(c[p>>2]=si(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}No(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]=Fi(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]=hq(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[49841+(c[s>>2]|0)>>0];c[g+4>>2]=b;qv(x,30,49848,g)|0;b=c[n>>2]|0;Cj(b,x,Hv(x)|0);Cj(c[n>>2]|0,c[y>>2]|0,c[z>>2]|0);Cj(c[n>>2]|0,49857,1);break}c[A>>2]=wp(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[49841+(c[s>>2]|0)>>0];c[f+4>>2]=b;qv(x,30,49848,f)|0;b=c[n>>2]|0;Cj(b,x,Hv(x)|0);Cj(c[n>>2]|0,c[A>>2]|0,c[B>>2]|0);Cj(c[n>>2]|0,49857,1);Wf(c[A>>2]|0)}while(0);c[s>>2]=(c[s>>2]|0)+1}c[p>>2]=fu()|0}}while(0);Wf(c[t>>2]|0);qg(c[q>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=7)break;uq(c[r+(c[s>>2]<<2)>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=e;return c[p>>2]|0}function ns(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,k=0,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))ba();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=Rj(c[l>>2]|0)|0;if((g|0)!=(c[q>>2]|0)){c[k>>2]=49859;x=c[k>>2]|0;i=h;return x|0}c[s>>2]=rj(t,c[l>>2]|0,0)|0;if(c[s>>2]|0){c[k>>2]=49900;x=c[k>>2]|0;i=h;return x|0}a:do switch(c[m>>2]|0){case 0:{Cj(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);break}case 1:{xx(v|0,97,1e3)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=1e3)break a;Cj(c[t>>2]|0,v,1e3);c[w>>2]=(c[w>>2]|0)+1}break}default:c[r>>2]=49920}while(0);if((c[r>>2]|0)==0?(c[u>>2]=Oj(c[t>>2]|0,c[l>>2]|0)|0,jw(c[u>>2]|0,c[p>>2]|0,c[q>>2]|0)|0):0)c[r>>2]=49937;Bj(c[t>>2]|0);c[k>>2]=c[r>>2];x=c[k>>2]|0;i=h;return x|0}function os(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))ba();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)rf(49953,112,49967);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]=Db[c[(c[m>>2]|0)+152>>2]&63](c[m>>2]|0,c[m>>2]|0,1)|0,Df(c[n>>2]|0),Ef(),c[n>>2]=0,c[(c[m>>2]|0)+144>>2]=0,g=(c[m>>2]|0)+128|0,h=g,e=yx(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=yx(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}os(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]=Db[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=yx(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=yx(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=yx(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=_(c[p>>2]|0,c[o>>2]|0)|0;c[k>>2]=(c[k>>2]|0)-g;g=_(c[p>>2]|0,c[o>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+g}Df(c[n>>2]|0);Ef();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 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,n=0,o=0;e=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=qs(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];rs((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]=Db[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]=Db[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){rs((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}Df(c[l>>2]|0);Ef();i=e;return}function qs(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 rs(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))ba();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 ss(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))ba();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]=qs(c[e>>2]|0)|0;c[h>>2]=Kb[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;Df(c[h>>2]|0);Ef();i=d;return}function ts(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))ba();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]=Qg()|0;if((c[17713]|0)==0?(c[17713]=1,c[17714]=us()|0,c[17714]|0):0){c[h>>2]=c[17714];vf(50375,h)}if((c[n>>2]|0)!=32){c[k>>2]=44;u=c[k>>2]|0;i=g;return u|0}if(c[17714]|0){c[k>>2]=50;u=c[k>>2]|0;i=g;return u|0}c[(c[l>>2]|0)+84>>2]=12940;rs(o,c[m>>2]|0,32);Bs(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=Jx(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 us(){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))ba();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));vs(k,49988,131,50119);if(jw(50151,k,16)|0){c[d>>2]=50167;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));ts(e,50119,32)|0;ps(e,49988,32);ps(e,50020,64);ps(e,50084,16);ps(e,50100,8);ps(e,50108,4);ps(e,50112,2);ps(e,50114,1);ps(e,50115,1);ps(e,50116,1);ps(e,50117,1);ps(e,50118,1);ss(e,k);if(jw(50151,k,16)|0){c[d>>2]=50191;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));vs(k,50215,16,50231);if(jw(50263,k,16)|0){c[d>>2]=50279;p=c[d>>2]|0;i=b;return p|0}ts(f,50303,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}vs(k,h,c[l>>2]|0,g);ps(f,k,16);c[l>>2]=(c[l>>2]|0)+1}ss(f,k);if(jw(50335,k,16)|0){c[d>>2]=50351;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 vs(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))ba();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));ts(o,c[n>>2]|0,32)|0;ps(o,c[l>>2]|0,c[m>>2]|0);ss(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=Jx(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 ws(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))ba();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=(xs(c[g>>2]|0)|0)&67108863;c[c[h>>2]>>2]=f;f=(xs((c[g>>2]|0)+3|0)|0)>>>2&67108611;c[(c[h>>2]|0)+4>>2]=f;f=(xs((c[g>>2]|0)+6|0)|0)>>>4&67092735;c[(c[h>>2]|0)+8>>2]=f;f=(xs((c[g>>2]|0)+9|0)|0)>>>6&66076671;c[(c[h>>2]|0)+12>>2]=f;f=(xs((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=xs((c[g>>2]|0)+16|0)|0;c[(c[h>>2]|0)+40>>2]=f;f=xs((c[g>>2]|0)+20|0)|0;c[(c[h>>2]|0)+40+4>>2]=f;f=xs((c[g>>2]|0)+24|0)|0;c[(c[h>>2]|0)+40+8>>2]=f;f=xs((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 xs(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 ys(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))ba();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=(xs(c[h>>2]|0)|0)&67108863;c[w>>2]=(c[w>>2]|0)+g;g=(xs((c[h>>2]|0)+3|0)|0)>>>2&67108863;c[x>>2]=(c[x>>2]|0)+g;g=(xs((c[h>>2]|0)+6|0)|0)>>>4&67108863;c[y>>2]=(c[y>>2]|0)+g;g=(xs((c[h>>2]|0)+9|0)|0)>>>6&67108863;c[z>>2]=(c[z>>2]|0)+g;g=(xs((c[h>>2]|0)+12|0)|0)>>>8;c[A>>2]=(c[A>>2]|0)+(g|c[m>>2]);g=Jx(c[w>>2]|0,0,c[n>>2]|0,0)|0;e=C;b=Jx(c[x>>2]|0,0,c[v>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[y>>2]|0,0,c[u>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=C;b=Jx(c[z>>2]|0,0,c[t>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[A>>2]|0,0,c[s>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=B;c[e>>2]=g;c[e+4>>2]=C;e=Jx(c[w>>2]|0,0,c[o>>2]|0,0)|0;g=C;b=Jx(c[x>>2]|0,0,c[n>>2]|0,0)|0;a=yx(e|0,g|0,b|0,C|0)|0;b=C;g=Jx(c[y>>2]|0,0,c[v>>2]|0,0)|0;e=yx(a|0,b|0,g|0,C|0)|0;g=C;b=Jx(c[z>>2]|0,0,c[u>>2]|0,0)|0;a=yx(e|0,g|0,b|0,C|0)|0;b=C;g=Jx(c[A>>2]|0,0,c[t>>2]|0,0)|0;e=yx(a|0,b|0,g|0,C|0)|0;g=D;c[g>>2]=e;c[g+4>>2]=C;g=Jx(c[w>>2]|0,0,c[p>>2]|0,0)|0;e=C;b=Jx(c[x>>2]|0,0,c[o>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[y>>2]|0,0,c[n>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=C;b=Jx(c[z>>2]|0,0,c[v>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[A>>2]|0,0,c[u>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=E;c[e>>2]=g;c[e+4>>2]=C;e=Jx(c[w>>2]|0,0,c[q>>2]|0,0)|0;g=C;b=Jx(c[x>>2]|0,0,c[p>>2]|0,0)|0;a=yx(e|0,g|0,b|0,C|0)|0;b=C;g=Jx(c[y>>2]|0,0,c[o>>2]|0,0)|0;e=yx(a|0,b|0,g|0,C|0)|0;g=C;b=Jx(c[z>>2]|0,0,c[n>>2]|0,0)|0;a=yx(e|0,g|0,b|0,C|0)|0;b=C;g=Jx(c[A>>2]|0,0,c[v>>2]|0,0)|0;e=yx(a|0,b|0,g|0,C|0)|0;g=F;c[g>>2]=e;c[g+4>>2]=C;g=Jx(c[w>>2]|0,0,c[r>>2]|0,0)|0;e=C;b=Jx(c[x>>2]|0,0,c[q>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[y>>2]|0,0,c[p>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=C;b=Jx(c[z>>2]|0,0,c[o>>2]|0,0)|0;a=yx(g|0,e|0,b|0,C|0)|0;b=C;e=Jx(c[A>>2]|0,0,c[n>>2]|0,0)|0;g=yx(a|0,b|0,e|0,C|0)|0;e=G;c[e>>2]=g;c[e+4>>2]=C;e=B;g=Ex(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=yx(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=Ex(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=yx(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=Ex(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=yx(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=Ex(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=yx(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=Ex(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 zs(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))ba();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]=ys(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=yx(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=yx(c[p>>2]|0,0,c[(c[n>>2]|0)+40+4>>2]|0,0)|0;s=yx(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=yx(c[q>>2]|0,0,c[(c[n>>2]|0)+40+8>>2]|0,0)|0;s=yx(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=yx(c[r>>2]|0,0,c[(c[n>>2]|0)+40+12>>2]|0,0)|0;s=yx(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];As(c[m>>2]|0,c[o>>2]|0);As((c[m>>2]|0)+4|0,c[p>>2]|0);As((c[m>>2]|0)+8|0,c[q>>2]|0);As((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 As(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))ba();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 Bs(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=qs(c[e>>2]|0)|0;c[(c[e>>2]|0)+88>>2]=0;Gb[c[(c[(c[e>>2]|0)+84>>2]|0)+4>>2]&7](c[g>>2]|0,c[f>>2]|0);i=d;return}function Cs(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(c[d>>2]|0){Es();i=b;return}else{Ds();i=b;return}}function Ds(){if(c[17715]|0)return;c[17715]=1;return}function Es(){var a=0,b=0;Ds();Fs();if(c[17717]|0){Ls();return}if(c[17718]|0)a=cg(1,664)|0;else a=bg(1,664)|0;c[17717]=a;if(c[17718]|0)b=cg(1,664)|0;else b=bg(1,664)|0;c[17719]=b;c[17720]=Gs()|0;if(!(c[17720]|0)){c[17721]=1;c[17720]=3}c[17738]=Ks()|0;Ls();return}function Fs(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[d>>2]=iu(12956)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(50406,b)}else{c[17716]=1;i=a;return}}function Gs(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;if((Bw(52788,4)|0)==0?(Bw(52890,4)|0)==0:0){c[d>>2]=4;i=a;return c[d>>2]|0}wf(kf(50443)|0,b);return 0}function Hs(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))ba();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[17722]|0)){tf(kf(50481)|0,g);c[17722]=1;f=sb(0)|0;_w(_(f,Aw()|0)|0)}f=_f(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+~~(+($w()|0)*256.0/2147483648.0)-1&255;e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=f}Is(c[m>>2]|0,c[k>>2]|0,c[h>>2]|0);Wf(c[m>>2]|0);i=g;return 0}function Is(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))ba();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[17716]|0))sf(50532,50547,1074,50563);c[17731]=(c[17731]|0)+(c[k>>2]|0);c[17732]=(c[17732]|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[17733]|0;c[17733]=h+1;e=(c[17717]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f;c[n>>2]=(c[n>>2]|0)+1;if((c[17733]|0)>>>0<600)continue;if(!((c[l>>2]|0)>>>0<3|(c[17734]|0)!=0)?(c[17735]=(c[17735]|0)+(c[n>>2]|0),c[n>>2]=0,(c[17735]|0)>>>0>=600):0)c[17734]=1;c[17733]=0;Js(c[17717]|0);c[17723]=(c[17723]|0)+1;c[17737]=((c[k>>2]|0)!=0^1)&1}i=g;return}function Js(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))ba();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[17716]|0))sf(50532,50547,615,50578);Cl(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));Dl(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[17736]|0?(c[f>>2]|0)==(c[17717]|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[76474+(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);Dl(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[17717]|0)){Df(384);Ef();i=e;return}El(76474,c[f>>2]|0,600);c[17736]=1;Df(384);Ef();i=e;return}function Ks(){return 0}function Ls(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[17716]=0;c[d>>2]=ju(12956)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(50587,b)}else{i=a;return}}function Ms(){Fs();Qt(0,0,0,0)|0;c[17734]=0;Ls();return}function Ns(){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))ba();b=a;d=c[17723]|0;e=c[17725]|0;f=c[17726]|0;g=c[17732]|0;h=c[17731]|0;k=c[17724]|0;l=c[17728]|0;m=c[17727]|0;n=c[17730]|0;o=c[17729]|0;p=(Nt()|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?50624:76495;tf(50640,b);i=a;return}function Os(){c[17718]=1;return}function Ps(){c[17739]=1;return}function Qs(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();c[b>>2]=a;i=b;return}function Rs(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();c[b>>2]=a;i=b;return 0}function Ss(){Es();return (c[17721]|0?1:(c[17739]|0)!=0)&1|0}function Ts(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))ba();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;Es();if((c[17739]|0)!=0&(c[h>>2]|0)>>>0>1)c[h>>2]=1;c[h>>2]=c[h>>2]&3;Fs();d=c[g>>2]|0;if((c[h>>2]|0)>>>0>=2){c[17729]=(c[17729]|0)+d;c[17730]=(c[17730]|0)+1}else{c[17727]=(c[17727]|0)+d;c[17728]=(c[17728]|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;Us(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)}Ls();i=e;return}function Us(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))ba();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[17716]|0))sf(50532,50547,934,50764);while(1){c[p>>2]=Aw()|0;if((c[3250]|0)==-1)c[3250]=c[p>>2];if((c[3250]|0)!=(c[p>>2]|0)){c[3250]=c[p>>2];c[q>>2]=c[3250];Is(q,4,0);c[17737]=0}if(!(c[17716]|0)){v=8;break}if((c[k>>2]|0)>>>0>600){v=10;break}if((c[17734]|0)==0?Vs()|0:0)c[17734]=1;if(!((c[l>>2]|0)!=2|(c[17742]|0)!=0)){c[17743]=0;c[r>>2]=(c[k>>2]|0)-(c[17743]|0);if((c[r>>2]|0)>>>0>=16){if((c[r>>2]|0)>>>0>600){v=18;break}}else c[r>>2]=16;Xs(4,c[r>>2]|0,2);c[17743]=(c[17743]|0)+(c[r>>2]|0);c[17742]=1}if((c[l>>2]|0)==2?(c[17743]|0)>>>0<(c[k>>2]|0)>>>0:0){if((c[17743]|0)<0)c[17743]=0;c[s>>2]=(c[k>>2]|0)-(c[17743]|0);if((c[s>>2]|0)>>>0>600){v=25;break}Xs(4,c[s>>2]|0,2);c[17743]=(c[17743]|0)+(c[s>>2]|0)}while(1){if(!((c[17734]|0)!=0^1))break;Ys()}Zs();c[t>>2]=c[3250];Is(t,4,0);if(!(c[17737]|0)){Js(c[17717]|0);c[17723]=(c[17723]|0)+1}c[m>>2]=0;c[o>>2]=c[17719];c[n>>2]=c[17717];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}Js(c[17717]|0);c[17723]=(c[17723]|0)+1;Js(c[17719]|0);c[17724]=(c[17724]|0)+1;while(1){e=c[k>>2]|0;c[k>>2]=e+-1;if(!e)break;e=c[17744]|0;c[17744]=e+1;d=a[(c[17719]|0)+e>>0]|0;e=c[h>>2]|0;c[h>>2]=e+1;a[e>>0]=d;if((c[17744]|0)>>>0>=600)c[17744]=0;c[17743]=(c[17743]|0)+-1}if((c[17743]|0)<0)c[17743]=0;xx(c[17719]|0,0,600)|0;d=Aw()|0;if((d|0)==(c[p>>2]|0)){v=43;break}c[u>>2]=Aw()|0;Is(u,4,0);c[17737]=0;c[3250]=c[u>>2]}if((v|0)==8)sf(50532,50547,953,50764);else if((v|0)==10)xf(50774,g);else if((v|0)==18)rf(50547,979,50764);else if((v|0)==25)rf(50547,995,50764);else if((v|0)==43){i=f;return}}function Vs(){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))ba();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[17716]|0))sf(50532,50547,743,50806);if(!(c[17740]|0)){c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}c[l>>2]=Jw(c[17740]|0,0,a)|0;if((c[l>>2]|0)==-1?(c[(Vu()|0)>>2]|0)==2:0){c[17741]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[l>>2]|0)==-1){t=kf(50821)|0;u=c[17740]|0;v=lv(c[(Vu()|0)>>2]|0)|0;c[h>>2]=u;c[h+4>>2]=v;tf(t,h);c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}h=(Ws(c[l>>2]|0,c[17740]|0,0)|0)!=0;t=c[l>>2]|0;if(h){iw(t)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if(Fw(t,m)|0){t=kf(50892)|0;h=c[17740]|0;v=lv(c[(Vu()|0)>>2]|0)|0;c[g>>2]=h;c[g+4>>2]=v;tf(t,g);iw(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=kf(50913)|0;c[f>>2]=c[17740];tf(g,f);iw(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)){tf(kf(50951)|0,e);iw(c[l>>2]|0)|0;c[17741]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[m+36>>2]|0)!=600){tf(kf(50984)|0,d);iw(c[l>>2]|0)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}do{c[o>>2]=Iw(c[l>>2]|0,n,600)|0;if((c[o>>2]|0)!=-1)break}while((c[(Vu()|0)>>2]|0)==4);if((c[o>>2]|0)!=600){o=kf(51038)|0;d=c[17740]|0;m=lv(c[(Vu()|0)>>2]|0)|0;c[b>>2]=d;c[b+4>>2]=m;wf(o,b)}iw(c[l>>2]|0)|0;Is(n,600,0);c[p>>2]=Aw()|0;Is(p,4,0);c[q>>2]=sb(0)|0;Is(q,4,0);c[r>>2]=Ya()|0;Is(r,4,0);Xs(0,16,0);c[17741]=1;c[k>>2]=1;s=c[k>>2]|0;i=a;return s|0}function Ws(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))ba();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((hw(o,13,k)|0)!=-1){s=10;break}if((c[(Vu()|0)>>2]|0)!=11?(c[(Vu()|0)>>2]|0)!=13:0){s=5;break}if((c[r>>2]|0)>2){o=kf(50863)|0;c[g>>2]=c[n>>2];tf(o,g)}c[q>>2]=c[r>>2];c[q+4>>2]=25e4;Gw(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=kf(50842)|0;q=c[n>>2]|0;n=lv(c[(Vu()|0)>>2]|0)|0;c[h>>2]=q;c[h+4>>2]=n;tf(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 Xs(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))ba();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[17720]|0))wf(51059,e);if((Kb[c[17720]&7](3,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)<0)wf(51110,e+8|0);else{i=e;return}}function Ys(){c[17725]=(c[17725]|0)+1;Xs(3,120,1);return}function Zs(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+160|0;if((i|0)>=(j|0))ba();b=a+144|0;d=a+8|0;e=a+4|0;f=a;if(!(c[17716]|0))sf(50532,50547,1180,51148);c[17726]=(c[17726]|0)+1;if(c[17738]|0)Gb[c[17738]&7](3,2);if(ub(b|0,0)|0)rf(50547,1198,51148);else{Is(b,4,2);Is(b+4|0,4,2);ex(0,d)|0;Is(d,136,2);xx(d|0,0,136)|0;c[e>>2]=sb(0)|0;Is(e,4,2);c[f>>2]=Ya()|0;Is(f,4,2);Ot(3,2);i=a;return}}function _s(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(c[17740]|0)rf(50547,673,51168);else{c[17740]=dg(c[d>>2]|0)|0;i=b;return}}function $s(){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))ba();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;Ds();Fs();if(!((c[17740]|0)!=0&(c[17717]|0)!=0&(c[17734]|0)!=0)){Ls();i=a;return}if(!(c[17741]|0)){Ls();tf(kf(51198)|0,a);i=a;return}c[m>>2]=0;c[k>>2]=c[17719];c[h>>2]=c[17717];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}Js(c[17717]|0);c[17723]=(c[17723]|0)+1;Js(c[17719]|0);c[17724]=(c[17724]|0)+1;h=c[17740]|0;c[g>>2]=384;c[l>>2]=Jw(h,65,g)|0;do if((c[l>>2]|0)!=-1){g=(Ws(c[l>>2]|0,c[17740]|0,1)|0)!=0;h=c[l>>2]|0;if(g){iw(h)|0;break}if(Tw(h,0)|0){h=kf(51257)|0;g=c[17740]|0;k=lv(c[(Vu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=k;tf(h,e);iw(c[l>>2]|0)|0;break}do{c[m>>2]=Hw(c[l>>2]|0,c[17719]|0,600)|0;if((c[m>>2]|0)!=-1)break}while((c[(Vu()|0)>>2]|0)==4);if((c[m>>2]|0)!=600){h=kf(51257)|0;k=c[17740]|0;g=lv(c[(Vu()|0)>>2]|0)|0;c[d>>2]=k;c[d+4>>2]=g;tf(h,d)}if(iw(c[l>>2]|0)|0){h=kf(51279)|0;g=c[17740]|0;k=lv(c[(Vu()|0)>>2]|0)|0;c[b>>2]=g;c[b+4>>2]=k;tf(h,b)}}else{h=kf(51234)|0;k=c[17740]|0;g=lv(c[(Vu()|0)>>2]|0)|0;c[f>>2]=k;c[f+4>>2]=g;tf(h,f)}while(0);Ls();i=a;return}function at(){Ds();Fs();if(!(c[17717]|0)){Ls();return}Zs();Ls();return}function bt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;ct();if(!(c[d>>2]|0)){i=b;return}dt();do if(c[17747]|0){if(c[(c[17748]|0)+52>>2]|0)sf(51337,51365,767,51379);if(c[(c[17749]|0)+52>>2]|0)sf(51404,51365,768,51379);if(c[(c[17750]|0)+52>>2]|0)sf(51434,51365,769,51379);else{ft(c[17748]|0);ft(c[17749]|0);ft(c[17750]|0);break}}else{c[17747]=ag(48)|0;c[17748]=bg(1,68)|0;et(c[17748]|0);c[17749]=cg(1,68)|0;et(c[17749]|0);c[17750]=cg(1,68)|0;et(c[17750]|0)}while(0);gt();i=b;return}function ct(){if(c[17745]|0)return;c[17745]=1;c[17746]=0;return}function dt(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[d>>2]=iu(13004)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(51301,b)}else{c[17746]=1;i=a;return}}function et(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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 ft(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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];wf(51467,e)}function gt(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[17746]=0;c[d>>2]=ju(13004)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(51513,b)}else{i=a;return}}function ht(){dt();Qt(0,0,0,0)|0;gt();return}function it(){return}function jt(){return 0}function kt(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;bt(1);dt();d=c[f>>2]|0;f=c[g>>2]|0;if((c[h>>2]|0)==2){lt(d,f,c[17750]|0);gt();i=e;return}else{lt(d,f,c[17749]|0);gt();i=e;return}}function lt(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))ba();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))sf(52664,51365,685,52687);if(!(c[l>>2]|0))sf(51549,51365,686,52687);ft(c[l>>2]|0);do if(!(c[(c[l>>2]|0)+4>>2]|0)){if((c[l>>2]|0)==(c[17748]|0)){e=mt(1)|0;c[(c[l>>2]|0)+4>>2]=e}else{e=mt(0)|0;c[(c[l>>2]|0)+4>>2]=e}if(c[(c[l>>2]|0)+4>>2]|0){e=Aw()|0;c[(c[l>>2]|0)+60>>2]=e;break}else wf(52082,g)}while(0);if(!((a[(c[l>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))qt(c[l>>2]|0);e=c[(c[l>>2]|0)+60>>2]|0;if((e|0)==(Aw()|0)?(e=c[(c[l>>2]|0)+64>>2]|0,(e|0)==(Aw()|0)):0)if(st(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)wf(52082,g);else{ft(c[l>>2]|0);i=f;return}Eh(51365,714,52687,0,51819);wf(52082,g)}function mt(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))ba();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[17746]|0))sf(51557,51365,596,51576);c[m>>2]=Xh(l,7,1,1)|0;if(c[m>>2]|0){c[g>>2]=nt(c[m>>2]|0)|0;vf(51594,g);c[h>>2]=0;t=c[h>>2]|0;i=e;return t|0}if(c[k>>2]|0){c[n>>2]=_f(16)|0;lt(c[n>>2]|0,16,c[17749]|0)}else c[n>>2]=ot(16)|0;c[m>>2]=ii(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=Jx(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}Wf(c[n>>2]|0);if(c[m>>2]|0){c[f>>2]=nt(c[m>>2]|0)|0;vf(51743,f);ai(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 nt(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=cu(c[d>>2]|0)|0;i=b;return a|0}function ot(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))ba();d=b;e=b+12|0;f=b+8|0;g=b+4|0;c[e>>2]=a;if(c[17751]|0)sf(51637,51365,552,51661);c[17751]=ag(c[e>>2]|0)|0;c[17752]=c[e>>2];c[17753]=0;c[g>>2]=Qt(4,0,16,2)|0;if((c[g>>2]|0)<0){h=c[17751]|0;Wf(h);c[17751]=0;wf(51715,d)}if((c[17753]|0)!=(c[17752]|0)){h=c[17751]|0;Wf(h);c[17751]=0;wf(51715,d)}else{c[f>>2]=c[17751];c[17751]=0;i=b;return c[f>>2]|0}return 0}function pt(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))ba();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[17746]|0))sf(51557,51365,531,51673);if(!(c[17751]|0))sf(51692,51365,532,51673);while(1){h=c[k>>2]|0;c[k>>2]=h+-1;if(!h){m=8;break}if((c[17753]|0)>>>0>=(c[17752]|0)>>>0){m=8;break}h=c[l>>2]|0;c[l>>2]=h+1;f=d[h>>0]|0;h=c[17753]|0;c[17753]=h+1;e=(c[17751]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f}if((m|0)==8){i=g;return}}function qt(b){b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=b;if(!(c[17746]|0))sf(51557,51365,658,51775);b=(c[e>>2]|0)+17|0;if((c[e>>2]|0)==(c[17748]|0)){lt(b,16,c[17749]|0);f=(c[e>>2]|0)+8|0;a[f>>0]=a[f>>0]&-2|1;f=Aw()|0;c[(c[e>>2]|0)+64>>2]=f;i=d;return}else{rt(b,16);b=(c[e>>2]|0)+8|0;a[b>>0]=a[b>>0]&-2|1;b=Aw()|0;c[(c[e>>2]|0)+64>>2]=b;i=d;return}}function rt(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))ba();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[17746]|0))sf(51557,51365,642,51787);if((c[h>>2]|0)!=16)sf(51806,51365,643,51787);c[k>>2]=ot(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=Jx(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}Wf(c[k>>2]|0);i=f;return}function st(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))ba();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[17746]|0))sf(51557,51365,444,51873);if(!(c[(c[m>>2]|0)+4>>2]|0))sf(51889,51365,445,51873);if(!((a[(c[m>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))sf(51908,51365,446,51873);if(!(c[17747]|0))sf(51927,51365,448,51873);c[o>>2]=c[17747];c[p>>2]=(c[17747]|0)+16;c[q>>2]=(c[17747]|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){qt(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;tt(n,16,c[m>>2]|0);ut(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[17748]|0):0)?(c[m>>2]|0)!=(c[17749]|0):0)?(c[m>>2]|0)!=(c[17750]|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(!(jw(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))}Ax(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=Jx(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){Eh(51365,502,51873,0,52042);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 tt(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))ba();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)sf(51806,51365,273,51957);if(!(c[17746]|0))sf(51557,51365,274,51957);if(((c[(c[n>>2]|0)+52>>2]|0?(c[n>>2]|0)!=(c[17748]|0):0)?(c[n>>2]|0)!=(c[17749]|0):0)?(c[n>>2]|0)!=(c[17750]|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[17754]|0)){c[17755]=Aw()|0;c[17756]=Uw()|0}if(ub(p|0,0)|0){c[k>>2]=lv(c[(Vu()|0)>>2]|0)|0;wf(51969,k)}c[o>>2]=c[p+4>>2];c[o>>2]=c[o>>2]<<4;if((c[p>>2]|0)==(c[17754]|0)?(c[o>>2]|0)==(c[17757]|0):0){b[35814]=(b[35814]|0)+1<<16>>16;b[35814]=(e[35814]|0)&4095}else{b[35814]=0;c[17754]=c[p>>2];c[17757]=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[35814]|0)>>8&15;a[(c[l>>2]|0)+7>>0]=e[35814]|0;a[(c[l>>2]|0)+8>>0]=(c[17755]|0)>>>24;a[(c[l>>2]|0)+9>>0]=(c[17755]|0)>>>16;a[(c[l>>2]|0)+10>>0]=(c[17755]|0)>>>8;a[(c[l>>2]|0)+11>>0]=c[17755];a[(c[l>>2]|0)+12>>0]=(c[17756]|0)>>>24;a[(c[l>>2]|0)+13>>0]=(c[17756]|0)>>>16;a[(c[l>>2]|0)+14>>0]=(c[17756]|0)>>>8;a[(c[l>>2]|0)+15>>0]=c[17756];l=(c[17756]|0)+1|0;c[17756]=l;if(l|0){i=h;return}c[17755]=(c[17755]|0)+1;i=h;return}function ut(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))ba();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;vt(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,16);wt(c[r>>2]|0,c[q>>2]|0,c[o>>2]|0,16);vt(c[p>>2]|0,c[m>>2]|0,c[r>>2]|0,16);wt(c[r>>2]|0,c[m>>2]|0,c[q>>2]|0,16);vt(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=Jx(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=Jx(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 vt(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))ba();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)sf(51806,51365,386,51996);c[n>>2]=bi(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]=nt(c[n>>2]|0)|0;wf(52008,g)}else{i=f;return}}function wt(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))ba();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 xt(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;bt(1);dt();lt(c[e>>2]|0,c[f>>2]|0,c[17748]|0);gt();i=d;return}function yt(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;Mn(b+8|0,8,1);c[e>>2]=zt(c[d>>2]|0)|0;d=At(c[e>>2]|0)|0;i=b;return d|0}function zt(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))ba();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[17747]|0))sf(51927,51365,912,52111);c[k>>2]=bg(1,68)|0;et(c[k>>2]|0);dt();c[g>>2]=0;a:while(1){if((c[g>>2]|0)>>>0>=3)break;c[l>>2]=Xh((c[k>>2]|0)+4|0,7,1,1)|0;if(c[l>>2]|0){o=6;break}c[l>>2]=ii(c[(c[k>>2]|0)+4>>2]|0,52162+((c[g>>2]|0)*96|0)|0,16)|0;if(c[l>>2]|0){o=8;break}b=Aw()|0;c[(c[k>>2]|0)+60>>2]=b;b=(c[k>>2]|0)+17|0;p=52162+((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=Aw()|0;c[(c[k>>2]|0)+64>>2]=p;c[(c[k>>2]|0)+52>>2]=52162+((c[g>>2]|0)*96|0)+16;c[(c[k>>2]|0)+56>>2]=(d[52162+((c[g>>2]|0)*96|0)+16+12>>0]|0)<<24|(d[52162+((c[g>>2]|0)*96|0)+16+13>>0]|0)<<16|(d[52162+((c[g>>2]|0)*96|0)+16+14>>0]|0)<<8|(d[52162+((c[g>>2]|0)*96|0)+16+15>>0]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=3)break;if(st(n,16,c[k>>2]|0)|0){o=12;break a}if(jw(n,52162+((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)!=(Aw()|0)){o=18;break}p=c[(c[k>>2]|0)+64>>2]|0;if((p|0)!=(Aw()|0)){o=18;break}ai(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;ft(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if((o|0)==6)c[m>>2]=52124;else if((o|0)==8)c[m>>2]=52450;else if((o|0)==12)c[m>>2]=52476;else if((o|0)==14)c[m>>2]=52507;else if((o|0)==18)c[m>>2]=52545;gt();ai(c[(c[k>>2]|0)+4>>2]|0);ft(c[k>>2]|0);Wf(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}Nb[c[f>>2]&1](52567,0,52574,c[m>>2]|0);r=c[m>>2]|0;s=(r|0)!=0;t=s?50:0;i=e;return t|0}function At(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Bt(1,c[d>>2]|0)|0;i=b;return a|0}function Bt(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))ba();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 Ct(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))ba();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;bt(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]=Xf(1,68+(c[w>>2]|0)|0)|0;if(!(c[y>>2]|0)){c[o>>2]=fu()|0;z=c[o>>2]|0;i=n;return z|0}et(c[y>>2]|0);c[x>>2]=Xh((c[y>>2]|0)+4|0,7,1,1)|0;if((c[x>>2]|0)==0?(c[x>>2]=ii(c[(c[y>>2]|0)+4>>2]|0,c[r>>2]|0,c[s>>2]|0)|0,(c[x>>2]|0)==0):0){s=Aw()|0;c[(c[y>>2]|0)+60>>2]=s;Ax((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=Aw()|0;c[(c[y>>2]|0)+64>>2]=u;Ax((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;ft(c[y>>2]|0);c[x>>2]=0}q=c[y>>2]|0;if(c[x>>2]|0){ai(c[q+4>>2]|0);Wf(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 Dt(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))ba();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{dt();lt(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);gt();c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}return 0}function Et(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];if(!(c[e>>2]|0)){i=b;return}ai(c[(c[e>>2]|0)+4>>2]|0);Wf(c[e>>2]|0);i=b;return}function Ft(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();c[b>>2]=a;Gt();i=b;return}function Gt(){if(c[17758]|0)return;c[17758]=1;c[17759]=0;return}function Ht(){It();Qt(0,0,0,0)|0;Jt();return}function It(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[d>>2]=iu(13048)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(52578,b)}else{c[17759]=1;i=a;return}}function Jt(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;d=a+4|0;c[17759]=0;c[d>>2]=ju(13048)|0;if(c[d>>2]|0){c[b>>2]=cu(c[d>>2]|0)|0;wf(52621,b)}else{i=a;return}}function Kt(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Ft(1);if((c[h>>2]|0)!=2)c[h>>2]=1;It();Lt(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);Jt();i=e;return}function Lt(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))ba();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))sf(52664,52671,144,52687);c[17760]=c[g>>2];c[17761]=c[h>>2];c[17762]=0;c[l>>2]=Qt(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;wf(52742,f)}if((c[17762]|0)!=(c[17761]|0)){m=c[l>>2]|0;c[f>>2]=m;wf(52742,f)}else{i=e;return}}function Mt(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))ba();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[17759]|0))sf(52698,52671,124,52719);if(!(c[17760]|0))sf(52727,52671,125,52719);while(1){g=c[h>>2]|0;c[h>>2]=g+-1;if(!g){l=8;break}if((c[17762]|0)>>>0>=(c[17761]|0)>>>0){l=8;break}g=c[k>>2]|0;c[k>>2]=g+1;e=a[g>>0]|0;g=c[17762]|0;c[17762]=g+1;a[(c[17760]|0)+g>>0]=e}if((l|0)==8){i=f;return}}function Nt(){return c[17763]|0}function Ot(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();c[d+4>>2]=a;c[d>>2]=b;i=d;return}function Pt(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[d+8>>2]=a;c[d+4>>2]=b;c[e>>2]=0;i=d;return c[e>>2]|0}function Qt(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))ba();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[3273]|0)!=-1){iw(c[3273]|0)|0;c[3273]=-1}if((c[3274]|0)!=-1){iw(c[3274]|0)|0;c[3274]=-1}c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}c[v>>2]=Pt(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[3273]|0)==-1){c[3273]=Rt(52788,(d[76494]|0)&1)|0;a[76494]=d[76494]|0|1}c[s>>2]=c[3273]}else{if((c[3274]|0)==-1){c[3274]=Rt(52890,(d[76494]|0)&2)|0;a[76494]=d[76494]|0|2}c[s>>2]=c[3274]}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);yn(52903,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=Gw((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]=lv(c[(Vu()|0)>>2]|0)|0;vf(52916,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]=Iw(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];vf(52936,l);c[t>>2]=c[G>>2]}if((c[t>>2]|0)!=-1)break}while((c[(Vu()|0)>>2]|0)==4);if((c[t>>2]|0)==-1){N=38;break}Ib[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]=lv(c[(Vu()|0)>>2]|0)|0;wf(52974,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=Jx(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)yn(52903,88,c[w>>2]|0,c[w>>2]|0);c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}function Rt(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))ba();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)yn(52800,88,1,0);while(1){c[l>>2]=Jw(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;yn(52816,88,0,c[m>>2]|0);Gw(0,0,0,0,m)|0}if((c[l>>2]|0)==-1){m=c[h>>2]|0;h=lv(c[(Vu()|0)>>2]|0)|0;c[f>>2]=m;c[f+4>>2]=h;wf(52832,f)}if(!(St(c[l>>2]|0)|0)){n=c[l>>2]|0;i=d;return n|0}f=c[l>>2]|0;h=lv(c[(Vu()|0)>>2]|0)|0;c[e>>2]=f;c[e+4>>2]=h;vf(52851,e);n=c[l>>2]|0;i=d;return n|0}function St(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))ba();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]=hw(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]=hw(e,2,d)|0;k=c[f>>2]|0;i=b;return k|0}return 0}function Tt(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))ba();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]=_(c[v>>2]|0,c[w>>2]|0)|0;c[s>>2]=_(c[v>>2]|0,c[y>>2]|0)|0;c[t>>2]=_(c[x>>2]|0,c[w>>2]|0)|0;c[u>>2]=_(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 Ut(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))ba();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]=_p(c[(c[k>>2]|0)+4>>2]|0)|0;c[n>>2]=Oo(c[k>>2]|0)|0;c[o>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[p>>2]=0;if(eg(1)|0){d=c[l>>2]|0;c[h>>2]=c[n>>2];c[h+4>>2]=d;yf(53007,h)}while(1){if((c[p>>2]|0)==0|(c[n>>2]|0)>>>0<32){Wf(c[p>>2]|0);c[p>>2]=Ln(c[o>>2]|0,c[l>>2]|0)|0}else{c[q>>2]=Ln(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;Wf(c[q>>2]|0)}zp(c[m>>2]|0,c[p>>2]|0,c[o>>2]|0,0);d=(Po(c[m>>2]|0,(c[n>>2]|0)-1|0)|0)!=0;Ro(c[m>>2]|0,(c[n>>2]|0)-1|0);if(!d)To(c[m>>2]|0,(c[n>>2]|0)-1|0);if((Zo(c[m>>2]|0,c[k>>2]|0)|0)>=0){if(!(eg(1)|0))continue;yf(53054,g);continue}if((Yo(c[m>>2]|0,0)|0)>0)break;if(!(eg(1)|0))continue;yf(53076,f)}Wf(c[p>>2]|0);i=e;return c[m>>2]|0}function Vt(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))ba();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]=Oo(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=Rj(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]=Qf(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]=Xf(1,c[r>>2]|0)|0;if(!(c[w>>2]|0)){c[u>>2]=fu()|0;break}c[u>>2]=Wt(x,c[p>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0)|0;if(((((((c[u>>2]|0)==0?(c[u>>2]=Xt(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]=rj(z,c[s>>2]|0,3)|0,(c[u>>2]|0)==0):0)?(c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Cj(c[z>>2]|0,76495,1),Cj(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Cj(c[z>>2]|0,c[y>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),k=c[w>>2]|0,h=Oj(c[z>>2]|0,0)|0,Ax(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),h=c[v>>2]|0,k=Oj(c[z>>2]|0,0)|0,Ax(h|0,k|0,c[r>>2]|0)|0,c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Cj(c[z>>2]|0,53096,1),Cj(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Cj(c[z>>2]|0,c[y>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),k=c[w>>2]|0,h=Oj(c[z>>2]|0,0)|0,Ax(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0){Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);h=c[v>>2]|0;k=Oj(c[z>>2]|0,0)|0;Ax(h|0,k|0,c[r>>2]|0)|0;c[A>>2]=Qf(((((c[D>>2]|0)+7|0)>>>0)/8|0)+(c[r>>2]|0)|0)|0;if(!(c[A>>2]|0)){c[u>>2]=fu()|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]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=Oj(c[z>>2]|0,0)|0;Ax(k|0,h|0,c[r>>2]|0)|0;Ax((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)}eq(c[B>>2]|0);c[B>>2]=0;c[u>>2]=Ap(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)Vo(c[B>>2]|0,c[B>>2]|0,(c[C>>2]|0)-(c[D>>2]|0)|0);if((Zo(c[B>>2]|0,c[o>>2]|0)|0)<0?(Yo(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]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Cj(c[z>>2]|0,76495,1);h=c[w>>2]|0;k=Oj(c[z>>2]|0,0)|0;Ax(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=Oj(c[z>>2]|0,0)|0;Ax(k|0,h|0,c[r>>2]|0)|0;continue}c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Cj(c[z>>2]|0,76495,1);h=c[w>>2]|0;k=Oj(c[z>>2]|0,0)|0;Ax(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Ij(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Cj(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);k=c[v>>2]|0;h=Oj(c[z>>2]|0,0)|0;Ax(k|0,h|0,c[r>>2]|0)|0}}}else c[u>>2]=fu()|0;while(0);Wf(c[A>>2]|0);Bj(c[z>>2]|0);Wf(c[y>>2]|0);Wf(c[x>>2]|0);Wf(c[w>>2]|0);Wf(c[v>>2]|0);v=c[B>>2]|0;if(c[u>>2]|0)eq(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 Wt(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))ba();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]=Ep(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=Tf(c[o>>2]|0)|0;else s=Qf(c[o>>2]|0)|0;c[p>>2]=s;if(!(c[p>>2]|0)){c[f>>2]=fu()|0;q=c[f>>2]|0;i=e;return q|0}if(c[n>>2]|0)xx(c[p>>2]|0,0,c[n>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);c[l>>2]=Ep(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){Wf(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 Xt(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))ba();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]=Ap(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)Vo(c[q>>2]|0,c[q>>2]|0,(c[m>>2]|0)-(c[o>>2]|0)|0);if((Zo(c[q>>2]|0,c[n>>2]|0)|0)>=0)Ko(c[q>>2]|0,c[q>>2]|0,c[n>>2]|0);c[p>>2]=Wt(c[k>>2]|0,c[q>>2]|0,(((c[o>>2]|0)+7|0)>>>0)/8|0)|0;eq(c[q>>2]|0);c[h>>2]=c[p>>2];r=c[h>>2]|0;i=g;return r|0}function Yt(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))ba();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]=hq(c[g>>2]|0,n)|0;c[l>>2]=Ap(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;Vo(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 Zt(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))ba();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(eg(1)|0)Cf(53098,c[m>>2]|0);c[D>>2]=Oo(c[(c[n>>2]|0)+32>>2]|0)|0;c[s>>2]=Yt(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]=Yp(0)|0;c[w>>2]=Yp(0)|0;c[x>>2]=Yp(0)|0;c[y>>2]=Yp(0)|0;$n(z);c[E>>2]=go(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){eq(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]=hq(c[m>>2]|0,C)|0;c[s>>2]=Vt(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]=Ut(c[(c[n>>2]|0)+32>>2]|0,1)|0;Do(z,c[u>>2]|0,(c[n>>2]|0)+20|0,c[E>>2]|0);if(Wn(c[y>>2]|0,0,z,c[E>>2]|0)|0){G=14;break}np(c[o>>2]|0,c[y>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if((Yo(c[o>>2]|0,0)|0)!=0^1)continue;sp(c[v>>2]|0,c[(c[n>>2]|0)+56>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0);Lo(c[w>>2]|0,c[A>>2]|0,c[v>>2]|0,c[(c[n>>2]|0)+32>>2]|0);mp(c[x>>2]|0,c[u>>2]|0,c[(c[n>>2]|0)+32>>2]|0)|0;sp(c[p>>2]|0,c[x>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if(!((Yo(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(eg(1)|0)yf(53175,k);c[s>>2]=8}else if((G|0)==19?eg(1)|0:0){Cf(53116,c[o>>2]|0);Cf(53137,c[p>>2]|0)}ko(c[E>>2]|0);bo(z);eq(c[y>>2]|0);eq(c[x>>2]|0);eq(c[w>>2]|0);eq(c[v>>2]|0);eq(c[u>>2]|0);if((c[A>>2]|0)!=(c[m>>2]|0))eq(c[A>>2]|0);c[l>>2]=c[s>>2];F=c[l>>2]|0;i=h;return F|0}function _t(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))ba();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((Yo(c[n>>2]|0,0)|0)>0?(Zo(c[n>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){if((Yo(c[o>>2]|0,0)|0)>0?(Zo(c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){c[z>>2]=Oo(c[(c[m>>2]|0)+32>>2]|0)|0;c[p>>2]=Yt(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]=Yp(0)|0;c[s>>2]=Yp(0)|0;c[t>>2]=Yp(0)|0;c[u>>2]=Yp(0)|0;$n(v);$n(w);$n(x);c[y>>2]=go(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;mp(c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0;sp(c[s>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Do(w,c[s>>2]|0,(c[m>>2]|0)+20|0,c[y>>2]|0);sp(c[t>>2]|0,c[n>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Do(x,c[t>>2]|0,(c[m>>2]|0)+44|0,c[y>>2]|0);xo(v,w,x,c[y>>2]|0);do if(Yo(c[v+8>>2]|0,0)|0){if(Wn(c[u>>2]|0,0,v,c[y>>2]|0)|0){if(eg(1)|0)yf(53281,g);c[p>>2]=8;break}np(c[u>>2]|0,c[u>>2]|0,c[(c[m>>2]|0)+32>>2]|0);if(Zo(c[u>>2]|0,c[n>>2]|0)|0){if(eg(1)|0){Cf(53327,c[u>>2]|0);Cf(53334,c[n>>2]|0);Cf(53341,c[o>>2]|0)}c[p>>2]=8}}else{if(eg(1)|0)yf(53259,h);c[p>>2]=8}while(0);ko(c[y>>2]|0);bo(x);bo(w);bo(v);eq(c[u>>2]|0);eq(c[t>>2]|0);eq(c[s>>2]|0);eq(c[r>>2]|0);if((c[q>>2]|0)!=(c[l>>2]|0))eq(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 $t(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))ba();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(eg(1)|0)Cf(53158,c[k>>2]|0);c[z>>2]=Oo(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]=hq(c[k>>2]|0,y)|0;c[o>>2]=Ap(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;Vo(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]=Yp(0)|0;c[r>>2]=Yp(0)|0;c[s>>2]=Yp(0)|0;c[u>>2]=Yp(0)|0;c[t>>2]=Yp(0)|0;$n(v);c[A>>2]=go(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;np(c[u>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!(Yo(c[u>>2]|0,0)|0))pq(c[u>>2]|0,1)|0;while(1){eq(c[p>>2]|0);c[p>>2]=Ut(c[(c[l>>2]|0)+32>>2]|0,1)|0;Do(v,c[p>>2]|0,(c[l>>2]|0)+20|0,c[A>>2]|0);if(Wn(c[t>>2]|0,0,v,c[A>>2]|0)|0){C=13;break}np(c[m>>2]|0,c[t>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if((Yo(c[m>>2]|0,0)|0)!=0^1)continue;sp(c[q>>2]|0,c[(c[l>>2]|0)+56>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+32>>2]|0);sp(c[s>>2]|0,c[p>>2]|0,c[u>>2]|0,c[(c[l>>2]|0)+32>>2]|0);Lo(c[n>>2]|0,c[s>>2]|0,c[q>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!((Yo(c[n>>2]|0,0)|0)!=0^1)){C=18;break}}if((C|0)==13){if(eg(1)|0)yf(53175,g);c[o>>2]=8}else if((C|0)==18?eg(1)|0:0){Cf(53219,c[m>>2]|0);Cf(53239,c[n>>2]|0)}ko(c[A>>2]|0);bo(v);eq(c[t>>2]|0);eq(c[u>>2]|0);eq(c[s>>2]|0);eq(c[r>>2]|0);eq(c[q>>2]|0);eq(c[p>>2]|0);if((c[w>>2]|0)!=(c[k>>2]|0))eq(c[w>>2]|0);c[h>>2]=c[o>>2];B=c[h>>2]|0;i=f;return B|0}function au(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))ba();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((Yo(c[p>>2]|0,0)|0)>0?(Zo(c[p>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){if((Yo(c[q>>2]|0,0)|0)>0?(Zo(c[q>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){c[t>>2]=Yp(0)|0;c[s>>2]=Yp(0)|0;c[u>>2]=Yp(0)|0;c[v>>2]=Yp(0)|0;c[w>>2]=Yp(0)|0;c[x>>2]=Yp(0)|0;c[y>>2]=Yp(0)|0;$n(z);$n(A);$n(B);c[C>>2]=go(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;np(c[s>>2]|0,c[n>>2]|0,c[(c[o>>2]|0)+32>>2]|0);if(!(Yo(c[s>>2]|0,0)|0))pq(c[s>>2]|0,1)|0;mp(c[w>>2]|0,c[s>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0;sp(c[u>>2]|0,c[q>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);sp(c[x>>2]|0,c[p>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Mo(c[v>>2]|0,c[y>>2]|0,c[x>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Do(A,c[u>>2]|0,(c[o>>2]|0)+20|0,c[C>>2]|0);Do(B,c[v>>2]|0,(c[o>>2]|0)+44|0,c[C>>2]|0);xo(z,A,B,c[C>>2]|0);do if(Yo(c[z+8>>2]|0,0)|0){if(Wn(c[t>>2]|0,0,z,c[C>>2]|0)|0){if(eg(1)|0)yf(53281,k);c[r>>2]=8;break}np(c[t>>2]|0,c[t>>2]|0,c[(c[o>>2]|0)+32>>2]|0);n=(Zo(c[t>>2]|0,c[p>>2]|0)|0)!=0;e=(eg(1)|0)!=0;if(!n){if(!e)break;yf(53374,g);break}if(e){Cf(53327,c[t>>2]|0);Cf(53334,c[p>>2]|0);Cf(53341,c[q>>2]|0);yf(53348,h)}c[r>>2]=8}else{if(eg(1)|0)yf(53259,l);c[r>>2]=8}while(0);ko(c[C>>2]|0);bo(B);bo(A);bo(z);eq(c[y>>2]|0);eq(c[x>>2]|0);eq(c[w>>2]|0);eq(c[v>>2]|0);eq(c[u>>2]|0);eq(c[t>>2]|0);eq(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 bu(){return qu()|0}function cu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Du(c[d>>2]|0)|0;i=b;return a|0}function du(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Hu(c[d>>2]|0)|0;i=b;return a|0}function eu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Gu(c[d>>2]|0)|0;i=b;return a|0}function fu(){return Iu()|0}function gu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;su(c[d>>2]|0);i=b;return}function hu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=lu(c[d>>2]|0)|0;i=b;return a|0}function iu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=nu(c[d>>2]|0)|0;i=b;return a|0}function ju(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=ou(c[d>>2]|0)|0;i=b;return a|0}function ku(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=pu(c[d>>2]|0)|0;i=b;return a|0}function lu(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))ba();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]=mu(c[d>>2]|0)|0;else c[c[e>>2]>>2]=1;c[f>>2]=Ba((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]=du(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function mu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];if((c[c[e>>2]>>2]|0)!=1)Ja(53396,53416,114,53429);else{i=b;return c[e>>2]|0}return 0}function nu(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=mu(c[d>>2]|0)|0;c[f>>2]=tb((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]=du(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function ou(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=mu(c[d>>2]|0)|0;c[f>>2]=db((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]=du(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function pu(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))ba();d=b+52|0;e=b+48|0;f=b+44|0;g=b;c[d>>2]=a;c[e>>2]=mu(c[d>>2]|0)|0;c[f>>2]=cb((c[e>>2]|0)+4|0)|0;if(c[f>>2]|0){c[f>>2]=du(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 qu(){ru();return 0}function ru(){tu()|0;return}function su(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=c[d>>2]|0;c[(Vu()|0)>>2]=a;i=b;return}function tu(){if(c[17764]|0)return 0;c[17764]=1;wb(3)|0;return 0}function uu(){vu(0)|0;c[17766]=0;c[17767]=0;return}function vu(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))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;if(c[d>>2]|0){wu(c[d>>2]|0);c[e>>2]=xu(c[d>>2]|0)|0;Au(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;Bu();c[f>>2]=c[17765];while(1){if(!(c[f>>2]|0))break;if(c[(c[f>>2]|0)+4>>2]|0){wu(c[(c[f>>2]|0)+4>>2]|0);d=xu(c[(c[f>>2]|0)+4>>2]|0)|0;c[e>>2]=c[e>>2]|d;Au(c[(c[f>>2]|0)+4>>2]|0)}c[f>>2]=c[c[f>>2]>>2]}Cu();g=c[e>>2]|0;h=(g|0)!=0;k=h?-1:0;i=b;return k|0}function wu(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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}nu((c[(c[e>>2]|0)+36>>2]|0)+1040|0)|0;i=b;return}function xu(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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]=yu(a)|0;f=c[e>>2]|0;i=b;return f|0}else{zu(a);c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}return 0}function yu(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))ba();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))Ja(53445,53467,1654,53477);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]=Db[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;Db[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 zu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if((c[c[d>>2]>>2]|0)>>>16&1|0)Ja(53486,53467,1722,53509);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 Au(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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}ou((c[(c[e>>2]|0)+36>>2]|0)+1040|0)|0;i=b;return}function Bu(){nu(13100)|0;return}function Cu(){ou(13100)|0;return}function Du(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[f>>2]=Eu(c[e>>2]|0)|0;do if(c[f>>2]&32768|0){c[g>>2]=eu(c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[f>>2]=16382;break}c[d>>2]=lv(c[g>>2]|0)|0;h=c[d>>2]|0;i=b;return h|0}while(0);c[d>>2]=53518+(c[13144+((Fu(c[f>>2]|0)|0)<<2)>>2]|0);h=c[d>>2]|0;i=b;return h|0}function Eu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Fu(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 Gu(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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[14632+(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 Hu(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))ba();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[15196+(c[f>>2]<<2)>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function Iu(){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))ba();b=a+8|0;d=a+4|0;e=a;c[d>>2]=c[(Vu()|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[15196+(c[e>>2]<<2)>>2];f=c[b>>2]|0;i=a;return f|0}return 0}function Ju(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))ba();f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=c[g>>2]|0;b=ce(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=gw(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 Ku(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))ba();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=de(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=kw(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 Lu(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))ba();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]=Hv(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;Ax((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 Mu(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))ba();e=d+8|0;f=d+4|0;g=d;c[f>>2]=a;c[g>>2]=b;do if(0!=(Nu(c[f>>2]|0)|0)?0!=(Nu(c[g>>2]|0)|0):0)if(!(Sv((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 Nu(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=b;i=d;return 0!=(a[(c[e>>2]|0)+12>>0]|0)|0}function Ou(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))ba();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!=(Mu(c[k>>2]|0,c[l>>2]|0)|0)){c[o>>2]=349;if((c[3925]|0)==-1)c[3925]=Dc(1,0,61533,61542,c[o>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3925]|0))Cc();c[g>>2]=61533;c[g+4>>2]=349;Ic(1,61559,g);Cc()}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==(Pu(m)|0)){c[p>>2]=353;if((c[3926]|0)==-1)c[3926]=Dc(1,0,61533,61542,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3926]|0))Cc();c[f>>2]=61533;c[f+4>>2]=353;Ic(1,61559,f);Cc()}if(-1==(Pu(n)|0)){c[q>>2]=355;if((c[3927]|0)==-1)c[3927]=Dc(1,0,61533,61542,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3927]|0))Cc();c[e>>2]=61533;c[e+4>>2]=355;Ic(1,61559,e);Cc()}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 Pu(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))ba();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;if(1!=(Nu(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=yx(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){Qu(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 Qu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 Ru(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))ba();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!=(Mu(c[m>>2]|0,c[n>>2]|0)|0)){Qu(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!=(Pu(o)|0)?-1!=(Pu(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=yx(c[d>>2]|0,c[d+4>>2]|0,-1,-1)|0;d=o;c[d>>2]=n;c[d+4>>2]=C;break}Qu(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)){Qu(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}if(1!=(Lu(o+12|0,c[l>>2]|0)|0)){c[q>>2]=421;if((c[3928]|0)==-1)c[3928]=Dc(1,0,61533,61587,c[q>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3928]|0))Cc();c[h>>2]=61533;c[h+4>>2]=421;Ic(1,61559,h);Cc()}if((c[o+8>>2]|0)>>>0<(c[p+8>>2]|0)>>>0){c[r>>2]=422;if((c[3929]|0)==-1)c[3929]=Dc(1,0,61533,61587,c[r>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3929]|0))Cc();c[g>>2]=61533;c[g+4>>2]=422;Ic(1,61559,g);Cc()}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=wx(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[3930]|0)==-1)c[3930]=Dc(1,0,61533,61587,c[s>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3930]|0))Cc();c[f>>2]=61533;c[f+4>>2]=424;Ic(1,61559,f);Cc()}Qu(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}function Su(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))ba();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!=(Mu(c[k>>2]|0,c[l>>2]|0)|0)){Qu(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!=(Pu(m)|0)?-1!=(Pu(n)|0):0){if(1==(Lu((c[k>>2]|0)+12|0,o)|0)){k=m;d=n;l=yx(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)){Qu(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==(Pu(o)|0);m=c[h>>2]|0;if(n){Qu(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[3931]|0)==-1)c[3931]=Dc(1,0,61533,61609,c[p>>2]|0)|0;if((Gc()|0)>0){Hc(-1,0);Cc()}if(!(c[3931]|0))Cc();c[f>>2]=61533;c[f+4>>2]=468;Ic(1,61559,f);Cc()}Qu(c[h>>2]|0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}function Tu(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=c[a+60>>2];a=Uu(pb(6,d|0)|0)|0;i=b;return a|0}function Uu(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(Vu()|0)>>2]=0-a;b=-1}else b=a;return b|0}function Vu(){var a=0;if(!(c[17768]|0))a=71116;else a=c[(bb()|0)+64>>2]|0;return a|0}function Wu(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))ba();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,ib(54,g|0)|0):0)a[b+75>>0]=-1;g=Xu(b,d,e)|0;i=f;return g|0}function Xu(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))ba();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[17768]|0)){c[f>>2]=c[b>>2];c[f+4>>2]=o;c[f+8>>2]=h;q=Uu(Bb(146,f|0)|0)|0}else{Ga(6,a|0);c[g>>2]=c[b>>2];c[g+4>>2]=o;c[g+8>>2]=h;n=Uu(Bb(146,g|0)|0)|0;za(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 Yu(a){a=a|0;if(!(c[a+68>>2]|0))Zu(a);return}function Zu(a){a=a|0;return}function _u(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))ba();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((Uu(xb(140,f|0)|0)|0)<0){c[g>>2]=-1;h=-1}else h=c[g>>2]|0;i=e;return h|0}function $u(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))ba();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[17768]|0)){c[g>>2]=c[b+60>>2];c[g+4>>2]=k;c[g+8>>2]=2;p=Uu(Ab(145,g|0)|0)|0}else{Ga(7,b|0);c[h>>2]=c[b+60>>2];c[h+4>>2]=k;c[h+8>>2]=2;k=Uu(Ab(145,h|0)|0)|0;za(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 av(a){a=a|0;if(!(c[a+68>>2]|0))Zu(a);return}function bv(a){a=a|0;return cv(a)|0}function cv(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function dv(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 ev(a){a=a|0;var b=0;b=(fv(a)|0)==0;return (b?a:a|32)|0}function fv(a){a=a|0;return (a+-65|0)>>>0<26|0}function gv(a){a=a|0;return hv(a,0)|0}function hv(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|(iv(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[18850+(k<<2)+2>>0]|0;l=i<<24>>24;m=c-(e[18850+(k<<2)>>1]|0)|0;if((m-(l&h)|0)>>>0<(d[18850+(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=(_(o,g)|0)+c|0;break}m=1-f|0;l=b[18358+(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[18358+(r<<2)+(m<<1)>>1]|0;if(!(i<<16>>16))break b}j=e[18358+(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 iv(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[61626+((d[61626+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=a>>>0<196606&1;return b|0}function jv(a){a=a|0;return hv(a,1)|0}function kv(a){a=a|0;return (a+-97|0)>>>0<26|0}function lv(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[64602+c>>0]|0)==(b|0)){e=c;f=2;break}c=c+1|0;if((c|0)==87){g=87;h=64690;f=5;break}}if((f|0)==2)if(!e)i=64690;else{g=e;h=64690;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 mv(a){a=a|0;var b=0;if(!a)b=0;else b=(nv(16168,a)|0)!=0;return b&1|0}function nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=a+((ov(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 ov(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 pv(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 qv(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))ba();g=f;c[g>>2]=e;e=rv(a,b,d,g)|0;i=f;return e|0}function rv(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))ba();h=g+112|0;k=g;l=k;m=16256;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[(Vu()|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=tv(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 sv(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;Ax(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function tv(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))ba();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((uv(0,d,g,k,h)|0)<0)o=-1;else{if((c[b+76>>2]|0)>-1)p=Fv(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=uv(b,d,g,k,h)|0;if(!q)u=l;else{Db[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=uv(b,d,g,k,h)|0;h=c[b>>2]|0;c[b>>2]=h|m;if(p|0)Zu(b);o=(h&32|0)==0?u:-1}i=f;return o|0}function uv(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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=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))ba();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[(Vu()|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)){R=Q;S=O;T=244;break}else{U=f;V=P}b:while(1){switch(U<<24>>24){case 37:{W=V;X=V;T=9;break b;break}case 0:{Y=V;Z=V;break b;break}default:{}}f=V+1|0;U=a[f>>0]|0;V=f}c:do if((T|0)==9)while(1){T=0;if((a[W+1>>0]|0)!=37){Y=W;Z=X;break c}f=X+1|0;$=W+2|0;if((a[$>>0]|0)==37){W=$;X=f;T=9}else{Y=$;Z=f;break}}while(0);f=Z-P|0;if(w?(c[e>>2]&32|0)==0:0)vv(P,f,e)|0;if((Z|0)!=(P|0)){M=Q;N=f;P=Y;continue}$=Y+1|0;aa=a[$>>0]|0;ca=(aa<<24>>24)+-48|0;if(ca>>>0<10){da=(a[Y+2>>0]|0)==36;ea=da?Y+3|0:$;fa=a[ea>>0]|0;ga=da?ca:-1;ha=da?1:O;ia=ea}else{fa=aa;ga=-1;ha=O;ia=$}$=fa<<24>>24;d:do if(($&-32|0)==32){aa=$;ea=fa;da=0;ca=ia;while(1){if(!(1<<aa+-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;aa=oa<<24>>24;if((aa&-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){$=la+1|0;ca=(a[$>>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[$>>0]|0)+-48<<3)>>2]|0}else{if(ha|0){sa=-1;break a}if(!w){ta=ka;ua=0;va=$;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=$;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){$=la;ca=0;ea=da;while(1){da=(ca*10|0)+ea|0;aa=$+1|0;ea=(a[aa>>0]|0)+-48|0;if(ea>>>0>=10){xa=da;ya=aa;break}else{$=aa;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;$=a[ca>>0]|0;if($<<24>>24!=42){ea=($<<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);$=c[ea>>2]|0;c[g>>2]=ea+4;Ca=$;Da=ca}else{Ca=0;Da=ca}}else{Ca=-1;Da=va}while(0);ca=Da;$=0;while(1){ea=(a[ca>>0]|0)+-65|0;if(ea>>>0>57){sa=-1;break a}da=ca+1|0;aa=a[66494+($*58|0)+ea>>0]|0;ea=aa&255;if((ea+-1|0)>>>0<8){ca=da;$=ea}else{Ea=da;Fa=aa;Ga=ea;Ha=ca;Ia=$;break}}if(!(Fa<<24>>24)){sa=-1;break}$=(ga|0)>-1;do if(Fa<<24>>24==19)if($){sa=-1;break a}else T=52;else{if($){c[m+(ga<<2)>>2]=Ga;ca=l+(ga<<3)|0;ea=c[ca+4>>2]|0;aa=s;c[aa>>2]=c[ca>>2];c[aa+4>>2]=ea;T=52;break}if(!w){sa=0;break a}xv(s,Ga,g)}while(0);if((T|0)==52?(T=0,!w):0){M=Q;N=f;O=ua;P=Ea;continue}$=a[Ha>>0]|0;ea=(Ia|0)!=0&($&15|0)==3?$&-33:$;$=ta&-65537;aa=(ta&8192|0)==0?ta:$;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=aa|8;Ka=Ca>>>0>8?Ca:8;La=120;T=64;break}case 88:case 120:{Ja=aa;Ka=Ca;La=ea;T=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=Ex(ma|0,da|0,3)|0;da=C;if((ma|0)==0&(da|0)==0){Ma=na;break}else ca=na}}if(!(aa&8)){Na=Ma;Oa=aa;Pa=Ca;Qa=0;Ra=66974;T=77}else{ca=y-Ma|0;Na=Ma;Oa=aa;Pa=(Ca|0)>(ca|0)?Ca:ca+1|0;Qa=0;Ra=66974;T=77}break}case 105:case 100:{ca=s;da=c[ca>>2]|0;ma=c[ca+4>>2]|0;if((ma|0)<0){ca=wx(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=66974;T=76;break f}if(!(aa&2048)){na=aa&1;Sa=da;Ta=ma;Ua=na;Va=(na|0)==0?66974:66976;T=76}else{Sa=da;Ta=ma;Ua=1;Va=66975;T=76}break}case 117:{ma=s;Sa=c[ma>>2]|0;Ta=c[ma+4>>2]|0;Ua=0;Va=66974;T=76;break}case 99:{a[z>>0]=c[s>>2];Wa=z;Xa=$;Ya=1;Za=0;_a=66974;$a=x;break}case 109:{ab=lv(c[(Vu()|0)>>2]|0)|0;T=82;break}case 115:{ma=c[s>>2]|0;ab=ma|0?ma:66984;T=82;break}case 67:{c[u>>2]=c[s>>2];c[t>>2]=0;c[s>>2]=u;bb=u;cb=-1;T=86;break}case 83:{ma=c[s>>2]|0;if(!Ca){Av(e,32,wa,0,aa);db=0;T=97}else{bb=ma;cb=Ca;T=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(!(aa&2048)){ma=aa&1;fb=eb;gb=ma;hb=(ma|0)==0?66992:66997}else{fb=eb;gb=1;hb=66994}else{fb=-eb;gb=1;hb=66991}h[k>>3]=fb;ma=c[k+4>>2]&2146435072;do if(ma>>>0<2146435072|(ma|0)==2146435072&0<0){eb=+Dv(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=yv(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=(aa&8|0)==0;lb=ob;rb=q;while(1){sb=~~lb;tb=rb+1|0;a[rb>>0]=d[66958+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;Av(e,32,wa,ca,aa);if(!(c[e>>2]&32))vv(oa,ib,e)|0;Av(e,48,wa,ca,aa^65536);tb=rb-A|0;if(!(c[e>>2]&32))vv(q,tb,e)|0;rb=r-pb|0;Av(e,48,kb-(tb+rb)|0,0,0);if(!(c[e>>2]&32))vv(jb,rb,e)|0;Av(e,32,wa,ca,aa^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=Fx(c[Bb>>2]|0,0,oa|0)|0;Db=yx(Cb|0,C|0,pb|0,0)|0;Cb=C;Eb=Lx(Db|0,Cb|0,1e9,0)|0;c[Bb>>2]=Eb;Eb=Kx(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=_(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=aa&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=aa&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=yv(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;Av(e,32,wa,sb,aa);if(!(c[e>>2]&32))vv(hb,gb,e)|0;Av(e,48,wa,sb,aa^65536);do if(Eb){pb=fc>>>0>rb>>>0?rb:fc;na=pb;while(1){da=yv(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}xx(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))vv(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;vv(67026,1,e)|0}while(0);if((nc|0)>0&wc>>>0<jc>>>0){na=nc;pb=wc;while(1){da=yv(c[pb>>2]|0,0,J)|0;if(da>>>0>q>>>0){xx(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))vv(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;Av(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=yv(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))vv(zc,1,e)|0;if(pb&(kb|0)<1){Ac=Db;break}if(c[e>>2]&32|0){Ac=Db;break}vv(67026,1,e)|0;Ac=Db}else{if(zc>>>0<=q>>>0){Ac=zc;break}xx(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))vv(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;Av(e,48,Bc+18|0,18,0);if(c[e>>2]&32|0)break;vv(tc,r-tc|0,e)|0}while(0);Av(e,32,wa,sb,aa^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;Av(e,32,wa,tb,$);jb=c[e>>2]|0;if(!(jb&32)){vv(hb,Eb,e)|0;Cc=c[e>>2]|0}else Cc=jb;if(!(Cc&32))vv(rb?(ca?67018:67022):ca?67010:67014,3,e)|0;Av(e,32,wa,tb,aa^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=aa;Ya=Ca;Za=0;_a=66974;$a=x}}while(0);g:do if((T|0)==64){T=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[66958+(ca&15)>>0]|ea;ca=Ex(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=66974;T=77}else{Na=Dc;Oa=Ja;Pa=Ka;Qa=2;Ra=66974+(La>>4)|0;T=77}}else{Na=x;Oa=Ja;Pa=Ka;Qa=0;Ra=66974;T=77}}else if((T|0)==76){T=0;Na=yv(Sa,Ta,x)|0;Oa=aa;Pa=Ca;Qa=Ua;Ra=Va;T=77}else if((T|0)==82){T=0;tb=zv(ab,0,Ca)|0;f=(tb|0)==0;Wa=ab;Xa=$;Ya=f?Ca:tb-ab|0;Za=0;_a=66974;$a=f?ab+Ca|0:tb}else if((T|0)==86){T=0;tb=0;f=0;ca=bb;while(1){ea=c[ca>>2]|0;if(!ea){Ec=tb;Fc=f;break}ma=Bv(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}Av(e,32,wa,Ec,aa);if(!Ec){db=0;T=97}else{ca=0;f=bb;while(1){tb=c[f>>2]|0;if(!tb){db=Ec;T=97;break g}ma=Bv(v,tb)|0;ca=ma+ca|0;if((ca|0)>(Ec|0)){db=Ec;T=97;break g}if(!(c[e>>2]&32))vv(v,ma,e)|0;if(ca>>>0>=Ec>>>0){db=Ec;T=97;break}else f=f+4|0}}}while(0);if((T|0)==97){T=0;Av(e,32,wa,db,aa^8192);M=Q;N=(wa|0)>(db|0)?wa:db;O=ua;P=Ea;continue}if((T|0)==77){T=0;$=(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=$;Ya=(Pa|0)>(f|0)?Pa:f;Za=Qa;_a=Ra;$a=x}else{Wa=x;Xa=$;Ya=0;Za=Qa;_a=Ra;$a=x}}$=$a-Wa|0;f=(Ya|0)<($|0)?$:Ya;ca=Za+f|0;ma=(wa|0)<(ca|0)?ca:wa;Av(e,32,ma,ca,Xa);if(!(c[e>>2]&32))vv(_a,Za,e)|0;Av(e,48,ma,ca,Xa^65536);Av(e,48,f,$,0);if(!(c[e>>2]&32))vv(Wa,$,e)|0;Av(e,32,ma,ca,Xa^8192);M=Q;N=ma;O=ua;P=Ea}h:do if((T|0)==244)if(!e)if(S){Ea=1;while(1){P=c[m+(Ea<<2)>>2]|0;if(!P){Gc=Ea;break}xv(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=R;while(0);i=n;return sa|0}function vv(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(!(wv(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=Db[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((Db[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);Ax(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 wv(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 xv(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 nn(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))ba();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]=kn(c[h>>2]|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+16>>2];c[n>>2]=kn((c[h>>2]|0)+4|0)|0;c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];c[k>>2]=kn((c[h>>2]|0)+8|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];c[l>>2]=kn((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];ln(c[g>>2]|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];ln((c[g>>2]|0)+4|0,c[l>>2]|0);c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];ln((c[g>>2]|0)+8|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+12>>2];ln((c[g>>2]|0)+12|0,c[n>>2]|0);i=e;return}function on(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=4;c[a+4>>2]=16;c[a>>2]=4256;b=Zr(43409,13,14,8,4,16,4256)|0;i=a;return b|0}function pn(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))ba();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]=hn(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];qn(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=Jx(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}Df(c[v>>2]|0);Ef();i=k;return}function qn(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))ba();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 rn(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=5;c[a+4>>2]=16;c[a>>2]=4256;b=Vr(43409,13,14,6,5,16,4256)|0;i=a;return b|0}function sn(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))ba();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]=mn(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];tn(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=Jx(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}Df(c[v>>2]|0);Ef();i=k;return}function tn(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))ba();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 un(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=5;c[a+4>>2]=16;c[a>>2]=4256;b=Xr(43409,13,14,7,5,16,4256)|0;i=a;return b|0}function vn(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))ba();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]=hn(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];wn(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}Df(c[s>>2]|0);Ef();i=g;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))ba();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[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function xn(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[17698]=c[e>>2];c[17699]=c[f>>2];i=d;return}function yn(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))ba();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[17698]|0)){i=f;return}Eb[c[17698]&15](c[17699]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function zn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;do if(c[d>>2]|0){if((c[d>>2]|0)==1){c[17701]=1;break}if(!(c[17700]|0)){if((c[d>>2]|0)==2){c[17702]=1;break}if((c[d>>2]|0)==3)c[17703]=1}}else c[17700]=1;while(0);i=b;return}function An(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(vh()|0){bt(c[d>>2]|0);i=b;return}if(c[17701]|0){Cs(c[d>>2]|0);i=b;return}if(c[17702]|0){bt(c[d>>2]|0);i=b;return}a=c[d>>2]|0;if(c[17703]|0){Ft(a);i=b;return}else{Cs(a);i=b;return}}function Bn(){if(vh()|0){ht();return}if(c[17701]|0){Ms();return}if(c[17702]|0){ht();return}if(c[17703]|0){Ht();return}else{Ms();return}}function Cn(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(!(c[e>>2]|0)?vh()|0:0)c[d>>2]=2;else f=4;do if((f|0)==4){if(c[17701]|0){c[d>>2]=1;break}if(c[17702]|0){c[d>>2]=2;break}if(c[17703]|0){c[d>>2]=3;break}else{c[d>>2]=1;break}}while(0);i=b;return c[d>>2]|0}function Dn(){if(vh()|0){it();return}else{Ns();return}}function En(){if(vh()|0)return;Os();return}function Fn(){if(vh()|0)return;Ps();return}function Gn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(vh()|0){i=b;return}Qs(c[d>>2]|0);i=b;return}function Hn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(vh()|0)c[d>>2]=0;else c[d>>2]=Rs(c[e>>2]|0)|0;i=b;return c[d>>2]|0}function In(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;if(vh()|0)c[b>>2]=jt()|0;else c[b>>2]=Ss()|0;i=a;return c[b>>2]|0}function Jn(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=_f(c[e>>2]|0)|0;Kn(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Kn(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(vh()|0){kt(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17701]|0){Ts(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17702]|0){kt(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[17703]|0){Kt(d,f,g);i=e;return}else{Ts(d,f,g);i=e;return}}function Ln(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=ag(c[e>>2]|0)|0;Kn(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Mn(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Kn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Nn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(vh()|0){i=b;return}if(c[17701]|0){_s(c[d>>2]|0);i=b;return}if((c[17702]|0)!=0|(c[17703]|0)!=0){i=b;return}_s(c[d>>2]|0);i=b;return}function On(){if(vh()|0)return;if(c[17701]|0){$s();return}if((c[17702]|0)!=0|(c[17703]|0)!=0)return;$s();return}function Pn(){if(vh()|0)return;if(c[17701]|0){at();return}if((c[17702]|0)!=0|(c[17703]|0)!=0)return;at();return}function Qn(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))ba();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(vh()|0){xt(c[h>>2]|0,c[k>>2]|0);i=e;return}An(1);c[o>>2]=iu(12532)|0;if(c[o>>2]|0){c[g>>2]=cu(c[o>>2]|0)|0;wf(45459,g)}c[l>>2]=Aw()|0;if(c[17704]|0){if((c[17705]|0)!=(c[l>>2]|0)){Kn(76419,8,0);c[17705]=c[l>>2]}}else{c[p>>2]=sb(0)|0;c[q>>2]=c[l>>2];c[17705]=c[l>>2];c[m>>2]=76399;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;Mn(76419,8,0);c[17704]=1}c[m>>2]=c[h>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;ym(76399,76399,28);c[n>>2]=(c[k>>2]|0)>>>0>20?20:c[k>>2]|0;Ax(c[m>>2]|0,76399,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]=ju(12532)|0;if(c[o>>2]|0){c[f>>2]=cu(c[o>>2]|0)|0;wf(45504,f)}else{i=e;return}}function Rn(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[e>>2]=a;if(vh()|0)c[d>>2]=yt(c[e>>2]|0)|0;else c[d>>2]=0;i=b;return c[d>>2]|0}function Sn(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))ba();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(vh()|0){c[m>>2]=Ct(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 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;e=i;i=i+16|0;if((i|0)>=(j|0))ba();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(vh()|0){c[f>>2]=Dt(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 Un(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(vh()|0)){i=b;return}Et(c[d>>2]|0);i=b;return}function Vn(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))ba();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;qv(p,99,45549,h)|0;Cf(p,0);i=f;return}c[g>>2]=e;qv(p,99,45554,g)|0;if(c[m>>2]|0){c[n>>2]=sq(0)|0;c[o>>2]=sq(0)|0}if(c[m>>2]|0?!(Wn(c[n>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0)|0):0){a[p+((Hv(p)|0)-1)>>0]=120;Cf(p,c[n>>2]|0);a[p+((Hv(p)|0)-1)>>0]=121;Cf(p,c[o>>2]|0)}else{Cf(p,c[c[l>>2]>>2]|0);a[p+((Hv(p)|0)-1)>>0]=89;Cf(p,c[(c[l>>2]|0)+4>>2]|0);a[p+((Hv(p)|0)-1)>>0]=90;Cf(p,c[(c[l>>2]|0)+8>>2]|0)}if(!(c[m>>2]|0)){i=f;return}uq(c[n>>2]|0);uq(c[o>>2]|0);i=f;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,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))ba();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(!(Yo(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]=sq(0)|0;c[p>>2]=sq(0)|0;Xn(c[o>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);Yn(c[p>>2]|0,c[o>>2]|0,c[o>>2]|0,c[n>>2]|0);if(c[k>>2]|0)Yn(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]=sq(0)|0;Yn(c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0);Yn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[q>>2]|0,c[n>>2]|0);eq(c[q>>2]|0)}eq(c[p>>2]|0);eq(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)lq(c[k>>2]|0,c[c[m>>2]>>2]|0)|0;if(c[l>>2]|0){c[g>>2]=45650;c[g+4>>2]=45674;wf(45601,g)}c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}case 2:{c[r>>2]=sq(0)|0;Xn(c[r>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);if(c[k>>2]|0)Yn(c[k>>2]|0,c[c[m>>2]>>2]|0,c[r>>2]|0,c[n>>2]|0);if(c[l>>2]|0)Yn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[r>>2]|0,c[n>>2]|0);uq(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 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))ba();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(mp(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0){i=e;return}vf(45559,e);Cf(45593,c[g>>2]|0);Cf(45597,c[(c[h>>2]|0)+16>>2]|0);i=e;return}function Yn(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))ba();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;rp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);Zn(c[g>>2]|0,c[l>>2]|0);i=f;return}function Zn(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))ba();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){qp(b,a,c[e+48+12>>2]|0);i=d;return}else{np(b,a,c[e+16>>2]|0);i=d;return}}function _n(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[b+4>>2]=a;c[d>>2]=_f(12)|0;$n(c[d>>2]|0);i=b;return c[d>>2]|0}function $n(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=sq(0)|0;c[c[d>>2]>>2]=a;a=sq(0)|0;c[(c[d>>2]|0)+4>>2]=a;a=sq(0)|0;c[(c[d>>2]|0)+8>>2]=a;i=b;return}function ao(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}bo(c[d>>2]|0);Wf(c[d>>2]|0);i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;eq(c[c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;eq(c[(c[d>>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;eq(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;i=b;return}function co(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))ba();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]=_n(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)lq(e,c[h>>2]|0)|0;else cq(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)lq(e,c[k>>2]|0)|0;else cq(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){lq(e,c[l>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}else{cq(e);m=c[g>>2]|0;i=f;return m|0}return 0}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,m=0;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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]=_n(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)nq(e,c[h>>2]|0);else cq(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)nq(e,c[k>>2]|0);else cq(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){nq(e,c[l>>2]|0);m=c[g>>2]|0;i=f;return m|0}else{cq(e);m=c[g>>2]|0;i=f;return m|0}return 0}function fo(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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 go(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))ba();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]=bg(1,108)|0;ho(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 ho(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))ba();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[17706]|0))if(gb(45685)|0){c[17706]=1;break}else{c[17706]=-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=Oo(c[p>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=n}n=jq(c[p>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=n;n=jq(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=n;n=jq(c[r>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=n;if((c[17706]|0)>0)t=op(c[(c[l>>2]|0)+16>>2]|0,0)|0;else t=0;c[(c[l>>2]|0)+48+12>>2]=t;fo(c[l>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=11)break;t=mq(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 io(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))ba();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]=Rh(1,108,5)|0;if(c[t>>2]|0){c[u>>2]=Sh(c[t>>2]|0,1)|0;ho(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]=fu()|0;v=c[l>>2]|0;i=k;return v|0}return 0}function jo(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];pp(c[(c[e>>2]|0)+48+12>>2]|0);eq(c[(c[e>>2]|0)+16>>2]|0);eq(c[(c[e>>2]|0)+20>>2]|0);eq(c[(c[e>>2]|0)+24>>2]|0);ao(c[(c[e>>2]|0)+28>>2]|0);eq(c[(c[e>>2]|0)+32>>2]|0);eq(c[(c[e>>2]|0)+36>>2]|0);ao(c[(c[e>>2]|0)+40>>2]|0);eq(c[(c[e>>2]|0)+44>>2]|0);eq(c[(c[e>>2]|0)+48+8>>2]|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=11)break;eq(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 ko(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}jo(c[d>>2]|0);Wf(c[d>>2]|0);i=b;return}function lo(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))ba();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]=Sh(c[g>>2]|0,1)|0;g=zi(c[f>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;i=e;return g|0}function mo(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))ba();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]=Sh(c[g>>2]|0,1)|0;g=Ai(c[f>>2]|0,c[h>>2]|0)|0;i=e;return g|0}function no(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))ba();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:{oo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 1:{vo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 2:{wo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}default:{i=e;return}}}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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(Yo(c[(c[g>>2]|0)+4>>2]|0,0)|0?Yo(c[(c[g>>2]|0)+8>>2]|0,0)|0:0){d=(po(c[h>>2]|0)|0)!=0;b=(c[h>>2]|0)+48+16|0;if(d){qo(c[b>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);ro(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=xq(3)|0;Yn(d,a,k,c[h>>2]|0);so(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);Yn(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{qo(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=xq(3)|0;Yn(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=xq(4)|0;to(a,k,b,c[h>>2]|0);Yn(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);so(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)}Yn(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);uo(c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[h>>2]|0);qo(c[(c[h>>2]|0)+48+16+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0);Yn(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=xq(4)|0;Yn(g,b,k,c[h>>2]|0);qo(c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[h>>2]|0);uo(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[h>>2]|0);ro(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);qo(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=xq(5)|0;Yn(k,b,g,c[h>>2]|0);ro(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);Yn(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);ro(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}pq(c[c[f>>2]>>2]|0,1)|0;pq(c[(c[f>>2]|0)+4>>2]|0,1)|0;pq(c[(c[f>>2]|0)+8>>2]|0,0)|0;i=e;return}function po(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))ba();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]=mq(c[(c[e>>2]|0)+16>>2]|0)|0;Jo(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0,3);b=((Zo(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;eq(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 qo(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Yn(c[f>>2]|0,c[g>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function ro(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))ba();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;Ko(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);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;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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;Io(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);Zn(c[g>>2]|0,c[l>>2]|0);i=f;return}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;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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;tp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0);i=f;return}function uo(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;Xo(c[f>>2]|0,c[g>>2]|0,1);Zn(c[f>>2]|0,c[h>>2]|0);i=e;return}function vo(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))ba();f=e;c[e+16>>2]=a;c[e+12>>2]=b;c[e+8>>2]=d;c[f>>2]=45726;c[f+4>>2]=45674;wf(45700,f)}function wo(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;so(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);qo(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);qo(c[(c[h>>2]|0)+48+16+4>>2]|0,c[c[g>>2]>>2]|0,c[h>>2]|0);qo(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){lq(d,c[b+48+16+4>>2]|0)|0;kq(c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0)}else Yn(d,c[b+20>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0);so(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);qo(c[(c[h>>2]|0)+48+16+20>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);uo(c[(c[h>>2]|0)+48+16+24>>2]|0,c[(c[h>>2]|0)+48+16+20>>2]|0,c[h>>2]|0);ro(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);ro(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);ro(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);Yn(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);ro(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);Yn(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);Yn(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 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;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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:{yo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 1:{Ao(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 2:{Bo(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}default:{i=f;return}}}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;f=i;i=i+32|0;if((i|0)>=(j|0))ba();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(((Zo(c[c[h>>2]>>2]|0,c[c[k>>2]>>2]|0)|0)==0?(Zo(c[(c[h>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0)==0:0)?(Zo(c[(c[h>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0)==0:0){no(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0);i=f;return}if(!(Yo(c[(c[h>>2]|0)+8>>2]|0,0)|0)){lq(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;lq(c[(c[g>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;lq(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0;i=f;return}if(!(Yo(c[(c[k>>2]|0)+8>>2]|0,0)|0)){lq(c[c[g>>2]>>2]|0,c[c[h>>2]>>2]|0)|0;lq(c[(c[g>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;lq(c[(c[g>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+8>>2]|0)|0;i=f;return}c[m>>2]=((Yo(c[(c[h>>2]|0)+8>>2]|0,1)|0)!=0^1)&1;c[n>>2]=((Yo(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)lq(e,c[c[h>>2]>>2]|0)|0;else{qo(e,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);Yn(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)lq(e,c[c[k>>2]>>2]|0)|0;else{qo(e,c[(c[h>>2]|0)+8>>2]|0,c[l>>2]|0);Yn(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)}ro(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=xq(3)|0;to(e,m,n,c[l>>2]|0);Yn(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=xq(3)|0;to(n,m,e,c[l>>2]|0);Yn(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);ro(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=(Yo(c[(c[l>>2]|0)+48+16+8>>2]|0,0)|0)!=0;m=(c[l>>2]|0)+48+16|0;if(e){so(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);so(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);Yn(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);Yn(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);qo(c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+20>>2]|0,c[l>>2]|0);qo(c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);Yn(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);ro(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);uo(c[(c[l>>2]|0)+48+16+36>>2]|0,c[c[g>>2]>>2]|0,c[l>>2]|0);ro(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);Yn(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=xq(3)|0;to(k,e,n,c[l>>2]|0);Yn(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);ro(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=zo(c[l>>2]|0)|0;Yn(n,e,k,c[l>>2]|0);i=f;return}k=(Yo(c[m+20>>2]|0,0)|0)!=0;m=c[g>>2]|0;if(k){pq(c[m>>2]|0,1)|0;pq(c[(c[g>>2]|0)+4>>2]|0,1)|0;pq(c[(c[g>>2]|0)+8>>2]|0,0)|0;i=f;return}else{no(m,c[h>>2]|0,c[l>>2]|0);i=f;return}}function zo(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))ba();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=Yp(0)|0;c[(c[f>>2]|0)+48+8>>2]=b}b=c[(c[f>>2]|0)+48+8>>2]|0;m=xq(2)|0;Xn(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 Ao(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))ba();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]=45749;c[g+4>>2]=45674;wf(45700,g)}function Bo(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,U=0,V=0,W=0;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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;Yn(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);qo(c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[l>>2]|0);Yn(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);Yn(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);Yn(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);Yn(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);ro(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);so(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);so(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);so(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[l>>2]|0);Yn(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);ro(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);ro(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);Yn(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);Yn(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){lq(k,c[h+48+16+8>>2]|0)|0;kq(c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0);ro(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;Yn(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;Yn(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;U=T+24|0;V=c[U>>2]|0;W=c[l>>2]|0;Yn(L,Q,V,W);i=f;return}else{Yn(k,c[h+20>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);ro(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;Yn(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;Yn(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;U=T+24|0;V=c[U>>2]|0;W=c[l>>2]|0;Yn(L,Q,V,W);i=f;return}}function Co(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;lq(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;lq(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;lq(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Do(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))ba();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]=Oo(c[h>>2]|0)|0;pq(c[c[g>>2]>>2]|0,0)|0;pq(c[(c[g>>2]|0)+4>>2]|0,1)|0;pq(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){$n(z);c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;no(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);xo(z,c[g>>2]|0,c[k>>2]|0,c[l>>2]|0);if(Po(c[h>>2]|0,c[y>>2]|0)|0)Co(c[g>>2]|0,z);c[y>>2]=(c[y>>2]|0)+-1}bo(z);i=f;return}c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;no(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);if(Po(c[h>>2]|0,c[y>>2]|0)|0)xo(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]=Oo(c[h>>2]|0)|0;$n(u);$n(v);$n(C);$n(D);pq(c[u>>2]|0,1)|0;eq(c[v>>2]|0);c[v>>2]=jq(c[c[k>>2]>>2]|0)|0;pq(c[v+8>>2]|0,1)|0;c[J>>2]=(((c[A>>2]|0)+32-1<<1>>>0)/32|0)+1;bq(c[u>>2]|0,c[J>>2]|0);bq(c[u+8>>2]|0,c[J>>2]|0);bq(c[v>>2]|0,c[J>>2]|0);bq(c[v+8>>2]|0,c[J>>2]|0);bq(c[C>>2]|0,c[J>>2]|0);bq(c[C+8>>2]|0,c[J>>2]|0);bq(c[D>>2]|0,c[J>>2]|0);bq(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]=Po(c[h>>2]|0,c[B>>2]|0)|0;rq(c[c[E>>2]>>2]|0,c[c[F>>2]>>2]|0,c[I>>2]|0);rq(c[(c[E>>2]|0)+8>>2]|0,c[(c[F>>2]|0)+8>>2]|0,c[I>>2]|0);Eo(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);rq(c[c[G>>2]>>2]|0,c[c[H>>2]>>2]|0,c[I>>2]|0);rq(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}cq(c[(c[g>>2]|0)+4>>2]|0);c[I>>2]=c[A>>2]&1;rq(c[u>>2]|0,c[C>>2]|0,c[I>>2]|0);rq(c[u+8>>2]|0,c[C+8>>2]|0,c[I>>2]|0);if(!(c[(c[u+8>>2]|0)+4>>2]|0)){pq(c[c[g>>2]>>2]|0,1)|0;pq(c[(c[g>>2]|0)+8>>2]|0,0)|0}else{c[o>>2]=sq(0)|0;Xn(c[o>>2]|0,c[u+8>>2]|0,c[l>>2]|0);Yn(c[c[g>>2]>>2]|0,c[u>>2]|0,c[o>>2]|0,c[l>>2]|0);pq(c[(c[g>>2]|0)+8>>2]|0,1)|0;eq(c[o>>2]|0)}bo(u);bo(v);bo(C);bo(D);i=f;return}c[m>>2]=mq(c[(c[l>>2]|0)+16>>2]|0)|0;c[n>>2]=mq(c[(c[l>>2]|0)+16>>2]|0)|0;c[q>>2]=mq(c[(c[l>>2]|0)+16>>2]|0)|0;c[p>>2]=jq(c[h>>2]|0)|0;c[r>>2]=jq(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;Xn(c[r>>2]|0,c[r>>2]|0,c[l>>2]|0)}if(Yo(c[(c[k>>2]|0)+8>>2]|0,1)|0){c[L>>2]=mq(c[(c[l>>2]|0)+16>>2]|0)|0;c[M>>2]=mq(c[(c[l>>2]|0)+16>>2]|0)|0;Yn(c[L>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);Yn(c[M>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[L>>2]|0,c[l>>2]|0);Xn(c[L>>2]|0,c[L>>2]|0,c[l>>2]|0);Yn(c[m>>2]|0,c[c[k>>2]>>2]|0,c[L>>2]|0,c[l>>2]|0);Xn(c[M>>2]|0,c[M>>2]|0,c[l>>2]|0);Yn(c[n>>2]|0,c[r>>2]|0,c[M>>2]|0,c[l>>2]|0);eq(c[L>>2]|0);eq(c[M>>2]|0)}else{lq(c[m>>2]|0,c[c[k>>2]>>2]|0)|0;lq(c[n>>2]|0,c[r>>2]|0)|0}c[o>>2]=jq(xq(1)|0)|0;M=c[q>>2]|0;L=c[p>>2]|0;rp(M,L,xq(3)|0);c[t>>2]=Oo(c[q>>2]|0)|0;if((c[t>>2]|0)>>>0<2){c[t>>2]=2;cq(c[c[g>>2]>>2]|0);cq(c[(c[g>>2]|0)+4>>2]|0);cq(c[(c[g>>2]|0)+8>>2]|0)}else{lq(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;lq(c[(c[g>>2]|0)+4>>2]|0,c[r>>2]|0)|0;lq(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0}eq(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;$n(v);$n(w);c[s>>2]=(c[t>>2]|0)-2;while(1){if((c[s>>2]|0)>>>0<=0)break;no(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);if((Po(c[q>>2]|0,c[s>>2]|0)|0)==1?(Po(c[p>>2]|0,c[s>>2]|0)|0)==0:0){Co(v,c[g>>2]|0);xo(c[g>>2]|0,v,u,c[l>>2]|0)}if((Po(c[q>>2]|0,c[s>>2]|0)|0)==0?(Po(c[p>>2]|0,c[s>>2]|0)|0)==1:0){Co(v,c[g>>2]|0);Co(w,u);ro(c[w+4>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[w+4>>2]|0,c[l>>2]|0);xo(c[g>>2]|0,v,w,c[l>>2]|0)}c[s>>2]=(c[s>>2]|0)+-1}bo(u);bo(v);bo(w);eq(c[q>>2]|0);eq(c[p>>2]|0);i=f;return}function Eo(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))ba();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;so(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);ro(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);so(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);ro(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);Yn(c[c[n>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);Yn(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);qo(c[c[m>>2]>>2]|0,c[c[k>>2]>>2]|0,c[p>>2]|0);qo(c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);so(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);ro(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);Yn(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);ro(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);qo(c[c[l>>2]>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);qo(c[(c[l>>2]|0)+8>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Yn(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);Yn(c[(c[l>>2]|0)+8>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[o>>2]|0,c[p>>2]|0);so(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);Yn(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 Fo(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))ba();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]=sq(0)|0;c[l>>2]=sq(0)|0;c[m>>2]=sq(0)|0;a:do switch(c[c[g>>2]>>2]|0){case 0:{c[n>>2]=sq(0)|0;if(Wn(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}qo(c[l>>2]|0,c[l>>2]|0,c[g>>2]|0);Go(c[n>>2]|0,c[k>>2]|0,c[g>>2]|0);Yn(c[m>>2]|0,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);so(c[m>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);so(c[m>>2]|0,c[m>>2]|0,c[n>>2]|0,c[g>>2]|0);if(!(Zo(c[l>>2]|0,c[m>>2]|0)|0))c[h>>2]=1;uq(c[n>>2]|0);break}case 1:{if(!(Wn(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=xq(4)|0;Yn(b,a,p,c[g>>2]|0);p=c[m>>2]|0;a=c[m>>2]|0;b=xq(2)|0;so(p,a,b,c[g>>2]|0);Yn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);qo(c[l>>2]|0,c[k>>2]|0,c[g>>2]|0);so(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=xq(1)|0;so(b,a,p,c[g>>2]|0);Yn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);Yn(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=xq(1)|0;ro(p,a,b,c[g>>2]|0);Vo(c[l>>2]|0,c[l>>2]|0,1);to(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);c[h>>2]=Yo(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(Wn(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}qo(c[k>>2]|0,c[k>>2]|0,c[g>>2]|0);qo(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){lq(b,c[k>>2]|0)|0;kq(c[m>>2]|0,c[m>>2]|0)}else Yn(b,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);so(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);ro(c[m>>2]|0,c[m>>2]|0,xq(1)|0,c[g>>2]|0);Yn(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[g>>2]|0);Yn(c[k>>2]|0,c[k>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);ro(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);if(!(Yo(c[m>>2]|0,0)|0))c[h>>2]=1;break}default:{}}while(0);uq(c[m>>2]|0);uq(c[k>>2]|0);uq(c[l>>2]|0);c[e>>2]=c[h>>2];o=c[e>>2]|0;i=d;return o|0}function Go(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))ba();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=xq(3)|0;tp(d,f,g,c[(c[h>>2]|0)+16>>2]|0);i=e;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;e=i;i=i+48|0;if((i|0)>=(j|0))ba();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))bq(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]=hp(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}jp(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 Io(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))ba();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))bq(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))bq(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]=ip(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)){kp(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=(lp(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)<0;g=c[k>>2]|0;if(h){Up(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{Up(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 Jo(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))ba();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))bq(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]=hp(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}jp(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 Ko(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))ba();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]=jq(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=((c[(c[k>>2]|0)+8>>2]|0)!=0^1)&1;Io(c[f>>2]|0,c[g>>2]|0,c[k>>2]|0);eq(c[k>>2]|0);i=e;return}function Lo(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))ba();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;Io(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);np(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Mo(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))ba();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;Ko(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);np(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function No(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 Oo(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))ba();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}No(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[45773+((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 Po(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))ba();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 Qo(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))ba();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){dq();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}bq(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 Ro(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))ba();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){dq();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}bq(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 So(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))ba();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){dq();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 To(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))ba();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){dq();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 Uo(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))ba();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){dq();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 Vo(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))ba();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){dq();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)Tp(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)bq(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){Tp(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)bq(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)Tp(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 Wo(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))ba();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)bq(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 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,q=0,r=0;e=i;i=i+48|0;if((i|0)>=(j|0))ba();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){dq();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)bq(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){Wo(c[f>>2]|0,(c[k>>2]|0)+1|0);Vo(c[f>>2]|0,c[f>>2]|0,32-(c[l>>2]|0)|0)}}else Wo(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 Yo(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))ba();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];No(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 Zo(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))ba();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;No(c[f>>2]|0);No(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=lp(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]=jw(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 _o(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))ba();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]=jq(c[h>>2]|0)|0;c[h>>2]=c[l>>2]}$o(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)Io(c[f>>2]|0,c[f>>2]|0,c[h>>2]|0);if(!(c[l>>2]|0)){i=e;return}eq(c[l>>2]|0);i=e;return}function $o(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;ap(0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function ap(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))ba();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;bq(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)bq(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]=Kp(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]=Ip(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=Zp(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[45773+((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=Zp(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;Lp(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]=Lp(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=Zp(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]=Jp(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){Tp(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;$p(c[z+(c[B>>2]<<2)>>2]|0,c[A+(c[B>>2]<<2)>>2]|0)}i=g;return}function bp(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))ba();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[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 cp(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))ba();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]=Yp(c[(c[f>>2]|0)+4>>2]|0)|0;dp(c[f>>2]|0,c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);eq(c[k>>2]|0);i=e;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;f=i;i=i+32|0;if((i|0)>=(j|0))ba();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]=jq(c[l>>2]|0)|0;c[l>>2]=c[n>>2]}ap(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){Jo(c[g>>2]|0,c[g>>2]|0,1);Io(c[h>>2]|0,c[h>>2]|0,c[l>>2]|0)}if(!(c[n>>2]|0)){i=f;return}eq(c[n>>2]|0);i=f;return}function ep(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))ba();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))bq(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){Tp(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 fp(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))ba();e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;b=((Ip(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 gp(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))ba();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]=jq(c[g>>2]|0)|0;c[l>>2]=jq(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=0;c[(c[l>>2]|0)+8>>2]=0;while(1){h=(Yo(c[l>>2]|0,0)|0)!=0;m=c[f>>2]|0;n=c[k>>2]|0;if(!h)break;_o(m,n,c[l>>2]|0);lq(c[k>>2]|0,c[l>>2]|0)|0;lq(c[l>>2]|0,c[f>>2]|0)|0}lq(m,n)|0;eq(c[k>>2]|0);eq(c[l>>2]|0);l=((Yo(c[f>>2]|0,1)|0)!=0^1)&1;i=e;return l|0}function hp(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))ba();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 ip(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))ba();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]=Hp(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]=hp((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 jp(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))ba();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 kp(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))ba();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]=Up(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]=jp((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 lp(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))ba();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 mp(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))ba();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(!(Yo(c[h>>2]|0,0)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}if(!(Yo(c[k>>2]|0,1)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}c[l>>2]=jq(c[h>>2]|0)|0;c[m>>2]=jq(c[k>>2]|0)|0;c[w>>2]=0;while(1){if(Po(c[l>>2]|0,0)|0)break;if(!((Po(c[m>>2]|0,0)|0)!=0^1))break;Vo(c[l>>2]|0,c[l>>2]|0,1);Vo(c[m>>2]|0,c[m>>2]|0,1);c[w>>2]=(c[w>>2]|0)+1}c[y>>2]=Po(c[m>>2]|0,0)|0;c[n>>2]=Xp(1)|0;if(!(c[y>>2]|0))c[o>>2]=Xp(0)|0;c[p>>2]=jq(c[l>>2]|0)|0;c[q>>2]=jq(c[m>>2]|0)|0;if(!(c[y>>2]|0)){c[r>>2]=Yp(c[(c[l>>2]|0)+4>>2]|0)|0;Ko(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)}c[s>>2]=jq(c[m>>2]|0)|0;if(Po(c[l>>2]|0,0)|0){c[t>>2]=Xp(0)|0;if(!(c[y>>2]|0)){c[u>>2]=Xp(1)|0;c[(c[u>>2]|0)+8>>2]=1}c[v>>2]=jq(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]=Xp(1)|0;if(!(c[y>>2]|0))c[u>>2]=Xp(0)|0;c[v>>2]=jq(c[l>>2]|0)|0;A=20}while(1){if((A|0)==20){A=0;w=(c[y>>2]|0)!=0;k=(Po(c[t>>2]|0,0)|0)!=0;if(w){if(k)Io(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);Vo(c[t>>2]|0,c[t>>2]|0,1);Vo(c[v>>2]|0,c[v>>2]|0,1);continue}if(!(!k?!(Po(c[u>>2]|0,0)|0):0)){Io(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);Ko(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0)}Vo(c[t>>2]|0,c[t>>2]|0,1);Vo(c[u>>2]|0,c[u>>2]|0,1);Vo(c[v>>2]|0,c[v>>2]|0,1)}if((Po(c[v>>2]|0,0)|0)!=0^1){A=20;continue}if(c[(c[v>>2]|0)+8>>2]|0){Ko(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))Ko(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;lq(c[s>>2]|0,c[v>>2]|0)|0;c[(c[v>>2]|0)+8>>2]=c[x>>2]}else{lq(c[n>>2]|0,c[t>>2]|0)|0;if(!(c[y>>2]|0))lq(c[o>>2]|0,c[u>>2]|0)|0;lq(c[p>>2]|0,c[v>>2]|0)|0}Ko(c[t>>2]|0,c[n>>2]|0,c[q>>2]|0);if(!(c[y>>2]|0))Ko(c[u>>2]|0,c[o>>2]|0,c[r>>2]|0);Ko(c[v>>2]|0,c[p>>2]|0,c[s>>2]|0);if(c[(c[t>>2]|0)+8>>2]|0?(Io(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0),(c[y>>2]|0)==0):0)Ko(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);if(Yo(c[v>>2]|0,0)|0)A=20;else break}lq(c[g>>2]|0,c[n>>2]|0)|0;eq(c[n>>2]|0);eq(c[q>>2]|0);eq(c[t>>2]|0);if(!(c[y>>2]|0)){eq(c[o>>2]|0);eq(c[r>>2]|0);eq(c[u>>2]|0)}eq(c[p>>2]|0);eq(c[s>>2]|0);eq(c[v>>2]|0);eq(c[l>>2]|0);eq(c[m>>2]|0);c[f>>2]=1;z=c[f>>2]|0;i=e;return z|0}function np(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;_o(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function op(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))ba();e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[e>>2]=a;c[f>>2]=b;No(c[e>>2]|0);c[g>>2]=bg(1,28)|0;b=c[e>>2]|0;if(c[f>>2]|0){f=jq(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]=Yp((c[(c[g>>2]|0)+8>>2]|0)+1|0)|0;pq(c[h>>2]|0,1)|0;Wo(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]<<1);cp(c[h>>2]|0,c[h>>2]|0,c[e>>2]|0);c[(c[g>>2]|0)+12>>2]=c[h>>2];h=Yp((c[(c[g>>2]|0)+8>>2]<<1)+1|0)|0;c[(c[g>>2]|0)+16>>2]=h;h=Yp((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 pp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;if(!(c[d>>2]|0)){i=b;return}eq(c[(c[d>>2]|0)+12>>2]|0);eq(c[(c[d>>2]|0)+16>>2]|0);eq(c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+24>>2]|0)eq(c[(c[d>>2]|0)+24>>2]|0);if(c[(c[d>>2]|0)+4>>2]|0)eq(c[c[d>>2]>>2]|0);Wf(c[d>>2]|0);i=b;return}function qp(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))ba();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];No(c[g>>2]|0);if((c[(c[g>>2]|0)+4>>2]|0)>(c[l>>2]<<1|0)){np(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;lq(c[o>>2]|0,c[g>>2]|0)|0;Uo(c[o>>2]|0,(c[l>>2]|0)-1|0);rp(c[o>>2]|0,c[o>>2]|0,c[m>>2]|0);Uo(c[o>>2]|0,(c[l>>2]|0)+1|0);lq(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;rp(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;Ko(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=Yp((c[l>>2]|0)+2|0)|0;c[(c[h>>2]|0)+24>>2]=o;pq(c[(c[h>>2]|0)+24>>2]|0,1)|0;Wo(c[(c[h>>2]|0)+24>>2]|0,(c[l>>2]|0)+1|0)}Io(c[f>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+24>>2]|0)}while(1){if((Zo(c[f>>2]|0,c[k>>2]|0)|0)<0)break;Ko(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 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,m=0,n=0,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))ba();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]=Zp(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){bq(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]=Zp(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=Zp(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=Zp(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]=Rp(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]=Zp(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}$p(c[p>>2]|0,0);c[p>>2]=c[B>>2]}aq(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}$p(c[x>>2]|0,c[y>>2]|0);i=e;return}function sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,l=0;f=i;i=i+16|0;if((i|0)>=(j|0))ba();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;rp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);$o(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function tp(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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=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))ba();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;U=g+236|0;V=g+232|0;W=g+228|0;X=g+224|0;Y=g+220|0;Z=g+216|0;_=g+212|0;$=g+208|0;aa=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))Ff();do if(c[r>>2]|0){c[I>>2]=c[z>>2]|0?c[s>>2]|0:0;l=Zp(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[45773+((c[S>>2]|0)>>>(c[T>>2]|0))>>0]|0)+(c[T>>2]|0));a:do if(c[C>>2]|0)Lp(c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[s>>2]|0,c[C>>2]|0)|0;else{c[U>>2]=0;while(1){if((c[U>>2]|0)>=(c[s>>2]|0))break a;c[(c[p>>2]|0)+(c[U>>2]<<2)>>2]=c[(c[(c[m>>2]|0)+16>>2]|0)+(c[U>>2]<<2)>>2];c[U>>2]=(c[U>>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=Zp((c[t>>2]|0)+1|0,c[A>>2]|0)|0;c[F>>2]=l;c[q>>2]=l;c[V>>2]=0;while(1){if((c[V>>2]|0)>=(c[t>>2]|0))break;c[(c[q>>2]|0)+(c[V>>2]<<2)>>2]=c[(c[(c[k>>2]|0)+16>>2]|0)+(c[V>>2]<<2)>>2];c[V>>2]=(c[V>>2]|0)+1}Jp((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)sf(46029,46040,515,46050);c[J>>2]=c[A>>2]|0?c[t>>2]|0:0;l=Zp(c[t>>2]|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[(c[q>>2]|0)+(c[W>>2]<<2)>>2]=c[(c[n>>2]|0)+(c[W>>2]<<2)>>2];c[W>>2]=(c[W>>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=Zp(c[r>>2]|0,c[y>>2]|0)|0;c[G>>2]=l;c[o>>2]=l;c[X>>2]=0;while(1){if((c[X>>2]|0)>=(c[r>>2]|0))break d;c[(c[o>>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);if((c[c[h>>2]>>2]|0)<(c[B>>2]|0)){bq(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=Zp((c[s>>2]|0)+1<<1,c[z>>2]|0)|0;c[H>>2]=l;c[$>>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)up(c[$>>2]|0,aa,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=Zp(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[Y>>2]=1;while(1){if((c[Y>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;l=c[n>>2]|0;if((c[aa>>2]|0)>=(c[Q>>2]|0))up(l,u,c[$>>2]|0,c[aa>>2]|0,c[P>>2]|0,c[Q>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);else up(l,u,c[P>>2]|0,c[Q>>2]|0,c[$>>2]|0,c[aa>>2]|0,c[p>>2]|0,c[s>>2]|0,fa);l=Zp(c[u>>2]|0,c[y>>2]|0)|0;c[M+(c[Y>>2]<<2)>>2]=l;c[P>>2]=l;l=c[u>>2]|0;c[N+(c[Y>>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[Y>>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[Y>>2]=(c[Y>>2]|0)+1}c[P>>2]=Zp(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[Y>>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[Y>>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[45773+((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[Z>>2]=0;while(1){if(!(c[da>>2]|0)){c[Z>>2]=(c[Z>>2]|0)+(c[ca>>2]|0);c[Y>>2]=(c[Y>>2]|0)+-1;if((c[Y>>2]|0)<0){Ja=86;break}c[da>>2]=c[(c[o>>2]|0)+(c[Y>>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[45773+((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[Z>>2]=(c[Z>>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[Y>>2]=(c[Y>>2]|0)+-1;if((c[Y>>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[Y>>2]<<2)>>2]|0)>>>(32-(c[O>>2]|0)+(c[oa>>2]|0)|0);c[da>>2]=c[(c[o>>2]|0)+(c[Y>>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[45773+((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[Z>>2]=(c[Z>>2]|0)+((c[O>>2]|0)-(c[oa>>2]|0));while(1){if(!(c[Z>>2]|0))break;up(c[$>>2]|0,aa,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[$>>2];c[$>>2]=c[ga>>2];c[u>>2]=c[aa>>2];c[Z>>2]=(c[Z>>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];oq(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}up(c[$>>2]|0,aa,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[$>>2];c[$>>2]=c[ga>>2];c[u>>2]=c[aa>>2];c[Z>>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[Z>>2]=(c[Z>>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[45773+((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[Z>>2]=(c[Z>>2]|0)-(c[ca>>2]|0)}while(1){l=c[Z>>2]|0;c[Z>>2]=l+-1;if(!l)break;up(c[$>>2]|0,aa,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[$>>2];c[$>>2]=c[ga>>2];c[u>>2]=c[aa>>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];oq(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}up(c[$>>2]|0,aa,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[$>>2];c[$>>2]=c[ga>>2];c[u>>2]=c[aa>>2];while(1){if(!(c[ca>>2]|0))break f;up(c[$>>2]|0,aa,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[$>>2];c[$>>2]=c[ga>>2];c[u>>2]=c[aa>>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]=Lp(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)){Jp((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)Tp(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}Sp(fa);c[Y>>2]=0;while(1){if((c[Y>>2]|0)>=(1<<(c[O>>2]|0)-1|0))break;if(c[y>>2]|0)Ka=c[N+(c[Y>>2]<<2)>>2]|0;else Ka=0;$p(c[M+(c[Y>>2]<<2)>>2]|0,Ka);c[Y>>2]=(c[Y>>2]|0)+1}$p(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)Tp(c[p>>2]|0,c[p>>2]|0,c[s>>2]|0,c[C>>2]|0)|0;kp(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 sf(46065,46040,786,46050)}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)bq(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)$p(c[E>>2]|0,c[I>>2]|0);if(c[F>>2]|0)$p(c[F>>2]|0,c[J>>2]|0);if(c[G>>2]|0)$p(c[G>>2]|0,c[K>>2]|0);if(!(c[H>>2]|0)){i=g;return}$p(c[H>>2]|0,c[L>>2]|0);i=g;return}function up(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))ba();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)Rp(l,k,p,h,r)|0;else Qp(l,k,p,h,r,c[v>>2]|0);if(((c[q>>2]|0)+(c[s>>2]|0)|0)>(c[u>>2]|0)){Jp((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 vp(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))ba();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[45773+((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 wp(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))ba();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=xp(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 xp(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))ba();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=Qf(c[B>>2]|0)|0}while(0);if((D|0)==13)E=Tf(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))Bx(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 yp(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))ba();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=xp(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 zp(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))ba();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){dq();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))bq(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 sf(46078,46090,377,46101)}function Ap(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))ba();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=(Uf(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=_p(x)|0;else y=Yp(x)|0;c[r>>2]=y;if(c[s>>2]|0?(zp(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){Bp(c[r>>2]|0);Ho(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){No(u);c[c[l>>2]>>2]=c[r>>2]}else eq(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=_p(u)|0;else A=Yp(u)|0;c[r>>2]=A;if(c[s>>2]|0)zp(c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,0);A=c[r>>2]|0;if(c[l>>2]|0){No(A);c[c[l>>2]>>2]=c[r>>2]}else eq(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]=Cp(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){eq(c[r>>2]|0);c[r>>2]=0}}else{No(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=_p(0)|0;else B=Yp(0)|0;c[r>>2]=B;if(Dp(c[r>>2]|0,c[q>>2]|0)|0){eq(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){No(B);c[c[l>>2]>>2]=c[r>>2]}else eq(B);if(c[p>>2]|0){B=Hv(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=_p(s)|0;else C=Yp(s)|0;c[r>>2]=C;if(c[w>>2]|0?(zp(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){Bp(c[r>>2]|0);Ho(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){No(w);c[c[l>>2]>>2]=c[r>>2]}else eq(w);c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}function Bp(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))ba();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]=Oo(c[d>>2]|0)|0;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&16|0:0){dq();i=b;return}No(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;So(c[d>>2]|0,(c[h>>2]|0)-1|0);i=b;return}function Cp(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))ba();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=_p(n)|0;else w=Yp(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}eq(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 Dp(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))ba();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]=(Hv(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)bq(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){cq(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==20){cq(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==27){cq(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==34){cq(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 Ep(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))ba();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]=Oo(c[q>>2]|0)|0;if(!(c[p>>2]|0))c[p>>2]=k+80;if(c[(c[q>>2]|0)+8>>2]|0?Yo(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]=wp(c[q>>2]|0,0,w,0)|0;if(!(c[u>>2]|0)){c[l>>2]=fu()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){Fp(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){Wf(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}Ax(c[x>>2]|0,c[u>>2]|0,(c[w>>2]|0)-(((c[v>>2]|0)!=0^1^1)&1)|0)|0}Wf(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]=wp(c[q>>2]|0,0,y,0)|0;if(c[z>>2]|0){Ax(c[n>>2]|0,c[z>>2]|0,c[y>>2]|0)|0;Wf(c[z>>2]|0);break}c[l>>2]=fu()|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]=wp(c[q>>2]|0,0,A,0)|0;if(c[B>>2]|0){Ax((c[C>>2]|0)+2|0,c[B>>2]|0,c[A>>2]|0)|0;Wf(c[B>>2]|0);break}c[l>>2]=fu()|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]=wp(c[q>>2]|0,0,F,0)|0;if(!(c[D>>2]|0)){c[l>>2]=fu()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){Fp(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){Wf(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}Ax(c[G>>2]|0,c[D>>2]|0,(c[F>>2]|0)-(((c[E>>2]|0)!=0^1^1)&1)|0)|0}Wf(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]=wp(c[q>>2]|0,0,K,0)|0;if(!(c[H>>2]|0)){c[l>>2]=fu()|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){Wf(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;Wf(c[H>>2]|0);c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}function Fp(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))ba();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 Gp(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))ba();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]=Ep(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=Tf(c[q>>2]|0)|0;else u=Qf(c[q>>2]|0)|0;c[r>>2]=u;if(!(c[r>>2]|0)){c[n>>2]=fu()|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)xx(c[r>>2]|0,0,c[p>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[n>>2]=Ep(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){Wf(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 Hp(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))ba();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 Ip(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))ba();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[45773+((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]=_(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]=_(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]=_(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]=_(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]=_(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]=_(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 ok(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))ba();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]=sg(c[g>>2]|0,37878,0)|0;if(!(c[m>>2]|0)){d=Ag(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]=sg(c[m>>2]|0,47134,0)|0;if(c[t>>2]|0){if(gk(c[t>>2]|0,s,(c[k>>2]|0)+8|0)|0)c[r>>2]=1;qg(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]=sg(c[m>>2]|0,37883,0)|0;if(c[n>>2]|0)T=0;else T=sg(c[m>>2]|0,42184,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]=sg(c[m>>2]|0,37772,0)|0;if(c[u>>2]|0){c[q>>2]=wg(c[u>>2]|0,1,p)|0;if(c[q>>2]|0){T=lk(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;qg(c[u>>2]|0)}else c[l>>2]=65;if(c[l>>2]|0)break;c[v>>2]=yg(c[o>>2]|0,1,w)|0;if(c[v>>2]|0){if(c[w>>2]<<3>>>0<(c[w>>2]|0)>>>0){Wf(c[v>>2]|0);c[l>>2]=67}}else{c[w>>2]=0;c[v>>2]=Qf(1)|0;if(!(c[v>>2]|0))c[l>>2]=fu()|0}if(c[l>>2]|0)break;T=fq(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((tg(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}T=wg(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=lk(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=yg(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){Wf(T);c[l>>2]=67;break a}else{t=fq(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=Ag(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=wg(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]=sg(c[m>>2]|0,37862,0)|0;if(c[B>>2]|0){c[q>>2]=wg(c[B>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0>0){c[C>>2]=Qf(c[p>>2]|0)|0;if(c[C>>2]|0){Ax(c[C>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[D>>2]=c[p>>2];break}else{c[l>>2]=fu()|0;break}}}else c[l>>2]=68;while(0);qg(c[B>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Fl(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;Wf(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((tg(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}t=wg(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=lk(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=wg(c[n>>2]|0,2,F)|0;c[E>>2]=t;if((t|0)!=0&(c[F>>2]|0)!=0){c[l>>2]=Jl(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((tg(c[o>>2]|0)|0)!=2){c[l>>2]=65;break a}t=wg(c[o>>2]|0,1,H)|0;c[G>>2]=t;if((t|0)!=0&(c[H>>2]|0)!=0){c[l>>2]=Kl(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=wg(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]=sg(c[m>>2]|0,37772,0)|0;if(c[K>>2]|0){c[q>>2]=wg(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){t=lk(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);qg(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=sg(c[m>>2]|0,37856,0)|0;if(c[K>>2]|0){c[q>>2]=wg(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;t=Qf(c[p>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=t;if(c[(c[k>>2]|0)+20>>2]|0){Ax(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]=fu()|0;break}}else c[l>>2]=68;while(0);qg(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=sg(c[m>>2]|0,37862,0)|0;if(c[K>>2]|0){c[q>>2]=wg(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[L>>2]=Qf(c[p>>2]|0)|0;if(c[L>>2]|0){Ax(c[L>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[M>>2]=c[p>>2];break}else{c[l>>2]=fu()|0;break}}else c[l>>2]=68;while(0);qg(c[K>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Ll(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;Wf(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((tg(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=wg(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=lk(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=wg(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]=sg(c[m>>2]|0,37888,0)|0;do if(c[R>>2]|0){c[q>>2]=wg(c[R>>2]|0,1,p)|0;if(c[q>>2]|0){t=Wv(c[q>>2]|0,0,10)|0;c[(c[k>>2]|0)+28>>2]=t;qg(c[R>>2]|0);break}else{c[l>>2]=68;break a}}while(0);c[R>>2]=sg(c[m>>2]|0,37862,0)|0;if(c[R>>2]|0){c[q>>2]=wg(c[R>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[P>>2]=Qf(c[p>>2]|0)|0;if(c[P>>2]|0){Ax(c[P>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[Q>>2]=c[p>>2];break}else{c[l>>2]=fu()|0;break}}else c[l>>2]=68;while(0);qg(c[R>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Pl(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;Wf(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((tg(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=wg(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=lk(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=Ag(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);qg(c[m>>2]|0);qg(c[n>>2]|0);qg(c[o>>2]|0);if(c[l>>2]|0){Wf(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 pk(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))ba();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=Ql(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 qk(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))ba();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[4444+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){k=11;break}a=(Sv(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(!(Sv(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 rk(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))ba();d=b+8|0;e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=sk(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]=37900;g=c[d>>2]|0;i=b;return g|0}return 0}function sk(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[e>>2]=tk(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4444+(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 tk(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 uk(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))ba();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]=vk(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]=Db[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);qg(c[m>>2]|0);i=e;return c[k>>2]|0}function vk(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))ba();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]=sg(c[h>>2]|0,c[k>>2]|0?37902:37914,0)|0;if(!((c[n>>2]|0)!=0|(c[k>>2]|0)!=0))c[n>>2]=sg(c[h>>2]|0,37902,0)|0;if(!(c[n>>2]|0)){c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[o>>2]=Cg(c[n>>2]|0)|0;qg(c[n>>2]|0);c[n>>2]=c[o>>2];c[p>>2]=zg(c[n>>2]|0,0)|0;if(!(c[p>>2]|0)){qg(c[n>>2]|0);c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[q>>2]=qk(c[p>>2]|0)|0;Wf(c[p>>2]|0);if(!(c[q>>2]|0)){qg(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 qg(q);c[g>>2]=0;r=c[g>>2]|0;i=f;return r|0}function wk(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))ba();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]=vk(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]=Db[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);qg(c[m>>2]|0);i=e;return c[k>>2]|0}function xk(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))ba();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]=vk(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]=Db[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);qg(c[m>>2]|0);i=e;return c[k>>2]|0}function yk(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))ba();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]=vk(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]=Db[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);qg(c[m>>2]|0);i=e;return c[k>>2]|0}function zk(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))ba();d=b+12|0;e=b+8|0;f=b+4|0;g=b;c[d>>2]=a;c[e>>2]=vk(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]=Hb[c[(c[f>>2]|0)+44>>2]&15](c[g>>2]|0)|0;break}else{c[e>>2]=69;break}while(0);qg(c[g>>2]|0);i=b;return c[e>>2]|0}function Ak(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))ba();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]=sg(c[f>>2]|0,37925,0)|0;do if(c[h>>2]|0){c[k>>2]=Cg(c[h>>2]|0)|0;qg(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]=zg(c[h>>2]|0,0)|0;if(!(c[l>>2]|0)){c[m>>2]=65;break}c[g>>2]=qk(c[l>>2]|0)|0;Wf(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]=Mb[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);qg(c[h>>2]|0);Wf(c[l>>2]|0);qg(c[k>>2]|0);i=d;return c[m>>2]|0}function Bk(){return 0}function Ck(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))ba();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]=tk(c[g>>2]|0)|0;c[m>>2]=sk(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]=Db[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=Dk(n)|0;i=f;return o|0}c[l>>2]=4;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=Dk(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=37971;else p=c[m>>2]|0?37932:37951;Nb[h&1](49803,k,37993,p);n=c[l>>2]|0;o=Dk(n)|0;i=f;return o|0}function Dk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Ek(1,c[d>>2]|0)|0;i=b;return a|0}function Ek(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))ba();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 Fk(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))ba();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=Gk(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function Gk(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))ba();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=(vh()|0)!=0;if(!(f|(c[17694]|0)!=0)?(c[17694]=1,c[17695]=Hk()|0,c[17695]|0):0){c[h>>2]=c[17695];vf(43673,h)}if(c[17695]|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]=4577;Nk();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[6880+(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=Jx(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 Hk(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a+4|0;d=a;e=Ik()|0;c[d>>2]=e;do if((!(e|0)?(f=Rk()|0,c[d>>2]=f,!(f|0)):0)?(f=Sk()|0,c[d>>2]=f,!(f|0)):0){f=Tk()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}f=Wk()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}else{c[d>>2]=Zk()|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 Ik(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))ba();b=a+504|0;d=a;e=a+512|0;Fk(d,38120,16)|0;Jk(d,e,38136)|0;do if(!(jw(e,38152,16)|0)){Kk(d,e,e)|0;if(jw(e,38136,16)|0){c[b>>2]=38200;break}else{c[b>>2]=0;break}}else c[b>>2]=38168;while(0);i=a;return c[b>>2]|0}function Jk(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))ba();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)Jb[c[(c[k>>2]|0)+496>>2]&3]();f=Db[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 Kk(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))ba();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];Lk(c[k>>2]|0);if(c[(c[k>>2]|0)+500>>2]|0)Jb[c[(c[k>>2]|0)+500>>2]&3]();f=Db[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 Lk(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=b;if(a[(c[e>>2]|0)+484>>0]&1|0){i=d;return}Mk(c[e>>2]|0);b=(c[e>>2]|0)+484|0;a[b>>0]=a[b>>0]&-2|1;i=d;return}function Mk(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))ba();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]=4577;Nk();Pk();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=Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(Qk(c[5600+((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=Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(Qk(c[5600+((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=Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(Qk(c[5600+((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=Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(Qk(c[5600+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(Qk(c[5600+((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 Nk(){Ok(4576,1024);return}function Ok(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))ba();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 Pk(){Ok(5600,1280);return}function Qk(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))ba();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 Rk(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))ba();b=a+504|0;d=a;e=a+512|0;Fk(d,38232,24)|0;Jk(d,e,38256)|0;do if(!(jw(e,38272,16)|0)){Kk(d,e,e)|0;if(jw(e,38256,16)|0){c[b>>2]=38320;break}else{c[b>>2]=0;break}}else c[b>>2]=38288;while(0);i=a;return c[b>>2]|0}function Sk(){var a=0,b=0,d=0,e=0;a=i;i=i+528|0;if((i|0)>=(j|0))ba();b=a+504|0;d=a;e=a+512|0;Fk(d,38352,32)|0;Jk(d,e,38384)|0;do if(!(jw(e,38400,16)|0)){Kk(d,e,e)|0;if(jw(e,38384,16)|0){c[b>>2]=38448;break}else{c[b>>2]=0;break}}else c[b>>2]=38416;while(0);i=a;return c[b>>2]|0}function Tk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=9;c[a+4>>2]=16;c[a>>2]=504;b=Zr(38e3,1,2,4,9,16,504)|0;i=a;return b|0}function Uk(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))ba();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)Jb[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]=Db[c[w>>2]&63](c[q>>2]|0,v,c[m>>2]|0)|0;Vk(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=Jx(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}Df((c[t>>2]|0)+16|0);Ef();i=k;return}function Vk(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))ba();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 Wk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=10;c[a+4>>2]=16;c[a>>2]=504;b=Vr(38e3,1,2,3,10,16,504)|0;i=a;return b|0}function Xk(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))ba();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;Lk(c[q>>2]|0);if(c[(c[q>>2]|0)+500>>2]|0)Jb[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]=Db[c[v>>2]&63](c[q>>2]|0,u,c[s>>2]|0)|0;Yk(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=Jx(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}Df((c[t>>2]|0)+16|0);Ef();i=k;return}function Yk(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))ba();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 Zk(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();c[a+8>>2]=10;c[a+4>>2]=16;c[a>>2]=504;b=Xr(38e3,1,2,2,10,16,504)|0;i=a;return b|0}function _k(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))ba();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)Jb[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]=Db[c[s>>2]&63](c[o>>2]|0,c[k>>2]|0,c[k>>2]|0)|0;$k(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}Df((c[r>>2]|0)+16|0);Ef();i=g;return}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))ba();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;Yk(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function al(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=bl(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function bl(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))ba();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]=4577;c[m>>2]=c[(c[g>>2]|0)+480>>2];c[p>>2]=cl(c[k>>2]|0)|0;c[p+4>>2]=cl((c[k>>2]|0)+4|0)|0;c[p+8>>2]=cl((c[k>>2]|0)+8|0)|0;c[p+12>>2]=cl((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]=Qk(c[4576+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=Qk(c[4576+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=Qk(c[4576+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=Qk(c[4576+(((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=Qk(c[4576+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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]=Qk(c[4576+(q<<2)>>2]|0,0)|0;c[p+12>>2]=Qk(c[4576+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=Qk(c[4576+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=Qk(c[4576+(((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=Qk(c[4576+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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]=Qk(c[4576+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=Qk(c[4576+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=Qk(c[4576+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=Qk(c[4576+(((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=Qk(c[4576+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=Qk(c[4576+(((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=Qk(c[4576+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=Qk(c[4576+(((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];dl(c[h>>2]|0,c[o>>2]|0);dl((c[h>>2]|0)+4|0,c[o+4>>2]|0);dl((c[h>>2]|0)+8|0,c[o+8>>2]|0);dl((c[h>>2]|0)+12|0,c[o+12>>2]|0);i=f;return 64}function cl(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 dl(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))ba();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 el(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))ba();f=e+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=fl(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function fl(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))ba();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]=cl(c[k>>2]|0)|0;c[o+4>>2]=cl((c[k>>2]|0)+4|0)|0;c[o+8>>2]=cl((c[k>>2]|0)+8|0)|0;c[o+12>>2]=cl((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]=Qk(c[5600+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=Qk(c[5600+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=Qk(c[5600+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=Qk(c[5600+(((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=Qk(c[5600+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((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=Qk(c[5600+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=Qk(c[5600+(((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=Qk(c[5600+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=Qk(c[5600+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((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]=Qk(c[5600+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=Qk(c[5600+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=Qk(c[5600+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=Qk(c[5600+(((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=Qk(c[5600+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((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=Qk(c[5600+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=Qk(c[5600+(((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=Qk(c[5600+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=Qk(c[5600+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=Qk(c[5600+(((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=Qk(c[5600+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+4|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((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=Qk(c[5600+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^m;m=Qk(c[5600+(((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=Qk(c[5600+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^m;m=Qk(c[5600+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=n+4|0;c[l>>2]=c[l>>2]^m;m=Qk(c[5600+(((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[6624+((c[n>>2]|0)>>>0&255)>>0]|0)<<0;c[o+4>>2]=(d[6624+((c[n>>2]|0)>>>8&255)>>0]|0)<<8;c[o+8>>2]=(d[6624+((c[n>>2]|0)>>>16&255)>>0]|0)<<16;c[o+12>>2]=(d[6624+((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[6624+((c[n+4>>2]|0)>>>0&255)>>0]|0)<<0;m=o+8|0;c[m>>2]=c[m>>2]^(d[6624+((c[n+4>>2]|0)>>>8&255)>>0]|0)<<8;m=o+12|0;c[m>>2]=c[m>>2]^(d[6624+((c[n+4>>2]|0)>>>16&255)>>0]|0)<<16;c[n>>2]=c[n>>2]^(d[6624+((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[6624+((c[n+8>>2]|0)>>>0&255)>>0]|0)<<0;m=o+12|0;c[m>>2]=c[m>>2]^(d[6624+((c[n+8>>2]|0)>>>8&255)>>0]|0)<<8;c[n>>2]=c[n>>2]^(d[6624+((c[n+8>>2]|0)>>>16&255)>>0]|0)<<16;m=n+4|0;c[m>>2]=c[m>>2]^(d[6624+((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[6624+((c[n+12>>2]|0)>>>0&255)>>0]|0)<<0;c[n>>2]=c[n>>2]^(d[6624+((c[n+12>>2]|0)>>>8&255)>>0]|0)<<8;m=n+4|0;c[m>>2]=c[m>>2]^(d[6624+((c[n+12>>2]|0)>>>16&255)>>0]|0)<<16;m=n+8|0;c[m>>2]=c[m>>2]^(d[6624+((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];dl(c[h>>2]|0,c[n>>2]|0);dl((c[h>>2]|0)+4|0,c[n+4>>2]|0);dl((c[h>>2]|0)+8|0,c[n+8>>2]|0);dl((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=f;return 64}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))ba();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]=hl(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=jl(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=kl(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=12}i=e;return c[k>>2]|0}function hl(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))ba();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]=49793;c[k>>2]=Ik()|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=38480;c[k>>2]=il(2)|0;if(c[k>>2]|0)break;c[h>>2]=38597;c[k>>2]=il(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)Nb[c[g>>2]&1](38601,7,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function il(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))ba();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[7e3+((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){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38484;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=Xh(l,7,c[7e3+((c[h>>2]|0)*164|0)>>2]|0,0)|0;if(c[g>>2]|0){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38511;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=Xh(m,7,c[7e3+((c[h>>2]|0)*164|0)>>2]|0,0)|0;e=c[l>>2]|0;if(c[g>>2]|0){ai(e);ai(c[m>>2]|0);c[d>>2]=38511;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=ii(e,7e3+((c[h>>2]|0)*164|0)+4|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=ii(c[m>>2]|0,7e3+((c[h>>2]|0)*164|0)+4|0,16)|0;e=c[l>>2]|0;if(c[g>>2]|0){ai(e);ai(c[m>>2]|0);c[d>>2]=38516;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=ki(e,7e3+((c[h>>2]|0)*164|0)+20|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=ki(c[m>>2]|0,7e3+((c[h>>2]|0)*164|0)+20|0,16)|0;if(c[g>>2]|0){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38524;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]=bi(o,f,16,7e3+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)|0,16)|0;if(c[g>>2]|0){p=22;break}if(jw(f,7e3+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0){p=24;break}c[g>>2]=fi(c[m>>2]|0,f,16,7e3+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0;if(c[g>>2]|0){p=26;break}if(jw(f,7e3+((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){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38531;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==24){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38547;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==26){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38564;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==28){ai(c[l>>2]|0);ai(c[m>>2]|0);c[d>>2]=38580;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==30){ai(o);ai(c[m>>2]|0);c[d>>2]=0;n=c[d>>2]|0;i=b;return n|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))ba();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]=49793;c[h>>2]=Rk()|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)Nb[c[f>>2]&1](38601,8,c[g>>2]|0,c[h>>2]|0);c[e>>2]=50;k=c[e>>2]|0;i=d;return k|0}function kl(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))ba();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]=49793;c[h>>2]=Sk()|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)Nb[c[f>>2]&1](38601,9,c[g>>2]|0,c[h>>2]|0);c[e>>2]=50;k=c[e>>2]|0;i=d;return k|0}function ll(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))ba();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)Jb[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]=Db[c[s>>2]&63](c[o>>2]|0,c[k>>2]|0,c[k>>2]|0)|0;ml(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}Df((c[r>>2]|0)+16|0);Ef();i=g;return}function ml(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))ba();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 nl(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))ba();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)Jb[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;Vk(c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,16);c[u>>2]=Db[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))ol(c[l>>2]|0,c[t>>2]|0,16);if(!(c[u>>2]|0)){i=h;return}Df((c[u>>2]|0)+16|0);Ef();i=h;return}function ol(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))ba();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 pl(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))ba();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)Jb[c[(c[o>>2]|0)+496>>2]&3]()}else{Lk(l);if(c[(c[o>>2]|0)+500>>2]|0)Jb[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=yx(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]=ql(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]=vr(c[h>>2]|0,s,c[f>>2]|0,c[f+4>>2]|0)|0}sl((c[h>>2]|0)+64|0,c[w>>2]|0,16);ol(s,c[q>>2]|0,16);sl((c[h>>2]|0)+80|0,s,16);sl(s,(c[h>>2]|0)+64|0,16);c[r>>2]=Db[c[t>>2]&63](c[o>>2]|0,s,s)|0;sl(s,(c[h>>2]|0)+64|0,16);ol(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=yx(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]=ql(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]=vr(c[h>>2]|0,x,c[d>>2]|0,c[d+4>>2]|0)|0}sl((c[h>>2]|0)+64|0,c[B>>2]|0,16);ol(x,c[q>>2]|0,16);sl(x,(c[h>>2]|0)+64|0,16);c[r>>2]=Db[c[y>>2]&63](c[o>>2]|0,x,x)|0;sl(x,(c[h>>2]|0)+64|0,16);sl((c[h>>2]|0)+80|0,x,16);ol(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}Df((c[r>>2]|0)+16|0);Ef();i=g;return}function ql(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))ba();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]=rl(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(rl(g)|0);h=c[e>>2]|0;i=d;return h|0}return 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))ba();d=b;c[d>>2]=a;a=(c[d>>2]|0)!=0;e=zx(c[d>>2]|0)|0;i=b;return (a?e:32)|0}function sl(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))ba();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 tl(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))ba();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)Jb[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=yx(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]=ql(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]=vr(c[h>>2]|0,p,c[f>>2]|0,c[f+4>>2]|0)|0}sl((c[h>>2]|0)+128+304|0,c[t>>2]|0,16);Vk(p,(c[h>>2]|0)+128+304|0,c[n>>2]|0,16);c[o>>2]=Db[c[q>>2]&63](c[m>>2]|0,p,p)|0;sl((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=Jx(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}Df((c[o>>2]|0)+16|0);Ef();i=g;return}function ul(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))ba();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 vl(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))ba();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]=wl(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 wl(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))ba();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=xl((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=yl(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,15)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,15)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,7)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,12)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,6)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,8)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,7)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,7)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,7)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,7)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,11)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,6)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,15)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,14)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,8)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,13)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,13)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,7)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,12)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,9)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,6)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,5)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,15)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,8)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,8)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,15)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,5)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,8)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,8)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,13)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=yl(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=yl(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=yl(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=yl(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=yl(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=yl(c[r>>2]|0,11)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=yl(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=yl(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=yl(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=yl(c[p>>2]|0,8)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=yl(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=yl(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=yl(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=yl(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=yl(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=yl(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=yl(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=yl(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=yl(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=yl(c[m>>2]|0,11)|0;c[m>>2]=t+(c[k>>2]|0);c[q>>2]=yl(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 xl(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 yl(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))ba();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 zl(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))ba();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];os(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}os(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);Al((c[f>>2]|0)+56|0,c[l>>2]|0);Al((c[f>>2]|0)+60|0,c[k>>2]|0);c[n>>2]=vl(c[f>>2]|0,c[f>>2]|0,1)|0;Df(c[n>>2]|0);Ef();c[m>>2]=c[f>>2];Al(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Al(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Al(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Al(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Al(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Al(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))ba();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 Bl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function Cl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;ul(c[d>>2]|0,0);i=b;return}function Dl(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))ba();e=d+8|0;f=d+4|0;g=d;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[f>>2];vl(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 El(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))ba();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;Cl(l);os(l,c[h>>2]|0,c[k>>2]|0);zl(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 Fl(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))ba();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=Tf(c[u>>2]|0)|0;c[t>>2]=n;if(!n){c[l>>2]=fu()|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)sf(38907,38913,95,38926);do if(c[q>>2]|0){if((c[r>>2]|0)!=(c[v>>2]|0)){Wf(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){Ax((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}Wf(c[t>>2]|0);c[l>>2]=45;C=c[l>>2]|0;i=k;return C|0}else{c[x>>2]=Ln(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]=Ln(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}Wf(c[B>>2]|0)}Ax((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);Wf(c[x>>2]|0)}while(0);x=c[w>>2]|0;c[w>>2]=x+1;a[(c[t>>2]|0)+x>>0]=0;Ax((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))sf(38957,38913,153,38926);c[s>>2]=Ap(c[m>>2]|0,5,c[t>>2]|0,c[w>>2]|0,u)|0;if((c[s>>2]|0)==0?eg(1)|0:0)Cf(38969,c[c[m>>2]>>2]|0);Wf(c[t>>2]|0);c[l>>2]=c[s>>2];C=c[l>>2]|0;i=k;return C|0}function Gl(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))ba();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=Tf(c[r>>2]|0)|0;c[q>>2]=n;if(!n){c[k>>2]=fu()|0;t=c[k>>2]|0;i=h;return t|0}c[p>>2]=Ep(5,c[q>>2]|0,c[r>>2]|0,s,c[o>>2]|0)|0;if(c[p>>2]|0){Wf(c[q>>2]|0);c[k>>2]=Hl(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){Wf(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){Wf(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){Wf(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;Bx(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(eg(1)|0)Af(39002,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 Hl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Il(c[d>>2]|0)|0;i=b;return a|0}function Il(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function Jl(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))ba();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]=Rj(c[p>>2]|0)|0;if(Sj(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=Qf(c[t>>2]|0)|0;c[s>>2]=x;if(!x){c[k>>2]=fu()|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)sf(39056,38913,303,39062);xx((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;Ax((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);Ax((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))sf(38957,38913,311,39062);c[q>>2]=Ap(c[l>>2]|0,5,c[s>>2]|0,c[v>>2]|0,t)|0;if((c[q>>2]|0)==0?eg(1)|0:0)Cf(39093,c[c[l>>2]>>2]|0);Wf(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 Kl(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))ba();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=Qf(c[r>>2]|0)|0;c[q>>2]=l;if(!l){c[h>>2]=fu()|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)sf(39056,38913,368,39126);xx((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;Ax((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))sf(38957,38913,374,39126);c[p>>2]=Ap(c[k>>2]|0,5,c[q>>2]|0,c[t>>2]|0,r)|0;if(!(c[p>>2]|0)){if(eg(1)|0)Cf(39093,c[c[k>>2]>>2]|0)}else c[o>>2]=Hl(c[p>>2]|0)|0;Wf(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 Ll(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))ba();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]=76495;c[w>>2]=0}c[D>>2]=Rj(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]=Yf(1,c[B>>2]|0)|0;if(!(c[A>>2]|0)){c[p>>2]=fu()|0;H=c[p>>2]|0;i=o;return H|0}Kj(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;Ax((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)){Ax(u+1|0,c[x>>2]|0,c[D>>2]|0)|0;break}Wf(u);c[p>>2]=45;H=c[p>>2]|0;i=o;return H|0}else Mn((c[A>>2]|0)+1|0,c[D>>2]|0,1);while(0);c[F>>2]=Tf((c[B>>2]|0)-(c[D>>2]|0)-1|0)|0;if(!(c[F>>2]|0)){c[z>>2]=fu()|0;Wf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Ml(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){Wf(c[F>>2]|0);Wf(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}Wf(c[F>>2]|0);c[G>>2]=Tf(c[D>>2]|0)|0;if(!(c[G>>2]|0)){c[z>>2]=fu()|0;Wf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Ml(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){Wf(c[G>>2]|0);Wf(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}Wf(c[G>>2]|0);c[z>>2]=Ap(c[q>>2]|0,5,c[A>>2]|0,c[B>>2]|0,0)|0;if((c[z>>2]|0)==0?eg(1)|0:0)Cf(39161,c[c[q>>2]>>2]|0);Wf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}function Ml(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))ba();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]=rj(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]=Rj(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)Aj(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;Cj(c[u>>2]|0,c[n>>2]|0,c[o>>2]|0);Cj(c[u>>2]|0,w,4);c[x>>2]=Oj(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;Ax((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)}Bj(c[u>>2]|0);c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function Nl(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))ba();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]=76495;c[u>>2]=0}c[D>>2]=Rj(c[r>>2]|0)|0;c[B>>2]=Qf(c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[n>>2]=fu()|0;I=c[n>>2]|0;i=m;return I|0}Kj(c[r>>2]|0,c[B>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=Ol(w,0,c[s>>2]|0,c[F>>2]|0)|0;if(c[v>>2]|0){Wf(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){Wf(c[w>>2]|0);Wf(c[B>>2]|0);c[n>>2]=155;I=c[n>>2]|0;i=m;return I|0}c[z>>2]=Tf((c[C>>2]|0)-1|0)|0;if(!(c[z>>2]|0)){c[v>>2]=fu()|0;Wf(c[w>>2]|0);Wf(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(Ml(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(Ml(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(jw(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;Wf(c[B>>2]|0);Wf(c[w>>2]|0);if(c[G>>2]|0){Wf(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;Bx(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(eg(1)|0)Af(39179,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 Ol(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))ba();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=Gp(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function Pl(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))ba();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]=Rj(c[q>>2]|0)|0;if(!(c[x>>2]|0))sf(39218,38913,800,39223);c[D>>2]=8+(c[x>>2]|0)+(c[t>>2]|0)+((c[z>>2]|0)-(c[x>>2]|0)-1);c[B>>2]=Qf(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}Ax(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]=Qf(c[z>>2]|0)|0;if(!(c[y>>2]|0)){c[w>>2]=fu()|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)){Mn(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{Ax(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;Kj(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;xx(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;Ax(c[H>>2]|0,c[F>>2]|0,c[t>>2]|0)|0;Ml(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]=Ap(c[o>>2]|0,5,c[y>>2]|0,c[z>>2]|0,0)|0;if((c[w>>2]|0)==0?eg(1)|0:0)Cf(39244,c[c[o>>2]>>2]|0)}else c[w>>2]=fu()|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=Jx(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}Wf(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=Jx(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}Wf(c[B>>2]|0);T=c[w>>2]|0;i=n;return T|0}function Ql(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))ba();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]=Rj(c[o>>2]|0)|0;if(!(c[r>>2]|0))sf(39218,38913,926,39261);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]=Qf(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]=Ol(0,c[z>>2]|0,c[l>>2]|0,c[r>>2]|0)|0;if((c[q>>2]|0)==0?(c[q>>2]=Ol(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}Ml(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;Ax((c[w>>2]|0)+8|0,c[z>>2]|0,c[r>>2]|0)|0;Ax((c[w>>2]|0)+8+(c[r>>2]|0)|0,c[u>>2]|0,c[p>>2]|0)|0;Kj(c[o>>2]|0,c[w>>2]|0,c[w>>2]|0,8+(c[r>>2]|0)+(c[p>>2]|0)|0);h=(jw(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]=fu()|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=Jx(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}Wf(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=Jx(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}Wf(c[w>>2]|0);N=c[q>>2]|0;i=k;return N|0}function Rl(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))ba();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]=hk(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]=ik(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]=sg(c[g>>2]|0,47134,0)|0;if(c[q>>2]|0?(c[k>>2]=gk(c[q>>2]|0,p,0)|0,qg(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=sg(c[g>>2]|0,39343,0)|0;else u=0;c[o>>2]=u;if((c[o>>2]|0)==0?(c[q>>2]=sg(c[g>>2]|0,39356,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|64;qg(c[q>>2]|0)}if((!(c[o>>2]|0)?!(c[p>>2]&64|0):0)?!(vh()|0):0){if((c[p>>2]&32|0)==0?(c[q>>2]=sg(c[g>>2]|0,47140,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|32;qg(c[q>>2]|0)}c[k>>2]=Yl(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]=Sl(n,c[l>>2]|0,c[m>>2]|0,c[o>>2]|0,s)|0,qg(c[o>>2]|0),(c[k>>2]|0)==0&(c[s>>2]|0)!=0):0)c[k>>2]=rg(r,39624,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]=Dg(s,0,39720,e)|0}eq(c[n>>2]|0);eq(c[n+4>>2]|0);eq(c[n+12>>2]|0);eq(c[n+16>>2]|0);eq(c[n+8>>2]|0);eq(c[n+20>>2]|0);qg(c[r>>2]|0);c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}function Sl(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))ba();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]=39475;c[I+8>>2]=39479;c[I+16>>2]=39483;c[I+24>>2]=39486;c[I+32>>2]=39490;c[I+40>>2]=39494;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]=sg(c[o>>2]|0,c[I+(c[J>>2]<<3)>>2]|0,0)|0;if(c[K>>2]|0){f=Ag(c[K>>2]|0,1,5)|0;c[c[I+(c[J>>2]<<3)+4>>2]>>2]=f;qg(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;uq(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]=Tl(((c[m>>2]|0)>>>0)/2|0)|0;c[H>>2]=tq(((c[m>>2]|0)>>>0)/2|0)|0;do{uq(c[G>>2]|0);c[G>>2]=Tl(((c[m>>2]|0)>>>0)/2|0)|0;Ko(c[H>>2]|0,c[D>>2]|0,c[G>>2]|0);J=Oo(c[H>>2]|0)|0}while(J>>>0<=((((c[m>>2]|0)>>>0)/2|0)-100|0)>>>0);uq(c[H>>2]|0);c[B>>2]=Ul()|0;c[C>>2]=Ul()|0;c[E>>2]=Ul()|0;c[F>>2]=Ul()|0}c[s>>2]=Xp(c[n>>2]|0)|0;c[q>>2]=ek(c[D>>2]|0,c[B>>2]|0,c[C>>2]|0,c[s>>2]|0,0,0)|0;c[r>>2]=ek(c[G>>2]|0,c[E>>2]|0,c[F>>2]|0,c[s>>2]|0,0,0)|0;uq(c[D>>2]|0);c[D>>2]=0;uq(c[B>>2]|0);c[B>>2]=0;uq(c[C>>2]|0);c[C>>2]=0;uq(c[G>>2]|0);c[G>>2]=0;uq(c[E>>2]|0);c[E>>2]=0;uq(c[F>>2]|0);c[F>>2]=0;F=c[q>>2]|0;if(!((c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){uq(F);uq(c[r>>2]|0);uq(c[s>>2]|0);c[k>>2]=21;L=c[k>>2]|0;i=g;return L|0}if((Zo(F,c[r>>2]|0)|0)>0){qq(c[q>>2]|0,c[r>>2]|0);c[c[p>>2]>>2]=1}c[t>>2]=sq(c[m>>2]|0)|0;rp(c[t>>2]|0,c[q>>2]|0,c[r>>2]|0);c[w>>2]=tq(((c[m>>2]|0)>>>0)/2|0)|0;c[x>>2]=tq(((c[m>>2]|0)>>>0)/2|0)|0;c[y>>2]=tq(c[m>>2]|0)|0;Jo(c[w>>2]|0,c[q>>2]|0,1);Jo(c[x>>2]|0,c[r>>2]|0,1);rp(c[y>>2]|0,c[w>>2]|0,c[x>>2]|0);c[A>>2]=tq(c[m>>2]|0)|0;if(!(gp(c[A>>2]|0,c[s>>2]|0,c[y>>2]|0)|0))sf(39497,39401,541,39531);gp(c[A>>2]|0,c[w>>2]|0,c[x>>2]|0)|0;c[z>>2]=c[w>>2];c[w>>2]=0;uq(c[x>>2]|0);c[x>>2]=0;cp(c[z>>2]|0,c[y>>2]|0,c[A>>2]|0);uq(c[y>>2]|0);c[y>>2]=0;c[u>>2]=c[A>>2];c[A>>2]=0;mp(c[u>>2]|0,c[s>>2]|0,c[z>>2]|0)|0;c[v>>2]=c[z>>2];c[z>>2]=0;mp(c[v>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if(eg(1)|0){if(c[c[p>>2]>>2]|0)yf(39545,h);Cf(45597,c[q>>2]|0);Cf(39566,c[r>>2]|0);Cf(39570,c[t>>2]|0);Cf(39574,c[s>>2]|0);Cf(39578,c[u>>2]|0);Cf(39582,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(Vl(c[l>>2]|0,(c[m>>2]|0)-64|0)|0){uq(c[c[l>>2]>>2]|0);c[c[l>>2]>>2]=0;uq(c[(c[l>>2]|0)+4>>2]|0);c[(c[l>>2]|0)+4>>2]=0;uq(c[(c[l>>2]|0)+12>>2]|0);c[(c[l>>2]|0)+12>>2]=0;uq(c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;uq(c[(c[l>>2]|0)+8>>2]|0);c[(c[l>>2]|0)+8>>2]=0;uq(c[(c[l>>2]|0)+20>>2]|0);c[(c[l>>2]|0)+20>>2]=0;Eh(39401,586,39531,0,39586);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 Tl(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=tq(c[d>>2]|0)|0;vq(c[e>>2]|0,c[d>>2]|0,2);Ro(c[e>>2]|0,(c[d>>2]|0)-1|0);Qo(c[e>>2]|0,(c[d>>2]|0)-2|0);a=Oo(c[e>>2]|0)|0;if((a|0)==(c[d>>2]|0)){i=b;return c[e>>2]|0}else sf(39365,39401,360,39407);return 0}function Ul(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=a;c[b>>2]=tq(101)|0;vq(c[b>>2]|0,101,2);Ro(c[b>>2]|0,100);if((Oo(c[b>>2]|0)|0)==101){i=a;return c[b>>2]|0}else sf(39424,39401,375,39458);return 0}function Vl(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))ba();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]=sq(c[f>>2]|0)|0;c[l>>2]=sq(c[f>>2]|0)|0;c[m>>2]=sq(c[f>>2]|0)|0;c[n>>2]=sq(c[f>>2]|0)|0;c[h>>2]=c[c[e>>2]>>2];c[h+4>>2]=c[(c[e>>2]|0)+4>>2];vq(c[k>>2]|0,c[f>>2]|0,0);Wl(c[l>>2]|0,c[k>>2]|0,h);if(((Zo(c[l>>2]|0,c[k>>2]|0)|0?(Xl(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0),(Zo(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(vq(c[k>>2]|0,c[f>>2]|0,0),Xl(c[n>>2]|0,c[k>>2]|0,c[e>>2]|0),Wl(c[m>>2]|0,c[n>>2]|0,h),(Zo(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(Ho(c[n>>2]|0,c[n>>2]|0,1),Wl(c[m>>2]|0,c[n>>2]|0,h),Zo(c[m>>2]|0,c[k>>2]|0)|0):0)c[g>>2]=0;uq(c[n>>2]|0);uq(c[m>>2]|0);uq(c[l>>2]|0);uq(c[k>>2]|0);i=d;return c[g>>2]|0}function Wl(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))ba();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]=Yp(c[(c[g>>2]|0)+4>>2]<<1)|0;tp(c[k>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[c[h>>2]>>2]|0);lq(c[f>>2]|0,c[k>>2]|0)|0;eq(c[k>>2]|0);i=e;return}else{tp(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 Xl(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))ba();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;No(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]=_p((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[l>>2]=_p((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[m>>2]=_p((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;Jo(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1);_o(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);tp(c[k>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Jo(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1);_o(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);tp(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Ko(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0);if(c[(c[m>>2]|0)+8>>2]|0)Io(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);sp(c[m>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);rp(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Io(c[f>>2]|0,c[k>>2]|0,c[m>>2]|0);eq(c[m>>2]|0);eq(c[k>>2]|0);eq(c[l>>2]|0);i=e;return}tp(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 Yl(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))ba();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(vh()|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]=Yp(1)|0;if(c[l>>2]|0){c[l>>2]=c[l>>2]|1;pq(c[u>>2]|0,c[l>>2]|0)|0}else pq(c[u>>2]|0,41)|0;c[t>>2]=sq(c[k>>2]|0)|0;c[o>>2]=0;c[n>>2]=0;do{if(c[n>>2]|0)uq(c[n>>2]|0);if(c[o>>2]|0)uq(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]=$j(m,e,6,c[u>>2]|0)|0;c[o>>2]=$j(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,6,c[u>>2]|0)|0}else{c[n>>2]=$j(m,e,0,0)|0;c[o>>2]=$j(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,0,0)|0}if((Zo(c[n>>2]|0,c[o>>2]|0)|0)>0)qq(c[n>>2]|0,c[o>>2]|0);rp(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);e=Oo(c[t>>2]|0)|0}while((e|0)!=(c[k>>2]|0));c[r>>2]=_p(c[(c[n>>2]|0)+4>>2]|0)|0;c[s>>2]=_p(c[(c[n>>2]|0)+4>>2]|0)|0;c[v>>2]=tq(c[k>>2]|0)|0;c[w>>2]=tq(c[k>>2]|0)|0;c[x>>2]=tq(c[k>>2]|0)|0;Jo(c[r>>2]|0,c[n>>2]|0,1);Jo(c[s>>2]|0,c[o>>2]|0,1);rp(c[v>>2]|0,c[r>>2]|0,c[s>>2]|0);gp(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;cp(c[x>>2]|0,c[v>>2]|0,c[w>>2]|0);while(1){if(!((gp(c[r>>2]|0,c[u>>2]|0,c[v>>2]|0)|0)!=0^1))break;if(c[l>>2]|0){A=27;break}Ho(c[u>>2]|0,c[u>>2]|0,2)}if((A|0)==27)rf(39401,287,39653);c[p>>2]=tq(c[k>>2]|0)|0;mp(c[p>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;c[q>>2]=tq(c[k>>2]|0)|0;mp(c[q>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if(eg(1)|0){Cf(39666,c[n>>2]|0);Cf(39672,c[o>>2]|0);Cf(39678,c[v>>2]|0);Cf(39684,c[w>>2]|0);Cf(39690,c[x>>2]|0);Cf(39696,c[t>>2]|0);Cf(39702,c[u>>2]|0);Cf(39708,c[p>>2]|0);Cf(39714,c[q>>2]|0)}uq(c[r>>2]|0);uq(c[s>>2]|0);uq(c[v>>2]|0);uq(c[x>>2]|0);uq(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(Vl(c[h>>2]|0,(c[k>>2]|0)-64|0)|0){uq(c[c[h>>2]>>2]|0);c[c[h>>2]>>2]=0;uq(c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2]|0)+4>>2]=0;uq(c[(c[h>>2]|0)+12>>2]|0);c[(c[h>>2]|0)+12>>2]=0;uq(c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=0;uq(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0;uq(c[(c[h>>2]|0)+20>>2]|0);c[(c[h>>2]|0)+20>>2]=0;Eh(39401,334,39653,0,39586);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 Zl(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))ba();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];Jo(c[f>>2]|0,c[f>>2]|0,1);c[h>>2]=mq(c[f>>2]|0)|0;c[k>>2]=((gp(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0)!=0^1)&1;uq(c[h>>2]|0);Ho(c[f>>2]|0,c[f>>2]|0,1);i=d;return c[k>>2]|0}function _l(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))ba();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]=Mg(a,0,39330,e)|0;if((c[g>>2]|0)==0?($l(h)|0)==0:0)c[g>>2]=7;uq(c[h>>2]|0);uq(c[h+4>>2]|0);uq(c[h+8>>2]|0);uq(c[h+12>>2]|0);uq(c[h+16>>2]|0);uq(c[h+20>>2]|0);if(!(eg(1)|0)){k=c[g>>2]|0;i=b;return k|0}c[d>>2]=cu(c[g>>2]|0)|0;yf(39815,d);k=c[g>>2]|0;i=b;return k|0}function $l(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+8|0;e=b+4|0;f=b;c[d>>2]=a;c[f>>2]=Yp(c[(c[(c[d>>2]|0)+12>>2]|0)+4>>2]<<1)|0;rp(c[f>>2]|0,c[(c[d>>2]|0)+12>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[e>>2]=Zo(c[f>>2]|0,c[c[d>>2]>>2]|0)|0;eq(c[f>>2]|0);i=b;return ((c[e>>2]|0)!=0^1)&1|0}function am(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))ba();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;mk(p,0,bm(c[n>>2]|0)|0);c[o>>2]=ok(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(eg(1)|0)Cf(39837,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]=Mg(m,0,39327,k)|0;if(!(c[o>>2]|0)){if(eg(1)|0){Cf(39854,c[r>>2]|0);Cf(39871,c[r+4>>2]|0)}c[s>>2]=sq(0)|0;Wl(c[s>>2]|0,c[q>>2]|0,r);if(eg(1)|0)Cf(39888,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Dg(m,0,39925,g)|0;break}c[u>>2]=(((Oo(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=Gp(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]=Dg(m,0,39905,h)|0;Wf(c[t>>2]|0)}}}while(0);uq(c[s>>2]|0);uq(c[r>>2]|0);uq(c[r+4>>2]|0);uq(c[q>>2]|0);nk(p);if(!(eg(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=cu(c[o>>2]|0)|0;yf(39945,f);v=c[o>>2]|0;i=e;return v|0}function bm(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))ba();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]=sg(c[e>>2]|0,39341,1)|0;if(!(c[f>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}c[g>>2]=Ag(c[f>>2]|0,1,5)|0;qg(c[f>>2]|0);if(c[g>>2]|0)l=Oo(c[g>>2]|0)|0;else l=0;c[h>>2]=l;uq(c[g>>2]|0);c[d>>2]=c[h>>2];k=c[d>>2]|0;i=b;return k|0}function cm(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))ba();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;mk(r,1,bm(c[p>>2]|0)|0);c[q>>2]=kk(c[o>>2]|0,7708,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]=Mg(o,0,39337,m)|0,(c[q>>2]|0)==0):0){if(eg(1)|0)Cf(39967,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]=Mg(o,0,39984,l)|0;if(!(c[q>>2]|0)){if(eg(1)|0?(Cf(39994,c[u>>2]|0),Cf(40011,c[u+4>>2]|0),(vh()|0)==0):0){Cf(40028,c[u+8>>2]|0);Cf(40045,c[u+12>>2]|0);Cf(40062,c[u+16>>2]|0);Cf(40079,c[u+20>>2]|0)}No(c[t>>2]|0);_o(c[t>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=tq(c[r+4>>2]|0)|0;if(c[r+12>>2]&1|0)Xl(c[v>>2]|0,c[t>>2]|0,u);else{c[w>>2]=tq(c[r+4>>2]|0)|0;c[x>>2]=tq(c[r+4>>2]|0)|0;c[y>>2]=tq(c[r+4>>2]|0)|0;do{vq(c[w>>2]|0,c[r+4>>2]|0,0);np(c[w>>2]|0,c[w>>2]|0,c[u>>2]|0)}while((mp(c[x>>2]|0,c[w>>2]|0,c[u>>2]|0)|0)!=0^1);tp(c[y>>2]|0,c[w>>2]|0,c[u+4>>2]|0,c[u>>2]|0);sp(c[y>>2]|0,c[y>>2]|0,c[t>>2]|0,c[u>>2]|0);Xl(c[v>>2]|0,c[y>>2]|0,u);uq(c[y>>2]|0);c[y>>2]=0;sp(c[v>>2]|0,c[v>>2]|0,c[x>>2]|0,c[u>>2]|0);uq(c[w>>2]|0);c[w>>2]=0;uq(c[x>>2]|0);c[x>>2]=0}if(eg(1)|0)Cf(40096,c[v>>2]|0);switch(c[r+8>>2]|0){case 1:{c[q>>2]=Gl(z,A,c[r+4>>2]|0,c[v>>2]|0)|0;eq(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]=Dg(o,0,40113,k)|0;break a;break}case 3:{c[q>>2]=Nl(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;eq(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]=Dg(o,0,40113,h)|0;break a;break}default:{o=c[n>>2]|0;d=c[r+12>>2]&8|0?40124:49209;c[g>>2]=c[v>>2];c[q>>2]=Dg(o,0,d,g)|0;break a}}}}while(0);Wf(c[z>>2]|0);uq(c[v>>2]|0);uq(c[u>>2]|0);uq(c[u+4>>2]|0);uq(c[u+8>>2]|0);uq(c[u+12>>2]|0);uq(c[u+16>>2]|0);uq(c[u+20>>2]|0);uq(c[t>>2]|0);uq(c[w>>2]|0);uq(c[x>>2]|0);uq(c[y>>2]|0);qg(c[s>>2]|0);nk(r);if(!(eg(1)|0)){B=c[q>>2]|0;i=e;return B|0}c[f>>2]=cu(c[q>>2]|0)|0;yf(40127,f);B=c[q>>2]|0;i=e;return B|0}function dm(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))ba();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;mk(p,2,bm(c[n>>2]|0)|0);c[o>>2]=ok(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(eg(1)|0)Cf(40149,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]=Mg(m,0,39984,k)|0;if(!(c[o>>2]|0)){if(eg(1)|0?(Cf(40165,c[r>>2]|0),Cf(40181,c[r+4>>2]|0),(vh()|0)==0):0){Cf(40197,c[r+8>>2]|0);Cf(40213,c[r+12>>2]|0);Cf(40229,c[r+16>>2]|0);Cf(40245,c[r+20>>2]|0)}c[s>>2]=sq(0)|0;Xl(c[s>>2]|0,c[q>>2]|0,r);if(eg(1)|0)Cf(40261,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Dg(m,0,40297,g)|0;break}c[u>>2]=(((Oo(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=Gp(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]=Dg(m,0,40277,h)|0;Wf(c[t>>2]|0)}}}while(0);uq(c[s>>2]|0);uq(c[r>>2]|0);uq(c[r+4>>2]|0);uq(c[r+8>>2]|0);uq(c[r+12>>2]|0);uq(c[r+16>>2]|0);uq(c[r+20>>2]|0);uq(c[q>>2]|0);nk(p);if(!(eg(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=cu(c[o>>2]|0)|0;yf(40317,f);v=c[o>>2]|0;i=e;return v|0}function em(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))ba();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;mk(o,3,bm(c[m>>2]|0)|0);c[n>>2]=ok(c[l>>2]|0,r,o)|0;do if(!(c[n>>2]|0)){if(eg(1)|0)Cf(40338,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]=jk(c[k>>2]|0,7708,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]=Mg(l,0,39339,h)|0,(c[n>>2]|0)==0):0){if(eg(1)|0)Cf(40354,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]=Mg(l,0,39327,g)|0;if(!(c[n>>2]|0)){if(eg(1)|0){Cf(40370,c[s>>2]|0);Cf(40386,c[s+4>>2]|0)}c[t>>2]=sq(0)|0;Wl(c[t>>2]|0,c[q>>2]|0,s);if(eg(1)|0)Cf(40402,c[t>>2]|0);if(c[o+32>>2]|0){c[n>>2]=Mb[c[o+32>>2]&7](o,c[t>>2]|0)|0;break}else{l=(Zo(c[t>>2]|0,c[r>>2]|0)|0)!=0;c[n>>2]=l?8:0;break}}}}while(0);uq(c[t>>2]|0);uq(c[s>>2]|0);uq(c[s+4>>2]|0);uq(c[r>>2]|0);uq(c[q>>2]|0);qg(c[p>>2]|0);nk(o);if(!(eg(1)|0)){u=c[n>>2]|0;i=e;return u|0}if(c[n>>2]|0)v=cu(c[n>>2]|0)|0;else v=49767;c[f>>2]=v;yf(40418,f);u=c[n>>2]|0;i=e;return u|0}function fm(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))ba();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]=gm(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 gm(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))ba();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]=40439;c[h>>2]=Fg(k,0,40447,Hv(40447)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Fg(l,0,41477,Hv(41477)|0)|0;do if(!(c[h>>2]|0)){c[f>>2]=41794;c[h>>2]=zk(c[k>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=hm(c[h>>2]|0)|0;break}c[f>>2]=41810;c[g>>2]=im(c[l>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)==0?(c[f>>2]=42046,c[g>>2]=lm(c[l>>2]|0,c[k>>2]|0)|0,(c[g>>2]|0)==0):0){qg(c[l>>2]|0);qg(c[k>>2]|0);c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}}else c[g>>2]=hm(c[h>>2]|0)|0;while(0);qg(c[l>>2]|0);qg(c[k>>2]|0);if(c[e>>2]|0)Nb[c[e>>2]&1](49803,1,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;m=c[d>>2]|0;i=b;return m|0}function hm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=cu(c[d>>2]|0)|0;i=b;return a|0} -function yv(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=Lx(f|0,g|0,10,0)|0;h=e+-1|0;a[h>>0]=c|48;c=Kx(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 zv(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=_(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 Av(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))ba();h=g;do if((d|0)>(e|0)&(f&73728|0)==0){k=d-e|0;xx(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){vv(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;vv(h,r,a)|0}while(0);i=g;return}function Bv(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Cv(a,b,0)|0;return c|0}function Cv(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[(Vu()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function Dv(a,b){a=+a;b=b|0;return +(+Ev(a,b))}function Ev(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=Ex(d|0,e|0,52)|0;g=f&2047;switch(g|0){case 0:{if(a!=0.0){i=+Ev(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 Fv(a){a=a|0;return 0}function Gv(a){a=a|0;var b=0;b=(kv(a)|0)==0;return (b?a:a&95)|0}function Hv(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 Iv(a){a=a|0;return ((a|0)==223|(gv(a)|0)!=(a|0))&1|0}function Jv(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 Kv(a,b){a=a|0;b=b|0;var c=0;do switch(b|0){case 1:{c=Lv(a)|0;break}case 2:{c=iv(a)|0;break}case 3:{c=bv(a)|0;break}case 4:{c=Nv(a)|0;break}case 5:{c=Mv(a)|0;break}case 6:{c=Ov(a)|0;break}case 7:{c=Iv(a)|0;break}case 8:{c=Jv(a)|0;break}case 9:{c=Pv(a)|0;break}case 10:{c=mv(a)|0;break}case 11:{c=Qv(a)|0;break}case 12:{c=Rv(a)|0;break}default:c=0}while(0);return c|0}function Lv(a){a=a|0;var b=0;if(!(Mv(a)|0))b=(iv(a)|0)!=0;else b=1;return b&1|0}function Mv(a){a=a|0;return (a+-48|0)>>>0<10|0}function Nv(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 Ov(a){a=a|0;var b=0;if(!(mv(a)|0))b=(Jv(a)|0)!=0;else b=0;return b&1|0}function Pv(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[67028+((d[67028+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=0;return b|0}function Qv(a){a=a|0;return (jv(a)|0)!=(a|0)|0}function Rv(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 Sv(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=ev(i)|0,(l|0)!=(ev(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=ev(f&255)|0;return n-(ev(d[g>>0]|0)|0)|0}function Tv(a,b){a=a|0;b=b|0;Uv(a,b)|0;return a|0}function Uv(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 Vv(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Xv(a,b,c,-1,0)|0;return d|0}function Xv(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))ba();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;Yv(h,0);m=Zv(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 Yv(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 Zv(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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,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[(Vu()|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=_v(b)|0}while((Vv(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=_v(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=_v(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=_v(b)|0;if((d[70197+y>>0]|0)>15){p=(c[l>>2]|0)==0;if(!p)c[k>>2]=(c[k>>2]|0)+-1;if(!f){Yv(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[70197+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;Yv(b,0);c[(Vu()|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=_v(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=Jx(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=yx(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=_v(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){R=O;S=N;T=r}else{U=10;V=N;W=O;X=P;v=72}}else{R=G;S=F;T=r}}else{t=w;u=x;v=46}c:do if((v|0)==46){if(!(t+-1&t)){m=a[70453+((t*23|0)>>>5&7)>>0]|0;A=a[70197+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;Y=d[L>>0]|0}else Y=_v(b)|0;L=a[70197+Y>>0]|0;p=L&255;if(!(K>>>0<134217728&p>>>0<t>>>0)){Z=K;$=L;aa=Y;break}else z=K}ba=$;ca=0;da=Z;ea=aa}else{ba=A;ca=0;da=0;ea=u}z=Ex(-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)){U=t;V=da;W=ca;X=ea;v=72;break}else{fa=da;ga=ca;ha=ba}while(1){K=Fx(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=_v(b)|0;ha=a[70197+ia>>0]|0;if((ha&255)>>>0>=t>>>0|(L>>>0>p>>>0|(L|0)==(p|0)&J>>>0>z>>>0)){U=t;V=J;W=L;X=ia;v=72;break c}else{fa=J;ga=L}}}z=a[70197+u>>0]|0;p=z&255;if(p>>>0<t>>>0){m=p;p=0;while(1){A=m+(_(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=_v(b)|0;L=a[70197+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=Kx(-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){U=t;V=L;W=A;X=K;v=72;break c}I=Jx(L|0,A|0,t|0,0)|0;ra=C;sa=J&255;if(ra>>>0>4294967295|(ra|0)==-1&I>>>0>~sa>>>0){U=t;V=L;W=A;X=K;v=72;break c}ta=yx(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=_v(b)|0;J=a[70197+ua>>0]|0;if((J&255)>>>0>=t>>>0){U=t;V=ta;W=ra;X=ua;v=72;break}else{A=ra;L=ta;K=ua}}}else{U=t;V=oa;W=pa;X=qa;v=72}}while(0);if((v|0)==72)if((d[70197+X>>0]|0)>>>0<U>>>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=_v(b)|0}while((d[70197+va>>0]|0)>>>0<U>>>0);c[(Vu()|0)>>2]=34;R=h;S=g;T=(g&1|0)==0&0==0?r:0}else{R=W;S=V;T=r}if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;if(!(R>>>0<h>>>0|(R|0)==(h|0)&S>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(T|0)!=0)){c[(Vu()|0)>>2]=34;K=yx(g|0,h|0,-1,-1)|0;i=C;j=K;break}if(R>>>0>h>>>0|(R|0)==(h|0)&S>>>0>g>>>0){c[(Vu()|0)>>2]=34;i=h;j=g;break}}K=((T|0)<0)<<31>>31;L=wx(S^T|0,R^K|0,T|0,K|0)|0;i=C;j=L}while(0);C=i;return j|0}function _v(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=$v(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 $v(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();e=b;if((c[a+8>>2]|0)==0?(aw(a)|0)!=0:0)f=-1;else if((Db[c[a+32>>2]&63](a,e,1)|0)==1)f=d[e>>0]|0;else f=-1;i=b;return f|0}function aw(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)Db[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 bw(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))ba();f=e;c[f>>2]=d;d=cw(a,b,f)|0;i=e;return d|0}function cw(a,b,c){a=a|0;b=b|0;c=c|0;return rv(a,2147483647,b,c)|0}function dw(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))ba();f=e;c[f>>2]=d;d=tv(a,b,f)|0;i=e;return d|0}function ew(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=Fv(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)Zu(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=zv(m,10,o)|0;q=(p|0)==0;r=q?o:1-n+p|0;p=r>>>0<k>>>0;n=p?r:k;Ax(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=$v(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{Zu(f);j=w}}return j|0}function fw(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 gw(a){a=a|0;return Cx(a|0)|0}function hw(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))ba();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=Uu(Aa(221,r|0)|0)|0;break}case 9:{c[q>>2]=a;c[q+4>>2]=16;c[q+8>>2]=t;u=Aa(221,q|0)|0;switch(u|0){case -22:{c[p>>2]=a;c[p+4>>2]=9;c[p+8>>2]=d;w=Aa(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=Uu(u)|0}v=w;break}case 1030:{c[o>>2]=a;c[o+4>>2]=1030;c[o+8>>2]=d;u=Aa(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;Aa(221,n|0)|0}v=Uu(u)|0;break a}c[m>>2]=a;c[m+4>>2]=1030;c[m+8>>2]=0;u=Aa(221,m|0)|0;if((u|0)==-22){c[k>>2]=a;c[k+4>>2]=0;c[k+8>>2]=d;s=Aa(221,k|0)|0;if((s|0)>-1){c[h>>2]=s;c[h+4>>2]=2;c[h+8>>2]=1;Aa(221,h|0)|0}v=Uu(s)|0;break a}else{if((u|0)>-1){c[l>>2]=u;pb(6,l|0)|0}v=Uu(-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=Uu(Aa(221,g|0)|0)|0;break a}else{c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;v=Uu(Aa(221,f|0)|0)|0;break a}}while(0);i=e;return v|0}function iw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=pb(6,d|0)|0;d=Uu((a|0)==-4?-115:a)|0;i=b;return d|0}function jw(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 kw(a){a=a|0;return Cx(a|0)|0}function lw(a,b,c){a=a|0;b=b|0;c=c|0;mw(a,b,c)|0;return a|0}function mw(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);xx(w|0,0,x|0)|0;return w|0}function nw(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))ba();f=e+16|0;g=e;if(zv(70462,a[d>>0]|0,4)|0){h=ow(d)|0|32768;c[g>>2]=b;c[g+4>>2]=h;c[g+8>>2]=438;h=Uu(qb(5,g|0)|0)|0;if((h|0)>=0){g=rw(h,d)|0;if(!g){c[f>>2]=h;pb(6,f|0)|0;k=0}else k=g}else k=0}else{c[(Vu()|0)>>2]=22;k=0}i=e;return k|0}function ow(b){b=b|0;var c=0,d=0,e=0,f=0;c=(pw(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(pw(b,120)|0)==0;f=c?e:e|128;e=(pw(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 pw(b,c){b=b|0;c=c|0;var d=0;d=qw(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function qw(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+(Hv(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=_(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 rw(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))ba();f=e+40|0;g=e+24|0;h=e+16|0;k=e;l=e+52|0;m=a[d>>0]|0;if(zv(70462,m<<24>>24,4)|0){n=px(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(!(pw(d,43)|0))c[n>>2]=m<<24>>24==114?8:4;if(!(pw(d,101)|0))r=m;else{c[k>>2]=b;c[k+4>>2]=2;c[k+8>>2]=1;Aa(221,k|0)|0;r=a[d>>0]|0}if(r<<24>>24==97){c[h>>2]=b;c[h+4>>2]=3;r=Aa(221,h|0)|0;if(!(r&1024)){c[g>>2]=b;c[g+4>>2]=4;c[g+8>>2]=r|1024;Aa(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,(ib(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[17769]|0))c[n+76>>2]=-1;ob(71100);g=c[17774]|0;c[n+56>>2]=g;if(g|0)c[g+52>>2]=n;c[17774]=n;jb(71100);o=n}}else{c[(Vu()|0)>>2]=22;o=0}i=e;return o|0}function sw(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a>>2]&1|0)!=0;if(!b){ob(71100);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[17774]|0)==(a|0))c[17774]=f;jb(71100)}f=tw(a)|0;d=Hb[c[a+12>>2]&15](a)|0|f;f=c[a+92>>2]|0;if(f|0)qx(f);if(!b)qx(a);return d|0}function tw(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=uw(a)|0;break}d=(Fv(a)|0)==0;e=uw(a)|0;if(d)b=e;else{Zu(a);b=e}}else{if(!(c[3961]|0))f=0;else f=tw(c[3961]|0)|0;ob(71100);e=c[17774]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=Fv(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=uw(d)|0|e;else i=e;if(h|0)Zu(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}jb(71100);b=g}while(0);return b|0}function uw(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?(Db[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)Db[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 vw(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+16|0;if((i|0)>=(j|0))ba();g=f;h=e&255;a[g>>0]=h;k=b+16|0;l=c[k>>2]|0;if(!l)if(!(wv(b)|0)){m=c[k>>2]|0;n=4}else o=-1;else{m=l;n=4}do if((n|0)==4){l=b+20|0;k=c[l>>2]|0;if(k>>>0<m>>>0?(p=e&255,(p|0)!=(a[b+75>>0]|0)):0){c[l>>2]=k+1;a[k>>0]=h;o=p;break}if((Db[c[b+36>>2]&63](b,g,1)|0)==1)o=d[g>>0]|0;else o=-1}while(0);i=f;return o|0}function ww(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))ba();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[15964+(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[(Vu()|0)>>2]=84;k=-1}while(0);i=g;return k|0}function xw(a,b){a=a|0;b=b|0;return (yw(a,Hv(a)|0,1,b)|0)+-1|0}function yw(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=_(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Fv(e)|0)==0;h=vv(a,f,e)|0;if(g)i=h;else{Zu(e);i=h}}else i=vv(a,f,e)|0;if((i|0)==(f|0))j=d;else j=(i>>>0)/(b>>>0)|0;return j|0}function zw(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[3932]|0;if((c[d+76>>2]|0)>-1)e=Fv(d)|0;else e=0;do if((xw(b,d)|0)<0)f=1;else{if((a[d+75>>0]|0)!=10?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=10;f=0;break}f=(vw(d,10)|0)<0}while(0);if(e|0)Zu(d);return f<<31>>31|0}function Aw(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=Ha(20,a|0)|0;i=a;return b|0}function Bw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=a;c[e+4>>2]=b;b=Uu(hb(33,e|0)|0)|0;i=d;return b|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=b;b=tv(c[3932]|0,a,e)|0;i=d;return b|0}function Dw(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(Fv(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 Ew(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=b;e=70466;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 Fw(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))ba();e=d+40|0;f=d+8|0;g=d;c[g>>2]=a;c[g+4>>2]=b;h=Sa(197,g|0)|0;if((h|0)==-9?(c[f>>2]=a,c[f+4>>2]=1,(Aa(221,f|0)|0)>=0):0){Ew(f,a);c[e>>2]=f;c[e+4>>2]=b;k=Uu(Ta(195,e|0)|0)|0}else k=Uu(h)|0;i=d;return k|0}function Gw(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))ba();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=Uu(zb(142,h|0)|0)|0;i=g;return f|0}function Hw(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))ba();f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=Uu(rb(4,f|0)|0)|0;i=e;return d|0}function Iw(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))ba();f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=Uu(mb(3,f|0)|0)|0;i=e;return d|0}function Jw(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))ba();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=Uu(qb(5,f|0)|0)|0;i=e;return h|0}function Kw(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Uu(lb(10,d|0)|0)|0;i=b;return a|0}function Lw(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))ba();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:{}}Qw(8,g);g=c[d>>2]|0;if(!g)h=0;else{c[(Vu()|0)>>2]=g;h=-1}i=f;return h|0}function Mw(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))ba();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)!=(Nw()|0):0){c[d>>2]=c[180];c[d+4>>2]=c[181];c[d+8>>2]=c[182];c[d+12>>2]=c[183];Ow(6,e)|0;g=Pw(6,d)|0;c[f>>2]=0-g;if(!((g|0)!=0?(c[17772]|0)!=0:0)){c[f>>2]=1;Pw(6,e)|0}break}c[f>>2]=1}while(0);i=b;return}function Nw(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=Va(199,a|0)|0;i=a;return b|0}function Ow(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))ba();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=Uu(nb(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[(Vu()|0)>>2]|0)==38){c[e>>2]=a;c[e+4>>2]=g;if((Uu(Ra(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 Pw(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))ba();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=nb(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=ab(75,e|0)|0}else m=h;i=d;return m|0}function Qw(a,b){a=a|0;b=b|0;Fb[a&15](b);return}function Rw(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=vb(201,a|0)|0;i=a;return b|0}function Sw(a){a=a|0;return Lw(213,a,0,0)|0}function Tw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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=Uu(Ua(194,e|0)|0)|0;i=d;return b|0}function Uw(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))ba();b=Ca(64,a|0)|0;i=a;return b|0}function Vw(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))ba();e=d;do{c[e>>2]=a;c[e+4>>2]=b;f=Da(63,e|0)|0}while((f|0)==-16);g=f;e=Uu(g)|0;i=d;return e|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,k=0,l=0,m=0,n=0;h=i;i=i+32|0;if((i|0)>=(j|0))ba();k=h;do if((g&4095|0)==0&(((g|0)<0)<<31>>31&-4096|0)==0){if(b>>>0>2147483646){c[(Vu()|0)>>2]=12;l=-1;break}m=(e&16|0)!=0;if(m)Xw(-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=Uu(Qa(192,k|0)|0)|0;if(m){Yw();l=n}else l=n}else{c[(Vu()|0)>>2]=22;l=-1}while(0);i=h;return l|0}function Xw(a){a=a|0;return}function Yw(){return}function Zw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;Xw(-1);c[e>>2]=a;c[e+4>>2]=b;b=Uu($a(91,e|0)|0)|0;Yw();i=d;return b|0}function _w(a){a=a|0;var b=0;b=70520;c[b>>2]=a+-1;c[b+4>>2]=0;return}function $w(){var a=0,b=0,d=0;a=70520;b=Jx(c[a>>2]|0,c[a+4>>2]|0,1284865837,1481765933)|0;a=yx(b|0,C|0,1,0)|0;b=C;d=70520;c[d>>2]=a;c[d+4>>2]=b;d=Ex(a|0,b|0,33)|0;return d|0}function ax(a){a=a|0;ob(71120);bx(a);jb(71120);return}function bx(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[4092]|0;if(!b)c[c[4093]>>2]=a;else{c[4126]=(b|0)==31|(b|0)==7?3:1;c[17782]=0;if((b|0)>0){d=c[4093]|0;e=0;f=a;a=0;do{g=Jx(f|0,e|0,1284865837,1481765933)|0;f=yx(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[4093]|0;c[h>>2]=c[h>>2]|1}return}function cx(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;ob(71120);a=c[4092]|0;if(!a){b=c[4093]|0;d=(_(c[b>>2]|0,1103515245)|0)+12345&2147483647;c[b>>2]=d;e=d}else{d=c[17782]|0;b=c[4093]|0;f=c[4126]|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[4126]=(g|0)==(a|0)?0:g;g=d+1|0;c[17782]=(g|0)==(a|0)?0:g;e=h>>>1}jb(71120);return e|0}function dx(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(!(Vv(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 ex(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;if((i|0)>=(j|0))ba();e=d;c[e>>2]=a;c[e+4>>2]=b;b=Uu(eb(77,e|0)|0)|0;i=d;return b|0}function fx(a,b){a=a|0;b=b|0;return gx(a,b,(Hv(a)|0)+1|0)|0}function gx(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 hx(a){a=a|0;return (a+-48|0)>>>0<10|0}function ix(a,b){a=a|0;b=b|0;var d=0;if(!a)d=rx(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 jx(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0){d=b;do{qx(c[d>>2]|0);b=d;d=c[d+4>>2]|0;qx(b)}while((d|0)!=0)}qx(a);return}function kx(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=px(8)|0;if(!k){c[g>>2]=1;j=0;break a}q=px(p)|0;c[k>>2]=q;r=q;if(!q){qx(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{xx(n|0,0,q|0)|0;j=n}}else j=0;while(0);return j|0}function lx(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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=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))ba();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=px(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+(_(t,u)|0)<<1)|0;y=px(x)|0;if(!y){z=12;A=0}else{xx(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=ww(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;R=0;S=D;T=C;U=C;V=b+I|0;W=y;while(1){if((N|0)<0){X=c[u>>2]|0;Y=X+8|0;b:do if(!(c[Y>>2]|0)){Z=N;$=O;aa=U}else{ca=(P|0)!=0;da=(R|0)==95;ea=(P|0)==0;fa=F&(R|0)==10;ga=L&(P|0)<1;ha=Y;ia=N;ja=O;ka=U;la=X;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(Lv(R)|0)break d;ya=c[h>>2]|0;if((ya|0)==95)break;if(!(Lv(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=(Lv(R)|0)==0;Ba=c[h>>2]|0;if(ya|(Ba|0)==95)break;else Aa=Ba}if(Lv(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=(Lv(R)|0)!=0;Ca=c[h>>2]|0;Da=ya}if((Ca|0)==95)if(Da)break d;else break;else if(Da^(Lv(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=(Lv(R)|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^(Lv(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)){Z=ia;$=ja;aa=ka;break b}else na=na+32|0}if((q|0)==236){q=0;c[ka>>2]=c[va>>2];if(E)xx(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)){Z=pa;$=qa;aa=ra;break}else{ia=pa;ja=qa;ka=ra;la=sa+32|0}}}while(0);c[aa>>2]=0;X=c[h>>2]|0;if(!X){Ja=Z;break}else{Ka=X;La=Z;Ma=$}}else{if(K){Ja=N;break}X=c[h>>2]|0;if((U|0)!=(T|0)&(X|0)!=0){Ka=X;La=N;Ma=O}else{Ja=N;break}}X=P+Q|0;Y=ww(h,V,4)|0;if((Y|0)<1)if((Y|0)<0){G=0;H=1;break a}else Na=1;else Na=Y;Y=V+Na|0;if((Ma|0)!=0&(c[v>>2]|0)!=0){if(!(c[T>>2]|0))Oa=S;else{la=c[J>>2]|0;ka=c[la>>2]|0;ja=(ka|0)>-1;ia=T;ha=S;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=S;Va=T}else{Ta=Ma;Ua=T;Va=S}ha=c[Ua>>2]|0;if(!ha){Wa=La;Xa=Ta;Ya=Va;Za=W}else{ia=(X|0)!=0;ka=(Ka|0)==95;la=(X|0)==0;ja=F&(Ka|0)==10;ca=L&(X|0)<1;da=ha;ha=La;ga=Ta;ea=Ua;na=Va;fa=W;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(Lv(Ka)|0){db=ma;eb=Ba;fb=ya;gb=oa;break f}jb=c[h>>2]|0;if((jb|0)==95)break;if(!(Lv(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=(Lv(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(Lv(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=(Lv(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^(Lv(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=(Lv(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^(Lv(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(!(Kv(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=jv(Ka)|0;jb=cb+24|0;if(Kv(mb,c[jb>>2]|0)|0)break;mb=gv(Ka)|0;if(!(Kv(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(ox(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]=X;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)>=(X|0)){jb=c[B+(ib<<3)+4>>2]|0;mb=c[jb>>2]|0;if(!(mx(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=X;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=X;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]=X;c[B+(ib<<3)+4>>2]=jb;do if((mb|0)==(c[x>>2]|0)){if((ma|0)==-1){if(!E){wb=X;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=X;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=X;Q=Na;R=Ka;S=Ua;T=Va;U=Ya;V=Y;W=Za}G=Ja;H=Ja>>>31}while(0);qx(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=ix(0,0)|0;g:do if(G){H=kx(G,0,0,0,32)|0;if(!H){jx(G);Cb=12;Db=0;break}c[H+24>>2]=0;c[H+28>>2]=0;y=c[d>>2]|0;if(y){Ja=px(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=px(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=px(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)xx(Lb|0,0,((xb|0)>1?xb:1)<<2|0)|0;xb=c[h>>2]|0;wb=fb+eb|0;s=ww(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(Lv(xb)|0){Ob=sb;Pb=kb;Qb=lb;break j}La=c[h>>2]|0;if((La|0)==95)break;if(!(Lv(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=(Lv(xb)|0)==0;La=c[h>>2]|0;if(vb|(La|0)==95){Ob=sb;Pb=kb;Qb=lb;break}else Sb=La}if(Lv(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=(Lv(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^(Lv(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=(Lv(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^(Lv(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=kx(G,0,0,0,32)|0;if(!La){q=56;break i}c[La+24>>2]=kb;c[La+28>>2]=0;vb=kx(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(!(mx(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;nx(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(fw(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=ww(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=ww(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(Lv(Ac)|0){Dc=pb;Ec=tb;Fc=nb;break n}ub=c[h>>2]|0;if((ub|0)==95)break;if(!(Lv(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=(Lv(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(Lv(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=(Lv(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^(Lv(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=(Lv(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^(Lv(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(!(Kv(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=jv(Ac)|0;ub=qb+24|0;if(Kv(La,c[ub>>2]|0)|0)break;La=gv(Ac)|0;if(!(Kv(La,c[ub>>2]|0)|0)){Dc=pb;Ec=tb;Fc=nb;break n}}while(0);if(!(c[vb>>2]&8))break;if(ox(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=kx(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=kx(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;jx(G);if(!Xa)qx(Jb);if(!Wa)qx(Kb);if(bb){pc=1;qc=hc;rc=Nc;sc=yc;tc=zc;uc=Oc;vc=mc;wc=Bc;break}qx(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;jx(G);if(!Xa)qx(Jb);if(!Wa)qx(Kb);if(bb){pc=1;qc=hc;rc=Pc;sc=yc;tc=zc;uc=Qc;vc=mc;wc=Bc;break}qx(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){jx(G);if(!Xa)qx(Jb);if(!Wa)qx(Kb);if(bb){Cb=12;Db=0;break g}qx(Lb);Cb=12;Db=0;break g}else if((q|0)==63){jx(G);if(!Xa)qx(Jb);if(!Wa)qx(Kb);if(bb){Cb=12;Db=0;break g}qx(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);jx(G);if(Ib|0)qx(Ib);if(Fb|0)qx(Fb);if(!Hb){Cb=Gb;Db=Eb}else{qx(Hb);Cb=Gb;Db=Eb}}else{Cb=12;Db=0}while(0);Ab=Db;Bb=Cb}if(!Bb)nx(l,e,c[a>>2]|0,k,p,Ab);if(!p)o=Bb;else{qx(p);o=Bb}}i=g;return o|0}function mx(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 nx(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 ox(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;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(Kv(b,i)|0){f=1;break a}}else{j=gv(b)|0;if(Kv(j,c[h>>2]|0)|0){f=1;break a}j=jv(b)|0;if(Kv(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 px(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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0;do if(a>>>0<245){b=a>>>0<11?16:a+11&-8;d=b>>>3;e=c[17783]|0;f=e>>>d;if(f&3|0){g=(f&1^1)+d|0;h=71172+(g<<1<<2)|0;i=h+8|0;j=c[i>>2]|0;k=j+8|0;l=c[k>>2]|0;do if((h|0)!=(l|0)){if(l>>>0<(c[17787]|0)>>>0)Ea();m=l+12|0;if((c[m>>2]|0)==(j|0)){c[m>>2]=h;c[i>>2]=l;break}else Ea()}else c[17783]=e&~(1<<g);while(0);l=g<<3;c[j+4>>2]=l|3;i=j+l+4|0;c[i>>2]=c[i>>2]|1;n=k;return n|0}i=c[17785]|0;if(b>>>0>i>>>0){if(f|0){l=2<<d;h=f<<d&(l|0-l);l=(h&0-h)+-1|0;h=l>>>12&16;m=l>>>h;l=m>>>5&8;o=m>>>l;m=o>>>2&4;p=o>>>m;o=p>>>1&2;q=p>>>o;p=q>>>1&1;r=(l|h|m|o|p)+(q>>>p)|0;p=71172+(r<<1<<2)|0;q=p+8|0;o=c[q>>2]|0;m=o+8|0;h=c[m>>2]|0;do if((p|0)!=(h|0)){if(h>>>0<(c[17787]|0)>>>0)Ea();l=h+12|0;if((c[l>>2]|0)==(o|0)){c[l>>2]=p;c[q>>2]=h;s=c[17785]|0;break}else Ea()}else{c[17783]=e&~(1<<r);s=i}while(0);i=(r<<3)-b|0;c[o+4>>2]=b|3;e=o+b|0;c[e+4>>2]=i|1;c[e+i>>2]=i;if(s|0){h=c[17788]|0;q=s>>>3;p=71172+(q<<1<<2)|0;d=c[17783]|0;f=1<<q;if(d&f){q=p+8|0;k=c[q>>2]|0;if(k>>>0<(c[17787]|0)>>>0)Ea();else{t=q;u=k}}else{c[17783]=d|f;t=p+8|0;u=p}c[t>>2]=h;c[u+12>>2]=h;c[h+8>>2]=u;c[h+12>>2]=p}c[17785]=i;c[17788]=e;n=m;return n|0}e=c[17784]|0;if(e){i=(e&0-e)+-1|0;e=i>>>12&16;p=i>>>e;i=p>>>5&8;h=p>>>i;p=h>>>2&4;f=h>>>p;h=f>>>1&2;d=f>>>h;f=d>>>1&1;k=c[71436+((i|e|p|h|f)+(d>>>f)<<2)>>2]|0;f=(c[k+4>>2]&-8)-b|0;d=k;h=k;while(1){k=c[d+16>>2]|0;if(!k){p=c[d+20>>2]|0;if(!p){v=f;w=h;break}else x=p}else x=k;k=(c[x+4>>2]&-8)-b|0;p=k>>>0<f>>>0;f=p?k:f;d=x;h=p?x:h}h=c[17787]|0;if(w>>>0<h>>>0)Ea();d=w+b|0;if(w>>>0>=d>>>0)Ea();f=c[w+24>>2]|0;m=c[w+12>>2]|0;do if((m|0)==(w|0)){o=w+20|0;r=c[o>>2]|0;if(!r){p=w+16|0;k=c[p>>2]|0;if(!k){y=0;break}else{z=k;A=p}}else{z=r;A=o}while(1){o=z+20|0;r=c[o>>2]|0;if(r|0){z=r;A=o;continue}o=z+16|0;r=c[o>>2]|0;if(!r){B=z;C=A;break}else{z=r;A=o}}if(C>>>0<h>>>0)Ea();else{c[C>>2]=0;y=B;break}}else{o=c[w+8>>2]|0;if(o>>>0<h>>>0)Ea();r=o+12|0;if((c[r>>2]|0)!=(w|0))Ea();p=m+8|0;if((c[p>>2]|0)==(w|0)){c[r>>2]=m;c[p>>2]=o;y=m;break}else Ea()}while(0);do if(f|0){m=c[w+28>>2]|0;h=71436+(m<<2)|0;if((w|0)==(c[h>>2]|0)){c[h>>2]=y;if(!y){c[17784]=c[17784]&~(1<<m);break}}else{if(f>>>0<(c[17787]|0)>>>0)Ea();m=f+16|0;if((c[m>>2]|0)==(w|0))c[m>>2]=y;else c[f+20>>2]=y;if(!y)break}m=c[17787]|0;if(y>>>0<m>>>0)Ea();c[y+24>>2]=f;h=c[w+16>>2]|0;do if(h|0)if(h>>>0<m>>>0)Ea();else{c[y+16>>2]=h;c[h+24>>2]=y;break}while(0);h=c[w+20>>2]|0;if(h|0)if(h>>>0<(c[17787]|0)>>>0)Ea();else{c[y+20>>2]=h;c[h+24>>2]=y;break}}while(0);if(v>>>0<16){f=v+b|0;c[w+4>>2]=f|3;h=w+f+4|0;c[h>>2]=c[h>>2]|1}else{c[w+4>>2]=b|3;c[d+4>>2]=v|1;c[d+v>>2]=v;h=c[17785]|0;if(h|0){f=c[17788]|0;m=h>>>3;h=71172+(m<<1<<2)|0;o=c[17783]|0;p=1<<m;if(o&p){m=h+8|0;r=c[m>>2]|0;if(r>>>0<(c[17787]|0)>>>0)Ea();else{D=m;E=r}}else{c[17783]=o|p;D=h+8|0;E=h}c[D>>2]=f;c[E+12>>2]=f;c[f+8>>2]=E;c[f+12>>2]=h}c[17785]=v;c[17788]=d}n=w+8|0;return n|0}else F=b}else F=b}else if(a>>>0<=4294967231){h=a+11|0;f=h&-8;p=c[17784]|0;if(p){o=0-f|0;r=h>>>8;if(r)if(f>>>0>16777215)G=31;else{h=(r+1048320|0)>>>16&8;m=r<<h;r=(m+520192|0)>>>16&4;k=m<<r;m=(k+245760|0)>>>16&2;e=14-(r|h|m)+(k<<m>>>15)|0;G=f>>>(e+7|0)&1|e<<1}else G=0;e=c[71436+(G<<2)>>2]|0;a:do if(!e){H=o;I=0;J=0;K=86}else{m=o;k=0;h=f<<((G|0)==31?0:25-(G>>>1)|0);r=e;i=0;while(1){q=c[r+4>>2]&-8;j=q-f|0;if(j>>>0<m>>>0)if((q|0)==(f|0)){L=j;M=r;N=r;K=90;break a}else{O=j;P=r}else{O=m;P=i}j=c[r+20>>2]|0;r=c[r+16+(h>>>31<<2)>>2]|0;q=(j|0)==0|(j|0)==(r|0)?k:j;j=(r|0)==0;if(j){H=O;I=q;J=P;K=86;break}else{m=O;k=q;h=h<<(j&1^1);i=P}}}while(0);if((K|0)==86){if((I|0)==0&(J|0)==0){e=2<<G;o=p&(e|0-e);if(!o){F=f;break}e=(o&0-o)+-1|0;o=e>>>12&16;b=e>>>o;e=b>>>5&8;d=b>>>e;b=d>>>2&4;i=d>>>b;d=i>>>1&2;h=i>>>d;i=h>>>1&1;Q=c[71436+((e|o|b|d|i)+(h>>>i)<<2)>>2]|0}else Q=I;if(!Q){R=H;S=J}else{L=H;M=Q;N=J;K=90}}if((K|0)==90)while(1){K=0;i=(c[M+4>>2]&-8)-f|0;h=i>>>0<L>>>0;d=h?i:L;i=h?M:N;h=c[M+16>>2]|0;if(h|0){L=d;M=h;N=i;K=90;continue}M=c[M+20>>2]|0;if(!M){R=d;S=i;break}else{L=d;N=i;K=90}}if((S|0)!=0?R>>>0<((c[17785]|0)-f|0)>>>0:0){p=c[17787]|0;if(S>>>0<p>>>0)Ea();i=S+f|0;if(S>>>0>=i>>>0)Ea();d=c[S+24>>2]|0;h=c[S+12>>2]|0;do if((h|0)==(S|0)){b=S+20|0;o=c[b>>2]|0;if(!o){e=S+16|0;k=c[e>>2]|0;if(!k){T=0;break}else{U=k;V=e}}else{U=o;V=b}while(1){b=U+20|0;o=c[b>>2]|0;if(o|0){U=o;V=b;continue}b=U+16|0;o=c[b>>2]|0;if(!o){W=U;X=V;break}else{U=o;V=b}}if(X>>>0<p>>>0)Ea();else{c[X>>2]=0;T=W;break}}else{b=c[S+8>>2]|0;if(b>>>0<p>>>0)Ea();o=b+12|0;if((c[o>>2]|0)!=(S|0))Ea();e=h+8|0;if((c[e>>2]|0)==(S|0)){c[o>>2]=h;c[e>>2]=b;T=h;break}else Ea()}while(0);do if(d|0){h=c[S+28>>2]|0;p=71436+(h<<2)|0;if((S|0)==(c[p>>2]|0)){c[p>>2]=T;if(!T){c[17784]=c[17784]&~(1<<h);break}}else{if(d>>>0<(c[17787]|0)>>>0)Ea();h=d+16|0;if((c[h>>2]|0)==(S|0))c[h>>2]=T;else c[d+20>>2]=T;if(!T)break}h=c[17787]|0;if(T>>>0<h>>>0)Ea();c[T+24>>2]=d;p=c[S+16>>2]|0;do if(p|0)if(p>>>0<h>>>0)Ea();else{c[T+16>>2]=p;c[p+24>>2]=T;break}while(0);p=c[S+20>>2]|0;if(p|0)if(p>>>0<(c[17787]|0)>>>0)Ea();else{c[T+20>>2]=p;c[p+24>>2]=T;break}}while(0);do if(R>>>0>=16){c[S+4>>2]=f|3;c[i+4>>2]=R|1;c[i+R>>2]=R;d=R>>>3;if(R>>>0<256){p=71172+(d<<1<<2)|0;h=c[17783]|0;b=1<<d;if(h&b){d=p+8|0;e=c[d>>2]|0;if(e>>>0<(c[17787]|0)>>>0)Ea();else{Y=d;Z=e}}else{c[17783]=h|b;Y=p+8|0;Z=p}c[Y>>2]=i;c[Z+12>>2]=i;c[i+8>>2]=Z;c[i+12>>2]=p;break}p=R>>>8;if(p)if(R>>>0>16777215)_=31;else{b=(p+1048320|0)>>>16&8;h=p<<b;p=(h+520192|0)>>>16&4;e=h<<p;h=(e+245760|0)>>>16&2;d=14-(p|b|h)+(e<<h>>>15)|0;_=R>>>(d+7|0)&1|d<<1}else _=0;d=71436+(_<<2)|0;c[i+28>>2]=_;h=i+16|0;c[h+4>>2]=0;c[h>>2]=0;h=c[17784]|0;e=1<<_;if(!(h&e)){c[17784]=h|e;c[d>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}e=R<<((_|0)==31?0:25-(_>>>1)|0);h=c[d>>2]|0;while(1){if((c[h+4>>2]&-8|0)==(R|0)){$=h;K=148;break}d=h+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b){aa=d;ba=h;K=145;break}else{e=e<<1;h=b}}if((K|0)==145)if(aa>>>0<(c[17787]|0)>>>0)Ea();else{c[aa>>2]=i;c[i+24>>2]=ba;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((K|0)==148){h=$+8|0;e=c[h>>2]|0;b=c[17787]|0;if(e>>>0>=b>>>0&$>>>0>=b>>>0){c[e+12>>2]=i;c[h>>2]=i;c[i+8>>2]=e;c[i+12>>2]=$;c[i+24>>2]=0;break}else Ea()}}else{e=R+f|0;c[S+4>>2]=e|3;h=S+e+4|0;c[h>>2]=c[h>>2]|1}while(0);n=S+8|0;return n|0}else F=f}else F=f}else F=-1;while(0);S=c[17785]|0;if(S>>>0>=F>>>0){R=S-F|0;$=c[17788]|0;if(R>>>0>15){ba=$+F|0;c[17788]=ba;c[17785]=R;c[ba+4>>2]=R|1;c[ba+R>>2]=R;c[$+4>>2]=F|3}else{c[17785]=0;c[17788]=0;c[$+4>>2]=S|3;R=$+S+4|0;c[R>>2]=c[R>>2]|1}n=$+8|0;return n|0}$=c[17786]|0;if($>>>0>F>>>0){R=$-F|0;c[17786]=R;$=c[17789]|0;S=$+F|0;c[17789]=S;c[S+4>>2]=R|1;c[$+4>>2]=F|3;n=$+8|0;return n|0}do if(!(c[17901]|0)){$=Wa(30)|0;if(!($+-1&$)){c[17903]=$;c[17902]=$;c[17904]=-1;c[17905]=-1;c[17906]=0;c[17894]=0;c[17901]=(sb(0)|0)&-16^1431655768;break}else Ea()}while(0);$=F+48|0;R=c[17903]|0;S=F+47|0;ba=R+S|0;aa=0-R|0;R=ba&aa;if(R>>>0<=F>>>0){n=0;return n|0}_=c[17893]|0;if(_|0?(Z=c[17891]|0,Y=Z+R|0,Y>>>0<=Z>>>0|Y>>>0>_>>>0):0){n=0;return n|0}b:do if(!(c[17894]&4)){_=c[17789]|0;c:do if(_){Y=71580;while(1){Z=c[Y>>2]|0;if(Z>>>0<=_>>>0?(T=Y+4|0,(Z+(c[T>>2]|0)|0)>>>0>_>>>0):0){ca=Y;da=T;break}Y=c[Y+8>>2]|0;if(!Y){K=173;break c}}Y=ba-(c[17786]|0)&aa;if(Y>>>0<2147483647){T=Pa(Y|0)|0;if((T|0)==((c[ca>>2]|0)+(c[da>>2]|0)|0)){if((T|0)!=(-1|0)){ea=T;fa=Y;K=193;break b}}else{ga=T;ha=Y;K=183}}}else K=173;while(0);do if((K|0)==173?(_=Pa(0)|0,(_|0)!=(-1|0)):0){f=_;Y=c[17902]|0;T=Y+-1|0;if(!(T&f))ia=R;else ia=R-f+(T+f&0-Y)|0;Y=c[17891]|0;f=Y+ia|0;if(ia>>>0>F>>>0&ia>>>0<2147483647){T=c[17893]|0;if(T|0?f>>>0<=Y>>>0|f>>>0>T>>>0:0)break;T=Pa(ia|0)|0;if((T|0)==(_|0)){ea=_;fa=ia;K=193;break b}else{ga=T;ha=ia;K=183}}}while(0);d:do if((K|0)==183){T=0-ha|0;do if($>>>0>ha>>>0&(ha>>>0<2147483647&(ga|0)!=(-1|0))?(_=c[17903]|0,f=S-ha+_&0-_,f>>>0<2147483647):0)if((Pa(f|0)|0)==(-1|0)){Pa(T|0)|0;break d}else{ja=f+ha|0;break}else ja=ha;while(0);if((ga|0)!=(-1|0)){ea=ga;fa=ja;K=193;break b}}while(0);c[17894]=c[17894]|4;K=190}else K=190;while(0);if((((K|0)==190?R>>>0<2147483647:0)?(ja=Pa(R|0)|0,R=Pa(0)|0,ja>>>0<R>>>0&((ja|0)!=(-1|0)&(R|0)!=(-1|0))):0)?(ga=R-ja|0,ga>>>0>(F+40|0)>>>0):0){ea=ja;fa=ga;K=193}if((K|0)==193){ga=(c[17891]|0)+fa|0;c[17891]=ga;if(ga>>>0>(c[17892]|0)>>>0)c[17892]=ga;ga=c[17789]|0;do if(ga){ja=71580;do{R=c[ja>>2]|0;ha=ja+4|0;S=c[ha>>2]|0;if((ea|0)==(R+S|0)){ka=R;la=ha;ma=S;na=ja;K=203;break}ja=c[ja+8>>2]|0}while((ja|0)!=0);if(((K|0)==203?(c[na+12>>2]&8|0)==0:0)?ga>>>0<ea>>>0&ga>>>0>=ka>>>0:0){c[la>>2]=ma+fa;ja=ga+8|0;S=(ja&7|0)==0?0:0-ja&7;ja=ga+S|0;ha=fa-S+(c[17786]|0)|0;c[17789]=ja;c[17786]=ha;c[ja+4>>2]=ha|1;c[ja+ha+4>>2]=40;c[17790]=c[17905];break}ha=c[17787]|0;if(ea>>>0<ha>>>0){c[17787]=ea;oa=ea}else oa=ha;ha=ea+fa|0;ja=71580;while(1){if((c[ja>>2]|0)==(ha|0)){pa=ja;qa=ja;K=211;break}ja=c[ja+8>>2]|0;if(!ja){ra=71580;break}}if((K|0)==211)if(!(c[qa+12>>2]&8)){c[pa>>2]=ea;ja=qa+4|0;c[ja>>2]=(c[ja>>2]|0)+fa;ja=ea+8|0;S=ea+((ja&7|0)==0?0:0-ja&7)|0;ja=ha+8|0;R=ha+((ja&7|0)==0?0:0-ja&7)|0;ja=S+F|0;$=R-S-F|0;c[S+4>>2]=F|3;do if((R|0)!=(ga|0)){if((R|0)==(c[17788]|0)){ia=(c[17785]|0)+$|0;c[17785]=ia;c[17788]=ja;c[ja+4>>2]=ia|1;c[ja+ia>>2]=ia;break}ia=c[R+4>>2]|0;if((ia&3|0)==1){da=ia&-8;ca=ia>>>3;e:do if(ia>>>0>=256){aa=c[R+24>>2]|0;ba=c[R+12>>2]|0;do if((ba|0)==(R|0)){T=R+16|0;f=T+4|0;_=c[f>>2]|0;if(!_){Y=c[T>>2]|0;if(!Y){sa=0;break}else{ta=Y;ua=T}}else{ta=_;ua=f}while(1){f=ta+20|0;_=c[f>>2]|0;if(_|0){ta=_;ua=f;continue}f=ta+16|0;_=c[f>>2]|0;if(!_){va=ta;wa=ua;break}else{ta=_;ua=f}}if(wa>>>0<oa>>>0)Ea();else{c[wa>>2]=0;sa=va;break}}else{f=c[R+8>>2]|0;if(f>>>0<oa>>>0)Ea();_=f+12|0;if((c[_>>2]|0)!=(R|0))Ea();T=ba+8|0;if((c[T>>2]|0)==(R|0)){c[_>>2]=ba;c[T>>2]=f;sa=ba;break}else Ea()}while(0);if(!aa)break;ba=c[R+28>>2]|0;f=71436+(ba<<2)|0;do if((R|0)!=(c[f>>2]|0)){if(aa>>>0<(c[17787]|0)>>>0)Ea();T=aa+16|0;if((c[T>>2]|0)==(R|0))c[T>>2]=sa;else c[aa+20>>2]=sa;if(!sa)break e}else{c[f>>2]=sa;if(sa|0)break;c[17784]=c[17784]&~(1<<ba);break e}while(0);ba=c[17787]|0;if(sa>>>0<ba>>>0)Ea();c[sa+24>>2]=aa;f=R+16|0;T=c[f>>2]|0;do if(T|0)if(T>>>0<ba>>>0)Ea();else{c[sa+16>>2]=T;c[T+24>>2]=sa;break}while(0);T=c[f+4>>2]|0;if(!T)break;if(T>>>0<(c[17787]|0)>>>0)Ea();else{c[sa+20>>2]=T;c[T+24>>2]=sa;break}}else{T=c[R+8>>2]|0;ba=c[R+12>>2]|0;aa=71172+(ca<<1<<2)|0;do if((T|0)!=(aa|0)){if(T>>>0<oa>>>0)Ea();if((c[T+12>>2]|0)==(R|0))break;Ea()}while(0);if((ba|0)==(T|0)){c[17783]=c[17783]&~(1<<ca);break}do if((ba|0)==(aa|0))xa=ba+8|0;else{if(ba>>>0<oa>>>0)Ea();f=ba+8|0;if((c[f>>2]|0)==(R|0)){xa=f;break}Ea()}while(0);c[T+12>>2]=ba;c[xa>>2]=T}while(0);ya=R+da|0;za=da+$|0}else{ya=R;za=$}ca=ya+4|0;c[ca>>2]=c[ca>>2]&-2;c[ja+4>>2]=za|1;c[ja+za>>2]=za;ca=za>>>3;if(za>>>0<256){ia=71172+(ca<<1<<2)|0;aa=c[17783]|0;f=1<<ca;do if(!(aa&f)){c[17783]=aa|f;Aa=ia+8|0;Ba=ia}else{ca=ia+8|0;_=c[ca>>2]|0;if(_>>>0>=(c[17787]|0)>>>0){Aa=ca;Ba=_;break}Ea()}while(0);c[Aa>>2]=ja;c[Ba+12>>2]=ja;c[ja+8>>2]=Ba;c[ja+12>>2]=ia;break}f=za>>>8;do if(!f)Ca=0;else{if(za>>>0>16777215){Ca=31;break}aa=(f+1048320|0)>>>16&8;da=f<<aa;_=(da+520192|0)>>>16&4;ca=da<<_;da=(ca+245760|0)>>>16&2;Y=14-(_|aa|da)+(ca<<da>>>15)|0;Ca=za>>>(Y+7|0)&1|Y<<1}while(0);f=71436+(Ca<<2)|0;c[ja+28>>2]=Ca;ia=ja+16|0;c[ia+4>>2]=0;c[ia>>2]=0;ia=c[17784]|0;Y=1<<Ca;if(!(ia&Y)){c[17784]=ia|Y;c[f>>2]=ja;c[ja+24>>2]=f;c[ja+12>>2]=ja;c[ja+8>>2]=ja;break}Y=za<<((Ca|0)==31?0:25-(Ca>>>1)|0);ia=c[f>>2]|0;while(1){if((c[ia+4>>2]&-8|0)==(za|0)){Da=ia;K=281;break}f=ia+16+(Y>>>31<<2)|0;da=c[f>>2]|0;if(!da){Fa=f;Ga=ia;K=278;break}else{Y=Y<<1;ia=da}}if((K|0)==278)if(Fa>>>0<(c[17787]|0)>>>0)Ea();else{c[Fa>>2]=ja;c[ja+24>>2]=Ga;c[ja+12>>2]=ja;c[ja+8>>2]=ja;break}else if((K|0)==281){ia=Da+8|0;Y=c[ia>>2]|0;da=c[17787]|0;if(Y>>>0>=da>>>0&Da>>>0>=da>>>0){c[Y+12>>2]=ja;c[ia>>2]=ja;c[ja+8>>2]=Y;c[ja+12>>2]=Da;c[ja+24>>2]=0;break}else Ea()}}else{Y=(c[17786]|0)+$|0;c[17786]=Y;c[17789]=ja;c[ja+4>>2]=Y|1}while(0);n=S+8|0;return n|0}else ra=71580;while(1){ja=c[ra>>2]|0;if(ja>>>0<=ga>>>0?($=ja+(c[ra+4>>2]|0)|0,$>>>0>ga>>>0):0){Ha=$;break}ra=c[ra+8>>2]|0}S=Ha+-47|0;$=S+8|0;ja=S+(($&7|0)==0?0:0-$&7)|0;$=ga+16|0;S=ja>>>0<$>>>0?ga:ja;ja=S+8|0;R=ea+8|0;ha=(R&7|0)==0?0:0-R&7;R=ea+ha|0;Y=fa+-40-ha|0;c[17789]=R;c[17786]=Y;c[R+4>>2]=Y|1;c[R+Y+4>>2]=40;c[17790]=c[17905];Y=S+4|0;c[Y>>2]=27;c[ja>>2]=c[17895];c[ja+4>>2]=c[17896];c[ja+8>>2]=c[17897];c[ja+12>>2]=c[17898];c[17895]=ea;c[17896]=fa;c[17898]=0;c[17897]=ja;ja=S+24|0;do{ja=ja+4|0;c[ja>>2]=7}while((ja+4|0)>>>0<Ha>>>0);if((S|0)!=(ga|0)){ja=S-ga|0;c[Y>>2]=c[Y>>2]&-2;c[ga+4>>2]=ja|1;c[S>>2]=ja;R=ja>>>3;if(ja>>>0<256){ha=71172+(R<<1<<2)|0;ia=c[17783]|0;da=1<<R;if(ia&da){R=ha+8|0;f=c[R>>2]|0;if(f>>>0<(c[17787]|0)>>>0)Ea();else{Ia=R;Ja=f}}else{c[17783]=ia|da;Ia=ha+8|0;Ja=ha}c[Ia>>2]=ga;c[Ja+12>>2]=ga;c[ga+8>>2]=Ja;c[ga+12>>2]=ha;break}ha=ja>>>8;if(ha)if(ja>>>0>16777215)Ka=31;else{da=(ha+1048320|0)>>>16&8;ia=ha<<da;ha=(ia+520192|0)>>>16&4;f=ia<<ha;ia=(f+245760|0)>>>16&2;R=14-(ha|da|ia)+(f<<ia>>>15)|0;Ka=ja>>>(R+7|0)&1|R<<1}else Ka=0;R=71436+(Ka<<2)|0;c[ga+28>>2]=Ka;c[ga+20>>2]=0;c[$>>2]=0;ia=c[17784]|0;f=1<<Ka;if(!(ia&f)){c[17784]=ia|f;c[R>>2]=ga;c[ga+24>>2]=R;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}f=ja<<((Ka|0)==31?0:25-(Ka>>>1)|0);ia=c[R>>2]|0;while(1){if((c[ia+4>>2]&-8|0)==(ja|0)){La=ia;K=307;break}R=ia+16+(f>>>31<<2)|0;da=c[R>>2]|0;if(!da){Ma=R;Na=ia;K=304;break}else{f=f<<1;ia=da}}if((K|0)==304)if(Ma>>>0<(c[17787]|0)>>>0)Ea();else{c[Ma>>2]=ga;c[ga+24>>2]=Na;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}else if((K|0)==307){ia=La+8|0;f=c[ia>>2]|0;ja=c[17787]|0;if(f>>>0>=ja>>>0&La>>>0>=ja>>>0){c[f+12>>2]=ga;c[ia>>2]=ga;c[ga+8>>2]=f;c[ga+12>>2]=La;c[ga+24>>2]=0;break}else Ea()}}}else{f=c[17787]|0;if((f|0)==0|ea>>>0<f>>>0)c[17787]=ea;c[17895]=ea;c[17896]=fa;c[17898]=0;c[17792]=c[17901];c[17791]=-1;f=0;do{ia=71172+(f<<1<<2)|0;c[ia+12>>2]=ia;c[ia+8>>2]=ia;f=f+1|0}while((f|0)!=32);f=ea+8|0;ia=(f&7|0)==0?0:0-f&7;f=ea+ia|0;ja=fa+-40-ia|0;c[17789]=f;c[17786]=ja;c[f+4>>2]=ja|1;c[f+ja+4>>2]=40;c[17790]=c[17905]}while(0);fa=c[17786]|0;if(fa>>>0>F>>>0){ea=fa-F|0;c[17786]=ea;fa=c[17789]|0;ga=fa+F|0;c[17789]=ga;c[ga+4>>2]=ea|1;c[fa+4>>2]=F|3;n=fa+8|0;return n|0}}c[(Vu()|0)>>2]=12;n=0;return n|0}function qx(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[17787]|0;if(b>>>0<d>>>0)Ea();e=c[a+-4>>2]|0;a=e&3;if((a|0)==1)Ea();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)Ea();if((i|0)==(c[17788]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;break}c[17785]=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=71172+(l<<1<<2)|0;if((h|0)!=(o|0)){if(h>>>0<d>>>0)Ea();if((c[h+12>>2]|0)!=(i|0))Ea()}if((k|0)==(h|0)){c[17783]=c[17783]&~(1<<l);m=i;n=j;break}if((k|0)!=(o|0)){if(k>>>0<d>>>0)Ea();o=k+8|0;if((c[o>>2]|0)==(i|0))p=o;else Ea()}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)Ea();else{c[w>>2]=0;s=v;break}}else{l=c[i+8>>2]|0;if(l>>>0<d>>>0)Ea();q=l+12|0;if((c[q>>2]|0)!=(i|0))Ea();o=k+8|0;if((c[o>>2]|0)==(i|0)){c[q>>2]=k;c[o>>2]=l;s=k;break}else Ea()}while(0);if(h){k=c[i+28>>2]|0;l=71436+(k<<2)|0;if((i|0)==(c[l>>2]|0)){c[l>>2]=s;if(!s){c[17784]=c[17784]&~(1<<k);m=i;n=j;break}}else{if(h>>>0<(c[17787]|0)>>>0)Ea();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[17787]|0;if(s>>>0<k>>>0)Ea();c[s+24>>2]=h;l=i+16|0;o=c[l>>2]|0;do if(o|0)if(o>>>0<k>>>0)Ea();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[17787]|0)>>>0)Ea();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)Ea();f=g+4|0;b=c[f>>2]|0;if(!(b&1))Ea();if(!(b&2)){if((g|0)==(c[17789]|0)){s=(c[17786]|0)+n|0;c[17786]=s;c[17789]=m;c[m+4>>2]=s|1;if((m|0)!=(c[17788]|0))return;c[17788]=0;c[17785]=0;return}if((g|0)==(c[17788]|0)){s=(c[17785]|0)+n|0;c[17785]=s;c[17788]=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[17787]|0)>>>0)Ea();else{c[B>>2]=0;x=A;break}}else{t=c[g+8>>2]|0;if(t>>>0<(c[17787]|0)>>>0)Ea();p=t+12|0;if((c[p>>2]|0)!=(g|0))Ea();u=w+8|0;if((c[u>>2]|0)==(g|0)){c[p>>2]=w;c[u>>2]=t;x=w;break}else Ea()}while(0);if(v|0){w=c[g+28>>2]|0;j=71436+(w<<2)|0;if((g|0)==(c[j>>2]|0)){c[j>>2]=x;if(!x){c[17784]=c[17784]&~(1<<w);break}}else{if(v>>>0<(c[17787]|0)>>>0)Ea();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[17787]|0;if(x>>>0<w>>>0)Ea();c[x+24>>2]=v;j=g+16|0;i=c[j>>2]|0;do if(i|0)if(i>>>0<w>>>0)Ea();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[17787]|0)>>>0)Ea();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=71172+(d<<1<<2)|0;if((i|0)!=(v|0)){if(i>>>0<(c[17787]|0)>>>0)Ea();if((c[i+12>>2]|0)!=(g|0))Ea()}if((w|0)==(i|0)){c[17783]=c[17783]&~(1<<d);break}if((w|0)!=(v|0)){if(w>>>0<(c[17787]|0)>>>0)Ea();v=w+8|0;if((c[v>>2]|0)==(g|0))C=v;else Ea()}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[17788]|0)){c[17785]=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=71172+(n<<1<<2)|0;f=c[17783]|0;s=1<<n;if(f&s){n=b+8|0;C=c[n>>2]|0;if(C>>>0<(c[17787]|0)>>>0)Ea();else{E=n;F=C}}else{c[17783]=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=71436+(G<<2)|0;c[m+28>>2]=G;c[m+20>>2]=0;c[m+16>>2]=0;E=c[17784]|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[17787]|0)>>>0)Ea();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[17787]|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 Ea()}}else{c[17784]=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[17791]|0)+-1|0;c[17791]=m;if(!m)L=71588;else return;while(1){m=c[L>>2]|0;if(!m)break;else L=m+8|0}c[17791]=-1;return}function rx(a,b){a=a|0;b=b|0;var d=0,e=0;if(a){d=_(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=px(e)|0;if(!d)return d|0;if(!(c[d+-4>>2]&3))return d|0;xx(d|0,0,e|0)|0;return d|0}function sx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=px(b)|0;return d|0}if(b>>>0>4294967231){c[(Vu()|0)>>2]=12;d=0;return d|0}e=tx(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e|0){d=e+8|0;return d|0}e=px(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;Ax(e|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;qx(a);d=e;return d|0}function tx(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[17787]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0<g>>>0))Ea();j=c[g+4>>2]|0;if(!(j&1))Ea();if(!i){if(b>>>0<256){k=0;return k|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[17903]<<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;ux(l,i);k=a;return k|0}if((g|0)==(c[17789]|0)){i=(c[17786]|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[17789]=i;c[17786]=l;k=a;return k|0}if((g|0)==(c[17788]|0)){l=(c[17785]|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[17785]=q;c[17788]=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)Ea();else{c[w>>2]=0;s=v;break}}else{o=c[g+8>>2]|0;if(o>>>0<h>>>0)Ea();n=o+12|0;if((c[n>>2]|0)!=(g|0))Ea();m=l+8|0;if((c[m>>2]|0)==(g|0)){c[n>>2]=l;c[m>>2]=o;s=l;break}else Ea()}while(0);if(i|0){l=c[g+28>>2]|0;o=71436+(l<<2)|0;if((g|0)==(c[o>>2]|0)){c[o>>2]=s;if(!s){c[17784]=c[17784]&~(1<<l);break}}else{if(i>>>0<(c[17787]|0)>>>0)Ea();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[17787]|0;if(s>>>0<l>>>0)Ea();c[s+24>>2]=i;o=g+16|0;m=c[o>>2]|0;do if(m|0)if(m>>>0<l>>>0)Ea();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[17787]|0)>>>0)Ea();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=71172+(q<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0<h>>>0)Ea();if((c[m+12>>2]|0)!=(g|0))Ea()}if((l|0)==(m|0)){c[17783]=c[17783]&~(1<<q);break}if((l|0)!=(i|0)){if(l>>>0<h>>>0)Ea();i=l+8|0;if((c[i>>2]|0)==(g|0))x=i;else Ea()}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;ux(x,f);k=a;return k|0}return 0}function ux(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[17787]|0;if(g>>>0<i>>>0)Ea();if((g|0)==(c[17788]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[17785]=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=71172+(k<<1<<2)|0;if((f|0)!=(n|0)){if(f>>>0<i>>>0)Ea();if((c[f+12>>2]|0)!=(g|0))Ea()}if((j|0)==(f|0)){c[17783]=c[17783]&~(1<<k);l=g;m=h;break}if((j|0)!=(n|0)){if(j>>>0<i>>>0)Ea();n=j+8|0;if((c[n>>2]|0)==(g|0))o=n;else Ea()}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)Ea();else{c[v>>2]=0;r=u;break}}else{k=c[g+8>>2]|0;if(k>>>0<i>>>0)Ea();p=k+12|0;if((c[p>>2]|0)!=(g|0))Ea();n=j+8|0;if((c[n>>2]|0)==(g|0)){c[p>>2]=j;c[n>>2]=k;r=j;break}else Ea()}while(0);if(f){j=c[g+28>>2]|0;i=71436+(j<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[17784]=c[17784]&~(1<<j);l=g;m=h;break}}else{if(f>>>0<(c[17787]|0)>>>0)Ea();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[17787]|0;if(r>>>0<j>>>0)Ea();c[r+24>>2]=f;i=g+16|0;k=c[i>>2]|0;do if(k|0)if(k>>>0<j>>>0)Ea();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[17787]|0)>>>0)Ea();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[17787]|0;if(d>>>0<b>>>0)Ea();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){if((d|0)==(c[17789]|0)){u=(c[17786]|0)+m|0;c[17786]=u;c[17789]=l;c[l+4>>2]=u|1;if((l|0)!=(c[17788]|0))return;c[17788]=0;c[17785]=0;return}if((d|0)==(c[17788]|0)){u=(c[17785]|0)+m|0;c[17785]=u;c[17788]=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)Ea();else{c[A>>2]=0;w=z;break}}else{e=c[d+8>>2]|0;if(e>>>0<b>>>0)Ea();k=e+12|0;if((c[k>>2]|0)!=(d|0))Ea();o=s+8|0;if((c[o>>2]|0)==(d|0)){c[k>>2]=s;c[o>>2]=e;w=s;break}else Ea()}while(0);if(t|0){s=c[d+28>>2]|0;h=71436+(s<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=w;if(!w){c[17784]=c[17784]&~(1<<s);break}}else{if(t>>>0<(c[17787]|0)>>>0)Ea();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[17787]|0;if(w>>>0<s>>>0)Ea();c[w+24>>2]=t;h=d+16|0;g=c[h>>2]|0;do if(g|0)if(g>>>0<s>>>0)Ea();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[17787]|0)>>>0)Ea();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=71172+(v<<1<<2)|0;if((g|0)!=(t|0)){if(g>>>0<b>>>0)Ea();if((c[g+12>>2]|0)!=(d|0))Ea()}if((s|0)==(g|0)){c[17783]=c[17783]&~(1<<v);break}if((s|0)!=(t|0)){if(s>>>0<b>>>0)Ea();t=s+8|0;if((c[t>>2]|0)==(d|0))B=t;else Ea()}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[17788]|0)){c[17785]=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=71172+(m<<1<<2)|0;a=c[17783]|0;u=1<<m;if(a&u){m=r+8|0;B=c[m>>2]|0;if(B>>>0<(c[17787]|0)>>>0)Ea();else{D=m;E=B}}else{c[17783]=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=71436+(F<<2)|0;c[l+28>>2]=F;c[l+20>>2]=0;c[l+16>>2]=0;D=c[17784]|0;u=1<<F;if(!(D&u)){c[17784]=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[17787]|0)>>>0)Ea();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[17787]|0;if(!(J>>>0>=I>>>0&G>>>0>=I>>>0))Ea();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 vx(){}function wx(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 xx(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 yx(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 zx(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 Ax(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return _a(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 Bx(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 Ax(b,c,d)|0;return b|0}function Cx(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Dx(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 Ex(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 Fx(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 Gx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=_(d,c)|0;f=a>>>16;a=(e>>>16)+(_(d,f)|0)|0;d=b>>>16;b=_(d,c)|0;return (C=(a>>>16)+(_(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function Hx(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=wx(e^a|0,f^b|0,e|0,f|0)|0;b=C;a=g^e;e=h^f;return wx((Mx(i,b,wx(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 Ix(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=wx(h^a|0,j^b|0,h|0,j|0)|0;b=C;Mx(m,b,wx(k^d|0,l^e|0,k|0,l|0)|0,C,g)|0;l=wx(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 Jx(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=Gx(e,a)|0;f=C;return (C=(_(b,a)|0)+(_(d,e)|0)+f|f&0,c|0|0)|0}function Kx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Mx(a,b,c,d,0)|0}function Lx(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;Mx(a,b,d,e,g)|0;i=f;return (C=c[g+4>>2]|0,c[g>>2]|0)|0}function Mx(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=(aa(l|0)|0)-(aa(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=(aa(j|0)|0)+33-(aa(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=zx(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>>>((zx(l|0)|0)>>>0);return (C=n,o)|0}r=(aa(l|0)|0)-(aa(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=yx(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;wx(e|0,k|0,g|0,a|0)|0;i=C;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=wx(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 Nx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Db[a&63](b|0,c|0,d|0)|0}function Ox(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Eb[a&15](b|0,c|0,d|0,e|0,f|0)}function Px(a,b){a=a|0;b=b|0;Fb[a&15](b|0)}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;Gb[a&7](b|0,c|0)}function Rx(a,b){a=a|0;b=b|0;return Hb[a&15](b|0)|0}function Sx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ib[a&7](b|0,c|0,d|0)}function Tx(a){a=a|0;Jb[a&3]()}function Ux(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Kb[a&7](b|0,c|0,d|0,e|0)|0}function Vx(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;Lb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;return Mb[a&7](b|0,c|0)|0}function Xx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Nb[a&1](b|0,c|0,d|0,e|0)}function Yx(a,b,c){a=a|0;b=b|0;c=c|0;da(0);return 0}function Zx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ea(1)}function _x(a){a=a|0;fa(2)}function $x(a,b){a=a|0;b=b|0;ga(3)}function ay(a){a=a|0;ha(4);return 0}function by(a,b,c){a=a|0;b=b|0;c=c|0;ia(5)}function cy(){ja(6)}function dy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(7);return 0}function ey(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;la(8)}function fy(a,b){a=a|0;b=b|0;ma(9);return 0}function gy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;na(10)} -function im(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))ba();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]=Fg(k,0,41815,Hv(41815)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Fg(l,0,41891,Hv(41891)|0)|0;do if(!(c[h>>2]|0)){c[h>>2]=xk(m,c[k>>2]|0,c[f>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=41990;break}c[h>>2]=yk(c[m>>2]|0,c[k>>2]|0,c[e>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=42005;break}c[h>>2]=yk(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0)|0;if((jm(c[h>>2]|0)|0)!=8)c[g>>2]=42019}else c[g>>2]=41967;while(0);qg(c[m>>2]|0);qg(c[l>>2]|0);qg(c[k>>2]|0);i=d;return c[g>>2]|0}function jm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=km(c[d>>2]|0)|0;i=b;return a|0}function km(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;i=b;return c[d>>2]&65535|0}function lm(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))ba();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]=sq(1e3)|0;vq(c[l>>2]|0,1e3,0);c[e>>2]=c[l>>2];c[k>>2]=Dg(m,0,42054,e)|0;do if(!(c[k>>2]|0)){c[k>>2]=uk(n,c[m>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=42084;break}c[o>>2]=mm(c[n>>2]|0)|0;if(!(c[o>>2]|0)){c[h>>2]=42107;break}if(!(Zo(c[l>>2]|0,c[o>>2]|0)|0)){c[h>>2]=42140;break}c[k>>2]=wk(p,c[n>>2]|0,c[g>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=42169;break}c[r>>2]=sg(c[p>>2]|0,42184,0)|0;if(c[r>>2]|0)c[q>>2]=Ag(c[r>>2]|0,1,5)|0;else c[q>>2]=Ag(c[p>>2]|0,0,5)|0;if(!(c[q>>2]|0)){c[h>>2]=42190;break}if(Zo(c[l>>2]|0,c[q>>2]|0)|0)c[h>>2]=42220}else c[h>>2]=41967;while(0);qg(c[r>>2]|0);uq(c[q>>2]|0);qg(c[p>>2]|0);uq(c[o>>2]|0);qg(c[n>>2]|0);qg(c[m>>2]|0);uq(c[l>>2]|0);i=d;return c[h>>2]|0}function mm(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))ba();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]=sg(c[e>>2]|0,42099,0)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[g>>2]=sg(c[f>>2]|0,39286,0)|0;qg(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]=sg(c[g>>2]|0,39337,0)|0;qg(c[g>>2]|0);if(c[h>>2]|0){c[k>>2]=Ag(c[h>>2]|0,1,0)|0;qg(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 nm(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))ba();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]=sg(c[g>>2]|0,39341,1)|0;if(!(c[h>>2]|0)){c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}c[k>>2]=wg(c[h>>2]|0,1,l)|0;if(c[k>>2]|0){Cj(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0);qg(c[h>>2]|0);c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}else{qg(c[h>>2]|0);c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}return 0}function om(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))ba();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]=Qg()|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 pm(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))ba();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]=qm(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 qm(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))ba();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=rm(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=sm(c[h>>2]|0)|0;c[q>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=sm((c[h>>2]|0)+4|0)|0;c[q+4>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=sm((c[h>>2]|0)+8|0)|0;c[q+8>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=sm((c[h>>2]|0)+12|0)|0;c[q+12>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=sm((c[h>>2]|0)+16|0)|0;c[q+16>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=sm((c[h>>2]|0)+20|0)|0;c[q+20>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=sm((c[h>>2]|0)+24|0)|0;c[q+24>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=sm((c[h>>2]|0)+28|0)|0;c[q+28>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=sm((c[h>>2]|0)+32|0)|0;c[q+32>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=sm((c[h>>2]|0)+36|0)|0;c[q+36>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=sm((c[h>>2]|0)+40|0)|0;c[q+40>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=sm((c[h>>2]|0)+44|0)|0;c[q+44>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=sm((c[h>>2]|0)+48|0)|0;c[q+48>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=sm((c[h>>2]|0)+52|0)|0;c[q+52>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=sm((c[h>>2]|0)+56|0)|0;c[q+56>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=sm((c[h>>2]|0)+60|0)|0;c[q+60>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(c[m>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=rm(c[l>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=rm(c[k>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=rm(c[o>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=rm(c[n>>2]|0,30)|0;f=rm(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=rm(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=rm(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 rm(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))ba();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 sm(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 tm(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))ba();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];os(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}os(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);um((c[f>>2]|0)+56|0,c[k>>2]|0);um((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=pm(c[f>>2]|0,c[f>>2]|0,1)|0;Df(c[n>>2]|0);Ef();c[m>>2]=c[f>>2];um(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;um(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;um(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;um(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;um(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function um(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))ba();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 vm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function wm(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))ba();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]=xm(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 xm(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))ba();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]=42831;c[k>>2]=ns(2,0,42844,3,42334,20)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42897;c[k>>2]=ns(2,0,42475,56,42355,20)|0;if(c[k>>2]|0)break;c[h>>2]=43071;c[k>>2]=ns(2,1,0,0,42376,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)Nb[c[g>>2]&1](43136,2,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function ym(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))ba();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;om(l,0);os(l,c[h>>2]|0,c[k>>2]|0);tm(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 zm(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))ba();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;om(l,0);while(1){if((c[k>>2]|0)<=0)break;os(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}tm(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 Am(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))ba();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]=Qg()|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 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))ba();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,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 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;d=i;i=i+320|0;if((i|0)>=(j|0))ba();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=Dm((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=Em(c[t+((c[u>>2]|0)-2<<2)>>2]|0,17)|0;e=f^(Em(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=Em(c[t+((c[u>>2]|0)-15<<2)>>2]|0,7)|0;b=e^(Em(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+(Fm(c[n>>2]|0)|0)|0;b=f+(Gm(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0)|0;c[r>>2]=b+(c[7860+(c[u>>2]<<2)>>2]|0)+(c[t+(c[u>>2]<<2)>>2]|0);b=Hm(c[h>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[m>>2]|0)|0)|0;b=f+(Gm(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+1<<2)>>2]|0)+(c[t+((c[u>>2]|0)+1<<2)>>2]|0);b=Hm(c[q>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[l>>2]|0)|0)|0;b=f+(Gm(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+2<<2)>>2]|0)+(c[t+((c[u>>2]|0)+2<<2)>>2]|0);b=Hm(c[p>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[k>>2]|0)|0)|0;b=f+(Gm(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+3<<2)>>2]|0)+(c[t+((c[u>>2]|0)+3<<2)>>2]|0);b=Hm(c[o>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[h>>2]|0)|0)|0;b=f+(Gm(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+4<<2)>>2]|0)+(c[t+((c[u>>2]|0)+4<<2)>>2]|0);b=Hm(c[n>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[q>>2]|0)|0)|0;b=f+(Gm(c[q>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+5<<2)>>2]|0)+(c[t+((c[u>>2]|0)+5<<2)>>2]|0);b=Hm(c[m>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[p>>2]|0)|0)|0;b=f+(Gm(c[p>>2]|0,c[q>>2]|0,c[h>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+6<<2)>>2]|0)+(c[t+((c[u>>2]|0)+6<<2)>>2]|0);b=Hm(c[l>>2]|0)|0;c[s>>2]=b+(Im(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+(Fm(c[o>>2]|0)|0)|0;b=f+(Gm(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)|0;c[r>>2]=b+(c[7860+((c[u>>2]|0)+7<<2)>>2]|0)+(c[t+((c[u>>2]|0)+7<<2)>>2]|0);b=Hm(c[k>>2]|0)|0;c[s>>2]=b+(Im(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 Dm(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 Em(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))ba();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 Fm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Em(c[d>>2]|0,6)|0;e=a^(Em(c[d>>2]|0,11)|0);a=e^(Em(c[d>>2]|0,25)|0);i=b;return a|0}function Gm(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))ba();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 Hm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b;c[d>>2]=a;a=Em(c[d>>2]|0,2)|0;e=a^(Em(c[d>>2]|0,13)|0);a=e^(Em(c[d>>2]|0,22)|0);i=b;return a|0}function Im(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))ba();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 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;d=i;i=i+32|0;if((i|0)>=(j|0))ba();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];os(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}os(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);Km((c[f>>2]|0)+56|0,c[k>>2]|0);Km((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=Bm(c[f>>2]|0,c[f>>2]|0,1)|0;Df(c[n>>2]|0);Ef();c[m>>2]=c[f>>2];Km(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+180>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+184>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Km(c[m>>2]|0,c[(c[f>>2]|0)+188>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Km(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))ba();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 Lm(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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))ba();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]=Nm(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{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))ba();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]=42831;c[k>>2]=ns(11,0,42844,3,42446,28)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42897;c[k>>2]=ns(11,0,42475,56,42532,28)|0;if(c[k>>2]|0)break;c[h>>2]=43071;c[k>>2]=ns(11,1,0,0,42561,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)Nb[c[g>>2]&1](43136,11,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))ba();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]=42831;c[k>>2]=ns(8,0,42844,3,42590,32)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42897;c[k>>2]=ns(8,0,42475,56,42623,32)|0;if(c[k>>2]|0)break;c[h>>2]=43071;c[k>>2]=ns(8,1,0,0,42656,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)Nb[c[g>>2]&1](43136,8,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;d=i;i=i+16|0;if((i|0)>=(j|0))ba();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]=Qg()|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 Qm(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))ba();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]=Qg()|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 Rm(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))ba();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]=(Sm((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 Sm(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))ba();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=Tm((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=Um(c[f>>2]|0,c[f+4>>2]|0)|0;f=yx(b|0,w|0,a|0,C|0)|0;a=C;w=m;b=n;x=o;y=Wm(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=yx(f|0,a|0,y|0,C|0)|0;y=80+(c[r>>2]<<3)|0;a=yx(x|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;x=yx(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=Vm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+112|0;f=Vm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+112|0;b=Ex(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+72|0;w=yx(x^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+8|0;b=Vm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+8|0;x=Vm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+8|0;z=Ex(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=yx(w|0,y|0,b^x^z|0,f^C|0)|0;f=q;z=yx(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=Xm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=g;x=h;b=k;y=Ym(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=yx(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=yx(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=yx(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=Um(c[a>>2]|0,c[a+4>>2]|0)|0;a=yx(b|0,y|0,z|0,C|0)|0;z=C;y=l;b=m;x=n;f=Wm(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=yx(a|0,z|0,f|0,C|0)|0;f=80+((c[r>>2]|0)+1<<3)|0;z=yx(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+8|0;x=yx(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=Vm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+120|0;a=Vm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+120|0;b=Ex(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+80|0;y=yx(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+16|0;b=Vm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+16|0;x=Vm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+16|0;w=Ex(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=yx(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+8|0;w=a;x=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=p;w=g;b=h;f=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(b|0,f|0,x|0,C|0)|0;x=C;f=k;b=l;w=m;a=Wm(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=yx(z|0,x|0,a|0,C|0)|0;a=80+((c[r>>2]|0)+2<<3)|0;x=yx(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+16|0;w=yx(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=Vm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q;z=Vm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q;b=Ex(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+88|0;f=yx(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+24|0;b=Vm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+24|0;w=Vm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+24|0;y=Ex(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=yx(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+16|0;y=z;w=yx(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=Xm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=o;y=p;b=g;a=Ym(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=yx(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=yx(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=yx(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=Um(c[x>>2]|0,c[x+4>>2]|0)|0;x=yx(b|0,a|0,w|0,C|0)|0;w=C;a=h;b=k;y=l;z=Wm(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=yx(x|0,w|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+3<<3)|0;w=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+24|0;y=yx(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=Vm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+8|0;x=Vm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+8|0;b=Ex(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+96|0;a=yx(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+32|0;b=Vm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+32|0;y=Vm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+32|0;f=Ex(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=yx(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+24|0;f=x;y=yx(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=Xm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=n;f=o;b=p;z=Ym(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=yx(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=yx(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=yx(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=Um(c[w>>2]|0,c[w+4>>2]|0)|0;w=yx(b|0,z|0,y|0,C|0)|0;y=C;z=g;b=h;f=k;x=Wm(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=yx(w|0,y|0,x|0,C|0)|0;x=80+((c[r>>2]|0)+4<<3)|0;y=yx(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+32|0;f=yx(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=Vm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+16|0;w=Vm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+16|0;b=Ex(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+104|0;z=yx(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+40|0;b=Vm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+40|0;f=Vm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+40|0;a=Ex(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=yx(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+32|0;a=w;f=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=m;a=n;b=o;x=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(b|0,x|0,f|0,C|0)|0;f=C;x=p;b=g;a=h;w=Wm(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=yx(y|0,f|0,w|0,C|0)|0;w=80+((c[r>>2]|0)+5<<3)|0;f=yx(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+40|0;a=yx(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=Vm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+24|0;y=Vm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+24|0;b=Ex(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+112|0;x=yx(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+48|0;b=Vm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+48|0;a=Vm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+48|0;z=Ex(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=yx(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+40|0;z=y;a=yx(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=Xm(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=l;z=m;b=n;w=Ym(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=yx(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=yx(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=yx(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=Um(c[f>>2]|0,c[f+4>>2]|0)|0;f=yx(b|0,w|0,a|0,C|0)|0;a=C;w=o;b=p;z=g;y=Wm(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=yx(f|0,a|0,y|0,C|0)|0;y=80+((c[r>>2]|0)+6<<3)|0;a=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+48|0;z=yx(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=Vm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+32|0;f=Vm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+32|0;b=Ex(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+120|0;w=yx(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+56|0;b=Vm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+56|0;z=Vm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+56|0;x=Ex(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=yx(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+48|0;x=f;z=yx(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=Xm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=k;x=l;b=m;y=Ym(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=yx(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=yx(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=yx(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=Um(c[a>>2]|0,c[a+4>>2]|0)|0;a=yx(b|0,y|0,z|0,C|0)|0;z=C;y=n;b=o;x=p;f=Wm(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=yx(a|0,z|0,f|0,C|0)|0;f=80+((c[r>>2]|0)+7<<3)|0;z=yx(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+56|0;x=yx(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=Vm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+40|0;a=Vm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+40|0;b=Ex(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q;y=yx(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+64|0;b=Vm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+64|0;x=Vm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+64|0;w=Ex(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=yx(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+56|0;w=a;x=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=h;w=k;b=l;f=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(b|0,f|0,x|0,C|0)|0;x=C;f=m;b=n;w=o;a=Wm(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=yx(z|0,x|0,a|0,C|0)|0;a=80+((c[r>>2]|0)+8<<3)|0;x=yx(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+64|0;w=yx(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=Vm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+48|0;z=Vm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+48|0;b=Ex(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+8|0;f=yx(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+72|0;b=Vm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+72|0;w=Vm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+72|0;y=Ex(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=yx(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+64|0;y=z;w=yx(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=Xm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=g;y=h;b=k;a=Ym(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=yx(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=yx(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=yx(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=Um(c[x>>2]|0,c[x+4>>2]|0)|0;x=yx(b|0,a|0,w|0,C|0)|0;w=C;a=l;b=m;y=n;z=Wm(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=yx(x|0,w|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+9<<3)|0;w=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+72|0;y=yx(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=Vm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+56|0;x=Vm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+56|0;b=Ex(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+16|0;a=yx(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+80|0;b=Vm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+80|0;y=Vm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+80|0;f=Ex(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=yx(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+72|0;f=x;y=yx(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=Xm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=p;f=g;b=h;z=Ym(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=yx(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=yx(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=yx(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=Um(c[w>>2]|0,c[w+4>>2]|0)|0;w=yx(b|0,z|0,y|0,C|0)|0;y=C;z=k;b=l;f=m;x=Wm(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=yx(w|0,y|0,x|0,C|0)|0;x=80+((c[r>>2]|0)+10<<3)|0;y=yx(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+80|0;f=yx(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=Vm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+64|0;w=Vm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+64|0;b=Ex(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+24|0;z=yx(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+88|0;b=Vm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+88|0;f=Vm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+88|0;a=Ex(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=yx(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+80|0;a=w;f=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=o;a=p;b=g;x=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(b|0,x|0,f|0,C|0)|0;f=C;x=h;b=k;a=l;w=Wm(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=yx(y|0,f|0,w|0,C|0)|0;w=80+((c[r>>2]|0)+11<<3)|0;f=yx(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+88|0;a=yx(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=Vm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+72|0;y=Vm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+72|0;b=Ex(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+32|0;x=yx(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+96|0;b=Vm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+96|0;a=Vm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+96|0;z=Ex(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=yx(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+88|0;z=y;a=yx(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=Xm(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=n;z=o;b=p;w=Ym(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=yx(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=yx(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=yx(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=Um(c[f>>2]|0,c[f+4>>2]|0)|0;f=yx(b|0,w|0,a|0,C|0)|0;a=C;w=g;b=h;z=k;y=Wm(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=yx(f|0,a|0,y|0,C|0)|0;y=80+((c[r>>2]|0)+12<<3)|0;a=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=yx(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=Vm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+80|0;f=Vm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+80|0;b=Ex(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+40|0;w=yx(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+104|0;b=Vm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+104|0;z=Vm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+104|0;x=Ex(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=yx(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+96|0;x=f;z=yx(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=Xm(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=m;x=n;b=o;y=Ym(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=yx(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=yx(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=yx(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=Um(c[a>>2]|0,c[a+4>>2]|0)|0;a=yx(b|0,y|0,z|0,C|0)|0;z=C;y=p;b=g;x=h;f=Wm(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=yx(a|0,z|0,f|0,C|0)|0;f=80+((c[r>>2]|0)+13<<3)|0;z=yx(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+104|0;x=yx(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=Vm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+88|0;a=Vm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+88|0;b=Ex(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+48|0;y=yx(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+112|0;b=Vm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+112|0;x=Vm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+112|0;w=Ex(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=yx(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+104|0;w=a;x=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=l;w=m;b=n;f=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(b|0,f|0,x|0,C|0)|0;x=C;f=o;b=p;w=g;a=Wm(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=yx(z|0,x|0,a|0,C|0)|0;a=80+((c[r>>2]|0)+14<<3)|0;x=yx(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+112|0;w=yx(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=Vm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+96|0;z=Vm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+96|0;b=Ex(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+56|0;f=yx(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+120|0;b=Vm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+120|0;w=Vm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+120|0;y=Ex(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=yx(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+112|0;y=z;w=yx(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=Xm(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=k;y=l;b=m;a=Ym(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=yx(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=yx(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=yx(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=Um(c[x>>2]|0,c[x+4>>2]|0)|0;x=yx(b|0,a|0,w|0,C|0)|0;w=C;a=n;b=o;y=p;z=Wm(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=yx(x|0,w|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+15<<3)|0;w=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+120|0;y=yx(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=Vm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+104|0;x=Vm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+104|0;b=Ex(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+64|0;a=yx(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q;b=Vm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q;y=Vm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q;f=Ex(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=yx(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+120|0;f=x;y=yx(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=Xm(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=h;f=k;b=l;z=Ym(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=yx(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=yx(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=yx(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=Um(c[t>>2]|0,c[t+4>>2]|0)|0;t=yx(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=Wm(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=yx(t|0,b|0,y|0,C|0)|0;y=80+(c[r>>2]<<3)|0;b=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;z=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=Wm(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=yx(y|0,z|0,b|0,C|0)|0;b=80+((c[r>>2]|0)+1<<3)|0;z=yx(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+8|0;t=yx(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=Xm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=Ym(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=yx(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=yx(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=yx(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=Um(c[b>>2]|0,c[b+4>>2]|0)|0;b=yx(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=Wm(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=yx(b|0,t|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+2<<3)|0;t=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+16|0;y=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=Wm(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=yx(z|0,y|0,t|0,C|0)|0;t=80+((c[r>>2]|0)+3<<3)|0;y=yx(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+24|0;b=yx(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=Xm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=Ym(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=yx(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=yx(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=yx(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=Um(c[t>>2]|0,c[t+4>>2]|0)|0;t=yx(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=Wm(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=yx(t|0,b|0,y|0,C|0)|0;y=80+((c[r>>2]|0)+4<<3)|0;b=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+32|0;z=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=Wm(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=yx(y|0,z|0,b|0,C|0)|0;b=80+((c[r>>2]|0)+5<<3)|0;z=yx(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+40|0;t=yx(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=Xm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=Ym(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=yx(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=yx(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=yx(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=Um(c[b>>2]|0,c[b+4>>2]|0)|0;b=yx(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=Wm(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=yx(b|0,t|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+6<<3)|0;t=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+48|0;y=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=Wm(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=yx(z|0,y|0,t|0,C|0)|0;t=80+((c[r>>2]|0)+7<<3)|0;y=yx(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+56|0;b=yx(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=Xm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=Ym(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=yx(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=yx(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=yx(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=Um(c[t>>2]|0,c[t+4>>2]|0)|0;t=yx(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=Wm(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=yx(t|0,b|0,y|0,C|0)|0;y=80+((c[r>>2]|0)+8<<3)|0;b=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+64|0;z=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=Wm(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=yx(y|0,z|0,b|0,C|0)|0;b=80+((c[r>>2]|0)+9<<3)|0;z=yx(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+72|0;t=yx(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=Xm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=Ym(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=yx(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=yx(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=yx(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=Um(c[b>>2]|0,c[b+4>>2]|0)|0;b=yx(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=Wm(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=yx(b|0,t|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+10<<3)|0;t=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+80|0;y=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=Wm(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=yx(z|0,y|0,t|0,C|0)|0;t=80+((c[r>>2]|0)+11<<3)|0;y=yx(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+88|0;b=yx(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=Xm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=Ym(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=yx(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=yx(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=yx(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=Um(c[t>>2]|0,c[t+4>>2]|0)|0;t=yx(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=Wm(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=yx(t|0,b|0,y|0,C|0)|0;y=80+((c[r>>2]|0)+12<<3)|0;b=yx(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=yx(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=Xm(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=Ym(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=yx(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=yx(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=yx(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=Um(c[y>>2]|0,c[y+4>>2]|0)|0;y=yx(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=Wm(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=yx(y|0,z|0,b|0,C|0)|0;b=80+((c[r>>2]|0)+13<<3)|0;z=yx(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+104|0;t=yx(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=Xm(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=Ym(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=yx(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=yx(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=yx(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=Um(c[b>>2]|0,c[b+4>>2]|0)|0;b=yx(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=Wm(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=yx(b|0,t|0,z|0,C|0)|0;z=80+((c[r>>2]|0)+14<<3)|0;t=yx(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+112|0;y=yx(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=Xm(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=Ym(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=yx(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=yx(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=yx(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=Um(c[z>>2]|0,c[z+4>>2]|0)|0;z=yx(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=Wm(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=yx(z|0,y|0,t|0,C|0)|0;t=80+((c[r>>2]|0)+15<<3)|0;y=yx(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+120|0;b=yx(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=Xm(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=Ym(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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=yx(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 Tm(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))ba();e=b+4|0;f=b;c[e>>2]=a;c[f>>2]=c[e>>2];e=Fx(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Fx(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Fx(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Fx(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Fx(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Fx(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 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))ba();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=e;f=Vm(c[b>>2]|0,c[b+4>>2]|0,14,0)|0;b=C;a=e;g=Vm(c[a>>2]|0,c[a+4>>2]|0,18,0)|0;a=b^C;b=e;e=Vm(c[b>>2]|0,c[b+4>>2]|0,41,0)|0;C=a^C;i=d;return f^g^e|0}function Vm(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))ba();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=Ex(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=wx(64,0,c[d>>2]|0,c[d+4>>2]|0)|0;d=Fx(g|0,k|0,h|0)|0;C=e|C;i=f;return b|d|0}function Wm(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))ba();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 Xm(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))ba();e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=e;f=Vm(c[b>>2]|0,c[b+4>>2]|0,28,0)|0;b=C;a=e;g=Vm(c[a>>2]|0,c[a+4>>2]|0,34,0)|0;a=b^C;b=e;e=Vm(c[b>>2]|0,c[b+4>>2]|0,39,0)|0;C=a^C;i=d;return f^g^e|0}function Ym(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))ba();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 Zm(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))ba();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];os(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=Fx(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=Fx(c[p>>2]|0,c[p+4>>2]|0,7)|0;p=C;b=h;o=Ex(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=yx(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=yx(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=Fx(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=Fx(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=Ex(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}os(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;_m((c[f>>2]|0)+112|0,c[e>>2]|0,c[e+4>>2]|0);e=m;_m((c[f>>2]|0)+120|0,c[e>>2]|0,c[e+4>>2]|0);c[g>>2]=Rm(c[f>>2]|0,c[f>>2]|0,1)|0;Df(c[g>>2]|0);Ef();c[n>>2]=c[f>>2];g=(c[f>>2]|0)+160|0;_m(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;_m(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;_m(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;_m(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;_m(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;_m(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;_m(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;_m(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 _m(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))ba();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=Ex(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Ex(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Ex(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=Ex(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Ex(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Ex(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 $m(a){a=a|0;var b=0,d=0,e=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();d=b+4|0;e=b;c[d>>2]=a;c[e>>2]=c[d>>2];i=b;return c[e>>2]|0}function an(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))ba();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]=bn(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=cn(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function bn(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))ba();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]=42831;c[k>>2]=ns(9,0,42844,3,42848,48)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42897;c[k>>2]=ns(9,0,42909,112,43022,48)|0;if(c[k>>2]|0)break;c[h>>2]=43071;c[k>>2]=ns(9,1,0,0,43087,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)Nb[c[g>>2]&1](43136,9,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function cn(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))ba();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]=42831;c[k>>2]=ns(10,0,42844,3,43143,64)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42897;c[k>>2]=ns(10,0,42909,112,43208,64)|0;if(c[k>>2]|0)break;c[h>>2]=43071;c[k>>2]=ns(10,1,0,0,43273,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)Nb[c[g>>2]&1](43136,10,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function dn(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))ba();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]=Qg()|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 en(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))ba();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]=fn(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;Df(47);Ef();i=e;return c[l>>2]|0} -function fn(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))ba();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[17696]|0)==0?(c[17696]=1,c[17697]=gn()|0,c[17697]|0):0){c[h>>2]=c[17697];vf(43673,h)}if(c[17697]|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[43677+((d[c[m>>2]>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+0)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+1)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+1>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+1>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+164)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+68)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+2>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+2>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+138)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+213)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+191)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+3>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+3>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+209)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+127)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+61)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+4>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+4>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+153)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+70)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+102)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+5>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+5>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+150)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+60)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+91)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+6>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+6>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+237)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+55)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+79)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+7>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+7>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43932+((d[J>>0]|0)+224)>>0];a[u>>0]=d[u>>0]^d[43932+((d[J>>0]|0)+208)>>0];a[v>>0]=d[v>>0]^d[43932+((d[J>>0]|0)+140)>>0];a[w>>0]=d[w>>0]^d[43932+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+8>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+8>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+0)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+1)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+9>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+9>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+164)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+68)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+10>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+10>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+138)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+213)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+191)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+11>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+11>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+209)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+127)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+61)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+12>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+12>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+153)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+70)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+102)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+13>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+13>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+150)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+60)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+91)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+14>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+14>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+237)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+55)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+79)>>0];a[A>>0]=d[A>>0]^d[43932+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+15>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+15>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43932+((d[J>>0]|0)+224)>>0];a[y>>0]=d[y>>0]^d[43932+((d[J>>0]|0)+208)>>0];a[z>>0]=d[z>>0]^d[43932+((d[J>>0]|0)+140)>>0];a[A>>0]=d[A>>0]^d[43932+((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[43677+((d[(c[m>>2]|0)+16>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+0)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+1)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+17>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+17>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+164)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+68)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+18>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+18>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+138)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+213)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+191)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+19>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+19>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+209)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+127)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+61)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+20>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+20>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+153)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+70)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+102)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+21>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+21>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+150)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+60)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+91)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+22>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+22>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+237)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+55)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+79)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+23>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+23>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43932+((d[J>>0]|0)+224)>>0];a[C>>0]=d[C>>0]^d[43932+((d[J>>0]|0)+208)>>0];a[D>>0]=d[D>>0]^d[43932+((d[J>>0]|0)+140)>>0];a[E>>0]=d[E>>0]^d[43932+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+24>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+24>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+0)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+1)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+25>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+25>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+45)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+164)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+68)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+26>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+26>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+138)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+213)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+191)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+27>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+27>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+209)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+127)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+61)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+28>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+28>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+153)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+70)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+102)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+29>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+29>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+150)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+60)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+91)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+30>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+30>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+237)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+55)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+79)>>0];a[I>>0]=d[I>>0]^d[43932+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+31>>0]|0){a[J>>0]=a[43677+((d[(c[m>>2]|0)+31>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43932+((d[J>>0]|0)+224)>>0];a[G>>0]=d[G>>0]^d[43932+((d[J>>0]|0)+208)>>0];a[H>>0]=d[H>>0]^d[43932+((d[J>>0]|0)+140)>>0];a[I>>0]=d[I>>0]^d[43932+((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[8372+((d[45192+(d[45192+(d[44936+(d[44424+(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[9396+((d[45192+(d[44936+(d[44936+(d[44424+(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[10420+((d[44936+(d[45192+(d[45192+(d[44424+(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[11444+((d[44936+(d[44936+(d[45192+(d[44424+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[45192+(d[44936+(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[9396+((d[45192+(d[44936+(d[44936+(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[10420+((d[44936+(d[45192+(d[45192+(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[11444+((d[44936+(d[44936+(d[45192+(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[8372+((d[45192+(d[44424+(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[9396+((d[45192+(d[44424+(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[10420+((d[44936+(d[44424+(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[11444+((d[44936+(d[44424+(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[8372+((d[45192+(169^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(117^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(169^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(117^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(103^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(243^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(103^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(179^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(198^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(179^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(198^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(232^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(244^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(232^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(4^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(219^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(4^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(219^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(253^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(123^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(253^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(163^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(251^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(163^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(251^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(118^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(200^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(118^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(154^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(74^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(154^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(74^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(146^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(211^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(146^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(128^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(230^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(128^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(230^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(120^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(107^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(120^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(228^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(69^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(228^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(69^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(221^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(125^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(221^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(209^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(232^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(209^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(232^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(56^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(75^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(56^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(13^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(214^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(13^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(214^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(198^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(50^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(198^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(53^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(216^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(53^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(216^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(152^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(253^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(152^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(24^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(55^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(24^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(55^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(247^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(113^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(247^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(236^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(241^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(236^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(241^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(108^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(225^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(108^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(67^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(48^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(67^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(48^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(117^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(15^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(117^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(55^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(248^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(55^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(248^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(38^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(27^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(38^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(250^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(135^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(250^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(135^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(19^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(250^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(19^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(148^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(6^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(148^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(6^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(72^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(63^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(72^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(242^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(94^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(242^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(94^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(208^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(186^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(208^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(139^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(174^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(139^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(174^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(48^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(91^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(48^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(132^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(138^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(132^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(138^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(84^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(0^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(84^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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[8372+((d[45192+(223^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9396+((d[45192+(188^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10420+((d[44936+(223^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11444+((d[44936+(188^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8372+((d[45192+(35^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9396+((d[45192+(157^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10420+((d[44936+(35^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11444+((d[44936+(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 gn(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;i=i+4288|0;if((i|0)>=(j|0))ba();b=a+4264|0;d=a+8|0;e=a+4272|0;f=a;en(d,43417,16)|0;hn(d,e,43433)|0;do if(!(jw(e,43449,16)|0)){mn(d,e,e)|0;if(jw(e,43433,16)|0){c[b>>2]=43501;break}en(d,43537,32)|0;hn(d,e,43569)|0;if(jw(e,43585,16)|0){c[b>>2]=43601;break}mn(d,e,e)|0;if(jw(e,43569,16)|0){c[b>>2]=43637;break}g=on()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=rn()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=un()|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]=43465;while(0);i=a;return c[b>>2]|0}function hn(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))ba();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];jn(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36}function jn(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))ba();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]=kn(c[h>>2]|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096>>2];c[l>>2]=kn((c[h>>2]|0)+4|0)|0;c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];c[m>>2]=kn((c[h>>2]|0)+8|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];c[n>>2]=kn((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];ln(c[g>>2]|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];ln((c[g>>2]|0)+4|0,c[n>>2]|0);c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];ln((c[g>>2]|0)+8|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+28>>2];ln((c[g>>2]|0)+12|0,c[l>>2]|0);i=e;return}function kn(a){a=a|0;var b=0,e=0,f=0;b=i;i=i+16|0;if((i|0)>=(j|0))ba();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 ln(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))ba();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 mn(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))ba();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];nn(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36} +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,19074,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,19074,52)|0;Pw(f+8|0,c|0,d|0)|0;d=tv(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=tv(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((Yt(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,19074,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,19081,19101,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,61381,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,20821,19081,19101,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[183]|0){p=yu(c[(gu()|0)>>2]|0)|0;c[g>>2]=19117;c[g+4>>2]=19081;c[g+8>>2]=81;c[g+12>>2]=p;gc(1,20821,20399,g)}}else ac(-1,0);c[q>>2]=82;if((c[184]|0)==-1)c[184]=Yb(1,0,19081,19101,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[184]|0))Xb();c[f>>2]=19081;c[f+4>>2]=82;bc(1,61381,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]=zw(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{Tw(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){Aw(c[g>>2]|0);i=e;return}c[l>>2]=237;if((c[185]|0)==-1)c[185]=Yb(1,0,19081,19124,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,61381,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]=(Uu(c[g>>2]|0)|0)+1;c[l>>2]=Qb(c[m>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;Pw(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,19081,19138,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,61381,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]=Eu(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,19081,19154,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[187]|0))Xb();c[g>>2]=19081;c[g+4>>2]=433;bc(1,61381,g);Xb();return 0}function Vb(){c[17584]=c[3956];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[17585];if((c[17586]|0)>=0&0==(c[17587]|0)){c[h>>2]=(c[k>>2]|0)<=(c[17586]|0)&1;s=c[h>>2]|0;i=g;return s|0}c[r>>2]=(c[17586]|0)>=0&1;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[17588]|0))break;c[p>>2]=(c[17589]|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==(vw(c[p>>2]|0,c[l>>2]|0,0,0,0)|0):0)?0==(vw((c[p>>2]|0)+32|0,c[m>>2]|0,0,0,0)|0):0)?0==(vw((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[17586]|0)>=0){c[h>>2]=(p|0)<=(c[17586]|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[17591]|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}if(!(Pa(l|0,4097,c[17591]|0,c[k>>2]|0)|0)){c[h>>2]=-1;s=c[h>>2]|0;i=d;return s|0}c[p>>2]=pw(l,91)|0;if(0!=(c[p>>2]|0)?93==(a[(c[p>>2]|0)+1>>0]|0):0){c[q>>2]=Tb(l,19200,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=Lv()|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;Du(l,4096,19223,g)|0;Sb(c[q>>2]|0,19200,354)}if(!(qu(l,71438)|0)){c[h>>2]=1;s=c[h>>2]|0;i=d;return s|0}_b(71438);ev(71438,l)|0;c[f>>2]=420;c[m>>2]=Tv(l,1089,f)|0;do if(-1!=(c[m>>2]|0)){if(c[17584]|0)Fv(c[17584]|0)|0;c[n>>2]=dw(c[m>>2]|0,2)|0;vv(c[m>>2]|0)|0;if(-1==(c[n>>2]|0)){c[m>>2]=-1;break}c[o>>2]=Ev(2,19230)|0;if(!(c[o>>2]|0)){vv(2)|0;c[m>>2]=-1}}while(0);if(-1!=(c[m>>2]|0)){c[17584]=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,19200,19233,c[r>>2]|0)|0;if(($b()|0)<=0){if(c[188]|0){r=yu(c[(gu()|0)>>2]|0)|0;c[e>>2]=38333;c[e+4>>2]=l;c[e+8>>2]=19200;c[e+12>>2]=392;c[e+16>>2]=r;bc(1,19376,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[70372+((((c[17592]|0)>>>0)%3|0)<<2)>>2];if(c[f>>2]|0){Uv(c[f>>2]|0)|0;Sb(c[f>>2]|0,19200,314)}f=Tb(c[e>>2]|0,19200,316)|0;c[70372+((((c[17592]|0)>>>0)%3|0)<<2)>>2]=f;c[17592]=(c[17592]|0)+1;i=d;return}function $b(){return c[17596]|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[17596]=(c[17596]|0)+(c[f>>2]|0);i=d;return}c[h>>2]=0==(c[17596]|0)&1;c[17596]=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,19200,19248,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]=19200;c[e+4>>2]=867;bc(1,61381,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[17590]|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]=(Eu(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,19200,19264,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[190]|0))Xb();c[l>>2]=19200;c[l+4>>2]=910;bc(1,61381,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=kd()|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=Uw(c[u>>2]|0,c[u+4>>2]|0,1e3,0)|0;u=c[y>>2]|0;e=Hw(u|0,((u|0)<0)<<31>>31|0,l|0,C|0)|0;c[y>>2]=e;do if(f){e=x;l=Lw(c[e>>2]|0,c[e+4>>2]|0,1e3,0)|0;e=Yw(l|0,C|0,1e3,0)|0;l=y+4|0;u=c[l>>2]|0;d=Hw(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=Gw(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=Lw(c[l>>2]|0,c[l+4>>2]|0,1e3,0)|0;l=Gw(0,0,u|0,C|0)|0;u=Yw(l|0,C|0,1e3,0)|0;l=C;b=x;D=Lw(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=Yw(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=Hw(e|0,((e|0)<0)<<31>>31|0,b|0,D|0)|0;c[u>>2]=l;break}else{l=Hw(1e6,0,b|0,D|0)|0;D=y+4|0;b=c[D>>2]|0;u=Hw(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))ev(q,19270)|0;else{Pa(r|0,64,19286,c[s>>2]|0)|0;c[k>>2]=c[y+4>>2];Du(q,64,r,k)|0}Eu(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=70304;if(0!=(c[m>>2]&32|0)&(0!=(c[s>>2]|0)?1:0!=(c[s+4>>2]|0))?0==(sv(v,75535,256)|0):0){c[17597]=(c[17597]|0)+1;c[h>>2]=c[17576];c[h+4>>2]=c[17577];s=od(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[17597]|0)>>>0>1e3)dc(q);c[A>>2]=1;E=c[w>>2]|0;Aa(E|0);i=g;return}dc(q);yv(75535,v,256)|0;c[17597]=0;c[17598]=c[m>>2];h=md()|0;z=B;c[z>>2]=h;c[z+4>>2]=C;c[17576]=c[B>>2];c[17577]=c[B+4>>2];yv(75791,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=70304;if((0==(c[b>>2]|0)?0==(c[b+4>>2]|0):0)|0==(c[17597]|0)){i=d;return}c[k>>2]=0;c[l>>2]=Mu(75535,0,256)|0;if(c[l>>2]|0){if((c[l>>2]|0)!=75535)c[l>>2]=(c[l>>2]|0)+-1}else c[l>>2]=75790;if((a[c[l>>2]>>0]|0)==10){c[k>>2]=1;a[c[l>>2]>>0]=0};c[e>>2]=c[17576];c[e+4>>2]=c[17577];b=od(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]=fd(e,1)|0;e=c[17597]|0;n=c[m>>2]|0;c[f>>2]=256;c[f+4>>2]=75535;c[f+8>>2]=e;c[f+12>>2]=n;Du(h,576,19307,f)|0;if((c[k>>2]|0)==1)a[c[l>>2]>>0]=10;ec(c[17598]|0,75791,c[g>>2]|0,h);h=md()|0;g=o;c[g>>2]=h;c[g+4>>2]=C;c[17576]=c[o>>2];c[17577]=c[o+4>>2];c[17597]=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[17584]|0)&0==(c[17599]|0)){e=c[17584]|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;qv(e,19364,g)|0;Gv(c[17584]|0)|0}c[n>>2]=c[17599];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]=19181;break}if((c[e>>2]&4|0)>0){c[d>>2]=19176;break}if((c[e>>2]&8|0)>0){c[d>>2]=19170;break}if(!(c[e>>2]&-33)){c[d>>2]=19195;break}else{c[d>>2]=19356;break}}else c[d>>2]=19189;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[17585];c[m>>2]=e;e=c[k>>2]|0;k=Lv()|0;c[g>>2]=e;c[g+4>>2]=k;Ub(n,128,19217,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(ae(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,19426,19462,c[u>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[194]|0))Xb();c[k>>2]=19426;c[k+4>>2]=136;bc(1,61381,k);Xb()}Xd(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(!(ae(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){Xd(c[r>>2]|0);Tw(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,19426,19462,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[198]|0))Xb();c[h>>2]=19426;c[h+4>>2]=140;bc(1,61381,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(Wd(c[k>>2]|0,9,2,0)|0){c[o>>2]=68;if((c[191]|0)==-1)c[191]=Yb(1,0,19426,19445,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[191]|0))Xb();c[h>>2]=19426;c[h+4>>2]=68;bc(1,61381,h);Xb()}c[n>>2]=Yd(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,19426,19445,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[192]|0))Xb();c[g>>2]=19426;c[g+4>>2]=72;bc(1,61381,g);Xb()}c[n>>2]=$d(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,19426,19445,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[193]|0))Xb();c[f>>2]=19426;c[f+4>>2]=76;bc(1,61381,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(Wd(c[k>>2]|0,10,2,0)|0){c[o>>2]=98;if((c[195]|0)==-1)c[195]=Yb(1,0,19426,19494,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[195]|0))Xb();c[h>>2]=19426;c[h+4>>2]=98;bc(1,61381,h);Xb()}c[n>>2]=Yd(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,19426,19494,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[196]|0))Xb();c[g>>2]=19426;c[g+4>>2]=102;bc(1,61381,g);Xb()}c[n>>2]=$d(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,19426,19494,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[197]|0))Xb();c[f>>2]=19426;c[f+4>>2]=106;bc(1,61381,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(be(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,19426,19515,c[u>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[199]|0))Xb();c[k>>2]=19426;c[k+4>>2]=171;bc(1,61381,k);Xb()}Xd(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(!(be(c[r>>2]|0,c[q>>2]|0,c[n>>2]|0,e,c[n>>2]|0)|0)){Xd(c[r>>2]|0);Tw(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,19426,19515,c[v>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[200]|0))Xb();c[h>>2]=19426;c[h+4>>2]=175;bc(1,61381,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,19589,19706,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[203]|0))Xb();c[g>>2]=19589;c[g+4>>2]=257;bc(1,61381,g);Xb()}if(Nd(m,c[l>>2]|0,0)|0){c[p>>2]=258;if((c[204]|0)==-1)c[204]=Yb(1,0,19589,19706,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[204]|0))Xb();c[f>>2]=19589;c[f+4>>2]=258;bc(1,61381,f);Xb()}zd(c[l>>2]|0);c[n>>2]=Od(19618,c[m>>2]|0,0)|0;if(c[n>>2]|0){Cc(c[k>>2]|0,32,c[n>>2]|0);Fd(c[n>>2]|0);te(c[m>>2]|0);i=d;return}c[q>>2]=261;if((c[205]|0)==-1)c[205]=Yb(1,0,19589,19706,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[205]|0))Xb();c[e>>2]=19589;c[e+4>>2]=261;bc(1,61381,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]=yd(h,0,19626,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,20821,19589,19681,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[201]|0){l=rd(c[k>>2]|0)|0;c[e>>2]=19602;c[e+4>>2]=19589;c[e+8>>2]=169;c[e+12>>2]=l;gc(1,20821,20399,e)}}else ac(-1,0);c[m>>2]=170;if((c[202]|0)==-1)c[202]=Yb(1,0,19589,19681,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[202]|0))Xb();c[d>>2]=19589;c[d+4>>2]=170;bc(1,61381,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,19589,19766,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[208]|0))Xb();c[g>>2]=19589;c[g+4>>2]=283;bc(1,61381,g);Xb()}if(Nd(m,c[l>>2]|0,0)|0){c[p>>2]=284;if((c[209]|0)==-1)c[209]=Yb(1,0,19589,19766,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[209]|0))Xb();c[f>>2]=19589;c[f+4>>2]=284;bc(1,61381,f);Xb()}zd(c[l>>2]|0);c[n>>2]=Od(19618,c[m>>2]|0,0)|0;if(c[n>>2]|0){Cc(c[k>>2]|0,32,c[n>>2]|0);Fd(c[n>>2]|0);te(c[m>>2]|0);i=d;return}c[q>>2]=287;if((c[210]|0)==-1)c[210]=Yb(1,0,19589,19766,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[210]|0))Xb();c[e>>2]=19589;c[e+4>>2]=287;bc(1,61381,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]=yd(h,0,19547,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,20821,19589,19741,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[206]|0){l=rd(c[k>>2]|0)|0;c[e>>2]=19602;c[e+4>>2]=19589;c[e+8>>2]=202;c[e+12>>2]=l;gc(1,20821,20399,e)}}else ac(-1,0);c[m>>2]=203;if((c[207]|0)==-1)c[207]=Yb(1,0,19589,19741,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[207]|0))Xb();c[d>>2]=19589;c[d+4>>2]=203;bc(1,61381,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=yd(k,0,19801,a)|0;c[m>>2]=q;if(q){c[n>>2]=505;if((c[211]|0)==-1)c[211]=Yb(1,20821,19589,19856,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[211]|0){n=rd(c[m>>2]|0)|0;c[e>>2]=19602;c[e+4>>2]=19589;c[e+8>>2]=505;c[e+12>>2]=n;gc(1,20821,20399,e)}}else ac(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=fe(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,20821,19589,19856,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[212]|0){o=rd(c[m>>2]|0)|0;c[d>>2]=19887;c[d+4>>2]=19589;c[d+8>>2]=510;c[d+12>>2]=o;gc(1,20821,20399,d)}}else ac(-1,0);zd(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}zd(c[k>>2]|0);k=qc(l,c[h>>2]|0,37724,35287)|0;c[m>>2]=k;if(!k){zd(c[h>>2]|0);c[g>>2]=Qb(32,19589,530)|0;Cc(c[g>>2]|0,32,c[l>>2]|0);Fd(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,20821,19589,19856,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[213]|0){p=rd(c[m>>2]|0)|0;c[b>>2]=19902;c[b+4>>2]=19589;c[b+8>>2]=525;c[b+12>>2]=p;gc(1,20821,20399,b)}}else ac(-1,0);zd(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]=Bd(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]=Cd(c[o>>2]|0)|0;zd(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]=Bd(u,c[q>>2]|0,1)|0;if(!(c[p>>2]|0)){v=8;break}n=Dd(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;zd(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;ve(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}zd(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;ve(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}zd(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){zd(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=yd(k,0,19916,a)|0;c[m>>2]=q;if(q){c[n>>2]=604;if((c[214]|0)==-1)c[214]=Yb(1,20821,19589,19960,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[214]|0){n=rd(c[m>>2]|0)|0;c[e>>2]=19602;c[e+4>>2]=19589;c[e+8>>2]=604;c[e+12>>2]=n;gc(1,20821,20399,e)}}else ac(-1,0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}e=fe(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,20821,19589,19960,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[215]|0){o=rd(c[m>>2]|0)|0;c[d>>2]=19887;c[d+4>>2]=19589;c[d+8>>2]=609;c[d+12>>2]=o;gc(1,20821,20399,d)}}else ac(-1,0);zd(c[k>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=a;return r|0}zd(c[k>>2]|0);k=qc(l,c[h>>2]|0,37724,35287)|0;c[m>>2]=k;if(!k){zd(c[h>>2]|0);c[g>>2]=Qb(32,19589,629)|0;Cc(c[g>>2]|0,32,c[l>>2]|0);Fd(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,20821,19589,19960,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[216]|0){p=rd(c[m>>2]|0)|0;c[b>>2]=19902;c[b+4>>2]=19589;c[b+8>>2]=624;c[b+12>>2]=p;gc(1,20821,20399,b)}}else ac(-1,0);zd(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=ce(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,20821,19589,20055,c[s>>2]|0)|0;if(($b()|0)<=0){if(c[218]|0){s=rd(c[q>>2]|0)|0;c[g>>2]=19589;c[g+4>>2]=807;c[g+8>>2]=s;gc(2,20821,20080,g)}}else ac(-1,0);zd(c[p>>2]|0);zd(c[n>>2]|0);c[h>>2]=-1;u=c[h>>2]|0;i=e;return u|0}zd(c[n>>2]|0);zd(c[p>>2]|0);p=qc(r,c[o>>2]|0,37586,46947)|0;c[q>>2]=p;if(!p){zd(c[o>>2]|0);Cc(c[m>>2]|0,32,c[r>>2]|0);Cc((c[m>>2]|0)+32|0,32,c[r+4>>2]|0);Fd(c[r>>2]|0);Fd(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,19589,20055,c[t>>2]|0)|0;if(($b()|0)<=0){if(c[219]|0){c[f>>2]=19589;c[f+4>>2]=819;bc(1,61381,f)}}else ac(-1,0);zd(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,xv(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)|0,k);c[f>>2]=37644;c[f+4>>2]=64;c[f+8>>2]=k;k=yd(l,0,19991,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,20821,19589,20035,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[217]|0){n=rd(c[m>>2]|0)|0;c[e>>2]=19602;c[e+4>>2]=19589;c[e+8>>2]=698;c[e+12>>2]=n;gc(1,20821,20399,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)!=(xv(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=yd(t,0,20154,m)|0;c[v>>2]=f;if(f){c[w>>2]=918;if((c[220]|0)==-1)c[220]=Yb(1,20821,19589,20183,c[w>>2]|0)|0;if(($b()|0)<=0){if(c[220]|0){w=rd(c[v>>2]|0)|0;c[l>>2]=19602;c[l+4>>2]=19589;c[l+8>>2]=918;c[l+12>>2]=w;gc(1,20821,20399,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=yd(u,0,20210,k)|0;c[v>>2]=p;if(p){zd(c[s>>2]|0);zd(c[t>>2]|0);c[n>>2]=-1;y=c[n>>2]|0;i=g;return y|0}c[v>>2]=de(c[t>>2]|0,c[s>>2]|0,c[u>>2]|0)|0;zd(c[u>>2]|0);zd(c[s>>2]|0);zd(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,20821,19589,20183,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[221]|0){x=rd(c[v>>2]|0)|0;c[h>>2]=19589;c[h+4>>2]=938;c[h+8>>2]=x;gc(4,20821,20262,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(yd(u,0,20115,l)|0){c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}if(Nd(t,c[u>>2]|0,0)|0){c[y>>2]=972;if((c[222]|0)==-1)c[222]=Yb(1,0,19589,20312,c[y>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[222]|0))Xb();c[k>>2]=19589;c[k+4>>2]=972;bc(1,61381,k);Xb()}zd(c[u>>2]|0);c[r>>2]=Pd(49661,c[t>>2]|0,0)|0;Ec(s,c[n>>2]|0,32);c[q>>2]=Ld(0)|0;Rd(c[q>>2]|0,c[s>>2]|0,c[r>>2]|0,c[t>>2]|0);Md(c[r>>2]|0);Fd(c[s>>2]|0);c[v>>2]=Ed(256)|0;if(Qd(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,20821,19589,20312,c[z>>2]|0)|0;if(($b()|0)<=0){if(c[223]|0){z=rd(0)|0;c[h>>2]=20335;c[h+4>>2]=19589;c[h+8>>2]=989;c[h+12>>2]=z;gc(1,20821,20399,h)}}else ac(-1,0);Md(c[q>>2]|0);te(c[t>>2]|0);c[m>>2]=-1;C=c[m>>2]|0;i=e;return C|0}Md(c[q>>2]|0);te(c[t>>2]|0);c[x>>2]=32;if(Vd(c[v>>2]|0,2)|0){c[A>>2]=998;if((c[224]|0)==-1)c[224]=Yb(1,0,19589,20312,c[A>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[224]|0))Xb();c[g>>2]=19589;c[g+4>>2]=998;bc(1,61381,g);Xb()}if(!(Hd(1,w,c[x>>2]|0,x,c[v>>2]|0)|0)){wc(w,c[x>>2]|0,c[p>>2]|0);Fd(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,19589,20312,c[B>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[225]|0))Xb();c[f>>2]=19589;c[f+4>>2]=1005;bc(1,61381,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;me(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=Gc(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]=oe(c[s>>2]|0)|0;c[F>>2]=oe(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(ge(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(ge(z,c[s>>2]|0,2)|0){he(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}Tw(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;Pw(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{Pw(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;Pw(r|0,(c[p>>2]|0)+(0-(c[E>>2]|0))|0,c[E>>2]|0)|0;Tw(r+(c[E>>2]|0)+(c[I>>2]|0)|0,(c[B>>2]|0)+1&255|0,1)|0;je(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}Pw(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){Pw(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}Tw(r+(c[E>>2]|0)+(c[I>>2]|0)|0,c[B>>2]&255|0,1)|0;je(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{Pw(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;he(c[y>>2]|0);he(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;Pw(p|0,q|0,oe(ne(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;pe(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;ke(c[h>>2]|0,c[m>>2]|0,c[n>>2]|0);n=le(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){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(Vd(c[m>>2]|0,2)|0){c[q>>2]=Ud(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];Pw(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}Tw((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[226]|0)==-1)c[226]=Yb(1,0,20353,20366,c[r>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[226]|0))Xb();c[h>>2]=20353;c[h+4>>2]=89;bc(1,61381,h);Xb()}c[n>>2]=c[l>>2];h=Hd(5,c[k>>2]|0,c[n>>2]|0,n,c[m>>2]|0)|0;c[o>>2]=h;if(!h){Dc(c[k>>2]|0,c[n>>2]|0,c[l>>2]|0);i=e;return}c[s>>2]=110;if((c[227]|0)==-1)c[227]=Yb(1,20821,20353,20366,c[s>>2]|0)|0;if(($b()|0)<=0){if(c[227]|0){s=rd(c[o>>2]|0)|0;c[g>>2]=20436;c[g+4>>2]=20353;c[g+8>>2]=110;c[g+12>>2]=s;gc(1,20821,20399,g)}}else ac(-1,0);c[t>>2]=111;if((c[228]|0)==-1)c[228]=Yb(1,0,20353,20366,c[t>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[228]|0))Xb();c[f>>2]=20353;c[f+4>>2]=111;bc(1,61381,f);Xb()}function Dc(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}Rw((c[k>>2]|0)+((c[h>>2]|0)-(c[g>>2]|0))|0,c[f>>2]|0,c[g>>2]|0)|0;Tw(c[f>>2]|0,0,(c[h>>2]|0)-(c[g>>2]|0)|0)|0;i=e;return}function Ec(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=Gd(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[229]|0)==-1)c[229]=Yb(1,20821,20353,20451,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[229]|0){n=rd(c[m>>2]|0)|0;c[g>>2]=20483;c[g+4>>2]=20353;c[g+8>>2]=140;c[g+12>>2]=n;gc(1,20821,20399,g)}}else ac(-1,0);c[o>>2]=141;if((c[230]|0)==-1)c[230]=Yb(1,0,20353,20451,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[230]|0))Xb();c[f>>2]=20353;c[f+4>>2]=141;bc(1,61381,f);Xb()}function Fc(){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(vd(20497)|0){c[h>>2]=0;o=wd(37,h)|0;c[m>>2]=o;if(o|0){o=c[3956]|0;h=rd(c[m>>2]|0)|0;c[g>>2]=20650;c[g+4>>2]=h;qv(o,20611,g)|0}c[f>>2]=0;g=wd(44,f)|0;c[m>>2]=g;if(!g){c[d>>2]=0;wd(38,d)|0;c[b>>2]=0;wd(48,b)|0;p=ib(0)|0;q=Gc(2,-1)|0;r=p^q;Ic(r);i=a;return}g=c[3956]|0;f=rd(c[m>>2]|0)|0;c[e>>2]=20665;c[e+4>>2]=f;qv(g,20611,e)|0;c[d>>2]=0;wd(38,d)|0;c[b>>2]=0;wd(48,b)|0;p=ib(0)|0;q=Gc(2,-1)|0;r=p^q;Ic(r);i=a;return}a=c[3956]|0;c[l>>2]=20497;qv(a,20503,l)|0;c[n>>2]=286;if((c[231]|0)==-1)c[231]=Yb(1,0,20569,20585,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[231]|0))Xb();c[k>>2]=20569;c[k+4>>2]=286;bc(1,61381,k);Xb()}function Gc(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[232]|0)==-1)c[232]=Yb(1,0,20569,20685,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[232]|0))Xb();c[g>>2]=20569;c[g+4>>2]=157;bc(1,61381,g);Xb()}switch(c[k>>2]|0){case 1:{k=c[17600]|0;c[17600]=k+1;if(!((k>>>0)%256|0)){c[f>>2]=0;wd(48,f)|0}c[n>>2]=-1-(4294967295%((c[l>>2]|0)>>>0)|0);do qe(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 se(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*+Hc())>>>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[233]|0)==-1)c[233]=Yb(1,0,20569,20685,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[233]|0))Xb();c[e>>2]=20569;c[e+4>>2]=189;bc(1,61381,e);Xb()}}return 0}function Hc(){return +(+(mw()|0)/2147483647.0)}function Ic(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;kw(c[d>>2]|0);i=b;return}function Jc(){ue(0,0);return}function Kc(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(yd(l,0,20710,f)|0){c[m>>2]=155;if((c[234]|0)==-1)c[234]=Yb(1,0,20734,20747,c[m>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[234]|0))Xb();c[e>>2]=20734;c[e+4>>2]=155;bc(1,61381,e);Xb()}if(!(fe(k,c[l>>2]|0)|0)){zd(c[l>>2]|0);c[h>>2]=Qb(4,20734,164)|0;c[c[h>>2]>>2]=c[k>>2];i=b;return c[h>>2]|0}c[n>>2]=158;if((c[235]|0)==-1)c[235]=Yb(1,0,20734,20747,c[n>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[235]|0))Xb();c[d>>2]=20734;c[d+4>>2]=158;bc(1,61381,d);Xb();return 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;zd(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20734,179);i=b;return}function Mc(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]=Ad(c[c[f>>2]>>2]|0,0,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20734,202)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Ad(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[236]|0)==-1)c[236]=Yb(1,0,20734,20784,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[236]|0))Xb();c[e>>2]=20734;c[e+4>>2]=207;bc(1,61381,e);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;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,20734,226)|0;if(xd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[m>>2]=234;if((c[237]|0)==-1)c[237]=Yb(2,20821,20734,20826,c[m>>2]|0)|0;if(($b()|0)<=0){if(c[237]|0)gc(2,20821,20863,f)}else ac(-1,0);Sb(c[l>>2]|0,20734,235);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}if(!(ee(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[238]|0)==-1)c[238]=Yb(2,20821,20734,20826,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[238]|0)gc(2,20821,20863,e)}else ac(-1,0);Lc(c[l>>2]|0);c[g>>2]=0;o=c[g>>2]|0;i=d;return o|0}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,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]=Pc(k,c[c[g>>2]>>2]|0,37736,39149)|0;if(c[l>>2]|0)c[l>>2]=Pc(k,c[c[g>>2]>>2]|0,37724,39149)|0;if(c[l>>2]|0)c[l>>2]=Pc(k,c[c[g>>2]>>2]|0,39108,39149)|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]=yd(m,0,20986,d)|0;Fd(c[k>>2]|0);Fd(c[k+4>>2]|0);c[h>>2]=Qb(4,20734,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[239]|0)==-1)c[239]=Yb(2,0,20734,20897,c[n>>2]|0)|0;if(($b()|0)<=0){if(c[239]|0){c[e>>2]=20734;c[e+4>>2]=270;bc(34,20938,e)}}else ac(-1,0);c[f>>2]=0;o=c[f>>2]|0;i=b;return o|0}function Pc(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=Bd(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]=Cd(c[o>>2]|0)|0;zd(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=Bd(u,c[q>>2]|0,1)|0;c[p>>2]=n;if(!n){v=8;break}n=Dd(c[p>>2]|0,1,5)|0;c[(c[k>>2]|0)+(c[s>>2]<<2)>>2]=n;zd(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;ve(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}zd(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;ve(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}zd(c[o>>2]|0);c[h>>2]=4;t=c[h>>2]|0;i=g;return t|0}else if((v|0)==18){zd(u);c[h>>2]=0;t=c[h>>2]|0;i=g;return t|0}return 0}function Qc(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;zd(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20734,295);i=b;return}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;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]=Ad(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20734,318)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Ad(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[240]|0)==-1)c[240]=Yb(1,0,20734,21016,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[240]|0))Xb();c[e>>2]=20734;c[e+4>>2]=323;bc(1,61381,e);Xb();return 0}function Sc(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,20734,367)|0;if(xd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=374;if((c[241]|0)==-1)c[241]=Yb(2,0,20734,21052,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[241]|0){c[f>>2]=20734;c[f+4>>2]=374;bc(34,20938,f)}}else ac(-1,0);Sb(c[l>>2]|0,20734,375);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[n>>2]=Pc(m,c[c[l>>2]>>2]|0,37736,39163)|0;if(c[n>>2]|0)c[n>>2]=Pc(m,c[c[l>>2]>>2]|0,39108,39163)|0;if(!(c[n>>2]|0)){Fd(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[242]|0)==-1)c[242]=Yb(1,0,20734,21052,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[242]|0){c[e>>2]=20734;c[e+4>>2]=385;bc(1,61381,e)}}else ac(-1,0);zd(c[c[l>>2]>>2]|0);Sb(c[l>>2]|0,20734,387);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function Tc(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]=Qb(4,20734,406)|0;a=Ed(c[d>>2]|0)|0;c[c[e>>2]>>2]=a;re(c[c[e>>2]>>2]|0,c[d>>2]|0,1);i=b;return c[e>>2]|0}function Uc(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]=Ad(c[c[f>>2]>>2]|0,3,0,0)|0;c[k>>2]=Qb(c[h>>2]|0,20734,968)|0;b=(c[h>>2]|0)-1|0;if((b|0)==(Ad(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]=973;if((c[243]|0)==-1)c[243]=Yb(1,0,20734,21088,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[243]|0))Xb();c[e>>2]=20734;c[e+4>>2]=973;bc(1,61381,e);Xb();return 0}function Vc(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;e=b+28|0;f=b+24|0;g=b+20|0;h=b+16|0;k=b+12|0;l=b+8|0;c[f>>2]=a;c[h>>2]=Pc(g,c[c[f>>2]>>2]|0,39108,39163)|0;if(!(c[h>>2]|0)){c[k>>2]=Sd(c[g>>2]|0)|0;Fd(c[g>>2]|0);c[e>>2]=c[k>>2];m=c[e>>2]|0;i=b;return m|0}c[l>>2]=547;if((c[244]|0)==-1)c[244]=Yb(1,0,20734,21123,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[244]|0){c[d>>2]=20734;c[d+4>>2]=547;bc(1,61381,d)}}else ac(-1,0);c[e>>2]=0;m=c[e>>2]|0;i=b;return m|0}function Wc(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;Fd(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20734,565);i=b;return}function Xc(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=Yc(c[c[e>>2]>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Yc(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;Hd(5,0,0,h,c[f>>2]|0)|0;c[k>>2]=Qb(c[h>>2]|0,20734,589)|0;if(!(Hd(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]=595;if((c[245]|0)==-1)c[245]=Yb(1,0,20734,21156,c[l>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[245]|0))Xb();c[e>>2]=20734;c[e+4>>2]=595;bc(1,61381,e);Xb();return 0}function Zc(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;f=d+28|0;g=d+24|0;h=d+20|0;k=d+16|0;l=d+8|0;c[g>>2]=a;c[h>>2]=b;c[k>>2]=Qb(4,20734,632)|0;if(!(Gd(c[k>>2]|0,5,c[g>>2]|0,c[h>>2]|0,d+12|0)|0)){c[f>>2]=c[k>>2];m=c[f>>2]|0;i=d;return m|0}c[l>>2]=640;if((c[246]|0)==-1)c[246]=Yb(2,0,20734,21182,c[l>>2]|0)|0;if(($b()|0)<=0){if(c[246]|0){c[e>>2]=20734;c[e+4>>2]=640;bc(34,20938,e)}}else ac(-1,0);Sb(c[k>>2]|0,20734,641);c[f>>2]=0;m=c[f>>2]|0;i=d;return m|0}function _c(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+56|0;k=g+52|0;l=g+48|0;m=g+44|0;n=g+40|0;o=g+36|0;p=g+32|0;q=g+28|0;r=g+24|0;s=g+20|0;t=g+16|0;u=g+12|0;v=g+8|0;w=g+4|0;x=g;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;f=Vc(c[m>>2]|0)|0;c[p>>2]=f;c[p>>2]=(c[p>>2]|0)>>>0<512?512:f;c[r>>2]=ge(u,10,0)|0;if(c[r>>2]|0){c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}c[t>>2]=Rc(c[m>>2]|0,s)|0;ke(c[u>>2]|0,c[s>>2]|0,c[t>>2]|0);Sb(c[s>>2]|0,20734,702);c[q>>2]=((((c[p>>2]|0)-1|0)>>>0)/512|0)+1;c[w>>2]=Qb(c[q>>2]<<6,20734,706)|0;c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[q>>2]|0)>>>0)break;ke(c[u>>2]|0,c[l>>2]|0,64);c[r>>2]=ie(v,c[u>>2]|0)|0;z=c[v>>2]|0;if(c[r>>2]|0){A=6;break}c[x>>2]=z;if((c[(c[x>>2]|0)+4>>2]|0)==(c[(c[x>>2]|0)+8>>2]|0))ke(c[x>>2]|0,0,0);s=(((c[o>>2]|0)>>>0)%256|0)&255;t=(c[x>>2]|0)+4|0;m=c[t>>2]|0;c[t>>2]=m+1;a[(c[x>>2]|0)+12+m>>0]=s;s=(c[w>>2]|0)+(c[o>>2]<<6)|0;m=s;s=le(c[v>>2]|0,10)|0;t=m+64|0;do{a[m>>0]=a[s>>0]|0;m=m+1|0;s=s+1|0}while((m|0)<(t|0));he(c[v>>2]|0);c[o>>2]=(c[o>>2]|0)+1}if((A|0)==6)he(z);he(c[u>>2]|0);if(c[r>>2]|0){Sb(c[w>>2]|0,20734,725);c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}c[r>>2]=Gd(c[k>>2]|0,5,c[w>>2]|0,c[q>>2]<<6,c[n>>2]|0)|0;Sb(c[w>>2]|0,20734,734);if(c[r>>2]|0){c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}else{Td(c[c[k>>2]>>2]|0,(c[p>>2]|0)-2|0);c[h>>2]=c[r>>2];y=c[h>>2]|0;i=g;return y|0}return 0}function $c(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+8|0;h=f;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+48|0;r=f+44|0;s=f+40|0;t=f+36|0;u=f+32|0;v=f+28|0;w=f+24|0;x=f+20|0;y=f+16|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[w>>2]=Pc(q,c[c[n>>2]>>2]|0,37736,39149)|0;if(c[w>>2]|0)c[w>>2]=Pc(q,c[c[n>>2]>>2]|0,39108,39149)|0;if(c[w>>2]|0){c[x>>2]=775;if((c[247]|0)==-1)c[247]=Yb(1,0,20734,21220,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[247]|0){c[h>>2]=20734;c[h+4>>2]=775;bc(1,61381,h)}}else ac(-1,0);c[c[o>>2]>>2]=0;c[k>>2]=0;z=c[k>>2]|0;i=f;return z|0}c[v>>2]=_c(p,c[l>>2]|0,c[n>>2]|0,t)|0;if(!(c[v>>2]|0)){c[r>>2]=Ed(0)|0;Jd(c[r>>2]|0,c[c[m>>2]>>2]|0,c[q+4>>2]|0,c[q>>2]|0);c[s>>2]=Ed(0)|0;Id(c[s>>2]|0,c[p>>2]|0,c[r>>2]|0,c[q>>2]|0);Fd(c[p>>2]|0);Fd(c[q>>2]|0);Fd(c[q+4>>2]|0);Fd(c[r>>2]|0);c[u>>2]=Yc(c[s>>2]|0,c[o>>2]|0)|0;Fd(c[s>>2]|0);c[k>>2]=c[u>>2];z=c[k>>2]|0;i=f;return z|0}c[y>>2]=783;if((c[248]|0)==-1)c[248]=Yb(1,0,20734,21220,c[y>>2]|0)|0;if(($b()|0)<=0){if(c[248]|0){c[g>>2]=20734;c[g+4>>2]=783;bc(1,61381,g)}}else ac(-1,0);Fd(c[q>>2]|0);Fd(c[q+4>>2]|0);c[c[o>>2]>>2]=0;c[k>>2]=0;z=c[k>>2]|0;i=f;return z|0}function ad(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(!(yd(g,0,21244,e)|0)){i=b;return c[g>>2]|0}c[h>>2]=825;if((c[249]|0)==-1)c[249]=Yb(1,0,20734,21274,c[h>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[249]|0))Xb();c[d>>2]=20734;c[d+4>>2]=825;bc(1,61381,d);Xb();return 0}function bd(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;zd(c[c[d>>2]>>2]|0);Sb(c[d>>2]|0,20734,946);i=b;return}function cd(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,20734,995)|0;if(xd(c[l>>2]|0,c[h>>2]|0,c[k>>2]|0,0)|0){c[o>>2]=1002;if((c[250]|0)==-1)c[250]=Yb(2,0,20734,21286,c[o>>2]|0)|0;if(($b()|0)<=0){if(c[250]|0){c[f>>2]=20734;c[f+4>>2]=1002;bc(34,20938,f)}}else ac(-1,0);Sb(c[l>>2]|0,20734,1003);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}c[m>>2]=Pc(n,c[c[l>>2]>>2]|0,37586,39161)|0;if(c[m>>2]|0)c[m>>2]=Pc(n,c[c[l>>2]>>2]|0,39108,39161)|0;if(!(c[m>>2]|0)){Fd(c[n>>2]|0);c[g>>2]=c[l>>2];q=c[g>>2]|0;i=d;return q|0}c[p>>2]=1013;if((c[251]|0)==-1)c[251]=Yb(2,0,20734,21286,c[p>>2]|0)|0;if(($b()|0)<=0){if(c[251]|0){c[e>>2]=20734;c[e+4>>2]=1013;bc(34,20938,e)}}else ac(-1,0);zd(c[c[l>>2]>>2]|0);Sb(c[l>>2]|0,20734,1015);c[g>>2]=0;q=c[g>>2]|0;i=d;return q|0}function dd(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+96|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+92|0;n=e+88|0;o=e+84|0;p=e+80|0;q=e+76|0;r=e+72|0;s=e+68|0;t=e+64|0;u=e+60|0;v=e+56|0;w=e+52|0;x=e+48|0;y=e+44|0;z=e+40|0;c[n>>2]=a;c[o>>2]=b;c[p>>2]=d;c[u>>2]=Pc(q,c[c[p>>2]>>2]|0,37736,39163)|0;if(c[u>>2]|0)c[u>>2]=Pc(q,c[c[p>>2]>>2]|0,39108,39163)|0;if(c[u>>2]|0){c[w>>2]=1075;if((c[252]|0)==-1)c[252]=Yb(2,0,20734,21321,c[w>>2]|0)|0;if(($b()|0)<=0){if(c[252]|0){c[l>>2]=20734;c[l+4>>2]=1075;bc(34,20938,l)}}else ac(-1,0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[u>>2]=Pc(r,c[c[n>>2]>>2]|0,37586,39161)|0;if(c[u>>2]|0)c[u>>2]=Pc(r,c[c[n>>2]>>2]|0,39108,39161)|0;if(c[u>>2]|0){Fd(c[q>>2]|0);c[x>>2]=1084;if((c[253]|0)==-1)c[253]=Yb(2,0,20734,21321,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[253]|0){c[k>>2]=20734;c[k+4>>2]=1084;bc(34,20938,k)}}else ac(-1,0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[s>>2]=Ed(0)|0;if(1!=(Kd(c[s>>2]|0,c[c[o>>2]>>2]|0,c[q>>2]|0)|0)){c[y>>2]=1093;if((c[254]|0)==-1)c[254]=Yb(2,0,20734,21321,c[y>>2]|0)|0;if(($b()|0)<=0){if(c[254]|0){c[h>>2]=20734;c[h+4>>2]=1093;bc(34,20938,h)}}else ac(-1,0);Fd(c[q>>2]|0);Fd(c[s>>2]|0);Fd(c[r>>2]|0);c[m>>2]=0;A=c[m>>2]|0;i=e;return A|0}c[t>>2]=Ed(0)|0;Id(c[t>>2]|0,c[r>>2]|0,c[s>>2]|0,c[q>>2]|0);Fd(c[q>>2]|0);Fd(c[s>>2]|0);Fd(c[r>>2]|0);c[v>>2]=Qb(4,20734,1105)|0;r=c[v>>2]|0;c[g>>2]=c[t>>2];if(!(yd(r,0,21347,g)|0)){Fd(c[t>>2]|0);c[m>>2]=c[v>>2];A=c[m>>2]|0;i=e;return A|0}c[z>>2]=1110;if((c[255]|0)==-1)c[255]=Yb(1,0,20734,21321,c[z>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[255]|0))Xb();c[f>>2]=20734;c[f+4>>2]=1110;bc(1,61381,f);Xb();return 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;e=i;i=i+64|0;if((i|0)>=(j|0))U();f=e+8|0;g=e;h=e+52|0;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;r=e+20|0;c[k>>2]=a;c[l>>2]=b;c[m>>2]=d;c[p>>2]=_c(o,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[p>>2]|0){c[q>>2]=1135;if((c[256]|0)==-1)c[256]=Yb(1,0,20734,21370,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[256]|0))Xb();c[g>>2]=20734;c[g+4>>2]=1135;bc(1,61381,g);Xb()}c[n>>2]=ad(c[o>>2]|0)|0;Fd(c[o>>2]|0);c[p>>2]=de(c[c[l>>2]>>2]|0,c[n>>2]|0,c[c[m>>2]>>2]|0)|0;zd(c[n>>2]|0);if(!(c[p>>2]|0)){c[h>>2]=1;s=c[h>>2]|0;i=e;return s|0}c[r>>2]=1149;if((c[257]|0)==-1)c[257]=Yb(2,20821,20734,21370,c[r>>2]|0)|0;if(($b()|0)<=0){if(c[257]|0){r=rd(c[p>>2]|0)|0;c[f>>2]=20734;c[f+4>>2]=1148;c[f+8>>2]=r;gc(2,20821,21395,f)}}else ac(-1,0);c[h>>2]=-1;s=c[h>>2]|0;i=e;return s|0}function fd(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]=21483;b=a;m=c[b+4>>2]|0;n=k;c[n>>2]=c[b>>2];c[n+4>>2]=m;m=ld()|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]=21461;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]=21487;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=Sw(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=Ww(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]=21469;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=Sw(c[a>>2]|0,c[a+4>>2]|0,1e3,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Ww(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]=39161;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=Sw(c[l>>2]|0,c[l+4>>2]|0,60,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Ww(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]=21472;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=Sw(c[a>>2]|0,c[a+4>>2]|0,60,0)|0,!(0==(l|0)&0==(C|0))):0)break;l=k;a=Ww(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]=35285;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=Sw(c[l>>2]|0,c[l+4>>2]|0,24,0)|0,!(0==(a|0)&0==(C|0))):0)break;a=k;l=Ww(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]=21474;break}else{c[h>>2]=21478;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(75824,128,21453,e)|0;c[f>>2]=75824;o=c[f>>2]|0;i=d;return o|0}function gd(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[258]|0)==-1)c[258]=Yb(1,0,21443,21492,c[y>>2]|0)|0;if(($b()|0)<=0){if(c[258]|0){c[n>>2]=21443;c[n+4>>2]=873;bc(1,61381,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[261]|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[259]|0)==-1)c[259]=Yb(1,0,21443,21492,c[z>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[259]|0))Xb();c[m>>2]=21443;c[m+4>>2]=890;bc(1,61381,m);Xb()}else if((D|0)==24){c[A>>2]=895;if((c[260]|0)==-1)c[260]=Yb(1,0,21443,21492,c[A>>2]|0)|0;if(($b()|0)<=0){if(c[260]|0){c[l>>2]=21443;c[l+4>>2]=895;bc(1,61381,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[262]|0)==-1)c[262]=Yb(1,0,21443,21492,c[B>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[262]|0))Xb();c[k>>2]=21443;c[k+4>>2]=901;bc(1,61381,k);Xb()}return 0}function hd(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,21443,929)|0;c[m>>2]=gd(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,21443,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 id(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=jd(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=jd(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=jd(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[263]|0)==-1)c[263]=Yb(1,0,21443,21555,c[x>>2]|0)|0;if(($b()|0)<=0){if(c[263]|0){c[h>>2]=21443;c[h+4>>2]=993;bc(1,61381,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 jd(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]=Tu(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 kd(){var a=0;a=70312;C=c[a+4>>2]|0;return c[a>>2]|0}function ld(){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 md(){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=Yw(f|0,((f|0)<0)<<31>>31|0,1e3,0)|0;f=Yw(g|0,C|0,1e3,0)|0;g=c[e+4>>2]|0;e=Hw(f|0,C|0,g|0,((g|0)<0)<<31>>31|0)|0;g=70312;f=Hw(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 nd(){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[17580];c[b+4>>2]=c[17581];d=b;C=c[d+4>>2]|0;i=a;return c[d>>2]|0}function od(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=md()|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=nd()|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=Gw(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 pd(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=tv(c[e>>2]|0)|0;f=Hw(0,b|0,tv(c[e+4>>2]|0)|0,0)|0;i=d;return f|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=xv(c[e>>2]|0)|0;f=Hw(0,b|0,xv(c[e+4>>2]|0)|0,0)|0;i=d;return f|0}function rd(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=sd(c[d>>2]|0)|0;i=b;return a|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=pt(c[d>>2]|0)|0;i=b;return a|0}function td(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 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=td(1,c[d>>2]|0)|0;i=b;return a|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=Ue(c[d>>2]|0)|0;i=b;return a|0}function wd(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]=ud(Xe(c[e>>2]|0,g)|0)|0;i=d;return c[f>>2]|0}function xd(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=ud(Ef(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;i=f;return e|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,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]=Rf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,m)|0;m=ud(c[l>>2]|0)|0;i=f;return m|0}function zd(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;Df(c[d>>2]|0);i=b;return}function Ad(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=Tf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function Bd(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=Ff(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|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;a=Pf(c[d>>2]|0)|0;i=b;return a|0}function Dd(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=Nf(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Ed(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=Fp(c[d>>2]|0)|0;i=b;return a|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;Hp(c[d>>2]|0);i=b;return}function Gd(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=ud(No(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 Hd(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=ud(Ro(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 Id(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 Jd(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;Go(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Kd(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=zo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Ld(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=ln(c[d>>2]|0)|0;i=b;return a|0}function Md(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;nn(c[d>>2]|0);i=b;return}function Nd(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=ud(Ih(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)|0;i=e;return d|0}function Od(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 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=yn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Qd(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=gn(e,g,h,dh(c[l>>2]|0,1)|0)|0;i=f;return k|0}function Rd(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;Pn(e,g,h,dh(c[l>>2]|0,1)|0);i=f;return}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=_n(c[d>>2]|0)|0;i=b;return a|0}function Td(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 Ud(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=up(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|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=Jp(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function Wd(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=(Se()|0)!=0;d=c[h>>2]|0;if(e){c[g>>2]=ud(ih(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]=ud(176)|0;n=c[g>>2]|0;i=f;return n|0}return 0}function Xd(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;nh(c[d>>2]|0);i=b;return}function Yd(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(Se()|0){c[f>>2]=Zd(vh(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]=ud(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function Zd(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=_d(32,c[d>>2]|0)|0;i=b;return a|0}function _d(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=td(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}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(Se()|0){c[f>>2]=Zd(xh(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]=ud(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function ae(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(Se()|0){c[h>>2]=ud(oh(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)Tw(c[l>>2]|0,66,c[m>>2]|0)|0;c[h>>2]=ud(176)|0;p=c[h>>2]|0;i=g;return p|0}function be(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(Se()|0){c[h>>2]=ud(sh(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]=ud(176)|0;p=c[h>>2]|0;i=g;return p|0}return 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;d=(Se()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=ud(Kj(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]=ud(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function de(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(Se()|0){c[f>>2]=ud(Lj(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]=ud(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function ee(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(Se()|0){c[d>>2]=ud(Mj(c[e>>2]|0)|0)|0;f=c[d>>2]|0;i=b;return f|0}else{c[d>>2]=ud(176)|0;f=c[d>>2]|0;i=b;return f|0}return 0}function fe(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=(Se()|0)!=0;a=c[f>>2]|0;if(b){c[e>>2]=ud(Nj(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]=ud(176)|0;h=c[e>>2]|0;i=d;return h|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;d=(Se()|0)!=0;b=c[g>>2]|0;if(d){c[f>>2]=ud(Ei(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]=ud(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;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;Oi(c[d>>2]|0);i=b;return}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=(Se()|0)!=0;a=c[f>>2]|0;if(b){c[e>>2]=ud(Ki(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]=ud(176)|0;h=c[e>>2]|0;i=d;return h|0}return 0}function je(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 ke(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(!(Se()|0)){i=e;return}Pi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function le(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 me(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(!(Se()|0))Rg(21585,1175,21598,0,21618);Xi(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function ne(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(Se()|0){c[d>>2]=bj(c[e>>2]|0)|0;f=c[d>>2]|0;i=b;return f|0}else{Rg(21585,1198,21650,0,21667);c[d>>2]=0;f=c[d>>2]|0;i=b;return f|0}return 0}function oe(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=cj(c[d>>2]|0)|0;i=b;return a|0}function pe(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(Se()|0){c[f>>2]=ud(Vi(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]=ud(176)|0;l=c[f>>2]|0;i=e;return l|0}return 0}function qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;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(!(Se()|0)){Rg(21585,1287,21697,1,21618);Ng()}Ym(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function re(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;Ip(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function se(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(!(Se()|0)){Rg(21585,1340,21712,1,21618);Ng()}an(c[e>>2]|0,c[f>>2]|0);i=d;return}function te(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;eh(c[d>>2]|0);i=b;return}function ue(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;sf(c[e>>2]|0,c[f>>2]|0);i=d;return}function ve(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;gf(c[d>>2]|0);i=b;return}function we(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[17601]|0){c[d>>2]=wb[c[17601]&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 xe(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]=pt(c[e>>2]|0)|0;if(c[17603]|0?(Ig()|0)==0:0)xb[c[17603]&7](c[17602]|0,c[e>>2]|0,c[f>>2]|0);Rg(21730,86,21737,1,c[f>>2]|0);ye(21755);ye(c[f>>2]|0);ye(22186);Fg();fb()}function ye(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]=Rv(2,a,Uu(c[d>>2]|0)|0)|0;i=b;return}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;c[17606]=c[d>>2];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;i=b;return (c[17606]|0)>=(c[d>>2]|0)|0}function Be(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[17604]|0)Cb[c[17604]&1](c[17605]|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:{Jv(21770,c[3956]|0)|0;break}case 50:{Jv(21778,c[3956]|0)|0;break}case 100:{Jv(21792,c[3956]|0)|0;break}default:{d=c[3956]|0;c[f>>2]=c[g>>2];qv(d,21798,f)|0}}Gu(c[3956]|0,c[h>>2]|0,c[k>>2]|0)|0}if((c[g>>2]|0)==40|(c[g>>2]|0)==50){Rg(21730,140,21823,1,21834);Fg();fb()}else{i=e;return}}function Ce(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;Be(c[f>>2]|0,c[g>>2]|0,h);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,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;Ce(50,21864,f);fb()}function Ee(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;Ce(50,21894,g);fb()}function Fe(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;Be(10,c[e>>2]|0,f);i=d;return}function Ge(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;Be(10,c[f>>2]|0,g);i=e;return 0}function He(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;Be(30,c[e>>2]|0,f);i=d;return}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;Be(40,c[e>>2]|0,f);fb()}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;Be(50,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;Be(100,c[e>>2]|0,f);i=d;return}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;if(!(c[e>>2]|0)){i=d;return}c[f>>2]=b;Be(0,c[e>>2]|0,f);i=d;return}function Me(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;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;Ne(c[f>>2]|0,21928,c[g>>2]|0,c[h>>2]|0);i=e;return}function Ne(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,Ke(21930,q),(c[u>>2]|0?(a[(c[s>>2]|0)+1>>0]|0)==91:0)&(c[t>>2]|0)!=0):0){Le(22186,p);c[s>>2]=21928;c[o>>2]=Uu(c[r>>2]|0)|0;c[o+4>>2]=76048;Ke(21936,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];Le(21942,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;Le(21947,m);o=Uu(c[r>>2]|0)|0;p=Uu(c[s>>2]|0)|0;c[l>>2]=o;c[l+4>>2]=76048;c[l+8>>2]=p;c[l+12>>2]=76048;Ke(21951,l)}c[x>>2]=(c[x>>2]|0)+1}}while(0);if(!(c[r>>2]|0)){i=h;return}Le(22186,k);i=h;return}function Oe(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)){Ne(c[f>>2]|0?c[f>>2]|0:21928,21959,0,0);i=d;return}if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&4|0:0){c[n>>2]=up(c[g>>2]|0,m)|0;c[e>>2]=c[m>>2];Du(o,30,21967,e)|0;Ne(c[f>>2]|0?c[f>>2]|0:21928,o,c[n>>2]|0,(((c[m>>2]|0)+7|0)>>>0)/8|0);i=d;return}c[h>>2]=Jo(c[g>>2]|0,0,k,l)|0;if(!(c[h>>2]|0)){Ne(c[f>>2]|0?c[f>>2]|0:21928,21977,0,0);i=d;return}g=c[f>>2]|0;f=c[l>>2]|0?21992:21994;if(c[k>>2]|0)Ne(g,f,c[h>>2]|0,c[k>>2]|0);else Ne(g,f,76048,1);gf(c[h>>2]|0);i=d;return}function Pe(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=Yw(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 Qe(){return}function Re(){tt(33);xe(qt(c[(gu()|0)>>2]|0)|0,21996)}function Se(){if(!(c[17607]|0))Te();return Tg()|0}function Te(){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[17607]|0){i=a;return}c[17607]=1;Lm(0);Hg(c[17608]|0);dg();c[b>>2]=zh()|0;if((((((c[b>>2]|0)==0?(c[b>>2]=jj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=Oj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=kj()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=sg()|0,(c[b>>2]|0)==0):0)?(c[b>>2]=hp()|0,(c[b>>2]|0)==0):0){i=a;return}De(22011,123,22020)}function Ue(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]=22032;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]=Lp()|0;q=c[e>>2]|0;i=d;return q|0}Te();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]=Ve(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(!(Ve(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 Ve(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]=We(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]=We(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]=We(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 We(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?rw(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=(rw(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 Xe(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:{fg();break}case 44:{Lm(0);Rm();break}case 51:{if(Um()|0)c[g>>2]=1;break}case 13:{Pm();break}case 62:case 23:break;case 14:{Gg();break}case 30:{Te();og(0);break}case 37:{Te();c[17609]=1;break}case 24:{Te();b=c[f>>2]|0;a=(c[b>>2]|0)+(4-1)&~(4-1);z=c[a>>2]|0;c[b>>2]=a+4;og(z);if((ng()|0)&4|0)c[g>>2]=1;break}case 25:{Te();Fg();break}case 27:{Lm(0);lg(ng()|0|1);break}case 28:{Lm(0);lg(ng()|0|2);break}case 29:{Lm(0);lg((ng()|0)&-3);break}case 22:{Te();Qm();break}case 45:{Lm(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;Zm(b);break}case 46:{Lm(0);if(Se()|0)_m();break}case 19:{Lm(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;ze(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[17610]=c[17610]|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[17610]=c[17610]&~z;break}case 36:{Te();break}case 40:{if(c[17607]|0)c[g>>2]=1;break}case 39:{if(c[17611]|0)c[g>>2]=1;break}case 38:{if(!(c[17611]|0)){Te();Mm(0);c[17611]=1;Se()|0}break}case 47:{Lm(0);Te();break}case 48:{Lm(0);Mm(1);if(Se()|0)$m();break}case 52:{c[g>>2]=Ye(60)|0;break}case 49:{Lm(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;Sm(b);break}case 50:{Lm(0);Mm(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;Tm(((z|0)!=0^1^1)&1)|0;break}case 70:{Nm();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;Lm(0);_e(c[h>>2]|0?28:27,c[h>>2]|0);break}case 54:{Lm(0);if(ah()|0)c[g>>2]=1;break}case 55:{if(Ig()|0?(b=(Sg()|0)!=0,!(b|(c[17609]|0)!=0)):0)c[g>>2]=1;break}case 56:{Lm(0);if(!(c[17607]|0)){c[17608]=1;break a}if(bh()|0)Ug(1)|0;if(Tg()|0)c[g>>2]=1;break}case 57:{Te();c[g>>2]=Ug(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(Se()|0){c[g>>2]=cn(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(Se()|0){c[g>>2]=dn(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;en(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]=$e(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]=ag(c[w>>2]|0)|0;break}case 64:{if(c[17607]|0){c[g>>2]=1;break a}else{Lm(0);Pg();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)Lm(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=Om(((c[17607]|0)!=0^1)&1)|0;c[c[y>>2]>>2]=b}break}case 67:{Lm(0);lg(ng()|0|8);break}case 68:{Lm(0);lg(ng()|0|16);break}case 72:case 71:{c[g>>2]=69;break}default:{Lm(0);c[g>>2]=61}}while(0);i=d;return c[g>>2]|0}function Ye(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=Ze(1,c[d>>2]|0)|0;i=b;return a|0}function Ze(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]=22032;sb[b&63](a,22046,o)|0;o=c[p>>2]|0;a=c[q>>2]|0;c[n>>2]=22072;sb[o&63](a,22059,n)|0;n=c[p>>2]|0;a=c[q>>2]|0;c[m>>2]=22097;sb[n&63](a,22084,m)|0;m=c[p>>2]|0;a=c[q>>2]|0;c[l>>2]=22118;sb[m&63](a,22105,l)|0;sb[c[p>>2]&63](c[q>>2]|0,22132,d+32|0)|0;sb[c[p>>2]&63](c[q>>2]|0,22148,d+40|0)|0;l=c[p>>2]|0;a=c[q>>2]|0;c[k>>2]=gp()|0;sb[l&63](a,22160,k)|0;c[r>>2]=bg()|0;sb[c[p>>2]&63](c[q>>2]|0,22173,d+56|0)|0;c[t>>2]=0;while(1){k=cg(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,22182,h)|0}c[t>>2]=(c[t>>2]|0)+1}sb[c[p>>2]&63](c[q>>2]|0,22186,g)|0;g=c[p>>2]|0;h=c[q>>2]|0;s=(Ig()|0)!=0;r=(Og()|0)!=0;c[f>>2]=s?121:110;c[f+4>>2]=r?121:110;sb[g&63](h,22188,f)|0;c[t>>2]=Om(0)|0;switch(c[t>>2]|0){case 1:{c[u>>2]=22206;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,22240,e)|0;i=d;return}case 2:{c[u>>2]=22215;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,22240,e)|0;i=d;return}case 3:{c[u>>2]=22220;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,22240,e)|0;i=d;return}default:De(22011,321,22227)}}function $e(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]=ut(1056)|0;break}case 30112:{c[e>>2]=vt(1056)|0;break}case 30113:{c[e>>2]=wt(1056)|0;break}case 30114:{c[e>>2]=xt(1056)|0;break}default:c[e>>2]=61}i=b;return c[e>>2]|0}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;bf(c[d>>2]|0,0,e)|0;i=b;return c[e>>2]|0}function bf(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?!(cf()|0):0)if(c[17613]|0){c[l>>2]=wb[c[17613]&15](c[f>>2]|0)|0;break}else{c[l>>2]=hg(c[f>>2]|0)|0;break}else m=6;while(0);do if((m|0)==6)if(c[17612]|0){c[l>>2]=wb[c[17612]&15](c[f>>2]|0)|0;break}else{c[l>>2]=gg(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[(gu()|0)>>2]|0))tt(12);c[k>>2]=qt(c[(gu()|0)>>2]|0)|0;n=c[k>>2]|0;i=e;return n|0}function cf(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;do if(c[17609]|0)if(Og()|0){c[17609]=0;c[b>>2]=0;break}else{c[b>>2]=c[17609];break}else c[b>>2]=0;while(0);i=a;return c[b>>2]|0}function df(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;bf(c[d>>2]|0,1,e)|0;i=b;return c[e>>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[e>>2]=a;do if(!(cf()|0))if(c[17614]|0){c[d>>2]=wb[c[17614]&15](c[e>>2]|0)|0;break}else{c[d>>2]=Eg(c[e>>2]|0)|0;break}else c[d>>2]=0;while(0);i=b;return c[d>>2]|0}function ff(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]=af(b)|0;k=c[e>>2]|0;i=d;return k|0}if(!b){gf(c[f>>2]|0);c[e>>2]=0;k=c[e>>2]|0;i=d;return k|0}if(c[17615]|0)c[h>>2]=Bb[c[17615]&7](c[f>>2]|0,c[g>>2]|0)|0;else c[h>>2]=ig(c[f>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==0?(c[(gu()|0)>>2]|0)==0:0)tt(12);c[e>>2]=c[h>>2];k=c[e>>2]|0;i=d;return k|0}function gf(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[(gu()|0)>>2];if(c[17616]|0)ub[c[17616]&15](c[d>>2]|0);else kg(c[d>>2]|0);if(!(c[e>>2]|0)){i=b;return}tt(c[e>>2]|0);i=b;return}function hf(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){tt(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=af(c[h>>2]|0)|0;if(c[k>>2]|0)Tw(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 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){tt(12);c[e>>2]=0;l=c[e>>2]|0;i=d;return l|0}c[k>>2]=df(c[h>>2]|0)|0;if(c[k>>2]|0)Tw(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){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]=Uu(c[d>>2]|0)|0;a=(ef(c[d>>2]|0)|0)!=0;g=(c[f>>2]|0)+1|0;if(a)c[e>>2]=df(g)|0;else c[e>>2]=af(g)|0;if(!(c[e>>2]|0)){h=c[e>>2]|0;i=b;return h|0}ev(c[e>>2]|0,c[d>>2]|0)|0;h=c[e>>2]|0;i=b;return h|0}function lf(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=af(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(Ig()|0)==0;if(!(a&(c[17617]|0)!=0)){f=5;break}if(!(sb[c[17617]&63](c[17618]|0,c[d>>2]|0,0)|0)){f=5;break}}if((f|0)==5)xe(qt(c[(gu()|0)>>2]|0)|0,0);else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function mf(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=ff(c[e>>2]|0,c[f>>2]|0)|0;c[g>>2]=b;if(!((b|0)!=0^1)){h=6;break}b=(Ig()|0)==0;if(!(b&(c[17617]|0)!=0)){h=5;break}b=c[17617]|0;a=c[17618]|0;k=c[f>>2]|0;l=(ef(c[e>>2]|0)|0)!=0;if(!(sb[b&63](a,k,l?3:2)|0)){h=5;break}}if((h|0)==5)xe(qt(c[(gu()|0)>>2]|0)|0,0);else if((h|0)==6){i=d;return c[g>>2]|0}return 0}function nf(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=df(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){f=6;break}a=(Ig()|0)==0;if(!(a&(c[17617]|0)!=0)){f=5;break}if(!(sb[c[17617]&63](c[17618]|0,c[d>>2]|0,1)|0)){f=5;break}}if((f|0)==5){d=qt(c[(gu()|0)>>2]|0)|0;xe(d,we(22257)|0)}else if((f|0)==6){i=b;return c[e>>2]|0}return 0}function of(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){tt(12);xe(qt(c[(gu()|0)>>2]|0)|0,0)}c[h>>2]=lf(c[g>>2]|0)|0;Tw(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|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){tt(12);xe(qt(c[(gu()|0)>>2]|0)|0,0)}c[h>>2]=nf(c[g>>2]|0)|0;Tw(c[h>>2]|0,0,c[g>>2]|0)|0;i=d;return c[h>>2]|0}function qf(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=kf(c[d>>2]|0)|0;c[e>>2]=a;if(!((a|0)!=0^1)){h=8;break}c[f>>2]=Uu(c[d>>2]|0)|0;c[g>>2]=((ef(c[d>>2]|0)|0)!=0^1^1)&1;a=(Ig()|0)==0;if(!(a&(c[17617]|0)!=0))break}while((sb[c[17617]&63](c[17618]|0,c[f>>2]|0,c[g>>2]|0)|0)!=0);if((h|0)==8){i=b;return c[e>>2]|0}e=qt(c[(gu()|0)>>2]|0)|0;if(!(c[g>>2]|0)){k=0;xe(e,k)}k=we(22257)|0;xe(e,k);return 0}function rf(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(Ig()|0)c[d>>2]=0;else c[d>>2]=c[17610]&c[e>>2];i=b;return c[d>>2]|0}function sf(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;lj(c[e>>2]|0,c[f>>2]|0);Jm(c[e>>2]|0,c[f>>2]|0);i=d;return}function tf(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]=Uu(c[m>>2]|0)|0}else{c[n>>2]=uf(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]=vf(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 uf(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 vf(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]=wf(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 wf(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?ef(c[t>>2]|0)|0:0)c[M>>2]=df(1+(c[M+4>>2]|0)-1|0)|0;else c[M>>2]=af(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(!(Cv(22293,a[c[z>>2]>>0]|0)|0)){c[L>>2]=(c[z>>2]|0)-(c[E>>2]|0);c[P>>2]=xf(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;Pw(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]=xf(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]=yf(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(Cu(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(zf(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]=xf(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(!(zf(c[F>>2]|0)|0)){c[Z>>2]=Af(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(!(zf(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=Af(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]=nw(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]=xf(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;Pw(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]=xf(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]=xf(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=(Cv(22293,a[c[z>>2]>>0]|0)|0)!=0;l=c[z>>2]|0;if(k){c[E>>2]=l;break}if(zf(l)|0)break;Xa=c[z>>2]|0;if((a[c[z>>2]>>0]|0)==123){Ua=212;break b}if(Cv(22392,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]=Uu(c[na>>2]|0)|0;c[pa>>2]=xf(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;Pw(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]=xf(M,c[sa>>2]|0)|0;if(c[ta>>2]|0){Ua=145;break b}do if(c[sa>>2]|0){if(ef(c[M>>2]|0)|0)break;if(!(ef(c[ra>>2]|0)|0))break;c[ua>>2]=df(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ua>>2]|0)){Ua=150;break b}c[va>>2]=c[ua>>2];Pw(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));gf(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;Pw(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];ov(za,22386,p)|0;c[ya>>2]=Uu(za)|0;c[Aa>>2]=xf(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;Pw(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];ov(Ea,22389,o)|0;c[Da>>2]=Uu(Ea)|0;c[Fa>>2]=xf(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;Pw(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]=Bf(c[Ha>>2]|0,Ja)|0;if(!(c[Ia>>2]|0))break;c[Ka>>2]=xf(M,c[Ia>>2]|0)|0;if(c[Ka>>2]|0){Ua=173;break b}Pw(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(Jp(c[aa>>2]|0,2)|0){c[da>>2]=up(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]=xf(M,c[ba>>2]|0)|0;if(c[fa>>2]|0){Ua=111;break b}do if(!(ef(c[M>>2]|0)|0)){if(!(Jp(c[aa>>2]|0,1)|0))break;c[ga>>2]=df(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ga>>2]|0)){Ua=115;break b}c[ha>>2]=c[ga>>2];Pw(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));gf(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;Pw(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(Ro(c[ca>>2]|0,0,0,ba,c[aa>>2]|0)|0){Ua=119;break b}c[ja>>2]=xf(M,c[ba>>2]|0)|0;if(c[ja>>2]|0){Ua=121;break b}do if(!(ef(c[M>>2]|0)|0)){if(!(Jp(c[aa>>2]|0,1)|0))break;c[ka>>2]=df(1+(c[M+4>>2]|0)-1|0)|0;if(!(c[ka>>2]|0)){Ua=125;break b}c[la>>2]=c[ka>>2];Pw(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));gf(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(Ro(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]=qt(c[(gu()|0)>>2]|0)|0;break a;break}case 119:{De(22364,1433,22371);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]=qt(c[(gu()|0)>>2]|0)|0;break a;break}case 128:{De(22364,1460,22371);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]=qt(c[(gu()|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]=xf(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]=qt(c[(gu()|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(ef(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=Yw(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);gf(c[M>>2]|0)}}else{M=Cf(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 xf(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]=ff(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]=qt(c[(gu()|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 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,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 zf(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 Af(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 Bf(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 Cf(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)){Df(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){Df(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 Df(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(ef(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=Yw(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);gf(c[g>>2]|0);i=f;return}function Ef(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=tf(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0,0)|0;i=f;return e|0}function Ff(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]=Uu(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)?(wv(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)De(22364,481,22395);b[q>>1]=x-(c[r>>2]|0);c[s>>2]=af(1+(e[q>>1]|0)|0)|0;if(c[s>>2]|0){c[t>>2]=c[s>>2];Pw(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]=Cf(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 Gf(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 Hf(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]=af(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;Pw(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)De(22364,673,22417);b[o>>1]=(c[n>>2]|0)+1-(c[s>>2]|0);c[p>>2]=af(1+(e[o>>1]|0)|0)|0;if(c[p>>2]|0){c[q>>2]=c[p>>2];Pw(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]=Cf(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 If(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=Hf(c[d>>2]|0,0)|0;i=b;return a|0}function Jf(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=Kf(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function Kf(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 Lf(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]=Kf(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]=af(c[m>>2]|0)|0;if(c[n>>2]|0){Pw(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 Mf(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]=Kf(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]=af((c[l>>2]|0)+1|0)|0;if(c[m>>2]|0){Pw(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 Nf(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]=Lf(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(ef(c[g>>2]|0)|0)q=Gp(0)|0;else q=Fp(0)|0;c[m>>2]=q;if(c[m>>2]|0){sp(c[m>>2]|0,c[n>>2]|0,c[l>>2]<<3)|0;break}else{gf(c[n>>2]|0);break}}else{if(!(c[k>>2]|0))c[k>>2]=1;c[o>>2]=Kf(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(No(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 Of(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]=af(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;Pw(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]=Cf(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 Pf(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]=Of(c[d>>2]|0)|0;c[f>>2]=If(c[e>>2]|0)|0;Df(c[e>>2]|0);i=b;return c[f>>2]|0}function Qf(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]=wf(e,g,h,Uu(c[k>>2]|0)|0,1,0,m)|0;i=f;return c[l>>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;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=Uu(c[k>>2]|0)|0;k=wf(e,g,h,d,1,0,c[l>>2]|0)|0;i=f;return k|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+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=vf(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 Tf(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:22432;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=Uf(c[r>>2]|0,e[t>>1]|0)|0;c[y>>2]=n;switch(n|0){case 1:{c[z>>2]=Vf(c[r>>2]|0,e[t>>1]|0,0)|0;break}case 2:{c[z>>2]=Wf(c[r>>2]|0,e[t>>1]|0,0)|0;break}default:c[z>>2]=Xf(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:{Vf(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}case 2:{Wf(c[r>>2]|0,e[t>>1]|0,c[s>>2]|0)|0;break}default:Xf(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];ov(u,22459,l)|0;n=Uu(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]=fv(c[s>>2]|0,u)|0;Pw(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)De(22364,2008,22463);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 Uf(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,(Cv(22435,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(!(Cv(22445,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 Vf(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];ov(p,22286,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 Wf(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}Pw(c[h>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;k=c[g>>2]|0;i=e;return k|0}function Xf(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];ov(r,22454,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 Yf(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)?(zf(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]=Cv(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]=Cv(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]=Ff(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;Df(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((zf(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]=Cv(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]=Ff(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]=Ff(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=Nf(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=Nf(l,1,1)|0;c[c[r+(c[t>>2]<<2)>>2]>>2]=x;break}else{x=Nf(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=Lf(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]=Jf(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}Pw((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);Df(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){Df(c[w>>2]|0);c[h>>2]=0;G=c[h>>2]|0;i=g;return G|0}}while(0);Df(c[w>>2]|0);Df(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)){Hp(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;gf(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 Zf(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]=Yf(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=$f(1,c[d>>2]|0)|0;i=b;return a|0}function $f(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 ag(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=(qu(c[1100+(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[17619]=c[17619]|c[1100+(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 bg(){return c[17620]|0}function cg(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[1100+(c[f>>2]<<3)>>2];c[e>>2]=c[1100+(c[f>>2]<<3)+4>>2];h=c[e>>2]|0;i=d;return h|0}function dg(){c[17620]=0;if(Ig()|0)return;eg();c[17620]=c[17620]&~c[17619];return}function eg(){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]=22631;c[l>>2]=0;c[e>>2]=Av(c[d>>2]|0,23512)|0;if(!(c[e>>2]|0)){i=b;return}while(1){if(!(rv(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(!(gv(a[c[g>>2]>>0]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=Cv(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=(Uu(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?gv(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=(qu(c[1100+(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[17619]=c[17619]|c[1100+(n<<3)>>2]}}Nv(c[e>>2]|0)|0;Fv(c[e>>2]|0)|0;i=b;return}function fg(){c[17621]=1;return}function gg(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)){tt(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17621]|0)){c[e>>2]=zw(b)|0;h=c[e>>2]|0;i=d;return h|0}k=zw(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 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)){tt(22);c[e>>2]=0;h=c[e>>2]|0;i=d;return h|0}b=c[f>>2]|0;if(!(c[17621]|0)){c[e>>2]=tg(b)|0;h=c[e>>2]|0;i=d;return h|0}k=tg(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 ig(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[17621]|0)){a=(Eg(b)|0)!=0;n=c[g>>2]|0;o=c[h>>2]|0;if(a){c[f>>2]=Dg(n,o)|0;p=c[f>>2]|0;i=e;return p|0}else{c[f>>2]=Cw(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]=gg(c[h>>2]|0)|0;p=c[f>>2]|0;i=e;return p|0}jg(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]=hg(b)|0;else c[l>>2]=gg(b)|0;if(c[l>>2]|0){Pw(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0)|0;Tw((c[l>>2]|0)+(c[m>>2]|0)|0,0,(c[h>>2]|0)-(c[m>>2]|0)|0)|0;kg(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 jg(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[17621]|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;Ie(22652,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;Ie(22693,e)}else{i=b;return}}function kg(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[17621]|0){jg(c[e>>2]|0);a=(Eg(c[d>>2]|0)|0)!=0;f=(c[e>>2]|0)+-4|0;if(a){Bg(f);i=b;return}else{Aw(f);i=b;return}}else{f=(Eg(c[d>>2]|0)|0)!=0;d=c[e>>2]|0;if(f){Bg(d);i=b;return}else{Aw(d);i=b;return}}}function lg(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;vt(1204)|0;c[e>>2]=c[17622];c[17623]=c[d>>2]&1;c[17622]=c[d>>2]&2;c[17624]=c[d>>2]&8;c[17625]=c[d>>2]&16;if(!((((c[e>>2]|0)==0|(c[17622]|0)!=0)^1)&(c[17626]|0)!=0)){wt(1204)|0;i=b;return}c[17626]=0;mg();wt(1204)|0;i=b;return}function mg(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();if(c[17623]|0){i=a;return}Fe(we(22733)|0,a);i=a;return}function ng(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;vt(1204)|0;c[b>>2]=c[17623]|0?1:0;c[b>>2]=c[b>>2]|(c[17622]|0?2:0);c[b>>2]=c[b>>2]|(c[17627]|0?4:0);c[b>>2]=c[b>>2]|(c[17624]|0?8:0);c[b>>2]=c[b>>2]|(c[17625]|0?16:0);wt(1204)|0;i=a;return c[b>>2]|0}function og(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;vt(1204)|0;pg(c[d>>2]|0);wt(1204)|0;i=b;return}function pg(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[17629]|0){He(22965,d);i=b;return}else{qg(c[f>>2]|0);rg(c[17631]|0,c[f>>2]|0);i=b;return}}c[17628]=1;c[g>>2]=Xv()|0;f=c[g>>2]|0;if((f|0)==($v()|0)){i=b;return}if(aw(c[g>>2]|0)|0)Ie(22766,e);g=Xv()|0;if((g|0)!=($v()|0))Ie(22766,e);if(aw(0)|0){i=b;return}else Ie(22766,e)}function qg(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[17630]=c[f>>2];if(c[17628]|0)Je(22789,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[17630]=(c[17630]|0)+(c[g>>2]|0)-1&~((c[g>>2]|0)-1);c[17631]=ew(0,c[17630]|0,3,34,-1,0)|0;if((c[17631]|0)==(-1|0)){g=c[17630]|0;h=yu(c[(gu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=h;Fe(22815,e)}else{c[17632]=1;c[17629]=1}if(c[17629]|0){l=c[17631]|0;c[k>>2]=l;m=c[17630]|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[17631]=zw(c[17630]|0)|0;if(!(c[17631]|0)){c[d>>2]=c[17630];Ie(22863,d)}c[17629]=1;l=c[17631]|0;c[k>>2]=l;m=c[17630]|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 rg(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[17624]|0){i=d;return}Fe(22903,d);i=d;return}function sg(){return 0}function tg(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;vt(1204)|0;c[e>>2]=ug(c[d>>2]|0)|0;wt(1204)|0;i=b;return c[e>>2]|0}function ug(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[17629]|0)==0?(pg(32768),(c[17629]|0)==0):0){Fe(we(23011)|0,e);tt(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(c[17627]|0?Ig()|0:0){Fe(we(23072)|0,d);tt(12);c[f>>2]=0;k=c[f>>2]|0;i=b;return k|0}if(!((c[17626]|0)==0|(c[17622]|0)!=0)){c[17626]=0;mg()}c[g>>2]=((((c[g>>2]|0)+31|0)>>>0)/32|0)<<5;c[h>>2]=vg(c[17631]|0,c[g>>2]|0)|0;if(c[h>>2]|0)Ag(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 vg(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(!(wg(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]=zg(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];xg(c[h>>2]|0)}if(wg(c[g>>2]|0)|0){l=c[g>>2]|0;i=d;return l|0}tt(12);c[g>>2]=0;l=c[g>>2]|0;i=d;return l|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+8|0;e=b+4|0;f=b;c[d>>2]=a;c[e>>2]=c[d>>2];c[f>>2]=c[17631];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[17630]|0)|0)>>>0;h=g&1;i=b;return h|0}function xg(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]=yg(c[d>>2]|0)|0;c[f>>2]=zg(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 yg(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[17631]|0)){c[e>>2]=0;g=c[e>>2]|0;i=b;return g|0}c[e>>2]=c[17631];while(1){c[f>>2]=zg(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 zg(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(wg(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 Ag(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[17633]=(c[17633]|0)+(c[e>>2]|0);c[17634]=(c[17634]|0)+1}if(!(c[f>>2]|0)){i=d;return}c[17633]=(c[17633]|0)-(c[f>>2]|0);c[17634]=(c[17634]|0)+-1;i=d;return}function Bg(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;vt(1204)|0;Cg(c[d>>2]|0);wt(1204)|0;i=b;return}function Cg(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=Yw(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=Yw(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=Yw(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=Yw(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}Ag(0,c[h>>2]|0);h=(c[g>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2;xg(c[g>>2]|0);i=e;return}function Dg(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;vt(1204)|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];wt(1204)|0;l=c[k>>2]|0;i=d;return l|0}c[k>>2]=ug(c[f>>2]|0)|0;if(!(c[k>>2]|0)){wt(1204)|0;l=c[k>>2]|0;i=d;return l|0}Pw(c[k>>2]|0,c[e>>2]|0,c[h>>2]|0)|0;Tw((c[k>>2]|0)+(c[h>>2]|0)|0,0,(c[f>>2]|0)-(c[h>>2]|0)|0)|0;Cg(c[e>>2]|0);wt(1204)|0;l=c[k>>2]|0;i=d;return l|0}function Eg(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[17629]|0)e=(wg(c[d>>2]|0)|0)!=0;else e=0;i=b;return e&1|0}function Fg(){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[17629]|0)){i=b;return}c[e>>2]=c[17631];c[f>>2]=c[17630];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=Yw(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[17631];c[m>>2]=c[17630];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=Yw(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[17631];c[r>>2]=c[17630];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=Yw(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[17631];c[w>>2]=c[17630];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=Yw(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[17632]|0)hw(c[17631]|0,c[17630]|0)|0;c[17631]=0;c[17629]=0;c[17630]=0;c[17627]=0;i=b;return}function Gg(){var a=0,b=0,d=0,e=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;vt(1204)|0;if(!(c[17629]|0)){wt(1204)|0;i=a;return}d=c[17630]|0;e=c[17634]|0;c[b>>2]=c[17633];c[b+4>>2]=d;c[b+8>>2]=e;Fe(23125,b);wt(1204)|0;i=a;return}function Hg(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[17635]|0){if(Ig()|0){Jg(5);Ng()}if(c[17635]|0)Ee(23394,23400,114,23407)}c[17635]=1;do if(c[f>>2]|0){if(c[17636]|0)Ee(23434,23400,121,23407)}else{if(!(Mv(23457,0)|0)){if(!(c[17636]|0))break;Ee(23434,23400,132,23407)}c[h>>2]=Av(23482,23512)|0;if(!(c[h>>2]|0)){a=c[(gu()|0)>>2]|0;c[k>>2]=a;if((a|0)!=2&(c[k>>2]|0)!=13?(Mv(23514,0)|0)==0:0){a=yu(c[k>>2]|0)|0;c[e>>2]=23482;c[e+4>>2]=a;Fe(23528,e);fb()}}else{if(rv(l,256,c[h>>2]|0)|0?nw(l)|0:0){Fv(c[h>>2]|0)|0;if(!(c[17636]|0))break;Ee(23434,23400,151,23407)}Fv(c[h>>2]|0)|0}c[17636]=1}while(0);if(c[17636]|0){i=b;return}c[g>>2]=ut(1248)|0;if(c[g>>2]|0){c[d>>2]=pt(c[g>>2]|0)|0;Fe(23572,d);fb()}c[m>>2]=Av(23457,23512)|0;if(c[m>>2]|0){if(rv(n,256,c[m>>2]|0)|0?nw(n)|0:0)c[17638]=1;Fv(c[m>>2]|0)|0}Jg(1);i=b;return}function Ig(){return ((c[17636]|0)!=0^1)&1|0}function Jg(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;Kg();c[g>>2]=c[17637];switch(c[17637]|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[17637]=c[e>>2];Lg();if(!(c[f>>2]|0?!(Ae(2)|0):0)){a=Mg(c[g>>2]|0)|0;g=Mg(c[e>>2]|0)|0;e=c[f>>2]|0?23339:23347;c[d>>2]=a;c[d+4>>2]=g;c[d+8>>2]=e;Fe(23354,d)}if(c[f>>2]|0){i=b;return}else{Ng();i=b;return}}function Kg(){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(1248)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Fe(23166,b);fb()}else{i=a;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]=wt(1248)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Fe(23221,b);fb()}else{i=a;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;switch(c[d>>2]|0){case 0:{c[e>>2]=23276;break}case 1:{c[e>>2]=23285;break}case 2:{c[e>>2]=23290;break}case 3:{c[e>>2]=23300;break}case 4:{c[e>>2]=23312;break}case 5:{c[e>>2]=23318;break}case 6:{c[e>>2]=23330;break}default:c[e>>2]=37722}i=b;return c[e>>2]|0}function Ng(){Gv(0)|0;fb()}function Og(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Ig()|0)c[b>>2]=c[17638];else c[b>>2]=0;i=a;return c[b>>2]|0}function Pg(){c[17638]=1;return}function Qg(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(!(Ig()|0))Ee(23627,23400,295,23646);if(Og()|0){Rg(23400,300,23646,0,c[d>>2]|0);i=b;return}Kg();if(c[17639]|0){Lg();i=b;return}else{c[17639]=1;Lg();i=b;return}}function Rg(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(!(Ig()|0)){i=g;return}Jg(c[n>>2]|0?5:4);f=c[k>>2]|0;k=c[l>>2]|0;l=c[m>>2]|0?23680:76048;e=c[m>>2]|0?c[m>>2]|0:76048;m=c[o>>2]|0?c[o>>2]|0:23692;c[h>>2]=c[n>>2]|0?23673:76048;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;Fe(23717,h);i=g;return}function Sg(){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(Ig()|0){Kg();c[d>>2]=c[17639];Lg();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 Tg(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(!(Ig()|0)){c[b>>2]=1;d=c[b>>2]|0;i=a;return d|0}Kg();if((c[17637]|0)==1){Lg();Ug(0)|0;Kg()}c[b>>2]=(c[17637]|0)==3&1;Lg();d=c[b>>2]|0;i=a;return d|0}function Ug(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(Ig()|0)Jg(2);if((((((Vg(c[d>>2]|0)|0)==0?(Xg(c[d>>2]|0)|0)==0:0)?(Yg(c[d>>2]|0)|0)==0:0)?(Zg()|0)==0:0)?(_g(c[d>>2]|0)|0)==0:0)?($g()|0)==0:0){c[e>>2]=3;c[f>>2]=0}if(!(Ig()|0)){g=c[f>>2]|0;i=b;return g|0}Jg(c[e>>2]|0);g=c[f>>2]|0;i=b;return g|0}function Vg(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[1292+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Ah(c[1292+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1292+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=pt(c[f>>2]|0)|0;else h=0;Wg(38423,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 Wg(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?(Ae(2)|0)==0:0){i=f;return}e=(qu(c[h>>2]|0,36021)|0)!=0;d=e?c[h>>2]|0:42958;e=(qu(c[h>>2]|0,36021)|0)!=0^1;b=e?23765:76048;do if(qu(c[h>>2]|0,38423)|0){if(!(qu(c[h>>2]|0,42958)|0)){n=Bi(c[k>>2]|0)|0;break}if(!(qu(c[h>>2]|0,36021)|0)){n=Bi(c[k>>2]|0)|0;break}if(qu(c[h>>2]|0,49625)|0)n=76048;else n=Ej(c[k>>2]|0)|0}else n=fh(c[k>>2]|0)|0;while(0);h=c[k>>2]|0;k=c[m>>2]|0?c[m>>2]|0:23771;m=c[l>>2]|0?23776:76048;e=c[l>>2]|0?c[l>>2]|0:76048;a=c[l>>2]|0?49679:76048;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;Fe(23779,g);i=f;return}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+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[1312+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=gj(c[1312+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1312+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=pt(c[f>>2]|0)|0;else h=0;Wg(42958,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 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[1336+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=ni(c[1336+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1336+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=pt(c[f>>2]|0)|0;else h=0;Wg(36021,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(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=bn(1)|0;if(c[b>>2]|0)d=pt(c[b>>2]|0)|0;else d=0;Wg(52389,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[1360+(c[e>>2]<<2)>>2]|0))break;c[f>>2]=Pj(c[1360+(c[e>>2]<<2)>>2]|0,c[d>>2]|0,1)|0;a=c[1360+(c[e>>2]<<2)>>2]|0;if(c[f>>2]|0)h=pt(c[f>>2]|0)|0;else h=0;Wg(49625,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(){return 0}function ah(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Ig()|0){Kg();c[b>>2]=(c[17637]|0)==3&1;Lg()}else c[b>>2]=1;i=a;return c[b>>2]|0}function bh(){var a=0,b=0,d=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Ig()|0){Kg();c[b>>2]=((c[17637]|0)==3?1:(c[17637]|0)==4)&1;Lg();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 ch(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];Je(23823,g)}if((c[l>>2]|0)>>>0<8)c[l>>2]=8;c[n>>2]=hf(1,8+(c[l>>2]|0)|0)|0;if(c[n>>2]|0){l=c[n>>2]|0;a[l>>0]=a[23869]|0;a[l+1>>0]=a[23870]|0;a[l+2>>0]=a[23871]|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 dh(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;Ie(23873,g)}if(wv(c[h>>2]|0,23869,3)|0){l=c[h>>2]|0;c[g>>2]=l;Ie(23873,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;Ie(23921,f)}else{i=e;return (c[h>>2]|0)+8|0}return 0}function eh(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=(wv(c[g>>2]|0,23869,3)|0)!=0;h=c[g>>2]|0;if(b){c[f>>2]=h;Ie(23978,f)}f=c[g>>2]|0;if((a[h+3>>0]|0)!=1){c[e>>2]=a[f+3>>0];Ie(24020,e)}if(c[f+4>>2]|0)ub[c[(c[g>>2]|0)+4>>2]&15]((c[g>>2]|0)+8|0);gf(c[g>>2]|0);i=d;return}function fh(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]=gh(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37722;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function gh(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]=hh(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[1372+(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 hh(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 ih(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]=jh(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 jh(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]=gh(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((Ig()|0)==0?rf(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=kh(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]=jf(1,t)|0;else c[p>>2]=hf(1,t)|0;if(!(c[p>>2]|0)){c[q>>2]=st()|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=kh(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=kh(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=kh(z)|0;i=g;return A|0}function kh(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=lh(32,c[d>>2]|0)|0;i=b;return a|0}function lh(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=mh(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function mh(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 nh(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)xe(63,24069);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=Yw(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}gf((c[f>>2]|0)+(0-(c[g>>2]|0))|0);i=e;return}function oh(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]=ph(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}Tw(c[k>>2]|0,66,c[l>>2]|0)|0;p=c[o>>2]|0;i=g;return p|0}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,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]=mq(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]=Tp(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;Ie(24164,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=pq(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]=br(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;Ie(24164,h)}}if((f|0)<65537)switch(f|0){case 11:{c[p>>2]=Uq(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;Ie(24164,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;Ie(24164,h)}}}else switch(f|0){case 1:{c[p>>2]=qh(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]=Wp(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]=eq(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]=Yq(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((Ig()|0)==0?rf(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Rw(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Rg(24118,875,24127,0,24142);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;Ie(24164,h)}}while(0);i=g;return c[p>>2]|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;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=rh(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 rh(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){Pe((c[u>>2]|0)+16|0);Qe()}c[k>>2]=0;w=c[k>>2]|0;i=h;return w|0}function sh(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=th(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 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,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]=mq(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]=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 8:{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}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Ie(24212,h)}}if((f|0)<11)switch(f|0){case 9:{c[p>>2]=yq(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]=er(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;Ie(24212,h)}}if((f|0)<65537)switch(f|0){case 11:{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}default:{q=c[k>>2]|0;r=q+48|0;s=c[r>>2]|0;c[h>>2]=s;Ie(24212,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;Ie(24212,h)}}}else switch(f|0){case 1:{c[p>>2]=uh(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]=Zp(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]=hq(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]=Yq(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((Ig()|0)==0?rf(0)|0:0){if((c[n>>2]|0)!=(c[l>>2]|0))Rw(c[l>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;c[p>>2]=0;break a}Rg(24118,992,24197,0,24142);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;Ie(24212,h)}}while(0);i=g;return c[p>>2]|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;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=rh(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 vh(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=wh(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function wh(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)){Pw(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}zq(c[g>>2]|0);break}if((h|0)<65537){switch(h|0){case 10:break;default:break a}fr(c[g>>2]|0);break}else{switch(h|0){case 65537:break;default:break a}kq(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 xh(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]=qq(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]=Qq(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=yh(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0}i=e;return c[k>>2]|0}function yh(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}Tw(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;Fe(24245,g);Rg(24118,682,24288,0,24301)}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];Pw((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 zh(){return 0}function Ah(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]=gh(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=Bh(n)|0;i=f;return o|0}c[l>>2]=12;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=Bh(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=37793;else p=c[m>>2]|0?37754:37773;Cb[h&1](38423,k,37815,p);n=c[l>>2]|0;o=Bh(n)|0;i=f;return o|0}function Bh(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(1,c[d>>2]|0)|0;i=b;return a|0}function Ch(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[1396+((c[o>>2]|0)*48|0)>>2]|0))break;if((c[k>>2]|0)==(c[1396+((c[o>>2]|0)*48|0)+4>>2]|0)?(c[1396+((c[o>>2]|0)*48|0)+12>>2]|0)==0:0)break;c[o>>2]=(c[o>>2]|0)+1}if(!(c[1396+((c[o>>2]|0)*48|0)>>2]|0))c[o>>2]=-1}else c[o>>2]=Dh(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[1396+((c[o>>2]|0)*48|0)>>2];if(Ig()|0?(a[1396+((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[1396+((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[1396+((c[o>>2]|0)*48|0)+4>>2];if(c[m>>2]|0){c[c[m>>2]>>2]=c[1396+((c[o>>2]|0)*48|0)+12>>2];c[(c[m>>2]|0)+4>>2]=c[1396+((c[o>>2]|0)*48|0)+16>>2];if(!(c[(c[m>>2]|0)+8>>2]|0)){n=Eh(c[1396+((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=Eh(c[1396+((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=Eh(c[1396+((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=Eh(c[1396+((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=Eh(c[1396+((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=Eh(c[1396+((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=Eh(c[1396+((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=ip(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 Dh(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[1396+((c[f>>2]|0)*48|0)>>2]|0))break;a=(qu(c[e>>2]|0,c[1396+((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[1396+((c[f>>2]|0)*48|0)>>2]|0)){c[g>>2]=0;while(1){if(!(c[2452+(c[g>>2]<<3)>>2]|0))break;if(!(qu(c[e>>2]|0,c[2452+(c[g>>2]<<3)+4>>2]|0)|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[2452+(c[g>>2]<<3)>>2]|0){c[f>>2]=0;while(1){if(!(c[1396+((c[f>>2]|0)*48|0)>>2]|0))break a;h=(qu(c[2452+(c[g>>2]<<3)>>2]|0,c[1396+((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 Eh(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]=No(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=pt(c[f>>2]|0)|0;Ie(35520,d)}else{i=b;return c[g>>2]|0}return 0}function Fh(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]=Dh(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=Uu((c[1396+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;c[z>>2]=(c[z>>2]|0)+o;o=Uu((c[1396+((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]=af(c[z>>2]|0)|0;if(c[y>>2]|0){o=fv(c[y>>2]|0,35259)|0;l=fv(o,(c[1396+((c[x>>2]|0)*48|0)+36>>2]|0)+2|0)|0;ev(l,(c[1396+((c[x>>2]|0)*48|0)+40>>2]|0)+2|0)|0;Hp(c[c[u>>2]>>2]|0);l=Eh(c[y>>2]|0)|0;c[c[u>>2]>>2]=l;gf(c[y>>2]|0);break}c[n>>2]=st()|0;A=c[n>>2]|0;i=m;return A|0}while(0);if(c[p>>2]|0)c[c[p>>2]>>2]=c[1396+((c[x>>2]|0)*48|0)+12>>2];if(c[q>>2]|0)c[c[q>>2]>>2]=c[1396+((c[x>>2]|0)*48|0)+16>>2];if(c[r>>2]|0){Hp(c[c[r>>2]>>2]|0);q=Eh(c[1396+((c[x>>2]|0)*48|0)+20>>2]|0)|0;c[c[r>>2]>>2]=q}if(c[s>>2]|0){Hp(c[c[s>>2]>>2]|0);q=Eh(c[1396+((c[x>>2]|0)*48|0)+24>>2]|0)|0;c[c[s>>2]>>2]=q}if(c[t>>2]|0){Hp(c[c[t>>2]>>2]|0);q=Eh(c[1396+((c[x>>2]|0)*48|0)+28>>2]|0)|0;c[c[t>>2]>>2]=q}if(c[v>>2]|0){Hp(c[c[v>>2]>>2]|0);q=Eh(c[1396+((c[x>>2]|0)*48|0)+32>>2]|0)|0;c[c[v>>2]>>2]=q}if(c[w>>2]|0){Hp(c[c[w>>2]>>2]|0);q=Eh(c[1396+((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 Gh(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[1396+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1396+((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]=Hh(Zf(k,0,35264,f)|0)|0;a:do if((c[m>>2]|0)==68){c[s>>2]=Ff(c[h>>2]|0,46950,5)|0;if(c[s>>2]|0?(c[t>>2]=Mf(c[s>>2]|0,1)|0,Df(c[s>>2]|0),c[t>>2]|0):0){c[r>>2]=Dh(c[t>>2]|0)|0;gf(c[t>>2]|0);if((c[r>>2]|0)>=0?(c[n>>2]=c[1396+((c[r>>2]|0)*48|0)>>2],c[l>>2]|0):0)c[c[l>>2]>>2]=c[1396+((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?(mn(o+20|0),li(o+20|0,c[p>>2]|0)|0):0)break;c[r>>2]=0;while(1){if(!(c[1396+((c[r>>2]|0)*48|0)>>2]|0))break a;rp(c[q>>2]|0);c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+20>>2]|0)|0;if(((((((ko(c[q>>2]|0,c[o+8>>2]|0)|0)==0?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+24>>2]|0)|0,(ko(c[q>>2]|0,c[o+12>>2]|0)|0)==0):0)?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+28>>2]|0)|0,(ko(c[q>>2]|0,c[o+16>>2]|0)|0)==0):0)?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+32>>2]|0)|0,(ko(c[q>>2]|0,c[o+32>>2]|0)|0)==0):0)?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+44>>2]|0)|0,(ko(c[q>>2]|0,c[o+36>>2]|0)|0)==0):0)?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+36>>2]|0)|0,(ko(c[q>>2]|0,c[o+20>>2]|0)|0)==0):0)?(rp(c[q>>2]|0),c[q>>2]=Eh(c[1396+((c[r>>2]|0)*48|0)+40>>2]|0)|0,(ko(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[1396+((c[r>>2]|0)*48|0)>>2];if(c[l>>2]|0)c[c[l>>2]>>2]=c[1396+((c[r>>2]|0)*48|0)+4>>2]}while(0);Hp(c[q>>2]|0);Hp(c[o+8>>2]|0);Hp(c[o+12>>2]|0);Hp(c[o+16>>2]|0);Hp(c[p>>2]|0);on(o+20|0);Hp(c[o+32>>2]|0);Hp(c[o+36>>2]|0);c[g>>2]=c[n>>2];u=c[g>>2]|0;i=e;return u|0}function Hh(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 Ih(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]=Ff(c[g>>2]|0,46956,0)|0;if(c[x>>2]|0?(c[k>>2]=tj(c[x>>2]|0,w,0)|0,Df(c[x>>2]|0),c[x>>2]=0,c[k>>2]|0):0)break;c[x>>2]=Ff(c[g>>2]|0,46950,5)|0;if(c[x>>2]|0?(c[w>>2]&512|0)==0:0){B=13;break}c[k>>2]=Jh(o,c[g>>2]|0,48433)|0;if((((((c[k>>2]|0)==0?(c[k>>2]=Jh(p,c[g>>2]|0,39159)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Jh(q,c[g>>2]|0,35272)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Kh(r,c[g>>2]|0,35274,0)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Jh(s,c[g>>2]|0,39163)|0,(c[k>>2]|0)==0):0)?(c[k>>2]=Jh(t,c[g>>2]|0,35285)|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]=Mf(c[x>>2]|0,1)|0;Df(c[x>>2]|0);if(!(c[y>>2]|0)){c[k>>2]=65;break}}else c[y>>2]=0;c[z>>2]=hf(1,44)|0;if(!(c[z>>2]|0)){c[k>>2]=st()|0;gf(c[y>>2]|0);break}c[k>>2]=Ch(0,c[y>>2]|0?c[y>>2]|0:c[h>>2]|0,c[z>>2]|0,0)|0;gf(c[y>>2]|0);d=c[z>>2]|0;if(c[k>>2]|0){gf(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]=qn(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}ei(c[z>>2]|0);gf(c[z>>2]|0)}c[k>>2]=un(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]=dh(c[l>>2]|0,1)|0;if(c[q>>2]|0){rp(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]=Kh(u,c[g>>2]|0,49661,c[A>>2]|0)|0;if(c[k>>2]|0)break;c[k>>2]=Jh(v,c[g>>2]|0,35287)|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);eh(c[l>>2]|0);rp(c[o>>2]|0);rp(c[p>>2]|0);rp(c[q>>2]|0);nn(c[r>>2]|0);rp(c[s>>2]|0);rp(c[t>>2]|0);nn(c[u>>2]|0);rp(c[v>>2]|0);i=e;return c[k>>2]|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;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]=Ff(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=Nf(c[l>>2]|0,1,5)|0;c[c[f>>2]>>2]=h;Df(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 Kh(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]=Ff(c[k>>2]|0,c[l>>2]|0,0)|0;if(c[o>>2]|0){c[q>>2]=Nf(c[o>>2]|0,1,8)|0;Df(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]=ln(0)|0;if(c[m>>2]|0?(c[(c[m>>2]|0)+4>>2]|0)==1:0)c[n>>2]=Vh(c[q>>2]|0,c[m>>2]|0,c[p>>2]|0,0,0)|0;else c[n>>2]=li(c[p>>2]|0,c[q>>2]|0)|0;rp(c[q>>2]|0);if(c[n>>2]|0){nn(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]=af((Uu(c[l>>2]|0)|0)+2+1|0)|0;if(!(c[r>>2]|0)){c[g>>2]=st()|0;v=c[g>>2]|0;i=f;return v|0}ev(fv(c[r>>2]|0,c[l>>2]|0)|0,35276)|0;c[n>>2]=Jh(s,c[k>>2]|0,c[r>>2]|0)|0;q=c[r>>2]|0;if(c[n>>2]|0){gf(q);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}ev(fv(q,c[l>>2]|0)|0,35279)|0;c[n>>2]=Jh(t,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){rp(c[s>>2]|0);gf(c[r>>2]|0);c[g>>2]=c[n>>2];v=c[g>>2]|0;i=f;return v|0}ev(fv(c[r>>2]|0,c[l>>2]|0)|0,35282)|0;c[n>>2]=Jh(u,c[k>>2]|0,c[r>>2]|0)|0;if(c[n>>2]|0){rp(c[t>>2]|0);rp(c[s>>2]|0);gf(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]=Cp(0,1)|0;n=c[s>>2]|0;if((c[s>>2]|0)!=0&(c[t>>2]|0)!=0)c[p>>2]=qn(0,n,c[t>>2]|0,c[u>>2]|0)|0;else{rp(n);rp(c[t>>2]|0);rp(c[u>>2]|0);c[p>>2]=0}gf(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 Lh(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(Ch(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]=Fp(0)|0;c[n>>2]=Fp(0)|0;c[l>>2]=sn(0,0,0,c[k+8>>2]|0,c[k+12>>2]|0,0)|0;if(gn(c[m>>2]|0,c[n>>2]|0,k+20|0,c[l>>2]|0)|0)Ie(35289,e);wn(c[l>>2]|0);on(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]=ji(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;rp(c[m>>2]|0);rp(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(Qf(p,0,35338,d)|0)c[p>>2]=0;c[q>>2]=0;while(1){if(!(c[o+(c[q>>2]<<2)>>2]|0))break;Hp(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 Mh(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((qu(c[h>>2]|0,48433)|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=wp(c[(c[k>>2]|0)+16>>2]|0)|0;c[g>>2]=p;o=c[g>>2]|0;i=f;return o|0}if((qu(c[h>>2]|0,39159)|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=wp(c[(c[k>>2]|0)+20>>2]|0)|0;c[g>>2]=q;o=c[g>>2]|0;i=f;return o|0}if((qu(c[h>>2]|0,35272)|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=wp(c[(c[k>>2]|0)+24>>2]|0)|0;c[g>>2]=r;o=c[g>>2]|0;i=f;return o|0}if((qu(c[h>>2]|0,39163)|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=wp(c[(c[k>>2]|0)+32>>2]|0)|0;c[g>>2]=s;o=c[g>>2]|0;i=f;return o|0}if((qu(c[h>>2]|0,35285)|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=wp(c[(c[k>>2]|0)+36>>2]|0)|0;c[g>>2]=t;o=c[g>>2]|0;i=f;return o|0}if((qu(c[h>>2]|0,35287)|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=wp(c[(c[k>>2]|0)+44>>2]|0)|0;c[g>>2]=u;o=c[g>>2]|0;i=f;return o|0}if(((qu(c[h>>2]|0,35386)|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=wp(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(((qu(c[h>>2]|0,35390)|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=wp(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(((qu(c[h>>2]|0,35394)|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=wp(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(((qu(c[h>>2]|0,35398)|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=wp(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((qu(c[h>>2]|0,35274)|0)==0?c[(c[k>>2]|0)+28>>2]|0:0){c[g>>2]=ki(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=mi(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]=ki(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0)|0;o=c[g>>2]|0;i=f;return o|0}if((qu((c[h>>2]|0)+2|0,46916)|0)==0?(c[c[k>>2]>>2]|0)==2:0){if(Qh(c[(c[k>>2]|0)+40>>2]|0,c[k>>2]|0,0,0,0,m,n)|0)break;c[g>>2]=sp(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 Nh(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((qu(c[f>>2]|0,35274)|0)==0?c[(c[g>>2]|0)+28>>2]|0:0){c[e>>2]=Oh(c[(c[g>>2]|0)+28>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}if(!(qu(c[f>>2]|0,49661)|0)){if(!(c[(c[g>>2]|0)+40>>2]|0)){f=mi(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]=Oh(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 Oh(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]=ln(0)|0;Ph(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 Ph(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;yp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;yp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;yp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function Qh(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=Fp(0)|0;c[t>>2]=v;if(c[o>>2]|0)w=c[o>>2]|0;else w=Fp(0)|0;c[u>>2]=w;if(gn(c[t>>2]|0,c[u>>2]|0,c[l>>2]|0,c[m>>2]|0)|0){He(35402,k);c[s>>2]=63}else c[s>>2]=Rh(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))rp(c[t>>2]|0);if(c[o>>2]|0){x=c[s>>2]|0;i=k;return x|0}rp(c[u>>2]|0);x=c[s>>2]|0;i=k;return x|0}function Rh(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]=Lo(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]=st()|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 Sh(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]=up(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(tp(c[g>>2]|0,(c[l>>2]|0)+1|0,(c[m>>2]|0)-1<<3)|0)break;c[f>>2]=st()|0;r=c[f>>2]|0;i=e;return r|0}c[k>>2]=No(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]=No(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){rp(b);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=Rh(b,c[o>>2]|0,((c[h>>2]|0)>>>0)/8|0,0,p,q)|0;rp(c[n>>2]|0);rp(c[o>>2]|0);if(!(c[k>>2]|0)){sp(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 Th(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[17640]|0))c[17640]=Uh(35455)|0;if(!(c[17641]|0))c[17641]=Cp(0,7)|0;c[o>>2]=Fp(0)|0;c[p>>2]=Fp(0)|0;c[q>>2]=Fp(0)|0;c[r>>2]=Fp(0)|0;Fo(c[o>>2]|0,c[k>>2]|0,c[k>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[p>>2]|0,c[(c[m>>2]|0)+24>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Vn(c[o>>2]|0,c[o>>2]|0,1);Tn(c[p>>2]|0,c[p>>2]|0,1);k=c[q>>2]|0;e=c[p>>2]|0;d=Kp(3)|0;Go(k,e,d,c[(c[m>>2]|0)+16>>2]|0);Go(c[r>>2]|0,c[p>>2]|0,c[17641]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Go(c[r>>2]|0,c[r>>2]|0,c[17640]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[h>>2]|0,c[r>>2]|0,c[q>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);xp(c[r>>2]|0,c[r>>2]|0);if(!(ko(c[r>>2]|0,c[o>>2]|0)|0)){if(!(c[17642]|0))c[17642]=Uh(35555)|0;Fo(c[h>>2]|0,c[h>>2]|0,c[17642]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[h>>2]|0,c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0);Fo(c[r>>2]|0,c[r>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+16>>2]|0);xp(c[r>>2]|0,c[r>>2]|0);if(!(ko(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))Wn(c[h>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[h>>2]|0);rp(c[r>>2]|0);rp(c[q>>2]|0);rp(c[p>>2]|0);rp(c[o>>2]|0);c[g>>2]=c[n>>2];s=c[g>>2]|0;i=f;return s|0}function Uh(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]=No(g,4,c[e>>2]|0,0,0)|0;if(c[f>>2]|0){c[d>>2]=pt(c[f>>2]|0)|0;Ie(35520,d)}else{i=b;return c[g>>2]|0}return 0}function Vh(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]=up(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]=No(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]=No(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){rp(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]=Rh(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){rp(c[w>>2]|0);rp(c[x>>2]|0);c[l>>2]=c[r>>2];y=c[l>>2]|0;i=k;return y|0}Ap(c[c[o>>2]>>2]|0,c[w>>2]|0);Ap(c[(c[o>>2]|0)+4>>2]|0,c[x>>2]|0);Cp(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]=af(c[t>>2]|0?c[t>>2]|0:1)|0;if(c[s>>2]|0){Pw(c[s>>2]|0,c[v>>2]|0,c[t>>2]|0)|0;Wh(c[s>>2]|0,c[t>>2]|0);break}c[l>>2]=st()|0;y=c[l>>2]|0;i=k;return y|0}else z=21;while(0);if((z|0)==21?(c[s>>2]=Jo(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]=st()|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;Mo(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}Wh(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 gf(c[s>>2]|0);c[r>>2]=Th(c[c[o>>2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0,c[u>>2]|0,c[n>>2]|0)|0;Cp(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 Wh(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 Xh(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]=jf(2,c[t>>2]|0)|0;if(!(c[q>>2]|0)){c[h>>2]=st()|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]=Jo(c[l>>2]|0,0,p,0)|0;l=c[q>>2]|0;if(!(c[o>>2]|0)){gf(l);c[h>>2]=st()|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]=aj(c[s>>2]|0,0,c[q>>2]|0,r,2)|0;gf(c[o>>2]|0);o=c[q>>2]|0;if(c[n>>2]|0){gf(o);c[h>>2]=c[n>>2];u=c[h>>2]|0;i=g;return u|0}else{Wh(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 Yh(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;mn(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]=Gp(0)|0;c[r>>2]=Fp(0)|0;c[s>>2]=Fp(0)|0;c[y>>2]=df(c[p>>2]<<1)|0;if(!(c[y>>2]|0)){c[o>>2]=Zh()|0;on(t);z=c[q>>2]|0;Hp(z);A=c[r>>2]|0;Hp(A);B=c[s>>2]|0;Hp(B);C=c[y>>2]|0;gf(C);D=c[o>>2]|0;i=h;return D|0}c[w>>2]=c[p>>2];c[v>>2]=Xm(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]=aj(10,0,c[y>>2]|0,x,1)|0;if(c[o>>2]|0){on(t);z=c[q>>2]|0;Hp(z);A=c[r>>2]|0;Hp(A);B=c[s>>2]|0;Hp(B);C=c[y>>2]|0;gf(C);D=c[o>>2]|0;i=h;return D|0}x=sp(0,c[v>>2]|0,c[w>>2]<<3)|0;c[(c[k>>2]|0)+56>>2]=x;c[v>>2]=0;Wh(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;Mo(c[q>>2]|0,c[y>>2]|0,32,0);gf(c[y>>2]|0);c[y>>2]=0;Pn(t,c[q>>2]|0,(c[l>>2]|0)+20|0,c[m>>2]|0);if(rf(1)|0)fn(35620,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=wp(c[(c[l>>2]|0)+8>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=m;m=wp(c[(c[l>>2]|0)+12>>2]|0)|0;c[(c[k>>2]|0)+12>>2]=m;m=wp(c[(c[l>>2]|0)+16>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=m;mn((c[k>>2]|0)+20|0);ai((c[k>>2]|0)+20|0,(c[l>>2]|0)+20|0);m=wp(c[(c[l>>2]|0)+32>>2]|0)|0;c[(c[k>>2]|0)+32>>2]=m;m=wp(c[(c[l>>2]|0)+36>>2]|0)|0;c[(c[k>>2]|0)+36>>2]=m;mn((c[k>>2]|0)+44|0);ai((c[k>>2]|0)+44|0,t);on(t);z=c[q>>2]|0;Hp(z);A=c[r>>2]|0;Hp(A);B=c[s>>2]|0;Hp(B);C=c[y>>2]|0;gf(C);D=c[o>>2]|0;i=h;return D|0}function Zh(){return _h(st()|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=$h(1,c[d>>2]|0)|0;i=b;return a|0}function $h(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 ai(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;yp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;yp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;yp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function bi(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){mn(D);mn(E);c[F>>2]=Gp(0)|0;c[G>>2]=Fp(0)|0;c[H>>2]=Fp(0)|0;c[I>>2]=Fp(0)|0;c[s>>2]=sn(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]=Xh(v,c[(c[m>>2]|0)+56>>2]|0,c[s>>2]|0)|0;do if(!(c[r>>2]|0)){Mo(c[F>>2]|0,c[v>>2]|0,32,0);if(c[q>>2]|0){c[r>>2]=Vh(c[q>>2]|0,c[s>>2]|0,E,B,C)|0;if(c[r>>2]|0)break;if(rf(1)|0)Me(35634,c[B>>2]|0,c[C>>2]|0);if(!(Rn(E,c[s>>2]|0)|0)){c[r>>2]=195;break}}else{Pn(E,c[F>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);c[r>>2]=Qh(E,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,B,C)|0;if(c[r>>2]|0)break;if(rf(1)|0)Me(35641,c[B>>2]|0,c[C>>2]|0)}c[x>>2]=up(c[l>>2]|0,u)|0;c[y>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(rf(1)|0)Me(35648,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]=aj(c[p>>2]|0,0,c[v>>2]|0,w,2)|0;if(!(c[r>>2]|0)){Wh(c[v>>2]|0,64);if(rf(1)|0)Me(53156,c[v>>2]|0,64);Mo(c[I>>2]|0,c[v>>2]|0,64,0);Pn(D,c[I>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);if(rf(1)|0)fn(35655,D,c[s>>2]|0);c[r>>2]=Qh(D,c[s>>2]|0,c[G>>2]|0,c[H>>2]|0,0,z,A)|0;if(!(c[r>>2]|0)){if(rf(1)|0)Me(35660,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]=aj(c[p>>2]|0,0,c[v>>2]|0,w,3)|0;if(!(c[r>>2]|0)){sp(c[n>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;Wh(c[v>>2]|0,64);if(rf(1)|0)Me(35667,c[v>>2]|0,64);Mo(c[o>>2]|0,c[v>>2]|0,64,0);Fo(c[o>>2]|0,c[o>>2]|0,c[F>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Xn(c[o>>2]|0,c[o>>2]|0,c[I>>2]|0,c[(c[m>>2]|0)+32>>2]|0);c[r>>2]=ci(c[o>>2]|0,c[t>>2]|0,z,A)|0;if(!(c[r>>2]|0)){if(rf(1)|0)Me(35674,c[z>>2]|0,c[A>>2]|0);sp(c[o>>2]|0,c[z>>2]|0,c[A>>2]<<3)|0;c[z>>2]=0;c[r>>2]=0}}}}}while(0);Hp(c[F>>2]|0);Hp(c[G>>2]|0);Hp(c[H>>2]|0);Hp(c[I>>2]|0);gf(c[v>>2]|0);wn(c[s>>2]|0);on(D);on(E);gf(c[B>>2]|0);gf(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 ci(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]=Jo(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]=st()|0;p=c[g>>2]|0;i=f;return p|0}return 0}function di(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}mn(v);mn(I);mn(J);c[G>>2]=Fp(0)|0;c[H>>2]=Fp(0)|0;c[s>>2]=sn(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]=Vh(c[q>>2]|0,c[s>>2]|0,v,w,x)|0;a:do if(!(c[r>>2]|0)){if(!(Rn(v,c[s>>2]|0)|0)){c[r>>2]=195;break}if(rf(1)|0)Me(35641,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]=up(c[l>>2]|0,u)|0;c[B>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(rf(1)|0)Me(35648,c[y>>2]|0,c[B>>2]|0);c[z>>2]=up(c[n>>2]|0,u)|0;c[C>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;if(rf(1)|0)Me(53156,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]=aj(c[p>>2]|0,0,E,F,3)|0;if(!(c[r>>2]|0)){Wh(E,64);if(rf(1)|0)Me(35667,E,64);Mo(c[G>>2]|0,E,64,0);c[K>>2]=vp(c[o>>2]|0,u)|0;c[L>>2]=(((c[u>>2]|0)+7|0)>>>0)/8|0;Wh(c[K>>2]|0,c[L>>2]|0);if(rf(1)|0)Me(53163,c[K>>2]|0,c[L>>2]|0);Mo(c[H>>2]|0,c[K>>2]|0,c[L>>2]|0,0);gf(c[K>>2]|0);if((c[L>>2]|0)!=(c[t>>2]|0)){c[r>>2]=139;break}Pn(I,c[H>>2]|0,(c[m>>2]|0)+20|0,c[s>>2]|0);Pn(J,c[G>>2]|0,v,c[s>>2]|0);xp(c[J>>2]|0,c[J>>2]|0);Jn(I,I,J,c[s>>2]|0);c[r>>2]=Qh(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(wv(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);gf(c[w>>2]|0);gf(c[A>>2]|0);wn(c[s>>2]|0);Hp(c[H>>2]|0);Hp(c[G>>2]|0);on(I);on(J);on(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 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;rp(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;rp(c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;rp(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0;on((c[d>>2]|0)+20|0);rp(c[(c[d>>2]|0)+32>>2]|0);c[(c[d>>2]|0)+32>>2]=0;rp(c[(c[d>>2]|0)+36>>2]|0);c[(c[d>>2]|0)+36>>2]=0;i=b;return}function fi(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]=wp(c[b+8>>2]|0)|0;c[e+12>>2]=wp(c[b+12>>2]|0)|0;c[e+16>>2]=wp(c[b+16>>2]|0)|0;mn(e+20|0);gi(e+20|0,b+20|0);c[e+32>>2]=wp(c[b+32>>2]|0)|0;c[e+36>>2]=wp(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 gi(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;yp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;yp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;yp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function hi(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]=37722;switch(c[d>>2]|0){case 0:{c[e>>2]=35681;break}case 1:{c[e>>2]=45496;break}case 2:{c[e>>2]=35693;break}default:{}}i=b;return c[e>>2]|0}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]=37722;switch(c[d>>2]|0){case 0:{c[e>>2]=35701;break}case 1:{c[e>>2]=35710;break}default:{}}i=b;return c[e>>2]|0}function ji(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]=(((_n(c[n>>2]|0)|0)+7|0)>>>0)/8|0;c[r>>2]=lf(1+(c[p>>2]<<1)|0)|0;a[c[r>>2]>>0]=4;c[s>>2]=(c[r>>2]|0)+1;c[o>>2]=Ro(5,c[s>>2]|0,c[p>>2]|0,q,c[l>>2]|0)|0;if(c[o>>2]|0){c[k>>2]=pt(c[o>>2]|0)|0;Ie(35718,k)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Rw((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;Tw(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]=Ro(5,c[s>>2]|0,c[p>>2]|0,q,c[m>>2]|0)|0;if(c[o>>2]|0){c[h>>2]=pt(c[o>>2]|0)|0;Ie(35718,h)}if((c[q>>2]|0)>>>0<(c[p>>2]|0)>>>0){Rw((c[s>>2]|0)+((c[p>>2]|0)-(c[q>>2]|0))|0,c[s>>2]|0,c[q>>2]|0)|0;Tw(c[s>>2]|0,0,(c[p>>2]|0)-(c[q>>2]|0)|0)|0}c[o>>2]=No(t,5,c[r>>2]|0,1+(c[p>>2]<<1)|0,0)|0;if(c[o>>2]|0){c[g>>2]=pt(c[o>>2]|0)|0;Ie(35740,g)}else{gf(c[r>>2]|0);i=f;return c[t>>2]|0}return 0}function ki(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]=Fp(0)|0;c[h>>2]=Fp(0)|0;if(gn(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]=ji(c[g>>2]|0,c[h>>2]|0,c[(c[f>>2]|0)+16>>2]|0)|0;rp(c[g>>2]|0);rp(c[h>>2]|0);i=d;return c[k>>2]|0}function li(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]=up(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]=(((_n(c[h>>2]|0)|0)+7|0)>>>0)/8|0;c[n>>2]=lf(c[l>>2]|0)|0;c[k>>2]=Ro(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}gf(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){gf(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){gf(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){gf(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]=No(o,5,(c[m>>2]|0)+1|0,c[l>>2]|0,0)|0;if(c[k>>2]|0){gf(c[n>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}c[k>>2]=No(p,5,(c[m>>2]|0)+1+(c[l>>2]|0)|0,c[l>>2]|0,0)|0;gf(c[n>>2]|0);if(c[k>>2]|0){rp(c[o>>2]|0);c[f>>2]=c[k>>2];r=c[f>>2]|0;i=e;return r|0}else{yp(c[c[g>>2]>>2]|0,c[o>>2]|0)|0;yp(c[(c[g>>2]|0)+4>>2]|0,c[p>>2]|0)|0;Cp(c[(c[g>>2]|0)+8>>2]|0,1)|0;rp(c[o>>2]|0);rp(c[p>>2]|0);c[f>>2]=0;r=c[f>>2]|0;i=e;return r|0}return 0}function mi(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(Xh(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]=Gp(0)|0;Mo(c[n>>2]|0,c[o>>2]|0,32,0);gf(c[o>>2]|0);if(!(c[h>>2]|0))c[h>>2]=ln(0)|0;if(c[h>>2]|0)Pn(c[h>>2]|0,c[n>>2]|0,c[l>>2]|0,c[k>>2]|0);rp(c[n>>2]|0)}else{if(!(c[h>>2]|0))c[h>>2]=ln(0)|0;if(c[h>>2]|0)Pn(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 ni(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(dj(c[f>>2]|0,8,0,0)|0){c[k>>2]=5;if(c[h>>2]|0)Cb[c[h>>2]&1](36021,c[f>>2]|0,37815,36765)}else c[k>>2]=oi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;h=vi(c[k>>2]|0)|0;i=e;return h|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;switch(c[f>>2]|0){case 2:{c[k>>2]=pi(c[g>>2]|0,c[h>>2]|0)|0;break}case 11:{c[k>>2]=ri(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=si(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=ti(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=ui(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|0}function pi(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]=35761;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]=qi(2,35776,9,m,64,35786,20)|0;do if(!(c[l>>2]|0)){if(c[g>>2]|0){c[k>>2]=35883;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]=qi(2,35898,9,m,20,35908,20)|0;if(c[l>>2]|0)break;c[k>>2]=35929;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]=qi(2,35944,9,m,100,35954,20)|0;if(c[l>>2]|0)break;c[k>>2]=35975;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]=qi(2,35990,9,m,49,36e3,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](36021,2,c[k>>2]|0,c[l>>2]|0);c[f>>2]=50;p=c[f>>2]|0;i=e;return p|0}function qi(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=cj(c[m>>2]|0)|0;if((h|0)!=(c[s>>2]|0)){c[l>>2]=35807;v=c[l>>2]|0;i=k;return v|0}if(Ei(t,c[m>>2]|0,2)|0){c[l>>2]=49722;v=c[l>>2]|0;i=k;return v|0}h=(Vi(c[t>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)!=0;q=c[t>>2]|0;if(h){Oi(q);c[l>>2]=35826;v=c[l>>2]|0;i=k;return v|0}Pi(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)){Oi(c[t>>2]|0);c[l>>2]=35848;v=c[l>>2]|0;i=k;return v|0}m=(wv(c[u>>2]|0,c[r>>2]|0,c[s>>2]|0)|0)!=0;Oi(c[t>>2]|0);if(m){c[l>>2]=35868;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 ri(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[2748+((c[l>>2]|0)*40|0)>>2]|0)){m=6;break}c[h>>2]=c[2748+((c[l>>2]|0)*40|0)>>2];b=c[2748+((c[l>>2]|0)*40|0)+4>>2]|0;a=Uu(c[2748+((c[l>>2]|0)*40|0)+4>>2]|0)|0;n=c[2748+((c[l>>2]|0)*40|0)+8>>2]|0;o=Uu(c[2748+((c[l>>2]|0)*40|0)+8>>2]|0)|0;c[k>>2]=qi(11,b,a,n,o,2748+((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](36021,11,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|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,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[3028+((c[l>>2]|0)*44|0)>>2]|0)){p=13;break}c[h>>2]=c[3028+((c[l>>2]|0)*44|0)>>2];b=c[3028+((c[l>>2]|0)*44|0)+4>>2]|0;a=Uu(c[3028+((c[l>>2]|0)*44|0)+4>>2]|0)|0;q=c[3028+((c[l>>2]|0)*44|0)+8>>2]|0;r=Uu(c[3028+((c[l>>2]|0)*44|0)+8>>2]|0)|0;c[k>>2]=qi(8,b,a,q,r,3028+((c[l>>2]|0)*44|0)+12|0,32)|0;if(c[k>>2]|0)break;r=c[3028+((c[l>>2]|0)*44|0)+8>>2]|0;c[m>>2]=Mp(r,Uu(c[3028+((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[3028+((c[l>>2]|0)*44|0)+4>>2]|0;Np(r,q,Uu(c[3028+((c[l>>2]|0)*44|0)+4>>2]|0)|0);c[n>>2]=Sp(c[m>>2]|0,o)|0;if(!(c[n>>2]|0)){p=7;break}if((c[o>>2]|0)!=32){p=10;break}if(wv(c[n>>2]|0,3028+((c[l>>2]|0)*44|0)+12|0,32)|0){p=10;break}Rp(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]=36670;else if((p|0)==7){c[k>>2]=36695;Rp(c[m>>2]|0)}else if((p|0)==10){c[k>>2]=36725;Rp(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](36021,8,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;s=c[e>>2]|0;i=d;return s|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;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[3336+((c[l>>2]|0)*60|0)>>2]|0)){m=6;break}c[h>>2]=c[3336+((c[l>>2]|0)*60|0)>>2];b=c[3336+((c[l>>2]|0)*60|0)+4>>2]|0;a=Uu(c[3336+((c[l>>2]|0)*60|0)+4>>2]|0)|0;n=c[3336+((c[l>>2]|0)*60|0)+8>>2]|0;o=Uu(c[3336+((c[l>>2]|0)*60|0)+8>>2]|0)|0;c[k>>2]=qi(9,b,a,n,o,3336+((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](36021,9,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;p=c[e>>2]|0;i=d;return p|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[3756+((c[l>>2]|0)*76|0)>>2]|0)){m=6;break}c[h>>2]=c[3756+((c[l>>2]|0)*76|0)>>2];b=c[3756+((c[l>>2]|0)*76|0)+4>>2]|0;a=Uu(c[3756+((c[l>>2]|0)*76|0)+4>>2]|0)|0;n=c[3756+((c[l>>2]|0)*76|0)+8>>2]|0;o=Uu(c[3756+((c[l>>2]|0)*76|0)+8>>2]|0)|0;c[k>>2]=qi(10,b,a,n,o,3756+((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](36021,10,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){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=wi(1,c[d>>2]|0)|0;i=b;return a|0}function wi(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 xi(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]=yi(c[e>>2]|0,0)|0;if(c[f>>2]|0){c[d>>2]=c[c[f>>2]>>2];break}c[f>>2]=Ai(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 yi(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(sv(c[f>>2]|0,36789,4)|0?sv(c[f>>2]|0,36794,4)|0:0)break;c[f>>2]=(c[f>>2]|0)+4}while(0);c[h>>2]=zi(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(!(dv(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 zi(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[4288+(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(!(dv(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 Ai(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[4288+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){h=6;break}if(!(dv(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 Bi(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]=Ci(c[d>>2]|0)|0;if(!(c[e>>2]|0)){f=37722;i=b;return f|0}f=c[(c[e>>2]|0)+8>>2]|0;i=b;return f|0}function Ci(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]=Di(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4288+(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 Di(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 Ei(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]=Fi(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 Fi(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]=df(o)|0;else c[q>>2]=af(o)|0;if(!(c[q>>2]|0))c[l>>2]=qt(c[(gu()|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=df(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]=qt(c[(gu()|0)>>2]|0)|0;Gi(c[q>>2]|0)}}if(((c[l>>2]|0)==0?($m(),c[h>>2]|0):0)?(c[l>>2]=Ji(c[q>>2]|0,c[h>>2]|0)|0,c[l>>2]|0):0)Gi(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 Gi(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)Hi(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=Yw(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}gf(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=Yw(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}gf(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=Yw(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}gf(c[f>>2]|0);i=e;return}function Hi(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)Ii(c[d>>2]|0,0,0);Fv(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=Yw(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 Ii(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?(Kv((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)De(36799,630,36804);if(c[h>>2]|0?(Kv(c[g>>2]|0,c[h>>2]|0,1,c[(c[c[f>>2]>>2]|0)+8>>2]|0)|0)!=1:0)De(36799,632,36804)}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 Ji(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]=Ci(c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=c[l>>2];Ke(36813,g);c[p>>2]=5}if(((c[p>>2]|0)==0&(c[l>>2]|0)==1?Ig()|0:0)?(Qg(36852),Og()|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]=df(l)|0;else c[o>>2]=af(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]=qt(c[(gu()|0)>>2]|0)|0;break}}while(0);c[h>>2]=c[p>>2];s=c[h>>2]|0;i=f;return s|0}function Ki(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[e>>2]=a;c[f>>2]=b;c[g>>2]=Li(c[f>>2]|0,c[e>>2]|0)|0;if(!(c[g>>2]|0)){h=c[g>>2]|0;i=d;return h|0}c[c[e>>2]>>2]=0;h=c[g>>2]|0;i=d;return h|0}function Li(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+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]=b;c[g>>2]=d;c[h>>2]=0;c[k>>2]=c[c[f>>2]>>2];if(c[(c[f>>2]|0)+4>>2]|0)Ii(c[f>>2]|0,0,0);c[p>>2]=(c[c[f>>2]>>2]|0)-(c[f>>2]|0);d=(c[p>>2]|0)+28|0;if(a[(c[k>>2]|0)+12>>0]&1|0)c[o>>2]=df(d)|0;else c[o>>2]=af(d)|0;if(!(c[o>>2]|0))c[h>>2]=qt(c[(gu()|0)>>2]|0)|0;do if(!(c[h>>2]|0)){d=(c[o>>2]|0)+(c[p>>2]|0)|0;c[l>>2]=d;c[c[o>>2]>>2]=d;if((c[(c[f>>2]|0)+8>>2]|0)!=((c[p>>2]|0)-16+1|0))Ee(36861,36799,493,36918);c[(c[o>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2];c[(c[o>>2]|0)+4>>2]=0;if(c[(c[f>>2]|0)+4>>2]|0)Ee(36926,36799,496,36918);d=c[l>>2]|0;b=c[k>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];c[d+24>>2]=c[b+24>>2];c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+8>>2]=0;if(c[(c[k>>2]|0)+20>>2]|0){b=df(c[(c[k>>2]|0)+24>>2]<<1)|0;c[(c[l>>2]|0)+20>>2]=b;if(c[(c[l>>2]|0)+20>>2]|0){Pw(c[(c[l>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+20>>2]|0,c[(c[k>>2]|0)+24>>2]<<1|0)|0;break}else{c[h>>2]=qt(c[(gu()|0)>>2]|0)|0;Gi(c[o>>2]|0);break}}}while(0);a:do if(!(c[h>>2]|0)){c[m>>2]=c[(c[k>>2]|0)+16>>2];while(1){if(!(c[m>>2]|0))break a;f=24+(c[(c[c[m>>2]>>2]|0)+44>>2]|0)-8|0;if(a[(c[k>>2]|0)+12>>0]&1|0)c[n>>2]=df(f)|0;else c[n>>2]=af(f)|0;if(!(c[n>>2]|0))break;Pw(c[n>>2]|0,c[m>>2]|0,24+(c[(c[c[m>>2]>>2]|0)+44>>2]|0)-8|0)|0;c[(c[n>>2]|0)+4>>2]=c[(c[l>>2]|0)+16>>2];c[(c[l>>2]|0)+16>>2]=c[n>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}c[h>>2]=qt(c[(gu()|0)>>2]|0)|0;Gi(c[o>>2]|0)}while(0);if(!(c[h>>2]|0?1:(c[(c[k>>2]|0)+8>>2]|0)==0))Mi(c[o>>2]|0,36940);if(c[h>>2]|0){q=c[h>>2]|0;i=e;return q|0}c[c[g>>2]>>2]=c[o>>2];q=c[h>>2]|0;i=e;return q|0}function Mi(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(Ig()|0){i=d;return}if(c[(c[c[g>>2]>>2]|0)+8>>2]|0){Ke(36948,d);i=d;return}c[17643]=(c[17643]|0)+1;b=c[h>>2]|0;c[f>>2]=c[17643];c[f+4>>2]=b;Du(k,49,36980,f)|0;f=Av(k,36997)|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;Ke(36999,e);i=d;return}function Ni(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;Tw((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}Ii(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 Oi(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;Gi(c[d>>2]|0);i=b;return}function Pi(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;Ii(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Qi(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:{Ri(c[g>>2]|0);break}case 32:{Mi(c[g>>2]|0,c[k>>2]|0);break}case 33:{Hi(c[g>>2]|0);break}default:c[l>>2]=61}i=f;return c[l>>2]|0}function Ri(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)Ii(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]=Si(c[f>>2]|0)|0;c[k>>2]=Ti(c[f>>2]|0,c[h>>2]|0)|0;c[l>>2]=Ui(c[h>>2]|0)|0;c[n>>2]=Fi(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)xe(c[n>>2]|0,0);Ii(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);Ii(c[m>>2]|0,c[k>>2]|0,c[l>>2]|0);Ri(c[m>>2]|0);f=c[k>>2]|0;k=Ti(c[m>>2]|0,c[h>>2]|0)|0;Pw(f|0,k|0,c[l>>2]|0)|0;Gi(c[m>>2]|0);i=e;return}function Si(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){Rg(36799,980,37024,0,37036);He(37057,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 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;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))De(36799,816,37147);if(c[(c[k>>2]|0)+4>>2]|0)Ke(37108,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)De(36799,816,37147);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 Ui(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]=Ci(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 Vi(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]=Wi(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(!(c[k>>2]|0))Ni(c[f>>2]|0)}else c[k>>2]=70;i=e;return c[k>>2]|0}function Wi(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]=Si(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]=df(Ui(c[o>>2]|0)|0)|0;if(c[p>>2]|0){Xi(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]=Ui(c[o>>2]|0)|0;if((c[m>>2]|0)>>>0<=(c[(c[c[k>>2]>>2]|0)+24>>2]|0)>>>0)break;Ee(37191,36799,716,37224)}else{c[h>>2]=qt(c[(gu()|0)>>2]|0)|0;s=c[h>>2]|0;i=g;return s|0}}while(0);Tw(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);Pw(c[q>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;Pw(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}gf(c[p>>2]|0);c[h>>2]=0;s=c[h>>2]|0;i=g;return s|0}function Xi(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){Ll(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if((c[h>>2]|0)==3?(Ig()|0)==0:0){Rk(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0);i=f;return}if(((c[h>>2]|0)==1?Ig()|0:0)?(Qg(36852),Og()|0):0)Ng();c[o>>2]=Fi(n,c[h>>2]|0,0)|0;if(c[o>>2]|0){e=c[h>>2]|0;d=pt(Yi(c[o>>2]|0)|0)|0;c[g>>2]=e;c[g+4>>2]=d;Je(37155,g)}Ii(c[n>>2]|0,c[l>>2]|0,c[m>>2]|0);Ri(c[n>>2]|0);m=c[k>>2]|0;k=Ti(c[n>>2]|0,c[h>>2]|0)|0;Pw(m|0,k|0,Ui(c[h>>2]|0)|0)|0;Gi(c[n>>2]|0);i=f;return}function Yi(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(32,c[d>>2]|0)|0;i=b;return a|0}function Zi(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 _i(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;Qi(c[e>>2]|0,5,0,0)|0;b=Ti(c[e>>2]|0,c[f>>2]|0)|0;i=d;return b|0}function aj(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?Ig()|0:0)?(Qg(36852),Og()|0):0)Ng();c[r>>2]=Fi(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]=Vi(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}Gi(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;Ii(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}Ri(t);t=c[m>>2]|0;r=Ti(c[q>>2]|0,c[k>>2]|0)|0;Pw(t|0,r|0,Ui(c[k>>2]|0)|0)|0;Gi(c[q>>2]|0)}else Ml(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 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=Si(c[d>>2]|0)|0;i=b;return a|0}function cj(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=Ui(c[d>>2]|0)|0;i=b;return a|0}function dj(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]=ej(c[g>>2]|0)|0;break a}break}case 10:{c[m>>2]=ej(c[g>>2]|0)|0;if(!(c[m>>2]|0)){c[n>>2]=fj(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){Pw(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]=ij(gj(c[g>>2]|0,p,0)|0)|0;break}default:c[m>>2]=61}while(0);i=f;return c[m>>2]|0}function ej(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]=Ci(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 fj(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]=Ci(c[g>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=c[g>>2];Je(37240,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 gj(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]=Ci(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=hj(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=hj(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=37793;else q=c[m>>2]|0?37754:37773;Cb[p&1](42958,k,37815,q);n=c[l>>2]|0;o=hj(n)|0;i=f;return o|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;a=_i(1,c[d>>2]|0)|0;i=b;return a|0}function ij(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 jj(){return 0}function kj(){return 0}function lj(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[17644]=c[e>>2];c[17645]=c[f>>2];i=d;return}function mj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,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]=nj(c[g>>2]|0,1,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;pj(10);i=f;return c[m>>2]|0}function nj(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;Ie(37269,l)}c[C>>2]=lf(c[1079]<<2)|0;c[u>>2]=ip(2)|0;c[v>>2]=ip(3)|0;l=c[m>>2]|0;if(c[n>>2]|0)E=Gp(l)|0;else E=Fp(l)|0;c[r>>2]=E;c[w>>2]=zp(c[r>>2]|0)|0;c[t>>2]=zp(c[r>>2]|0)|0;c[s>>2]=zp(c[r>>2]|0)|0;c[B>>2]=0;c[A>>2]=0;a:while(1){c[D>>2]=0;Ip(c[r>>2]|0,c[m>>2]|0,c[o>>2]|0);bo(c[r>>2]|0,(c[m>>2]|0)-1|0);if(c[n>>2]|0)ao(c[r>>2]|0,(c[m>>2]|0)-2|0);ao(c[r>>2]|0,0);c[x>>2]=0;while(1){E=e[16484+(c[x>>2]<<1)>>1]|0;c[y>>2]=E;if(!E)break;E=oo(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[16484+(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)){Tn(c[s>>2]|0,c[r>>2]|0,c[z>>2]|0);c[B>>2]=(c[B>>2]|0)+1;Vn(c[t>>2]|0,c[s>>2]|0,1);Go(c[w>>2]|0,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0);if((jo(c[w>>2]|0,1)|0)==0?oj(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}pj(47)}E=(c[D>>2]|0)+1|0;c[D>>2]=E;if((E|0)==10){pj(46);c[D>>2]=0}}c[z>>2]=(c[z>>2]|0)+2}if((F|0)==24){F=0;pj(10);Ke(37417,k)}pj(58)}if((F|0)==28){rp(c[u>>2]|0);rp(c[v>>2]|0);rp(c[w>>2]|0);rp(c[t>>2]|0);rp(c[r>>2]|0);gf(c[C>>2]|0);i=h;return c[s>>2]|0}return 0}function oj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,k=0,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]=jp(c[(c[f>>2]|0)+4>>2]|0)|0;c[l>>2]=jp(c[(c[f>>2]|0)+4>>2]|0)|0;c[m>>2]=jp(c[(c[f>>2]|0)+4>>2]|0)|0;c[n>>2]=jp(c[(c[f>>2]|0)+4>>2]|0)|0;c[o>>2]=ip(2)|0;c[t>>2]=0;c[u>>2]=_n(c[f>>2]|0)|0;if((c[g>>2]|0)<5)c[g>>2]=5;Vn(c[n>>2]|0,c[f>>2]|0,1);c[p>>2]=wp(c[n>>2]|0)|0;c[s>>2]=Io(c[p>>2]|0)|0;ro(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){Ip(d,c[u>>2]|0,0);b=($n(c[k>>2]|0,(c[u>>2]|0)-2|0)|0)!=0;bo(c[k>>2]|0,(c[u>>2]|0)-2|0);if(!b)eo(c[k>>2]|0,(c[u>>2]|0)-2|0);if((ko(c[k>>2]|0,c[n>>2]|0)|0)>=0){v=11;break}if((jo(c[k>>2]|0,1)|0)<=0){v=11;break}}else Cp(d,2)|0;Go(c[l>>2]|0,c[k>>2]|0,c[p>>2]|0,c[f>>2]|0);if(jo(c[l>>2]|0,1)|0?ko(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=(ko(c[l>>2]|0,c[n>>2]|0)|0)!=0;else w=0;x=c[l>>2]|0;if(!w)break;Go(x,c[l>>2]|0,c[o>>2]|0,c[f>>2]|0);if(!(jo(c[l>>2]|0,1)|0)){v=23;break a}c[r>>2]=(c[r>>2]|0)+1}if(ko(x,c[n>>2]|0)|0){v=23;break}}pj(43);c[q>>2]=(c[q>>2]|0)+1}if((v|0)==11)Ee(37316,37388,951,37399);else if((v|0)==22){c[t>>2]=1;y=c[k>>2]|0;rp(y);z=c[l>>2]|0;rp(z);A=c[m>>2]|0;rp(A);B=c[n>>2]|0;rp(B);C=c[p>>2]|0;rp(C);D=c[o>>2]|0;rp(D);E=c[t>>2]|0;i=e;return E|0}else if((v|0)==23){y=c[k>>2]|0;rp(y);z=c[l>>2]|0;rp(z);A=c[m>>2]|0;rp(A);B=c[n>>2]|0;rp(B);C=c[p>>2]|0;rp(C);D=c[o>>2]|0;rp(D);E=c[t>>2]|0;i=e;return E|0}return 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;if(!(c[17644]|0)){i=b;return}tb[c[17644]&15](c[17645]|0,37408,c[d>>2]|0,0,0);i=b;return}function qj(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[16484+(c[q>>2]<<1)>>1]|0;c[r>>2]=g;v=c[l>>2]|0;if(!g)break;if(so(v,c[r>>2]|0)|0){w=4;break}c[q>>2]=(c[q>>2]|0)+1}if((w|0)==4){c[k>>2]=((jo(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]=zp(v)|0;c[u>>2]=zp(c[l>>2]|0)|0;Vn(c[u>>2]|0,c[l>>2]|0,1);Go(c[t>>2]|0,c[m>>2]|0,c[u>>2]|0,c[l>>2]|0);rp(c[u>>2]|0);u=(jo(c[t>>2]|0,1)|0)!=0;rp(c[t>>2]|0);if(u){pj(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?oj(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);pj(46);c[k>>2]=0;x=c[k>>2]|0;i=h;return x|0}function rj(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]=sj(c[m>>2]|0)|0;c[s>>2]=sj(c[n>>2]|0)|0;c[t>>2]=zp(c[l>>2]|0)|0;Eo(c[t>>2]|0,c[r>>2]|0,c[s>>2]|0);c[w>>2]=zp(c[r>>2]|0)|0;zo(c[w>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;Eo(c[w>>2]|0,c[w>>2]|0,c[s>>2]|0);c[v>>2]=c[w>>2];c[w>>2]=zp(c[s>>2]|0)|0;zo(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;Eo(c[w>>2]|0,c[w>>2]|0,c[r>>2]|0);Wn(c[v>>2]|0,c[v>>2]|0,c[w>>2]|0);if(c[(c[v>>2]|0)+8>>2]|0)Un(c[v>>2]|0,c[v>>2]|0,c[t>>2]|0);c[u>>2]=c[w>>2];c[w>>2]=0;Yn(c[u>>2]|0,c[v>>2]|0,c[l>>2]|0,c[t>>2]|0);Un(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);rp(c[v>>2]|0);if((ko(c[u>>2]|0,c[l>>2]|0)|0)<0)Un(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0);c[x>>2]=ip(2)|0;c[y>>2]=zp(c[u>>2]|0)|0;Vn(c[t>>2]|0,c[t>>2]|0,1);Vn(c[u>>2]|0,c[u>>2]|0,1);while(1){c[z>>2]=to(c[y>>2]|0,c[o>>2]|0,c[u>>2]|0)|0;Tn(c[u>>2]|0,c[u>>2]|0,1);if(c[z>>2]|0){if(qj(c[u>>2]|0,c[x>>2]|0,64,0,0)|0)break}else pj(47);Un(c[u>>2]|0,c[u>>2]|0,c[t>>2]|0)}rp(c[y>>2]|0);rp(c[x>>2]|0);rp(c[t>>2]|0);pj(10);t=c[r>>2]|0;if(c[p>>2]|0)c[c[p>>2]>>2]=t;else rp(t);t=c[s>>2]|0;if(c[q>>2]|0)c[c[q>>2]>>2]=t;else rp(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 sj(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]=ip(2)|0;c[f>>2]=wp(c[d>>2]|0)|0;ao(c[f>>2]|0,0);while(1){if(!((qj(c[f>>2]|0,c[e>>2]|0,64,0,0)|0)!=0^1))break;Tn(c[f>>2]|0,c[f>>2]|0,2)}rp(c[e>>2]|0);i=b;return c[f>>2]|0}function tj(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=(Gf(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]=Jf(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((wv(c[l>>2]|0,37447,3)|0)==0&(c[o>>2]|0)==5){c[o>>2]=4;c[p>>2]=c[p>>2]|4;break a}if((wv(c[l>>2]|0,37451,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(!(wv(c[l>>2]|0,37455,4)|0)){c[p>>2]=c[p>>2]|1024;break a}if((wv(c[l>>2]|0,37460,4)|0)==0&(c[o>>2]|0)==5){c[o>>2]=3;c[p>>2]=c[p>>2]|4;break a}if(!(wv(c[l>>2]|0,46922,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(!(wv(c[l>>2]|0,46916,5)|0)){c[o>>2]=0;c[p>>2]=c[p>>2]|4096;break a}if((wv(c[l>>2]|0,37465,5)|0)==0&(c[o>>2]|0)==5){c[o>>2]=1;c[p>>2]=c[p>>2]|4;break a}if(!(wv(c[l>>2]|0,37471,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(!(wv(c[l>>2]|0,37477,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(!(wv(c[l>>2]|0,37484,7)|0)){c[p>>2]=c[p>>2]|2;break a}if((wv(c[l>>2]|0,37492,7)|0)==0|(c[q>>2]|0)!=0)break a;c[k>>2]=72;break a;break}case 8:{if(!(wv(c[l>>2]|0,39178,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((wv(c[l>>2]|0,37500,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(!(wv(c[l>>2]|0,37510,10)|0)){c[q>>2]=1;break a}if(!(wv(c[l>>2]|0,37521,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(!(wv(c[l>>2]|0,37532,11)|0)){c[p>>2]=c[p>>2]|1;break a}if(!(wv(c[l>>2]|0,37544,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(!(wv(c[l>>2]|0,37556,13)|0)){c[p>>2]=c[p>>2]|256;break a}if(!(wv(c[l>>2]|0,46962,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 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]=Ff(c[g>>2]|0,37570,0)|0;if(!(c[g>>2]|0)){c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}c[l>>2]=Jf(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){Df(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Pw(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=hv(k,0,0)|0;c[c[h>>2]>>2]=m;Df(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 0}function vj(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]=Ff(c[g>>2]|0,37576,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]=Jf(c[g>>2]|0,1,m)|0;if((c[l>>2]|0)==0|(c[m>>2]|0)>>>0>=49){Df(c[g>>2]|0);c[f>>2]=65;n=c[f>>2]|0;i=e;return n|0}else{Pw(k|0,c[l>>2]|0,c[m>>2]|0)|0;a[k+(c[m>>2]|0)>>0]=0;m=hv(k,0,0)|0;c[c[h>>2]>>2]=m;Df(c[g>>2]|0);c[f>>2]=0;n=c[f>>2]|0;i=e;return n|0}return 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;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]=Ff(c[g>>2]|0,37586,0)|0;do if(c[n>>2]|0){c[o>>2]=Hf(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=Mf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(qu(c[p>>2]|0,46956)|0)){Df(c[o>>2]|0);c[o>>2]=Hf(c[n>>2]|0,2)|0;if(!(c[o>>2]|0)){c[m>>2]=65;break}gf(c[p>>2]|0);c[p>>2]=Mf(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(!(dv(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(!(qu(c[p>>2]|0,46916)|0))c[c[l>>2]>>2]=4096;if(!(qu(c[p>>2]|0,46922)|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);gf(c[p>>2]|0);Df(c[o>>2]|0);Df(c[n>>2]|0);i=f;return c[m>>2]|0}function xj(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]=Ff(c[g>>2]|0,41921,0)|0;do if(c[n>>2]|0){c[o>>2]=Hf(c[n>>2]|0,1)|0;if(!(c[o>>2]|0)){c[m>>2]=68;break}c[p>>2]=Mf(c[o>>2]|0,0)|0;if(!(c[p>>2]|0)){c[m>>2]=65;break}if(!(qu(c[p>>2]|0,46956)|0)){c[m>>2]=tj(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){Df(c[o>>2]|0);c[o>>2]=Ff(c[n>>2]|0,37594,0)|0;if(c[o>>2]|0){c[t>>2]=Jf(c[o>>2]|0,1,q)|0;if(c[t>>2]|0){g=yj(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}Df(c[o>>2]|0);c[o>>2]=Ff(c[n>>2]|0,37678,0)|0;if(c[o>>2]|0){c[t>>2]=Jf(c[o>>2]|0,1,q)|0;do if(c[t>>2]|0){if((c[q>>2]|0)>>>0>0){g=af(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=g;if(c[(c[l>>2]|0)+20>>2]|0){Pw(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]=st()|0;break}}}else c[m>>2]=68;while(0);if(c[m>>2]|0)break}}c[s>>2]=2;a:while(1){Df(c[o>>2]|0);g=Hf(c[n>>2]|0,c[s>>2]|0)|0;c[o>>2]=g;if(!g)break;c[t>>2]=Jf(c[o>>2]|0,0,q)|0;if(!((c[q>>2]|0)==9?!(wv(c[t>>2]|0,37594,9)|0):0))u=30;do if((u|0)==30){u=0;if((c[q>>2]|0)==5?(wv(c[t>>2]|0,37678,5)|0)==0:0)break;if((c[q>>2]|0)!=15)break a;if(wv(c[t>>2]|0,37684,15)|0)break a}while(0);c[s>>2]=(c[s>>2]|0)+1}if(!(c[o>>2]|0)){c[m>>2]=68;break}gf(c[p>>2]|0);c[p>>2]=Mf(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(!(dv(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);gf(c[p>>2]|0);Df(c[o>>2]|0);Df(c[n>>2]|0);i=f;return c[m>>2]|0}function yj(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[4320+(c[k>>2]<<3)>>2]|0))break;d=Uu(c[4320+(c[k>>2]<<3)>>2]|0)|0;if((d|0)==(c[g>>2]|0)?(wv(c[4320+(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[4320+(c[k>>2]<<3)>>2]|0){c[h>>2]=c[4320+(c[k>>2]<<3)+4>>2];m=c[h>>2]|0;i=e;return m|0}c[l>>2]=af((c[g>>2]|0)+1|0)|0;if(c[l>>2]|0){Pw(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]=xi(c[l>>2]|0)|0;gf(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 zj(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 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;gf(c[(c[d>>2]|0)+20>>2]|0);i=b;return}function Bj(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]=Ff(c[g>>2]|0,37700,0)|0;if(!(c[m>>2]|0)){d=Nf(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]=Ff(c[m>>2]|0,46956,0)|0;if(c[t>>2]|0){if(tj(c[t>>2]|0,s,(c[k>>2]|0)+8|0)|0)c[r>>2]=1;Df(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]=Ff(c[m>>2]|0,37705,0)|0;if(c[n>>2]|0)T=0;else T=Ff(c[m>>2]|0,42006,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]=Ff(c[m>>2]|0,37594,0)|0;if(c[u>>2]|0){c[q>>2]=Jf(c[u>>2]|0,1,p)|0;if(c[q>>2]|0){T=yj(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;Df(c[u>>2]|0)}else c[l>>2]=65;if(c[l>>2]|0)break;c[v>>2]=Lf(c[o>>2]|0,1,w)|0;if(c[v>>2]|0){if(c[w>>2]<<3>>>0<(c[w>>2]|0)>>>0){gf(c[v>>2]|0);c[l>>2]=67}}else{c[w>>2]=0;c[v>>2]=af(1)|0;if(!(c[v>>2]|0))c[l>>2]=st()|0}if(c[l>>2]|0)break;T=sp(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((Gf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}T=Jf(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=yj(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=Lf(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){gf(T);c[l>>2]=67;break a}else{t=sp(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=Nf(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=Jf(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]=Ff(c[m>>2]|0,37684,0)|0;if(c[B>>2]|0){c[q>>2]=Jf(c[B>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0>0){c[C>>2]=af(c[p>>2]|0)|0;if(c[C>>2]|0){Pw(c[C>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[D>>2]=c[p>>2];break}else{c[l>>2]=st()|0;break}}}else c[l>>2]=68;while(0);Df(c[B>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Sk(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;gf(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((Gf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break a}t=Jf(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=yj(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=Jf(c[n>>2]|0,2,F)|0;c[E>>2]=t;if((t|0)!=0&(c[F>>2]|0)!=0){c[l>>2]=Wk(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((Gf(c[o>>2]|0)|0)!=2){c[l>>2]=65;break a}t=Jf(c[o>>2]|0,1,H)|0;c[G>>2]=t;if((t|0)!=0&(c[H>>2]|0)!=0){c[l>>2]=Xk(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=Jf(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]=Ff(c[m>>2]|0,37594,0)|0;if(c[K>>2]|0){c[q>>2]=Jf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){t=yj(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);Df(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=Ff(c[m>>2]|0,37678,0)|0;if(c[K>>2]|0){c[q>>2]=Jf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;t=af(c[p>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=t;if(c[(c[k>>2]|0)+20>>2]|0){Pw(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]=st()|0;break}}else c[l>>2]=68;while(0);Df(c[K>>2]|0);if(c[l>>2]|0)break}c[K>>2]=Ff(c[m>>2]|0,37684,0)|0;if(c[K>>2]|0){c[q>>2]=Jf(c[K>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[L>>2]=af(c[p>>2]|0)|0;if(c[L>>2]|0){Pw(c[L>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[M>>2]=c[p>>2];break}else{c[l>>2]=st()|0;break}}else c[l>>2]=68;while(0);Df(c[K>>2]|0);if(c[l>>2]|0)break}c[l>>2]=Yk(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;gf(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((Gf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=Jf(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=yj(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=Jf(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]=Ff(c[m>>2]|0,37710,0)|0;do if(c[R>>2]|0){c[q>>2]=Jf(c[R>>2]|0,1,p)|0;if(c[q>>2]|0){t=hv(c[q>>2]|0,0,10)|0;c[(c[k>>2]|0)+28>>2]=t;Df(c[R>>2]|0);break}else{c[l>>2]=68;break a}}while(0);c[R>>2]=Ff(c[m>>2]|0,37684,0)|0;if(c[R>>2]|0){c[q>>2]=Jf(c[R>>2]|0,1,p)|0;do if(c[q>>2]|0){if((c[p>>2]|0)>>>0<=0)break;c[P>>2]=af(c[p>>2]|0)|0;if(c[P>>2]|0){Pw(c[P>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[Q>>2]=c[p>>2];break}else{c[l>>2]=st()|0;break}}else c[l>>2]=68;while(0);Df(c[R>>2]|0);if(c[l>>2]|0)break}c[l>>2]=al(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;gf(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((Gf(c[n>>2]|0)|0)!=3){c[l>>2]=65;break}t=Jf(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=yj(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=Nf(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);Df(c[m>>2]|0);Df(c[n>>2]|0);Df(c[o>>2]|0);if(c[l>>2]|0){gf(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 Cj(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=bl(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 Dj(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[4424+(c[g>>2]<<2)>>2]|0;c[f>>2]=a;if(!a){k=11;break}a=(dv(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(!(dv(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 Ej(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]=Fj(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]=37722;g=c[d>>2]|0;i=b;return g|0}return 0}function Fj(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]=Gj(c[e>>2]|0)|0;c[f>>2]=0;while(1){a=c[4424+(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 Gj(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 Wo(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:{Re();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?(yo(c[m>>2]|0,c[o>>2]|0,(c[p>>2]|0)-1|0)|0)<0:0)break;fp(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]=_o(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)){Uo(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 Xo(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[45595+((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 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;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 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;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 _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,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]=Zo(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]=Uo(c[g>>2]|0,c[g>>2]|0,c[h>>2]|0,c[l>>2]|0)|0}else c[n>>2]=et(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 ap(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 ap(e,d,b,a,c[n>>2]|0);c[p>>2]=et((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]=et((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 ap(f,p,o,a,c[n>>2]|0);a=(yo((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){fp(o,p+(c[q>>2]<<2)|0,c[k>>2]|0,c[q>>2]|0)|0;c[s>>2]=0}else{fp(o,p,(c[k>>2]|0)+(c[q>>2]<<2)|0,c[q>>2]|0)|0;c[s>>2]=1}p=(yo((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){fp(o,a+(c[q>>2]<<2)|0,c[l>>2]|0,c[q>>2]|0)|0;c[s>>2]=c[s>>2]^1}else fp(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 ap(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]=Uo((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=fp(t,f,p,o)|0;c[r>>2]=(c[r>>2]|0)-s}else{s=Uo(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 ap(s,o,k,l,(c[n>>2]|0)+(c[m>>2]<<2)|0);l=Uo((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)uo((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]=Uo((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}uo((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 bp(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)mp(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(ef(c[l>>2]|0)|0)r=1;else r=(ef(c[n>>2]|0)|0)!=0;f=kp(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 ap(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)mp(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(ef(c[l>>2]|0)|0)s=1;else s=(ef(c[n>>2]|0)|0)!=0;g=kp(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 ap(g,s,e,r,c[(c[p>>2]|0)+4>>2]|0);c[q>>2]=Uo(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+16>>2]|0,c[o>>2]|0)|0;uo((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)cp(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=of(1,28)|0;c[c[p>>2]>>2]=r}bp(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]=Uo(c[k>>2]|0,c[k>>2]|0,c[(c[p>>2]|0)+4>>2]|0,c[o>>2]|0)|0;uo((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 cp(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;bp(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,r);dp(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]=Zo(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]=Uo(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0}else c[q>>2]=et(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 dp(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)mp(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)mp(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)mp(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)mp(c[(c[d>>2]|0)+4>>2]|0,c[(c[d>>2]|0)+8>>2]|0);gf(c[d>>2]|0);c[d>>2]=c[e>>2]}i=b;return}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,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 fp(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 gp(){return 45945}function hp(){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=ip(c[e>>2]|0)|0;c[70636+(c[d>>2]<<2)>>2]=g;c[(c[70636+(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];Je(46089,b)}else if((f|0)==12){i=a;return 0}return 0}function ip(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]=jp(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 jp(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]=lf(20)|0;if(c[d>>2]|0)f=kp(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 kp(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=nf(b)|0;else k=lf(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 lp(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]=lf(20)|0;if(c[d>>2]|0)f=kp(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 mp(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=Yw(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);gf(c[g>>2]|0);i=f;return}function np(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;mp(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 op(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=pf(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}else{k=of(h,4)|0;c[(c[e>>2]|0)+16>>2]=k;break}}else{k=mf(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 pp(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){qp();i=b;return}c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+12>>2]=0;i=b;return}function qp(){var a=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();Fe(46120,a);i=a;return}function rp(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)gf(a);else mp(a,c[c[d>>2]>>2]|0);if(c[(c[d>>2]|0)+12>>2]&-3864|0)Je(46164,b);gf(c[d>>2]|0);i=b;return}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;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]=jp(0)|0;if(c[g>>2]|0?c[(c[g>>2]|0)+12>>2]&16|0:0){qp();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)gf(d);else mp(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(ef(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 tp(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=(ef(c[h>>2]|0)|0)!=0;b=c[m>>2]|0;if(d)n=df(b)|0;else n=af(b)|0;c[l>>2]=n;if(c[l>>2]|0){Pw(c[l>>2]|0,c[h>>2]|0,c[m>>2]|0)|0;c[f>>2]=sp(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 up(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))Je(46196,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 vp(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]=up(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=(ef(c[h>>2]|0)|0)!=0;f=c[l>>2]|0;if(g)n=df(f)|0;else n=af(f)|0;c[k>>2]=n;if(c[k>>2]|0)Pw(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 wp(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=(ef(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=nf(h)|0;else k=lf(h)|0;c[g>>2]=k;if(c[(c[d>>2]|0)+16>>2]|0)Pw(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]=sp(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=lp(c[(c[d>>2]|0)+4>>2]|0)|0;else m=jp(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 xp(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){qp();i=d;return}}else yp(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 yp(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]=jp(c[(c[g>>2]|0)+4>>2]|0)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){qp();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))op(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 zp(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=(ef(c[(c[d>>2]|0)+16>>2]|0)|0)!=0;h=c[f>>2]|0;if(a)k=df(h)|0;else k=af(h)|0;c[g>>2]=k;Pw(c[g>>2]|0,c[(c[d>>2]|0)+16>>2]|0,c[f>>2]|0)|0;c[e>>2]=sp(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=lp(c[(c[d>>2]|0)+4>>2]|0)|0;else m=jp(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 Ap(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){qp();i=d;return}np(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}rp(c[f>>2]|0);i=d;return}function Bp(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))Je(46226,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 Cp(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]=jp(1)|0;if(c[f>>2]|0?c[(c[f>>2]|0)+12>>2]&16|0:0){qp();c[e>>2]=c[f>>2];h=c[e>>2]|0;i=d;return h|0}if((c[c[f>>2]>>2]|0)<1)op(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 Dp(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 Ep(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))Je(46257,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 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=jp((((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;a=lp((((c[d>>2]|0)+32-1|0)>>>0)/32|0)|0;i=b;return a|0}function Hp(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;rp(c[d>>2]|0);i=b;return}function Ip(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){qp();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=nf(c[l>>2]|0)|0;else m=lf(c[l>>2]|0)|0;c[k>>2]=m;an(c[k>>2]|0,c[l>>2]|0)}else{if(g?c[(c[f>>2]|0)+12>>2]&1|0:0)n=Xm(c[l>>2]|0,c[h>>2]|0)|0;else n=Vm(c[l>>2]|0,c[h>>2]|0)|0;c[k>>2]=n}Mo(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0,0);gf(c[k>>2]|0);i=e;return}function Jp(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:Je(46289,d)}return 0}function Kp(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;Je(46089,d)}if(c[70636+(a<<2)>>2]|0){i=b;return c[70636+(c[e>>2]<<2)>>2]|0}else Je(46309,b+8|0);return 0}function Lp(){return 46340}function Mp(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]=zw(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){Pw(n|0,c[h>>2]|0,c[k>>2]|0)|0;Pw((c[l>>2]|0)+105|0,c[h>>2]|0,c[k>>2]|0)|0}else{c[o>>2]=Mp(0,0)|0;if(c[o>>2]|0){Np(c[o>>2]|0,c[h>>2]|0,c[k>>2]|0);Qp(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));Rp(c[o>>2]|0);break}Aw(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;Np(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 Np(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){Op(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}Np(c[g>>2]|0,0,0);if(!(c[k>>2]|0)){i=f;return}}while(1){if((c[k>>2]|0)>>>0<64)break;Op(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 Op(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=Pp(c[v+((c[w>>2]|0)-2<<2)>>2]|0,17)|0;x=u^(Pp(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=Pp(c[v+((c[w>>2]|0)-15<<2)>>2]|0,7)|0;h=x^(Pp(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=Pp(c[o>>2]|0,6)|0;x=u^(Pp(c[o>>2]|0,11)|0);u=h+(x^(Pp(c[o>>2]|0,25)|0))|0;c[s>>2]=u+(c[q>>2]^c[o>>2]&(c[p>>2]^c[q>>2]))+(c[12556+(c[w>>2]<<2)>>2]|0)+(c[v+(c[w>>2]<<2)>>2]|0);u=Pp(c[k>>2]|0,2)|0;x=u^(Pp(c[k>>2]|0,13)|0);u=x^(Pp(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 Pp(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 Qp(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}Np(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}Np(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];Op(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 Rp(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);Aw(c[e>>2]|0);i=d;return}function Sp(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;Qp(c[g>>2]|0);do if((a[(c[g>>2]|0)+40>>0]<<6&255)<<24>>24>>7<<24>>24|0){c[k>>2]=Mp(0,0)|0;if(c[k>>2]|0){Np(c[k>>2]|0,(c[g>>2]|0)+105|0,64);Np(c[k>>2]|0,(c[g>>2]|0)+41|0,32);Qp(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));Rp(c[k>>2]|0);break}Aw(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 Tp(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}Rw((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}Up(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){Pe((c[z>>2]|0)+16|0);Qe()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Up(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 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+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;Rw(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;Up(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]=wv(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){Pe((c[z>>2]|0)+16|0);Qe()}c[l>>2]=c[r>>2]|0?10:0;B=c[l>>2]|0;i=k;return B|0}function Wp(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;Xp(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))Yp((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;Yp((c[m>>2]|0)+64|0,c[n>>2]|0,c[u>>2]|0)}if((c[x>>2]|0)>>>0>0){Pe((c[x>>2]|0)+16|0);Qe()}c[l>>2]=0;B=c[l>>2]|0;i=k;return B|0}function Xp(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 Yp(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 Zp(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;Yp((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;_p(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;Yp((c[l>>2]|0)+96|0,(c[l>>2]|0)+64|0,c[s>>2]|0);Yp((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;Xp(c[m>>2]|0,c[m>>2]|0,(c[l>>2]|0)+64|0,c[x>>2]|0);Yp((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;Xp(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){Pe((c[v>>2]|0)+16|0);Qe()}c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function _p(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{Tw((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];Pw((c[h>>2]|0)+80+1|0,c[k>>2]|0,c[l>>2]|0)|0;Tw((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];Pw((c[h>>2]|0)+64+1|0,c[k>>2]|0,c[l>>2]|0)|0;Tw((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 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,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){bq((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=Yw(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;bq((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 bq(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 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;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=Gw(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]=aq(c[m>>2]|0,c[p>>2]|0,c[q>>2]|0,0)|0;if(c[r>>2]|0){Pe((c[r>>2]|0)+20|0);Qe()}c[l>>2]=mq(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 dq(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]=mq(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=Gw(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]=aq(c[m>>2]|0,c[n>>2]|0,c[q>>2]|0,0)|0;if(c[s>>2]|0){Pe((c[s>>2]|0)+20|0);Qe()}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 eq(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));fq(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));fq(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;fq(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){gq((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;fq(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){gq((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);fq(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){Pe((c[t>>2]|0)+16|0);Qe()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function fq(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 gq(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 hq(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));iq(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));iq(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;iq(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){gq((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;iq(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){gq((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);iq(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){Pe((c[t>>2]|0)+16|0);Qe()}c[h>>2]=0;w=c[h>>2]|0;i=g;return w|0}function iq(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;jq(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function jq(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 kq(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;lq(c[d>>2]|0);i=b;return 0}function lq(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)De(46568,113,46582);Tw(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=Yw(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}Pe((c[n>>2]|0)+16|0);Qe();i=e;return}function mq(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)Ee(46604,46626,53,46639);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;nq(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;nq(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)oq((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=Yw(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){Pe((c[w>>2]|0)+16|0);Qe()}c[l>>2]=0;F=c[l>>2]|0;i=k;return F|0}function nq(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 oq(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 pq(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))qq(c[m>>2]|0,75980,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)){uq(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}sq((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(xq((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]=mq(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{uq(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 qq(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(!(Ig()|0)){l=c[g>>2]|0;m=c[h>>2]|0;n=c[k>>2]|0;o=rq(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=rq(l,m,n)|0;i=f;return o|0}function rq(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;sq(n,c[m>>2]|0);f=(tq(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}uq(e,(c[k>>2]|0)+80|0,c[l>>2]|0,c[m>>2]|0,1);c[o+8+4>>2]=Vw(c[n>>2]<<3|0)|0;c[o+8>>2]=Vw((c[n>>2]|0)>>>29|c[n+4>>2]<<3|0)|0;c[o+4>>2]=0;c[o>>2]=0;uq(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=Yw(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=Yw(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{Pw((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;wq((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 sq(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 tq(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 uq(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;vq((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)Ee(46664,46684,499,46697);c[(c[k>>2]|0)+128+32>>2]=c[q>>2];if(!(c[u>>2]|0)){i=h;return}Pe(c[u>>2]|0);Qe();i=h;return}function vq(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 wq(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=Vw(c[c[g>>2]>>2]|0)|0;c[h>>2]=e+(c[f>>2]|0);f=Vw(c[h>>2]|0)|0;c[c[g>>2]>>2]=f;i=d;return c[h>>2]|0}function xq(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 yq(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))qq(c[m>>2]|0,75996,16)|0;if(!((d[(c[m>>2]|0)+128+68>>0]|0)>>>1&1)){uq(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}sq((c[m>>2]|0)+128+44|0,c[q>>2]|0);h=(xq((c[m>>2]|0)+128+44|0)|0)!=0;g=c[m>>2]|0;if(h){uq(g,(c[m>>2]|0)+128|0,c[p>>2]|0,c[q>>2]|0,0);c[l>>2]=mq(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 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;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;Aq(c[d>>2]|0);i=b;return}function Aq(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;Fq((c[d>>2]|0)+128+80|0,(c[d>>2]|0)+128+100|0);i=b;return}function Bq(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]=Cq(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 Cq(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;Dq(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=Qw(e[17822+((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[17822+((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=Qw(e[17822+((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]}Eq(c[h>>2]|0,c[n>>2]|0);Eq((c[h>>2]|0)+4|0,c[n+4>>2]|0);Eq((c[h>>2]|0)+8|0,c[n+8>>2]|0);Eq((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=g;return 76}function Dq(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 Eq(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 Fq(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=Gq(c[e>>2]|0)|0;c[(c[f>>2]|0)+128>>2]=b;b=Gq((c[e>>2]|0)+4|0)|0;c[(c[f>>2]|0)+132>>2]=b;b=Gq((c[e>>2]|0)+8|0)|0;c[(c[f>>2]|0)+136>>2]=b;b=Gq((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];Hq(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 Gq(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 Hq(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 Iq(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]=Jq(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}Lq(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;Nq(o);c[m>>2]=(c[m>>2]|0)+-1}c[g>>2]=o;n=c[g>>2]|0;i=f;return n|0}function Jq(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]=Kq(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(Kq(g)|0);h=c[e>>2]|0;i=d;return h|0}return 0}function Kq(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=Jw(c[d>>2]|0)|0;i=b;return (a?e:32)|0}function Lq(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))Mq(c[e>>2]|0,c[f>>2]|0,16);Nq(c[e>>2]|0);i=d;return}function Mq(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 Nq(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=Oq(c[d>>2]|0)|0;h=f;c[h>>2]=a;c[h+4>>2]=C;h=Oq((c[d>>2]|0)+8|0)|0;a=g;c[a>>2]=h;c[a+4>>2]=C;a=f;h=Mw(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=Hw(c[a>>2]|0,c[a+4>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0;h=C;a=g;l=Nw(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=Hw(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;Pq(c[d>>2]|0,c[a>>2]|0,c[a+4>>2]|0);a=g;Pq((c[d>>2]|0)+8|0,c[a>>2]|0,c[a+4>>2]|0);i=b;return}function Oq(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=Qw(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Qw(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Qw(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Qw(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Qw(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Qw(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 Pq(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=Nw(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Nw(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Nw(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=Nw(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Nw(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Nw(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 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,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;Lq((c[k>>2]|0)+128+16|0,(c[k>>2]|0)+128|0);Lq((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;Lq((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}Tw(n|0,0,16-(c[m>>2]|0)|0)|0;Mq(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;Mq(o,n,16);Rq(o+16|0,n,n+1|0,8);Sq((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=Yw(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=Yw(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){Pe((c[r>>2]|0)+16|0);Qe()}c[h>>2]=0;E=c[h>>2]|0;i=g;return E|0}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,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 Sq(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 Tq(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 Uq(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=Vq(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 Vq(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)Wq((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=Hw(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;Tq(k,Iq(c[n>>2]|0,t,c[h>>2]|0,c[h+4>>2]|0)|0,16);Rq(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;Tq(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))Wq((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){Tq((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){Mq(t,c[r>>2]|0,c[s>>2]|0);Tw(t+(c[s>>2]|0)|0,0,16-(c[s>>2]|0)|0)|0;a[t+(c[s>>2]|0)>>0]=-128;Tq((c[n>>2]|0)+80|0,t,16);Rq(c[p>>2]|0,c[r>>2]|0,y,c[s>>2]|0);break}else{Mq(t,y,16);Mq(t,c[r>>2]|0,c[s>>2]|0);Tq(t,y,16);a[t+(c[s>>2]|0)>>0]=-128;Mq(c[p>>2]|0,t,c[s>>2]|0);Tq((c[n>>2]|0)+80|0,t,16);break}}while(0);if((d[(c[n>>2]|0)+56>>0]|0)>>>3&1|0){Rq((c[n>>2]|0)+128+288|0,(c[n>>2]|0)+80|0,(c[n>>2]|0)+64|0,16);Tq((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){Pe((c[u>>2]|0)+16|0);Qe()}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 Wq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;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;Tq(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 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;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=Vq(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 Yq(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));Zq(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));Zq(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;Zq(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);Zq(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){Pe((c[s>>2]|0)+16|0);Qe()}c[h>>2]=0;u=c[h>>2]|0;i=g;return u|0}function Zq(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 _q(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]=Gr((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=Yw(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 ar(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 br(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]=_q(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))cr(c[m>>2]|0);r=(ar((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);Cr((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 cr(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;dr(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 dr(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);Cr((c[e>>2]|0)+128+20|0,76012,c[g>>2]|0);i=d;return}function er(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]=_q(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))cr(c[m>>2]|0);r=(ar((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{Cr(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 fr(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 gr(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]=hf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46710;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){gf(c[B>>2]|0);c[m>>2]=46736;E=c[m>>2]|0;i=l;return E|0}Tw(c[z>>2]|0,78,c[r>>2]|0)|0;Tw(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}hr(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;Pw(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(wv(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){gf(c[B>>2]|0);c[m>>2]=46750;E=c[m>>2]|0;i=l;return E|0}if(wv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){gf(c[B>>2]|0);c[m>>2]=46750;E=c[m>>2]|0;i=l;return E|0}Tw(c[z>>2]|0,95,c[r>>2]|0)|0;Tw(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;hr((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;Pw(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(wv(c[x>>2]|0,c[w>>2]|0,R(c[q>>2]|0,c[r>>2]|0)|0)|0){gf(c[B>>2]|0);c[m>>2]=46750;E=c[m>>2]|0;i=l;return E|0}q=(wv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;gf(c[B>>2]|0);if(q){c[m>>2]=46750;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 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+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 ir(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]=hf(1,c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[m>>2]=46710;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){gf(c[B>>2]|0);c[m>>2]=46736;E=c[m>>2]|0;i=l;return E|0}Tw(c[z>>2]|0,-45,c[r>>2]|0)|0;Tw(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;jr(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(wv(c[x>>2]|0,c[w>>2]|0,c[r>>2]|0)|0){gf(c[B>>2]|0);c[m>>2]=46799;E=c[m>>2]|0;i=l;return E|0}if(wv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0){gf(c[B>>2]|0);c[m>>2]=46799;E=c[m>>2]|0;i=l;return E|0}Tw(c[z>>2]|0,-26,c[r>>2]|0)|0;Tw(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;jr(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(wv(c[x>>2]|0,c[w>>2]|0,R(c[q>>2]|0,c[r>>2]|0)|0)|0){gf(c[B>>2]|0);c[m>>2]=46799;E=c[m>>2]|0;i=l;return E|0}q=(wv(c[A>>2]|0,c[z>>2]|0,c[r>>2]|0)|0)!=0;gf(c[B>>2]|0);if(q){c[m>>2]=46799;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 jr(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 kr(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]=hf(1,c[H>>2]|0)|0;if(!(c[F>>2]|0)){c[n>>2]=46710;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){gf(c[F>>2]|0);c[n>>2]=46736;I=c[n>>2]|0;i=m;return I|0}Tw(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}Tw(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(wv(c[A>>2]|0,c[z>>2]|0,c[s>>2]|0)|0){gf(c[F>>2]|0);c[n>>2]=46848;I=c[n>>2]|0;i=m;return I|0}if(wv(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){gf(c[F>>2]|0);c[n>>2]=46848;I=c[n>>2]|0;i=m;return I|0}Tw(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;Tw(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(wv(c[C>>2]|0,c[B>>2]|0,R(c[s>>2]|0,c[r>>2]|0)|0)|0){gf(c[F>>2]|0);c[n>>2]=46848;I=c[n>>2]|0;i=m;return I|0}if(wv(c[E>>2]|0,c[D>>2]|0,c[s>>2]|0)|0){gf(c[F>>2]|0);c[n>>2]=46848;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}Tw(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)}Tw(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(wv(c[A>>2]|0,c[z>>2]|0,R(c[s>>2]|0,c[r>>2]|0)|0)|0){J=52;break}if(wv(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){gf(c[F>>2]|0);c[n>>2]=46848;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==54){gf(c[F>>2]|0);c[n>>2]=46848;I=c[n>>2]|0;i=m;return I|0}else if((J|0)==56){gf(c[F>>2]|0);c[n>>2]=0;I=c[n>>2]|0;i=m;return I|0}return 0}function lr(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]=uj(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]=Ff(c[q>>2]|0,46950,0)|0;if(c[B>>2]|0?(c[A>>2]=Mf(c[B>>2]|0,1)|0,Df(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]=Ff(c[q>>2]|0,46956,0)|0;if(!(c[B>>2]|0?(c[s>>2]=tj(c[B>>2]|0,I,0)|0,Df(c[B>>2]|0),(c[s>>2]|0)!=0):0))M=8;do if((M|0)==8){c[B>>2]=Ff(c[q>>2]|0,46962,0)|0;if(c[B>>2]|0){c[I>>2]=c[I>>2]|32;Df(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]=Ch(c[t>>2]|0,c[A>>2]|0,u,t)|0;gf(c[A>>2]|0);c[A>>2]=0;if(!(c[s>>2]|0)){if(rf(1)|0){b=hi(c[u>>2]|0)|0;a=ii(c[u+4>>2]|0)|0;c[o>>2]=b;c[o+4>>2]=a;Ke(46976,o);if(c[u+40>>2]|0){c[n>>2]=c[u+40>>2];Ke(47001,n)}Oe(47023,c[u+8>>2]|0);Oe(47039,c[u+12>>2]|0);Oe(47055,c[u+16>>2]|0);Oe(47071,c[u+32>>2]|0);Oe(47087,c[u+36>>2]|0);fn(47103,u+20|0,0)}c[C>>2]=sn(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]=Yh(v,u,a,b)|0;else c[s>>2]=mr(v,u,a,b,c[t>>2]|0,y,z)|0;if(!(c[s>>2]|0)){c[w>>2]=Fp(0)|0;c[x>>2]=Fp(0)|0;if(gn(c[w>>2]|0,c[x>>2]|0,v+20|0,c[C>>2]|0)|0){c[m>>2]=47493;Ie(47117,m)}c[F>>2]=ji(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]=Qh(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]=Fp(0)|0;sp(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]=Fp(0)|0,c[z>>2]=Fp(0)|0,gn(c[y>>2]|0,c[z>>2]|0,v+44|0,c[C>>2]|0)|0):0){c[l>>2]=47165;Ie(47117,l)}c[G>>2]=ji(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]=Qf(D,0,47495,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=47534;else N=c[I>>2]&512|0?47506:47520;c[s>>2]=Qf(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]=Qf(b,0,47554,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]=Qf(b,0,47690,f)|0}if(((c[s>>2]|0)==0?rf(1)|0:0)?(Oe(47766,c[v+8>>2]|0),Oe(47782,c[v+12>>2]|0),Oe(47798,c[v+16>>2]|0),Oe(47814,c[F>>2]|0),Oe(47830,c[v+32>>2]|0),Oe(47846,c[v+36>>2]|0),Oe(47862,c[G>>2]|0),Oe(47878,c[H>>2]|0),c[I>>2]&4096|0):0)Ke(47894,e)}}}while(0);rp(c[H>>2]|0);rp(c[G>>2]|0);rp(c[F>>2]|0);ei(v);on(v+44|0);rp(c[v+56>>2]|0);ei(u);rp(c[w>>2]|0);rp(c[x>>2]|0);rp(c[y>>2]|0);rp(c[z>>2]|0);wn(c[C>>2]|0);Df(c[E>>2]|0);Df(c[D>>2]|0);c[p>>2]=c[s>>2];L=c[p>>2]|0;i=d;return L|0} +function mr(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]=_n(c[(c[q>>2]|0)+8>>2]|0)|0;mn(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=Gp(256)|0;c[(c[p>>2]|0)+56>>2]=k;c[B>>2]=Xm(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;Mo(c[(c[p>>2]|0)+56>>2]|0,c[B>>2]|0,32,0);gf(c[B>>2]|0)}else{B=ft(c[(c[q>>2]|0)+32>>2]|0,c[x>>2]|0)|0;c[(c[p>>2]|0)+56>>2]=B}Pn(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=wp(c[(c[q>>2]|0)+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=B;B=wp(c[(c[q>>2]|0)+12>>2]|0)|0;c[(c[p>>2]|0)+12>>2]=B;B=wp(c[(c[q>>2]|0)+16>>2]|0)|0;c[(c[p>>2]|0)+16>>2]=B;mn((c[p>>2]|0)+20|0);nr((c[p>>2]|0)+20|0,(c[q>>2]|0)+20|0);B=wp(c[(c[q>>2]|0)+32>>2]|0)|0;c[(c[p>>2]|0)+32>>2]=B;B=wp(c[(c[q>>2]|0)+36>>2]|0)|0;c[(c[p>>2]|0)+36>>2]=B;mn((c[p>>2]|0)+44|0);c[y>>2]=Fp(c[A>>2]|0)|0;c[z>>2]=Fp(c[A>>2]|0)|0;if(gn(c[y>>2]|0,c[z>>2]|0,w,c[r>>2]|0)|0){c[o>>2]=47165;Ie(47117,o)}do if((c[(c[q>>2]|0)+4>>2]|0)!=1){c[C>>2]=Fp(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))Wn(o,r,c[z>>2]|0);else Wn(o,r,c[y>>2]|0);if((ko(c[C>>2]|0,c[z>>2]|0)|0)>=0){rp(c[C>>2]|0);nr((c[p>>2]|0)+44|0,w);if(!(rf(1)|0))break;Ke(47207,m);break}if(!(c[c[q>>2]>>2]|0)){rp(c[z>>2]|0);c[z>>2]=c[C>>2]}else{rp(c[y>>2]|0);c[y>>2]=c[C>>2]}Wn(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;pn(r,o,B,Kp(1)|0)|0;if(rf(1)|0)Ke(47167,n)}else nr((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];on(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){or(s,w);i=l;return 0}else{pr(s,w);i=l;return 0}return 0}function nr(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;yp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;yp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;yp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}function or(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]=Fp(c[l>>2]|0)|0;c[p>>2]=Fp(c[l>>2]|0)|0;c[q>>2]=Fp(c[l>>2]|0)|0;c[r>>2]=Fp(c[l>>2]|0)|0;c[s>>2]=Fp(c[l>>2]|0)|0;if(rf(1)|0)Ke(47260,d);mn(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));fi(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));mn(m+44|0);nr(m+44|0,(c[k>>2]|0)+44|0);Ip(c[n>>2]|0,c[l>>2]|0,0);if(kt(c[n>>2]|0,c[k>>2]|0,c[r>>2]|0,c[s>>2]|0,0,0)|0)Ie(47274,h);if(lt(c[n>>2]|0,m,c[r>>2]|0,c[s>>2]|0)|0)Ie(47304,g);if(!(rf(1)|0)){v=m+44|0;on(v);ei(m);on(o);w=c[s>>2]|0;rp(w);x=c[r>>2]|0;rp(x);y=c[q>>2]|0;rp(y);z=c[p>>2]|0;rp(z);A=c[n>>2]|0;rp(A);i=d;return}Ke(47342,f);v=m+44|0;on(v);ei(m);on(o);w=c[s>>2]|0;rp(w);x=c[r>>2]|0;rp(x);y=c[q>>2]|0;rp(y);z=c[p>>2]|0;rp(z);A=c[n>>2]|0;rp(A);i=d;return}function pr(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(rf(1)|0)Ke(47260,e);mn(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));fi(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));mn(n+44|0);nr(n+44|0,(c[l>>2]|0)+44|0);if((c[(c[l>>2]|0)+4>>2]|0)==1){c[o>>2]=Fp(256)|0;c[u>>2]=Vm(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;Mo(c[o>>2]|0,c[u>>2]|0,32,0);gf(c[u>>2]|0)}else{c[o>>2]=Fp(c[m>>2]|0)|0;Ip(c[o>>2]|0,c[m>>2]|0,0)}c[s>>2]=sn(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]=Fp(0)|0;c[r>>2]=Fp(0)|0;Pn(p,c[o>>2]|0,n+44|0,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)Pn(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(gn(c[q>>2]|0,0,p,c[s>>2]|0)|0)Ie(47377,k);Pn(p,c[o>>2]|0,n+20|0,c[s>>2]|0);Pn(p,c[(c[l>>2]|0)+56>>2]|0,p,c[s>>2]|0);if((c[(c[l>>2]|0)+4>>2]|0)!=1)Pn(p,c[(c[s>>2]|0)+36>>2]|0,p,c[s>>2]|0);if(gn(c[r>>2]|0,0,p,c[s>>2]|0)|0)Ie(47425,h);if(ko(c[q>>2]|0,c[r>>2]|0)|0)Ie(47474,g);else{rp(c[q>>2]|0);rp(c[r>>2]|0);wn(c[s>>2]|0);on(n+44|0);ei(n);on(p);rp(c[o>>2]|0);i=e;return}}function qr(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]=Ff(c[l>>2]|0,46956,0)|0;if(!(c[n>>2]|0?(c[m>>2]=tj(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]=Zf(a,0,47929,h)|0}else{c[g>>2]=r;c[g+4>>2]=s+56;c[g+8>>2]=0;c[m>>2]=Zf(a,0,47948,g)|0}if(!(c[m>>2]|0)){Df(c[n>>2]|0);c[n>>2]=Ff(c[l>>2]|0,46950,5)|0;if((c[n>>2]|0?(c[p>>2]=Mf(c[n>>2]|0,1)|0,c[p>>2]|0):0)?(c[m>>2]=Fh(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?(mn(s+20|0),c[m>>2]=li(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(rf(1)|0){a=hi(c[s>>2]|0)|0;u=ii(c[s+4>>2]|0)|0;c[f>>2]=a;c[f+4>>2]=u;Ke(47954,f);if(c[s+40>>2]|0){c[e>>2]=c[s+40>>2];Ke(47978,e)}Oe(47999,c[s+8>>2]|0);Oe(48015,c[s+12>>2]|0);Oe(48031,c[s+16>>2]|0);fn(48047,s+20|0,0);Oe(48061,c[s+32>>2]|0);Oe(48077,c[s+36>>2]|0);Oe(48093,c[r>>2]|0);if(!(Ig()|0))Oe(48109,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]=sn(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}mn(s+44|0);if((c[(c[t>>2]|0)+4>>2]|0)==1)c[m>>2]=Vh(c[r>>2]|0,c[t>>2]|0,s+44|0,0,0)|0;else c[m>>2]=li(s+44|0,c[r>>2]|0)|0;if(c[m>>2]|0)break;if(!(rr(s,c[t>>2]|0,c[o>>2]|0)|0))break;c[m>>2]=7;break}c[m>>2]=68}}while(0);wn(c[t>>2]|0);Hp(c[s+8>>2]|0);Hp(c[s+12>>2]|0);Hp(c[s+16>>2]|0);Hp(c[q>>2]|0);on(s+20|0);Hp(c[s+32>>2]|0);Hp(c[s+36>>2]|0);Hp(c[r>>2]|0);on(s+44|0);Hp(c[s+56>>2]|0);gf(c[p>>2]|0);Df(c[n>>2]|0);if(rf(1)|0){c[d>>2]=pt(c[m>>2]|0)|0;Ke(48412,d)}c[k>>2]=c[m>>2];w=c[k>>2]|0;i=b;return w|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;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;mn(u);c[v>>2]=Fp(0)|0;if((c[c[r>>2]>>2]|0)==1)c[w>>2]=0;else c[w>>2]=Fp(0)|0;a:do if(!(Rn((c[q>>2]|0)+20|0,c[r>>2]|0)|0)){if(rf(1)|0)Ke(48125,p)}else{if(!(jo(c[(c[q>>2]|0)+20+8>>2]|0,0)|0)){if(!(rf(1)|0))break;Ke(48177,o);break}if((c[(c[q>>2]|0)+4>>2]|0)!=1?(Pn(u,c[(c[q>>2]|0)+32>>2]|0,(c[q>>2]|0)+20|0,c[r>>2]|0),jo(c[u+8>>2]|0,0)|0):0){if(!(rf(1)|0))break;Ke(48222,n);break}if(!(jo(c[(c[q>>2]|0)+44+8>>2]|0,0)|0)){if(!(rf(1)|0))break;Ke(48269,m);break}if(!(mi(u,c[r>>2]|0,(c[q>>2]|0)+20|0,c[(c[q>>2]|0)+56>>2]|0)|0)){if(!(rf(1)|0))break;Ke(48315,l);break}if(gn(c[v>>2]|0,c[w>>2]|0,u,c[r>>2]|0)|0){if(!(rf(1)|0))break;Ke(48269,k);break}do if(!(c[s>>2]&4096)){if(!(jo(c[(c[q>>2]|0)+44+8>>2]|0,1)|0)){if(!(ko(c[v>>2]|0,c[(c[q>>2]|0)+44>>2]|0)|0)){if(c[w>>2]|0)break;if(!(ko(c[w>>2]|0,c[(c[q>>2]|0)+44+4>>2]|0)|0))break}if(!(rf(1)|0))break a;Ke(48352,h);break a}c[x>>2]=Fp(0)|0;c[y>>2]=Fp(0)|0;if(gn(c[x>>2]|0,c[y>>2]|0,(c[q>>2]|0)+44|0,c[r>>2]|0)|0){if(!(rf(1)|0))break a;Ke(48269,g);break a}if((ko(c[v>>2]|0,c[x>>2]|0)|0)==0?(ko(c[w>>2]|0,c[y>>2]|0)|0)==0:0)break;if(!(rf(1)|0))break a;Ke(48352,f);break a}while(0);c[t>>2]=0}while(0);rp(c[x>>2]|0);rp(c[v>>2]|0);rp(c[w>>2]|0);rp(c[y>>2]|0);on(u);i=e;return c[t>>2]|0}function sr(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));zj(t,0,tr(c[r>>2]|0)|0);c[s>>2]=Bj(c[q>>2]|0,A,t)|0;do if(!(c[s>>2]|0)){if(rf(1)|0)Oe(48435,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]=Zf(q,0,48452,n)|0;if(!(c[s>>2]|0)){if(c[w>>2]|0?(mn(B+20|0),c[s>>2]=li(B+20|0,c[w>>2]|0)|0,c[s>>2]|0):0)break;Df(c[u>>2]|0);c[u>>2]=Ff(c[r>>2]|0,46950,5)|0;if((c[u>>2]|0?(c[v>>2]=Mf(c[u>>2]|0,1)|0,c[v>>2]|0):0)?(c[s>>2]=Ch(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(rf(1)|0){q=hi(c[B>>2]|0)|0;d=ii(c[B+4>>2]|0)|0;c[m>>2]=q;c[m+4>>2]=d;Ke(48468,m);if(c[B+40>>2]|0){c[l>>2]=c[B+40>>2];Ke(48493,l)}Oe(48515,c[B+8>>2]|0);Oe(48532,c[B+12>>2]|0);Oe(48549,c[B+16>>2]|0);fn(48566,B+20|0,0);Oe(48581,c[B+32>>2]|0);Oe(48598,c[B+36>>2]|0);Oe(48615,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?(mn(B+44|0),c[s>>2]=li(B+44|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;c[C>>2]=sn(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]=Fp(0)|0;c[F>>2]=Fp(0)|0;mn(D);Pn(D,c[A>>2]|0,B+44|0,c[C>>2]|0);if(gn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)Ie(48632,k);c[y>>2]=ji(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;Pn(D,c[A>>2]|0,B+20|0,c[C>>2]|0);if(gn(c[E>>2]|0,c[F>>2]|0,D,c[C>>2]|0)|0)Ie(48680,h);else{c[z>>2]=ji(c[E>>2]|0,c[F>>2]|0,c[B+8>>2]|0)|0;rp(c[E>>2]|0);rp(c[F>>2]|0);on(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]=Qf(d,0,48727,g)|0;break}}c[s>>2]=68}}while(0);Hp(c[B+8>>2]|0);Hp(c[B+12>>2]|0);Hp(c[B+16>>2]|0);Hp(c[w>>2]|0);on(B+20|0);Hp(c[B+32>>2]|0);Hp(c[B+36>>2]|0);Hp(c[x>>2]|0);on(B+44|0);Hp(c[A>>2]|0);Hp(c[y>>2]|0);Hp(c[z>>2]|0);gf(c[v>>2]|0);wn(c[C>>2]|0);Aj(t);if(rf(1)|0){c[f>>2]=pt(c[s>>2]|0)|0;Ke(48753,f)}c[o>>2]=c[s>>2];G=c[o>>2]|0;i=e;return G|0}function tr(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]=Ff(c[e>>2]|0,48433,1)|0;if(c[f>>2]|0){c[g>>2]=Nf(c[f>>2]|0,1,5)|0;Df(c[f>>2]|0);if(c[g>>2]|0){c[h>>2]=_n(c[g>>2]|0)|0;Hp(c[g>>2]|0)}}else{c[f>>2]=Ff(c[e>>2]|0,46950,5)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[k>>2]=Mf(c[f>>2]|0,1)|0;Df(c[f>>2]|0);if(!(c[k>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}if(Ch(0,c[k>>2]|0,0,h)|0)c[h>>2]=0;gf(c[k>>2]|0)}c[d>>2]=c[h>>2];l=c[d>>2]|0;i=b;return l|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,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));mn(A);mn(B);zj(t,1,tr(c[r>>2]|0)|0);c[s>>2]=xj(c[q>>2]|0,12896,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]=Zf(q,0,48775,n)|0,(c[s>>2]|0)==0):0){if(rf(1)|0)Oe(48777,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]=Zf(q,0,48794,m)|0;if(!(c[s>>2]|0)){if(c[x>>2]|0?(mn(w+20|0),c[s>>2]=li(w+20|0,c[x>>2]|0)|0,c[s>>2]|0):0)break;Df(c[u>>2]|0);c[u>>2]=Ff(c[r>>2]|0,46950,5)|0;if((c[u>>2]|0?(c[y>>2]=Mf(c[u>>2]|0,1)|0,c[y>>2]|0):0)?(c[s>>2]=Ch(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(rf(1)|0){q=hi(c[w>>2]|0)|0;d=ii(c[w+4>>2]|0)|0;c[l>>2]=q;c[l+4>>2]=d;Ke(48810,l);if(c[w+40>>2]|0){c[k>>2]=c[w+40>>2];Ke(48835,k)}Oe(48857,c[w+8>>2]|0);Oe(48874,c[w+12>>2]|0);Oe(48891,c[w+16>>2]|0);fn(48908,w+20|0,0);Oe(48923,c[w+32>>2]|0);Oe(48940,c[w+36>>2]|0);if(!(Ig()|0))Oe(48957,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]=li(A,c[v>>2]|0)|0;if(c[s>>2]|0){on(A);c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|0}c[z>>2]=sn(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;Pn(B,c[w+56>>2]|0,A,c[z>>2]|0);c[D>>2]=Fp(0)|0;c[E>>2]=Fp(0)|0;if(gn(c[D>>2]|0,c[E>>2]|0,B,c[z>>2]|0)|0)Ie(48974,h);c[C>>2]=ji(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]=st()|0;rp(c[D>>2]|0);rp(c[E>>2]|0);if(rf(1)|0)Oe(49014,c[C>>2]|0);if(c[s>>2]|0)break;d=c[p>>2]|0;c[g>>2]=c[C>>2];c[s>>2]=Qf(d,0,49031,g)|0;break}c[s>>2]=68}}while(0);on(B);on(A);Hp(c[C>>2]|0);Hp(c[w+8>>2]|0);Hp(c[w+12>>2]|0);Hp(c[w+16>>2]|0);Hp(c[x>>2]|0);on(w+20|0);Hp(c[w+32>>2]|0);Hp(c[w+36>>2]|0);Hp(c[w+56>>2]|0);Hp(c[v>>2]|0);gf(c[y>>2]|0);Df(c[u>>2]|0);wn(c[z>>2]|0);Aj(t);if(rf(1)|0){c[f>>2]=pt(c[s>>2]|0)|0;Ke(49042,f)}c[o>>2]=c[s>>2];F=c[o>>2]|0;i=e;return F|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;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));zj(u,2,0);c[t>>2]=Bj(c[r>>2]|0,v,u)|0;do if(!(c[t>>2]|0)){if(rf(1)|0)Oe(49064,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]=Zf(r,0,47929,o)|0}else{c[n>>2]=z;c[n+4>>2]=A+56;c[n+8>>2]=0;c[t>>2]=Zf(r,0,47948,n)|0}if(!(c[t>>2]|0)){if(c[y>>2]|0?(mn(A+20|0),c[t>>2]=li(A+20|0,c[y>>2]|0)|0,c[t>>2]|0):0)break;Df(c[w>>2]|0);c[w>>2]=Ff(c[s>>2]|0,46950,5)|0;if((c[w>>2]|0?(c[x>>2]=Mf(c[w>>2]|0,1)|0,c[x>>2]|0):0)?(c[t>>2]=Ch(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(rf(1)|0){r=hi(c[A>>2]|0)|0;d=ii(c[A+4>>2]|0)|0;b=c[u+12>>2]&4096|0?49080:76048;c[m>>2]=r;c[m+4>>2]=d;c[m+8>>2]=b;Ke(49087,m);if(c[A+40>>2]|0){c[l>>2]=c[A+40>>2];Ke(49113,l)}Oe(49134,c[A+8>>2]|0);Oe(49150,c[A+12>>2]|0);Oe(49166,c[A+16>>2]|0);fn(49182,A+20|0,0);Oe(49196,c[A+32>>2]|0);Oe(49212,c[A+36>>2]|0);Oe(49228,c[z>>2]|0);if(!(Ig()|0))Oe(49244,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]=Fp(0)|0;c[C>>2]=Fp(0)|0;if(c[u+12>>2]&4096|0){c[t>>2]=bi(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]=Qf(b,0,49260,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]=mt(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]=Qf(a,0,49287,h)|0;break}else{c[t>>2]=kt(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]=Qf(r,0,49313,g)|0;break}}c[t>>2]=68}}while(0);Hp(c[A+8>>2]|0);Hp(c[A+12>>2]|0);Hp(c[A+16>>2]|0);Hp(c[y>>2]|0);on(A+20|0);Hp(c[A+32>>2]|0);Hp(c[A+36>>2]|0);Hp(c[z>>2]|0);on(A+44|0);Hp(c[A+56>>2]|0);Hp(c[B>>2]|0);Hp(c[C>>2]|0);gf(c[x>>2]|0);Hp(c[v>>2]|0);Df(c[w>>2]|0);Aj(u);if(rf(1)|0){c[f>>2]=pt(c[t>>2]|0)|0;Ke(49340,f)}c[p>>2]=c[t>>2];D=c[p>>2]|0;i=e;return D|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,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));zj(s,3,tr(c[q>>2]|0)|0);c[r>>2]=Bj(c[p>>2]|0,z,s)|0;a:do if(!(c[r>>2]|0)){if(rf(1)|0)Oe(49361,c[z>>2]|0);c[r>>2]=wj(c[o>>2]|0,12896,t,B)|0;if((c[r>>2]|0)==0?(p=c[t>>2]|0,d=c[B>>2]&4096|0?49377:46947,c[m>>2]=x,c[m+4>>2]=y,c[m+8>>2]=0,c[r>>2]=Zf(p,0,d,m)|0,(c[r>>2]|0)==0):0){if(rf(1)|0){Oe(49381,c[x>>2]|0);Oe(49397,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]=Zf(d,0,49413,l)|0}else{c[k>>2]=w;c[k+4>>2]=0;c[r>>2]=Zf(d,0,49429,k)|0}if(!(c[r>>2]|0)){if(c[v>>2]|0?(mn(A+20|0),c[r>>2]=li(A+20|0,c[v>>2]|0)|0,c[r>>2]|0):0)break;Df(c[t>>2]|0);c[t>>2]=Ff(c[q>>2]|0,46950,5)|0;if((c[t>>2]|0?(c[u>>2]=Mf(c[t>>2]|0,1)|0,c[u>>2]|0):0)?(c[r>>2]=Ch(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(rf(1)|0){d=hi(c[A>>2]|0)|0;p=ii(c[A+4>>2]|0)|0;b=c[B>>2]&4096|0?49080:76048;c[h>>2]=d;c[h+4>>2]=p;c[h+8>>2]=b;Ke(49432,h);if(c[A+40>>2]|0){c[g>>2]=c[A+40>>2];Ke(49458,g)}Oe(49479,c[A+8>>2]|0);Oe(49495,c[A+12>>2]|0);Oe(49511,c[A+16>>2]|0);fn(49527,A+20|0,0);Oe(49541,c[A+32>>2]|0);Oe(49557,c[A+36>>2]|0);Oe(49573,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]=di(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;mn(A+44|0);if(b){c[r>>2]=li(A+44|0,c[w>>2]|0)|0;if(c[r>>2]|0)break;c[r>>2]=nt(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]=sn(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]=Vh(c[w>>2]|0,c[C>>2]|0,A+44|0,0,0)|0;wn(c[C>>2]|0)}else c[r>>2]=li(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]=_n(c[A+32>>2]|0)|0;c[D>>2]=up(c[z>>2]|0,E)|0;c[r>>2]=No(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)go(c[G>>2]|0,c[G>>2]|0,(c[E>>2]|0)-(c[F>>2]|0)|0);c[r>>2]=lt(c[G>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;Hp(c[G>>2]|0);break a}while(0);c[r>>2]=lt(c[z>>2]|0,A,c[x>>2]|0,c[y>>2]|0)|0;break}c[r>>2]=68}}}while(0);Hp(c[A+8>>2]|0);Hp(c[A+12>>2]|0);Hp(c[A+16>>2]|0);Hp(c[v>>2]|0);on(A+20|0);Hp(c[A+32>>2]|0);Hp(c[A+36>>2]|0);Hp(c[w>>2]|0);on(A+44|0);Hp(c[z>>2]|0);Hp(c[x>>2]|0);Hp(c[y>>2]|0);gf(c[u>>2]|0);Df(c[t>>2]|0);Aj(s);if(rf(1)|0){if(c[r>>2]|0)I=pt(c[r>>2]|0)|0;else I=49589;c[f>>2]=I;Ke(49594,f)}c[n>>2]=c[r>>2];H=c[n>>2]|0;i=e;return H|0}function xr(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]=yr(c[h>>2]|0)|0;k=c[f>>2]|0;i=e;return k|0}return 0}function yr(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]=49615;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](49625,18,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;h=c[d>>2]|0;i=b;return h|0}function zr(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]=Ff(c[o>>2]|0,46956,0)|0;if(!(c[q>>2]|0?(c[p>>2]=tj(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]=Zf(b,0,49632,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]=Zf(b,0,49647,l)|0;break}}else{I=r+24|0;if(d){c[k>>2]=I;c[k+4>>2]=0;c[p>>2]=Zf(b,0,49429,k)|0;break}else{c[h>>2]=I;c[h+4>>2]=0;c[p>>2]=Zf(b,0,49661,h)|0;break}}while(0);if(!(c[p>>2]|0)){Df(c[q>>2]|0);c[q>>2]=Ff(c[o>>2]|0,46950,5)|0;if((c[q>>2]|0?(c[t>>2]=Mf(c[q>>2]|0,1)|0,c[t>>2]|0):0)?(c[p>>2]=Fh(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}Zn(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]=Sh(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]=up(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[49663+(c[s>>2]|0)>>0];c[g+4>>2]=b;Du(x,30,49670,g)|0;b=c[n>>2]|0;Pi(b,x,Uu(x)|0);Pi(c[n>>2]|0,c[y>>2]|0,c[z>>2]|0);Pi(c[n>>2]|0,49679,1);break}c[A>>2]=Jo(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[49663+(c[s>>2]|0)>>0];c[f+4>>2]=b;Du(x,30,49670,f)|0;b=c[n>>2]|0;Pi(b,x,Uu(x)|0);Pi(c[n>>2]|0,c[A>>2]|0,c[B>>2]|0);Pi(c[n>>2]|0,49679,1);gf(c[A>>2]|0)}while(0);c[s>>2]=(c[s>>2]|0)+1}c[p>>2]=st()|0}}while(0);gf(c[t>>2]|0);Df(c[q>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>=7)break;Hp(c[r+(c[s>>2]<<2)>>2]|0);c[s>>2]=(c[s>>2]|0)+1}i=e;return c[p>>2]|0}function Ar(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=cj(c[l>>2]|0)|0;if((g|0)!=(c[q>>2]|0)){c[k>>2]=49681;x=c[k>>2]|0;i=h;return x|0}c[s>>2]=Ei(t,c[l>>2]|0,0)|0;if(c[s>>2]|0){c[k>>2]=49722;x=c[k>>2]|0;i=h;return x|0}a:do switch(c[m>>2]|0){case 0:{Pi(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);break}case 1:{Tw(v|0,97,1e3)|0;c[w>>2]=0;while(1){if((c[w>>2]|0)>=1e3)break a;Pi(c[t>>2]|0,v,1e3);c[w>>2]=(c[w>>2]|0)+1}break}default:c[r>>2]=49742}while(0);if((c[r>>2]|0)==0?(c[u>>2]=$i(c[t>>2]|0,c[l>>2]|0)|0,wv(c[u>>2]|0,c[p>>2]|0,c[q>>2]|0)|0):0)c[r>>2]=49759;Oi(c[t>>2]|0);c[k>>2]=c[r>>2];x=c[k>>2]|0;i=h;return x|0}function Br(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)De(49775,112,49789);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,Pe(c[n>>2]|0),Qe(),c[n>>2]=0,c[(c[m>>2]|0)+144>>2]=0,g=(c[m>>2]|0)+128|0,h=g,e=Hw(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=Hw(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}Br(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=Hw(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=Hw(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=Hw(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}Pe(c[n>>2]|0);Qe();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 Cr(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]=Dr(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];Er((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){Er((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}Pe(c[l>>2]|0);Qe();i=e;return}function Dr(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 Er(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 Fr(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]=Dr(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;Pe(c[h>>2]|0);Qe();i=d;return}function Gr(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]=bg()|0;if((c[17665]|0)==0?(c[17665]=1,c[17666]=Hr()|0,c[17666]|0):0){c[h>>2]=c[17666];He(50197,h)}if((c[n>>2]|0)!=32){c[k>>2]=44;u=c[k>>2]|0;i=g;return u|0}if(c[17666]|0){c[k>>2]=50;u=c[k>>2]|0;i=g;return u|0}c[(c[l>>2]|0)+84>>2]=12920;Er(o,c[m>>2]|0,32);Or(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=Yw(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 Hr(){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));Ir(k,49810,131,49941);if(wv(49973,k,16)|0){c[d>>2]=49989;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));Gr(e,49941,32)|0;Cr(e,49810,32);Cr(e,49842,64);Cr(e,49906,16);Cr(e,49922,8);Cr(e,49930,4);Cr(e,49934,2);Cr(e,49936,1);Cr(e,49937,1);Cr(e,49938,1);Cr(e,49939,1);Cr(e,49940,1);Fr(e,k);if(wv(49973,k,16)|0){c[d>>2]=50013;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));Ir(k,50037,16,50053);if(wv(50085,k,16)|0){c[d>>2]=50101;p=c[d>>2]|0;i=b;return p|0}Gr(f,50125,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}Ir(k,h,c[l>>2]|0,g);Cr(f,k,16);c[l>>2]=(c[l>>2]|0)+1}Fr(f,k);if(wv(50157,k,16)|0){c[d>>2]=50173;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 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+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));Gr(o,c[n>>2]|0,32)|0;Cr(o,c[l>>2]|0,c[m>>2]|0);Fr(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=Yw(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 Jr(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=(Kr(c[g>>2]|0)|0)&67108863;c[c[h>>2]>>2]=f;f=(Kr((c[g>>2]|0)+3|0)|0)>>>2&67108611;c[(c[h>>2]|0)+4>>2]=f;f=(Kr((c[g>>2]|0)+6|0)|0)>>>4&67092735;c[(c[h>>2]|0)+8>>2]=f;f=(Kr((c[g>>2]|0)+9|0)|0)>>>6&66076671;c[(c[h>>2]|0)+12>>2]=f;f=(Kr((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=Kr((c[g>>2]|0)+16|0)|0;c[(c[h>>2]|0)+40>>2]=f;f=Kr((c[g>>2]|0)+20|0)|0;c[(c[h>>2]|0)+40+4>>2]=f;f=Kr((c[g>>2]|0)+24|0)|0;c[(c[h>>2]|0)+40+8>>2]=f;f=Kr((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 Kr(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 Lr(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=(Kr(c[h>>2]|0)|0)&67108863;c[w>>2]=(c[w>>2]|0)+g;g=(Kr((c[h>>2]|0)+3|0)|0)>>>2&67108863;c[x>>2]=(c[x>>2]|0)+g;g=(Kr((c[h>>2]|0)+6|0)|0)>>>4&67108863;c[y>>2]=(c[y>>2]|0)+g;g=(Kr((c[h>>2]|0)+9|0)|0)>>>6&67108863;c[z>>2]=(c[z>>2]|0)+g;g=(Kr((c[h>>2]|0)+12|0)|0)>>>8;c[A>>2]=(c[A>>2]|0)+(g|c[m>>2]);g=Yw(c[w>>2]|0,0,c[n>>2]|0,0)|0;e=C;b=Yw(c[x>>2]|0,0,c[v>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[y>>2]|0,0,c[u>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=C;b=Yw(c[z>>2]|0,0,c[t>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[A>>2]|0,0,c[s>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=B;c[e>>2]=g;c[e+4>>2]=C;e=Yw(c[w>>2]|0,0,c[o>>2]|0,0)|0;g=C;b=Yw(c[x>>2]|0,0,c[n>>2]|0,0)|0;a=Hw(e|0,g|0,b|0,C|0)|0;b=C;g=Yw(c[y>>2]|0,0,c[v>>2]|0,0)|0;e=Hw(a|0,b|0,g|0,C|0)|0;g=C;b=Yw(c[z>>2]|0,0,c[u>>2]|0,0)|0;a=Hw(e|0,g|0,b|0,C|0)|0;b=C;g=Yw(c[A>>2]|0,0,c[t>>2]|0,0)|0;e=Hw(a|0,b|0,g|0,C|0)|0;g=D;c[g>>2]=e;c[g+4>>2]=C;g=Yw(c[w>>2]|0,0,c[p>>2]|0,0)|0;e=C;b=Yw(c[x>>2]|0,0,c[o>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[y>>2]|0,0,c[n>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=C;b=Yw(c[z>>2]|0,0,c[v>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[A>>2]|0,0,c[u>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=E;c[e>>2]=g;c[e+4>>2]=C;e=Yw(c[w>>2]|0,0,c[q>>2]|0,0)|0;g=C;b=Yw(c[x>>2]|0,0,c[p>>2]|0,0)|0;a=Hw(e|0,g|0,b|0,C|0)|0;b=C;g=Yw(c[y>>2]|0,0,c[o>>2]|0,0)|0;e=Hw(a|0,b|0,g|0,C|0)|0;g=C;b=Yw(c[z>>2]|0,0,c[n>>2]|0,0)|0;a=Hw(e|0,g|0,b|0,C|0)|0;b=C;g=Yw(c[A>>2]|0,0,c[v>>2]|0,0)|0;e=Hw(a|0,b|0,g|0,C|0)|0;g=F;c[g>>2]=e;c[g+4>>2]=C;g=Yw(c[w>>2]|0,0,c[r>>2]|0,0)|0;e=C;b=Yw(c[x>>2]|0,0,c[q>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[y>>2]|0,0,c[p>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=C;b=Yw(c[z>>2]|0,0,c[o>>2]|0,0)|0;a=Hw(g|0,e|0,b|0,C|0)|0;b=C;e=Yw(c[A>>2]|0,0,c[n>>2]|0,0)|0;g=Hw(a|0,b|0,e|0,C|0)|0;e=G;c[e>>2]=g;c[e+4>>2]=C;e=B;g=Nw(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=Hw(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=Nw(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=Hw(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=Nw(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=Hw(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=Nw(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=Hw(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=Nw(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 Mr(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]=Lr(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=Hw(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=Hw(c[p>>2]|0,0,c[(c[n>>2]|0)+40+4>>2]|0,0)|0;s=Hw(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=Hw(c[q>>2]|0,0,c[(c[n>>2]|0)+40+8>>2]|0,0)|0;s=Hw(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=Hw(c[r>>2]|0,0,c[(c[n>>2]|0)+40+12>>2]|0,0)|0;s=Hw(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];Nr(c[m>>2]|0,c[o>>2]|0);Nr((c[m>>2]|0)+4|0,c[p>>2]|0);Nr((c[m>>2]|0)+8|0,c[q>>2]|0);Nr((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 Nr(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 Or(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]=Dr(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 Pr(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){Rr();i=b;return}else{Qr();i=b;return}}function Qr(){if(c[17667]|0)return;c[17667]=1;return}function Rr(){var a=0,b=0;Qr();Sr();if(c[17669]|0){Yr();return}if(c[17670]|0)a=pf(1,664)|0;else a=of(1,664)|0;c[17669]=a;if(c[17670]|0)b=pf(1,664)|0;else b=of(1,664)|0;c[17671]=b;c[17672]=Tr()|0;if(!(c[17672]|0)){c[17673]=1;c[17672]=3}c[17690]=Xr()|0;Yr();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;c[d>>2]=vt(12936)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(50228,b)}else{c[17668]=1;i=a;return}}function Tr(){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((Mv(52610,4)|0)==0?(Mv(52712,4)|0)==0:0){c[d>>2]=4;i=a;return c[d>>2]|0}Ie(we(50265)|0,b);return 0}function Ur(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[17674]|0)){Fe(we(50303)|0,g);c[17674]=1;f=ib(0)|0;iw(R(f,Lv()|0)|0)}f=lf(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+~~(+(jw()|0)*256.0/2147483648.0)-1&255;e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=f}Vr(c[m>>2]|0,c[k>>2]|0,c[h>>2]|0);gf(c[m>>2]|0);i=g;return 0}function Vr(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[17668]|0))Ee(50354,50369,1074,50385);c[17683]=(c[17683]|0)+(c[k>>2]|0);c[17684]=(c[17684]|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[17685]|0;c[17685]=h+1;e=(c[17669]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f;c[n>>2]=(c[n>>2]|0)+1;if((c[17685]|0)>>>0<600)continue;if(!((c[l>>2]|0)>>>0<3|(c[17686]|0)!=0)?(c[17687]=(c[17687]|0)+(c[n>>2]|0),c[n>>2]=0,(c[17687]|0)>>>0>=600):0)c[17686]=1;c[17685]=0;Wr(c[17669]|0);c[17675]=(c[17675]|0)+1;c[17689]=((c[k>>2]|0)!=0^1)&1}i=g;return}function Wr(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[17668]|0))Ee(50354,50369,615,50400);Pk(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));Qk(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[17688]|0?(c[f>>2]|0)==(c[17669]|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[76027+(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);Qk(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[17669]|0)){Pe(384);Qe();i=e;return}Rk(76027,c[f>>2]|0,600);c[17688]=1;Pe(384);Qe();i=e;return}function Xr(){return 0}function Yr(){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[17668]=0;c[d>>2]=wt(12936)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(50409,b)}else{i=a;return}}function Zr(){Sr();bt(0,0,0,0)|0;c[17686]=0;Yr();return}function _r(){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[17675]|0;e=c[17677]|0;f=c[17678]|0;g=c[17684]|0;h=c[17683]|0;k=c[17676]|0;l=c[17680]|0;m=c[17679]|0;n=c[17682]|0;o=c[17681]|0;p=(_s()|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?50446:76048;Fe(50462,b);i=a;return}function $r(){c[17670]=1;return}function as(){c[17691]=1;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}function cs(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 ds(){Rr();return (c[17673]|0?1:(c[17691]|0)!=0)&1|0}function es(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;Rr();if((c[17691]|0)!=0&(c[h>>2]|0)>>>0>1)c[h>>2]=1;c[h>>2]=c[h>>2]&3;Sr();d=c[g>>2]|0;if((c[h>>2]|0)>>>0>=2){c[17681]=(c[17681]|0)+d;c[17682]=(c[17682]|0)+1}else{c[17679]=(c[17679]|0)+d;c[17680]=(c[17680]|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;fs(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)}Yr();i=e;return}function fs(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[17668]|0))Ee(50354,50369,934,50586);while(1){c[p>>2]=Lv()|0;if((c[3245]|0)==-1)c[3245]=c[p>>2];if((c[3245]|0)!=(c[p>>2]|0)){c[3245]=c[p>>2];c[q>>2]=c[3245];Vr(q,4,0);c[17689]=0}if(!(c[17668]|0)){v=8;break}if((c[k>>2]|0)>>>0>600){v=10;break}if((c[17686]|0)==0?gs()|0:0)c[17686]=1;if(!((c[l>>2]|0)!=2|(c[17694]|0)!=0)){c[17695]=0;c[r>>2]=(c[k>>2]|0)-(c[17695]|0);if((c[r>>2]|0)>>>0>=16){if((c[r>>2]|0)>>>0>600){v=18;break}}else c[r>>2]=16;is(4,c[r>>2]|0,2);c[17695]=(c[17695]|0)+(c[r>>2]|0);c[17694]=1}if((c[l>>2]|0)==2?(c[17695]|0)>>>0<(c[k>>2]|0)>>>0:0){if((c[17695]|0)<0)c[17695]=0;c[s>>2]=(c[k>>2]|0)-(c[17695]|0);if((c[s>>2]|0)>>>0>600){v=25;break}is(4,c[s>>2]|0,2);c[17695]=(c[17695]|0)+(c[s>>2]|0)}while(1){if(!((c[17686]|0)!=0^1))break;js()}ks();c[t>>2]=c[3245];Vr(t,4,0);if(!(c[17689]|0)){Wr(c[17669]|0);c[17675]=(c[17675]|0)+1}c[m>>2]=0;c[o>>2]=c[17671];c[n>>2]=c[17669];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}Wr(c[17669]|0);c[17675]=(c[17675]|0)+1;Wr(c[17671]|0);c[17676]=(c[17676]|0)+1;while(1){e=c[k>>2]|0;c[k>>2]=e+-1;if(!e)break;e=c[17696]|0;c[17696]=e+1;d=a[(c[17671]|0)+e>>0]|0;e=c[h>>2]|0;c[h>>2]=e+1;a[e>>0]=d;if((c[17696]|0)>>>0>=600)c[17696]=0;c[17695]=(c[17695]|0)+-1}if((c[17695]|0)<0)c[17695]=0;Tw(c[17671]|0,0,600)|0;d=Lv()|0;if((d|0)==(c[p>>2]|0)){v=43;break}c[u>>2]=Lv()|0;Vr(u,4,0);c[17689]=0;c[3245]=c[u>>2]}if((v|0)==8)Ee(50354,50369,953,50586);else if((v|0)==10)Je(50596,g);else if((v|0)==18)De(50369,979,50586);else if((v|0)==25)De(50369,995,50586);else if((v|0)==43){i=f;return}}function gs(){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[17668]|0))Ee(50354,50369,743,50628);if(!(c[17692]|0)){c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}c[l>>2]=Tv(c[17692]|0,0,a)|0;if((c[l>>2]|0)==-1?(c[(gu()|0)>>2]|0)==2:0){c[17693]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[l>>2]|0)==-1){t=we(50643)|0;u=c[17692]|0;v=yu(c[(gu()|0)>>2]|0)|0;c[h>>2]=u;c[h+4>>2]=v;Fe(t,h);c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}h=(hs(c[l>>2]|0,c[17692]|0,0)|0)!=0;t=c[l>>2]|0;if(h){vv(t)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if(Pv(t,m)|0){t=we(50714)|0;h=c[17692]|0;v=yu(c[(gu()|0)>>2]|0)|0;c[g>>2]=h;c[g+4>>2]=v;Fe(t,g);vv(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=we(50735)|0;c[f>>2]=c[17692];Fe(g,f);vv(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)){Fe(we(50773)|0,e);vv(c[l>>2]|0)|0;c[17693]=1;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}if((c[m+36>>2]|0)!=600){Fe(we(50806)|0,d);vv(c[l>>2]|0)|0;c[k>>2]=0;s=c[k>>2]|0;i=a;return s|0}do{c[o>>2]=Sv(c[l>>2]|0,n,600)|0;if((c[o>>2]|0)!=-1)break}while((c[(gu()|0)>>2]|0)==4);if((c[o>>2]|0)!=600){o=we(50860)|0;d=c[17692]|0;m=yu(c[(gu()|0)>>2]|0)|0;c[b>>2]=d;c[b+4>>2]=m;Ie(o,b)}vv(c[l>>2]|0)|0;Vr(n,600,0);c[p>>2]=Lv()|0;Vr(p,4,0);c[q>>2]=ib(0)|0;Vr(q,4,0);c[r>>2]=Qa()|0;Vr(r,4,0);is(0,16,0);c[17693]=1;c[k>>2]=1;s=c[k>>2]|0;i=a;return s|0}function hs(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((uv(o,13,k)|0)!=-1){s=10;break}if((c[(gu()|0)>>2]|0)!=11?(c[(gu()|0)>>2]|0)!=13:0){s=5;break}if((c[r>>2]|0)>2){o=we(50685)|0;c[g>>2]=c[n>>2];Fe(o,g)}c[q>>2]=c[r>>2];c[q+4>>2]=25e4;Qv(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=we(50664)|0;q=c[n>>2]|0;n=yu(c[(gu()|0)>>2]|0)|0;c[h>>2]=q;c[h+4>>2]=n;Fe(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 is(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[17672]|0))Ie(50881,e);if((zb[c[17672]&7](3,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0)<0)Ie(50932,e+8|0);else{i=e;return}}function js(){c[17677]=(c[17677]|0)+1;is(3,120,1);return}function ks(){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[17668]|0))Ee(50354,50369,1180,50970);c[17678]=(c[17678]|0)+1;if(c[17690]|0)vb[c[17690]&7](3,2);if(jb(b|0,0)|0)De(50369,1198,50970);else{Vr(b,4,2);Vr(b+4|0,4,2);ow(0,d)|0;Vr(d,136,2);Tw(d|0,0,136)|0;c[e>>2]=ib(0)|0;Vr(e,4,2);c[f>>2]=Qa()|0;Vr(f,4,2);$s(3,2);i=a;return}}function ls(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[17692]|0)De(50369,673,50990);else{c[17692]=qf(c[d>>2]|0)|0;i=b;return}}function ms(){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;Qr();Sr();if(!((c[17692]|0)!=0&(c[17669]|0)!=0&(c[17686]|0)!=0)){Yr();i=a;return}if(!(c[17693]|0)){Yr();Fe(we(51020)|0,a);i=a;return}c[m>>2]=0;c[k>>2]=c[17671];c[h>>2]=c[17669];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}Wr(c[17669]|0);c[17675]=(c[17675]|0)+1;Wr(c[17671]|0);c[17676]=(c[17676]|0)+1;h=c[17692]|0;c[g>>2]=384;c[l>>2]=Tv(h,65,g)|0;do if((c[l>>2]|0)!=-1){g=(hs(c[l>>2]|0,c[17692]|0,1)|0)!=0;h=c[l>>2]|0;if(g){vv(h)|0;break}if(bw(h,0)|0){h=we(51079)|0;g=c[17692]|0;k=yu(c[(gu()|0)>>2]|0)|0;c[e>>2]=g;c[e+4>>2]=k;Fe(h,e);vv(c[l>>2]|0)|0;break}do{c[m>>2]=Rv(c[l>>2]|0,c[17671]|0,600)|0;if((c[m>>2]|0)!=-1)break}while((c[(gu()|0)>>2]|0)==4);if((c[m>>2]|0)!=600){h=we(51079)|0;k=c[17692]|0;g=yu(c[(gu()|0)>>2]|0)|0;c[d>>2]=k;c[d+4>>2]=g;Fe(h,d)}if(vv(c[l>>2]|0)|0){h=we(51101)|0;g=c[17692]|0;k=yu(c[(gu()|0)>>2]|0)|0;c[b>>2]=g;c[b+4>>2]=k;Fe(h,b)}}else{h=we(51056)|0;k=c[17692]|0;g=yu(c[(gu()|0)>>2]|0)|0;c[f>>2]=k;c[f+4>>2]=g;Fe(h,f)}while(0);Yr();i=a;return}function ns(){Qr();Sr();if(!(c[17669]|0)){Yr();return}ks();Yr();return}function os(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;ps();if(!(c[d>>2]|0)){i=b;return}qs();do if(c[17699]|0){if(c[(c[17700]|0)+52>>2]|0)Ee(51159,51187,767,51201);if(c[(c[17701]|0)+52>>2]|0)Ee(51226,51187,768,51201);if(c[(c[17702]|0)+52>>2]|0)Ee(51256,51187,769,51201);else{ss(c[17700]|0);ss(c[17701]|0);ss(c[17702]|0);break}}else{c[17699]=nf(48)|0;c[17700]=of(1,68)|0;rs(c[17700]|0);c[17701]=pf(1,68)|0;rs(c[17701]|0);c[17702]=pf(1,68)|0;rs(c[17702]|0)}while(0);ts();i=b;return}function ps(){if(c[17697]|0)return;c[17697]=1;c[17698]=0;return}function qs(){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(12984)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(51123,b)}else{c[17698]=1;i=a;return}}function rs(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 ss(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];Ie(51289,e)}function ts(){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[17698]=0;c[d>>2]=wt(12984)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(51335,b)}else{i=a;return}}function us(){qs();bt(0,0,0,0)|0;ts();return}function vs(){return}function ws(){return 0}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;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;os(1);qs();d=c[f>>2]|0;f=c[g>>2]|0;if((c[h>>2]|0)==2){ys(d,f,c[17702]|0);ts();i=e;return}else{ys(d,f,c[17701]|0);ts();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;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))Ee(52486,51187,685,52509);if(!(c[l>>2]|0))Ee(51371,51187,686,52509);ss(c[l>>2]|0);do if(!(c[(c[l>>2]|0)+4>>2]|0)){if((c[l>>2]|0)==(c[17700]|0)){e=zs(1)|0;c[(c[l>>2]|0)+4>>2]=e}else{e=zs(0)|0;c[(c[l>>2]|0)+4>>2]=e}if(c[(c[l>>2]|0)+4>>2]|0){e=Lv()|0;c[(c[l>>2]|0)+60>>2]=e;break}else Ie(51904,g)}while(0);if(!((a[(c[l>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))Ds(c[l>>2]|0);e=c[(c[l>>2]|0)+60>>2]|0;if((e|0)==(Lv()|0)?(e=c[(c[l>>2]|0)+64>>2]|0,(e|0)==(Lv()|0)):0)if(Fs(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)Ie(51904,g);else{ss(c[l>>2]|0);i=f;return}Rg(51187,714,52509,0,51641);Ie(51904,g)}function zs(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[17698]|0))Ee(51379,51187,596,51398);c[m>>2]=ih(l,7,1,1)|0;if(c[m>>2]|0){c[g>>2]=As(c[m>>2]|0)|0;He(51416,g);c[h>>2]=0;t=c[h>>2]|0;i=e;return t|0}if(c[k>>2]|0){c[n>>2]=lf(16)|0;ys(c[n>>2]|0,16,c[17701]|0)}else c[n>>2]=Bs(16)|0;c[m>>2]=vh(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=Yw(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}gf(c[n>>2]|0);if(c[m>>2]|0){c[f>>2]=As(c[m>>2]|0)|0;He(51565,f);nh(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 As(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 Bs(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[17703]|0)Ee(51459,51187,552,51483);c[17703]=nf(c[e>>2]|0)|0;c[17704]=c[e>>2];c[17705]=0;c[g>>2]=bt(4,0,16,2)|0;if((c[g>>2]|0)<0){h=c[17703]|0;gf(h);c[17703]=0;Ie(51537,d)}if((c[17705]|0)!=(c[17704]|0)){h=c[17703]|0;gf(h);c[17703]=0;Ie(51537,d)}else{c[f>>2]=c[17703];c[17703]=0;i=b;return c[f>>2]|0}return 0}function Cs(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[17698]|0))Ee(51379,51187,531,51495);if(!(c[17703]|0))Ee(51514,51187,532,51495);while(1){h=c[k>>2]|0;c[k>>2]=h+-1;if(!h){m=8;break}if((c[17705]|0)>>>0>=(c[17704]|0)>>>0){m=8;break}h=c[l>>2]|0;c[l>>2]=h+1;f=d[h>>0]|0;h=c[17705]|0;c[17705]=h+1;e=(c[17703]|0)+h|0;a[e>>0]=(d[e>>0]|0)^f}if((m|0)==8){i=g;return}}function Ds(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[17698]|0))Ee(51379,51187,658,51597);b=(c[e>>2]|0)+17|0;if((c[e>>2]|0)==(c[17700]|0)){ys(b,16,c[17701]|0);f=(c[e>>2]|0)+8|0;a[f>>0]=a[f>>0]&-2|1;f=Lv()|0;c[(c[e>>2]|0)+64>>2]=f;i=d;return}else{Es(b,16);b=(c[e>>2]|0)+8|0;a[b>>0]=a[b>>0]&-2|1;b=Lv()|0;c[(c[e>>2]|0)+64>>2]=b;i=d;return}}function Es(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[17698]|0))Ee(51379,51187,642,51609);if((c[h>>2]|0)!=16)Ee(51628,51187,643,51609);c[k>>2]=Bs(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=Yw(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}gf(c[k>>2]|0);i=f;return}function Fs(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[17698]|0))Ee(51379,51187,444,51695);if(!(c[(c[m>>2]|0)+4>>2]|0))Ee(51711,51187,445,51695);if(!((a[(c[m>>2]|0)+8>>0]<<7&255)<<24>>24>>7<<24>>24))Ee(51730,51187,446,51695);if(!(c[17699]|0))Ee(51749,51187,448,51695);c[o>>2]=c[17699];c[p>>2]=(c[17699]|0)+16;c[q>>2]=(c[17699]|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){Ds(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;Gs(n,16,c[m>>2]|0);Hs(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[17700]|0):0)?(c[m>>2]|0)!=(c[17701]|0):0)?(c[m>>2]|0)!=(c[17702]|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(!(wv(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))}Pw(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=Yw(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){Rg(51187,502,51695,0,51864);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 Gs(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)Ee(51628,51187,273,51779);if(!(c[17698]|0))Ee(51379,51187,274,51779);if(((c[(c[n>>2]|0)+52>>2]|0?(c[n>>2]|0)!=(c[17700]|0):0)?(c[n>>2]|0)!=(c[17701]|0):0)?(c[n>>2]|0)!=(c[17702]|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[17706]|0)){c[17707]=Lv()|0;c[17708]=cw()|0}if(jb(p|0,0)|0){c[k>>2]=yu(c[(gu()|0)>>2]|0)|0;Ie(51791,k)}c[o>>2]=c[p+4>>2];c[o>>2]=c[o>>2]<<4;if((c[p>>2]|0)==(c[17706]|0)?(c[o>>2]|0)==(c[17709]|0):0){b[35718]=(b[35718]|0)+1<<16>>16;b[35718]=(e[35718]|0)&4095}else{b[35718]=0;c[17706]=c[p>>2];c[17709]=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[35718]|0)>>8&15;a[(c[l>>2]|0)+7>>0]=e[35718]|0;a[(c[l>>2]|0)+8>>0]=(c[17707]|0)>>>24;a[(c[l>>2]|0)+9>>0]=(c[17707]|0)>>>16;a[(c[l>>2]|0)+10>>0]=(c[17707]|0)>>>8;a[(c[l>>2]|0)+11>>0]=c[17707];a[(c[l>>2]|0)+12>>0]=(c[17708]|0)>>>24;a[(c[l>>2]|0)+13>>0]=(c[17708]|0)>>>16;a[(c[l>>2]|0)+14>>0]=(c[17708]|0)>>>8;a[(c[l>>2]|0)+15>>0]=c[17708];l=(c[17708]|0)+1|0;c[17708]=l;if(l|0){i=h;return}c[17707]=(c[17707]|0)+1;i=h;return}function Hs(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;Is(c[p>>2]|0,c[q>>2]|0,c[n>>2]|0,16);Js(c[r>>2]|0,c[q>>2]|0,c[o>>2]|0,16);Is(c[p>>2]|0,c[m>>2]|0,c[r>>2]|0,16);Js(c[r>>2]|0,c[m>>2]|0,c[q>>2]|0,16);Is(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=Yw(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=Yw(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 Is(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)Ee(51628,51187,386,51818);c[n>>2]=oh(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]=As(c[n>>2]|0)|0;Ie(51830,g)}else{i=f;return}}function Js(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 Ks(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;os(1);qs();ys(c[e>>2]|0,c[f>>2]|0,c[17700]|0);ts();i=d;return}function Ls(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;Ym(b+8|0,8,1);c[e>>2]=Ms(c[d>>2]|0)|0;d=Ns(c[e>>2]|0)|0;i=b;return d|0}function Ms(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[17699]|0))Ee(51749,51187,912,51933);c[k>>2]=of(1,68)|0;rs(c[k>>2]|0);qs();c[g>>2]=0;a:while(1){if((c[g>>2]|0)>>>0>=3)break;c[l>>2]=ih((c[k>>2]|0)+4|0,7,1,1)|0;if(c[l>>2]|0){o=6;break}c[l>>2]=vh(c[(c[k>>2]|0)+4>>2]|0,51984+((c[g>>2]|0)*96|0)|0,16)|0;if(c[l>>2]|0){o=8;break}b=Lv()|0;c[(c[k>>2]|0)+60>>2]=b;b=(c[k>>2]|0)+17|0;p=51984+((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=Lv()|0;c[(c[k>>2]|0)+64>>2]=p;c[(c[k>>2]|0)+52>>2]=51984+((c[g>>2]|0)*96|0)+16;c[(c[k>>2]|0)+56>>2]=(d[51984+((c[g>>2]|0)*96|0)+16+12>>0]|0)<<24|(d[51984+((c[g>>2]|0)*96|0)+16+13>>0]|0)<<16|(d[51984+((c[g>>2]|0)*96|0)+16+14>>0]|0)<<8|(d[51984+((c[g>>2]|0)*96|0)+16+15>>0]|0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=3)break;if(Fs(n,16,c[k>>2]|0)|0){o=12;break a}if(wv(n,51984+((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)!=(Lv()|0)){o=18;break}p=c[(c[k>>2]|0)+64>>2]|0;if((p|0)!=(Lv()|0)){o=18;break}nh(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;ss(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+1}if((o|0)==6)c[m>>2]=51946;else if((o|0)==8)c[m>>2]=52272;else if((o|0)==12)c[m>>2]=52298;else if((o|0)==14)c[m>>2]=52329;else if((o|0)==18)c[m>>2]=52367;ts();nh(c[(c[k>>2]|0)+4>>2]|0);ss(c[k>>2]|0);gf(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](52389,0,52396,c[m>>2]|0);r=c[m>>2]|0;s=(r|0)!=0;t=s?50:0;i=e;return t|0}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;a=Os(1,c[d>>2]|0)|0;i=b;return a|0}function Os(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 Ps(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;os(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]=hf(1,68+(c[w>>2]|0)|0)|0;if(!(c[y>>2]|0)){c[o>>2]=st()|0;z=c[o>>2]|0;i=n;return z|0}rs(c[y>>2]|0);c[x>>2]=ih((c[y>>2]|0)+4|0,7,1,1)|0;if((c[x>>2]|0)==0?(c[x>>2]=vh(c[(c[y>>2]|0)+4>>2]|0,c[r>>2]|0,c[s>>2]|0)|0,(c[x>>2]|0)==0):0){s=Lv()|0;c[(c[y>>2]|0)+60>>2]=s;Pw((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=Lv()|0;c[(c[y>>2]|0)+64>>2]=u;Pw((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;ss(c[y>>2]|0);c[x>>2]=0}q=c[y>>2]|0;if(c[x>>2]|0){nh(c[q+4>>2]|0);gf(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 Qs(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{qs();ys(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);ts();c[f>>2]=0;m=c[f>>2]|0;i=e;return m|0}return 0}function Rs(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}nh(c[(c[e>>2]|0)+4>>2]|0);gf(c[e>>2]|0);i=b;return}function Ss(a){a=a|0;var b=0;b=i;i=i+16|0;if((i|0)>=(j|0))U();c[b>>2]=a;Ts();i=b;return}function Ts(){if(c[17710]|0)return;c[17710]=1;c[17711]=0;return}function Us(){Vs();bt(0,0,0,0)|0;Ws();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[d>>2]=vt(13028)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(52400,b)}else{c[17711]=1;i=a;return}}function Ws(){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[17711]=0;c[d>>2]=wt(13028)|0;if(c[d>>2]|0){c[b>>2]=pt(c[d>>2]|0)|0;Ie(52443,b)}else{i=a;return}}function Xs(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;Ss(1);if((c[h>>2]|0)!=2)c[h>>2]=1;Vs();Ys(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);Ws();i=e;return}function Ys(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))Ee(52486,52493,144,52509);c[17712]=c[g>>2];c[17713]=c[h>>2];c[17714]=0;c[l>>2]=bt(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;Ie(52564,f)}if((c[17714]|0)!=(c[17713]|0)){m=c[l>>2]|0;c[f>>2]=m;Ie(52564,f)}else{i=e;return}}function Zs(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[17711]|0))Ee(52520,52493,124,52541);if(!(c[17712]|0))Ee(52549,52493,125,52541);while(1){g=c[h>>2]|0;c[h>>2]=g+-1;if(!g){l=8;break}if((c[17714]|0)>>>0>=(c[17713]|0)>>>0){l=8;break}g=c[k>>2]|0;c[k>>2]=g+1;e=a[g>>0]|0;g=c[17714]|0;c[17714]=g+1;a[(c[17712]|0)+g>>0]=e}if((l|0)==8){i=f;return}}function _s(){return c[17715]|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 at(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 bt(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[3268]|0)!=-1){vv(c[3268]|0)|0;c[3268]=-1}if((c[3269]|0)!=-1){vv(c[3269]|0)|0;c[3269]=-1}c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}c[v>>2]=at(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[3268]|0)==-1){c[3268]=ct(52610,(d[76047]|0)&1)|0;a[76047]=d[76047]|0|1}c[s>>2]=c[3268]}else{if((c[3269]|0)==-1){c[3269]=ct(52712,(d[76047]|0)&2)|0;a[76047]=d[76047]|0|2}c[s>>2]=c[3269]}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);Km(52725,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=Qv((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]=yu(c[(gu()|0)>>2]|0)|0;He(52738,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]=Sv(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];He(52758,l);c[t>>2]=c[G>>2]}if((c[t>>2]|0)!=-1)break}while((c[(gu()|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]=yu(c[(gu()|0)>>2]|0)|0;Ie(52796,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=Yw(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)Km(52725,88,c[w>>2]|0,c[w>>2]|0);c[n>>2]=0;M=c[n>>2]|0;i=h;return M|0}function ct(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)Km(52622,88,1,0);while(1){c[l>>2]=Tv(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;Km(52638,88,0,c[m>>2]|0);Qv(0,0,0,0,m)|0}if((c[l>>2]|0)==-1){m=c[h>>2]|0;h=yu(c[(gu()|0)>>2]|0)|0;c[f>>2]=m;c[f+4>>2]=h;Ie(52654,f)}if(!(dt(c[l>>2]|0)|0)){n=c[l>>2]|0;i=d;return n|0}f=c[l>>2]|0;h=yu(c[(gu()|0)>>2]|0)|0;c[e>>2]=f;c[e+4>>2]=h;He(52673,e);n=c[l>>2]|0;i=d;return n|0}function dt(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]=uv(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]=uv(e,2,d)|0;k=c[f>>2]|0;i=b;return k|0}return 0}function et(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,k=0,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 ft(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]=lp(c[(c[k>>2]|0)+4>>2]|0)|0;c[n>>2]=_n(c[k>>2]|0)|0;c[o>>2]=(((c[n>>2]|0)+7|0)>>>0)/8|0;c[p>>2]=0;if(rf(1)|0){d=c[l>>2]|0;c[h>>2]=c[n>>2];c[h+4>>2]=d;Ke(52829,h)}while(1){if((c[p>>2]|0)==0|(c[n>>2]|0)>>>0<32){gf(c[p>>2]|0);c[p>>2]=Xm(c[o>>2]|0,c[l>>2]|0)|0}else{c[q>>2]=Xm(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;gf(c[q>>2]|0)}Mo(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;bo(c[m>>2]|0,(c[n>>2]|0)-1|0);if(!d)eo(c[m>>2]|0,(c[n>>2]|0)-1|0);if((ko(c[m>>2]|0,c[k>>2]|0)|0)>=0){if(!(rf(1)|0))continue;Ke(52876,g);continue}if((jo(c[m>>2]|0,0)|0)>0)break;if(!(rf(1)|0))continue;Ke(52898,f)}gf(c[p>>2]|0);i=e;return c[m>>2]|0}function gt(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]=_n(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=cj(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]=af(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]=hf(1,c[r>>2]|0)|0;if(!(c[w>>2]|0)){c[u>>2]=st()|0;break}c[u>>2]=ht(x,c[p>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0)|0;if(((((((c[u>>2]|0)==0?(c[u>>2]=it(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]=Ei(z,c[s>>2]|0,3)|0,(c[u>>2]|0)==0):0)?(c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Pi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Pi(c[z>>2]|0,76048,1),Pi(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Pi(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,Pw(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Pi(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,Pw(h|0,k|0,c[r>>2]|0)|0,c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0)?(Pi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0),Pi(c[z>>2]|0,52918,1),Pi(c[z>>2]|0,c[x>>2]|0,(((c[D>>2]|0)+7|0)>>>0)/8|0),Pi(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,Pw(k|0,h|0,c[r>>2]|0)|0,c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0,(c[u>>2]|0)==0):0){Pi(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;Pw(h|0,k|0,c[r>>2]|0)|0;c[A>>2]=af(((((c[D>>2]|0)+7|0)>>>0)/8|0)+(c[r>>2]|0)|0)|0;if(!(c[A>>2]|0)){c[u>>2]=st()|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]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Pi(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;Pw(k|0,h|0,c[r>>2]|0)|0;Pw((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)}rp(c[B>>2]|0);c[B>>2]=0;c[u>>2]=No(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)go(c[B>>2]|0,c[B>>2]|0,(c[C>>2]|0)-(c[D>>2]|0)|0);if((ko(c[B>>2]|0,c[o>>2]|0)|0)<0?(jo(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]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Pi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Pi(c[z>>2]|0,76048,1);h=c[w>>2]|0;k=$i(c[z>>2]|0,0)|0;Pw(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Pi(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;Pw(k|0,h|0,c[r>>2]|0)|0;continue}c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Pi(c[z>>2]|0,c[v>>2]|0,c[r>>2]|0);Pi(c[z>>2]|0,76048,1);h=c[w>>2]|0;k=$i(c[z>>2]|0,0)|0;Pw(h|0,k|0,c[r>>2]|0)|0;c[u>>2]=Vi(c[z>>2]|0,c[w>>2]|0,c[r>>2]|0)|0;if(c[u>>2]|0)break a;Pi(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;Pw(k|0,h|0,c[r>>2]|0)|0}}}else c[u>>2]=st()|0;while(0);gf(c[A>>2]|0);Oi(c[z>>2]|0);gf(c[y>>2]|0);gf(c[x>>2]|0);gf(c[w>>2]|0);gf(c[v>>2]|0);v=c[B>>2]|0;if(c[u>>2]|0)rp(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 ht(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]=Ro(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=df(c[o>>2]|0)|0;else s=af(c[o>>2]|0)|0;c[p>>2]=s;if(!(c[p>>2]|0)){c[f>>2]=st()|0;q=c[f>>2]|0;i=e;return q|0}if(c[n>>2]|0)Tw(c[p>>2]|0,0,c[n>>2]|0)|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);c[l>>2]=Ro(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){gf(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 it(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]=No(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)go(c[q>>2]|0,c[q>>2]|0,(c[m>>2]|0)-(c[o>>2]|0)|0);if((ko(c[q>>2]|0,c[n>>2]|0)|0)>=0)Wn(c[q>>2]|0,c[q>>2]|0,c[n>>2]|0);c[p>>2]=ht(c[k>>2]|0,c[q>>2]|0,(((c[o>>2]|0)+7|0)>>>0)/8|0)|0;rp(c[q>>2]|0);c[h>>2]=c[p>>2];r=c[h>>2]|0;i=g;return r|0}function jt(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]=up(c[g>>2]|0,n)|0;c[l>>2]=No(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;go(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 kt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,k=0,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(rf(1)|0)Oe(52920,c[m>>2]|0);c[D>>2]=_n(c[(c[n>>2]|0)+32>>2]|0)|0;c[s>>2]=jt(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]=jp(0)|0;c[w>>2]=jp(0)|0;c[x>>2]=jp(0)|0;c[y>>2]=jp(0)|0;mn(z);c[E>>2]=sn(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){rp(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]=up(c[m>>2]|0,C)|0;c[s>>2]=gt(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]=ft(c[(c[n>>2]|0)+32>>2]|0,1)|0;Pn(z,c[u>>2]|0,(c[n>>2]|0)+20|0,c[E>>2]|0);if(gn(c[y>>2]|0,0,z,c[E>>2]|0)|0){G=14;break}Ao(c[o>>2]|0,c[y>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if((jo(c[o>>2]|0,0)|0)!=0^1)continue;Fo(c[v>>2]|0,c[(c[n>>2]|0)+56>>2]|0,c[o>>2]|0,c[(c[n>>2]|0)+32>>2]|0);Xn(c[w>>2]|0,c[A>>2]|0,c[v>>2]|0,c[(c[n>>2]|0)+32>>2]|0);zo(c[x>>2]|0,c[u>>2]|0,c[(c[n>>2]|0)+32>>2]|0)|0;Fo(c[p>>2]|0,c[x>>2]|0,c[w>>2]|0,c[(c[n>>2]|0)+32>>2]|0);if(!((jo(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(rf(1)|0)Ke(52997,k);c[s>>2]=8}else if((G|0)==19?rf(1)|0:0){Oe(52938,c[o>>2]|0);Oe(52959,c[p>>2]|0)}wn(c[E>>2]|0);on(z);rp(c[y>>2]|0);rp(c[x>>2]|0);rp(c[w>>2]|0);rp(c[v>>2]|0);rp(c[u>>2]|0);if((c[A>>2]|0)!=(c[m>>2]|0))rp(c[A>>2]|0);c[l>>2]=c[s>>2];F=c[l>>2]|0;i=h;return F|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;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((jo(c[n>>2]|0,0)|0)>0?(ko(c[n>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){if((jo(c[o>>2]|0,0)|0)>0?(ko(c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0)<0:0){c[z>>2]=_n(c[(c[m>>2]|0)+32>>2]|0)|0;c[p>>2]=jt(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]=jp(0)|0;c[s>>2]=jp(0)|0;c[t>>2]=jp(0)|0;c[u>>2]=jp(0)|0;mn(v);mn(w);mn(x);c[y>>2]=sn(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;zo(c[r>>2]|0,c[o>>2]|0,c[(c[m>>2]|0)+32>>2]|0)|0;Fo(c[s>>2]|0,c[q>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Pn(w,c[s>>2]|0,(c[m>>2]|0)+20|0,c[y>>2]|0);Fo(c[t>>2]|0,c[n>>2]|0,c[r>>2]|0,c[(c[m>>2]|0)+32>>2]|0);Pn(x,c[t>>2]|0,(c[m>>2]|0)+44|0,c[y>>2]|0);Jn(v,w,x,c[y>>2]|0);do if(jo(c[v+8>>2]|0,0)|0){if(gn(c[u>>2]|0,0,v,c[y>>2]|0)|0){if(rf(1)|0)Ke(53103,g);c[p>>2]=8;break}Ao(c[u>>2]|0,c[u>>2]|0,c[(c[m>>2]|0)+32>>2]|0);if(ko(c[u>>2]|0,c[n>>2]|0)|0){if(rf(1)|0){Oe(53149,c[u>>2]|0);Oe(53156,c[n>>2]|0);Oe(53163,c[o>>2]|0)}c[p>>2]=8}}else{if(rf(1)|0)Ke(53081,h);c[p>>2]=8}while(0);wn(c[y>>2]|0);on(x);on(w);on(v);rp(c[u>>2]|0);rp(c[t>>2]|0);rp(c[s>>2]|0);rp(c[r>>2]|0);if((c[q>>2]|0)!=(c[l>>2]|0))rp(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 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;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(rf(1)|0)Oe(52980,c[k>>2]|0);c[z>>2]=_n(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]=up(c[k>>2]|0,y)|0;c[o>>2]=No(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;go(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]=jp(0)|0;c[r>>2]=jp(0)|0;c[s>>2]=jp(0)|0;c[u>>2]=jp(0)|0;c[t>>2]=jp(0)|0;mn(v);c[A>>2]=sn(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;Ao(c[u>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!(jo(c[u>>2]|0,0)|0))Cp(c[u>>2]|0,1)|0;while(1){rp(c[p>>2]|0);c[p>>2]=ft(c[(c[l>>2]|0)+32>>2]|0,1)|0;Pn(v,c[p>>2]|0,(c[l>>2]|0)+20|0,c[A>>2]|0);if(gn(c[t>>2]|0,0,v,c[A>>2]|0)|0){C=13;break}Ao(c[m>>2]|0,c[t>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if((jo(c[m>>2]|0,0)|0)!=0^1)continue;Fo(c[q>>2]|0,c[(c[l>>2]|0)+56>>2]|0,c[m>>2]|0,c[(c[l>>2]|0)+32>>2]|0);Fo(c[s>>2]|0,c[p>>2]|0,c[u>>2]|0,c[(c[l>>2]|0)+32>>2]|0);Xn(c[n>>2]|0,c[s>>2]|0,c[q>>2]|0,c[(c[l>>2]|0)+32>>2]|0);if(!((jo(c[n>>2]|0,0)|0)!=0^1)){C=18;break}}if((C|0)==13){if(rf(1)|0)Ke(52997,g);c[o>>2]=8}else if((C|0)==18?rf(1)|0:0){Oe(53041,c[m>>2]|0);Oe(53061,c[n>>2]|0)}wn(c[A>>2]|0);on(v);rp(c[t>>2]|0);rp(c[u>>2]|0);rp(c[s>>2]|0);rp(c[r>>2]|0);rp(c[q>>2]|0);rp(c[p>>2]|0);if((c[w>>2]|0)!=(c[k>>2]|0))rp(c[w>>2]|0);c[h>>2]=c[o>>2];B=c[h>>2]|0;i=f;return B|0}function nt(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((jo(c[p>>2]|0,0)|0)>0?(ko(c[p>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){if((jo(c[q>>2]|0,0)|0)>0?(ko(c[q>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0)<0:0){c[t>>2]=jp(0)|0;c[s>>2]=jp(0)|0;c[u>>2]=jp(0)|0;c[v>>2]=jp(0)|0;c[w>>2]=jp(0)|0;c[x>>2]=jp(0)|0;c[y>>2]=jp(0)|0;mn(z);mn(A);mn(B);c[C>>2]=sn(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;Ao(c[s>>2]|0,c[n>>2]|0,c[(c[o>>2]|0)+32>>2]|0);if(!(jo(c[s>>2]|0,0)|0))Cp(c[s>>2]|0,1)|0;zo(c[w>>2]|0,c[s>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0;Fo(c[u>>2]|0,c[q>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Fo(c[x>>2]|0,c[p>>2]|0,c[w>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Yn(c[v>>2]|0,c[y>>2]|0,c[x>>2]|0,c[(c[o>>2]|0)+32>>2]|0);Pn(A,c[u>>2]|0,(c[o>>2]|0)+20|0,c[C>>2]|0);Pn(B,c[v>>2]|0,(c[o>>2]|0)+44|0,c[C>>2]|0);Jn(z,A,B,c[C>>2]|0);do if(jo(c[z+8>>2]|0,0)|0){if(gn(c[t>>2]|0,0,z,c[C>>2]|0)|0){if(rf(1)|0)Ke(53103,k);c[r>>2]=8;break}Ao(c[t>>2]|0,c[t>>2]|0,c[(c[o>>2]|0)+32>>2]|0);n=(ko(c[t>>2]|0,c[p>>2]|0)|0)!=0;e=(rf(1)|0)!=0;if(!n){if(!e)break;Ke(53196,g);break}if(e){Oe(53149,c[t>>2]|0);Oe(53156,c[p>>2]|0);Oe(53163,c[q>>2]|0);Ke(53170,h)}c[r>>2]=8}else{if(rf(1)|0)Ke(53081,l);c[r>>2]=8}while(0);wn(c[C>>2]|0);on(B);on(A);on(z);rp(c[y>>2]|0);rp(c[x>>2]|0);rp(c[w>>2]|0);rp(c[v>>2]|0);rp(c[u>>2]|0);rp(c[t>>2]|0);rp(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 ot(){return Dt()|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=Qt(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=Ut(c[d>>2]|0)|0;i=b;return a|0}function rt(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 st(){return Vt()|0}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;Ft(c[d>>2]|0);i=b;return}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=yt(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;b=i;i=i+16|0;if((i|0)>=(j|0))U();d=b;c[d>>2]=a;a=Ct(c[d>>2]|0)|0;i=b;return a|0}function yt(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]=zt(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]=qt(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function zt(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(53218,53238,114,53251);else{i=b;return c[e>>2]|0}return 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]=zt(c[d>>2]|0)|0;c[f>>2]=Iw((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]=qt(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;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]=zt(c[d>>2]|0)|0;c[f>>2]=Ow((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]=qt(c[f>>2]|0)|0;g=c[f>>2]|0;i=b;return g|0}function Ct(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]=zt(c[d>>2]|0)|0;c[f>>2]=Va((c[e>>2]|0)+4|0)|0;if(c[f>>2]|0){c[f>>2]=qt(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 Dt(){Et();return 0}function Et(){Gt()|0;return}function Ft(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[(gu()|0)>>2]=a;i=b;return}function Gt(){if(c[17716]|0)return 0;c[17716]=1;lb(3)|0;return 0}function Ht(){It(0)|0;c[17718]=0;c[17719]=0;return}function It(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){Jt(c[d>>2]|0);c[e>>2]=Kt(c[d>>2]|0)|0;Nt(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;Ot();c[f>>2]=c[17717];while(1){if(!(c[f>>2]|0))break;if(c[(c[f>>2]|0)+4>>2]|0){Jt(c[(c[f>>2]|0)+4>>2]|0);d=Kt(c[(c[f>>2]|0)+4>>2]|0)|0;c[e>>2]=c[e>>2]|d;Nt(c[(c[f>>2]|0)+4>>2]|0)}c[f>>2]=c[c[f>>2]>>2]}Pt();g=c[e>>2]|0;h=(g|0)!=0;k=h?-1:0;i=b;return k|0}function Jt(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 Kt(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]=Lt(a)|0;f=c[e>>2]|0;i=b;return f|0}else{Mt(a);c[e>>2]=0;f=c[e>>2]|0;i=b;return f|0}return 0}function Lt(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(53267,53289,1654,53299);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 Mt(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(53308,53289,1722,53331);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 Nt(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}Bt((c[(c[e>>2]|0)+36>>2]|0)+1040|0)|0;i=b;return}function Ot(){At(13080)|0;return}function Pt(){Bt(13080)|0;return}function Qt(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]=Rt(c[e>>2]|0)|0;do if(c[f>>2]&32768|0){c[g>>2]=rt(c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[f>>2]=16382;break}c[d>>2]=yu(c[g>>2]|0)|0;h=c[d>>2]|0;i=b;return h|0}while(0);c[d>>2]=53340+(c[13124+((St(c[f>>2]|0)|0)<<2)>>2]|0);h=c[d>>2]|0;i=b;return h|0}function Rt(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 St(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 Tt(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[14612+(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 Ut(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[15176+(c[f>>2]<<2)>>2];g=c[d>>2]|0;i=b;return g|0}return 0}function Vt(){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[(gu()|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[15176+(c[e>>2]<<2)>>2];f=c[b>>2]|0;i=a;return f|0}return 0}function Wt(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=pd(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=tv(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 Xt(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=qd(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=xv(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 Yt(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]=Uu(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;Pw((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 Zt(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!=(_t(c[f>>2]|0)|0)?0!=(_t(c[g>>2]|0)|0):0)if(!(dv((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 _t(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!=(Zt(c[k>>2]|0,c[l>>2]|0)|0)){c[o>>2]=349;if((c[3920]|0)==-1)c[3920]=Yb(1,0,61355,61364,c[o>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3920]|0))Xb();c[g>>2]=61355;c[g+4>>2]=349;bc(1,61381,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==(au(m)|0)){c[p>>2]=353;if((c[3921]|0)==-1)c[3921]=Yb(1,0,61355,61364,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3921]|0))Xb();c[f>>2]=61355;c[f+4>>2]=353;bc(1,61381,f);Xb()}if(-1==(au(n)|0)){c[q>>2]=355;if((c[3922]|0)==-1)c[3922]=Yb(1,0,61355,61364,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3922]|0))Xb();c[e>>2]=61355;c[e+4>>2]=355;bc(1,61381,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 au(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!=(_t(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=Hw(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){bu(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 bu(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 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,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!=(Zt(c[m>>2]|0,c[n>>2]|0)|0)){bu(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!=(au(o)|0)?-1!=(au(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=Hw(c[d>>2]|0,c[d+4>>2]|0,-1,-1)|0;d=o;c[d>>2]=n;c[d+4>>2]=C;break}bu(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)){bu(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}if(1!=(Yt(o+12|0,c[l>>2]|0)|0)){c[q>>2]=421;if((c[3923]|0)==-1)c[3923]=Yb(1,0,61355,61409,c[q>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3923]|0))Xb();c[h>>2]=61355;c[h+4>>2]=421;bc(1,61381,h);Xb()}if((c[o+8>>2]|0)>>>0<(c[p+8>>2]|0)>>>0){c[r>>2]=422;if((c[3924]|0)==-1)c[3924]=Yb(1,0,61355,61409,c[r>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3924]|0))Xb();c[g>>2]=61355;c[g+4>>2]=422;bc(1,61381,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=Gw(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[3925]|0)==-1)c[3925]=Yb(1,0,61355,61409,c[s>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3925]|0))Xb();c[f>>2]=61355;c[f+4>>2]=424;bc(1,61381,f);Xb()}bu(c[l>>2]|0);c[k>>2]=-1;t=c[k>>2]|0;i=e;return t|0}function du(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!=(Zt(c[k>>2]|0,c[l>>2]|0)|0)){bu(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!=(au(m)|0)?-1!=(au(n)|0):0){if(1==(Yt((c[k>>2]|0)+12|0,o)|0)){k=m;d=n;l=Hw(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)){bu(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==(au(o)|0);m=c[h>>2]|0;if(n){bu(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[3926]|0)==-1)c[3926]=Yb(1,0,61355,61431,c[p>>2]|0)|0;if(($b()|0)>0){ac(-1,0);Xb()}if(!(c[3926]|0))Xb();c[f>>2]=61355;c[f+4>>2]=468;bc(1,61381,f);Xb()}bu(c[h>>2]|0);c[g>>2]=-1;q=c[g>>2]|0;i=e;return q|0}function eu(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=fu(wa(6,d|0)|0)|0;i=b;return a|0}function fu(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(gu()|0)>>2]=0-a;b=-1}else b=a;return b|0}function gu(){var a=0;if(!(c[17720]|0))a=70924;else a=c[(Zw()|0)+64>>2]|0;return a|0}function hu(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=iu(b,d,e)|0;i=f;return g|0}function iu(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[17720]|0)){c[f>>2]=c[b>>2];c[f+4>>2]=o;c[f+8>>2]=h;q=fu(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=fu(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 ju(a){a=a|0;if(!(c[a+68>>2]|0))ku(a);return}function ku(a){a=a|0;return}function lu(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((fu(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 mu(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[17720]|0)){c[g>>2]=c[b+60>>2];c[g+4>>2]=k;c[g+8>>2]=2;p=fu(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=fu(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 nu(a){a=a|0;if(!(c[a+68>>2]|0))ku(a);return}function ou(a){a=a|0;return pu(a)|0}function pu(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function qu(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 ru(a){a=a|0;var b=0;b=(su(a)|0)==0;return (b?a:a|32)|0}function su(a){a=a|0;return (a+-65|0)>>>0<26|0}function tu(a){a=a|0;return uu(a,0)|0}function uu(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|(vu(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[18826+(k<<2)+2>>0]|0;l=i<<24>>24;m=c-(e[18826+(k<<2)>>1]|0)|0;if((m-(l&h)|0)>>>0<(d[18826+(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[18334+(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[18334+(r<<2)+(m<<1)>>1]|0;if(!(i<<16>>16))break b}j=e[18334+(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 vu(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[61448+((d[61448+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=a>>>0<196606&1;return b|0}function wu(a){a=a|0;return uu(a,1)|0}function xu(a){a=a|0;return (a+-97|0)>>>0<26|0}function yu(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[64424+c>>0]|0)==(b|0)){e=c;f=2;break}c=c+1|0;if((c|0)==87){g=87;h=64512;f=5;break}}if((f|0)==2)if(!e)i=64512;else{g=e;h=64512;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 zu(a){a=a|0;var b=0;if(!a)b=0;else b=(Au(16144,a)|0)!=0;return b&1|0}function Au(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)d=a+((Bu(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 Bu(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 Cu(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 Du(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=Eu(a,b,d,g)|0;i=f;return e|0}function Eu(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=16232;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[(gu()|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=Gu(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 Fu(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;Pw(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Gu(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((Hu(0,d,g,k,h)|0)<0)o=-1;else{if((c[b+76>>2]|0)>-1)p=Su(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=Hu(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=Hu(b,d,g,k,h)|0;h=c[b>>2]|0;c[b>>2]=h|m;if(p|0)ku(b);o=(h&32|0)==0?u:-1}i=f;return o|0}function Hu(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[(gu()|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)Iu(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[66316+(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}Ku(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=Nw(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=66796;V=77}else{ca=y-Ma|0;Na=Ma;Oa=ba;Pa=(Ca|0)>(ca|0)?Ca:ca+1|0;Qa=0;Ra=66796;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=Gw(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=66796;V=76;break f}if(!(ba&2048)){na=ba&1;Sa=da;Ta=ma;Ua=na;Va=(na|0)==0?66796:66798;V=76}else{Sa=da;Ta=ma;Ua=1;Va=66797;V=76}break}case 117:{ma=s;Sa=c[ma>>2]|0;Ta=c[ma+4>>2]|0;Ua=0;Va=66796;V=76;break}case 99:{a[z>>0]=c[s>>2];Wa=z;Xa=aa;Ya=1;Za=0;_a=66796;$a=x;break}case 109:{ab=yu(c[(gu()|0)>>2]|0)|0;V=82;break}case 115:{ma=c[s>>2]|0;ab=ma|0?ma:66806;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){Nu(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?66814:66819}else{fb=eb;gb=1;hb=66816}else{fb=-eb;gb=1;hb=66813}h[k>>3]=fb;ma=c[k+4>>2]&2146435072;do if(ma>>>0<2146435072|(ma|0)==2146435072&0<0){eb=+Qu(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=Lu(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[66780+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;Nu(e,32,wa,ca,ba);if(!(c[e>>2]&32))Iu(oa,ib,e)|0;Nu(e,48,wa,ca,ba^65536);tb=rb-A|0;if(!(c[e>>2]&32))Iu(q,tb,e)|0;rb=r-pb|0;Nu(e,48,kb-(tb+rb)|0,0,0);if(!(c[e>>2]&32))Iu(jb,rb,e)|0;Nu(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=Qw(c[Bb>>2]|0,0,oa|0)|0;Db=Hw(Cb|0,C|0,pb|0,0)|0;Cb=C;Eb=Sw(Db|0,Cb|0,1e9,0)|0;c[Bb>>2]=Eb;Eb=Ww(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=Lu(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;Nu(e,32,wa,sb,ba);if(!(c[e>>2]&32))Iu(hb,gb,e)|0;Nu(e,48,wa,sb,ba^65536);do if(Eb){pb=fc>>>0>rb>>>0?rb:fc;na=pb;while(1){da=Lu(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}Tw(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))Iu(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;Iu(66848,1,e)|0}while(0);if((nc|0)>0&wc>>>0<jc>>>0){na=nc;pb=wc;while(1){da=Lu(c[pb>>2]|0,0,J)|0;if(da>>>0>q>>>0){Tw(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))Iu(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;Nu(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=Lu(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))Iu(zc,1,e)|0;if(pb&(kb|0)<1){Ac=Db;break}if(c[e>>2]&32|0){Ac=Db;break}Iu(66848,1,e)|0;Ac=Db}else{if(zc>>>0<=q>>>0){Ac=zc;break}Tw(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))Iu(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;Nu(e,48,Bc+18|0,18,0);if(c[e>>2]&32|0)break;Iu(tc,r-tc|0,e)|0}while(0);Nu(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;Nu(e,32,wa,tb,aa);jb=c[e>>2]|0;if(!(jb&32)){Iu(hb,Eb,e)|0;Cc=c[e>>2]|0}else Cc=jb;if(!(Cc&32))Iu(rb?(ca?66840:66844):ca?66832:66836,3,e)|0;Nu(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=66796;$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[66780+(ca&15)>>0]|ea;ca=Nw(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=66796;V=77}else{Na=Dc;Oa=Ja;Pa=Ka;Qa=2;Ra=66796+(La>>4)|0;V=77}}else{Na=x;Oa=Ja;Pa=Ka;Qa=0;Ra=66796;V=77}}else if((V|0)==76){V=0;Na=Lu(Sa,Ta,x)|0;Oa=ba;Pa=Ca;Qa=Ua;Ra=Va;V=77}else if((V|0)==82){V=0;tb=Mu(ab,0,Ca)|0;f=(tb|0)==0;Wa=ab;Xa=aa;Ya=f?Ca:tb-ab|0;Za=0;_a=66796;$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=Ou(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}Nu(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=Ou(v,tb)|0;ca=ma+ca|0;if((ca|0)>(Ec|0)){db=Ec;V=97;break g}if(!(c[e>>2]&32))Iu(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;Nu(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;Nu(e,32,ma,ca,Xa);if(!(c[e>>2]&32))Iu(_a,Za,e)|0;Nu(e,48,ma,ca,Xa^65536);Nu(e,48,f,aa,0);if(!(c[e>>2]&32))Iu(Wa,aa,e)|0;Nu(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}Ku(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 Iu(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(!(Ju(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);Pw(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 Ju(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 Ku(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 zm(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]=wm(c[h>>2]|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+16>>2];c[n>>2]=wm((c[h>>2]|0)+4|0)|0;c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];c[k>>2]=wm((c[h>>2]|0)+8|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];c[l>>2]=wm((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];xm(c[g>>2]|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];xm((c[g>>2]|0)+4|0,c[l>>2]|0);c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];xm((c[g>>2]|0)+8|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+12>>2];xm((c[g>>2]|0)+12|0,c[n>>2]|0);i=e;return}function Am(){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=kr(43231,13,14,8,4,16,4256)|0;i=a;return b|0}function Bm(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]=um(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];Cm(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=Yw(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}Pe(c[v>>2]|0);Qe();i=k;return}function Cm(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 Dm(){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=gr(43231,13,14,6,5,16,4256)|0;i=a;return b|0}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,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]=ym(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];Fm(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=Yw(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}Pe(c[v>>2]|0);Qe();i=k;return}function Fm(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 Gm(){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=ir(43231,13,14,7,5,16,4256)|0;i=a;return b|0}function Hm(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]=um(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];Im(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}Pe(c[s>>2]|0);Qe();i=g;return}function Im(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;Fm(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function Jm(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[17650]=c[e>>2];c[17651]=c[f>>2];i=d;return}function Km(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[17650]|0)){i=f;return}tb[c[17650]&15](c[17651]|0,c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;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;do if(c[d>>2]|0){if((c[d>>2]|0)==1){c[17653]=1;break}if(!(c[17652]|0)){if((c[d>>2]|0)==2){c[17654]=1;break}if((c[d>>2]|0)==3)c[17655]=1}}else c[17652]=1;while(0);i=b;return}function Mm(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(Ig()|0){os(c[d>>2]|0);i=b;return}if(c[17653]|0){Pr(c[d>>2]|0);i=b;return}if(c[17654]|0){os(c[d>>2]|0);i=b;return}a=c[d>>2]|0;if(c[17655]|0){Ss(a);i=b;return}else{Pr(a);i=b;return}}function Nm(){if(Ig()|0){us();return}if(c[17653]|0){Zr();return}if(c[17654]|0){us();return}if(c[17655]|0){Us();return}else{Zr();return}}function Om(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)?Ig()|0:0)c[d>>2]=2;else f=4;do if((f|0)==4){if(c[17653]|0){c[d>>2]=1;break}if(c[17654]|0){c[d>>2]=2;break}if(c[17655]|0){c[d>>2]=3;break}else{c[d>>2]=1;break}}while(0);i=b;return c[d>>2]|0}function Pm(){if(Ig()|0){vs();return}else{_r();return}}function Qm(){if(Ig()|0)return;$r();return}function Rm(){if(Ig()|0)return;as();return}function Sm(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(Ig()|0){i=b;return}bs(c[d>>2]|0);i=b;return}function Tm(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(Ig()|0)c[d>>2]=0;else c[d>>2]=cs(c[e>>2]|0)|0;i=b;return c[d>>2]|0}function Um(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;if(Ig()|0)c[b>>2]=ws()|0;else c[b>>2]=ds()|0;i=a;return c[b>>2]|0}function Vm(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]=lf(c[e>>2]|0)|0;Wm(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Wm(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(Ig()|0){xs(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17653]|0){es(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}if(c[17654]|0){xs(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[17655]|0){Xs(d,f,g);i=e;return}else{es(d,f,g);i=e;return}}function Xm(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]=nf(c[e>>2]|0)|0;Wm(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0);i=d;return c[g>>2]|0}function Ym(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;Wm(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function Zm(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(Ig()|0){i=b;return}if(c[17653]|0){ls(c[d>>2]|0);i=b;return}if((c[17654]|0)!=0|(c[17655]|0)!=0){i=b;return}ls(c[d>>2]|0);i=b;return}function _m(){if(Ig()|0)return;if(c[17653]|0){ms();return}if((c[17654]|0)!=0|(c[17655]|0)!=0)return;ms();return}function $m(){if(Ig()|0)return;if(c[17653]|0){ns();return}if((c[17654]|0)!=0|(c[17655]|0)!=0)return;ns();return}function an(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(Ig()|0){Ks(c[h>>2]|0,c[k>>2]|0);i=e;return}Mm(1);c[o>>2]=vt(12512)|0;if(c[o>>2]|0){c[g>>2]=pt(c[o>>2]|0)|0;Ie(45281,g)}c[l>>2]=Lv()|0;if(c[17656]|0){if((c[17657]|0)!=(c[l>>2]|0)){Wm(75972,8,0);c[17657]=c[l>>2]}}else{c[p>>2]=ib(0)|0;c[q>>2]=c[l>>2];c[17657]=c[l>>2];c[m>>2]=75952;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;Ym(75972,8,0);c[17656]=1}c[m>>2]=c[h>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;Ll(75952,75952,28);c[n>>2]=(c[k>>2]|0)>>>0>20?20:c[k>>2]|0;Pw(c[m>>2]|0,75952,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]=wt(12512)|0;if(c[o>>2]|0){c[f>>2]=pt(c[o>>2]|0)|0;Ie(45326,f)}else{i=e;return}}function bn(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(Ig()|0)c[d>>2]=Ls(c[e>>2]|0)|0;else c[d>>2]=0;i=b;return c[d>>2]|0}function cn(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(Ig()|0){c[m>>2]=Ps(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 dn(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(Ig()|0){c[f>>2]=Qs(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 en(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(!(Ig()|0)){i=b;return}Rs(c[d>>2]|0);i=b;return}function fn(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;Du(p,99,45371,h)|0;Oe(p,0);i=f;return}c[g>>2]=e;Du(p,99,45376,g)|0;if(c[m>>2]|0){c[n>>2]=Fp(0)|0;c[o>>2]=Fp(0)|0}if(c[m>>2]|0?!(gn(c[n>>2]|0,c[o>>2]|0,c[l>>2]|0,c[m>>2]|0)|0):0){a[p+((Uu(p)|0)-1)>>0]=120;Oe(p,c[n>>2]|0);a[p+((Uu(p)|0)-1)>>0]=121;Oe(p,c[o>>2]|0)}else{Oe(p,c[c[l>>2]>>2]|0);a[p+((Uu(p)|0)-1)>>0]=89;Oe(p,c[(c[l>>2]|0)+4>>2]|0);a[p+((Uu(p)|0)-1)>>0]=90;Oe(p,c[(c[l>>2]|0)+8>>2]|0)}if(!(c[m>>2]|0)){i=f;return}Hp(c[n>>2]|0);Hp(c[o>>2]|0);i=f;return}function gn(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(!(jo(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]=Fp(0)|0;c[p>>2]=Fp(0)|0;hn(c[o>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);jn(c[p>>2]|0,c[o>>2]|0,c[o>>2]|0,c[n>>2]|0);if(c[k>>2]|0)jn(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]=Fp(0)|0;jn(c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0);jn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[q>>2]|0,c[n>>2]|0);rp(c[q>>2]|0)}rp(c[p>>2]|0);rp(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)yp(c[k>>2]|0,c[c[m>>2]>>2]|0)|0;if(c[l>>2]|0){c[g>>2]=45472;c[g+4>>2]=45496;Ie(45423,g)}c[h>>2]=0;s=c[h>>2]|0;i=f;return s|0}case 2:{c[r>>2]=Fp(0)|0;hn(c[r>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[n>>2]|0);if(c[k>>2]|0)jn(c[k>>2]|0,c[c[m>>2]>>2]|0,c[r>>2]|0,c[n>>2]|0);if(c[l>>2]|0)jn(c[l>>2]|0,c[(c[m>>2]|0)+4>>2]|0,c[r>>2]|0,c[n>>2]|0);Hp(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 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+12|0;g=e+8|0;h=e+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(zo(c[f>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0){i=e;return}He(45381,e);Oe(45415,c[g>>2]|0);Oe(45419,c[(c[h>>2]|0)+16>>2]|0);i=e;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;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);kn(c[g>>2]|0,c[l>>2]|0);i=f;return}function kn(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){Do(b,a,c[e+48+12>>2]|0);i=d;return}else{Ao(b,a,c[e+16>>2]|0);i=d;return}}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[b+4>>2]=a;c[d>>2]=lf(12)|0;mn(c[d>>2]|0);i=b;return c[d>>2]|0}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;a=Fp(0)|0;c[c[d>>2]>>2]=a;a=Fp(0)|0;c[(c[d>>2]|0)+4>>2]=a;a=Fp(0)|0;c[(c[d>>2]|0)+8>>2]=a;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;if(!(c[d>>2]|0)){i=b;return}on(c[d>>2]|0);gf(c[d>>2]|0);i=b;return}function on(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;rp(c[c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;rp(c[(c[d>>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;rp(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;i=b;return}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]=ln(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)yp(e,c[h>>2]|0)|0;else pp(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)yp(e,c[k>>2]|0)|0;else pp(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){yp(e,c[l>>2]|0)|0;m=c[g>>2]|0;i=f;return m|0}else{pp(e);m=c[g>>2]|0;i=f;return m|0}return 0}function qn(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]=ln(0)|0;e=c[c[g>>2]>>2]|0;if(c[h>>2]|0)Ap(e,c[h>>2]|0);else pp(e);e=c[(c[g>>2]|0)+4>>2]|0;if(c[k>>2]|0)Ap(e,c[k>>2]|0);else pp(e);e=c[(c[g>>2]|0)+8>>2]|0;if(c[l>>2]|0){Ap(e,c[l>>2]|0);m=c[g>>2]|0;i=f;return m|0}else{pp(e);m=c[g>>2]|0;i=f;return m|0}return 0}function rn(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 sn(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]=of(1,108)|0;tn(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 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;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[17658]|0))if(Ya(45507)|0){c[17658]=1;break}else{c[17658]=-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=_n(c[p>>2]|0)|0;c[(c[l>>2]|0)+12>>2]=n}n=wp(c[p>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=n;n=wp(c[q>>2]|0)|0;c[(c[l>>2]|0)+20>>2]=n;n=wp(c[r>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=n;if((c[17658]|0)>0)t=Bo(c[(c[l>>2]|0)+16>>2]|0,0)|0;else t=0;c[(c[l>>2]|0)+48+12>>2]=t;rn(c[l>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=11)break;t=zp(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 un(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]=ch(1,108,5)|0;if(c[t>>2]|0){c[u>>2]=dh(c[t>>2]|0,1)|0;tn(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]=st()|0;v=c[l>>2]|0;i=k;return v|0}return 0}function vn(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];Co(c[(c[e>>2]|0)+48+12>>2]|0);rp(c[(c[e>>2]|0)+16>>2]|0);rp(c[(c[e>>2]|0)+20>>2]|0);rp(c[(c[e>>2]|0)+24>>2]|0);nn(c[(c[e>>2]|0)+28>>2]|0);rp(c[(c[e>>2]|0)+32>>2]|0);rp(c[(c[e>>2]|0)+36>>2]|0);nn(c[(c[e>>2]|0)+40>>2]|0);rp(c[(c[e>>2]|0)+44>>2]|0);rp(c[(c[e>>2]|0)+48+8>>2]|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=11)break;rp(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 wn(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}vn(c[d>>2]|0);gf(c[d>>2]|0);i=b;return}function xn(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]=dh(c[g>>2]|0,1)|0;g=Mh(c[f>>2]|0,c[k>>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+12|0;g=e+8|0;h=e;c[f>>2]=a;c[g>>2]=b;c[e+4>>2]=d;c[h>>2]=dh(c[g>>2]|0,1)|0;g=Nh(c[f>>2]|0,c[h>>2]|0)|0;i=e;return g|0}function zn(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:{An(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 1:{Hn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}case 2:{In(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}default:{i=e;return}}}function An(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(jo(c[(c[g>>2]|0)+4>>2]|0,0)|0?jo(c[(c[g>>2]|0)+8>>2]|0,0)|0:0){d=(Bn(c[h>>2]|0)|0)!=0;b=(c[h>>2]|0)+48+16|0;if(d){Cn(c[b>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);Dn(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=Kp(3)|0;jn(d,a,k,c[h>>2]|0);En(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);jn(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{Cn(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=Kp(3)|0;jn(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=Kp(4)|0;Fn(a,k,b,c[h>>2]|0);jn(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);En(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)}jn(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);Gn(c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[h>>2]|0);Cn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0,c[h>>2]|0);jn(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=Kp(4)|0;jn(g,b,k,c[h>>2]|0);Cn(c[c[f>>2]>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0,c[h>>2]|0);Gn(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16+16>>2]|0,c[h>>2]|0);Dn(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);Cn(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=Kp(5)|0;jn(k,b,g,c[h>>2]|0);Dn(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);jn(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);Dn(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}Cp(c[c[f>>2]>>2]|0,1)|0;Cp(c[(c[f>>2]|0)+4>>2]|0,1)|0;Cp(c[(c[f>>2]|0)+8>>2]|0,0)|0;i=e;return}function Bn(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]=zp(c[(c[e>>2]|0)+16>>2]|0)|0;Vn(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0,3);b=((ko(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;rp(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 Cn(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;jn(c[f>>2]|0,c[g>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;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;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;Wn(c[g>>2]|0,c[h>>2]|0,c[k>>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;Un(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);kn(c[g>>2]|0,c[l>>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;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;Go(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[(c[l>>2]|0)+16>>2]|0);i=f;return}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+8|0;g=e+4|0;h=e;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;io(c[f>>2]|0,c[g>>2]|0,1);kn(c[f>>2]|0,c[h>>2]|0);i=e;return}function Hn(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]=45548;c[f+4>>2]=45496;Ie(45522,f)}function In(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;En(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);Cn(c[(c[h>>2]|0)+48+16>>2]|0,c[(c[h>>2]|0)+48+16>>2]|0,c[h>>2]|0);Cn(c[(c[h>>2]|0)+48+16+4>>2]|0,c[c[g>>2]>>2]|0,c[h>>2]|0);Cn(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){yp(d,c[b+48+16+4>>2]|0)|0;xp(c[(c[h>>2]|0)+48+16+12>>2]|0,c[(c[h>>2]|0)+48+16+12>>2]|0)}else jn(d,c[b+20>>2]|0,c[(c[h>>2]|0)+48+16+4>>2]|0,c[h>>2]|0);En(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);Cn(c[(c[h>>2]|0)+48+16+20>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[h>>2]|0);Gn(c[(c[h>>2]|0)+48+16+24>>2]|0,c[(c[h>>2]|0)+48+16+20>>2]|0,c[h>>2]|0);Dn(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);Dn(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);Dn(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);jn(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);Dn(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);jn(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);jn(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 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;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:{Kn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 1:{Mn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}case 2:{Nn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}default:{i=f;return}}}function Kn(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(((ko(c[c[h>>2]>>2]|0,c[c[k>>2]>>2]|0)|0)==0?(ko(c[(c[h>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0)==0:0)?(ko(c[(c[h>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0)==0:0){zn(c[g>>2]|0,c[h>>2]|0,c[l>>2]|0);i=f;return}if(!(jo(c[(c[h>>2]|0)+8>>2]|0,0)|0)){yp(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;yp(c[(c[g>>2]|0)+4>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;yp(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0;i=f;return}if(!(jo(c[(c[k>>2]|0)+8>>2]|0,0)|0)){yp(c[c[g>>2]>>2]|0,c[c[h>>2]>>2]|0)|0;yp(c[(c[g>>2]|0)+4>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;yp(c[(c[g>>2]|0)+8>>2]|0,c[(c[h>>2]|0)+8>>2]|0)|0;i=f;return}c[m>>2]=((jo(c[(c[h>>2]|0)+8>>2]|0,1)|0)!=0^1)&1;c[n>>2]=((jo(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)yp(e,c[c[h>>2]>>2]|0)|0;else{Cn(e,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);jn(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)yp(e,c[c[k>>2]>>2]|0)|0;else{Cn(e,c[(c[h>>2]|0)+8>>2]|0,c[l>>2]|0);jn(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)}Dn(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=Kp(3)|0;Fn(e,m,n,c[l>>2]|0);jn(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=Kp(3)|0;Fn(n,m,e,c[l>>2]|0);jn(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);Dn(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=(jo(c[(c[l>>2]|0)+48+16+8>>2]|0,0)|0)!=0;m=(c[l>>2]|0)+48+16|0;if(e){En(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);En(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);jn(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);jn(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);Cn(c[(c[l>>2]|0)+48+16+36>>2]|0,c[(c[l>>2]|0)+48+16+20>>2]|0,c[l>>2]|0);Cn(c[(c[l>>2]|0)+48+16+40>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);jn(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);Dn(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);Gn(c[(c[l>>2]|0)+48+16+36>>2]|0,c[c[g>>2]>>2]|0,c[l>>2]|0);Dn(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);jn(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=Kp(3)|0;Fn(k,e,n,c[l>>2]|0);jn(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);Dn(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=Ln(c[l>>2]|0)|0;jn(n,e,k,c[l>>2]|0);i=f;return}k=(jo(c[m+20>>2]|0,0)|0)!=0;m=c[g>>2]|0;if(k){Cp(c[m>>2]|0,1)|0;Cp(c[(c[g>>2]|0)+4>>2]|0,1)|0;Cp(c[(c[g>>2]|0)+8>>2]|0,0)|0;i=f;return}else{zn(m,c[h>>2]|0,c[l>>2]|0);i=f;return}}function Ln(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=jp(0)|0;c[(c[f>>2]|0)+48+8>>2]=b}b=c[(c[f>>2]|0)+48+8>>2]|0;m=Kp(2)|0;hn(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 Mn(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]=45571;c[g+4>>2]=45496;Ie(45522,g)}function Nn(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;jn(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);Cn(c[(c[l>>2]|0)+48+16+4>>2]|0,c[(c[l>>2]|0)+48+16>>2]|0,c[l>>2]|0);jn(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);jn(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);jn(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);jn(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);Dn(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);En(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);En(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);En(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0,c[l>>2]|0);jn(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);Dn(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);Dn(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);jn(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);jn(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){yp(k,c[h+48+16+8>>2]|0)|0;xp(c[(c[g>>2]|0)+4>>2]|0,c[(c[g>>2]|0)+4>>2]|0);Dn(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;jn(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;jn(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;jn(L,Q,W,X);i=f;return}else{jn(k,c[h+20>>2]|0,c[(c[l>>2]|0)+48+16+8>>2]|0,c[l>>2]|0);Dn(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;jn(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;jn(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;jn(L,Q,W,X);i=f;return}}function On(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;yp(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0;yp(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;yp(c[(c[e>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0;i=d;return}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,n=0,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]=_n(c[h>>2]|0)|0;Cp(c[c[g>>2]>>2]|0,0)|0;Cp(c[(c[g>>2]|0)+4>>2]|0,1)|0;Cp(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){mn(z);c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;zn(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);Jn(z,c[g>>2]|0,c[k>>2]|0,c[l>>2]|0);if($n(c[h>>2]|0,c[y>>2]|0)|0)On(c[g>>2]|0,z);c[y>>2]=(c[y>>2]|0)+-1}on(z);i=f;return}c[y>>2]=(c[x>>2]|0)-1;while(1){if((c[y>>2]|0)<0)break;zn(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);if($n(c[h>>2]|0,c[y>>2]|0)|0)Jn(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]=_n(c[h>>2]|0)|0;mn(u);mn(v);mn(C);mn(D);Cp(c[u>>2]|0,1)|0;rp(c[v>>2]|0);c[v>>2]=wp(c[c[k>>2]>>2]|0)|0;Cp(c[v+8>>2]|0,1)|0;c[J>>2]=(((c[A>>2]|0)+32-1<<1>>>0)/32|0)+1;op(c[u>>2]|0,c[J>>2]|0);op(c[u+8>>2]|0,c[J>>2]|0);op(c[v>>2]|0,c[J>>2]|0);op(c[v+8>>2]|0,c[J>>2]|0);op(c[C>>2]|0,c[J>>2]|0);op(c[C+8>>2]|0,c[J>>2]|0);op(c[D>>2]|0,c[J>>2]|0);op(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;Ep(c[c[E>>2]>>2]|0,c[c[F>>2]>>2]|0,c[I>>2]|0);Ep(c[(c[E>>2]|0)+8>>2]|0,c[(c[F>>2]|0)+8>>2]|0,c[I>>2]|0);Qn(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);Ep(c[c[G>>2]>>2]|0,c[c[H>>2]>>2]|0,c[I>>2]|0);Ep(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}pp(c[(c[g>>2]|0)+4>>2]|0);c[I>>2]=c[A>>2]&1;Ep(c[u>>2]|0,c[C>>2]|0,c[I>>2]|0);Ep(c[u+8>>2]|0,c[C+8>>2]|0,c[I>>2]|0);if(!(c[(c[u+8>>2]|0)+4>>2]|0)){Cp(c[c[g>>2]>>2]|0,1)|0;Cp(c[(c[g>>2]|0)+8>>2]|0,0)|0}else{c[o>>2]=Fp(0)|0;hn(c[o>>2]|0,c[u+8>>2]|0,c[l>>2]|0);jn(c[c[g>>2]>>2]|0,c[u>>2]|0,c[o>>2]|0,c[l>>2]|0);Cp(c[(c[g>>2]|0)+8>>2]|0,1)|0;rp(c[o>>2]|0)}on(u);on(v);on(C);on(D);i=f;return}c[m>>2]=zp(c[(c[l>>2]|0)+16>>2]|0)|0;c[n>>2]=zp(c[(c[l>>2]|0)+16>>2]|0)|0;c[q>>2]=zp(c[(c[l>>2]|0)+16>>2]|0)|0;c[p>>2]=wp(c[h>>2]|0)|0;c[r>>2]=wp(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;hn(c[r>>2]|0,c[r>>2]|0,c[l>>2]|0)}if(jo(c[(c[k>>2]|0)+8>>2]|0,1)|0){c[L>>2]=zp(c[(c[l>>2]|0)+16>>2]|0)|0;c[M>>2]=zp(c[(c[l>>2]|0)+16>>2]|0)|0;jn(c[L>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[l>>2]|0);jn(c[M>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[L>>2]|0,c[l>>2]|0);hn(c[L>>2]|0,c[L>>2]|0,c[l>>2]|0);jn(c[m>>2]|0,c[c[k>>2]>>2]|0,c[L>>2]|0,c[l>>2]|0);hn(c[M>>2]|0,c[M>>2]|0,c[l>>2]|0);jn(c[n>>2]|0,c[r>>2]|0,c[M>>2]|0,c[l>>2]|0);rp(c[L>>2]|0);rp(c[M>>2]|0)}else{yp(c[m>>2]|0,c[c[k>>2]>>2]|0)|0;yp(c[n>>2]|0,c[r>>2]|0)|0}c[o>>2]=wp(Kp(1)|0)|0;M=c[q>>2]|0;L=c[p>>2]|0;Eo(M,L,Kp(3)|0);c[t>>2]=_n(c[q>>2]|0)|0;if((c[t>>2]|0)>>>0<2){c[t>>2]=2;pp(c[c[g>>2]>>2]|0);pp(c[(c[g>>2]|0)+4>>2]|0);pp(c[(c[g>>2]|0)+8>>2]|0)}else{yp(c[c[g>>2]>>2]|0,c[c[k>>2]>>2]|0)|0;yp(c[(c[g>>2]|0)+4>>2]|0,c[r>>2]|0)|0;yp(c[(c[g>>2]|0)+8>>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0}rp(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;mn(v);mn(w);c[s>>2]=(c[t>>2]|0)-2;while(1){if((c[s>>2]|0)>>>0<=0)break;zn(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){On(v,c[g>>2]|0);Jn(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){On(v,c[g>>2]|0);On(w,u);Dn(c[w+4>>2]|0,c[(c[l>>2]|0)+16>>2]|0,c[w+4>>2]|0,c[l>>2]|0);Jn(c[g>>2]|0,v,w,c[l>>2]|0)}c[s>>2]=(c[s>>2]|0)+-1}on(u);on(v);on(w);rp(c[q>>2]|0);rp(c[p>>2]|0);i=f;return}function Qn(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;En(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(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);En(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(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);jn(c[c[n>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);jn(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);Cn(c[c[m>>2]>>2]|0,c[c[k>>2]>>2]|0,c[p>>2]|0);Cn(c[(c[m>>2]|0)+8>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);En(c[c[l>>2]>>2]|0,c[c[n>>2]>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(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);jn(c[c[k>>2]>>2]|0,c[c[m>>2]>>2]|0,c[(c[m>>2]|0)+8>>2]|0,c[p>>2]|0);Dn(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);Cn(c[c[l>>2]>>2]|0,c[c[l>>2]>>2]|0,c[p>>2]|0);Cn(c[(c[l>>2]|0)+8>>2]|0,c[(c[n>>2]|0)+8>>2]|0,c[p>>2]|0);jn(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);jn(c[(c[l>>2]|0)+8>>2]|0,c[(c[l>>2]|0)+8>>2]|0,c[o>>2]|0,c[p>>2]|0);En(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);jn(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 Rn(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]=Fp(0)|0;c[l>>2]=Fp(0)|0;c[m>>2]=Fp(0)|0;a:do switch(c[c[g>>2]>>2]|0){case 0:{c[n>>2]=Fp(0)|0;if(gn(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}Cn(c[l>>2]|0,c[l>>2]|0,c[g>>2]|0);Sn(c[n>>2]|0,c[k>>2]|0,c[g>>2]|0);jn(c[m>>2]|0,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);En(c[m>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);En(c[m>>2]|0,c[m>>2]|0,c[n>>2]|0,c[g>>2]|0);if(!(ko(c[l>>2]|0,c[m>>2]|0)|0))c[h>>2]=1;Hp(c[n>>2]|0);break}case 1:{if(!(gn(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=Kp(4)|0;jn(b,a,p,c[g>>2]|0);p=c[m>>2]|0;a=c[m>>2]|0;b=Kp(2)|0;En(p,a,b,c[g>>2]|0);jn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);Cn(c[l>>2]|0,c[k>>2]|0,c[g>>2]|0);En(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=Kp(1)|0;En(b,a,p,c[g>>2]|0);jn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);jn(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=Kp(1)|0;Dn(p,a,b,c[g>>2]|0);go(c[l>>2]|0,c[l>>2]|0,1);Fn(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);c[h>>2]=jo(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(gn(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}Cn(c[k>>2]|0,c[k>>2]|0,c[g>>2]|0);Cn(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){yp(b,c[k>>2]|0)|0;xp(c[m>>2]|0,c[m>>2]|0)}else jn(b,c[(c[g>>2]|0)+20>>2]|0,c[k>>2]|0,c[g>>2]|0);En(c[m>>2]|0,c[m>>2]|0,c[l>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,Kp(1)|0,c[g>>2]|0);jn(c[k>>2]|0,c[k>>2]|0,c[l>>2]|0,c[g>>2]|0);jn(c[k>>2]|0,c[k>>2]|0,c[(c[g>>2]|0)+24>>2]|0,c[g>>2]|0);Dn(c[m>>2]|0,c[m>>2]|0,c[k>>2]|0,c[g>>2]|0);if(!(jo(c[m>>2]|0,0)|0))c[h>>2]=1;break}default:{}}while(0);Hp(c[m>>2]|0);Hp(c[k>>2]|0);Hp(c[l>>2]|0);c[e>>2]=c[h>>2];o=c[e>>2]|0;i=d;return o|0}function Sn(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=Kp(3)|0;Go(d,f,g,c[(c[h>>2]|0)+16>>2]|0);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;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))op(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]=uo(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}wo(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 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,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))op(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))op(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]=vo(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)){xo(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=(yo(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)<0;g=c[k>>2]|0;if(h){fp(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{fp(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 Vn(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))op(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]=uo(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}wo(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 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]=wp(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=((c[(c[k>>2]|0)+8>>2]|0)!=0^1)&1;Un(c[f>>2]|0,c[g>>2]|0,c[k>>2]|0);rp(c[k>>2]|0);i=e;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;Un(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);Ao(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Yn(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;Wn(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0);Ao(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Zn(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 _n(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}Zn(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[45595+((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 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){qp();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}op(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 bo(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){qp();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}op(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 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){qp();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 eo(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){qp();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 fo(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){qp();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 go(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){qp();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)ep(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)op(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){ep(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)op(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)ep(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 ho(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)op(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 io(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){qp();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)op(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){ho(c[f>>2]|0,(c[k>>2]|0)+1|0);go(c[f>>2]|0,c[f>>2]|0,32-(c[l>>2]|0)|0)}}else ho(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 jo(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];Zn(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 ko(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;Zn(c[f>>2]|0);Zn(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=yo(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]=wv(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 lo(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]=wp(c[h>>2]|0)|0;c[h>>2]=c[l>>2]}mo(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)Un(c[f>>2]|0,c[f>>2]|0,c[h>>2]|0);if(!(c[l>>2]|0)){i=e;return}rp(c[l>>2]|0);i=e;return}function mo(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;no(0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return}function no(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;op(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)op(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]=Xo(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]=Vo(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=kp(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[45595+((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=kp(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;Yo(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]=Yo(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=kp(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]=Wo(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){ep(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;mp(c[z+(c[B>>2]<<2)>>2]|0,c[A+(c[B>>2]<<2)>>2]|0)}i=g;return}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,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]=Vo(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 po(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]=jp(c[(c[f>>2]|0)+4>>2]|0)|0;qo(c[f>>2]|0,c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);rp(c[k>>2]|0);i=e;return}function qo(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]=wp(c[l>>2]|0)|0;c[l>>2]=c[n>>2]}no(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){Vn(c[g>>2]|0,c[g>>2]|0,1);Un(c[h>>2]|0,c[h>>2]|0,c[l>>2]|0)}if(!(c[n>>2]|0)){i=f;return}rp(c[n>>2]|0);i=f;return}function ro(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))op(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){ep(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 so(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=((Vo(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 to(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]=wp(c[g>>2]|0)|0;c[l>>2]=wp(c[h>>2]|0)|0;c[(c[k>>2]|0)+8>>2]=0;c[(c[l>>2]|0)+8>>2]=0;while(1){h=(jo(c[l>>2]|0,0)|0)!=0;m=c[f>>2]|0;n=c[k>>2]|0;if(!h)break;lo(m,n,c[l>>2]|0);yp(c[k>>2]|0,c[l>>2]|0)|0;yp(c[l>>2]|0,c[f>>2]|0)|0}yp(m,n)|0;rp(c[k>>2]|0);rp(c[l>>2]|0);l=((jo(c[f>>2]|0,1)|0)!=0^1)&1;i=e;return l|0}function uo(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 vo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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]=Uo(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]=uo((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 wo(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 xo(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]=fp(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]=wo((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 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;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 zo(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(!(jo(c[h>>2]|0,0)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}if(!(jo(c[k>>2]|0,1)|0)){c[f>>2]=0;z=c[f>>2]|0;i=e;return z|0}c[l>>2]=wp(c[h>>2]|0)|0;c[m>>2]=wp(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;go(c[l>>2]|0,c[l>>2]|0,1);go(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]=ip(1)|0;if(!(c[y>>2]|0))c[o>>2]=ip(0)|0;c[p>>2]=wp(c[l>>2]|0)|0;c[q>>2]=wp(c[m>>2]|0)|0;if(!(c[y>>2]|0)){c[r>>2]=jp(c[(c[l>>2]|0)+4>>2]|0)|0;Wn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)}c[s>>2]=wp(c[m>>2]|0)|0;if($n(c[l>>2]|0,0)|0){c[t>>2]=ip(0)|0;if(!(c[y>>2]|0)){c[u>>2]=ip(1)|0;c[(c[u>>2]|0)+8>>2]=1}c[v>>2]=wp(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]=ip(1)|0;if(!(c[y>>2]|0))c[u>>2]=ip(0)|0;c[v>>2]=wp(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)Un(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);go(c[t>>2]|0,c[t>>2]|0,1);go(c[v>>2]|0,c[v>>2]|0,1);continue}if(!(!k?!($n(c[u>>2]|0,0)|0):0)){Un(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0);Wn(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0)}go(c[t>>2]|0,c[t>>2]|0,1);go(c[u>>2]|0,c[u>>2]|0,1);go(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){Wn(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))Wn(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;yp(c[s>>2]|0,c[v>>2]|0)|0;c[(c[v>>2]|0)+8>>2]=c[x>>2]}else{yp(c[n>>2]|0,c[t>>2]|0)|0;if(!(c[y>>2]|0))yp(c[o>>2]|0,c[u>>2]|0)|0;yp(c[p>>2]|0,c[v>>2]|0)|0}Wn(c[t>>2]|0,c[n>>2]|0,c[q>>2]|0);if(!(c[y>>2]|0))Wn(c[u>>2]|0,c[o>>2]|0,c[r>>2]|0);Wn(c[v>>2]|0,c[p>>2]|0,c[s>>2]|0);if(c[(c[t>>2]|0)+8>>2]|0?(Un(c[t>>2]|0,c[t>>2]|0,c[m>>2]|0),(c[y>>2]|0)==0):0)Wn(c[u>>2]|0,c[u>>2]|0,c[l>>2]|0);if(jo(c[v>>2]|0,0)|0)A=20;else break}yp(c[g>>2]|0,c[n>>2]|0)|0;rp(c[n>>2]|0);rp(c[q>>2]|0);rp(c[t>>2]|0);if(!(c[y>>2]|0)){rp(c[o>>2]|0);rp(c[r>>2]|0);rp(c[u>>2]|0)}rp(c[p>>2]|0);rp(c[s>>2]|0);rp(c[v>>2]|0);rp(c[l>>2]|0);rp(c[m>>2]|0);c[f>>2]=1;z=c[f>>2]|0;i=e;return z|0}function Ao(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;lo(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;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;Zn(c[e>>2]|0);c[g>>2]=of(1,28)|0;b=c[e>>2]|0;if(c[f>>2]|0){f=wp(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]=jp((c[(c[g>>2]|0)+8>>2]|0)+1|0)|0;Cp(c[h>>2]|0,1)|0;ho(c[h>>2]|0,c[(c[g>>2]|0)+8>>2]<<1);po(c[h>>2]|0,c[h>>2]|0,c[e>>2]|0);c[(c[g>>2]|0)+12>>2]=c[h>>2];h=jp((c[(c[g>>2]|0)+8>>2]<<1)+1|0)|0;c[(c[g>>2]|0)+16>>2]=h;h=jp((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 Co(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}rp(c[(c[d>>2]|0)+12>>2]|0);rp(c[(c[d>>2]|0)+16>>2]|0);rp(c[(c[d>>2]|0)+20>>2]|0);if(c[(c[d>>2]|0)+24>>2]|0)rp(c[(c[d>>2]|0)+24>>2]|0);if(c[(c[d>>2]|0)+4>>2]|0)rp(c[c[d>>2]>>2]|0);gf(c[d>>2]|0);i=b;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;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];Zn(c[g>>2]|0);if((c[(c[g>>2]|0)+4>>2]|0)>(c[l>>2]<<1|0)){Ao(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;yp(c[o>>2]|0,c[g>>2]|0)|0;fo(c[o>>2]|0,(c[l>>2]|0)-1|0);Eo(c[o>>2]|0,c[o>>2]|0,c[m>>2]|0);fo(c[o>>2]|0,(c[l>>2]|0)+1|0);yp(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;Eo(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;Wn(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=jp((c[l>>2]|0)+2|0)|0;c[(c[h>>2]|0)+24>>2]=o;Cp(c[(c[h>>2]|0)+24>>2]|0,1)|0;ho(c[(c[h>>2]|0)+24>>2]|0,(c[l>>2]|0)+1|0)}Un(c[f>>2]|0,c[f>>2]|0,c[(c[h>>2]|0)+24>>2]|0)}while(1){if((ko(c[f>>2]|0,c[k>>2]|0)|0)<0)break;Wn(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 Eo(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]=kp(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){op(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]=kp(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=kp(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=kp(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]=cp(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]=kp(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}mp(c[p>>2]|0,0);c[p>>2]=c[B>>2]}np(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}mp(c[x>>2]|0,c[y>>2]|0);i=e;return}function Fo(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);mo(c[g>>2]|0,c[g>>2]|0,c[l>>2]|0);i=f;return}function Go(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))Re();do if(c[r>>2]|0){c[I>>2]=c[z>>2]|0?c[s>>2]|0:0;l=kp(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[45595+((c[S>>2]|0)>>>(c[T>>2]|0))>>0]|0)+(c[T>>2]|0));a:do if(c[C>>2]|0)Yo(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=kp((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}Wo((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)Ee(45851,45862,515,45872);c[J>>2]=c[A>>2]|0?c[t>>2]|0:0;l=kp(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=kp(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)){op(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=kp((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)Ho(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=kp(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))Ho(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 Ho(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=kp(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]=kp(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[45595+((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[45595+((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[45595+((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;Ho(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];Bp(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}Ho(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[45595+((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;Ho(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];Bp(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}Ho(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;Ho(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]=Yo(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)){Wo((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)ep(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}dp(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;mp(c[M+(c[Z>>2]<<2)>>2]|0,Ka);c[Z>>2]=(c[Z>>2]|0)+1}mp(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)ep(c[p>>2]|0,c[p>>2]|0,c[s>>2]|0,c[C>>2]|0)|0;xo(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 Ee(45887,45862,786,45872)}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)op(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)mp(c[E>>2]|0,c[I>>2]|0);if(c[F>>2]|0)mp(c[F>>2]|0,c[J>>2]|0);if(c[G>>2]|0)mp(c[G>>2]|0,c[K>>2]|0);if(!(c[H>>2]|0)){i=g;return}mp(c[H>>2]|0,c[L>>2]|0);i=g;return}function Ho(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)cp(l,k,p,h,r)|0;else bp(l,k,p,h,r,c[v>>2]|0);if(((c[q>>2]|0)+(c[s>>2]|0)|0)>(c[u>>2]|0)){Wo((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 Io(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[45595+((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 Jo(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=Ko(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 Ko(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=af(c[B>>2]|0)|0}while(0);if((D|0)==13)E=df(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))Rw(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 Lo(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=Ko(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 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;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){qp();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))op(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 Ee(45900,45912,377,45923)}function No(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=(ef(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=lp(x)|0;else y=jp(x)|0;c[r>>2]=y;if(c[s>>2]|0?(Mo(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){Oo(c[r>>2]|0);Tn(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){Zn(u);c[c[l>>2]>>2]=c[r>>2]}else rp(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=lp(u)|0;else A=jp(u)|0;c[r>>2]=A;if(c[s>>2]|0)Mo(c[r>>2]|0,c[q>>2]|0,c[s>>2]|0,0);A=c[r>>2]|0;if(c[l>>2]|0){Zn(A);c[c[l>>2]>>2]=c[r>>2]}else rp(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]=Po(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){rp(c[r>>2]|0);c[r>>2]=0}}else{Zn(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=lp(0)|0;else B=jp(0)|0;c[r>>2]=B;if(Qo(c[r>>2]|0,c[q>>2]|0)|0){rp(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){Zn(B);c[c[l>>2]>>2]=c[r>>2]}else rp(B);if(c[p>>2]|0){B=Uu(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=lp(s)|0;else C=jp(s)|0;c[r>>2]=C;if(c[w>>2]|0?(Mo(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){Oo(c[r>>2]|0);Tn(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){Zn(w);c[c[l>>2]>>2]=c[r>>2]}else rp(w);c[k>>2]=0;z=c[k>>2]|0;i=h;return z|0}function Oo(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]=_n(c[d>>2]|0)|0;if(c[d>>2]|0?c[(c[d>>2]|0)+12>>2]&16|0:0){qp();i=b;return}Zn(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;co(c[d>>2]|0,(c[h>>2]|0)-1|0);i=b;return}function Po(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=lp(n)|0;else w=jp(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}rp(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 Qo(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]=(Uu(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)op(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){pp(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==20){pp(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==27){pp(c[g>>2]|0);c[f>>2]=1;w=c[f>>2]|0;i=e;return w|0}else if((v|0)==34){pp(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 Ro(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]=_n(c[q>>2]|0)|0;if(!(c[p>>2]|0))c[p>>2]=k+80;if(c[(c[q>>2]|0)+8>>2]|0?jo(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]=Jo(c[q>>2]|0,0,w,0)|0;if(!(c[u>>2]|0)){c[l>>2]=st()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){So(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){gf(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}Pw(c[x>>2]|0,c[u>>2]|0,(c[w>>2]|0)-(((c[v>>2]|0)!=0^1^1)&1)|0)|0}gf(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]=Jo(c[q>>2]|0,0,y,0)|0;if(c[z>>2]|0){Pw(c[n>>2]|0,c[z>>2]|0,c[y>>2]|0)|0;gf(c[z>>2]|0);break}c[l>>2]=st()|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]=Jo(c[q>>2]|0,0,A,0)|0;if(c[B>>2]|0){Pw((c[C>>2]|0)+2|0,c[B>>2]|0,c[A>>2]|0)|0;gf(c[B>>2]|0);break}c[l>>2]=st()|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]=Jo(c[q>>2]|0,0,F,0)|0;if(!(c[D>>2]|0)){c[l>>2]=st()|0;N=c[l>>2]|0;i=k;return N|0}if(c[t>>2]|0){So(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){gf(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}Pw(c[G>>2]|0,c[D>>2]|0,(c[F>>2]|0)-(((c[E>>2]|0)!=0^1^1)&1)|0)|0}gf(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]=Jo(c[q>>2]|0,0,K,0)|0;if(!(c[H>>2]|0)){c[l>>2]=st()|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){gf(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;gf(c[H>>2]|0);c[l>>2]=0;N=c[l>>2]|0;i=k;return N|0}function So(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 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,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]=Ro(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=df(c[q>>2]|0)|0;else u=af(c[q>>2]|0)|0;c[r>>2]=u;if(!(c[r>>2]|0)){c[n>>2]=st()|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)Tw(c[r>>2]|0,0,c[p>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+(c[p>>2]|0);c[n>>2]=Ro(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){gf(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 Uo(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 Vo(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[45595+((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 Hj(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]=Ij(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);Df(c[m>>2]|0);i=e;return c[k>>2]|0}function Ij(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,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]=Ff(c[h>>2]|0,c[k>>2]|0?37724:37736,0)|0;if(!((c[n>>2]|0)!=0|(c[k>>2]|0)!=0))c[n>>2]=Ff(c[h>>2]|0,37724,0)|0;if(!(c[n>>2]|0)){c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[o>>2]=Pf(c[n>>2]|0)|0;Df(c[n>>2]|0);c[n>>2]=c[o>>2];c[p>>2]=Mf(c[n>>2]|0,0)|0;if(!(c[p>>2]|0)){Df(c[n>>2]|0);c[g>>2]=65;r=c[g>>2]|0;i=f;return r|0}c[q>>2]=Dj(c[p>>2]|0)|0;gf(c[p>>2]|0);if(!(c[q>>2]|0)){Df(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 Df(q);c[g>>2]=0;r=c[g>>2]|0;i=f;return r|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]=Ij(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);Df(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[c[f>>2]>>2]=0;c[k>>2]=Ij(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);Df(c[m>>2]|0);i=e;return c[k>>2]|0}function Lj(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]=Ij(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);Df(c[m>>2]|0);i=e;return c[k>>2]|0}function Mj(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]=Ij(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);Df(c[g>>2]|0);i=b;return c[e>>2]|0}function Nj(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]=Ff(c[f>>2]|0,37747,0)|0;do if(c[h>>2]|0){c[k>>2]=Pf(c[h>>2]|0)|0;Df(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]=Mf(c[h>>2]|0,0)|0;if(!(c[l>>2]|0)){c[m>>2]=65;break}c[g>>2]=Dj(c[l>>2]|0)|0;gf(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);Df(c[h>>2]|0);gf(c[l>>2]|0);Df(c[k>>2]|0);i=d;return c[m>>2]|0}function Oj(){return 0}function Pj(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]=Gj(c[g>>2]|0)|0;c[m>>2]=Fj(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=Qj(n)|0;i=f;return o|0}c[l>>2]=4;if(!(c[k>>2]|0)){n=c[l>>2]|0;o=Qj(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=37793;else p=c[m>>2]|0?37754:37773;Cb[h&1](49625,k,37815,p);n=c[l>>2]|0;o=Qj(n)|0;i=f;return o|0}function Qj(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=Rj(1,c[d>>2]|0)|0;i=b;return a|0}function Rj(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 Sj(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=Tj(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return f|0}function Tj(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=(Ig()|0)!=0;if(!(f|(c[17646]|0)!=0)?(c[17646]=1,c[17647]=Uj()|0,c[17647]|0):0){c[h>>2]=c[17647];He(43495,h)}if(c[17647]|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]=4557;_j();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[6860+(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=Yw(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 Uj(){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=Vj()|0;c[d>>2]=e;do if((!(e|0)?(f=ck()|0,c[d>>2]=f,!(f|0)):0)?(f=dk()|0,c[d>>2]=f,!(f|0)):0){f=ek()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}f=hk()|0;c[d>>2]=f;if(f|0){c[b>>2]=c[d>>2];break}else{c[d>>2]=kk()|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 Vj(){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;Sj(d,37942,16)|0;Wj(d,e,37958)|0;do if(!(wv(e,37974,16)|0)){Xj(d,e,e)|0;if(wv(e,37958,16)|0){c[b>>2]=38022;break}else{c[b>>2]=0;break}}else c[b>>2]=37990;while(0);i=a;return c[b>>2]|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];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 Xj(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];Yj(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 Yj(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}Zj(c[e>>2]|0);b=(c[e>>2]|0)+484|0;a[b>>0]=a[b>>0]&-2|1;i=d;return}function Zj(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]=4557;_j();ak();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=bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(bk(c[5580+((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=bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(bk(c[5580+((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=bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;n=a^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);a=n^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);n=a^(bk(c[5580+((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=bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>0&255)<<2)>>0]|0)<<2)>>2]|0,0)|0;a=n^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>8&255)<<2)>>0]|0)<<2)>>2]|0,8)|0);n=a^(bk(c[5580+((d[(c[g>>2]|0)+(((c[l>>2]|0)>>>16&255)<<2)>>0]|0)<<2)>>2]|0,16)|0);a=n^(bk(c[5580+((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 _j(){$j(4556,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 ak(){$j(5580,1280);return}function bk(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 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;Sj(d,38054,24)|0;Wj(d,e,38078)|0;do if(!(wv(e,38094,16)|0)){Xj(d,e,e)|0;if(wv(e,38078,16)|0){c[b>>2]=38142;break}else{c[b>>2]=0;break}}else c[b>>2]=38110;while(0);i=a;return c[b>>2]|0}function dk(){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;Sj(d,38174,32)|0;Wj(d,e,38206)|0;do if(!(wv(e,38222,16)|0)){Xj(d,e,e)|0;if(wv(e,38206,16)|0){c[b>>2]=38270;break}else{c[b>>2]=0;break}}else c[b>>2]=38238;while(0);i=a;return c[b>>2]|0}function ek(){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=kr(37822,1,2,4,9,16,504)|0;i=a;return b|0}function fk(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;gk(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=Yw(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}Pe((c[t>>2]|0)+16|0);Qe();i=k;return}function gk(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 hk(){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=gr(37822,1,2,3,10,16,504)|0;i=a;return b|0}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,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;Yj(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;jk(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=Yw(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}Pe((c[t>>2]|0)+16|0);Qe();i=k;return}function jk(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 kk(){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=ir(37822,1,2,2,10,16,504)|0;i=a;return b|0}function lk(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;mk(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}Pe((c[r>>2]|0)+16|0);Qe();i=g;return}function mk(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;jk(c[g>>2]|0,c[k>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0);i=f;return}function nk(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=ok(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function ok(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]=4557;c[m>>2]=c[(c[g>>2]|0)+480>>2];c[p>>2]=pk(c[k>>2]|0)|0;c[p+4>>2]=pk((c[k>>2]|0)+4|0)|0;c[p+8>>2]=pk((c[k>>2]|0)+8|0)|0;c[p+12>>2]=pk((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]=bk(c[4556+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=bk(c[4556+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=bk(c[4556+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=bk(c[4556+(((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=bk(c[4556+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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]=bk(c[4556+(q<<2)>>2]|0,0)|0;c[p+12>>2]=bk(c[4556+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=bk(c[4556+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=bk(c[4556+(((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=bk(c[4556+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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]=bk(c[4556+(((c[o>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[p+12>>2]=bk(c[4556+(((c[o>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[p+8>>2]=bk(c[4556+(((c[o>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[p+4>>2]=bk(c[4556+(((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=bk(c[4556+(((c[o+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((c[o+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o>>2]=c[o>>2]^k;k=bk(c[4556+(((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=bk(c[4556+(((c[o+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;e=p+12|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;e=o+8|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((c[o+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;e=o+4|0;c[e>>2]=c[e>>2]^k;k=bk(c[4556+(((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];qk(c[h>>2]|0,c[o>>2]|0);qk((c[h>>2]|0)+4|0,c[o+4>>2]|0);qk((c[h>>2]|0)+8|0,c[o+8>>2]|0);qk((c[h>>2]|0)+12|0,c[o+12>>2]|0);i=f;return 64}function pk(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 qk(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 rk(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=sk(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;i=e;return d|0}function sk(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]=pk(c[k>>2]|0)|0;c[o+4>>2]=pk((c[k>>2]|0)+4|0)|0;c[o+8>>2]=pk((c[k>>2]|0)+8|0)|0;c[o+12>>2]=pk((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]=bk(c[5580+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=bk(c[5580+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=bk(c[5580+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=bk(c[5580+(((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=bk(c[5580+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((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=bk(c[5580+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=bk(c[5580+(((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=bk(c[5580+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=bk(c[5580+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((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]=bk(c[5580+(((c[n>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;c[o+4>>2]=bk(c[5580+(((c[n>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[o+8>>2]=bk(c[5580+(((c[n>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[o+12>>2]=bk(c[5580+(((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=bk(c[5580+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+4|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((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=bk(c[5580+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+8|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^l;l=bk(c[5580+(((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=bk(c[5580+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;k=o+12|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^l;l=bk(c[5580+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;k=n+4|0;c[k>>2]=c[k>>2]^l;l=bk(c[5580+(((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=bk(c[5580+(((c[n+4>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+4|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((c[n+4>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((c[n+4>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((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=bk(c[5580+(((c[n+8>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+8|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((c[n+8>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((c[n+8>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;c[n>>2]=c[n>>2]^m;m=bk(c[5580+(((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=bk(c[5580+(((c[n+12>>2]|0)>>>0&255)<<2)>>2]|0,0)|0;l=o+12|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((c[n+12>>2]|0)>>>8&255)<<2)>>2]|0,8)|0;c[n>>2]=c[n>>2]^m;m=bk(c[5580+(((c[n+12>>2]|0)>>>16&255)<<2)>>2]|0,16)|0;l=n+4|0;c[l>>2]=c[l>>2]^m;m=bk(c[5580+(((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[6604+((c[n>>2]|0)>>>0&255)>>0]|0)<<0;c[o+4>>2]=(d[6604+((c[n>>2]|0)>>>8&255)>>0]|0)<<8;c[o+8>>2]=(d[6604+((c[n>>2]|0)>>>16&255)>>0]|0)<<16;c[o+12>>2]=(d[6604+((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[6604+((c[n+4>>2]|0)>>>0&255)>>0]|0)<<0;m=o+8|0;c[m>>2]=c[m>>2]^(d[6604+((c[n+4>>2]|0)>>>8&255)>>0]|0)<<8;m=o+12|0;c[m>>2]=c[m>>2]^(d[6604+((c[n+4>>2]|0)>>>16&255)>>0]|0)<<16;c[n>>2]=c[n>>2]^(d[6604+((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[6604+((c[n+8>>2]|0)>>>0&255)>>0]|0)<<0;m=o+12|0;c[m>>2]=c[m>>2]^(d[6604+((c[n+8>>2]|0)>>>8&255)>>0]|0)<<8;c[n>>2]=c[n>>2]^(d[6604+((c[n+8>>2]|0)>>>16&255)>>0]|0)<<16;m=n+4|0;c[m>>2]=c[m>>2]^(d[6604+((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[6604+((c[n+12>>2]|0)>>>0&255)>>0]|0)<<0;c[n>>2]=c[n>>2]^(d[6604+((c[n+12>>2]|0)>>>8&255)>>0]|0)<<8;m=n+4|0;c[m>>2]=c[m>>2]^(d[6604+((c[n+12>>2]|0)>>>16&255)>>0]|0)<<16;m=n+8|0;c[m>>2]=c[m>>2]^(d[6604+((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];qk(c[h>>2]|0,c[n>>2]|0);qk((c[h>>2]|0)+4|0,c[n+4>>2]|0);qk((c[h>>2]|0)+8|0,c[n+8>>2]|0);qk((c[h>>2]|0)+12|0,c[n+12>>2]|0);i=f;return 64}function tk(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]=uk(c[g>>2]|0,c[h>>2]|0)|0;break}case 8:{c[k>>2]=wk(c[g>>2]|0,c[h>>2]|0)|0;break}case 9:{c[k>>2]=xk(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=12}i=e;return c[k>>2]|0}function uk(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]=49615;c[k>>2]=Vj()|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=38302;c[k>>2]=vk(2)|0;if(c[k>>2]|0)break;c[h>>2]=38419;c[k>>2]=vk(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](38423,7,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function vk(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[6980+((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){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38306;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=ih(l,7,c[6980+((c[h>>2]|0)*164|0)>>2]|0,0)|0;if(c[g>>2]|0){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38333;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=ih(m,7,c[6980+((c[h>>2]|0)*164|0)>>2]|0,0)|0;e=c[l>>2]|0;if(c[g>>2]|0){nh(e);nh(c[m>>2]|0);c[d>>2]=38333;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=vh(e,6980+((c[h>>2]|0)*164|0)+4|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=vh(c[m>>2]|0,6980+((c[h>>2]|0)*164|0)+4|0,16)|0;e=c[l>>2]|0;if(c[g>>2]|0){nh(e);nh(c[m>>2]|0);c[d>>2]=38338;n=c[d>>2]|0;i=b;return n|0}c[g>>2]=xh(e,6980+((c[h>>2]|0)*164|0)+20|0,16)|0;if(!(c[g>>2]|0))c[g>>2]=xh(c[m>>2]|0,6980+((c[h>>2]|0)*164|0)+20|0,16)|0;if(c[g>>2]|0){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38346;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]=oh(o,f,16,6980+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)|0,16)|0;if(c[g>>2]|0){p=22;break}if(wv(f,6980+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0){p=24;break}c[g>>2]=sh(c[m>>2]|0,f,16,6980+((c[h>>2]|0)*164|0)+36+(c[k>>2]<<5)+16|0,16)|0;if(c[g>>2]|0){p=26;break}if(wv(f,6980+((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){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38353;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==24){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38369;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==26){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38386;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==28){nh(c[l>>2]|0);nh(c[m>>2]|0);c[d>>2]=38402;n=c[d>>2]|0;i=b;return n|0}else if((p|0)==30){nh(o);nh(c[m>>2]|0);c[d>>2]=0;n=c[d>>2]|0;i=b;return n|0}return 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]=49615;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](38423,8,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){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]=49615;c[h>>2]=dk()|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](38423,9,c[g>>2]|0,c[h>>2]|0);c[e>>2]=50;k=c[e>>2]|0;i=d;return k|0}function yk(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;zk(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}Pe((c[r>>2]|0)+16|0);Qe();i=g;return}function zk(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 Ak(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;gk(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))Bk(c[l>>2]|0,c[t>>2]|0,16);if(!(c[u>>2]|0)){i=h;return}Pe((c[u>>2]|0)+16|0);Qe();i=h;return}function Bk(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 Ck(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{Yj(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=Hw(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]=Dk(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]=Iq(c[h>>2]|0,s,c[f>>2]|0,c[f+4>>2]|0)|0}Fk((c[h>>2]|0)+64|0,c[w>>2]|0,16);Bk(s,c[q>>2]|0,16);Fk((c[h>>2]|0)+80|0,s,16);Fk(s,(c[h>>2]|0)+64|0,16);c[r>>2]=sb[c[t>>2]&63](c[o>>2]|0,s,s)|0;Fk(s,(c[h>>2]|0)+64|0,16);Bk(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=Hw(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]=Dk(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]=Iq(c[h>>2]|0,x,c[d>>2]|0,c[d+4>>2]|0)|0}Fk((c[h>>2]|0)+64|0,c[B>>2]|0,16);Bk(x,c[q>>2]|0,16);Fk(x,(c[h>>2]|0)+64|0,16);c[r>>2]=sb[c[y>>2]&63](c[o>>2]|0,x,x)|0;Fk(x,(c[h>>2]|0)+64|0,16);Fk((c[h>>2]|0)+80|0,x,16);Bk(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}Pe((c[r>>2]|0)+16|0);Qe();i=g;return}function Dk(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]=Ek(c[b>>2]|0)|0;h=c[e>>2]|0;i=d;return h|0}else{c[e>>2]=32+(Ek(g)|0);h=c[e>>2]|0;i=d;return h|0}return 0}function Ek(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=Jw(c[d>>2]|0)|0;i=b;return (a?e:32)|0}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;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 Gk(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=Hw(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]=Dk(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]=Iq(c[h>>2]|0,p,c[f>>2]|0,c[f+4>>2]|0)|0}Fk((c[h>>2]|0)+128+304|0,c[t>>2]|0,16);gk(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;Fk((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=Yw(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}Pe((c[o>>2]|0)+16|0);Qe();i=g;return}function Hk(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 Ik(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]=Jk(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 Jk(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=Kk((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=Lk(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,15)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,15)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,7)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,12)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,6)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,9)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,6)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,8)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,11)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,7)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,7)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,7)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,7)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,7)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,7)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,15)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,7)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,11)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,14)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,8)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,9)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,6)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,13)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,6)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,15)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,14)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,8)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,13)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,13)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,5)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,13)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,12)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,13)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,7)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,7)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,5)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,11)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,15)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,12)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,8)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,15)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,11)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,14)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,15)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,14)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,9)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,14)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,9)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,8)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,12)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,6)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,5)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,15)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,8)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,9)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,8)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,15)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,5)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,12)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,11)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,9)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,6)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,12)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,8)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,5)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,13)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,14)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,12)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,6)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,5)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,8)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,12)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,13)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,13)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,6)|0;c[m>>2]=u+(c[k>>2]|0);c[q>>2]=Lk(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=Lk(c[h>>2]|0,14)|0;c[h>>2]=u+(c[r>>2]|0);c[n>>2]=Lk(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=Lk(c[k>>2]|0,5)|0;c[k>>2]=u+(c[s>>2]|0);c[o>>2]=Lk(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=Lk(c[r>>2]|0,11)|0;c[r>>2]=u+(c[p>>2]|0);c[l>>2]=Lk(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=Lk(c[s>>2]|0,15)|0;c[s>>2]=u+(c[q>>2]|0);c[m>>2]=Lk(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=Lk(c[p>>2]|0,8)|0;c[p>>2]=u+(c[n>>2]|0);c[h>>2]=Lk(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=Lk(c[q>>2]|0,13)|0;c[q>>2]=u+(c[o>>2]|0);c[k>>2]=Lk(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=Lk(c[n>>2]|0,5)|0;c[n>>2]=u+(c[l>>2]|0);c[r>>2]=Lk(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=Lk(c[o>>2]|0,11)|0;c[o>>2]=u+(c[m>>2]|0);c[s>>2]=Lk(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=Lk(c[l>>2]|0,6)|0;c[l>>2]=u+(c[h>>2]|0);c[p>>2]=Lk(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=Lk(c[m>>2]|0,11)|0;c[m>>2]=t+(c[k>>2]|0);c[q>>2]=Lk(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 Kk(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 Lk(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 Mk(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];Br(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}Br(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);Nk((c[f>>2]|0)+56|0,c[l>>2]|0);Nk((c[f>>2]|0)+60|0,c[k>>2]|0);c[n>>2]=Ik(c[f>>2]|0,c[f>>2]|0,1)|0;Pe(c[n>>2]|0);Qe();c[m>>2]=c[f>>2];Nk(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Nk(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Nk(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Nk(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Nk(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Nk(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 Ok(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 Pk(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;Hk(c[d>>2]|0,0);i=b;return}function Qk(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];Ik(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 Rk(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;Pk(l);Br(l,c[h>>2]|0,c[k>>2]|0);Mk(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 Sk(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=df(c[u>>2]|0)|0;c[t>>2]=n;if(!n){c[l>>2]=st()|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)Ee(38729,38735,95,38748);do if(c[q>>2]|0){if((c[r>>2]|0)!=(c[v>>2]|0)){gf(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){Pw((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}gf(c[t>>2]|0);c[l>>2]=45;C=c[l>>2]|0;i=k;return C|0}else{c[x>>2]=Xm(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]=Xm(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}gf(c[B>>2]|0)}Pw((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);gf(c[x>>2]|0)}while(0);x=c[w>>2]|0;c[w>>2]=x+1;a[(c[t>>2]|0)+x>>0]=0;Pw((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))Ee(38779,38735,153,38748);c[s>>2]=No(c[m>>2]|0,5,c[t>>2]|0,c[w>>2]|0,u)|0;if((c[s>>2]|0)==0?rf(1)|0:0)Oe(38791,c[c[m>>2]>>2]|0);gf(c[t>>2]|0);c[l>>2]=c[s>>2];C=c[l>>2]|0;i=k;return C|0}function Tk(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=df(c[r>>2]|0)|0;c[q>>2]=n;if(!n){c[k>>2]=st()|0;t=c[k>>2]|0;i=h;return t|0}c[p>>2]=Ro(5,c[q>>2]|0,c[r>>2]|0,s,c[o>>2]|0)|0;if(c[p>>2]|0){gf(c[q>>2]|0);c[k>>2]=Uk(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){gf(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){gf(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){gf(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;Rw(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(rf(1)|0)Me(38824,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 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;a=Vk(c[d>>2]|0)|0;i=b;return a|0}function Vk(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 Wk(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]=cj(c[p>>2]|0)|0;if(dj(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=af(c[t>>2]|0)|0;c[s>>2]=x;if(!x){c[k>>2]=st()|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)Ee(38878,38735,303,38884);Tw((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;Pw((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);Pw((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))Ee(38779,38735,311,38884);c[q>>2]=No(c[l>>2]|0,5,c[s>>2]|0,c[v>>2]|0,t)|0;if((c[q>>2]|0)==0?rf(1)|0:0)Oe(38915,c[c[l>>2]>>2]|0);gf(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 Xk(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=af(c[r>>2]|0)|0;c[q>>2]=l;if(!l){c[h>>2]=st()|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)Ee(38878,38735,368,38948);Tw((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;Pw((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))Ee(38779,38735,374,38948);c[p>>2]=No(c[k>>2]|0,5,c[q>>2]|0,c[t>>2]|0,r)|0;if(!(c[p>>2]|0)){if(rf(1)|0)Oe(38915,c[c[k>>2]>>2]|0)}else c[o>>2]=Uk(c[p>>2]|0)|0;gf(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 Yk(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]=76048;c[w>>2]=0}c[D>>2]=cj(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]=jf(1,c[B>>2]|0)|0;if(!(c[A>>2]|0)){c[p>>2]=st()|0;H=c[p>>2]|0;i=o;return H|0}Xi(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;Pw((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)){Pw(u+1|0,c[x>>2]|0,c[D>>2]|0)|0;break}gf(u);c[p>>2]=45;H=c[p>>2]|0;i=o;return H|0}else Ym((c[A>>2]|0)+1|0,c[D>>2]|0,1);while(0);c[F>>2]=df((c[B>>2]|0)-(c[D>>2]|0)-1|0)|0;if(!(c[F>>2]|0)){c[z>>2]=st()|0;gf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Zk(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){gf(c[F>>2]|0);gf(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}gf(c[F>>2]|0);c[G>>2]=df(c[D>>2]|0)|0;if(!(c[G>>2]|0)){c[z>>2]=st()|0;gf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}c[z>>2]=Zk(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){gf(c[G>>2]|0);gf(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}gf(c[G>>2]|0);c[z>>2]=No(c[q>>2]|0,5,c[A>>2]|0,c[B>>2]|0,0)|0;if((c[z>>2]|0)==0?rf(1)|0:0)Oe(38983,c[c[q>>2]>>2]|0);gf(c[A>>2]|0);c[p>>2]=c[z>>2];H=c[p>>2]|0;i=o;return H|0}function Zk(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]=Ei(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]=cj(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)Ni(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;Pi(c[u>>2]|0,c[n>>2]|0,c[o>>2]|0);Pi(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;Pw((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)}Oi(c[u>>2]|0);c[k>>2]=0;y=c[k>>2]|0;i=h;return y|0}function _k(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]=76048;c[u>>2]=0}c[D>>2]=cj(c[r>>2]|0)|0;c[B>>2]=af(c[D>>2]|0)|0;if(!(c[B>>2]|0)){c[n>>2]=st()|0;I=c[n>>2]|0;i=m;return I|0}Xi(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){gf(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){gf(c[w>>2]|0);gf(c[B>>2]|0);c[n>>2]=155;I=c[n>>2]|0;i=m;return I|0}c[z>>2]=df((c[C>>2]|0)-1|0)|0;if(!(c[z>>2]|0)){c[v>>2]=st()|0;gf(c[w>>2]|0);gf(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(Zk(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(Zk(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(wv(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;gf(c[B>>2]|0);gf(c[w>>2]|0);if(c[G>>2]|0){gf(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;Rw(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(rf(1)|0)Me(39001,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=To(c[g>>2]|0,c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;i=f;return e|0}function al(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]=cj(c[q>>2]|0)|0;if(!(c[x>>2]|0))Ee(39040,38735,800,39045);c[D>>2]=8+(c[x>>2]|0)+(c[t>>2]|0)+((c[z>>2]|0)-(c[x>>2]|0)-1);c[B>>2]=af(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}Pw(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]=af(c[z>>2]|0)|0;if(!(c[y>>2]|0)){c[w>>2]=st()|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)){Ym(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{Pw(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;Xi(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;Tw(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;Pw(c[H>>2]|0,c[F>>2]|0,c[t>>2]|0)|0;Zk(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]=No(c[o>>2]|0,5,c[y>>2]|0,c[z>>2]|0,0)|0;if((c[w>>2]|0)==0?rf(1)|0:0)Oe(39066,c[c[o>>2]>>2]|0)}else c[w>>2]=st()|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=Yw(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}gf(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=Yw(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}gf(c[B>>2]|0);T=c[w>>2]|0;i=n;return T|0}function bl(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]=cj(c[o>>2]|0)|0;if(!(c[r>>2]|0))Ee(39040,38735,926,39083);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]=af(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}Zk(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;Pw((c[w>>2]|0)+8|0,c[z>>2]|0,c[r>>2]|0)|0;Pw((c[w>>2]|0)+8+(c[r>>2]|0)|0,c[u>>2]|0,c[p>>2]|0)|0;Xi(c[o>>2]|0,c[w>>2]|0,c[w>>2]|0,8+(c[r>>2]|0)+(c[p>>2]|0)|0);h=(wv(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]=st()|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=Yw(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}gf(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=Yw(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}gf(c[w>>2]|0);N=c[q>>2]|0;i=k;return N|0}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,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]=uj(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]=vj(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]=Ff(c[g>>2]|0,46956,0)|0;if(c[q>>2]|0?(c[k>>2]=tj(c[q>>2]|0,p,0)|0,Df(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=Ff(c[g>>2]|0,39165,0)|0;else u=0;c[o>>2]=u;if((c[o>>2]|0)==0?(c[q>>2]=Ff(c[g>>2]|0,39178,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|64;Df(c[q>>2]|0)}if((!(c[o>>2]|0)?!(c[p>>2]&64|0):0)?!(Ig()|0):0){if((c[p>>2]&32|0)==0?(c[q>>2]=Ff(c[g>>2]|0,46962,0)|0,c[q>>2]|0):0){c[p>>2]=c[p>>2]|32;Df(c[q>>2]|0)}c[k>>2]=jl(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]=dl(n,c[l>>2]|0,c[m>>2]|0,c[o>>2]|0,s)|0,Df(c[o>>2]|0),(c[k>>2]|0)==0&(c[s>>2]|0)!=0):0)c[k>>2]=Ef(r,39446,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]=Qf(s,0,39542,e)|0}rp(c[n>>2]|0);rp(c[n+4>>2]|0);rp(c[n+12>>2]|0);rp(c[n+16>>2]|0);rp(c[n+8>>2]|0);rp(c[n+20>>2]|0);Df(c[r>>2]|0);c[f>>2]=c[k>>2];t=c[f>>2]|0;i=d;return t|0}function dl(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]=39297;c[I+8>>2]=39301;c[I+16>>2]=39305;c[I+24>>2]=39308;c[I+32>>2]=39312;c[I+40>>2]=39316;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]=Ff(c[o>>2]|0,c[I+(c[J>>2]<<3)>>2]|0,0)|0;if(c[K>>2]|0){f=Nf(c[K>>2]|0,1,5)|0;c[c[I+(c[J>>2]<<3)+4>>2]>>2]=f;Df(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;Hp(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]=el(((c[m>>2]|0)>>>0)/2|0)|0;c[H>>2]=Gp(((c[m>>2]|0)>>>0)/2|0)|0;do{Hp(c[G>>2]|0);c[G>>2]=el(((c[m>>2]|0)>>>0)/2|0)|0;Wn(c[H>>2]|0,c[D>>2]|0,c[G>>2]|0);J=_n(c[H>>2]|0)|0}while(J>>>0<=((((c[m>>2]|0)>>>0)/2|0)-100|0)>>>0);Hp(c[H>>2]|0);c[B>>2]=fl()|0;c[C>>2]=fl()|0;c[E>>2]=fl()|0;c[F>>2]=fl()|0}c[s>>2]=ip(c[n>>2]|0)|0;c[q>>2]=rj(c[D>>2]|0,c[B>>2]|0,c[C>>2]|0,c[s>>2]|0,0,0)|0;c[r>>2]=rj(c[G>>2]|0,c[E>>2]|0,c[F>>2]|0,c[s>>2]|0,0,0)|0;Hp(c[D>>2]|0);c[D>>2]=0;Hp(c[B>>2]|0);c[B>>2]=0;Hp(c[C>>2]|0);c[C>>2]=0;Hp(c[G>>2]|0);c[G>>2]=0;Hp(c[E>>2]|0);c[E>>2]=0;Hp(c[F>>2]|0);c[F>>2]=0;F=c[q>>2]|0;if(!((c[q>>2]|0)!=0&(c[r>>2]|0)!=0)){Hp(F);Hp(c[r>>2]|0);Hp(c[s>>2]|0);c[k>>2]=21;L=c[k>>2]|0;i=g;return L|0}if((ko(F,c[r>>2]|0)|0)>0){Dp(c[q>>2]|0,c[r>>2]|0);c[c[p>>2]>>2]=1}c[t>>2]=Fp(c[m>>2]|0)|0;Eo(c[t>>2]|0,c[q>>2]|0,c[r>>2]|0);c[w>>2]=Gp(((c[m>>2]|0)>>>0)/2|0)|0;c[x>>2]=Gp(((c[m>>2]|0)>>>0)/2|0)|0;c[y>>2]=Gp(c[m>>2]|0)|0;Vn(c[w>>2]|0,c[q>>2]|0,1);Vn(c[x>>2]|0,c[r>>2]|0,1);Eo(c[y>>2]|0,c[w>>2]|0,c[x>>2]|0);c[A>>2]=Gp(c[m>>2]|0)|0;if(!(to(c[A>>2]|0,c[s>>2]|0,c[y>>2]|0)|0))Ee(39319,39223,541,39353);to(c[A>>2]|0,c[w>>2]|0,c[x>>2]|0)|0;c[z>>2]=c[w>>2];c[w>>2]=0;Hp(c[x>>2]|0);c[x>>2]=0;po(c[z>>2]|0,c[y>>2]|0,c[A>>2]|0);Hp(c[y>>2]|0);c[y>>2]=0;c[u>>2]=c[A>>2];c[A>>2]=0;zo(c[u>>2]|0,c[s>>2]|0,c[z>>2]|0)|0;c[v>>2]=c[z>>2];c[z>>2]=0;zo(c[v>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;if(rf(1)|0){if(c[c[p>>2]>>2]|0)Ke(39367,h);Oe(45419,c[q>>2]|0);Oe(39388,c[r>>2]|0);Oe(39392,c[t>>2]|0);Oe(39396,c[s>>2]|0);Oe(39400,c[u>>2]|0);Oe(39404,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(gl(c[l>>2]|0,(c[m>>2]|0)-64|0)|0){Hp(c[c[l>>2]>>2]|0);c[c[l>>2]>>2]=0;Hp(c[(c[l>>2]|0)+4>>2]|0);c[(c[l>>2]|0)+4>>2]=0;Hp(c[(c[l>>2]|0)+12>>2]|0);c[(c[l>>2]|0)+12>>2]=0;Hp(c[(c[l>>2]|0)+16>>2]|0);c[(c[l>>2]|0)+16>>2]=0;Hp(c[(c[l>>2]|0)+8>>2]|0);c[(c[l>>2]|0)+8>>2]=0;Hp(c[(c[l>>2]|0)+20>>2]|0);c[(c[l>>2]|0)+20>>2]=0;Rg(39223,586,39353,0,39408);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 el(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]=Gp(c[d>>2]|0)|0;Ip(c[e>>2]|0,c[d>>2]|0,2);bo(c[e>>2]|0,(c[d>>2]|0)-1|0);ao(c[e>>2]|0,(c[d>>2]|0)-2|0);a=_n(c[e>>2]|0)|0;if((a|0)==(c[d>>2]|0)){i=b;return c[e>>2]|0}else Ee(39187,39223,360,39229);return 0}function fl(){var a=0,b=0;a=i;i=i+16|0;if((i|0)>=(j|0))U();b=a;c[b>>2]=Gp(101)|0;Ip(c[b>>2]|0,101,2);bo(c[b>>2]|0,100);if((_n(c[b>>2]|0)|0)==101){i=a;return c[b>>2]|0}else Ee(39246,39223,375,39280);return 0}function gl(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]=Fp(c[f>>2]|0)|0;c[l>>2]=Fp(c[f>>2]|0)|0;c[m>>2]=Fp(c[f>>2]|0)|0;c[n>>2]=Fp(c[f>>2]|0)|0;c[h>>2]=c[c[e>>2]>>2];c[h+4>>2]=c[(c[e>>2]|0)+4>>2];Ip(c[k>>2]|0,c[f>>2]|0,0);hl(c[l>>2]|0,c[k>>2]|0,h);if(((ko(c[l>>2]|0,c[k>>2]|0)|0?(il(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0),(ko(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(Ip(c[k>>2]|0,c[f>>2]|0,0),il(c[n>>2]|0,c[k>>2]|0,c[e>>2]|0),hl(c[m>>2]|0,c[n>>2]|0,h),(ko(c[m>>2]|0,c[k>>2]|0)|0)==0):0)?(Tn(c[n>>2]|0,c[n>>2]|0,1),hl(c[m>>2]|0,c[n>>2]|0,h),ko(c[m>>2]|0,c[k>>2]|0)|0):0)c[g>>2]=0;Hp(c[n>>2]|0);Hp(c[m>>2]|0);Hp(c[l>>2]|0);Hp(c[k>>2]|0);i=d;return c[g>>2]|0}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;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]=jp(c[(c[g>>2]|0)+4>>2]<<1)|0;Go(c[k>>2]|0,c[g>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[c[h>>2]>>2]|0);yp(c[f>>2]|0,c[k>>2]|0)|0;rp(c[k>>2]|0);i=e;return}else{Go(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 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,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;Zn(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]=lp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[l>>2]=lp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;c[m>>2]=lp((c[(c[c[h>>2]>>2]|0)+4>>2]|0)+1|0)|0;Vn(c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0,1);lo(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);Go(c[k>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Vn(c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0,1);lo(c[m>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[m>>2]|0);Go(c[l>>2]|0,c[g>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Wn(c[m>>2]|0,c[l>>2]|0,c[k>>2]|0);if(c[(c[m>>2]|0)+8>>2]|0)Un(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Fo(c[m>>2]|0,c[(c[h>>2]|0)+20>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+16>>2]|0);Eo(c[m>>2]|0,c[m>>2]|0,c[(c[h>>2]|0)+12>>2]|0);Un(c[f>>2]|0,c[k>>2]|0,c[m>>2]|0);rp(c[m>>2]|0);rp(c[k>>2]|0);rp(c[l>>2]|0);i=e;return}Go(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 jl(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(Ig()|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]=jp(1)|0;if(c[l>>2]|0){c[l>>2]=c[l>>2]|1;Cp(c[u>>2]|0,c[l>>2]|0)|0}else Cp(c[u>>2]|0,41)|0;c[t>>2]=Fp(c[k>>2]|0)|0;c[o>>2]=0;c[n>>2]=0;do{if(c[n>>2]|0)Hp(c[n>>2]|0);if(c[o>>2]|0)Hp(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]=mj(m,e,6,c[u>>2]|0)|0;c[o>>2]=mj(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,6,c[u>>2]|0)|0}else{c[n>>2]=mj(m,e,0,0)|0;c[o>>2]=mj(((c[k>>2]|0)>>>0)/2|0,c[y>>2]|0,0,0)|0}if((ko(c[n>>2]|0,c[o>>2]|0)|0)>0)Dp(c[n>>2]|0,c[o>>2]|0);Eo(c[t>>2]|0,c[n>>2]|0,c[o>>2]|0);e=_n(c[t>>2]|0)|0}while((e|0)!=(c[k>>2]|0));c[r>>2]=lp(c[(c[n>>2]|0)+4>>2]|0)|0;c[s>>2]=lp(c[(c[n>>2]|0)+4>>2]|0)|0;c[v>>2]=Gp(c[k>>2]|0)|0;c[w>>2]=Gp(c[k>>2]|0)|0;c[x>>2]=Gp(c[k>>2]|0)|0;Vn(c[r>>2]|0,c[n>>2]|0,1);Vn(c[s>>2]|0,c[o>>2]|0,1);Eo(c[v>>2]|0,c[r>>2]|0,c[s>>2]|0);to(c[w>>2]|0,c[r>>2]|0,c[s>>2]|0)|0;po(c[x>>2]|0,c[v>>2]|0,c[w>>2]|0);while(1){if(!((to(c[r>>2]|0,c[u>>2]|0,c[v>>2]|0)|0)!=0^1))break;if(c[l>>2]|0){A=27;break}Tn(c[u>>2]|0,c[u>>2]|0,2)}if((A|0)==27)De(39223,287,39475);c[p>>2]=Gp(c[k>>2]|0)|0;zo(c[p>>2]|0,c[u>>2]|0,c[x>>2]|0)|0;c[q>>2]=Gp(c[k>>2]|0)|0;zo(c[q>>2]|0,c[n>>2]|0,c[o>>2]|0)|0;if(rf(1)|0){Oe(39488,c[n>>2]|0);Oe(39494,c[o>>2]|0);Oe(39500,c[v>>2]|0);Oe(39506,c[w>>2]|0);Oe(39512,c[x>>2]|0);Oe(39518,c[t>>2]|0);Oe(39524,c[u>>2]|0);Oe(39530,c[p>>2]|0);Oe(39536,c[q>>2]|0)}Hp(c[r>>2]|0);Hp(c[s>>2]|0);Hp(c[v>>2]|0);Hp(c[x>>2]|0);Hp(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(gl(c[h>>2]|0,(c[k>>2]|0)-64|0)|0){Hp(c[c[h>>2]>>2]|0);c[c[h>>2]>>2]=0;Hp(c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2]|0)+4>>2]=0;Hp(c[(c[h>>2]|0)+12>>2]|0);c[(c[h>>2]|0)+12>>2]=0;Hp(c[(c[h>>2]|0)+16>>2]|0);c[(c[h>>2]|0)+16>>2]=0;Hp(c[(c[h>>2]|0)+8>>2]|0);c[(c[h>>2]|0)+8>>2]=0;Hp(c[(c[h>>2]|0)+20>>2]|0);c[(c[h>>2]|0)+20>>2]=0;Rg(39223,334,39475,0,39408);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 kl(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];Vn(c[f>>2]|0,c[f>>2]|0,1);c[h>>2]=zp(c[f>>2]|0)|0;c[k>>2]=((to(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0)!=0^1)&1;Hp(c[h>>2]|0);Tn(c[f>>2]|0,c[f>>2]|0,1);i=d;return c[k>>2]|0}function ll(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]=Zf(a,0,39152,e)|0;if((c[g>>2]|0)==0?(ml(h)|0)==0:0)c[g>>2]=7;Hp(c[h>>2]|0);Hp(c[h+4>>2]|0);Hp(c[h+8>>2]|0);Hp(c[h+12>>2]|0);Hp(c[h+16>>2]|0);Hp(c[h+20>>2]|0);if(!(rf(1)|0)){k=c[g>>2]|0;i=b;return k|0}c[d>>2]=pt(c[g>>2]|0)|0;Ke(39637,d);k=c[g>>2]|0;i=b;return k|0}function ml(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]=jp(c[(c[(c[d>>2]|0)+12>>2]|0)+4>>2]<<1)|0;Eo(c[f>>2]|0,c[(c[d>>2]|0)+12>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[e>>2]=ko(c[f>>2]|0,c[c[d>>2]>>2]|0)|0;rp(c[f>>2]|0);i=b;return ((c[e>>2]|0)!=0^1)&1|0}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,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;zj(p,0,ol(c[n>>2]|0)|0);c[o>>2]=Bj(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(rf(1)|0)Oe(39659,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]=Zf(m,0,39149,k)|0;if(!(c[o>>2]|0)){if(rf(1)|0){Oe(39676,c[r>>2]|0);Oe(39693,c[r+4>>2]|0)}c[s>>2]=Fp(0)|0;hl(c[s>>2]|0,c[q>>2]|0,r);if(rf(1)|0)Oe(39710,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Qf(m,0,39747,g)|0;break}c[u>>2]=(((_n(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=To(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]=Qf(m,0,39727,h)|0;gf(c[t>>2]|0)}}}while(0);Hp(c[s>>2]|0);Hp(c[r>>2]|0);Hp(c[r+4>>2]|0);Hp(c[q>>2]|0);Aj(p);if(!(rf(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=pt(c[o>>2]|0)|0;Ke(39767,f);v=c[o>>2]|0;i=e;return v|0}function ol(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]=Ff(c[e>>2]|0,39163,1)|0;if(!(c[f>>2]|0)){c[d>>2]=0;k=c[d>>2]|0;i=b;return k|0}c[g>>2]=Nf(c[f>>2]|0,1,5)|0;Df(c[f>>2]|0);if(c[g>>2]|0)l=_n(c[g>>2]|0)|0;else l=0;c[h>>2]=l;Hp(c[g>>2]|0);c[d>>2]=c[h>>2];k=c[d>>2]|0;i=b;return k|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,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;zj(r,1,ol(c[p>>2]|0)|0);c[q>>2]=xj(c[o>>2]|0,7688,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]=Zf(o,0,39159,m)|0,(c[q>>2]|0)==0):0){if(rf(1)|0)Oe(39789,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]=Zf(o,0,39806,l)|0;if(!(c[q>>2]|0)){if(rf(1)|0?(Oe(39816,c[u>>2]|0),Oe(39833,c[u+4>>2]|0),(Ig()|0)==0):0){Oe(39850,c[u+8>>2]|0);Oe(39867,c[u+12>>2]|0);Oe(39884,c[u+16>>2]|0);Oe(39901,c[u+20>>2]|0)}Zn(c[t>>2]|0);lo(c[t>>2]|0,c[t>>2]|0,c[u>>2]|0);c[v>>2]=Gp(c[r+4>>2]|0)|0;if(c[r+12>>2]&1|0)il(c[v>>2]|0,c[t>>2]|0,u);else{c[w>>2]=Gp(c[r+4>>2]|0)|0;c[x>>2]=Gp(c[r+4>>2]|0)|0;c[y>>2]=Gp(c[r+4>>2]|0)|0;do{Ip(c[w>>2]|0,c[r+4>>2]|0,0);Ao(c[w>>2]|0,c[w>>2]|0,c[u>>2]|0)}while((zo(c[x>>2]|0,c[w>>2]|0,c[u>>2]|0)|0)!=0^1);Go(c[y>>2]|0,c[w>>2]|0,c[u+4>>2]|0,c[u>>2]|0);Fo(c[y>>2]|0,c[y>>2]|0,c[t>>2]|0,c[u>>2]|0);il(c[v>>2]|0,c[y>>2]|0,u);Hp(c[y>>2]|0);c[y>>2]=0;Fo(c[v>>2]|0,c[v>>2]|0,c[x>>2]|0,c[u>>2]|0);Hp(c[w>>2]|0);c[w>>2]=0;Hp(c[x>>2]|0);c[x>>2]=0}if(rf(1)|0)Oe(39918,c[v>>2]|0);switch(c[r+8>>2]|0){case 1:{c[q>>2]=Tk(z,A,c[r+4>>2]|0,c[v>>2]|0)|0;rp(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]=Qf(o,0,39935,k)|0;break a;break}case 3:{c[q>>2]=_k(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;rp(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]=Qf(o,0,39935,h)|0;break a;break}default:{o=c[n>>2]|0;d=c[r+12>>2]&8|0?39946:49031;c[g>>2]=c[v>>2];c[q>>2]=Qf(o,0,d,g)|0;break a}}}}while(0);gf(c[z>>2]|0);Hp(c[v>>2]|0);Hp(c[u>>2]|0);Hp(c[u+4>>2]|0);Hp(c[u+8>>2]|0);Hp(c[u+12>>2]|0);Hp(c[u+16>>2]|0);Hp(c[u+20>>2]|0);Hp(c[t>>2]|0);Hp(c[w>>2]|0);Hp(c[x>>2]|0);Hp(c[y>>2]|0);Df(c[s>>2]|0);Aj(r);if(!(rf(1)|0)){B=c[q>>2]|0;i=e;return B|0}c[f>>2]=pt(c[q>>2]|0)|0;Ke(39949,f);B=c[q>>2]|0;i=e;return B|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+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;zj(p,2,ol(c[n>>2]|0)|0);c[o>>2]=Bj(c[m>>2]|0,q,p)|0;do if(!(c[o>>2]|0)){if(rf(1)|0)Oe(39971,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]=Zf(m,0,39806,k)|0;if(!(c[o>>2]|0)){if(rf(1)|0?(Oe(39987,c[r>>2]|0),Oe(40003,c[r+4>>2]|0),(Ig()|0)==0):0){Oe(40019,c[r+8>>2]|0);Oe(40035,c[r+12>>2]|0);Oe(40051,c[r+16>>2]|0);Oe(40067,c[r+20>>2]|0)}c[s>>2]=Fp(0)|0;il(c[s>>2]|0,c[q>>2]|0,r);if(rf(1)|0)Oe(40083,c[s>>2]|0);if(!(c[p+12>>2]&4)){m=c[l>>2]|0;c[g>>2]=c[s>>2];c[o>>2]=Qf(m,0,40119,g)|0;break}c[u>>2]=(((_n(c[r>>2]|0)|0)+7|0)>>>0)/8|0;c[o>>2]=To(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]=Qf(m,0,40099,h)|0;gf(c[t>>2]|0)}}}while(0);Hp(c[s>>2]|0);Hp(c[r>>2]|0);Hp(c[r+4>>2]|0);Hp(c[r+8>>2]|0);Hp(c[r+12>>2]|0);Hp(c[r+16>>2]|0);Hp(c[r+20>>2]|0);Hp(c[q>>2]|0);Aj(p);if(!(rf(1)|0)){v=c[o>>2]|0;i=e;return v|0}c[f>>2]=pt(c[o>>2]|0)|0;Ke(40139,f);v=c[o>>2]|0;i=e;return v|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,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;zj(o,3,ol(c[m>>2]|0)|0);c[n>>2]=Bj(c[l>>2]|0,r,o)|0;do if(!(c[n>>2]|0)){if(rf(1)|0)Oe(40160,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]=wj(c[k>>2]|0,7688,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]=Zf(l,0,39161,h)|0,(c[n>>2]|0)==0):0){if(rf(1)|0)Oe(40176,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]=Zf(l,0,39149,g)|0;if(!(c[n>>2]|0)){if(rf(1)|0){Oe(40192,c[s>>2]|0);Oe(40208,c[s+4>>2]|0)}c[t>>2]=Fp(0)|0;hl(c[t>>2]|0,c[q>>2]|0,s);if(rf(1)|0)Oe(40224,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=(ko(c[t>>2]|0,c[r>>2]|0)|0)!=0;c[n>>2]=l?8:0;break}}}}while(0);Hp(c[t>>2]|0);Hp(c[s>>2]|0);Hp(c[s+4>>2]|0);Hp(c[r>>2]|0);Hp(c[q>>2]|0);Df(c[p>>2]|0);Aj(o);if(!(rf(1)|0)){u=c[n>>2]|0;i=e;return u|0}if(c[n>>2]|0)v=pt(c[n>>2]|0)|0;else v=49589;c[f>>2]=v;Ke(40240,f);u=c[n>>2]|0;i=e;return u|0}function sl(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]=tl(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 tl(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]=40261;c[h>>2]=Sf(k,0,40269,Uu(40269)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Sf(l,0,41299,Uu(41299)|0)|0;do if(!(c[h>>2]|0)){c[f>>2]=41616;c[h>>2]=Mj(c[k>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=ul(c[h>>2]|0)|0;break}c[f>>2]=41632;c[g>>2]=vl(c[l>>2]|0,c[k>>2]|0)|0;if((c[g>>2]|0)==0?(c[f>>2]=41868,c[g>>2]=yl(c[l>>2]|0,c[k>>2]|0)|0,(c[g>>2]|0)==0):0){Df(c[l>>2]|0);Df(c[k>>2]|0);c[d>>2]=0;m=c[d>>2]|0;i=b;return m|0}}else c[g>>2]=ul(c[h>>2]|0)|0;while(0);Df(c[l>>2]|0);Df(c[k>>2]|0);if(c[e>>2]|0)Cb[c[e>>2]&1](49625,1,c[f>>2]|0,c[g>>2]|0);c[d>>2]=50;m=c[d>>2]|0;i=b;return m|0}function ul(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 vl(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]=Sf(k,0,41637,Uu(41637)|0)|0;if(!(c[h>>2]|0))c[h>>2]=Sf(l,0,41713,Uu(41713)|0)|0;do if(!(c[h>>2]|0)){c[h>>2]=Kj(m,c[k>>2]|0,c[f>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=41812;break}c[h>>2]=Lj(c[m>>2]|0,c[k>>2]|0,c[e>>2]|0)|0;if(c[h>>2]|0){c[g>>2]=41827;break}c[h>>2]=Lj(c[m>>2]|0,c[l>>2]|0,c[e>>2]|0)|0;if((wl(c[h>>2]|0)|0)!=8)c[g>>2]=41841}else c[g>>2]=41789;while(0);Df(c[m>>2]|0);Df(c[l>>2]|0);Df(c[k>>2]|0);i=d;return c[g>>2]|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;a=xl(c[d>>2]|0)|0;i=b;return a|0}function xl(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 yl(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]=Fp(1e3)|0;Ip(c[l>>2]|0,1e3,0);c[e>>2]=c[l>>2];c[k>>2]=Qf(m,0,41876,e)|0;do if(!(c[k>>2]|0)){c[k>>2]=Hj(n,c[m>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=41906;break}c[o>>2]=zl(c[n>>2]|0)|0;if(!(c[o>>2]|0)){c[h>>2]=41929;break}if(!(ko(c[l>>2]|0,c[o>>2]|0)|0)){c[h>>2]=41962;break}c[k>>2]=Jj(p,c[n>>2]|0,c[g>>2]|0)|0;if(c[k>>2]|0){c[h>>2]=41991;break}c[r>>2]=Ff(c[p>>2]|0,42006,0)|0;if(c[r>>2]|0)c[q>>2]=Nf(c[r>>2]|0,1,5)|0;else c[q>>2]=Nf(c[p>>2]|0,0,5)|0;if(!(c[q>>2]|0)){c[h>>2]=42012;break}if(ko(c[l>>2]|0,c[q>>2]|0)|0)c[h>>2]=42042}else c[h>>2]=41789;while(0);Df(c[r>>2]|0);Hp(c[q>>2]|0);Df(c[p>>2]|0);Hp(c[o>>2]|0);Df(c[n>>2]|0);Df(c[m>>2]|0);Hp(c[l>>2]|0);i=d;return c[h>>2]|0}function zl(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]=Ff(c[e>>2]|0,41921,0)|0;if(!(c[f>>2]|0)){c[d>>2]=0;l=c[d>>2]|0;i=b;return l|0}c[g>>2]=Ff(c[f>>2]|0,39108,0)|0;Df(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]=Ff(c[g>>2]|0,39159,0)|0;Df(c[g>>2]|0);if(c[h>>2]|0){c[k>>2]=Nf(c[h>>2]|0,1,0)|0;Df(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 Al(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]=Ff(c[g>>2]|0,39163,1)|0;if(!(c[h>>2]|0)){c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}c[k>>2]=Jf(c[h>>2]|0,1,l)|0;if(c[k>>2]|0){Pi(c[f>>2]|0,c[k>>2]|0,c[l>>2]|0);Df(c[h>>2]|0);c[e>>2]=0;m=c[e>>2]|0;i=d;return m|0}else{Df(c[h>>2]|0);c[e>>2]=68;m=c[e>>2]|0;i=d;return m|0}return 0}function Bl(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]=bg()|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 Cl(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]=Dl(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 Lu(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=Sw(f|0,g|0,10,0)|0;h=e+-1|0;a[h>>0]=c|48;c=Ww(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 Mu(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 Nu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;Tw(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){Iu(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;Iu(h,r,a)|0}while(0);i=g;return}function Ou(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Pu(a,b,0)|0;return c|0}function Pu(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[(gu()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function Qu(a,b){a=+a;b=b|0;return +(+Ru(a,b))}function Ru(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=Nw(d|0,e|0,52)|0;g=f&2047;switch(g|0){case 0:{if(a!=0.0){i=+Ru(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 Su(a){a=a|0;return 0}function Tu(a){a=a|0;var b=0;b=(xu(a)|0)==0;return (b?a:a&95)|0}function Uu(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 Vu(a){a=a|0;return ((a|0)==223|(tu(a)|0)!=(a|0))&1|0}function Wu(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 Xu(a,b){a=a|0;b=b|0;var c=0;do switch(b|0){case 1:{c=Yu(a)|0;break}case 2:{c=vu(a)|0;break}case 3:{c=ou(a)|0;break}case 4:{c=_u(a)|0;break}case 5:{c=Zu(a)|0;break}case 6:{c=$u(a)|0;break}case 7:{c=Vu(a)|0;break}case 8:{c=Wu(a)|0;break}case 9:{c=av(a)|0;break}case 10:{c=zu(a)|0;break}case 11:{c=bv(a)|0;break}case 12:{c=cv(a)|0;break}default:c=0}while(0);return c|0}function Yu(a){a=a|0;var b=0;if(!(Zu(a)|0))b=(vu(a)|0)!=0;else b=1;return b&1|0}function Zu(a){a=a|0;return (a+-48|0)>>>0<10|0}function _u(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(!(zu(a)|0))b=(Wu(a)|0)!=0;else b=0;return b&1|0}function av(a){a=a|0;var b=0;if(a>>>0<131072)b=(d[66850+((d[66850+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else b=0;return b|0}function bv(a){a=a|0;return (wu(a)|0)!=(a|0)|0}function cv(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 dv(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=ru(i)|0,(l|0)!=(ru(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=ru(f&255)|0;return n-(ru(d[g>>0]|0)|0)|0}function ev(a,b){a=a|0;b=b|0;fv(a,b)|0;return a|0}function fv(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 gv(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=iv(a,b,c,-1,0)|0;return d|0}function iv(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;jv(h,0);m=kv(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 jv(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 kv(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[(gu()|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=lv(b)|0}while((gv(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=lv(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=lv(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=lv(b)|0;if((d[70019+y>>0]|0)>15){p=(c[l>>2]|0)==0;if(!p)c[k>>2]=(c[k>>2]|0)+-1;if(!f){jv(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[70019+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;jv(b,0);c[(gu()|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=lv(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=Yw(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=Hw(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=lv(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[70275+((t*23|0)>>>5&7)>>0]|0;A=a[70019+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=lv(b)|0;L=a[70019+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=Nw(-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=Qw(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=lv(b)|0;ha=a[70019+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[70019+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=lv(b)|0;L=a[70019+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=Ww(-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=Yw(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=Hw(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=lv(b)|0;J=a[70019+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[70019+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=lv(b)|0}while((d[70019+va>>0]|0)>>>0<V>>>0);c[(gu()|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[(gu()|0)>>2]=34;K=Hw(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[(gu()|0)>>2]=34;i=h;j=g;break}}K=((U|0)<0)<<31>>31;L=Gw(T^U|0,S^K|0,U|0,K|0)|0;i=C;j=L}while(0);C=i;return j|0}function lv(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=mv(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 mv(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?(nv(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 nv(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 ov(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=pv(a,b,f)|0;i=e;return d|0}function pv(a,b,c){a=a|0;b=b|0;c=c|0;return Eu(a,2147483647,b,c)|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]=d;d=Gu(a,b,f)|0;i=e;return d|0}function rv(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=Su(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)ku(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=Mu(m,10,o)|0;q=(p|0)==0;r=q?o:1-n+p|0;p=r>>>0<k>>>0;n=p?r:k;Pw(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=mv(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{ku(f);j=w}}return j|0}function sv(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 tv(a){a=a|0;return Vw(a|0)|0}function uv(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=fu(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=fu(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=fu(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=fu(s)|0;break a}else{if((u|0)>-1){c[l>>2]=u;wa(6,l|0)|0}v=fu(-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=fu(sa(221,g|0)|0)|0;break a}else{c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;v=fu(sa(221,f|0)|0)|0;break a}}while(0);i=e;return v|0}function vv(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=fu((a|0)==-4?-115:a)|0;i=b;return d|0}function wv(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 xv(a){a=a|0;return Vw(a|0)|0}function yv(a,b,c){a=a|0;b=b|0;c=c|0;zv(a,b,c)|0;return a|0}function zv(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);Tw(w|0,0,x|0)|0;return w|0}function Av(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(Mu(70284,a[d>>0]|0,4)|0){h=Bv(d)|0|32768;c[g>>2]=b;c[g+4>>2]=h;c[g+8>>2]=438;h=fu(gb(5,g|0)|0)|0;if((h|0)>=0){g=Ev(h,d)|0;if(!g){c[f>>2]=h;wa(6,f|0)|0;k=0}else k=g}else k=0}else{c[(gu()|0)>>2]=22;k=0}i=e;return k|0}function Bv(b){b=b|0;var c=0,d=0,e=0,f=0;c=(Cv(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(Cv(b,120)|0)==0;f=c?e:e|128;e=(Cv(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 Cv(b,c){b=b|0;c=c|0;var d=0;d=Dv(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function Dv(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+(Uu(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 Ev(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(Mu(70284,m<<24>>24,4)|0){n=zw(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(!(Cv(d,43)|0))c[n>>2]=m<<24>>24==114?8:4;if(!(Cv(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[17721]|0))c[n+76>>2]=-1;eb(70908);g=c[17726]|0;c[n+56>>2]=g;if(g|0)c[g+52>>2]=n;c[17726]=n;$a(70908);o=n}}else{c[(gu()|0)>>2]=22;o=0}i=e;return o|0}function Fv(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a>>2]&1|0)!=0;if(!b){eb(70908);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[17726]|0)==(a|0))c[17726]=f;$a(70908)}f=Gv(a)|0;d=wb[c[a+12>>2]&15](a)|0|f;f=c[a+92>>2]|0;if(f|0)Aw(f);if(!b)Aw(a);return d|0}function Gv(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=Hv(a)|0;break}d=(Su(a)|0)==0;e=Hv(a)|0;if(d)b=e;else{ku(a);b=e}}else{if(!(c[3955]|0))f=0;else f=Gv(c[3955]|0)|0;eb(70908);e=c[17726]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=Su(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=Hv(d)|0|e;else i=e;if(h|0)ku(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}$a(70908);b=g}while(0);return b|0}function Hv(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 Iv(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[15940+(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[(gu()|0)>>2]=84;k=-1}while(0);i=g;return k|0}function Jv(a,b){a=a|0;b=b|0;return (Kv(a,Uu(a)|0,1,b)|0)+-1|0}function Kv(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=(Su(e)|0)==0;h=Iu(a,f,e)|0;if(g)i=h;else{ku(e);i=h}}else i=Iu(a,f,e)|0;if((i|0)==(f|0))j=d;else j=(i>>>0)/(b>>>0)|0;return j|0}function Lv(){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 Mv(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=fu(Za(33,e|0)|0)|0;i=d;return b|0}function Nv(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(Su(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 Ov(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=b;e=70288;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 Pv(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){Ov(f,a);c[e>>2]=f;c[e+4>>2]=b;k=fu(La(195,e|0)|0)|0}else k=fu(h)|0;i=d;return k|0}function Qv(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=fu(ob(142,h|0)|0)|0;i=g;return f|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=fu(hb(4,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;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=fu(cb(3,f|0)|0)|0;i=e;return d|0}function Tv(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=fu(gb(5,f|0)|0)|0;i=e;return h|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=fu(bb(10,d|0)|0)|0;i=b;return a|0}function Vv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;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:{}}_v(8,g);g=c[d>>2]|0;if(!g)h=0;else{c[(gu()|0)>>2]=g;h=-1}i=f;return h|0}function Wv(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)!=(Xv()|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];Yv(6,e)|0;g=Zv(6,d)|0;c[f>>2]=0-g;if(!((g|0)!=0?(c[17724]|0)!=0:0)){c[f>>2]=1;Zv(6,e)|0}break}c[f>>2]=1}while(0);i=b;return}function Xv(){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 Yv(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=fu(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[(gu()|0)>>2]|0)==38){c[e>>2]=a;c[e+4>>2]=g;if((fu(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 Zv(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 _v(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 aw(a){a=a|0;return Vv(213,a,0,0)|0}function bw(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=fu(Ma(194,e|0)|0)|0;i=d;return b|0}function cw(){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 dw(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=fu(g)|0;i=d;return e|0}function ew(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[(gu()|0)>>2]=12;l=-1;break}m=(e&16|0)!=0;if(m)fw(-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=fu(Ia(192,k|0)|0)|0;if(m){gw();l=n}else l=n}else{c[(gu()|0)>>2]=22;l=-1}while(0);i=h;return l|0}function fw(a){a=a|0;return}function gw(){return}function hw(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;fw(-1);c[e>>2]=a;c[e+4>>2]=b;b=fu(Ta(91,e|0)|0)|0;gw();i=d;return b|0}function iw(a){a=a|0;var b=0;b=70328;c[b>>2]=a+-1;c[b+4>>2]=0;return}function jw(){var a=0,b=0,d=0;a=70328;b=Yw(c[a>>2]|0,c[a+4>>2]|0,1284865837,1481765933)|0;a=Hw(b|0,C|0,1,0)|0;b=C;d=70328;c[d>>2]=a;c[d+4>>2]=b;d=Nw(a|0,b|0,33)|0;return d|0}function kw(a){a=a|0;eb(70928);lw(a);$a(70928);return}function lw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[4086]|0;if(!b)c[c[4087]>>2]=a;else{c[4120]=(b|0)==31|(b|0)==7?3:1;c[17734]=0;if((b|0)>0){d=c[4087]|0;e=0;f=a;a=0;do{g=Yw(f|0,e|0,1284865837,1481765933)|0;f=Hw(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[4087]|0;c[h>>2]=c[h>>2]|1}return}function mw(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;eb(70928);a=c[4086]|0;if(!a){b=c[4087]|0;d=(R(c[b>>2]|0,1103515245)|0)+12345&2147483647;c[b>>2]=d;e=d}else{d=c[17734]|0;b=c[4087]|0;f=c[4120]|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[4120]=(g|0)==(a|0)?0:g;g=d+1|0;c[17734]=(g|0)==(a|0)?0:g;e=h>>>1}$a(70928);return e|0}function nw(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(!(gv(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 ow(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=fu(Xa(77,e|0)|0)|0;i=d;return b|0}function pw(a,b){a=a|0;b=b|0;return qw(a,b,(Uu(a)|0)+1|0)|0}function qw(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 rw(a){a=a|0;return (a+-48|0)>>>0<10|0}function sw(a,b){a=a|0;b=b|0;var d=0;if(!a)d=Bw(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 tw(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0){d=b;do{Aw(c[d>>2]|0);b=d;d=c[d+4>>2]|0;Aw(b)}while((d|0)!=0)}Aw(a);return}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,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=zw(8)|0;if(!k){c[g>>2]=1;j=0;break a}q=zw(p)|0;c[k>>2]=q;r=q;if(!q){Aw(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{Tw(n|0,0,q|0)|0;j=n}}else j=0;while(0);return j|0}function vw(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=zw(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=zw(x)|0;if(!y){z=12;A=0}else{Tw(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=Iv(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(Yu(S)|0)break d;ya=c[h>>2]|0;if((ya|0)==95)break;if(!(Yu(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=(Yu(S)|0)==0;Ba=c[h>>2]|0;if(ya|(Ba|0)==95)break;else Aa=Ba}if(Yu(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=(Yu(S)|0)!=0;Ca=c[h>>2]|0;Da=ya}if((Ca|0)==95)if(Da)break d;else break;else if(Da^(Yu(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=(Yu(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^(Yu(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)Tw(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;_=Iv(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(Yu(Ka)|0){db=ma;eb=Ba;fb=ya;gb=oa;break f}jb=c[h>>2]|0;if((jb|0)==95)break;if(!(Yu(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=(Yu(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(Yu(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=(Yu(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^(Yu(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=(Yu(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^(Yu(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(!(Xu(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=wu(Ka)|0;jb=cb+24|0;if(Xu(mb,c[jb>>2]|0)|0)break;mb=tu(Ka)|0;if(!(Xu(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(yw(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(!(ww(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);Aw(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=sw(0,0)|0;g:do if(G){H=uw(G,0,0,0,32)|0;if(!H){tw(G);Cb=12;Db=0;break}c[H+24>>2]=0;c[H+28>>2]=0;y=c[d>>2]|0;if(y){Ja=zw(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=zw(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=zw(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)Tw(Lb|0,0,((xb|0)>1?xb:1)<<2|0)|0;xb=c[h>>2]|0;wb=fb+eb|0;s=Iv(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(Yu(xb)|0){Ob=sb;Pb=kb;Qb=lb;break j}La=c[h>>2]|0;if((La|0)==95)break;if(!(Yu(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=(Yu(xb)|0)==0;La=c[h>>2]|0;if(vb|(La|0)==95){Ob=sb;Pb=kb;Qb=lb;break}else Sb=La}if(Yu(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=(Yu(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^(Yu(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=(Yu(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^(Yu(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=uw(G,0,0,0,32)|0;if(!La){q=56;break i}c[La+24>>2]=kb;c[La+28>>2]=0;vb=uw(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(!(ww(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;xw(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(sv(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=Iv(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=Iv(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(Yu(Ac)|0){Dc=pb;Ec=tb;Fc=nb;break n}ub=c[h>>2]|0;if((ub|0)==95)break;if(!(Yu(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=(Yu(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(Yu(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=(Yu(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^(Yu(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=(Yu(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^(Yu(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(!(Xu(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=wu(Ac)|0;ub=qb+24|0;if(Xu(La,c[ub>>2]|0)|0)break;La=tu(Ac)|0;if(!(Xu(La,c[ub>>2]|0)|0)){Dc=pb;Ec=tb;Fc=nb;break n}}while(0);if(!(c[vb>>2]&8))break;if(yw(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=uw(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=uw(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;tw(G);if(!Xa)Aw(Jb);if(!Wa)Aw(Kb);if(bb){pc=1;qc=hc;rc=Nc;sc=yc;tc=zc;uc=Oc;vc=mc;wc=Bc;break}Aw(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;tw(G);if(!Xa)Aw(Jb);if(!Wa)Aw(Kb);if(bb){pc=1;qc=hc;rc=Pc;sc=yc;tc=zc;uc=Qc;vc=mc;wc=Bc;break}Aw(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){tw(G);if(!Xa)Aw(Jb);if(!Wa)Aw(Kb);if(bb){Cb=12;Db=0;break g}Aw(Lb);Cb=12;Db=0;break g}else if((q|0)==63){tw(G);if(!Xa)Aw(Jb);if(!Wa)Aw(Kb);if(bb){Cb=12;Db=0;break g}Aw(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);tw(G);if(Ib|0)Aw(Ib);if(Fb|0)Aw(Fb);if(!Hb){Cb=Gb;Db=Eb}else{Aw(Hb);Cb=Gb;Db=Eb}}else{Cb=12;Db=0}while(0);Ab=Db;Bb=Cb}if(!Bb)xw(l,e,c[a>>2]|0,k,p,Ab);if(!p)o=Bb;else{Aw(p);o=Bb}}i=g;return o|0}function ww(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 xw(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 yw(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(Xu(b,i)|0){f=1;break a}}else{j=tu(b)|0;if(Xu(j,c[h>>2]|0)|0){f=1;break a}j=wu(b)|0;if(Xu(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 zw(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[17735]|0;h=g>>>f;if(h&3|0){k=(h&1^1)+f|0;l=70980+(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[17739]|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[17735]=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[17737]|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=70980+(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[17739]|0)>>>0)fb();p=l+12|0;if((c[p>>2]|0)==(s|0)){c[p>>2]=t;c[u>>2]=l;w=c[17737]|0;break}else fb()}else{c[17735]=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[17740]|0;u=w>>>3;t=70980+(u<<1<<2)|0;f=c[17735]|0;h=1<<u;if(f&h){u=t+8|0;o=c[u>>2]|0;if(o>>>0<(c[17739]|0)>>>0)fb();else{x=u;y=o}}else{c[17735]=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[17737]=m;c[17740]=g;r=q;i=b;return r|0}g=c[17736]|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[71244+((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[17739]|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=71244+(q<<2)|0;if((A|0)==(c[l>>2]|0)){c[l>>2]=C;if(!C){c[17736]=c[17736]&~(1<<q);break}}else{if(h>>>0<(c[17739]|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[17739]|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[17739]|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[17737]|0;if(l|0){h=c[17740]|0;q=l>>>3;l=70980+(q<<1<<2)|0;s=c[17735]|0;t=1<<q;if(s&t){q=l+8|0;v=c[q>>2]|0;if(v>>>0<(c[17739]|0)>>>0)fb();else{H=q;I=v}}else{c[17735]=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[17737]=z;c[17740]=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[17736]|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[71244+(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[71244+((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[17737]|0)-h|0)>>>0:0){t=c[17739]|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=71244+(l<<2)|0;if((X|0)==(c[t>>2]|0)){c[t>>2]=Y;if(!Y){c[17736]=c[17736]&~(1<<l);break}}else{if(f>>>0<(c[17739]|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[17739]|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[17739]|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=70980+(f<<1<<2)|0;l=c[17735]|0;e=1<<f;if(l&e){f=t+8|0;g=c[f>>2]|0;if(g>>>0<(c[17739]|0)>>>0)fb();else{ba=f;ca=g}}else{c[17735]=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=71244+(da<<2)|0;c[m+28>>2]=da;l=m+16|0;c[l+4>>2]=0;c[l>>2]=0;l=c[17736]|0;g=1<<da;if(!(l&g)){c[17736]=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[17739]|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[17739]|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[17737]|0;if(X>>>0>=J>>>0){W=X-J|0;ea=c[17740]|0;if(W>>>0>15){ga=ea+J|0;c[17740]=ga;c[17737]=W;c[ga+4>>2]=W|1;c[ga+W>>2]=W;c[ea+4>>2]=J|3}else{c[17737]=0;c[17740]=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[17738]|0;if(ea>>>0>J>>>0){W=ea-J|0;c[17738]=W;ea=c[17741]|0;X=ea+J|0;c[17741]=X;c[X+4>>2]=W|1;c[ea+4>>2]=J|3;r=ea+8|0;i=b;return r|0}if(!(c[17853]|0)){c[17855]=4096;c[17854]=4096;c[17856]=-1;c[17857]=-1;c[17858]=0;c[17846]=0;ea=d&-16^1431655768;c[d>>2]=ea;c[17853]=ea}ea=J+48|0;d=c[17855]|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[17845]|0;if(fa|0?(da=c[17843]|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[17846]&4)){fa=c[17741]|0;c:do if(fa){ca=71388;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[17738]|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[17854]|0;ba=ca+-1|0;if(!(ba&h))na=d;else na=d-h+(ba+h&0-ca)|0;ca=c[17843]|0;h=ca+na|0;if(na>>>0>J>>>0&na>>>0<2147483647){ba=c[17845]|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[17855]|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[17846]=c[17846]|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[17843]|0)+ka|0;c[17843]=la;if(la>>>0>(c[17844]|0)>>>0)c[17844]=la;la=c[17741]|0;do if(la){oa=71388;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[17738]|0)|0;c[17741]=oa;c[17738]=ma;c[oa+4>>2]=ma|1;c[oa+ma+4>>2]=40;c[17742]=c[17857];break}ma=c[17739]|0;if(ja>>>0<ma>>>0){c[17739]=ja;ta=ja}else ta=ma;ma=ja+ka|0;oa=71388;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=71388;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[17740]|0)){na=(c[17737]|0)+ea|0;c[17737]=na;c[17740]=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=71244+(X<<2)|0;do if((d|0)!=(c[h>>2]|0)){if(ga>>>0<(c[17739]|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[17736]=c[17736]&~(1<<X);break e}while(0);X=c[17739]|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[17739]|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=70980+(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[17735]=c[17735]&~(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=70980+(ha<<1<<2)|0;ga=c[17735]|0;h=1<<ha;do if(!(ga&h)){c[17735]=ga|h;Fa=na+8|0;Ga=na}else{ha=na+8|0;fa=c[ha>>2]|0;if(fa>>>0>=(c[17739]|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=71244+(Ia<<2)|0;c[oa+28>>2]=Ia;na=oa+16|0;c[na+4>>2]=0;c[na>>2]=0;na=c[17736]|0;ca=1<<Ia;if(!(na&ca)){c[17736]=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[17739]|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[17739]|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[17738]|0)+ea|0;c[17738]=ca;c[17741]=oa;c[oa+4>>2]=ca|1}while(0);r=W+8|0;i=b;return r|0}else wa=71388;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[17741]=d;c[17738]=ca;c[d+4>>2]=ca|1;c[d+ca+4>>2]=40;c[17742]=c[17857];ca=W+4|0;c[ca>>2]=27;c[oa>>2]=c[17847];c[oa+4>>2]=c[17848];c[oa+8>>2]=c[17849];c[oa+12>>2]=c[17850];c[17847]=ja;c[17848]=ka;c[17850]=0;c[17849]=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=70980+(d<<1<<2)|0;na=c[17735]|0;ia=1<<d;if(na&ia){d=ma+8|0;h=c[d>>2]|0;if(h>>>0<(c[17739]|0)>>>0)fb();else{Na=d;Oa=h}}else{c[17735]=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=71244+(Pa<<2)|0;c[la+28>>2]=Pa;c[la+20>>2]=0;c[ea>>2]=0;na=c[17736]|0;h=1<<Pa;if(!(na&h)){c[17736]=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[17739]|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[17739]|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[17739]|0;if((h|0)==0|ja>>>0<h>>>0)c[17739]=ja;c[17847]=ja;c[17848]=ka;c[17850]=0;c[17744]=c[17853];c[17743]=-1;h=0;do{na=70980+(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[17741]=h;c[17738]=oa;c[h+4>>2]=oa|1;c[h+oa+4>>2]=40;c[17742]=c[17857]}while(0);ka=c[17738]|0;if(ka>>>0>J>>>0){ja=ka-J|0;c[17738]=ja;ka=c[17741]|0;la=ka+J|0;c[17741]=la;c[la+4>>2]=ja|1;c[ka+4>>2]=J|3;r=ka+8|0;i=b;return r|0}}c[(gu()|0)>>2]=12;r=0;i=b;return r|0}function Aw(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[17739]|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[17740]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;break}c[17737]=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=70980+(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[17735]=c[17735]&~(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=71244+(k<<2)|0;if((i|0)==(c[l>>2]|0)){c[l>>2]=s;if(!s){c[17736]=c[17736]&~(1<<k);m=i;n=j;break}}else{if(h>>>0<(c[17739]|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[17739]|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[17739]|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[17741]|0)){s=(c[17738]|0)+n|0;c[17738]=s;c[17741]=m;c[m+4>>2]=s|1;if((m|0)!=(c[17740]|0))return;c[17740]=0;c[17737]=0;return}if((g|0)==(c[17740]|0)){s=(c[17737]|0)+n|0;c[17737]=s;c[17740]=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[17739]|0)>>>0)fb();else{c[B>>2]=0;x=A;break}}else{t=c[g+8>>2]|0;if(t>>>0<(c[17739]|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=71244+(w<<2)|0;if((g|0)==(c[j>>2]|0)){c[j>>2]=x;if(!x){c[17736]=c[17736]&~(1<<w);break}}else{if(v>>>0<(c[17739]|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[17739]|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[17739]|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=70980+(d<<1<<2)|0;if((i|0)!=(v|0)){if(i>>>0<(c[17739]|0)>>>0)fb();if((c[i+12>>2]|0)!=(g|0))fb()}if((w|0)==(i|0)){c[17735]=c[17735]&~(1<<d);break}if((w|0)!=(v|0)){if(w>>>0<(c[17739]|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[17740]|0)){c[17737]=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=70980+(n<<1<<2)|0;f=c[17735]|0;s=1<<n;if(f&s){n=b+8|0;C=c[n>>2]|0;if(C>>>0<(c[17739]|0)>>>0)fb();else{E=n;F=C}}else{c[17735]=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=71244+(G<<2)|0;c[m+28>>2]=G;c[m+20>>2]=0;c[m+16>>2]=0;E=c[17736]|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[17739]|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[17739]|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[17736]=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[17743]|0)+-1|0;c[17743]=m;if(!m)L=71396;else return;while(1){m=c[L>>2]|0;if(!m)break;else L=m+8|0}c[17743]=-1;return}function Bw(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=zw(e)|0;if(!d)return d|0;if(!(c[d+-4>>2]&3))return d|0;Tw(d|0,0,e|0)|0;return d|0}function Cw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=zw(b)|0;return d|0}if(b>>>0>4294967231){c[(gu()|0)>>2]=12;d=0;return d|0}e=Dw(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e|0){d=e+8|0;return d|0}e=zw(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;Pw(e|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;Aw(a);d=e;return d|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;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[17739]|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[17855]<<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;Ew(l,i);k=a;return k|0}if((g|0)==(c[17741]|0)){i=(c[17738]|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[17741]=i;c[17738]=l;k=a;return k|0}if((g|0)==(c[17740]|0)){l=(c[17737]|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[17737]=q;c[17740]=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=71244+(l<<2)|0;if((g|0)==(c[o>>2]|0)){c[o>>2]=s;if(!s){c[17736]=c[17736]&~(1<<l);break}}else{if(i>>>0<(c[17739]|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[17739]|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[17739]|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=70980+(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[17735]=c[17735]&~(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;Ew(x,f);k=a;return k|0}return 0}function Ew(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[17739]|0;if(g>>>0<i>>>0)fb();if((g|0)==(c[17740]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[17737]=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=70980+(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[17735]=c[17735]&~(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=71244+(j<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[17736]=c[17736]&~(1<<j);l=g;m=h;break}}else{if(f>>>0<(c[17739]|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[17739]|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[17739]|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[17739]|0;if(d>>>0<b>>>0)fb();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){if((d|0)==(c[17741]|0)){u=(c[17738]|0)+m|0;c[17738]=u;c[17741]=l;c[l+4>>2]=u|1;if((l|0)!=(c[17740]|0))return;c[17740]=0;c[17737]=0;return}if((d|0)==(c[17740]|0)){u=(c[17737]|0)+m|0;c[17737]=u;c[17740]=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=71244+(s<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=w;if(!w){c[17736]=c[17736]&~(1<<s);break}}else{if(t>>>0<(c[17739]|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[17739]|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[17739]|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=70980+(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[17735]=c[17735]&~(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[17740]|0)){c[17737]=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=70980+(m<<1<<2)|0;a=c[17735]|0;u=1<<m;if(a&u){m=r+8|0;B=c[m>>2]|0;if(B>>>0<(c[17739]|0)>>>0)fb();else{D=m;E=B}}else{c[17735]=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=71244+(F<<2)|0;c[l+28>>2]=F;c[l+20>>2]=0;c[l+16>>2]=0;D=c[17736]|0;u=1<<F;if(!(D&u)){c[17736]=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[17739]|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[17739]|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 Fw(){}function Gw(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 Hw(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 Iw(a){a=a|0;return 0}function Jw(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 Kw(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=Jw(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>>>((Jw(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=Hw(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;Gw(e|0,k|0,g|0,a|0)|0;i=C;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=Gw(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 Lw(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=Gw(h^a|0,j^b|0,h|0,j|0)|0;b=C;Kw(m,b,Gw(k^d|0,l^e|0,k|0,l|0)|0,C,g)|0;l=Gw(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 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=(b|0)<0?-1:0;return b>>c-32|0}function Nw(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 Ow(a){a=a|0;return 0}function Pw(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 Qw(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 Rw(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 Pw(b,c,d)|0;return b|0}function Sw(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;Kw(a,b,d,e,g)|0;i=f;return (C=c[g+4>>2]|0,c[g>>2]|0)|0}function Tw(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 Uw(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=Gw(e^a|0,f^b|0,e|0,f|0)|0;b=C;a=g^e;e=h^f;return Gw((Kw(i,b,Gw(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 Vw(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Ww(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Kw(a,b,c,d,0)|0}function Xw(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 Yw(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=Xw(e,a)|0;f=C;return (C=(R(b,a)|0)+(R(d,e)|0)+f|f&0,c|0|0)|0}function Zw(){return 0}function _w(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 ax(a,b){a=a|0;b=b|0;ub[a&15](b|0)}function bx(a,b,c){a=a|0;b=b|0;c=c|0;vb[a&7](b|0,c|0)}function cx(a,b){a=a|0;b=b|0;return wb[a&15](b|0)|0}function dx(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 ex(a){a=a|0;yb[a&3]()}function fx(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 gx(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 hx(a,b,c){a=a|0;b=b|0;c=c|0;return Bb[a&7](b|0,c|0)|0}function ix(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 jx(a,b,c){a=a|0;b=b|0;c=c|0;X(0);return 0}function kx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Y(1)}function lx(a){a=a|0;Z(2)}function mx(a,b){a=a|0;b=b|0;_(3)}function nx(a){a=a|0;$(4);return 0}function ox(a,b,c){a=a|0;b=b|0;c=c|0;aa(5)}function px(){ba(6)}function qx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(7);return 0}function rx(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 sx(a,b){a=a|0;b=b|0;ea(9);return 0}function tx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa(10)} +function Dl(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=El(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=Fl(c[h>>2]|0)|0;c[q>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+4|0)|0;c[q+4>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+8|0)|0;c[q+8>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+12|0)|0;c[q+12>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+16|0)|0;c[q+16>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+20|0)|0;c[q+20>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+24|0)|0;c[q+24>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+28|0)|0;c[q+28>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+32|0)|0;c[q+32>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+36|0)|0;c[q+36>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+40|0)|0;c[q+40>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(c[o>>2]|0,5)|0;e=f+(c[m>>2]^c[k>>2]&(c[l>>2]^c[m>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+44|0)|0;c[q+44>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(c[n>>2]|0,5)|0;e=f+(c[l>>2]^c[o>>2]&(c[k>>2]^c[l>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+48|0)|0;c[q+48>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(c[m>>2]|0,5)|0;e=f+(c[k>>2]^c[n>>2]&(c[o>>2]^c[k>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+52|0)|0;c[q+52>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(c[l>>2]|0,5)|0;e=f+(c[o>>2]^c[m>>2]&(c[n>>2]^c[o>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+56|0)|0;c[q+56>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(c[k>>2]|0,5)|0;e=f+(c[n>>2]^c[l>>2]&(c[m>>2]^c[n>>2]))+1518500249|0;f=Fl((c[h>>2]|0)+60|0)|0;c[q+60>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+4>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+8>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+12>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+16>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+20>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+24>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+28>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+32>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+36>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+40>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(c[m>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+44>>2]=f;c[o>>2]=(c[o>>2]|0)+(e+f);c[l>>2]=El(c[l>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+48>>2]=f;c[n>>2]=(c[n>>2]|0)+(e+f);c[k>>2]=El(c[k>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+52>>2]=f;c[m>>2]=(c[m>>2]|0)+(e+f);c[o>>2]=El(c[o>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+56>>2]=f;c[l>>2]=(c[l>>2]|0)+(e+f);c[n>>2]=El(c[n>>2]|0,30)|0;f=El(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=El(c[p>>2]|0,1)|0;c[q+60>>2]=f;c[k>>2]=(c[k>>2]|0)+(e+f);c[m>>2]=El(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 El(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 Fl(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 Gl(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];Br(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}Br(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);Hl((c[f>>2]|0)+56|0,c[k>>2]|0);Hl((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=Cl(c[f>>2]|0,c[f>>2]|0,1)|0;Pe(c[n>>2]|0);Qe();c[m>>2]=c[f>>2];Hl(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Hl(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Hl(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Hl(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Hl(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Hl(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 Il(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 Jl(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]=Kl(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 Kl(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]=42653;c[k>>2]=Ar(2,0,42666,3,42156,20)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42719;c[k>>2]=Ar(2,0,42297,56,42177,20)|0;if(c[k>>2]|0)break;c[h>>2]=42893;c[k>>2]=Ar(2,1,0,0,42198,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](42958,2,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}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;Bl(l,0);Br(l,c[h>>2]|0,c[k>>2]|0);Gl(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(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;Bl(l,0);while(1){if((c[k>>2]|0)<=0)break;Br(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}Gl(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 Nl(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]=bg()|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 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;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]=Pl(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 Pl(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=Ql((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=Rl(c[t+((c[u>>2]|0)-2<<2)>>2]|0,17)|0;e=f^(Rl(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=Rl(c[t+((c[u>>2]|0)-15<<2)>>2]|0,7)|0;b=e^(Rl(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+(Sl(c[n>>2]|0)|0)|0;b=f+(Tl(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0)|0)|0;c[r>>2]=b+(c[7840+(c[u>>2]<<2)>>2]|0)+(c[t+(c[u>>2]<<2)>>2]|0);b=Ul(c[h>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[m>>2]|0)|0)|0;b=f+(Tl(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+1<<2)>>2]|0)+(c[t+((c[u>>2]|0)+1<<2)>>2]|0);b=Ul(c[q>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[l>>2]|0)|0)|0;b=f+(Tl(c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+2<<2)>>2]|0)+(c[t+((c[u>>2]|0)+2<<2)>>2]|0);b=Ul(c[p>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[k>>2]|0)|0)|0;b=f+(Tl(c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+3<<2)>>2]|0)+(c[t+((c[u>>2]|0)+3<<2)>>2]|0);b=Ul(c[o>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[h>>2]|0)|0)|0;b=f+(Tl(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+4<<2)>>2]|0)+(c[t+((c[u>>2]|0)+4<<2)>>2]|0);b=Ul(c[n>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[q>>2]|0)|0)|0;b=f+(Tl(c[q>>2]|0,c[h>>2]|0,c[k>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+5<<2)>>2]|0)+(c[t+((c[u>>2]|0)+5<<2)>>2]|0);b=Ul(c[m>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[p>>2]|0)|0)|0;b=f+(Tl(c[p>>2]|0,c[q>>2]|0,c[h>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+6<<2)>>2]|0)+(c[t+((c[u>>2]|0)+6<<2)>>2]|0);b=Ul(c[l>>2]|0)|0;c[s>>2]=b+(Vl(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+(Sl(c[o>>2]|0)|0)|0;b=f+(Tl(c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0)|0;c[r>>2]=b+(c[7840+((c[u>>2]|0)+7<<2)>>2]|0)+(c[t+((c[u>>2]|0)+7<<2)>>2]|0);b=Ul(c[k>>2]|0)|0;c[s>>2]=b+(Vl(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 Ql(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 Rl(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 Sl(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=Rl(c[d>>2]|0,6)|0;e=a^(Rl(c[d>>2]|0,11)|0);a=e^(Rl(c[d>>2]|0,25)|0);i=b;return a|0}function Tl(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 Ul(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=Rl(c[d>>2]|0,2)|0;e=a^(Rl(c[d>>2]|0,13)|0);a=e^(Rl(c[d>>2]|0,22)|0);i=b;return a|0}function Vl(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 Wl(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];Br(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}Br(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);Xl((c[f>>2]|0)+56|0,c[k>>2]|0);Xl((c[f>>2]|0)+60|0,c[l>>2]|0);c[n>>2]=Ol(c[f>>2]|0,c[f>>2]|0,1)|0;Pe(c[n>>2]|0);Qe();c[m>>2]=c[f>>2];Xl(c[m>>2]|0,c[(c[f>>2]|0)+160>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+164>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+168>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+172>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+176>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+180>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+184>>2]|0);c[m>>2]=(c[m>>2]|0)+4;Xl(c[m>>2]|0,c[(c[f>>2]|0)+188>>2]|0);c[m>>2]=(c[m>>2]|0)+4;i=d;return}function Xl(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 Yl(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 Zl(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]=_l(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 _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]=42653;c[k>>2]=Ar(11,0,42666,3,42268,28)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42719;c[k>>2]=Ar(11,0,42297,56,42354,28)|0;if(c[k>>2]|0)break;c[h>>2]=42893;c[k>>2]=Ar(11,1,0,0,42383,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](42958,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]=42653;c[k>>2]=Ar(8,0,42666,3,42412,32)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42719;c[k>>2]=Ar(8,0,42297,56,42445,32)|0;if(c[k>>2]|0)break;c[h>>2]=42893;c[k>>2]=Ar(8,1,0,0,42478,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](42958,8,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function am(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]=bg()|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 bm(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]=bg()|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 cm(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]=(dm((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 dm(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=em((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=fm(c[f>>2]|0,c[f+4>>2]|0)|0;f=Hw(b|0,w|0,a|0,C|0)|0;a=C;w=m;b=n;x=o;y=hm(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=Hw(f|0,a|0,y|0,C|0)|0;y=72+(c[r>>2]<<3)|0;a=Hw(x|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;x=Hw(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=gm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+112|0;f=gm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+112|0;b=Nw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+72|0;w=Hw(x^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+8|0;b=gm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+8|0;x=gm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+8|0;z=Nw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Hw(w|0,y|0,b^x^z|0,f^C|0)|0;f=q;z=Hw(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=im(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=g;x=h;b=k;y=jm(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=Hw(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=Hw(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=Hw(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=fm(c[a>>2]|0,c[a+4>>2]|0)|0;a=Hw(b|0,y|0,z|0,C|0)|0;z=C;y=l;b=m;x=n;f=hm(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=Hw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+1<<3)|0;z=Hw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+8|0;x=Hw(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=gm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+120|0;a=gm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+120|0;b=Nw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+80|0;y=Hw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+16|0;b=gm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+16|0;x=gm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+16|0;w=Nw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Hw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+8|0;w=a;x=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=p;w=g;b=h;f=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(b|0,f|0,x|0,C|0)|0;x=C;f=k;b=l;w=m;a=hm(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=Hw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+2<<3)|0;x=Hw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+16|0;w=Hw(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=gm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q;z=gm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q;b=Nw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+88|0;f=Hw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+24|0;b=gm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+24|0;w=gm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+24|0;y=Nw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Hw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+16|0;y=z;w=Hw(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=im(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=o;y=p;b=g;a=jm(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=Hw(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=Hw(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=Hw(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=fm(c[x>>2]|0,c[x+4>>2]|0)|0;x=Hw(b|0,a|0,w|0,C|0)|0;w=C;a=h;b=k;y=l;z=hm(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=Hw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+3<<3)|0;w=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+24|0;y=Hw(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=gm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+8|0;x=gm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+8|0;b=Nw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+96|0;a=Hw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+32|0;b=gm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+32|0;y=gm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+32|0;f=Nw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Hw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+24|0;f=x;y=Hw(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=im(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=n;f=o;b=p;z=jm(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=Hw(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=Hw(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=Hw(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=fm(c[w>>2]|0,c[w+4>>2]|0)|0;w=Hw(b|0,z|0,y|0,C|0)|0;y=C;z=g;b=h;f=k;x=hm(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=Hw(w|0,y|0,x|0,C|0)|0;x=72+((c[r>>2]|0)+4<<3)|0;y=Hw(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+32|0;f=Hw(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=gm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+16|0;w=gm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+16|0;b=Nw(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+104|0;z=Hw(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+40|0;b=gm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+40|0;f=gm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+40|0;a=Nw(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=Hw(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+32|0;a=w;f=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=m;a=n;b=o;x=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(b|0,x|0,f|0,C|0)|0;f=C;x=p;b=g;a=h;w=hm(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=Hw(y|0,f|0,w|0,C|0)|0;w=72+((c[r>>2]|0)+5<<3)|0;f=Hw(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+40|0;a=Hw(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=gm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+24|0;y=gm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+24|0;b=Nw(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+112|0;x=Hw(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+48|0;b=gm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+48|0;a=gm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+48|0;z=Nw(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=Hw(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+40|0;z=y;a=Hw(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=im(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=l;z=m;b=n;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[f>>2]|0,c[f+4>>2]|0)|0;f=Hw(b|0,w|0,a|0,C|0)|0;a=C;w=o;b=p;z=g;y=hm(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=Hw(f|0,a|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+6<<3)|0;a=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+48|0;z=Hw(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=gm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+32|0;f=gm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+32|0;b=Nw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+120|0;w=Hw(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+56|0;b=gm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+56|0;z=gm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+56|0;x=Nw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Hw(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+48|0;x=f;z=Hw(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=im(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=k;x=l;b=m;y=jm(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=Hw(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=Hw(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=Hw(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=fm(c[a>>2]|0,c[a+4>>2]|0)|0;a=Hw(b|0,y|0,z|0,C|0)|0;z=C;y=n;b=o;x=p;f=hm(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=Hw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+7<<3)|0;z=Hw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+56|0;x=Hw(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=gm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+40|0;a=gm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+40|0;b=Nw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q;y=Hw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+64|0;b=gm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+64|0;x=gm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+64|0;w=Nw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Hw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+56|0;w=a;x=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=h;w=k;b=l;f=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(b|0,f|0,x|0,C|0)|0;x=C;f=m;b=n;w=o;a=hm(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=Hw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+8<<3)|0;x=Hw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+64|0;w=Hw(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=gm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+48|0;z=gm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+48|0;b=Nw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+8|0;f=Hw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+72|0;b=gm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+72|0;w=gm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+72|0;y=Nw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Hw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+64|0;y=z;w=Hw(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=im(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=g;y=h;b=k;a=jm(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=Hw(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=Hw(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=Hw(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=fm(c[x>>2]|0,c[x+4>>2]|0)|0;x=Hw(b|0,a|0,w|0,C|0)|0;w=C;a=l;b=m;y=n;z=hm(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=Hw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+9<<3)|0;w=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+72|0;y=Hw(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=gm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+56|0;x=gm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+56|0;b=Nw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+16|0;a=Hw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q+80|0;b=gm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q+80|0;y=gm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q+80|0;f=Nw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Hw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+72|0;f=x;y=Hw(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=im(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=p;f=g;b=h;z=jm(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=Hw(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=Hw(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=Hw(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=fm(c[w>>2]|0,c[w+4>>2]|0)|0;w=Hw(b|0,z|0,y|0,C|0)|0;y=C;z=k;b=l;f=m;x=hm(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=Hw(w|0,y|0,x|0,C|0)|0;x=72+((c[r>>2]|0)+10<<3)|0;y=Hw(f|0,C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=q+80|0;f=Hw(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=gm(c[x>>2]|0,c[x+4>>2]|0,19,0)|0;x=C;y=q+64|0;w=gm(c[y>>2]|0,c[y+4>>2]|0,61,0)|0;y=x^C;x=q+64|0;b=Nw(c[x>>2]|0,c[x+4>>2]|0,6)|0;x=q+24|0;z=Hw(f^w^b|0,y^C|0,c[x>>2]|0,c[x+4>>2]|0)|0;x=C;y=q+88|0;b=gm(c[y>>2]|0,c[y+4>>2]|0,1,0)|0;y=C;w=q+88|0;f=gm(c[w>>2]|0,c[w+4>>2]|0,8,0)|0;w=y^C;y=q+88|0;a=Nw(c[y>>2]|0,c[y+4>>2]|0,7)|0;y=Hw(z|0,x|0,b^f^a|0,w^C|0)|0;w=q+80|0;a=w;f=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;w=o;a=p;b=g;x=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(b|0,x|0,f|0,C|0)|0;f=C;x=h;b=k;a=l;w=hm(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=Hw(y|0,f|0,w|0,C|0)|0;w=72+((c[r>>2]|0)+11<<3)|0;f=Hw(a|0,C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=q+88|0;a=Hw(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=gm(c[w>>2]|0,c[w+4>>2]|0,19,0)|0;w=C;f=q+72|0;y=gm(c[f>>2]|0,c[f+4>>2]|0,61,0)|0;f=w^C;w=q+72|0;b=Nw(c[w>>2]|0,c[w+4>>2]|0,6)|0;w=q+32|0;x=Hw(a^y^b|0,f^C|0,c[w>>2]|0,c[w+4>>2]|0)|0;w=C;f=q+96|0;b=gm(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;f=C;y=q+96|0;a=gm(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;y=f^C;f=q+96|0;z=Nw(c[f>>2]|0,c[f+4>>2]|0,7)|0;f=Hw(x|0,w|0,b^a^z|0,y^C|0)|0;y=q+88|0;z=y;a=Hw(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=im(c[f>>2]|0,c[f+4>>2]|0)|0;f=C;y=n;z=o;b=p;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[f>>2]|0,c[f+4>>2]|0)|0;f=Hw(b|0,w|0,a|0,C|0)|0;a=C;w=g;b=h;z=k;y=hm(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=Hw(f|0,a|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+12<<3)|0;a=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=Hw(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=gm(c[y>>2]|0,c[y+4>>2]|0,19,0)|0;y=C;a=q+80|0;f=gm(c[a>>2]|0,c[a+4>>2]|0,61,0)|0;a=y^C;y=q+80|0;b=Nw(c[y>>2]|0,c[y+4>>2]|0,6)|0;y=q+40|0;w=Hw(z^f^b|0,a^C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=C;a=q+104|0;b=gm(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;a=C;f=q+104|0;z=gm(c[f>>2]|0,c[f+4>>2]|0,8,0)|0;f=a^C;a=q+104|0;x=Nw(c[a>>2]|0,c[a+4>>2]|0,7)|0;a=Hw(w|0,y|0,b^z^x|0,f^C|0)|0;f=q+96|0;x=f;z=Hw(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=im(c[a>>2]|0,c[a+4>>2]|0)|0;a=C;f=m;x=n;b=o;y=jm(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=Hw(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=Hw(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=Hw(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=fm(c[a>>2]|0,c[a+4>>2]|0)|0;a=Hw(b|0,y|0,z|0,C|0)|0;z=C;y=p;b=g;x=h;f=hm(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=Hw(a|0,z|0,f|0,C|0)|0;f=72+((c[r>>2]|0)+13<<3)|0;z=Hw(x|0,C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=q+104|0;x=Hw(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=gm(c[f>>2]|0,c[f+4>>2]|0,19,0)|0;f=C;z=q+88|0;a=gm(c[z>>2]|0,c[z+4>>2]|0,61,0)|0;z=f^C;f=q+88|0;b=Nw(c[f>>2]|0,c[f+4>>2]|0,6)|0;f=q+48|0;y=Hw(x^a^b|0,z^C|0,c[f>>2]|0,c[f+4>>2]|0)|0;f=C;z=q+112|0;b=gm(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;z=C;a=q+112|0;x=gm(c[a>>2]|0,c[a+4>>2]|0,8,0)|0;a=z^C;z=q+112|0;w=Nw(c[z>>2]|0,c[z+4>>2]|0,7)|0;z=Hw(y|0,f|0,b^x^w|0,a^C|0)|0;a=q+104|0;w=a;x=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;a=l;w=m;b=n;f=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(b|0,f|0,x|0,C|0)|0;x=C;f=o;b=p;w=g;a=hm(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=Hw(z|0,x|0,a|0,C|0)|0;a=72+((c[r>>2]|0)+14<<3)|0;x=Hw(w|0,C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=q+112|0;w=Hw(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=gm(c[a>>2]|0,c[a+4>>2]|0,19,0)|0;a=C;x=q+96|0;z=gm(c[x>>2]|0,c[x+4>>2]|0,61,0)|0;x=a^C;a=q+96|0;b=Nw(c[a>>2]|0,c[a+4>>2]|0,6)|0;a=q+56|0;f=Hw(w^z^b|0,x^C|0,c[a>>2]|0,c[a+4>>2]|0)|0;a=C;x=q+120|0;b=gm(c[x>>2]|0,c[x+4>>2]|0,1,0)|0;x=C;z=q+120|0;w=gm(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;z=x^C;x=q+120|0;y=Nw(c[x>>2]|0,c[x+4>>2]|0,7)|0;x=Hw(f|0,a|0,b^w^y|0,z^C|0)|0;z=q+112|0;y=z;w=Hw(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=im(c[x>>2]|0,c[x+4>>2]|0)|0;x=C;z=k;y=l;b=m;a=jm(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=Hw(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=Hw(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=Hw(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=fm(c[x>>2]|0,c[x+4>>2]|0)|0;x=Hw(b|0,a|0,w|0,C|0)|0;w=C;a=n;b=o;y=p;z=hm(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=Hw(x|0,w|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+15<<3)|0;w=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+120|0;y=Hw(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=gm(c[z>>2]|0,c[z+4>>2]|0,19,0)|0;z=C;w=q+104|0;x=gm(c[w>>2]|0,c[w+4>>2]|0,61,0)|0;w=z^C;z=q+104|0;b=Nw(c[z>>2]|0,c[z+4>>2]|0,6)|0;z=q+64|0;a=Hw(y^x^b|0,w^C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=C;w=q;b=gm(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;w=C;x=q;y=gm(c[x>>2]|0,c[x+4>>2]|0,8,0)|0;x=w^C;w=q;f=Nw(c[w>>2]|0,c[w+4>>2]|0,7)|0;w=Hw(a|0,z|0,b^y^f|0,x^C|0)|0;x=q+120|0;f=x;y=Hw(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=im(c[w>>2]|0,c[w+4>>2]|0)|0;w=C;x=h;f=k;b=l;z=jm(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=Hw(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=Hw(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=Hw(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=fm(c[t>>2]|0,c[t+4>>2]|0)|0;t=Hw(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=hm(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=Hw(t|0,b|0,y|0,C|0)|0;y=72+(c[r>>2]<<3)|0;b=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q;z=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=hm(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=Hw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+1<<3)|0;z=Hw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+8|0;t=Hw(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=im(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[b>>2]|0,c[b+4>>2]|0)|0;b=Hw(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=hm(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=Hw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+2<<3)|0;t=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+16|0;y=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=hm(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=Hw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+3<<3)|0;y=Hw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+24|0;b=Hw(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=im(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[t>>2]|0,c[t+4>>2]|0)|0;t=Hw(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=hm(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=Hw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+4<<3)|0;b=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+32|0;z=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=hm(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=Hw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+5<<3)|0;z=Hw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+40|0;t=Hw(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=im(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[b>>2]|0,c[b+4>>2]|0)|0;b=Hw(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=hm(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=Hw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+6<<3)|0;t=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+48|0;y=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=hm(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=Hw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+7<<3)|0;y=Hw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+56|0;b=Hw(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=im(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[t>>2]|0,c[t+4>>2]|0)|0;t=Hw(s|0,w|0,b|0,C|0)|0;b=C;w=m;s=n;z=o;y=hm(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=Hw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+8<<3)|0;b=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+64|0;z=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=g;t=h;s=k;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(s|0,w|0,z|0,C|0)|0;z=C;w=l;s=m;t=n;b=hm(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=Hw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+9<<3)|0;z=Hw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+72|0;t=Hw(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=im(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=p;y=g;s=h;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[b>>2]|0,c[b+4>>2]|0)|0;b=Hw(s|0,w|0,t|0,C|0)|0;t=C;w=k;s=l;y=m;z=hm(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=Hw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+10<<3)|0;t=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+80|0;y=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=o;b=p;s=g;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(s|0,w|0,y|0,C|0)|0;y=C;w=h;s=k;b=l;t=hm(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=Hw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+11<<3)|0;y=Hw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+88|0;b=Hw(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=im(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=n;z=o;s=p;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[t>>2]|0,c[t+4>>2]|0)|0;t=Hw(s|0,w|0,b|0,C|0)|0;b=C;w=g;s=h;z=k;y=hm(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=Hw(t|0,b|0,y|0,C|0)|0;y=72+((c[r>>2]|0)+12<<3)|0;b=Hw(z|0,C|0,c[y>>2]|0,c[y+4>>2]|0)|0;y=q+96|0;z=Hw(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=im(c[y>>2]|0,c[y+4>>2]|0)|0;y=C;b=m;t=n;s=o;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[y>>2]|0,c[y+4>>2]|0)|0;y=Hw(s|0,w|0,z|0,C|0)|0;z=C;w=p;s=g;t=h;b=hm(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=Hw(y|0,z|0,b|0,C|0)|0;b=72+((c[r>>2]|0)+13<<3)|0;z=Hw(t|0,C|0,c[b>>2]|0,c[b+4>>2]|0)|0;b=q+104|0;t=Hw(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=im(c[b>>2]|0,c[b+4>>2]|0)|0;b=C;z=l;y=m;s=n;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[b>>2]|0,c[b+4>>2]|0)|0;b=Hw(s|0,w|0,t|0,C|0)|0;t=C;w=o;s=p;y=g;z=hm(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=Hw(b|0,t|0,z|0,C|0)|0;z=72+((c[r>>2]|0)+14<<3)|0;t=Hw(y|0,C|0,c[z>>2]|0,c[z+4>>2]|0)|0;z=q+112|0;y=Hw(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=im(c[z>>2]|0,c[z+4>>2]|0)|0;z=C;t=k;b=l;s=m;w=jm(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=Hw(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=Hw(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=Hw(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=fm(c[z>>2]|0,c[z+4>>2]|0)|0;z=Hw(s|0,w|0,y|0,C|0)|0;y=C;w=n;s=o;b=p;t=hm(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=Hw(z|0,y|0,t|0,C|0)|0;t=72+((c[r>>2]|0)+15<<3)|0;y=Hw(b|0,C|0,c[t>>2]|0,c[t+4>>2]|0)|0;t=q+120|0;b=Hw(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=im(c[t>>2]|0,c[t+4>>2]|0)|0;t=C;y=h;z=k;s=l;w=jm(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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=Hw(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 em(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=Qw(d[c[f>>2]>>0]|0|0,0,56)|0;a=C;g=Qw(d[(c[f>>2]|0)+1>>0]|0|0,0,48)|0;h=a|C;a=Qw(d[(c[f>>2]|0)+2>>0]|0|0,0,40)|0;k=h|C|(d[(c[f>>2]|0)+3>>0]|0);h=Qw(d[(c[f>>2]|0)+4>>0]|0|0,0,24)|0;l=k|C;k=Qw(d[(c[f>>2]|0)+5>>0]|0|0,0,16)|0;m=l|C;l=Qw(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 fm(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=gm(c[b>>2]|0,c[b+4>>2]|0,14,0)|0;b=C;a=e;g=gm(c[a>>2]|0,c[a+4>>2]|0,18,0)|0;a=b^C;b=e;e=gm(c[b>>2]|0,c[b+4>>2]|0,41,0)|0;C=a^C;i=d;return f^g^e|0}function gm(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=Nw(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=Gw(64,0,c[d>>2]|0,c[d+4>>2]|0)|0;d=Qw(g|0,k|0,h|0)|0;C=e|C;i=f;return b|d|0}function hm(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 im(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=gm(c[b>>2]|0,c[b+4>>2]|0,28,0)|0;b=C;a=e;g=gm(c[a>>2]|0,c[a+4>>2]|0,34,0)|0;a=b^C;b=e;e=gm(c[b>>2]|0,c[b+4>>2]|0,39,0)|0;C=a^C;i=d;return f^g^e|0}function jm(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 km(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];Br(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=Qw(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=Qw(c[p>>2]|0,c[p+4>>2]|0,7)|0;p=C;b=h;o=Nw(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=Hw(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=Hw(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=Qw(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=Qw(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=Nw(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}Br(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;lm((c[f>>2]|0)+112|0,c[e>>2]|0,c[e+4>>2]|0);e=m;lm((c[f>>2]|0)+120|0,c[e>>2]|0,c[e+4>>2]|0);c[g>>2]=cm(c[f>>2]|0,c[f>>2]|0,1)|0;Pe(c[g>>2]|0);Qe();c[n>>2]=c[f>>2];g=(c[f>>2]|0)+160|0;lm(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;lm(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;lm(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;lm(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;lm(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;lm(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;lm(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;lm(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 lm(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=Nw(c[g>>2]|0,c[g+4>>2]|0,56)|0;a[c[k>>2]>>0]=e;e=h;g=Nw(c[e>>2]|0,c[e+4>>2]|0,48)|0;a[(c[k>>2]|0)+1>>0]=g;g=h;e=Nw(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=Nw(c[e>>2]|0,c[e+4>>2]|0,24)|0;a[(c[k>>2]|0)+4>>0]=g;g=h;e=Nw(c[g>>2]|0,c[g+4>>2]|0,16)|0;a[(c[k>>2]|0)+5>>0]=e;e=h;g=Nw(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 mm(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 nm(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]=om(c[g>>2]|0,c[h>>2]|0)|0;break}case 10:{c[k>>2]=pm(c[g>>2]|0,c[h>>2]|0)|0;break}default:c[k>>2]=5}i=e;return c[k>>2]|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]=42653;c[k>>2]=Ar(9,0,42666,3,42670,48)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42719;c[k>>2]=Ar(9,0,42731,112,42844,48)|0;if(c[k>>2]|0)break;c[h>>2]=42893;c[k>>2]=Ar(9,1,0,0,42909,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](42958,9,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,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]=42653;c[k>>2]=Ar(10,0,42666,3,42965,64)|0;do if(!(c[k>>2]|0)){if(c[f>>2]|0){c[h>>2]=42719;c[k>>2]=Ar(10,0,42731,112,43030,64)|0;if(c[k>>2]|0)break;c[h>>2]=42893;c[k>>2]=Ar(10,1,0,0,43095,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](42958,10,c[h>>2]|0,c[k>>2]|0);c[e>>2]=50;l=c[e>>2]|0;i=d;return l|0}function qm(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]=bg()|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 rm(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]=sm(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;Pe(47);Qe();i=e;return c[l>>2]|0} +function sm(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[17648]|0)==0?(c[17648]=1,c[17649]=tm()|0,c[17649]|0):0){c[h>>2]=c[17649];He(43495,h)}if(c[17649]|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[43499+((d[c[m>>2]>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+0)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+1)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+1>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+1>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+164)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+68)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+2>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+2>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+138)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+213)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+191)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+3>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+3>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+209)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+127)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+61)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+4>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+4>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+153)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+70)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+102)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+5>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+5>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+150)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+60)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+91)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+6>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+6>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+237)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+55)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+79)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+7>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+7>>0]|0)-1)>>0]|0;a[t>>0]=d[t>>0]^d[43754+((d[J>>0]|0)+224)>>0];a[u>>0]=d[u>>0]^d[43754+((d[J>>0]|0)+208)>>0];a[v>>0]=d[v>>0]^d[43754+((d[J>>0]|0)+140)>>0];a[w>>0]=d[w>>0]^d[43754+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+8>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+8>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+0)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+1)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+9>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+9>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+164)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+68)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+10>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+10>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+138)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+213)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+191)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+11>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+11>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+209)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+127)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+61)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+12>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+12>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+153)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+70)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+102)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+13>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+13>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+150)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+60)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+91)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+14>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+14>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+237)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+55)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+79)>>0];a[A>>0]=d[A>>0]^d[43754+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+15>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+15>>0]|0)-1)>>0]|0;a[x>>0]=d[x>>0]^d[43754+((d[J>>0]|0)+224)>>0];a[y>>0]=d[y>>0]^d[43754+((d[J>>0]|0)+208)>>0];a[z>>0]=d[z>>0]^d[43754+((d[J>>0]|0)+140)>>0];a[A>>0]=d[A>>0]^d[43754+((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[43499+((d[(c[m>>2]|0)+16>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+0)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+1)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+17>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+17>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+164)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+68)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+18>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+18>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+138)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+213)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+191)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+19>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+19>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+209)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+127)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+61)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+20>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+20>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+153)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+70)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+102)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+21>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+21>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+150)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+60)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+91)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+22>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+22>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+237)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+55)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+79)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+23>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+23>>0]|0)-1)>>0]|0;a[B>>0]=d[B>>0]^d[43754+((d[J>>0]|0)+224)>>0];a[C>>0]=d[C>>0]^d[43754+((d[J>>0]|0)+208)>>0];a[D>>0]=d[D>>0]^d[43754+((d[J>>0]|0)+140)>>0];a[E>>0]=d[E>>0]^d[43754+((d[J>>0]|0)+23)>>0]}if(a[(c[m>>2]|0)+24>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+24>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+0)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+1)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+45)>>0]}if(a[(c[m>>2]|0)+25>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+25>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+45)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+164)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+68)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+138)>>0]}if(a[(c[m>>2]|0)+26>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+26>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+138)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+213)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+191)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+209)>>0]}if(a[(c[m>>2]|0)+27>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+27>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+209)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+127)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+61)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+153)>>0]}if(a[(c[m>>2]|0)+28>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+28>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+153)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+70)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+102)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+150)>>0]}if(a[(c[m>>2]|0)+29>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+29>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+150)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+60)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+91)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+237)>>0]}if(a[(c[m>>2]|0)+30>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+30>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+237)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+55)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+79)>>0];a[I>>0]=d[I>>0]^d[43754+((d[J>>0]|0)+224)>>0]}if(a[(c[m>>2]|0)+31>>0]|0){a[J>>0]=a[43499+((d[(c[m>>2]|0)+31>>0]|0)-1)>>0]|0;a[F>>0]=d[F>>0]^d[43754+((d[J>>0]|0)+224)>>0];a[G>>0]=d[G>>0]^d[43754+((d[J>>0]|0)+208)>>0];a[H>>0]=d[H>>0]^d[43754+((d[J>>0]|0)+140)>>0];a[I>>0]=d[I>>0]^d[43754+((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[8352+((d[45014+(d[45014+(d[44758+(d[44246+(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[9376+((d[45014+(d[44758+(d[44758+(d[44246+(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[10400+((d[44758+(d[45014+(d[45014+(d[44246+(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[11424+((d[44758+(d[44758+(d[45014+(d[44246+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[45014+(d[44758+(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[9376+((d[45014+(d[44758+(d[44758+(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[10400+((d[44758+(d[45014+(d[45014+(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[11424+((d[44758+(d[44758+(d[45014+(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[8352+((d[45014+(d[44246+(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[9376+((d[45014+(d[44246+(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[10400+((d[44758+(d[44246+(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[11424+((d[44758+(d[44246+(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[8352+((d[45014+(169^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(117^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(169^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(117^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(103^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(243^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(103^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(179^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(198^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(179^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(198^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(232^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(244^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(232^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(4^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(219^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(4^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(219^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(253^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(123^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(253^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(163^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(251^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(163^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(251^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(118^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(200^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(118^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(154^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(74^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(154^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(74^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(146^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(211^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(146^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(128^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(230^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(128^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(230^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(120^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(107^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(120^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(228^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(69^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(228^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(69^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(221^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(125^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(221^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(209^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(232^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(209^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(232^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(56^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(75^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(56^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(13^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(214^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(13^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(214^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(198^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(50^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(198^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(53^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(216^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(53^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(216^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(152^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(253^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(152^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(24^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(55^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(24^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(55^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(247^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(113^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(247^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(236^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(241^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(236^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(241^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(108^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(225^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(108^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(67^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(48^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(67^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(48^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(117^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(15^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(117^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(55^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(248^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(55^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(248^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(38^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(27^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(38^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(250^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(135^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(250^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(135^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(19^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(250^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(19^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(148^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(6^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(148^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(6^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(72^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(63^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(72^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(242^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(94^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(242^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(94^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(208^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(186^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(208^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(139^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(174^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(139^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(174^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(48^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(91^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(48^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(132^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(138^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(132^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(138^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(84^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(0^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(84^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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[8352+((d[45014+(223^d[(c[m>>2]|0)+8>>0])>>0]^d[c[m>>2]>>0])<<2)>>2]^c[9376+((d[45014+(188^d[(c[m>>2]|0)+9>>0])>>0]^d[(c[m>>2]|0)+1>>0])<<2)>>2]^c[10400+((d[44758+(223^d[(c[m>>2]|0)+10>>0])>>0]^d[(c[m>>2]|0)+2>>0])<<2)>>2]^c[11424+((d[44758+(188^d[(c[m>>2]|0)+11>>0])>>0]^d[(c[m>>2]|0)+3>>0])<<2)>>2];c[s>>2]=c[8352+((d[45014+(35^d[(c[m>>2]|0)+12>>0])>>0]^d[(c[m>>2]|0)+4>>0])<<2)>>2]^c[9376+((d[45014+(157^d[(c[m>>2]|0)+13>>0])>>0]^d[(c[m>>2]|0)+5>>0])<<2)>>2]^c[10400+((d[44758+(35^d[(c[m>>2]|0)+14>>0])>>0]^d[(c[m>>2]|0)+6>>0])<<2)>>2]^c[11424+((d[44758+(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 tm(){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;rm(d,43239,16)|0;um(d,e,43255)|0;do if(!(wv(e,43271,16)|0)){ym(d,e,e)|0;if(wv(e,43255,16)|0){c[b>>2]=43323;break}rm(d,43359,32)|0;um(d,e,43391)|0;if(wv(e,43407,16)|0){c[b>>2]=43423;break}ym(d,e,e)|0;if(wv(e,43391,16)|0){c[b>>2]=43459;break}g=Am()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=Dm()|0;c[f>>2]=g;if(g|0){c[b>>2]=c[f>>2];break}g=Gm()|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]=43287;while(0);i=a;return c[b>>2]|0}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;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];vm(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36}function vm(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]=wm(c[h>>2]|0)|0;c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096>>2];c[l>>2]=wm((c[h>>2]|0)+4|0)|0;c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+4>>2];c[m>>2]=wm((c[h>>2]|0)+8|0)|0;c[m>>2]=c[m>>2]^c[(c[f>>2]|0)+4096+8>>2];c[n>>2]=wm((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];xm(c[g>>2]|0,c[m>>2]|0);c[n>>2]=c[n>>2]^c[(c[f>>2]|0)+4096+20>>2];xm((c[g>>2]|0)+4|0,c[n>>2]|0);c[k>>2]=c[k>>2]^c[(c[f>>2]|0)+4096+24>>2];xm((c[g>>2]|0)+8|0,c[k>>2]|0);c[l>>2]=c[l>>2]^c[(c[f>>2]|0)+4096+28>>2];xm((c[g>>2]|0)+12|0,c[l>>2]|0);i=e;return}function wm(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 xm(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 ym(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];zm(c[k>>2]|0,c[g>>2]|0,c[h>>2]|0);i=e;return 36} // EMSCRIPTEN_END_FUNCS -var Db=[Yx,Fk,Jk,Kk,gl,am,cm,dm,em,fm,wm,Mm,an,en,hn,mn,fs,hs,is,js,ks,ti,ys,Wu,_u,Xu,sv,uf,dw,al,el,vl,pm,Bm,Rm,$u,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx,Yx];var Eb=[Zx,ll,_k,Xk,Uk,pl,sn,vn,pn,Zx,Zx,Zx,Zx,Zx,Zx,Zx];var Fb=[_x,zl,tm,Jm,Zm,jo,Yu,av,Mw,_x,_x,_x,_x,_x,_x,_x];var Gb=[$x,ul,om,Am,Pm,Qm,dn,ws];var Hb=[ay,Bl,_l,bm,vm,Lm,$m,ds,gs,yi,Tu,ay,ay,ay,ay,ay];var Ib=[by,os,tl,Is,pt,Mt,by,by];var Jb=[cy,Nk,Pk,uu];var Kb=[dy,zs,or,Hs,Qt,dy,dy,dy];var Lb=[ey,nl];var Mb=[fy,Rl,nm,_r,ms,pk,Zl,fy];var Nb=[gy,Jh];return{_GNUNET_CRYPTO_rsa_signature_encode:Dd,_GNUNET_CRYPTO_rsa_verify:Rd,_bitshift64Ashr:Dx,_bitshift64Shl:Fx,_bitshift64Lshr:Ex,_GNUNET_CRYPTO_rsa_signature_decode:Pd,_GNUNET_CRYPTO_rsa_blinding_key_encode:Gd,_TALER_WRALL_gen_symmetric_key:jc,_i64Subtract:wx,_GNUNET_CRYPTO_rsa_private_key_get_public:wd,_TALER_WRALL_ecc_ecdh:$b,_memset:xx,_TALER_WRALL_get_encoding_from_rsa_signature:ic,_GNUNET_CRYPTO_eddsa_verify:ad,_TALER_WRALL_hash:Yb,_TALER_amount_normalize:Pu,_TALER_WRALL_rsa_public_key_decode_from_string:hc,_GNUNET_CRYPTO_symmetric_encrypt:Oc,_TALER_WR_get_fraction:tc,_GNUNET_CRYPTO_rsa_unblind:Qd,_TALER_amount_cmp:Ou,_GNUNET_CRYPTO_rsa_blind:Kd,_TALER_WR_get_currency:uc,_GNUNET_CRYPTO_rsa_private_key_free:td,_fflush:tw,_TALER_WRALL_ecdhe_public_key_from_private_key:_b,_DEBUG_WR_get_purpose:pc,_TALER_WRALL_get_amount:qc,_GNUNET_CRYPTO_eddsa_key_create:Zc,_TALER_WRALL_eddsa_public_key_from_private:cc,_llvm_bswap_i32:Cx,_TALER_WR_GNUNET_free:ec,_GNUNET_CRYPTO_ecc_ecdh:bd,_TALER_WRALL_eddsa_private_key_from_string:ac,_TALER_WRALL_amount_add:mc,_GNUNET_CRYPTO_rsa_private_key_decode:vd,_TALER_WRALL_gen_init_vector:kc,_GNUNET_CRYPTO_rsa_signature_free:Od,_TALER_amount_ntoh:Ku,_llvm_cttz_i32:zx,_GNUNET_CRYPTO_ecdhe_key_create:Xc,_TALER_amount_subtract:Ru,_GNUNET_CRYPTO_rsa_blinding_key_decode:Id,_GNUNET_CRYPTO_rsa_private_key_create:sd,_i64Add:yx,_GNUNET_CRYPTO_ecdhe_key_get_public:Uc,_TALER_WRALL_purpose_create:gc,_GNUNET_CRYPTO_rsa_public_key_free:yd,_GNUNET_CRYPTO_rsa_blinding_key_free:Fd,_GNUNET_CRYPTO_eddsa_sign:_c,_TALER_amount_hton:Ju,_GNUNET_CRYPTO_rsa_public_key_decode:Bd,_GNUNET_CRYPTO_rsa_private_key_encode:ud,_GNUNET_CRYPTO_eddsa_key_get_public:Sc,_memcpy:Ax,_GNUNET_CRYPTO_hash:cd,___errno_location:Vu,_TALER_WRALL_eddsa_public_key_from_priv_string:bc,_GNUNET_CRYPTO_rsa_sign_blinded:Ld,_TALER_WR_get_value:sc,_TALER_WR_get_fancy_time:dc,_TALER_amount_add:Su,_free:qx,_TALER_WRALL_make_eddsa_signature:oc,_GNUNET_STRINGS_data_to_string_alloc:Vd,_GNUNET_CRYPTO_symmetric_decrypt:Rc,_GNUNET_STRINGS_string_to_data:Wd,_GNUNET_CRYPTO_hash_create_random:dd,_malloc:px,_TALER_WRALL_sign_test:fc,_GNUNET_CRYPTO_rsa_blinding_key_create:Cd,_TALER_amount_get_zero:Lu,_TALER_WRALL_rsa_public_key_hash:nc,_GNUNET_CRYPTO_hkdf:hd,_TALER_WR_hello_world:rc,_DEBUG_WR_dump_amount:Zb,_memmove:Bx,_GNUNET_CRYPTO_rsa_public_key_encode:zd,_TALER_WRALL_get_current_time:Xb,_TALER_WRALL_gen_key_from_blob:lc,_GNUNET_util_cl_init:Ac,_GNUNET_CRYPTO_random_init:nd,_gpg_err_init:bu,runPostSets:vx,stackAlloc:Ob,stackSave:Pb,stackRestore:Qb,establishStackSpace:Rb,setThrew:Sb,setTempRet0:Vb,getTempRet0:Wb,dynCall_iiii:Nx,dynCall_viiiii:Ox,dynCall_vi:Px,dynCall_vii:Qx,dynCall_ii:Rx,dynCall_viii:Sx,dynCall_v:Tx,dynCall_iiiii:Ux,dynCall_viiiiii:Vx,dynCall_iii:Wx,dynCall_viiii:Xx}}) +var sb=[jx,Sj,Wj,Xj,tk,nl,pl,ql,rl,sl,Jl,Zl,nm,rm,um,ym,sr,ur,vr,wr,xr,Gh,Lr,hu,lu,iu,Fu,Ge,qv,nk,rk,Ik,Cl,Ol,cm,mu,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx,jx];var tb=[kx,yk,lk,ik,fk,Ck,Em,Hm,Bm,kx,kx,kx,kx,kx,kx,kx];var ub=[lx,Mk,Gl,Wl,km,vn,ju,nu,Wv,lx,lx,lx,lx,lx,lx,lx];var vb=[mx,Hk,Bl,Nl,am,bm,qm,Jr];var wb=[nx,Ok,ll,ol,Il,Yl,mm,qr,tr,Lh,eu,nx,nx,nx,nx,nx];var xb=[ox,Br,Gk,Vr,Cs,Zs,ox,ox];var yb=[px,_j,ak,Ht];var zb=[qx,Mr,Bq,Ur,bt,qx,qx,qx];var Ab=[rx,Ak];var Bb=[sx,cl,Al,lr,zr,Cj,kl,sx];var Cb=[tx,Wg];return{_GNUNET_CRYPTO_rsa_signature_encode:Uc,_GNUNET_CRYPTO_rsa_verify:ed,_bitshift64Shl:Qw,_bitshift64Lshr:Nw,_GNUNET_CRYPTO_rsa_blinding_key_encode:Xc,_GNUNET_CRYPTO_rsa_private_key_get_public:Oc,_memset:Tw,_GNUNET_CRYPTO_eddsa_verify:uc,_TALER_amount_normalize:au,_GNUNET_CRYPTO_symmetric_encrypt:hc,_TALER_WR_get_fraction:Ob,_GNUNET_CRYPTO_rsa_unblind:dd,_TALER_amount_cmp:$t,_GNUNET_CRYPTO_rsa_blind:$c,_TALER_WR_get_currency:Pb,_GNUNET_CRYPTO_rsa_private_key_free:Lc,_fflush:Gv,_GNUNET_CRYPTO_hash_create_random:xc,_bitshift64Ashr:Mw,_TALER_WRALL_get_amount:Mb,_GNUNET_CRYPTO_eddsa_key_create:rc,_TALER_WRALL_eddsa_public_key_from_private:Kb,_llvm_bswap_i32:Vw,___muldi3:Yw,_GNUNET_CRYPTO_ecc_ecdh:vc,_GNUNET_CRYPTO_rsa_private_key_decode:Nc,_GNUNET_CRYPTO_symmetric_decrypt:kc,_GNUNET_CRYPTO_rsa_signature_free:bd,___divdi3:Uw,_TALER_amount_ntoh:Xt,_pthread_self:Zw,_GNUNET_CRYPTO_ecdhe_key_create:pc,_TALER_amount_subtract:cu,___udivmoddi4:Kw,_GNUNET_CRYPTO_rsa_blinding_key_decode:Zc,_GNUNET_CRYPTO_rsa_private_key_create:Kc,_i64Add:Hw,_GNUNET_CRYPTO_ecdhe_key_get_public:nc,_TALER_WRALL_purpose_create:Lb,_pthread_mutex_unlock:Ow,_GNUNET_CRYPTO_rsa_public_key_free:Qc,_GNUNET_CRYPTO_rsa_blinding_key_free:Wc,_GNUNET_CRYPTO_hkdf:Bc,_TALER_amount_hton:Wt,_i64Subtract:Gw,_pthread_mutex_lock:Iw,_GNUNET_CRYPTO_rsa_private_key_encode:Mc,_GNUNET_CRYPTO_eddsa_key_get_public:lc,___udivdi3:Ww,___errno_location:gu,___muldsi3:Xw,_TALER_WR_get_value:Nb,_TALER_amount_add:du,_free:Aw,_memcpy:Pw,_GNUNET_STRINGS_data_to_string_alloc:hd,_memmove:Rw,_GNUNET_STRINGS_string_to_data:id,_llvm_cttz_i32:Jw,_GNUNET_CRYPTO_rsa_blinding_key_create:Tc,_malloc:zw,_TALER_amount_get_zero:Yt,_GNUNET_CRYPTO_eddsa_sign:sc,_GNUNET_CRYPTO_rsa_public_key_decode:Sc,_GNUNET_CRYPTO_rsa_public_key_encode:Rc,___remdi3:Lw,_GNUNET_CRYPTO_hash:wc,_GNUNET_CRYPTO_rsa_signature_decode:cd,___uremdi3:Sw,_GNUNET_util_cl_init:Vb,_GNUNET_CRYPTO_random_init:Fc,_gpg_err_init:ot,runPostSets:Fw,stackAlloc:Db,stackSave:Eb,stackRestore:Fb,establishStackSpace:Gb,setThrew:Hb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:_w,dynCall_viiiii:$w,dynCall_vi:ax,dynCall_vii:bx,dynCall_ii:cx,dynCall_viii:dx,dynCall_v:ex,dynCall_iiiii:fx,dynCall_viiiiii:gx,dynCall_iii:hx,dynCall_viiii:ix}}) // 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__DEBUG_WR_get_purpose=asm["_DEBUG_WR_get_purpose"];asm["_DEBUG_WR_get_purpose"]=(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__DEBUG_WR_get_purpose.apply(null,arguments)});var real__TALER_WRALL_rsa_public_key_hash=asm["_TALER_WRALL_rsa_public_key_hash"];asm["_TALER_WRALL_rsa_public_key_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__TALER_WRALL_rsa_public_key_hash.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_blinding_key_encode=asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_encode.apply(null,arguments)});var real__TALER_WRALL_gen_symmetric_key=asm["_TALER_WRALL_gen_symmetric_key"];asm["_TALER_WRALL_gen_symmetric_key"]=(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_gen_symmetric_key.apply(null,arguments)});var real__TALER_WRALL_gen_key_from_blob=asm["_TALER_WRALL_gen_key_from_blob"];asm["_TALER_WRALL_gen_key_from_blob"]=(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_gen_key_from_blob.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_ecc_ecdh=asm["_TALER_WRALL_ecc_ecdh"];asm["_TALER_WRALL_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__TALER_WRALL_ecc_ecdh.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__TALER_WRALL_get_encoding_from_rsa_signature=asm["_TALER_WRALL_get_encoding_from_rsa_signature"];asm["_TALER_WRALL_get_encoding_from_rsa_signature"]=(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_encoding_from_rsa_signature.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__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__TALER_WRALL_hash=asm["_TALER_WRALL_hash"];asm["_TALER_WRALL_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__TALER_WRALL_hash.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__TALER_WRALL_rsa_public_key_decode_from_string=asm["_TALER_WRALL_rsa_public_key_decode_from_string"];asm["_TALER_WRALL_rsa_public_key_decode_from_string"]=(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_rsa_public_key_decode_from_string.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__TALER_WRALL_ecdhe_public_key_from_private_key=asm["_TALER_WRALL_ecdhe_public_key_from_private_key"];asm["_TALER_WRALL_ecdhe_public_key_from_private_key"]=(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_ecdhe_public_key_from_private_key.apply(null,arguments)});var real__GNUNET_CRYPTO_rsa_blinding_key_create=asm["_GNUNET_CRYPTO_rsa_blinding_key_create"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_create.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__TALER_WR_hello_world=asm["_TALER_WR_hello_world"];asm["_TALER_WR_hello_world"]=(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_hello_world.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__TALER_WR_GNUNET_free=asm["_TALER_WR_GNUNET_free"];asm["_TALER_WR_GNUNET_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__TALER_WR_GNUNET_free.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__TALER_WRALL_eddsa_private_key_from_string=asm["_TALER_WRALL_eddsa_private_key_from_string"];asm["_TALER_WRALL_eddsa_private_key_from_string"]=(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_private_key_from_string.apply(null,arguments)});var real__TALER_WRALL_amount_add=asm["_TALER_WRALL_amount_add"];asm["_TALER_WRALL_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_WRALL_amount_add.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__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__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__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__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__GNUNET_CRYPTO_rsa_blinding_key_decode=asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_decode.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__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__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_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__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__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_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__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_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__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__TALER_WRALL_get_current_time=asm["_TALER_WRALL_get_current_time"];asm["_TALER_WRALL_get_current_time"]=(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_current_time.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__TALER_WRALL_eddsa_public_key_from_priv_string=asm["_TALER_WRALL_eddsa_public_key_from_priv_string"];asm["_TALER_WRALL_eddsa_public_key_from_priv_string"]=(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_priv_string.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_WR_get_fancy_time=asm["_TALER_WR_get_fancy_time"];asm["_TALER_WR_get_fancy_time"]=(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_fancy_time.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__TALER_WRALL_make_eddsa_signature=asm["_TALER_WRALL_make_eddsa_signature"];asm["_TALER_WRALL_make_eddsa_signature"]=(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_make_eddsa_signature.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__TALER_WRALL_gen_init_vector=asm["_TALER_WRALL_gen_init_vector"];asm["_TALER_WRALL_gen_init_vector"]=(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_gen_init_vector.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__GNUNET_CRYPTO_rsa_sign_blinded=asm["_GNUNET_CRYPTO_rsa_sign_blinded"];asm["_GNUNET_CRYPTO_rsa_sign_blinded"]=(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_sign_blinded.apply(null,arguments)});var real__TALER_WRALL_sign_test=asm["_TALER_WRALL_sign_test"];asm["_TALER_WRALL_sign_test"]=(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_sign_test.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__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__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__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__DEBUG_WR_dump_amount=asm["_DEBUG_WR_dump_amount"];asm["_DEBUG_WR_dump_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__DEBUG_WR_dump_amount.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_blinding_key_free=asm["_GNUNET_CRYPTO_rsa_blinding_key_free"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_free.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 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 _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 _DEBUG_WR_get_purpose=Module["_DEBUG_WR_get_purpose"]=asm["_DEBUG_WR_get_purpose"];var _TALER_WRALL_rsa_public_key_hash=Module["_TALER_WRALL_rsa_public_key_hash"]=asm["_TALER_WRALL_rsa_public_key_hash"];var _GNUNET_CRYPTO_rsa_blinding_key_encode=Module["_GNUNET_CRYPTO_rsa_blinding_key_encode"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"];var _TALER_WRALL_gen_symmetric_key=Module["_TALER_WRALL_gen_symmetric_key"]=asm["_TALER_WRALL_gen_symmetric_key"];var _TALER_WRALL_gen_key_from_blob=Module["_TALER_WRALL_gen_key_from_blob"]=asm["_TALER_WRALL_gen_key_from_blob"];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_ecc_ecdh=Module["_TALER_WRALL_ecc_ecdh"]=asm["_TALER_WRALL_ecc_ecdh"];var _TALER_WRALL_get_amount=Module["_TALER_WRALL_get_amount"]=asm["_TALER_WRALL_get_amount"];var _TALER_WRALL_get_encoding_from_rsa_signature=Module["_TALER_WRALL_get_encoding_from_rsa_signature"]=asm["_TALER_WRALL_get_encoding_from_rsa_signature"];var _GNUNET_CRYPTO_eddsa_verify=Module["_GNUNET_CRYPTO_eddsa_verify"]=asm["_GNUNET_CRYPTO_eddsa_verify"];var _gpg_err_init=Module["_gpg_err_init"]=asm["_gpg_err_init"];var _TALER_WRALL_hash=Module["_TALER_WRALL_hash"]=asm["_TALER_WRALL_hash"];var _TALER_amount_normalize=Module["_TALER_amount_normalize"]=asm["_TALER_amount_normalize"];var _TALER_WRALL_rsa_public_key_decode_from_string=Module["_TALER_WRALL_rsa_public_key_decode_from_string"]=asm["_TALER_WRALL_rsa_public_key_decode_from_string"];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 _TALER_WRALL_ecdhe_public_key_from_private_key=Module["_TALER_WRALL_ecdhe_public_key_from_private_key"]=asm["_TALER_WRALL_ecdhe_public_key_from_private_key"];var _GNUNET_CRYPTO_rsa_blinding_key_create=Module["_GNUNET_CRYPTO_rsa_blinding_key_create"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_create"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _TALER_WR_hello_world=Module["_TALER_WR_hello_world"]=asm["_TALER_WR_hello_world"];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 _TALER_WR_GNUNET_free=Module["_TALER_WR_GNUNET_free"]=asm["_TALER_WR_GNUNET_free"];var _GNUNET_CRYPTO_ecc_ecdh=Module["_GNUNET_CRYPTO_ecc_ecdh"]=asm["_GNUNET_CRYPTO_ecc_ecdh"];var _TALER_WRALL_eddsa_private_key_from_string=Module["_TALER_WRALL_eddsa_private_key_from_string"]=asm["_TALER_WRALL_eddsa_private_key_from_string"];var _TALER_WRALL_amount_add=Module["_TALER_WRALL_amount_add"]=asm["_TALER_WRALL_amount_add"];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 _TALER_amount_ntoh=Module["_TALER_amount_ntoh"]=asm["_TALER_amount_ntoh"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _TALER_amount_subtract=Module["_TALER_amount_subtract"]=asm["_TALER_amount_subtract"];var _GNUNET_CRYPTO_hash_create_random=Module["_GNUNET_CRYPTO_hash_create_random"]=asm["_GNUNET_CRYPTO_hash_create_random"];var _GNUNET_CRYPTO_rsa_blinding_key_decode=Module["_GNUNET_CRYPTO_rsa_blinding_key_decode"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"];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 _TALER_WRALL_purpose_create=Module["_TALER_WRALL_purpose_create"]=asm["_TALER_WRALL_purpose_create"];var _GNUNET_CRYPTO_rsa_public_key_free=Module["_GNUNET_CRYPTO_rsa_public_key_free"]=asm["_GNUNET_CRYPTO_rsa_public_key_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _GNUNET_CRYPTO_rsa_public_key_encode=Module["_GNUNET_CRYPTO_rsa_public_key_encode"]=asm["_GNUNET_CRYPTO_rsa_public_key_encode"];var _GNUNET_CRYPTO_eddsa_sign=Module["_GNUNET_CRYPTO_eddsa_sign"]=asm["_GNUNET_CRYPTO_eddsa_sign"];var _TALER_amount_hton=Module["_TALER_amount_hton"]=asm["_TALER_amount_hton"];var _GNUNET_util_cl_init=Module["_GNUNET_util_cl_init"]=asm["_GNUNET_util_cl_init"];var _GNUNET_CRYPTO_symmetric_decrypt=Module["_GNUNET_CRYPTO_symmetric_decrypt"]=asm["_GNUNET_CRYPTO_symmetric_decrypt"];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 _GNUNET_CRYPTO_random_init=Module["_GNUNET_CRYPTO_random_init"]=asm["_GNUNET_CRYPTO_random_init"];var _TALER_WRALL_get_current_time=Module["_TALER_WRALL_get_current_time"]=asm["_TALER_WRALL_get_current_time"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _TALER_WRALL_eddsa_public_key_from_priv_string=Module["_TALER_WRALL_eddsa_public_key_from_priv_string"]=asm["_TALER_WRALL_eddsa_public_key_from_priv_string"];var _GNUNET_CRYPTO_rsa_blind=Module["_GNUNET_CRYPTO_rsa_blind"]=asm["_GNUNET_CRYPTO_rsa_blind"];var _TALER_WR_get_fancy_time=Module["_TALER_WR_get_fancy_time"]=asm["_TALER_WR_get_fancy_time"];var _TALER_amount_add=Module["_TALER_amount_add"]=asm["_TALER_amount_add"];var _free=Module["_free"]=asm["_free"];var _TALER_WRALL_make_eddsa_signature=Module["_TALER_WRALL_make_eddsa_signature"]=asm["_TALER_WRALL_make_eddsa_signature"];var _GNUNET_STRINGS_data_to_string_alloc=Module["_GNUNET_STRINGS_data_to_string_alloc"]=asm["_GNUNET_STRINGS_data_to_string_alloc"];var _TALER_WRALL_gen_init_vector=Module["_TALER_WRALL_gen_init_vector"]=asm["_TALER_WRALL_gen_init_vector"];var _GNUNET_STRINGS_string_to_data=Module["_GNUNET_STRINGS_string_to_data"]=asm["_GNUNET_STRINGS_string_to_data"];var _GNUNET_CRYPTO_rsa_sign_blinded=Module["_GNUNET_CRYPTO_rsa_sign_blinded"]=asm["_GNUNET_CRYPTO_rsa_sign_blinded"];var _TALER_WRALL_sign_test=Module["_TALER_WRALL_sign_test"]=asm["_TALER_WRALL_sign_test"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _TALER_amount_get_zero=Module["_TALER_amount_get_zero"]=asm["_TALER_amount_get_zero"];var _GNUNET_CRYPTO_hkdf=Module["_GNUNET_CRYPTO_hkdf"]=asm["_GNUNET_CRYPTO_hkdf"];var _GNUNET_CRYPTO_rsa_public_key_decode=Module["_GNUNET_CRYPTO_rsa_public_key_decode"]=asm["_GNUNET_CRYPTO_rsa_public_key_decode"];var _DEBUG_WR_dump_amount=Module["_DEBUG_WR_dump_amount"]=asm["_DEBUG_WR_dump_amount"];var _memmove=Module["_memmove"]=asm["_memmove"];var _GNUNET_CRYPTO_rsa_blinding_key_free=Module["_GNUNET_CRYPTO_rsa_blinding_key_free"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_free"];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 _GNUNET_CRYPTO_ecdhe_key_create=Module["_GNUNET_CRYPTO_ecdhe_key_create"]=asm["_GNUNET_CRYPTO_ecdhe_key_create"];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}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()}}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() +(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_CRYPTO_rsa_blinding_key_encode=asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_encode.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_blinding_key_decode=asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_decode.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_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__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_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__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__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__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__GNUNET_CRYPTO_rsa_blinding_key_create=asm["_GNUNET_CRYPTO_rsa_blinding_key_create"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_create.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_blinding_key_free=asm["_GNUNET_CRYPTO_rsa_blinding_key_free"];asm["_GNUNET_CRYPTO_rsa_blinding_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_blinding_key_free.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_CRYPTO_rsa_blinding_key_encode=Module["_GNUNET_CRYPTO_rsa_blinding_key_encode"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_encode"];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_blinding_key_decode=Module["_GNUNET_CRYPTO_rsa_blinding_key_decode"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_decode"];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_rsa_public_key_encode=Module["_GNUNET_CRYPTO_rsa_public_key_encode"]=asm["_GNUNET_CRYPTO_rsa_public_key_encode"];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_STRINGS_string_to_data=Module["_GNUNET_STRINGS_string_to_data"]=asm["_GNUNET_STRINGS_string_to_data"];var _GNUNET_CRYPTO_random_init=Module["_GNUNET_CRYPTO_random_init"]=asm["_GNUNET_CRYPTO_random_init"];var _malloc=Module["_malloc"]=asm["_malloc"];var _TALER_amount_get_zero=Module["_TALER_amount_get_zero"]=asm["_TALER_amount_get_zero"];var _GNUNET_CRYPTO_rsa_blinding_key_create=Module["_GNUNET_CRYPTO_rsa_blinding_key_create"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_create"];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_blinding_key_free=Module["_GNUNET_CRYPTO_rsa_blinding_key_free"]=asm["_GNUNET_CRYPTO_rsa_blinding_key_free"];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() diff --git a/lib/wallet/wallet.ts b/lib/wallet/wallet.ts index bae7873f1..d9b529b26 100644 --- a/lib/wallet/wallet.ts +++ b/lib/wallet/wallet.ts @@ -21,7 +21,14 @@ * @author Florian Dold */ -import {AmountJson, CreateReserveResponse, IExchangeInfo, Denomination, Notifier, WireInfo} from "./types"; +import { + AmountJson, + CreateReserveResponse, + IExchangeInfo, + Denomination, + Notifier, + WireInfo +} from "./types"; import {HttpResponse, RequestException} from "./http"; import {Query} from "./query"; import {Checkable} from "./checkable"; @@ -139,7 +146,10 @@ class ExchangeInfo implements IExchangeInfo { .isValidDenom(newDenom, this.masterPublicKey) .then((valid) => { if (!valid) { - console.error("invalid denomination", newDenom, "with key", this.masterPublicKey); + console.error("invalid denomination", + newDenom, + "with key", + this.masterPublicKey); throw Error("signature on denomination invalid"); } return cryptoApi.hashRsaPub(newDenom.denom_pub); @@ -422,10 +432,12 @@ export class Wallet { } handledExchanges.add(info.url); console.log("Checking for merchant's exchange", JSON.stringify(info)); - return [Query(this.db) - .iter("exchanges", {indexName: "pubKey", only: info.master_pub}) - .indexJoin("coins", "exchangeBaseUrl", (exchange) => exchange.baseUrl) - .reduce((x) => storeExchangeCoin(x, info.url))]; + return [ + Query(this.db) + .iter("exchanges", {indexName: "pubKey", only: info.master_pub}) + .indexJoin("coins", "exchangeBaseUrl", (exchange) => exchange.baseUrl) + .reduce((x) => storeExchangeCoin(x, info.url)) + ]; }); return Promise.all(ps).then(() => { @@ -536,23 +548,32 @@ export class Wallet { */ confirmPay(offer: Offer): Promise<any> { console.log("executing confirmPay"); - return Promise.resolve().then(() => { - return this.getPossibleExchangeCoins(offer.contract.amount, - offer.contract.max_fee, - offer.contract.exchanges) - }).then((mcs) => { - if (Object.keys(mcs).length == 0) { - console.log("not confirming payment, insufficient coins"); - return { - error: "coins-insufficient", - }; - } - let exchangeUrl = Object.keys(mcs)[0]; - return this.cryptoApi.signDeposit(offer, mcs[exchangeUrl]) - .then((ds) => this.recordConfirmPay(offer, ds, exchangeUrl)) - .then(() => ({})); - }); + return Query(this.db) + .get("transactions", offer.H_contract) + .then((transaction) => { + if (transaction) { + // Already payed ... + return {}; + } + return Promise.resolve().then(() => { + return this.getPossibleExchangeCoins(offer.contract.amount, + offer.contract.max_fee, + offer.contract.exchanges) + }).then((mcs) => { + if (Object.keys(mcs).length == 0) { + console.log("not confirming payment, insufficient coins"); + return { + error: "coins-insufficient", + }; + } + let exchangeUrl = Object.keys(mcs)[0]; + + return this.cryptoApi.signDeposit(offer, mcs[exchangeUrl]) + .then((ds) => this.recordConfirmPay(offer, ds, exchangeUrl)) + .then(() => ({})); + }); + }); } @@ -562,19 +583,31 @@ export class Wallet { */ checkPay(offer: Offer): Promise<any> { console.log("executing checkPay"); - return Promise.resolve().then(() => { - return this.getPossibleExchangeCoins(offer.contract.amount, - offer.contract.max_fee, - offer.contract.exchanges) - }).then((mcs) => { - if (Object.keys(mcs).length == 0) { - console.log("not confirming payment, insufficient coins"); - return { - error: "coins-insufficient", - }; - } - return {}; - }); + + // First check if we already payed for it. + return Query(this.db) + .get("transactions", offer.H_contract) + .then((transaction) => { + if (transaction) { + return {isPayed: true}; + } + + // If not already payed, check if we could pay for it. + return Promise.resolve().then(() => { + return this.getPossibleExchangeCoins(offer.contract.amount, + offer.contract.max_fee, + offer.contract.exchanges) + }).then((mcs) => { + if (Object.keys(mcs).length == 0) { + console.log("not confirming payment, insufficient coins"); + return { + error: "coins-insufficient", + }; + } + return {isPayed: false}; + }); + + }); } |