summaryrefslogtreecommitdiff
path: root/emscripten
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-05-27 18:43:11 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-05-27 18:43:34 +0200
commitd381226f21f1d0605d06ccae56c38ab6b12f88f0 (patch)
treed431cd99d34227c321daa786a33499cc41a8806b /emscripten
parent67a50513219dd8536ce2d7888a99cbfc3c3cabcb (diff)
downloadwallet-core-d381226f21f1d0605d06ccae56c38ab6b12f88f0.tar.gz
wallet-core-d381226f21f1d0605d06ccae56c38ab6b12f88f0.tar.bz2
wallet-core-d381226f21f1d0605d06ccae56c38ab6b12f88f0.zip
Simplify loading of the emscripten lib.
This removes an ugly hack and makes it possible to access the emscripten compiled library from within nodejs test cases more easily.
Diffstat (limited to 'emscripten')
-rw-r--r--emscripten/README4
-rw-r--r--emscripten/taler-emscripten-lib.js22
2 files changed, 26 insertions, 0 deletions
diff --git a/emscripten/README b/emscripten/README
new file mode 100644
index 000000000..e13ea8ed1
--- /dev/null
+++ b/emscripten/README
@@ -0,0 +1,4 @@
+The taler-emscripten-lib.js is compiled from C using emscripten.
+
+See https://git.taler.net/libtalerutil-emscripten.git for automated build
+instructions and the functions exported from this module.
diff --git a/emscripten/taler-emscripten-lib.js b/emscripten/taler-emscripten-lib.js
new file mode 100644
index 000000000..dcbea842c
--- /dev/null
+++ b/emscripten/taler-emscripten-lib.js
@@ -0,0 +1,22 @@
+var Module;if(!Module)Module=(typeof TalerEmscriptenLib!=="undefined"?TalerEmscriptenLib: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"}}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;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){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){assert(DYNAMICTOP_PTR);var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){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){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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(!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;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){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;var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}Module["stackTrace"]=stackTrace;var PAGE_SIZE=16384;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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function 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))}if(HEAP32[0]!==1668509029)throw"Runtime error: The application has corrupted its heap memory area (address zero)!"}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;if(TOTAL_MEMORY<TOTAL_STACK)Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");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)}assert(buffer.byteLength===TOTAL_MEMORY)}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){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){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var lastChar,end;if(dontAddNull){end=buffer+lengthBytesUTF8(string);lastChar=HEAP8[end]}stringToUTF8(string,buffer,Infinity);if(dontAddNull)HEAP8[end]=lastChar}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}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_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;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+72896;__ATINIT__.push({func:(function(){_GNUNET_util_cl_init()})},{func:(function(){_GNUNET_CRYPTO_random_init()})},{func:(function(){_gpg_err_init()})},{func:(function(){_TALER_gcrypt_init()})});allocate([0,0,0,0,0,0,0,0,102,154,0,127,199,106,69,159,152,186,249,23,254,223,149,34,17,154,0,127,199,106,69,159,152,186,249,23,254,223,149,51,6,154,0,127,199,106,69,159,152,186,249,23,254,223,149,33,255,255,255,255,255,255,255,255,34,174,40,215,152,47,138,66,205,101,239,35,145,68,55,113,47,59,77,236,207,251,192,181,188,219,137,129,165,219,181,233,56,181,72,243,91,194,86,57,25,208,5,182,241,17,241,89,155,79,25,175,164,130,63,146,24,129,109,218,213,94,28,171,66,2,3,163,152,170,7,216,190,111,112,69,1,91,131,18,140,178,228,78,190,133,49,36,226,180,255,213,195,125,12,85,111,137,123,242,116,93,190,114,177,150,22,59,254,177,222,128,53,18,199,37,167,6,220,155,148,38,105,207,116,241,155,193,210,74,241,158,193,105,155,228,227,37,79,56,134,71,190,239,181,213,140,139,198,157,193,15,101,156,172,119,204,161,12,36,117,2,43,89,111,44,233,45,131,228,166,110,170,132,116,74,212,251,65,189,220,169,176,92,181,83,17,131,218,136,249,118,171,223,102,238,82,81,62,152,16,50,180,45,109,198,49,168,63,33,251,152,200,39,3,176,228,14,239,190,199,127,89,191,194,143,168,61,243,11,224,198,37,167,10,147,71,145,167,213,111,130,3,224,81,99,202,6,112,110,14,10,103,41,41,20,252,47,210,70,133,10,183,39,38,201,38,92,56,33,27,46,237,42,196,90,252,109,44,77,223,179,149,157,19,13,56,83,222,99,175,139,84,115,10,101,168,178,119,60,187,10,106,118,230,174,237,71,46,201,194,129,59,53,130,20,133,44,114,146,100,3,241,76,161,232,191,162,1,48,66,188,75,102,26,168,145,151,248,208,112,139,75,194,48,190,84,6,163,81,108,199,24,82,239,214,25,232,146,209,16,169,101,85,36,6,153,214,42,32,113,87,133,53,14,244,184,209,187,50,112,160,106,16,200,208,210,184,22,193,164,25,83,171,65,81,8,108,55,30,153,235,142,223,76,119,72,39,168,72,155,225,181,188,176,52,99,90,201,197,179,12,28,57,203,138,65,227,74,170,216,78,115,227,99,119,79,202,156,91,163,184,178,214,243,111,46,104,252,178,239,93,238,130,143,116,96,47,23,67,111,99,165,120,114,171,240,161,20,120,200,132,236,57,100,26,8,2,199,140,40,30,99,35,250,255,190,144,233,189,130,222,235,108,80,164,21,121,198,178,247,163,249,190,43,83,114,227,242,120,113,198,156,97,38,234,206,62,39,202,7,194,192,33,199,184,134,209,30,235,224,205,214,125,218,234,120,209,110,238,127,79,125,245,186,111,23,114,170,103,240,6,166,152,200,162,197,125,99,10,174,13,249,190,4,152,63,17,27,71,28,19,53,11,113,27,132,125,4,35,245,119,219,40,147,36,199,64,123,171,202,50,188,190,201,21,10,190,158,60,76,13,16,156,196,103,29,67,182,66,62,203,190,212,197,76,42,126,101,252,156,41,127,89,236,250,214,58,171,111,203,95,23,88,71,74,140,25,68,108,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,210,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,145,88,0,0,2,0,0,0,157,88,0,0,4,0,0,0,169,88,0,0,8,0,0,0,181,88,0,0,16,0,0,0,194,88,0,0,32,0,0,0,204,88,0,0,64,0,0,0,215,88,0,0,128,0,0,0,227,88,0,0,0,1,0,0,240,88,0,0,0,2,0,0,252,88,0,0,0,4,0,0,9,89,0,0,0,8,0,0,19,89,0,0,0,16,0,0,30,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,223,139,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,213,98,0,0,24,99,0,0,30,99,0,0,98,99,0,0,165,99,0,0,232,99,0,0,43,100,0,0,147,95,0,0,192,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,48,100,0,0,99,100,0,0,150,100,0,0,201,100,0,0,252,100,0,0,47,101,0,0,98,101,0,0,208,95,0,0,224,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,103,101,0,0,162,101,0,0,221,101,0,0,24,102,0,0,83,102,0,0,142,102,0,0,98,101,0,0,251,95,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,201,102,0,0,12,103,0,0,79,103,0,0,146,103,0,0,213,103,0,0,24,104,0,0,98,101,0,0,56,96,0,0,128,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,91,104,0,0,190,104,0,0,33,105,0,0,132,105,0,0,231,105,0,0,74,106,0,0,98,101,0,0,99,96,0,0,9,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,173,106,0,0,52,107,0,0,187,107,0,0,65,108,0,0,199,108,0,0,78,109,0,0,98,101,0,0,142,96,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,213,109,0,0,0,110,0,0,43,110,0,0,86,110,0,0,129,110,0,0,172,110,0,0,98,101,0,0,179,96,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,215,110,0,0,10,111,0,0,61,111,0,0,112,111,0,0,163,111,0,0,214,111,0,0,98,101,0,0,216,96,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,112,0,0,68,112,0,0,127,112,0,0,186,112,0,0,245,112,0,0,48,113,0,0,98,101,0,0,253,96,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,107,113,0,0,174,113,0,0,241,113,0,0,52,114,0,0,119,114,0,0,186,114,0,0,98,101,0,0,34,97,0,0,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,114,0,0,80,115,0,0,163,115,0,0,246,115,0,0,73,116,0,0,156,116,0,0,98,101,0,0,71,97,0,0,128,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,116,0,0,82,117,0,0,181,117,0,0,24,118,0,0,123,118,0,0,222,118,0,0,98,101,0,0,109,97,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,119,0,0,196,119,0,0,71,120,0,0,202,120,0,0,77,121,0,0,208,121,0,0,98,101,0,0,147,97,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,122,0,0,150,122,0,0,217,122,0,0,28,123,0,0,95,123,0,0,162,123,0,0,98,101,0,0,178,97,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,229,123,0,0,40,124,0,0,107,124,0,0,174,124,0,0,241,124,0,0,52,125,0,0,98,101,0,0,216,97,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,125,0,0,186,125,0,0,253,125,0,0,64,126,0,0,241,124,0,0,131,126,0,0,98,101,0,0,254,97,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,126,0,0,9,127,0,0,76,127,0,0,143,127,0,0,210,127,0,0,21,128,0,0,98,101,0,0,88,128,0,0,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102,128,0,0,150,122,0,0,233,128,0,0,108,129,0,0,239,129,0,0,114,130,0,0,98,101,0,0,118,98,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,245,130,0,0,120,131,0,0,251,131,0,0,126,132,0,0,1,133,0,0,132,133,0,0,98,101,0,0,154,98,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,134,0,0,138,134,0,0,13,135,0,0,144,135,0,0,19,136,0,0,150,136,0,0,98,101,0,0,190,98,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,137,0,0,210,127,0,0,150,122,0,0,92,137,0,0,159,137,0,0,226,137,0,0,98,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,139,0,0,124,95,0,0,147,95,0,0,158,95,0,0,147,95,0,0,178,95,0,0,147,95,0,0,189,95,0,0,147,95,0,0,199,95,0,0,208,95,0,0,219,95,0,0,208,95,0,0,229,95,0,0,208,95,0,0,242,95,0,0,251,95,0,0,6,96,0,0,251,95,0,0,26,96,0,0,251,95,0,0,37,96,0,0,251,95,0,0,47,96,0,0,56,96,0,0,67,96,0,0,56,96,0,0,77,96,0,0,56,96,0,0,90,96,0,0,99,96,0,0,110,96,0,0,99,96,0,0,120,96,0,0,99,96,0,0,133,96,0,0,142,96,0,0,158,96,0,0,179,96,0,0,195,96,0,0,216,96,0,0,232,96,0,0,253,96,0,0,13,97,0,0,34,97,0,0,50,97,0,0,71,97,0,0,87,97,0,0,109,97,0,0,125,97,0,0,147,97,0,0,161,97,0,0,178,97,0,0,199,97,0,0,216,97,0,0,237,97,0,0,254,97,0,0,19,98,0,0,178,97,0,0,36,98,0,0,254,97,0,0,60,98,0,0,178,97,0,0,84,98,0,0,254,97,0,0,101,98,0,0,118,98,0,0,134,98,0,0,154,98,0,0,170,98,0,0,190,98,0,0,200,98,0,0,0,0,0,0,0,0,0,0,79,141,0,0,93,141,0,0,122,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,127,141,0,0,141,141,0,0,150,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,171,141,0,0,186,141,0,0,237,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,2,142,0,0,17,142,0,0,68,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,94,142,0,0,110,142,0,0,165,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,41,143,0,0,58,143,0,0,165,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,79,141,0,0,93,141,0,0,122,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,127,141,0,0,141,141,0,0,150,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,171,141,0,0,186,141,0,0,237,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,2,142,0,0,17,142,0,0,68,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,94,142,0,0,110,142,0,0,165,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,41,143,0,0,58,143,0,0,165,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,79,141,0,0,93,141,0,0,122,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,127,141,0,0,141,141,0,0,150,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,171,141,0,0,186,141,0,0,237,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,2,142,0,0,17,142,0,0,68,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,94,142,0,0,110,142,0,0,165,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,41,143,0,0,58,143,0,0,165,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,79,141,0,0,93,141,0,0,122,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,127,141,0,0,141,141,0,0,150,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,171,141,0,0,186,141,0,0,237,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,2,142,0,0,17,142,0,0,68,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,94,142,0,0,110,142,0,0,165,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,41,143,0,0,58,143,0,0,165,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,193,146,0,0,2,0,0,0,198,146,0,0,1,0,0,0,202,146,0,0,8,0,0,0,209,146,0,0,3,0,0,0,219,146,0,0,3,0,0,0,226,146,0,0,9,0,0,0,233,146,0,0,10,0,0,0,240,146,0,0,11,0,0,0,247,146,0,0,5,0,0,0,251,146,0,0,45,1,0,0,255,146,0,0,6,0,0,0,5,147,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,2,0,0,0,133,147,0,0,64,17,0,0,80,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,215,149,0,0,224,149,0,0,231,149,0,0,0,0,0,0,123,149,0,0,1,0,0,0,146,149,0,0,3,0,0,0,169,149,0,0,5,0,0,0,192,149,0,0,2,0,0,0,0,0,0,0,0,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,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,8,0,0,0,2,0,0,0,239,149,0,0,120,28,0,0,132,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,86,150,0,0,98,150,0,0,0,0,0,0,246,149,0,0,1,0,0,0,14,150,0,0,3,0,0,0,38,150,0,0,5,0,0,0,62,150,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,2,0,0,0,106,150,0,0,236,28,0,0,248,28,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,209,150,0,0,221,150,0,0,0,0,0,0,113,150,0,0,1,0,0,0,137,150,0,0,3,0,0,0,161,150,0,0,5,0,0,0,185,150,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,229,150,0,0,239,150,0,0,15,0,0,0,84,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,254,150,0,0,13,151,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,145,152,0,0,180,29,0,0,149,152,0,0,152,152,0,0,159,152,0,0,161,152,0,0,163,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,245,158,0,0,246,163,0,0,2,164,0,0,0,0,0,0,2,0,0,0,2,0,0,0,27,164,0,0,32,164,0,0,15,0,0,0,248,29,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,110,164,0,0,131,164,0,0,149,164,0,0,163,164,0,0,177,164,0,0,0,0,0,0,11,0,0,0,2,0,0,0,195,164,0,0,202,164,0,0,19,0,0,0,68,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,208,165,0,0,0,0,0,0,8,0,0,0,2,0,0,0,231,165,0,0,238,165,0,0,19,0,0,0,128,30,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,1,166,0,0,24,166,0,0,0,0,0,0,10,0,0,0,2,0,0,0,46,166,0,0,53,166,0,0,19,0,0,0,192,30,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,67,168,0,0,90,168,0,0,0,0,0,0,9,0,0,0,2,0,0,0,112,168,0,0,119,168,0,0,19,0,0,0,0,31,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,138,168,0,0,161,168,0,0,0,0,0,0,10,0,0,0,0,0,0,0,183,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([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,174,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,10,183,0,0,12,49,0,0,14,183,0,0,22,183,0,0,31,183,0,0,34,183,0,0,14,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,191,193,0,0,195,193,0,0,201,193,0,0,206,193,0,0,212,193,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,176,24,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,20,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,8,60,0,0,128,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,184,28,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,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,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,172,63,0,0,3,0,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,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,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,115,110,112,114,105,110,116,102,0,99,111,109,109,111,110,95,108,111,103,103,105,110,103,46,99,0,37,115,45,37,100,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,42,32,37,115,0,37,115,32,37,115,32,37,115,32,37,115,0,69,82,82,79,82,0,87,65,82,78,73,78,71,0,77,69,83,83,65,71,69,0,73,78,70,79,0,68,69,66,85,71,0,78,79,78,69,0,73,78,86,65,76,73,68,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,71,78,85,78,69,84,95,108,111,103,95,115,107,105,112,0,99,114,121,112,116,111,95,115,121,109,109,101,116,114,105,99,46,99,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,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,100,101,99,114,121,112,116,0,99,114,121,112,116,111,95,101,99,99,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,115,97,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,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,100,32,37,98,41,41,41,0,100,101,99,111,100,101,95,112,114,105,118,97,116,101,95,101,99,100,115,97,95,107,101,121,0,103,99,114,121,95,115,101,120,112,95,98,117,105,108,100,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,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,99,100,104,101,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,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,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,115,97,95,107,101,121,95,99,114,101,97,116,101,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,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,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,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,71,78,85,78,69,84,95,67,82,89,80,84,79,95,101,99,100,104,95,101,100,100,115,97,0,99,114,121,112,116,111,95,104,97,115,104,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,104,97,115,104,95,99,111,110,116,101,120,116,95,115,116,97,114,116,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,104,97,115,104,95,99,111,110,116,101,120,116,95,102,105,110,105,115,104,0,99,114,121,112,116,111,95,107,100,102,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,107,100,102,95,109,111,100,95,109,112,105,0,99,114,121],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([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,109,112,105,95,115,99,97,110,0,49,46,54,46,48,0,108,105,98,103,99,114,121,112,116,32,104,97,115,32,110,111,116,32,116,104,101,32,101,120,112,101,99,116,101,100,32,118,101,114,115,105,111,110,32,40,118,101,114,115,105,111,110,32,37,115,32,105,115,32,114,101,113,117,105,114,101,100,41,46,10,0,99,114,121,112,116,111,95,114,97,110,100,111,109,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,105,110,105,116,0,70,97,105,108,101,100,32,116,111,32,115,101,116,32,108,105,98,103,99,114,121,112,116,32,111,112,116,105,111,110,32,37,115,58,32,37,115,10,0,68,73,83,65,66,76,69,95,83,69,67,77,69,77,0,69,78,65,66,76,69,95,81,85,73,67,75,95,82,65,78,68,79,77,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,117,51,50,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,97,110,100,111,109,95,98,108,111,99,107,0,40,103,101,110,107,101,121,40,114,115,97,40,110,98,105,116,115,32,37,100,41,41,41,0,99,114,121,112,116,111,95,114,115,97,46,99,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,99,114,101,97,116,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,101,110,99,111,100,101,0,117,116,105,108,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,100,101,99,111,100,101,0,68,101,99,111,100,101,100,32,112,114,105,118,97,116,101,32,107,101,121,32,105,115,32,110,111,116,32,118,97,108,105,100,10,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,114,105,118,97,116,101,95,107,101,121,95,103,101,116,95,112,117,98,108,105,99,0,69,120,116,101,114,110,97,108,32,112,114,111,116,111,99,111,108,32,118,105,111,108,97,116,105,111,110,32,100,101,116,101,99,116,101,100,32,97,116,32,37,115,58,37,100,46,10,0,40,112,117,98,108,105,99,45,107,101,121,40,114,115,97,40,110,32,37,109,41,40,101,32,37,109,41,41,41,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,112,117,98,108,105,99,95,107,101,121,95,100,101,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,115,105,103,110,97,116,117,114,101,95,101,110,99,111,100,101,0,71,78,85,78,69,84,95,67,82,89,80,84,79,95,114,115,97,95,98,108,105,110,100,0,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,66,108,105,110,100,105,110,103,32,75,68,70,32,101,120,116,114,97,116,111,114,32,72,77,65,67,32,107,101,121,0,114,115,97,95,98,108,105,110,100,105,110,103,95,107,101,121,95,100,101,114,105,118,101,0,66,108,105,110,100,105,110,103,32,75,68,70,0,114,115,97,95,102,117,108,108,95,100,111,109,97,105,110,95,104,97,115,104,0,82,83,65,45,70,68,65,32,70,84,112,115,87,33,0,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,112,114,105,110,116,95,99,111,110,102,105,103,0,115,121,115,116,101,109,0,102,105,112,115,0,115,116,97,110,100,97,114,100,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,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,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,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,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,83,104,117,116,100,111,119,110,0,70,97,116,97,108,45,69,114,114,111,114,0,69,114,114,111,114,0,79,112,101,114,97,116,105,111,110,97,108,0,83,101,108,102,45,84,101,115,116,0,73,110,105,116,0,80,111,119,101,114,45,79,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,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,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,44,32,102,117,110,99,116,105,111,110,32,0,102,97,116,97,108,32,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,49,46,51,46,54,46,49,46,52,46,49,46,49,49,53,57,49,46,49,53,46,49,0,78,73,83,84,32,80,45,49,57,50,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,78,73,83,84,32,80,45,50,50,52,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,78,73,83,84,32,80,45,50,53,54,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,78,73,83,84,32,80,45,51,56,52,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,78,73,83,84,32,80,45,53,50,49,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,98,114,97,105,110,112,111,111,108,80,49,54,48,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,0,98,114,97,105,110,112,111,111,108,80,49,57,50,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,51,0,98,114,97,105,110,112,111,111,108,80,50,50,52,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,53,0,98,114,97,105,110,112,111,111,108,80,50,53,54,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,55,0,98,114,97,105,110,112,111,111,108,80,51,50,48,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,57,0,98,114,97,105,110,112,111,111,108,80,51,56,52,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,49,0,98,114,97,105,110,112,111,111,108,80,53,49,50,114,49,0,49,46,51,46,51,54,46,51,46,51,46,50,46,56,46,49,46,49,46,49,51,0,71,79,83,84,50,48,48,49,45,116,101,115,116,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,48,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,65,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,49,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,66,0,49,46,50,46,54,52,51,46,50,46,50,46,51,53,46,50,0,71,79,83,84,50,48,48,49,45,67,114,121,112,116,111,80,114,111,45,67,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,71,79,83,84,50,48,49,50,45,116,99,50,54,45,65,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,49,0,71,79,83,84,50,48,49,50,45,116,99,50,54,45,66,0,49,46,50,46,54,52,51,46,55,46,49,46,50,46,49,46,50,46,50,0,115,101,99,112,50,53,54,107,49,0,49,46,51,46,49,51,50,46,48,46,49,48,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,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,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,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,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,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,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,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,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,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,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,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([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,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,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,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,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,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,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,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,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,48,120,48,52,0,45,112,97,98,103,110,104,0,98,0,103,0,104,0,100,0,46,120,0,46,121,0,46,122,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,69,100,119,97,114,100,115,0,87,101,105,101,114,115,116,114,97,115,115,0,69,100,50,53,53,49,57,0,83,116,97,110,100,97,114,100,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,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,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,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,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,70,73,80,83,45,49,57,56,97,44,32,65,46,49,0,70,73,80,83,45,49,57,56,97,44,32,65,46,50,0,70,73,80,83,45,49,57,56,97,44,32,65,46,51,0,70,73,80,83,45,49,57,56,97,44,32,65,46,52,0,104,109,97,99,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,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,100,111,101,115,32,110,111,116,32,109,97,116,99,104,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,105,110,118,97,108,105,100,32,116,101,115,116,115,32,100,97,116,97,0,111,105,100,46,0,79,73,68,46,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,109,100,46,99,0,109,100,95,119,114,105,116,101,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,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,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,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,112,114,105,109,101,103,101,110,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,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,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,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,108,97,98,101,108,0,114,97,110,100,111,109,45,111,118,101,114,114,105,100,101,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,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,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,100,101,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,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,0,99,102,98,0,111,102,98,0,108,111,119,45,108,101,118,101,108,0,99,105,112,104,101,114,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,100,101,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,101,110,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,100,101,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,101,110,99,114,121,112,116,105,111,110,32,102,97,105,108,101,100,46,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,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,82,73,74,78,68,65,69,76,0,65,69,83,49,50,56,0,65,69,83,45,49,50,56,0,65,69,83,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,82,73,74,78,68,65,69,76,49,57,50,0,65,69,83,45,49,57,50,0,65,69,83,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,74,78,68,65,69,76,50,53,54,0,65,69,83,45,50,53,54,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,110,101,0,110,101,100,112,113,117,0,97,0,115,0,110,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,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,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,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,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,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,45,118,97,108,0,114,115,97,0,118,97,108,117,101,0,109,105,115,109,97,116,99,104,0,101,110,99,114,121,112,116,32,102,97,105,108,101,100,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,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,99,111,110,118,101,114,116,0,107,101,121,32,99,111,110,115,105,115,116,101,110,99,121,0,115,105,103,110,0,101,110,99,114,121,112,116,0,112,117,98,107,101,121,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([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,110,101,100,112,63,113,63,117,63,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,100,101,99,114,121,112,116,32,100,97,116,97,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,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,116,101,115,116,107,101,121,32,32,32,32,61,62,32,37,115,10,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,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,83,72,65,49,0,48,33,48,9,6,5,43,14,3,2,26,5,0,4,20,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,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,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,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,50,46,49,54,46,56,52,48,46,49,46,49,48,49,46,51,46,52,46,50,46,52,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,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,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,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,115,104,111,114,116,32,115,116,114,105,110,103,0,108,111,110,103,32,115,116,114,105,110,103,0,111,110,101,32,109,105,108,108,105,111,110,32,34,97,34,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,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,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,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,100,101,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,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,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,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,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,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,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,48,32,50,48,49,55,45,48,51,45,49,48,84,50,49,58,51,54,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,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,116,107,101,121,32,102,97,105,108,101,100,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,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,112,97,98,103,110,104,113,0,112,97,98,103,110,104,113,100,0,115,119,0,114,115,0,102,108,97,103,115,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,47,113,0,113,0,99,117,114,118,101,0,112,97,98,103,110,104,113,40,49,58,37,99,37,117,58,0,41,0,112,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,43,69,100,68,83,65,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,101,99,99,95,115,105,103,110,32,32,32,100,97,116,97,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,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,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,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,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,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,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,100,105,103,101,115,116,32,109,105,115,109,97,116,99,104,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,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,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,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,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,243,255,199,112,63,148,0,229,42,125,251,75,61,51,5,217,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,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,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,80,111,108,121,49,51,48,53,32,116,101,115,116,32,51,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,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,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,109,105,120,95,112,111,111,108,0,114,101,97,100,95,112,111,111,108,0,97,100,100,95,114,97,110,100,111,109,110,101,115,115,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,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,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,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,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,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([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,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,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,102,105,112,115,95,114,110,103,95,105,115,95,108,111,99,107,101,100,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,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,120,57,51,49,95,114,101,115,101,101,100,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,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,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,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,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,115,101,108,102,116,101,115,116,95,107,97,116,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,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,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,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,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,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,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,47,100,101,118,47,114,97,110,100,111,109,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,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,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,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,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,49,46,54,46,49,0,108,105,98,103,99,114,121,112,116,32,118,101,114,115,105,111,110,32,109,105,115,109,97,116,99,104,10,0,70,97,116,97,108,32,101,114,114,111,114,32,105,110,32,108,105,98,103,99,114,121,112,116,58,32,37,115,10,0,99,114,121,112,116,111,46,99,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,116,97,108,101,114,45,99,111,105,110,45,100,101,114,105,118,97,116,105,111,110,0,84,65,76,69,82,95,115,101,116,117,112,95,102,114,101,115,104,95,99,111,105,110,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([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,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,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 isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.length<newCapacity)node.contents.push(0)}),resizeFileStorage:(function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize}),node_ops:{getattr:(function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[ERRNO_CODES.ENOENT]}),mknod:(function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)}),rename:(function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir}),unlink:(function(parent,name){delete parent.contents[name]}),rmdir:(function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete parent.contents[name]}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node}),readlink:(function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return node.link})},stream_ops:{read:(function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){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)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{encoding:"binary",canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&146)>>1}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsToPermissionString(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i<res;i++){buffer[offset+i]=nbuffer[i]}}return res}),write:(function(stream,buffer,offset,length,position){var nbuffer=new Buffer(buffer.subarray(offset,offset+length));var res;try{res=fs.writeSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return res}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){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)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=ERRNO_CODES.EEXIST)throw e}}}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];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);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___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:var maxHeapSize=2*1024*1024*1024-16777216;maxHeapSize=HEAPU8.length;return maxHeapSize/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 ___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}}function _pthread_mutex_destroy(){}Module["_memset"]=_memset;Module["_pthread_mutex_lock"]=_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)}Module["_i64Add"]=_i64Add;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["___divdi3"]=___divdi3;function _pthread_mutex_init(){}function ___lock(){}function ___unlock(){}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}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)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}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}}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 ___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)}Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;Module["_sbrk"]=_sbrk;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}Module["___uremdi3"]=___uremdi3;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=_memalign(PAGE_SIZE,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 ___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}}Module["___remdi3"]=___remdi3;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);DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;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;Module["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"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,"___syscall221":___syscall221,"_pthread_mutex_init":_pthread_mutex_init,"___syscall64":___syscall64,"_abort":_abort,"___syscall202":___syscall202,"___syscall20":___syscall20,"_llvm_stackrestore":_llvm_stackrestore,"___assert_fail":___assert_fail,"___buildEnvironment":___buildEnvironment,"__addDays":__addDays,"_localtime_r":_localtime_r,"_tzset":_tzset,"___setErrNo":___setErrNo,"___syscall192":___syscall192,"___syscall197":___syscall197,"___syscall195":___syscall195,"___syscall194":___syscall194,"___syscall199":___syscall199,"_sysconf":_sysconf,"_strftime":_strftime,"_clock":_clock,"__arraySum":__arraySum,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall91":___syscall91,"_pthread_mutex_destroy":_pthread_mutex_destroy,"_llvm_stacksave":_llvm_stacksave,"___syscall77":___syscall77,"_getenv":_getenv,"___syscall33":___syscall33,"___syscall54":___syscall54,"___unlock":___unlock,"__isLeapYear":__isLeapYear,"___syscall3":___syscall3,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"___syscall4":___syscall4,"_time":_time,"_gettimeofday":_gettimeofday,"___syscall201":___syscall201,"_atexit":_atexit,"___syscall140":___syscall140,"_localtime":_localtime,"___syscall142":___syscall142,"___syscall145":___syscall145,"___syscall146":___syscall146,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"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.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0.0;var D=0;var E=global.Math.floor;var F=global.Math.abs;var G=global.Math.sqrt;var H=global.Math.pow;var I=global.Math.cos;var J=global.Math.sin;var K=global.Math.tan;var L=global.Math.acos;var M=global.Math.asin;var N=global.Math.atan;var O=global.Math.atan2;var P=global.Math.exp;var Q=global.Math.log;var R=global.Math.ceil;var S=global.Math.imul;var T=global.Math.min;var U=global.Math.max;var V=global.Math.clz32;var W=env.abort;var X=env.assert;var Y=env.enlargeMemory;var Z=env.getTotalMemory;var _=env.abortOnCannotGrowMemory;var $=env.abortStackOverflow;var aa=env.nullFunc_iiii;var ba=env.nullFunc_viiiii;var ca=env.nullFunc_vi;var da=env.nullFunc_vii;var ea=env.nullFunc_ii;var fa=env.nullFunc_viii;var ga=env.nullFunc_v;var ha=env.nullFunc_iiiii;var ia=env.nullFunc_viiiiii;var ja=env.nullFunc_iii;var ka=env.nullFunc_viiii;var la=env.invoke_iiii;var ma=env.invoke_viiiii;var na=env.invoke_vi;var oa=env.invoke_vii;var pa=env.invoke_ii;var qa=env.invoke_viii;var ra=env.invoke_v;var sa=env.invoke_iiiii;var ta=env.invoke_viiiiii;var ua=env.invoke_iii;var va=env.invoke_viiii;var wa=env.___syscall221;var xa=env._pthread_mutex_init;var ya=env.___syscall64;var za=env._abort;var Aa=env.___syscall202;var Ba=env.___syscall20;var Ca=env._llvm_stackrestore;var Da=env.___assert_fail;var Ea=env.___buildEnvironment;var Fa=env.__addDays;var Ga=env._localtime_r;var Ha=env._tzset;var Ia=env.___setErrNo;var Ja=env.___syscall192;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._pthread_mutex_destroy;var Va=env._llvm_stacksave;var Wa=env.___syscall77;var Xa=env._getenv;var Ya=env.___syscall33;var Za=env.___syscall54;var _a=env.___unlock;var $a=env.__isLeapYear;var ab=env.___syscall3;var bb=env.___lock;var cb=env.___syscall6;var db=env.___syscall5;var eb=env.___syscall4;var fb=env._time;var gb=env._gettimeofday;var hb=env.___syscall201;var ib=env._atexit;var jb=env.___syscall140;var kb=env._localtime;var lb=env.___syscall142;var mb=env.___syscall145;var nb=env.___syscall146;var ob=0.0;
+// EMSCRIPTEN_START_FUNCS
+function Ab(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))$(a|0);return b|0}function Bb(){return l|0}function Cb(a){a=a|0;l=a}function Db(a,b){a=a|0;b=b|0;l=a;m=b}function Eb(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Fb(a){a=a|0;D=a}function Gb(){return D|0}function Hb(a){a=a|0;var b=0;b=Pb(32,19010,38)|0;jc(a,b);return b|0}function Ib(a){a=a|0;var b=0;b=Pb(32,19010,56)|0;hc(a,b);return b|0}function Jb(a){a=a|0;var b=0;b=Pb(32,19010,73)|0;lc(a,b);return b|0}function Kb(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;f=d+8|0;e=Pb(f,19010,87)|0;cr(e+8|0,c|0,d|0)|0;c=Xp(b)|0;d=e+4|0;a[d>>0]=c;a[d+1>>0]=c>>8;a[d+2>>0]=c>>16;a[d+3>>0]=c>>24;d=Xp(f)|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;return e|0}function Lb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))$(32);f=g;if((no(e,f)|0)!=1){f=0;l=g;return f|0}e=f;c[e>>2]=a;c[e+4>>2]=b;c[f+8>>2]=d;e=Pb(24,19010,117)|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];c[e+20>>2]=c[f+20>>2];f=e;l=g;return f|0}function Mb(a){a=a|0;D=c[a+4>>2]|0;return c[a>>2]|0}function Nb(a){a=a|0;return c[a+8>>2]|0}function Ob(a){a=a|0;return a+12|0}function Pb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;if((l|0)>=(m|0))$(64);p=q+24|0;o=q+8|0;n=q;e=q+56|0;f=q+52|0;g=q+48|0;h=q+44|0;i=q+40|0;j=q+36|0;k=q+32|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[e>>2]|0)>>>0>41943040){c[i>>2]=74;if((c[178]|0)==-1)c[178]=Wb(1,0,19017,19037,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[178]|0))Vb();i=c[g>>2]|0;c[n>>2]=c[f>>2];c[n+4>>2]=i;Zb(1,61295,n);Vb()}c[h>>2]=Qb(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;if(c[h>>2]|0){l=q;return c[h>>2]|0}c[j>>2]=81;if((c[179]|0)==-1)c[179]=Wb(1,20980,19017,19037,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[179]|0){q=dp(c[(zo()|0)>>2]|0)|0;c[o>>2]=19053;c[o+4>>2]=19017;c[o+8>>2]=81;c[o+12>>2]=q;cc(1,20980,20531,o)}}else Yb(-1,0);c[k>>2]=82;if((c[180]|0)==-1)c[180]=Wb(1,0,19017,19037,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[180]|0))Vb();c[p>>2]=19017;c[p+4>>2]=82;Zb(1,61295,p);Vb();return 0}function Qb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=h+16|0;f=h+12|0;g=h;c[f>>2]=a;c[h+8>>2]=b;c[h+4>>2]=d;c[g>>2]=Oq(c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=0;g=c[e>>2]|0;l=h;return g|0}else{Yq(c[g>>2]|0,0,c[f>>2]|0)|0;c[e>>2]=c[g>>2];g=c[e>>2]|0;l=h;return g|0}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,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))$(32);i=j;e=j+20|0;f=j+16|0;g=j+12|0;h=j+8|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[e>>2]|0){Pq(c[e>>2]|0);l=j;return}c[h>>2]=311;if((c[181]|0)==-1)c[181]=Wb(1,0,19017,19060,c[h>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[181]|0))Vb();j=c[g>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=j;Zb(1,61295,i);Vb()}function Sb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;i=l;l=l+48|0;if((l|0)>=(m|0))$(48);h=i;o=i+44|0;j=i+40|0;n=i+36|0;f=i+32|0;k=i+16|0;g=i+8|0;c[o>>2]=a;c[j>>2]=b;c[n>>2]=d;c[k>>2]=e;c[f>>2]=mp(c[o>>2]|0,c[j>>2]|0,c[n>>2]|0,k)|0;if((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0){l=i;return c[f>>2]|0}c[g>>2]=506;if((c[182]|0)==-1)c[182]=Wb(1,0,19017,19074,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[182]|0))Vb();c[h>>2]=19017;c[h+4>>2]=506;Zb(1,61295,h);Vb();return 0}function Tb(){c[17562]=c[3935];return}function Ub(){return}function Vb(){za()}function Wb(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,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))$(48);r=s+32|0;k=s+28|0;n=s+24|0;o=s+20|0;p=s+16|0;g=s+12|0;h=s+8|0;i=s+4|0;j=s;c[k>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[g>>2]=f;if(!(c[n>>2]|0))c[n>>2]=c[17563];if((c[17564]|0)>=0&0==(c[17565]|0)){c[r>>2]=(c[k>>2]|0)<=(c[17564]|0)&1;r=c[r>>2]|0;l=s;return r|0}c[j>>2]=(c[17564]|0)>=0&1;c[i>>2]=0;while(1){if((c[i>>2]|0)>=(c[17566]|0))break;c[h>>2]=(c[17567]|0)+((c[i>>2]|0)*112|0);if(!(c[j>>2]|0?!(c[(c[h>>2]|0)+108>>2]|0):0))q=9;if((((((q|0)==9?(q=0,(c[g>>2]|0)>=(c[(c[h>>2]|0)+96>>2]|0)):0)?(c[g>>2]|0)<=(c[(c[h>>2]|0)+100>>2]|0):0)?0==(Kq(c[h>>2]|0,c[n>>2]|0,0,0,0)|0):0)?0==(Kq((c[h>>2]|0)+32|0,c[o>>2]|0,0,0,0)|0):0)?0==(Kq((c[h>>2]|0)+64|0,c[p>>2]|0,0,0,0)|0):0){q=14;break}c[i>>2]=(c[i>>2]|0)+1}if((q|0)==14){c[r>>2]=(c[k>>2]|0)<=(c[(c[h>>2]|0)+104>>2]|0)&1;r=c[r>>2]|0;l=s;return r|0}a=c[k>>2]|0;if((c[17564]|0)>=0){c[r>>2]=(a|0)<=(c[17564]|0)&1;r=c[r>>2]|0;l=s;return r|0}else{c[r>>2]=(a|0)<=4&1;r=c[r>>2]|0;l=s;return r|0}return 0}function Xb(){return c[17572]|0}function Yb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i;d=i+20|0;e=i+16|0;f=i+12|0;g=i+8|0;c[d>>2]=a;c[e>>2]=b;if(c[d>>2]|0){c[17572]=(c[17572]|0)+(c[d>>2]|0);l=i;return}c[f>>2]=0==(c[17572]|0)&1;c[17572]=0;if((c[e>>2]|0)==0|(c[f>>2]|0)!=0){l=i;return}c[g>>2]=906;if((c[184]|0)==-1)c[184]=Wb(1,0,19090,19268,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);l=i;return}if(!(c[184]|0)){l=i;return}c[h>>2]=19090;c[h+4>>2]=906;Zb(1,61295,h);l=i;return}function Zb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=e+20|0;g=e+16|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;_b(c[h>>2]|0,c[17568]|0,c[g>>2]|0,f);l=e;return}function _b(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=l;l=l+240|0;if((l|0)>=(m|0))$(240);y=A+40|0;z=A+32|0;h=A+24|0;s=A+108|0;t=A+104|0;u=A+100|0;v=A+96|0;w=A+176|0;x=A+112|0;j=A+92|0;k=A+88|0;B=A+72|0;g=A+68|0;n=A+64|0;i=A+16|0;o=A+56|0;p=A+8|0;q=A+48|0;r=A;c[s>>2]=b;c[t>>2]=d;c[u>>2]=e;c[v>>2]=f;c[B>>2]=c[c[v>>2]>>2];c[k>>2]=(mp(0,0,c[u>>2]|0,B)|0)+1;if(!(c[k>>2]|0)){c[g>>2]=952;if((c[183]|0)==-1)c[183]=Wb(1,0,19090,19113,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[183]|0))Vb();c[h>>2]=19090;c[h+4>>2]=952;Zb(1,61295,h);Vb()}b=w;d=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));b=c[k>>2]|0;c[n>>2]=Va()|0;g=l;l=l+((1*b|0)+15&-16)|0;if((l|0)>=(m|0))$((1*b|0)+15&-16|0);gb(o|0,0)|0;h=qd()|0;B=i;c[B>>2]=h;c[B+4>>2]=D;B=i;h=c[B+4>>2]|0;B=(h|0)>0|(h|0)==0&(c[B>>2]|0)>>>0>0;h=i;h=br(c[h>>2]|0,c[h+4>>2]|0,1e3,0)|0;f=c[o>>2]|0;h=_q(f|0,((f|0)<0)<<31>>31|0,h|0,D|0)|0;c[o>>2]=h;do if(B){i=or(c[i>>2]|0,c[i+4>>2]|0,1e3,0)|0;i=kr(i|0,D|0,1e3,0)|0;B=o+4|0;h=c[B>>2]|0;i=_q(h|0,((h|0)<0)<<31>>31|0,i|0,D|0)|0;c[B>>2]=i;B=c[o+4>>2]|0;i=((B|0)<0)<<31>>31;if((i|0)>0|(i|0)==0&B>>>0>1e6){B=o+4|0;i=c[B>>2]|0;i=Xq(i|0,((i|0)<0)<<31>>31|0,1e6,0)|0;c[B>>2]=i;c[o>>2]=(c[o>>2]|0)+1}}else{h=c[o+4>>2]|0;e=((h|0)<0)<<31>>31;B=i;B=or(c[B>>2]|0,c[B+4>>2]|0,1e3,0)|0;B=Xq(0,0,B|0,D|0)|0;B=kr(B|0,D|0,1e3,0)|0;f=D;b=i;b=or(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;b=kr(b|0,D|0,1e3,0)|0;d=D;if((e|0)>(f|0)|(e|0)==(f|0)&h>>>0>B>>>0){B=o+4|0;i=c[B>>2]|0;i=_q(i|0,((i|0)<0)<<31>>31|0,b|0,d|0)|0;c[B>>2]=i;break}else{i=_q(1e6,0,b|0,d|0)|0;B=o+4|0;h=c[B>>2]|0;i=_q(h|0,((h|0)<0)<<31>>31|0,i|0,D|0)|0;c[B>>2]=i;c[o>>2]=(c[o>>2]|0)+-1;break}}while(0);c[j>>2]=kb(o|0)|0;if(!(c[j>>2]|0))Mp(w,19119)|0;else{Pa(x|0,64,19135,c[j>>2]|0)|0;c[z>>2]=c[o+4>>2];lp(w,64,x,z)|0}mp(g,c[k>>2]|0,c[u>>2]|0,c[v>>2]|0)|0;B=70224;if(0!=(c[s>>2]&64|0)&(0!=(c[B>>2]|0)?1:0!=(c[B+4>>2]|0))?0==(Jo(g,71362,256)|0):0){c[17569]=(c[17569]|0)+1;c[y>>2]=c[17556];c[y+4>>2]=c[17557];z=ud(y)|0;B=p;c[B>>2]=z;c[B+4>>2]=D;B=p;z=c[B+4>>2]|0;if(z>>>0>10|(z|0)==10&(c[B>>2]|0)>>>0>250327040|(c[17569]|0)>>>0>1e3)$b(w);c[q>>2]=1;B=c[n>>2]|0;Ca(B|0);l=A;return}$b(w);Vp(71362,g,256)|0;c[17569]=0;c[17570]=c[s>>2];z=sd()|0;B=r;c[B>>2]=z;c[B+4>>2]=D;c[17556]=c[r>>2];c[17557]=c[r+4>>2];Vp(71618,c[t>>2]|0,32)|0;ac(c[s>>2]|0,c[t>>2]|0,w,g);c[q>>2]=0;B=c[n>>2]|0;Ca(B|0);l=A;return}function $b(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+640|0;if((l|0)>=(m|0))$(640);d=o+32|0;n=o+16|0;e=o+52|0;f=o+56|0;g=o+48|0;h=o+44|0;i=o+40|0;j=o+8|0;k=o;c[e>>2]=b;b=70224;if((0==(c[b>>2]|0)?0==(c[b+4>>2]|0):0)|0==(c[17569]|0)){l=o;return}c[g>>2]=0;c[h>>2]=No(71362,0,256)|0;if(c[h>>2]|0){if((c[h>>2]|0)!=71362)c[h>>2]=(c[h>>2]|0)+-1}else c[h>>2]=71617;if((a[c[h>>2]>>0]|0)==10){c[g>>2]=1;a[c[h>>2]>>0]=0};c[d>>2]=c[17556];c[d+4>>2]=c[17557];p=ud(d)|0;b=j;c[b>>2]=p;c[b+4>>2]=D;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[i>>2]=ld(d,1)|0;b=c[17569]|0;j=c[i>>2]|0;c[n>>2]=256;c[n+4>>2]=71362;c[n+8>>2]=b;c[n+12>>2]=j;lp(f,576,19219,n)|0;if((c[g>>2]|0)==1)a[c[h>>2]>>0]=10;ac(c[17570]|0,71618,c[e>>2]|0,f);n=sd()|0;p=k;c[p>>2]=n;c[p+4>>2]=D;c[17556]=c[k>>2];c[17557]=c[k+4>>2];c[17569]=0;l=o;return}function ac(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+48|0;if((l|0)>=(m|0))$(48);n=o+8|0;k=o;f=o+40|0;g=o+36|0;h=o+32|0;i=o+28|0;j=o+24|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[i>>2]=e;if(0!=(c[17562]|0)&0==(c[17571]|0)){a=c[17562]|0;if((c[f>>2]|0)==4){c[k>>2]=c[i>>2];Rp(a,19156,k)|0}else{b=c[h>>2]|0;d=c[g>>2]|0;e=bc(c[f>>2]|0)|0;k=c[i>>2]|0;c[n>>2]=b;c[n+4>>2]=d;c[n+8>>2]=e;c[n+12>>2]=k;Rp(a,19161,n)|0}$p(c[17562]|0)|0}c[j>>2]=c[17571];while(1){if(!(c[j>>2]|0))break;qb[c[(c[j>>2]|0)+4>>2]&15](c[(c[j>>2]|0)+8>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[i>>2]|0);c[j>>2]=c[c[j>>2]>>2]}l=o;return}function bc(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=e+4|0;d=e;c[d>>2]=a;do if((c[d>>2]&1|0)<=0){if((c[d>>2]&2|0)>0){c[b>>2]=19179;break}if((c[d>>2]&4|0)>0){c[b>>2]=19187;break}if((c[d>>2]&8|0)>0){c[b>>2]=19195;break}if((c[d>>2]&16|0)>0){c[b>>2]=19200;break}if(!(c[d>>2]&-65)){c[b>>2]=19206;break}else{c[b>>2]=19211;break}}else c[b>>2]=19173;while(0);l=e;return c[b>>2]|0}function cc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+176|0;if((l|0)>=(m|0))$(176);k=n;f=n+32|0;g=n+28|0;h=n+24|0;i=n+8|0;j=n+40|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0))c[g>>2]=c[17563];c[i>>2]=e;g=c[g>>2]|0;e=qq()|0;c[k>>2]=g;c[k+4>>2]=e;Sb(j,128,19107,k)|0;_b(c[f>>2]|0,j,c[h>>2]|0,i);l=n;return}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,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+64|0;if((l|0)>=(m|0))$(64);u=v+8|0;t=v;o=v+56|0;p=v+52|0;q=v+48|0;r=v+44|0;s=v+40|0;g=v+36|0;h=v+32|0;i=v+28|0;j=v+24|0;k=v+20|0;n=v+16|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;c[g>>2]=f;b=c[q>>2]|0;c[i>>2]=Va()|0;a=b;d=l;l=l+((1*a|0)+15&-16)|0;if((l|0)>=(m|0))$((1*a|0)+15&-16|0);if(1!=(ec(h,c[r>>2]|0,c[s>>2]|0)|0)){c[o>>2]=-1;c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}if(ee(c[h>>2]|0,d,c[q>>2]|0,c[p>>2]|0,c[q>>2]|0)|0){c[k>>2]=136;if((c[185]|0)==-1)c[185]=Wb(1,0,19284,19303,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[185]|0))Vb();c[t>>2]=19284;c[t+4>>2]=136;Zb(1,61295,t);Vb()}be(c[h>>2]|0);if(1!=(fc(h,c[r>>2]|0,c[s>>2]|0)|0)){c[o>>2]=-1;c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}if(!(ee(c[h>>2]|0,c[g>>2]|0,c[q>>2]|0,d,c[q>>2]|0)|0)){be(c[h>>2]|0);Yq(d|0,0,b|0)|0;c[o>>2]=c[q>>2];c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}c[n>>2]=140;if((c[186]|0)==-1)c[186]=Wb(1,0,19284,19303,c[n>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[186]|0))Vb();c[u>>2]=19284;c[u+4>>2]=140;Zb(1,61295,u);Vb();return 0}function ec(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;if((l|0)>=(m|0))$(64);p=q+16|0;o=q+8|0;n=q;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;i=q+32|0;j=q+28|0;k=q+24|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(ae(c[e>>2]|0,9,2,0)|0){c[i>>2]=68;if((c[190]|0)==-1)c[190]=Wb(1,0,19284,19356,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[190]|0))Vb();c[n>>2]=19284;c[n+4>>2]=68;Zb(1,61295,n);Vb()}c[h>>2]=ce(c[c[e>>2]>>2]|0,c[f>>2]|0,32)|0;if(0!=(c[h>>2]|0)?((c[h>>2]&255)<<24>>24|0)!=43:0){c[j>>2]=72;if((c[191]|0)==-1)c[191]=Wb(1,0,19284,19356,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[191]|0))Vb();c[o>>2]=19284;c[o+4>>2]=72;Zb(1,61295,o);Vb()}c[h>>2]=de(c[c[e>>2]>>2]|0,c[g>>2]|0,16)|0;if(!(c[h>>2]|0)){l=q;return 1}if(((c[h>>2]&255)<<24>>24|0)==43){l=q;return 1}c[k>>2]=76;if((c[192]|0)==-1)c[192]=Wb(1,0,19284,19356,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[192]|0))Vb();c[p>>2]=19284;c[p+4>>2]=76;Zb(1,61295,p);Vb();return 0}function fc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;if((l|0)>=(m|0))$(64);p=q+16|0;o=q+8|0;n=q;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;i=q+32|0;j=q+28|0;k=q+24|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(ae(c[e>>2]|0,10,2,0)|0){c[i>>2]=98;if((c[187]|0)==-1)c[187]=Wb(1,0,19284,19335,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[187]|0))Vb();c[n>>2]=19284;c[n+4>>2]=98;Zb(1,61295,n);Vb()}c[h>>2]=ce(c[c[e>>2]>>2]|0,(c[f>>2]|0)+32|0,32)|0;if(0!=(c[h>>2]|0)?((c[h>>2]&255)<<24>>24|0)!=43:0){c[j>>2]=102;if((c[188]|0)==-1)c[188]=Wb(1,0,19284,19335,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[188]|0))Vb();c[o>>2]=19284;c[o+4>>2]=102;Zb(1,61295,o);Vb()}c[h>>2]=de(c[c[e>>2]>>2]|0,(c[g>>2]|0)+16|0,16)|0;if(!(c[h>>2]|0)){l=q;return 1}if(((c[h>>2]&255)<<24>>24|0)==43){l=q;return 1}c[k>>2]=106;if((c[189]|0)==-1)c[189]=Wb(1,0,19284,19335,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[189]|0))Vb();c[p>>2]=19284;c[p+4>>2]=106;Zb(1,61295,p);Vb();return 0}function gc(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+64|0;if((l|0)>=(m|0))$(64);u=v+8|0;t=v;o=v+56|0;p=v+52|0;q=v+48|0;r=v+44|0;s=v+40|0;g=v+36|0;h=v+32|0;i=v+28|0;j=v+24|0;k=v+20|0;n=v+16|0;c[p>>2]=a;c[q>>2]=b;c[r>>2]=d;c[s>>2]=e;c[g>>2]=f;b=c[q>>2]|0;c[i>>2]=Va()|0;a=b;d=l;l=l+((1*a|0)+15&-16)|0;if((l|0)>=(m|0))$((1*a|0)+15&-16|0);if(1!=(fc(h,c[r>>2]|0,c[s>>2]|0)|0)){c[o>>2]=-1;c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}if(fe(c[h>>2]|0,d,c[q>>2]|0,c[p>>2]|0,c[q>>2]|0)|0){c[k>>2]=172;if((c[193]|0)==-1)c[193]=Wb(1,0,19284,19373,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[193]|0))Vb();c[t>>2]=19284;c[t+4>>2]=172;Zb(1,61295,t);Vb()}be(c[h>>2]|0);if(1!=(ec(h,c[r>>2]|0,c[s>>2]|0)|0)){c[o>>2]=-1;c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}if(!(fe(c[h>>2]|0,c[g>>2]|0,c[q>>2]|0,d,c[q>>2]|0)|0)){be(c[h>>2]|0);Yq(d|0,0,b|0)|0;c[o>>2]=c[q>>2];c[j>>2]=1;u=c[i>>2]|0;Ca(u|0);u=c[o>>2]|0;l=v;return u|0}c[n>>2]=176;if((c[194]|0)==-1)c[194]=Wb(1,0,19284,19373,c[n>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[194]|0))Vb();c[u>>2]=19284;c[u+4>>2]=176;Zb(1,61295,u);Vb();return 0}function hc(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,n=0,o=0,p=0,q=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=p+16|0;n=p+8|0;k=p;q=p+52|0;d=p+48|0;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;i=p+28|0;j=p+24|0;c[q>>2]=a;c[d>>2]=b;c[e>>2]=ic(c[q>>2]|0)|0;if(!(c[e>>2]|0)){c[h>>2]=231;if((c[195]|0)==-1)c[195]=Wb(1,0,19405,19418,c[h>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[195]|0))Vb();c[k>>2]=19405;c[k+4>>2]=231;Zb(1,61295,k);Vb()}if(Sd(f,c[e>>2]|0,0)|0){c[i>>2]=232;if((c[196]|0)==-1)c[196]=Wb(1,0,19405,19418,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[196]|0))Vb();c[n>>2]=19405;c[n+4>>2]=232;Zb(1,61295,n);Vb()}Cd(c[e>>2]|0);c[g>>2]=Td(19453,c[f>>2]|0,0)|0;if(c[g>>2]|0){Jc(c[d>>2]|0,32,c[g>>2]|0);Id(c[g>>2]|0);ve(c[f>>2]|0);l=p;return}c[j>>2]=235;if((c[197]|0)==-1)c[197]=Wb(1,0,19405,19418,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[197]|0))Vb();c[o>>2]=19405;c[o+4>>2]=235;Zb(1,61295,o);Vb()}function ic(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+64|0;if((l|0)>=(m|0))$(64);h=i+24|0;g=i+8|0;j=i;k=i+48|0;b=i+44|0;d=i+40|0;e=i+36|0;f=i+32|0;c[k>>2]=a;a=c[k>>2]|0;c[j>>2]=32;c[j+4>>2]=a;c[d>>2]=Bd(b,0,19461,j)|0;if(!(c[d>>2]|0)){l=i;return c[b>>2]|0}c[e>>2]=136;if((c[198]|0)==-1)c[198]=Wb(1,20980,19405,19503,c[e>>2]|0)|0;if((Xb()|0)<=0){if(c[198]|0){k=xd(c[d>>2]|0)|0;c[g>>2]=19528;c[g+4>>2]=19405;c[g+8>>2]=136;c[g+12>>2]=k;cc(1,20980,20531,g)}}else Yb(-1,0);c[f>>2]=137;if((c[199]|0)==-1)c[199]=Wb(1,0,19405,19503,c[f>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[199]|0))Vb();c[h>>2]=19405;c[h+4>>2]=137;Zb(1,61295,h);Vb();return 0}function jc(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,n=0,o=0,p=0,q=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=p+16|0;n=p+8|0;k=p;q=p+52|0;d=p+48|0;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;i=p+28|0;j=p+24|0;c[q>>2]=a;c[d>>2]=b;c[e>>2]=kc(c[q>>2]|0)|0;if(!(c[e>>2]|0)){c[h>>2]=257;if((c[200]|0)==-1)c[200]=Wb(1,0,19405,19544,c[h>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[200]|0))Vb();c[k>>2]=19405;c[k+4>>2]=257;Zb(1,61295,k);Vb()}if(Sd(f,c[e>>2]|0,0)|0){c[i>>2]=258;if((c[201]|0)==-1)c[201]=Wb(1,0,19405,19544,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[201]|0))Vb();c[n>>2]=19405;c[n+4>>2]=258;Zb(1,61295,n);Vb()}Cd(c[e>>2]|0);c[g>>2]=Td(19453,c[f>>2]|0,0)|0;if(c[g>>2]|0){Jc(c[d>>2]|0,32,c[g>>2]|0);Id(c[g>>2]|0);ve(c[f>>2]|0);l=p;return}c[j>>2]=261;if((c[202]|0)==-1)c[202]=Wb(1,0,19405,19544,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[202]|0))Vb();c[o>>2]=19405;c[o+4>>2]=261;Zb(1,61295,o);Vb()}function kc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+64|0;if((l|0)>=(m|0))$(64);h=i+24|0;g=i+8|0;j=i;k=i+48|0;b=i+44|0;d=i+40|0;e=i+36|0;f=i+32|0;c[k>>2]=a;a=c[k>>2]|0;c[j>>2]=32;c[j+4>>2]=a;c[d>>2]=Bd(b,0,19579,j)|0;if(!(c[d>>2]|0)){l=i;return c[b>>2]|0}c[e>>2]=169;if((c[203]|0)==-1)c[203]=Wb(1,20980,19405,19634,c[e>>2]|0)|0;if((Xb()|0)<=0){if(c[203]|0){k=xd(c[d>>2]|0)|0;c[g>>2]=19528;c[g+4>>2]=19405;c[g+8>>2]=169;c[g+12>>2]=k;cc(1,20980,20531,g)}}else Yb(-1,0);c[f>>2]=170;if((c[204]|0)==-1)c[204]=Wb(1,0,19405,19634,c[f>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[204]|0))Vb();c[h>>2]=19405;c[h+4>>2]=170;Zb(1,61295,h);Vb();return 0}function lc(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,n=0,o=0,p=0,q=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=p+16|0;n=p+8|0;k=p;q=p+52|0;d=p+48|0;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;i=p+28|0;j=p+24|0;c[q>>2]=a;c[d>>2]=b;c[e>>2]=mc(c[q>>2]|0)|0;if(!(c[e>>2]|0)){c[h>>2]=283;if((c[205]|0)==-1)c[205]=Wb(1,0,19405,19659,c[h>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[205]|0))Vb();c[k>>2]=19405;c[k+4>>2]=283;Zb(1,61295,k);Vb()}if(Sd(f,c[e>>2]|0,0)|0){c[i>>2]=284;if((c[206]|0)==-1)c[206]=Wb(1,0,19405,19659,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[206]|0))Vb();c[n>>2]=19405;c[n+4>>2]=284;Zb(1,61295,n);Vb()}Cd(c[e>>2]|0);c[g>>2]=Td(19453,c[f>>2]|0,0)|0;if(c[g>>2]|0){Jc(c[d>>2]|0,32,c[g>>2]|0);Id(c[g>>2]|0);ve(c[f>>2]|0);l=p;return}c[j>>2]=287;if((c[207]|0)==-1)c[207]=Wb(1,0,19405,19659,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[207]|0))Vb();c[o>>2]=19405;c[o+4>>2]=287;Zb(1,61295,o);Vb()}function mc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+64|0;if((l|0)>=(m|0))$(64);h=i+24|0;g=i+8|0;j=i;k=i+48|0;b=i+44|0;d=i+40|0;e=i+36|0;f=i+32|0;c[k>>2]=a;a=c[k>>2]|0;c[j>>2]=32;c[j+4>>2]=a;c[d>>2]=Bd(b,0,19461,j)|0;if(!(c[d>>2]|0)){l=i;return c[b>>2]|0}c[e>>2]=202;if((c[208]|0)==-1)c[208]=Wb(1,20980,19405,19694,c[e>>2]|0)|0;if((Xb()|0)<=0){if(c[208]|0){k=xd(c[d>>2]|0)|0;c[g>>2]=19528;c[g+4>>2]=19405;c[g+8>>2]=202;c[g+12>>2]=k;cc(1,20980,20531,g)}}else Yb(-1,0);c[f>>2]=203;if((c[209]|0)==-1)c[209]=Wb(1,0,19405,19694,c[f>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[209]|0))Vb();c[h>>2]=19405;c[h+4>>2]=203;Zb(1,61295,h);Vb();return 0}function nc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+96|0;if((l|0)>=(m|0))$(96);n=p+40|0;o=p+24|0;k=p+8|0;a=p+88|0;b=p+84|0;d=p+80|0;e=p+76|0;f=p+72|0;g=p+68|0;h=p+64|0;i=p+60|0;j=p+56|0;q=Bd(e,0,19719,p)|0;c[g>>2]=q;if(q){c[h>>2]=505;if((c[210]|0)==-1)c[210]=Wb(1,20980,19405,19774,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[210]|0){q=xd(c[g>>2]|0)|0;c[k>>2]=19528;c[k+4>>2]=19405;c[k+8>>2]=505;c[k+12>>2]=q;cc(1,20980,20531,k)}}else Yb(-1,0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}q=je(d,c[e>>2]|0)|0;c[g>>2]=q;if(q){c[i>>2]=510;if((c[211]|0)==-1)c[211]=Wb(1,20980,19405,19774,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[211]|0){q=xd(c[g>>2]|0)|0;c[o>>2]=19805;c[o+4>>2]=19405;c[o+8>>2]=510;c[o+12>>2]=q;cc(1,20980,20531,o)}}else Yb(-1,0);Cd(c[e>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}Cd(c[e>>2]|0);q=oc(f,c[d>>2]|0,37667,35384)|0;c[g>>2]=q;if(!q){Cd(c[d>>2]|0);c[b>>2]=Pb(32,19405,530)|0;Jc(c[b>>2]|0,32,c[f>>2]|0);Id(c[f>>2]|0);c[a>>2]=c[b>>2];q=c[a>>2]|0;l=p;return q|0}c[j>>2]=525;if((c[212]|0)==-1)c[212]=Wb(1,20980,19405,19774,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[212]|0){q=xd(c[g>>2]|0)|0;c[n>>2]=19820;c[n+4>>2]=19405;c[n+8>>2]=525;c[n+12>>2]=q;cc(1,20980,20531,n)}}else Yb(-1,0);Cd(c[d>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}function oc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+48|0;if((l|0)>=(m|0))$(48);n=q+36|0;o=q+32|0;s=q+28|0;r=q+24|0;g=q+20|0;p=q+16|0;h=q+12|0;i=q+8|0;j=q+4|0;k=q;c[o>>2]=b;c[s>>2]=d;c[r>>2]=e;c[g>>2]=f;c[p>>2]=Ed(c[s>>2]|0,c[r>>2]|0,0)|0;if(!(c[p>>2]|0)){c[n>>2]=1;s=c[n>>2]|0;l=q;return s|0}c[h>>2]=Fd(c[p>>2]|0)|0;Cd(c[p>>2]|0);c[p>>2]=c[h>>2];if(!(c[p>>2]|0)){c[n>>2]=2;s=c[n>>2]|0;l=q;return s|0}c[k>>2]=0;c[i>>2]=c[g>>2];while(1){d=c[p>>2]|0;if(!(a[c[i>>2]>>0]|0)){b=18;break}c[h>>2]=Ed(d,c[i>>2]|0,1)|0;if(!(c[h>>2]|0)){b=8;break}s=Gd(c[h>>2]|0,1,5)|0;c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]=s;Cd(c[h>>2]|0);if(!(c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]|0)){b=13;break}c[i>>2]=(c[i>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}if((b|0)==8){c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;ye(c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]|0);c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}Cd(c[p>>2]|0);c[n>>2]=3;s=c[n>>2]|0;l=q;return s|0}else if((b|0)==13){c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;ye(c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]|0);c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}Cd(c[p>>2]|0);c[n>>2]=4;s=c[n>>2]|0;l=q;return s|0}else if((b|0)==18){Cd(d);c[n>>2]=0;s=c[n>>2]|0;l=q;return s|0}return 0}function pc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+96|0;if((l|0)>=(m|0))$(96);n=p+40|0;o=p+24|0;k=p+8|0;a=p+88|0;b=p+84|0;d=p+80|0;e=p+76|0;f=p+72|0;g=p+68|0;h=p+64|0;i=p+60|0;j=p+56|0;q=Bd(e,0,19834,p)|0;c[g>>2]=q;if(q){c[h>>2]=555;if((c[213]|0)==-1)c[213]=Wb(1,20980,19405,19872,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[213]|0){q=xd(c[g>>2]|0)|0;c[k>>2]=19528;c[k+4>>2]=19405;c[k+8>>2]=555;c[k+12>>2]=q;cc(1,20980,20531,k)}}else Yb(-1,0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}q=je(d,c[e>>2]|0)|0;c[g>>2]=q;if(q){c[i>>2]=560;if((c[214]|0)==-1)c[214]=Wb(1,20980,19405,19872,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[214]|0){q=xd(c[g>>2]|0)|0;c[o>>2]=19805;c[o+4>>2]=19405;c[o+8>>2]=560;c[o+12>>2]=q;cc(1,20980,20531,o)}}else Yb(-1,0);Cd(c[e>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}Cd(c[e>>2]|0);q=oc(f,c[d>>2]|0,37667,35384)|0;c[g>>2]=q;if(!q){Cd(c[d>>2]|0);c[b>>2]=Pb(32,19405,580)|0;Jc(c[b>>2]|0,32,c[f>>2]|0);Id(c[f>>2]|0);c[a>>2]=c[b>>2];q=c[a>>2]|0;l=p;return q|0}c[j>>2]=575;if((c[215]|0)==-1)c[215]=Wb(1,20980,19405,19872,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[215]|0){q=xd(c[g>>2]|0)|0;c[n>>2]=19820;c[n+4>>2]=19405;c[n+8>>2]=575;c[n+12>>2]=q;cc(1,20980,20531,n)}}else Yb(-1,0);Cd(c[d>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}function qc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+96|0;if((l|0)>=(m|0))$(96);n=p+40|0;o=p+24|0;k=p+8|0;a=p+88|0;b=p+84|0;d=p+80|0;e=p+76|0;f=p+72|0;g=p+68|0;h=p+64|0;i=p+60|0;j=p+56|0;q=Bd(e,0,19903,p)|0;c[g>>2]=q;if(q){c[h>>2]=604;if((c[216]|0)==-1)c[216]=Wb(1,20980,19405,19947,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[216]|0){q=xd(c[g>>2]|0)|0;c[k>>2]=19528;c[k+4>>2]=19405;c[k+8>>2]=604;c[k+12>>2]=q;cc(1,20980,20531,k)}}else Yb(-1,0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}q=je(d,c[e>>2]|0)|0;c[g>>2]=q;if(q){c[i>>2]=609;if((c[217]|0)==-1)c[217]=Wb(1,20980,19405,19947,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[217]|0){q=xd(c[g>>2]|0)|0;c[o>>2]=19805;c[o+4>>2]=19405;c[o+8>>2]=609;c[o+12>>2]=q;cc(1,20980,20531,o)}}else Yb(-1,0);Cd(c[e>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}Cd(c[e>>2]|0);q=oc(f,c[d>>2]|0,37667,35384)|0;c[g>>2]=q;if(!q){Cd(c[d>>2]|0);c[b>>2]=Pb(32,19405,629)|0;Jc(c[b>>2]|0,32,c[f>>2]|0);Id(c[f>>2]|0);c[a>>2]=c[b>>2];q=c[a>>2]|0;l=p;return q|0}c[j>>2]=624;if((c[218]|0)==-1)c[218]=Wb(1,20980,19405,19947,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[218]|0){q=xd(c[g>>2]|0)|0;c[n>>2]=19820;c[n+4>>2]=19405;c[n+8>>2]=624;c[n+12>>2]=q;cc(1,20980,20531,n)}}else Yb(-1,0);Cd(c[d>>2]|0);c[a>>2]=0;q=c[a>>2]|0;l=p;return q|0}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+80|0;if((l|0)>=(m|0))$(80);q=r+16|0;p=r;i=r+68|0;t=r+64|0;s=r+60|0;j=r+56|0;k=r+52|0;n=r+48|0;o=r+44|0;e=r+40|0;f=r+32|0;g=r+28|0;h=r+24|0;c[t>>2]=a;c[s>>2]=b;c[j>>2]=d;c[k>>2]=kc(c[t>>2]|0)|0;c[o>>2]=sc(c[s>>2]|0)|0;d=ge(n,c[o>>2]|0,c[k>>2]|0)|0;c[e>>2]=d;if(d){c[g>>2]=807;if((c[219]|0)==-1)c[219]=Wb(2,20980,19405,19978,c[g>>2]|0)|0;if((Xb()|0)<=0){if(c[219]|0){t=xd(c[e>>2]|0)|0;c[p>>2]=19405;c[p+4>>2]=807;c[p+8>>2]=t;cc(2,20980,20003,p)}}else Yb(-1,0);Cd(c[o>>2]|0);Cd(c[k>>2]|0);c[i>>2]=-1;t=c[i>>2]|0;l=r;return t|0}Cd(c[k>>2]|0);Cd(c[o>>2]|0);t=oc(f,c[n>>2]|0,37529,46882)|0;c[e>>2]=t;if(!t){Cd(c[n>>2]|0);Jc(c[j>>2]|0,32,c[f>>2]|0);Jc((c[j>>2]|0)+32|0,32,c[f+4>>2]|0);Id(c[f>>2]|0);Id(c[f+4>>2]|0);c[i>>2]=1;t=c[i>>2]|0;l=r;return t|0}c[h>>2]=819;if((c[220]|0)==-1)c[220]=Wb(1,0,19405,19978,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[220]|0){c[q>>2]=19405;c[q+4>>2]=819;Zb(1,61295,q)}}else Yb(-1,0);Cd(c[n>>2]|0);c[i>>2]=-1;t=c[i>>2]|0;l=r;return t|0}function sc(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;i=l;l=l+128|0;if((l|0)>=(m|0))$(128);h=i+16|0;j=i;b=i+116|0;o=i+112|0;k=i+48|0;e=i+40|0;f=i+36|0;g=i+32|0;c[o>>2]=a;n=c[o>>2]|0;a=c[o>>2]|0;wc(n,Yp(d[a>>0]|d[a+1>>0]<<8|d[a+2>>0]<<16|d[a+3>>0]<<24)|0,k);c[j>>2]=37609;c[j+4>>2]=64;c[j+8>>2]=k;a=Bd(e,0,20038,j)|0;c[f>>2]=a;if(!a){c[b>>2]=c[e>>2];o=c[b>>2]|0;l=i;return o|0}c[g>>2]=698;if((c[221]|0)==-1)c[221]=Wb(1,20980,19405,20082,c[g>>2]|0)|0;if((Xb()|0)<=0){if(c[221]|0){o=xd(c[f>>2]|0)|0;c[h>>2]=19528;c[h+4>>2]=19405;c[h+8>>2]=698;c[h+12>>2]=o;cc(1,20980,20531,h)}}else Yb(-1,0);c[b>>2]=0;o=c[b>>2]|0;l=i;return o|0}function tc(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=l;l=l+96|0;if((l|0)>=(m|0))$(96);u=w+40|0;t=w+32|0;v=w+16|0;s=w;n=w+92|0;x=w+88|0;o=w+84|0;p=w+80|0;q=w+76|0;r=w+72|0;g=w+68|0;h=w+64|0;i=w+60|0;j=w+56|0;k=w+52|0;c[x>>2]=a;c[o>>2]=b;c[p>>2]=e;c[q>>2]=f;e=c[x>>2]|0;f=(c[o>>2]|0)+4|0;if((e|0)!=(Yp(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)|0)){c[n>>2]=-1;x=c[n>>2]|0;l=w;return x|0}f=c[p>>2]|0;x=(c[p>>2]|0)+32|0;c[s>>2]=32;c[s+4>>2]=f;c[s+8>>2]=32;c[s+12>>2]=x;x=Bd(g,0,20141,s)|0;c[i>>2]=x;if(x){c[j>>2]=918;if((c[222]|0)==-1)c[222]=Wb(1,20980,19405,20170,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[222]|0){x=xd(c[i>>2]|0)|0;c[v>>2]=19528;c[v+4>>2]=19405;c[v+8>>2]=918;c[v+12>>2]=x;cc(1,20980,20531,v)}}else Yb(-1,0);c[n>>2]=-1;x=c[n>>2]|0;l=w;return x|0}c[r>>2]=sc(c[o>>2]|0)|0;x=c[q>>2]|0;c[t>>2]=32;c[t+4>>2]=x;x=Bd(h,0,20197,t)|0;c[i>>2]=x;if(x){Cd(c[r>>2]|0);Cd(c[g>>2]|0);c[n>>2]=-1;x=c[n>>2]|0;l=w;return x|0}c[i>>2]=he(c[g>>2]|0,c[r>>2]|0,c[h>>2]|0)|0;Cd(c[h>>2]|0);Cd(c[r>>2]|0);Cd(c[g>>2]|0);if(!(c[i>>2]|0)){c[n>>2]=1;x=c[n>>2]|0;l=w;return x|0}c[k>>2]=938;if((c[223]|0)==-1)c[223]=Wb(8,20980,19405,20170,c[k>>2]|0)|0;if((Xb()|0)<=0){if(c[223]|0){x=xd(c[i>>2]|0)|0;c[u>>2]=19405;c[u+4>>2]=938;c[u+8>>2]=x;cc(8,20980,20249,u)}}else Yb(-1,0);c[n>>2]=-1;x=c[n>>2]|0;l=w;return x|0}function uc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=l;l=l+144|0;if((l|0)>=(m|0))$(144);w=z+40|0;v=z+32|0;y=z+16|0;x=z+8|0;A=z;p=z+104|0;q=z+100|0;B=z+96|0;r=z+92|0;s=z+88|0;t=z+84|0;u=z+80|0;e=z+76|0;f=z+72|0;g=z+68|0;h=z+112|0;i=z+64|0;j=z+60|0;k=z+56|0;n=z+52|0;o=z+48|0;c[q>>2]=a;c[B>>2]=b;c[r>>2]=d;d=c[B>>2]|0;c[A>>2]=32;c[A+4>>2]=d;if(Bd(f,0,20102,A)|0){c[p>>2]=-1;B=c[p>>2]|0;l=z;return B|0}if(Sd(e,c[f>>2]|0,0)|0){c[j>>2]=972;if((c[224]|0)==-1)c[224]=Wb(1,0,19405,20299,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[224]|0))Vb();c[x>>2]=19405;c[x+4>>2]=972;Zb(1,61295,x);Vb()}Cd(c[f>>2]|0);c[t>>2]=Ud(46923,c[e>>2]|0,0)|0;Lc(u,c[q>>2]|0,32);c[s>>2]=Qd(0)|0;Wd(c[s>>2]|0,c[u>>2]|0,c[t>>2]|0,c[e>>2]|0);Rd(c[t>>2]|0);Id(c[u>>2]|0);c[g>>2]=Hd(256)|0;if(Vd(c[g>>2]|0,0,c[s>>2]|0,c[e>>2]|0)|0){c[k>>2]=989;if((c[225]|0)==-1)c[225]=Wb(1,20980,19405,20299,c[k>>2]|0)|0;if((Xb()|0)<=0){if(c[225]|0){B=xd(0)|0;c[y>>2]=20322;c[y+4>>2]=19405;c[y+8>>2]=989;c[y+12>>2]=B;cc(1,20980,20531,y)}}else Yb(-1,0);Rd(c[s>>2]|0);ve(c[e>>2]|0);c[p>>2]=-1;B=c[p>>2]|0;l=z;return B|0}Rd(c[s>>2]|0);ve(c[e>>2]|0);c[i>>2]=32;if($d(c[g>>2]|0,2)|0){c[n>>2]=998;if((c[226]|0)==-1)c[226]=Wb(1,0,19405,20299,c[n>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[226]|0))Vb();c[v>>2]=19405;c[v+4>>2]=998;Zb(1,61295,v);Vb()}if(!(Ld(1,h,c[i>>2]|0,i,c[g>>2]|0)|0)){wc(h,c[i>>2]|0,c[r>>2]|0);Id(c[g>>2]|0);c[p>>2]=1;B=c[p>>2]|0;l=z;return B|0}c[o>>2]=1005;if((c[227]|0)==-1)c[227]=Wb(1,0,19405,20299,c[o>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[227]|0))Vb();c[w>>2]=19405;c[w+4>>2]=1005;Zb(1,61295,w);Vb();return 0}function vc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=l;l=l+144|0;if((l|0)>=(m|0))$(144);w=z+40|0;v=z+32|0;y=z+16|0;x=z+8|0;A=z;p=z+104|0;q=z+100|0;B=z+96|0;r=z+92|0;s=z+88|0;t=z+84|0;u=z+80|0;e=z+76|0;f=z+72|0;g=z+68|0;h=z+112|0;i=z+64|0;j=z+60|0;k=z+56|0;n=z+52|0;o=z+48|0;c[q>>2]=a;c[B>>2]=b;c[r>>2]=d;d=c[B>>2]|0;c[A>>2]=32;c[A+4>>2]=d;if(Bd(f,0,20102,A)|0){c[p>>2]=-1;B=c[p>>2]|0;l=z;return B|0}if(Sd(e,c[f>>2]|0,0)|0){c[j>>2]=1403;if((c[228]|0)==-1)c[228]=Wb(1,0,19405,20340,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[228]|0))Vb();c[x>>2]=19405;c[x+4>>2]=1403;Zb(1,61295,x);Vb()}Cd(c[f>>2]|0);c[t>>2]=Ud(46923,c[e>>2]|0,0)|0;Lc(u,c[q>>2]|0,32);c[s>>2]=Qd(0)|0;Wd(c[s>>2]|0,c[u>>2]|0,c[t>>2]|0,c[e>>2]|0);Rd(c[t>>2]|0);Id(c[u>>2]|0);c[g>>2]=Hd(256)|0;if(Vd(c[g>>2]|0,0,c[s>>2]|0,c[e>>2]|0)|0){c[k>>2]=1420;if((c[229]|0)==-1)c[229]=Wb(1,20980,19405,20340,c[k>>2]|0)|0;if((Xb()|0)<=0){if(c[229]|0){B=xd(0)|0;c[y>>2]=20322;c[y+4>>2]=19405;c[y+8>>2]=1420;c[y+12>>2]=B;cc(1,20980,20531,y)}}else Yb(-1,0);Rd(c[s>>2]|0);ve(c[e>>2]|0);c[p>>2]=-1;B=c[p>>2]|0;l=z;return B|0}Rd(c[s>>2]|0);ve(c[e>>2]|0);c[i>>2]=32;if($d(c[g>>2]|0,2)|0){c[n>>2]=1429;if((c[230]|0)==-1)c[230]=Wb(1,0,19405,20340,c[n>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[230]|0))Vb();c[v>>2]=19405;c[v+4>>2]=1429;Zb(1,61295,v);Vb()}if(!(Ld(1,h,c[i>>2]|0,i,c[g>>2]|0)|0)){wc(h,c[i>>2]|0,c[r>>2]|0);Id(c[g>>2]|0);c[p>>2]=1;B=c[p>>2]|0;l=z;return B|0}c[o>>2]=1436;if((c[231]|0)==-1)c[231]=Wb(1,0,19405,20340,c[o>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[231]|0))Vb();c[w>>2]=19405;c[w+4>>2]=1436;Zb(1,61295,w);Vb();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=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[f>>2]=b;c[h>>2]=d;pe(10,c[h>>2]|0,c[g>>2]|0,c[f>>2]|0);l=e;return}function xc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=15;while(1){if((c[f>>2]|0)<0)break;b=Nc(c[d>>2]|0,-1)|0;c[(c[e>>2]|0)+(c[f>>2]<<2)>>2]=b;c[f>>2]=(c[f>>2]|0)+-1}l=g;return}function yc(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;a=e+12|0;b=e+8|0;c[a>>2]=Pb(4,20365,425)|0;if(!(ke(c[a>>2]|0,10,0)|0)){l=e;return c[a>>2]|0}c[b>>2]=429;if((c[232]|0)==-1)c[232]=Wb(1,0,20365,20379,c[b>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[232]|0))Vb();c[d>>2]=20365;c[d+4>>2]=429;Zb(1,61295,d);Vb();return 0}function zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;ne(c[c[h>>2]>>2]|0,c[g>>2]|0,c[f>>2]|0);l=e;return}function Ac(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=j;i=j+20|0;e=j+16|0;h=j+12|0;f=j+8|0;c[i>>2]=b;c[e>>2]=d;c[h>>2]=oe(c[c[i>>2]>>2]|0,0)|0;if(c[h>>2]|0){if(!(c[e>>2]|0)){i=c[i>>2]|0;Bc(i);l=j;return}e=c[e>>2]|0;b=c[h>>2]|0;d=e+64|0;do{a[e>>0]=a[b>>0]|0;e=e+1|0;b=b+1|0}while((e|0)<(d|0));i=c[i>>2]|0;Bc(i);l=j;return}c[f>>2]=462;if((c[233]|0)==-1)c[233]=Wb(1,0,20365,20412,c[f>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[233]|0))Vb();c[g>>2]=20365;c[g+4>>2]=462;Zb(1,61295,g);Vb()}function Bc(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;le(c[c[d>>2]>>2]|0);Rb(c[d>>2]|0,20365,480);l=b;return}function Cc(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;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,T=0,U=0;U=l;l=l+144|0;if((l|0)>=(m|0))$(144);S=U+136|0;G=U+132|0;n=U+128|0;o=U+124|0;p=U+120|0;q=U+116|0;r=U+112|0;s=U+108|0;t=U+104|0;w=U+100|0;H=U+96|0;I=U+92|0;J=U+88|0;x=U+84|0;K=U+80|0;L=U+76|0;M=U+72|0;F=U+68|0;N=U+64|0;O=U+60|0;y=U+56|0;z=U+40|0;P=U+36|0;u=U+32|0;v=U+28|0;Q=U+24|0;R=U+20|0;A=U+16|0;B=U+12|0;C=U+8|0;D=U+4|0;E=U;c[G>>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]=i;c[t>>2]=j;c[w>>2]=k;c[M>>2]=re(c[p>>2]|0)|0;c[F>>2]=re(c[o>>2]|0)|0;b=c[F>>2]|0;c[N>>2]=Va()|0;f=l;l=l+((1*b|0)+15&-16)|0;if((l|0)>=(m|0))$((1*b|0)+15&-16|0);if(!(c[M>>2]|0)){c[S>>2]=-1;c[P>>2]=1;T=c[N>>2]|0;Ca(T|0);T=c[S>>2]|0;l=U;return T|0}if(ke(H,c[o>>2]|0,2)|0){c[S>>2]=-1;c[P>>2]=1;T=c[N>>2]|0;Ca(T|0);T=c[S>>2]|0;l=U;return T|0}if(ke(I,c[p>>2]|0,2)|0){le(c[H>>2]|0);c[S>>2]=-1;c[P>>2]=1;T=c[N>>2]|0;Ca(T|0);T=c[S>>2]|0;l=U;return T|0}c[z>>2]=c[c[w>>2]>>2];c[y>>2]=0;while(1){o=(c[z>>2]|0)+(4-1)&~(4-1);p=c[o>>2]|0;c[z>>2]=o+4;c[u>>2]=p;if(!(c[u>>2]|0))break;o=(c[z>>2]|0)+(4-1)&~(4-1);p=c[o>>2]|0;c[z>>2]=o+4;c[v>>2]=p;c[y>>2]=(c[y>>2]|0)+(c[v>>2]|0)}Yq(c[G>>2]|0,0,c[n>>2]|0)|0;a:do if((Dc(c[H>>2]|0,c[q>>2]|0,c[r>>2]|0,c[s>>2]|0,c[t>>2]|0,f)|0)!=1)T=45;else{c[K>>2]=((c[n>>2]|0)>>>0)/((c[M>>2]|0)>>>0)|0;c[L>>2]=((c[n>>2]|0)>>>0)%((c[M>>2]|0)>>>0)|0;c[Q>>2]=(c[M>>2]|0)+(c[y>>2]|0)+1;b=c[Q>>2]|0;c[R>>2]=Va()|0;e=l;l=l+((1*b|0)+15&-16)|0;if((l|0)>=(m|0))$((1*b|0)+15&-16|0);c[B>>2]=e+(c[M>>2]|0);c[z>>2]=c[c[w>>2]>>2];while(1){v=(c[z>>2]|0)+(4-1)&~(4-1);w=c[v>>2]|0;c[z>>2]=v+4;c[C>>2]=w;w=c[C>>2]|0;c[A>>2]=w;if(!w)break;v=(c[z>>2]|0)+(4-1)&~(4-1);w=c[v>>2]|0;c[z>>2]=v+4;c[E>>2]=w;c[D>>2]=c[E>>2];if(c[D>>2]|0)cr(c[B>>2]|0,c[A>>2]|0,c[D>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+(c[D>>2]|0)}do if((c[K>>2]|0)>>>0>0){a[e+(c[M>>2]|0)+(c[y>>2]|0)>>0]=1;c[J>>2]=Ec(c[I>>2]|0,f,c[F>>2]|0,e+(c[M>>2]|0)|0,(c[y>>2]|0)+1|0)|0;if(!(c[J>>2]|0)){c[P>>2]=4;break}if(c[M>>2]|0)cr(c[G>>2]|0,c[J>>2]|0,c[M>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+(c[M>>2]|0);T=22}else T=22;while(0);do if((T|0)==22){c[x>>2]=1;while(1){if((c[x>>2]|0)>>>0>=(c[K>>2]|0)>>>0)break;if(c[M>>2]|0)cr(e|0,(c[G>>2]|0)+(0-(c[M>>2]|0))|0,c[M>>2]|0)|0;Yq(e+(c[M>>2]|0)+(c[y>>2]|0)|0,(c[x>>2]|0)+1&255|0,1)|0;me(c[I>>2]|0);c[J>>2]=Ec(c[I>>2]|0,f,c[F>>2]|0,e,c[Q>>2]|0)|0;if(!(c[J>>2]|0)){T=27;break}if(c[M>>2]|0)cr(c[G>>2]|0,c[J>>2]|0,c[M>>2]|0)|0;c[G>>2]=(c[G>>2]|0)+(c[M>>2]|0);c[x>>2]=(c[x>>2]|0)+1}if((T|0)==27){c[P>>2]=4;break}if((c[L>>2]|0)>>>0>0){if((c[K>>2]|0)>>>0>0){if(c[M>>2]|0)cr(e|0,(c[G>>2]|0)+(0-(c[M>>2]|0))|0,c[M>>2]|0)|0;c[x>>2]=(c[x>>2]|0)+1}Yq(e+(c[M>>2]|0)+(c[y>>2]|0)|0,c[x>>2]&255|0,1)|0;me(c[I>>2]|0);d=c[I>>2]|0;b=c[F>>2]|0;if((c[K>>2]|0)>>>0>0)c[J>>2]=Ec(d,f,b,e,c[Q>>2]|0)|0;else c[J>>2]=Ec(d,f,b,e+(c[M>>2]|0)|0,(c[Q>>2]|0)-(c[M>>2]|0)|0)|0;if(!(c[J>>2]|0)){c[P>>2]=4;break}if(c[L>>2]|0)cr(c[G>>2]|0,c[J>>2]|0,c[L>>2]|0)|0}c[O>>2]=1;c[P>>2]=22}while(0);Ca(c[R>>2]|0);switch(c[P>>2]|0){case 4:{T=45;break a}case 22:break a;default:{}}T=c[N>>2]|0;Ca(T|0);T=c[S>>2]|0;l=U;return T|0}while(0);if((T|0)==45)c[O>>2]=-1;le(c[H>>2]|0);le(c[I>>2]|0);c[S>>2]=c[O>>2];c[P>>2]=1;T=c[N>>2]|0;Ca(T|0);T=c[S>>2]|0;l=U;return T|0}function Dc(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,n=0,o=0,p=0,q=0,r=0;n=l;l=l+32|0;if((l|0)>=(m|0))$(32);j=n+28|0;k=n+24|0;r=n+20|0;q=n+16|0;p=n+12|0;o=n+8|0;h=n+4|0;i=n;c[k>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[h>>2]=g;c[i>>2]=Ec(c[k>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0)|0;if(!(c[i>>2]|0)){c[j>>2]=-1;r=c[j>>2]|0;l=n;return r|0}if(re(qe(c[k>>2]|0)|0)|0){q=c[h>>2]|0;r=c[i>>2]|0;cr(q|0,r|0,re(qe(c[k>>2]|0)|0)|0)|0}c[j>>2]=1;r=c[j>>2]|0;l=n;return r|0}function Ec(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,n=0;g=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=g+16|0;n=g+12|0;k=g+8|0;j=g+4|0;i=g;c[h>>2]=a;c[n>>2]=b;c[k>>2]=d;c[j>>2]=e;c[i>>2]=f;se(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;ne(c[h>>2]|0,c[j>>2]|0,c[i>>2]|0);f=oe(c[h>>2]|0,0)|0;l=g;return f|0}function Fc(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;k=l;l=l+64|0;if((l|0)>=(m|0))$(64);w=k+52|0;v=k+48|0;u=k+44|0;t=k+40|0;s=k+36|0;r=k+32|0;q=k+28|0;p=k+24|0;o=k+8|0;n=k;c[w>>2]=a;c[v>>2]=b;c[u>>2]=d;c[t>>2]=e;c[s>>2]=f;c[r>>2]=g;c[q>>2]=h;c[p>>2]=i;c[o>>2]=j;c[n>>2]=Cc(c[w>>2]|0,c[v>>2]|0,c[u>>2]|0,c[t>>2]|0,c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,o)|0;l=k;return c[n>>2]|0}function Gc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);r=i+24|0;q=i+20|0;p=i+16|0;o=i+12|0;n=i+8|0;k=i+4|0;j=i;c[r>>2]=a;c[q>>2]=b;c[p>>2]=d;c[o>>2]=e;c[n>>2]=f;c[k>>2]=g;c[j>>2]=h;h=Cc(c[r>>2]|0,c[q>>2]|0,10,8,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;l=i;return h|0}function Hc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+48|0;if((l|0)>=(m|0))$(48);s=i+44|0;r=i+40|0;q=i+36|0;p=i+32|0;o=i+28|0;n=i+24|0;k=i+8|0;j=i;c[s>>2]=a;c[r>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;c[n>>2]=g;c[k>>2]=h;c[j>>2]=Gc(c[s>>2]|0,c[r>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,k)|0;l=i;return c[j>>2]|0}function Ic(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=l;l=l+112|0;if((l|0)>=(m|0))$(112);C=E+40|0;B=E+32|0;D=E+24|0;x=E;u=E+108|0;v=E+104|0;w=E+100|0;i=E+96|0;j=E+92|0;k=E+88|0;n=E+84|0;o=E+80|0;p=E+76|0;q=E+72|0;r=E+68|0;s=E+64|0;y=E+60|0;z=E+56|0;A=E+52|0;t=E+48|0;c[u>>2]=a;c[v>>2]=b;c[w>>2]=d;c[i>>2]=e;c[j>>2]=f;c[k>>2]=g;c[n>>2]=h;c[p>>2]=Xd(c[v>>2]|0)|0;c[r>>2]=0;while(1){b=((((c[p>>2]|0)-1|0)>>>0)/8|0)+1|0;c[s>>2]=Va()|0;a=b;d=l;l=l+((1*a|0)+15&-16)|0;if((l|0)>=(m|0))$((1*a|0)+15&-16|0);e=c[w>>2]|0;f=c[i>>2]|0;g=c[j>>2]|0;h=c[k>>2]|0;F=c[n>>2]|0;a=Fo(c[n>>2]|0)|0;c[x>>2]=F;c[x+4>>2]=a;c[x+8>>2]=r;c[x+12>>2]=4;c[x+16>>2]=0;c[x+20>>2]=0;c[o>>2]=Hc(d,b,e,f,g,h,x)|0;if(1!=(c[o>>2]|0)){a=3;break}c[o>>2]=Kd(c[u>>2]|0,5,d,b,q)|0;if(c[o>>2]|0){a=11;break}Zd(c[c[u>>2]>>2]|0,c[p>>2]|0);if(Yd(c[c[u>>2]>>2]|0,c[p>>2]|0)|0){a=19;break}c[r>>2]=(c[r>>2]|0)+1;if(0>(Jd(c[c[u>>2]>>2]|0,c[v>>2]|0)|0))c[t>>2]=3;else{Id(c[c[u>>2]>>2]|0);c[t>>2]=0}Ca(c[s>>2]|0);if((c[t>>2]|0)>>>0>=1){a=30;break}}if((a|0)==3){c[y>>2]=155;if((c[234]|0)==-1)c[234]=Wb(1,0,20446,20459,c[y>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[234]|0))Vb();c[D>>2]=20446;c[D+4>>2]=155;Zb(1,61295,D);Vb()}else if((a|0)==11){c[z>>2]=162;if((c[235]|0)==-1)c[235]=Wb(1,0,20446,20459,c[z>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[235]|0))Vb();c[B>>2]=20446;c[B+4>>2]=162;Zb(1,61295,B);Vb()}else if((a|0)==19){c[A>>2]=165;if((c[236]|0)==-1)c[236]=Wb(1,0,20446,20459,c[A>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[236]|0))Vb();c[C>>2]=20446;c[C+4>>2]=165;Zb(1,61295,C);Vb()}else if((a|0)==30){l=E;return}}function Jc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+80|0;if((l|0)>=(m|0))$(80);s=t+24|0;r=t+8|0;q=t;h=t+68|0;i=t+64|0;j=t+60|0;k=t+56|0;n=t+52|0;o=t+48|0;p=t+44|0;e=t+40|0;f=t+36|0;g=t+32|0;c[h>>2]=a;c[i>>2]=b;c[j>>2]=d;if($d(c[j>>2]|0,2)|0){c[p>>2]=_d(c[j>>2]|0,o)|0;if(c[p>>2]|0){c[k>>2]=(((c[o>>2]|0)+7|0)>>>0)/8|0;if((c[k>>2]|0)>>>0>(c[i>>2]|0)>>>0)c[k>>2]=c[i>>2];if(c[k>>2]|0)cr(c[h>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;if((c[k>>2]|0)>>>0>=(c[i>>2]|0)>>>0){l=t;return}Yq((c[h>>2]|0)+(c[k>>2]|0)|0,0,(c[i>>2]|0)-(c[k>>2]|0)|0)|0;l=t;return}c[e>>2]=89;if((c[237]|0)==-1)c[237]=Wb(1,0,20485,20498,c[e>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[237]|0))Vb();c[q>>2]=20485;c[q+4>>2]=89;Zb(1,61295,q);Vb()}else{c[k>>2]=c[i>>2];q=Ld(5,c[h>>2]|0,c[k>>2]|0,k,c[j>>2]|0)|0;c[n>>2]=q;if(!q){Kc(c[h>>2]|0,c[k>>2]|0,c[i>>2]|0);l=t;return}c[f>>2]=110;if((c[238]|0)==-1)c[238]=Wb(1,20980,20485,20498,c[f>>2]|0)|0;if((Xb()|0)<=0){if(c[238]|0){t=xd(c[n>>2]|0)|0;c[r>>2]=20568;c[r+4>>2]=20485;c[r+8>>2]=110;c[r+12>>2]=t;cc(1,20980,20531,r)}}else Yb(-1,0);c[g>>2]=111;if((c[239]|0)==-1)c[239]=Wb(1,0,20485,20498,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[239]|0))Vb();c[s>>2]=20485;c[s+4>>2]=111;Zb(1,61295,s);Vb()}}function Kc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=i+12|0;f=i+8|0;g=i+4|0;h=i;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[e>>2];if((c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0){l=i;return}dr((c[h>>2]|0)+((c[g>>2]|0)-(c[f>>2]|0))|0,c[e>>2]|0,c[f>>2]|0)|0;Yq(c[e>>2]|0,0,(c[g>>2]|0)-(c[f>>2]|0)|0)|0;l=i;return}function Lc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;j=l;l=l+48|0;if((l|0)>=(m|0))$(48);i=j+16|0;h=j;o=j+44|0;n=j+40|0;k=j+36|0;e=j+32|0;f=j+28|0;g=j+24|0;c[o>>2]=a;c[n>>2]=b;c[k>>2]=d;d=Kd(c[o>>2]|0,5,c[n>>2]|0,c[k>>2]|0,k)|0;c[e>>2]=d;if(!d){l=j;return}c[f>>2]=140;if((c[240]|0)==-1)c[240]=Wb(1,20980,20485,20583,c[f>>2]|0)|0;if((Xb()|0)<=0){if(c[240]|0){o=xd(c[e>>2]|0)|0;c[h>>2]=20615;c[h+4>>2]=20485;c[h+8>>2]=140;c[h+12>>2]=o;cc(1,20980,20531,h)}}else Yb(-1,0);c[g>>2]=141;if((c[241]|0)==-1)c[241]=Wb(1,0,20485,20583,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[241]|0))Vb();c[i>>2]=20485;c[i+4>>2]=141;Zb(1,61295,i);Vb()}function Mc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+80|0;if((l|0)>=(m|0))$(80);i=n+56|0;h=n+48|0;g=n+40|0;f=n+32|0;k=n+24|0;j=n+16|0;e=n+8|0;d=n;a=n+64|0;b=n+60|0;if(yd(20629)|0){c[j>>2]=0;j=zd(37,j)|0;c[a>>2]=j;if(j|0){j=c[3935]|0;e=xd(c[a>>2]|0)|0;c[k>>2]=20782;c[k+4>>2]=e;Rp(j,20743,k)|0}c[f>>2]=0;k=zd(44,f)|0;c[a>>2]=k;if(!k){c[h>>2]=0;zd(38,h)|0;c[i>>2]=0;zd(48,i)|0;j=fb(0)|0;k=Nc(2,-1)|0;k=j^k;Oc(k);l=n;return}j=c[3935]|0;k=xd(c[a>>2]|0)|0;c[g>>2]=20797;c[g+4>>2]=k;Rp(j,20743,g)|0;c[h>>2]=0;zd(38,h)|0;c[i>>2]=0;zd(48,i)|0;j=fb(0)|0;k=Nc(2,-1)|0;k=j^k;Oc(k);l=n;return}n=c[3935]|0;c[d>>2]=20629;Rp(n,20635,d)|0;c[b>>2]=286;if((c[242]|0)==-1)c[242]=Wb(1,0,20701,20717,c[b>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[242]|0))Vb();c[e>>2]=20701;c[e+4>>2]=286;Zb(1,61295,e);Vb()}function Nc(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,n=0,o=0,p=0,q=0.0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=p+16|0;n=p+8|0;k=p;d=p+48|0;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;i=p+28|0;j=p+24|0;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>>>0<=0){c[i>>2]=157;if((c[243]|0)==-1)c[243]=Wb(1,0,20701,20817,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[243]|0))Vb();c[k>>2]=20701;c[k+4>>2]=157;Zb(1,61295,k);Vb()}switch(c[e>>2]|0){case 1:{o=c[17573]|0;c[17573]=o+1;if(!((o>>>0)%256|0)){c[n>>2]=0;zd(48,n)|0}c[h>>2]=-1-(4294967295%((c[f>>2]|0)>>>0)|0);do te(g,4,1);while((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0);c[d>>2]=((c[g>>2]|0)>>>0)%((c[f>>2]|0)>>>0)|0;o=c[d>>2]|0;l=p;return o|0}case 2:{c[h>>2]=-1-(4294967295%((c[f>>2]|0)>>>0)|0);do ue(g,4);while((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0);c[d>>2]=((c[g>>2]|0)>>>0)%((c[f>>2]|0)>>>0)|0;o=c[d>>2]|0;l=p;return o|0}case 0:{q=+((c[f>>2]|0)>>>0);c[g>>2]=~~(q*+Pc())>>>0;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)c[g>>2]=(c[f>>2]|0)-1;c[d>>2]=c[g>>2];o=c[d>>2]|0;l=p;return o|0}default:{c[j>>2]=189;if((c[244]|0)==-1)c[244]=Wb(1,0,20701,20817,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[244]|0))Vb();c[o>>2]=20701;c[o+4>>2]=189;Zb(1,61295,o);Vb()}}return 0}function Oc(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;Cq(c[d>>2]|0);l=b;return}function Pc(){return +(+(Eq()|0)/2147483647.0)}function Qc(){we(0,0);return}function Rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+48|0;if((l|0)>=(m|0))$(48);j=k+16|0;i=k+8|0;h=k;n=k+36|0;e=k+32|0;f=k+28|0;g=k+24|0;c[n>>2]=a;c[e>>2]=b;c[f>>2]=d;switch(c[n>>2]|0){case 1:{n=c[17574]|0;c[17574]=n+1;if(!((n>>>0)%256|0)){c[h>>2]=0;zd(48,h)|0}te(c[e>>2]|0,c[f>>2]|0,1);l=k;return}case 2:{ue(c[e>>2]|0,c[f>>2]|0);l=k;return}case 0:{n=c[17574]|0;c[17574]=n+1;if(!((n>>>0)%256|0)){c[i>>2]=0;zd(48,i)|0}te(c[e>>2]|0,c[f>>2]|0,0);l=k;return}default:{c[g>>2]=135;if((c[245]|0)==-1)c[245]=Wb(1,0,20701,20842,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[245]|0))Vb();c[j>>2]=20701;c[j+4>>2]=135;Zb(1,61295,j);Vb()}}}function Sc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;j=l;l=l+48|0;if((l|0)>=(m|0))$(48);i=j+16|0;h=j+8|0;k=j;n=j+44|0;b=j+40|0;d=j+36|0;e=j+32|0;f=j+28|0;g=j+24|0;c[n>>2]=a;c[k>>2]=c[n>>2];if(Bd(e,0,20869,k)|0){c[f>>2]=155;if((c[246]|0)==-1)c[246]=Wb(1,0,20893,20906,c[f>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[246]|0))Vb();c[h>>2]=20893;c[h+4>>2]=155;Zb(1,61295,h);Vb()}if(!(je(d,c[e>>2]|0)|0)){Cd(c[e>>2]|0);c[b>>2]=Pb(4,20893,164)|0;c[c[b>>2]>>2]=c[d>>2];l=j;return c[b>>2]|0}c[g>>2]=158;if((c[247]|0)==-1)c[247]=Wb(1,0,20893,20906,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[247]|0))Vb();c[i>>2]=20893;c[i+4>>2]=158;Zb(1,61295,i);Vb();return 0}function Tc(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;Cd(c[c[d>>2]>>2]|0);Rb(c[d>>2]|0,20893,179);l=b;return}function Uc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i;j=i+24|0;d=i+20|0;e=i+16|0;f=i+12|0;g=i+8|0;c[j>>2]=a;c[d>>2]=b;c[e>>2]=Dd(c[c[j>>2]>>2]|0,0,0,0)|0;c[f>>2]=Pb(c[e>>2]|0,20893,202)|0;b=(c[e>>2]|0)-1|0;if((b|0)==(Dd(c[c[j>>2]>>2]|0,0,c[f>>2]|0,c[e>>2]|0)|0)){c[c[d>>2]>>2]=c[f>>2];l=i;return c[e>>2]|0}c[g>>2]=207;if((c[248]|0)==-1)c[248]=Wb(1,0,20893,20943,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[248]|0))Vb();c[h>>2]=20893;c[h+4>>2]=207;Zb(1,61295,h);Vb();return 0}function Vc(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,n=0;j=l;l=l+48|0;if((l|0)>=(m|0))$(48);i=j+8|0;h=j;d=j+32|0;n=j+28|0;k=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;c[n>>2]=a;c[k>>2]=b;c[e>>2]=Pb(4,20893,226)|0;if(Ad(c[e>>2]|0,c[n>>2]|0,c[k>>2]|0,0)|0){c[f>>2]=234;if((c[249]|0)==-1)c[249]=Wb(2,20980,20893,20985,c[f>>2]|0)|0;if((Xb()|0)<=0){if(c[249]|0)cc(2,20980,21022,h)}else Yb(-1,0);Rb(c[e>>2]|0,20893,235);c[d>>2]=0;n=c[d>>2]|0;l=j;return n|0}if(!(ie(c[c[e>>2]>>2]|0)|0)){c[d>>2]=c[e>>2];n=c[d>>2]|0;l=j;return n|0}c[g>>2]=241;if((c[250]|0)==-1)c[250]=Wb(2,20980,20893,20985,c[g>>2]|0)|0;if((Xb()|0)<=0){if(c[250]|0)cc(2,20980,21022,i)}else Yb(-1,0);Tc(c[e>>2]|0);c[d>>2]=0;n=c[d>>2]|0;l=j;return n|0}function Wc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+64|0;if((l|0)>=(m|0))$(64);k=n+8|0;j=n;b=n+48|0;d=n+44|0;e=n+40|0;f=n+32|0;g=n+24|0;h=n+20|0;i=n+16|0;c[d>>2]=a;c[g>>2]=Xc(f,c[c[d>>2]>>2]|0,37679,39061)|0;if(c[g>>2]|0)c[g>>2]=Xc(f,c[c[d>>2]>>2]|0,37667,39061)|0;if(c[g>>2]|0)c[g>>2]=Xc(f,c[c[d>>2]>>2]|0,40693,39061)|0;if(!(c[g>>2]|0)){j=c[f+4>>2]|0;c[k>>2]=c[f>>2];c[k+4>>2]=j;c[g>>2]=Bd(h,0,21145,k)|0;Id(c[f>>2]|0);Id(c[f+4>>2]|0);c[e>>2]=Pb(4,20893,280)|0;c[c[e>>2]>>2]=c[h>>2];c[b>>2]=c[e>>2];k=c[b>>2]|0;l=n;return k|0}c[i>>2]=270;if((c[251]|0)==-1)c[251]=Wb(2,0,20893,21056,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[251]|0){c[j>>2]=20893;c[j+4>>2]=270;Zb(66,21097,j)}}else Yb(-1,0);c[b>>2]=0;k=c[b>>2]|0;l=n;return k|0}function Xc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+48|0;if((l|0)>=(m|0))$(48);n=q+36|0;o=q+32|0;s=q+28|0;r=q+24|0;g=q+20|0;p=q+16|0;h=q+12|0;i=q+8|0;j=q+4|0;k=q;c[o>>2]=b;c[s>>2]=d;c[r>>2]=e;c[g>>2]=f;f=Ed(c[s>>2]|0,c[r>>2]|0,0)|0;c[p>>2]=f;if(!f){c[n>>2]=1;s=c[n>>2]|0;l=q;return s|0}c[h>>2]=Fd(c[p>>2]|0)|0;Cd(c[p>>2]|0);c[p>>2]=c[h>>2];if(!(c[p>>2]|0)){c[n>>2]=2;s=c[n>>2]|0;l=q;return s|0}c[k>>2]=0;c[i>>2]=c[g>>2];while(1){d=c[p>>2]|0;if(!(a[c[i>>2]>>0]|0)){b=18;break}s=Ed(d,c[i>>2]|0,1)|0;c[h>>2]=s;if(!s){b=8;break}s=Gd(c[h>>2]|0,1,5)|0;c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]=s;Cd(c[h>>2]|0);if(!(c[(c[o>>2]|0)+(c[k>>2]<<2)>>2]|0)){b=13;break}c[i>>2]=(c[i>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}if((b|0)==8){c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;ye(c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]|0);c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}Cd(c[p>>2]|0);c[n>>2]=3;s=c[n>>2]|0;l=q;return s|0}else if((b|0)==13){c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;ye(c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]|0);c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+1}Cd(c[p>>2]|0);c[n>>2]=4;s=c[n>>2]|0;l=q;return s|0}else if((b|0)==18){Cd(d);c[n>>2]=0;s=c[n>>2]|0;l=q;return s|0}return 0}function Yc(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;Cd(c[c[d>>2]>>2]|0);Rb(c[d>>2]|0,20893,295);l=b;return}function Zc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i;j=i+24|0;d=i+20|0;e=i+16|0;f=i+12|0;g=i+8|0;c[j>>2]=a;c[d>>2]=b;c[e>>2]=Dd(c[c[j>>2]>>2]|0,3,0,0)|0;c[f>>2]=Pb(c[e>>2]|0,20893,318)|0;b=(c[e>>2]|0)-1|0;if((b|0)==(Dd(c[c[j>>2]>>2]|0,3,c[f>>2]|0,c[e>>2]|0)|0)){c[c[d>>2]>>2]=c[f>>2];l=i;return c[e>>2]|0}c[g>>2]=323;if((c[252]|0)==-1)c[252]=Wb(1,0,20893,21175,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[252]|0))Vb();c[h>>2]=20893;c[h+4>>2]=323;Zb(1,61295,h);Vb();return 0}function _c(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,n=0,o=0,p=0;n=l;l=l+48|0;if((l|0)>=(m|0))$(48);k=n+8|0;j=n;d=n+44|0;p=n+40|0;o=n+36|0;e=n+32|0;f=n+28|0;g=n+24|0;h=n+20|0;i=n+16|0;c[p>>2]=a;c[o>>2]=b;c[e>>2]=Pb(4,20893,367)|0;if(Ad(c[e>>2]|0,c[p>>2]|0,c[o>>2]|0,0)|0){c[h>>2]=374;if((c[253]|0)==-1)c[253]=Wb(2,0,20893,21211,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[253]|0){c[j>>2]=20893;c[j+4>>2]=374;Zb(66,21097,j)}}else Yb(-1,0);Rb(c[e>>2]|0,20893,375);c[d>>2]=0;p=c[d>>2]|0;l=n;return p|0}c[g>>2]=Xc(f,c[c[e>>2]>>2]|0,37679,39075)|0;if(c[g>>2]|0)c[g>>2]=Xc(f,c[c[e>>2]>>2]|0,40693,39075)|0;if(!(c[g>>2]|0)){Id(c[f>>2]|0);c[d>>2]=c[e>>2];p=c[d>>2]|0;l=n;return p|0}c[i>>2]=385;if((c[254]|0)==-1)c[254]=Wb(1,0,20893,21211,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[254]|0){c[k>>2]=20893;c[k+4>>2]=385;Zb(1,61295,k)}}else Yb(-1,0);Cd(c[c[e>>2]>>2]|0);Rb(c[e>>2]|0,20893,387);c[d>>2]=0;p=c[d>>2]|0;l=n;return p|0}function $c(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i;j=i+24|0;d=i+20|0;e=i+16|0;f=i+12|0;g=i+8|0;c[j>>2]=a;c[d>>2]=b;c[e>>2]=Dd(c[c[j>>2]>>2]|0,3,0,0)|0;c[f>>2]=Pb(c[e>>2]|0,20893,958)|0;b=(c[e>>2]|0)-1|0;if((b|0)==(Dd(c[c[j>>2]>>2]|0,3,c[f>>2]|0,c[e>>2]|0)|0)){c[c[d>>2]>>2]=c[f>>2];l=i;return c[e>>2]|0}c[g>>2]=963;if((c[255]|0)==-1)c[255]=Wb(1,0,20893,21247,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[255]|0))Vb();c[h>>2]=20893;c[h+4>>2]=963;Zb(1,61295,h);Vb();return 0}function ad(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+80|0;if((l|0)>=(m|0))$(80);x=y+8|0;w=y;r=y+76|0;s=y+72|0;t=y+68|0;u=y+64|0;v=y+60|0;g=y+56|0;h=y+52|0;i=y+48|0;j=y+40|0;k=y+32|0;n=y+28|0;o=y+24|0;p=y+20|0;q=y+16|0;c[s>>2]=a;c[t>>2]=b;c[u>>2]=d;c[v>>2]=e;c[g>>2]=f;if(!((c[v>>2]|0)!=0&(c[g>>2]|0)!=0)){c[p>>2]=738;if((c[256]|0)==-1)c[256]=Wb(1,0,20893,21282,c[p>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[256]|0))Vb();c[w>>2]=20893;c[w+4>>2]=738;Zb(1,61295,w);Vb()}c[o>>2]=Xc(j,c[c[u>>2]>>2]|0,37679,39061)|0;if(c[o>>2]|0)c[o>>2]=Xc(j,c[c[u>>2]>>2]|0,40693,39061)|0;if(!(c[o>>2]|0)){c[i>>2]=bd(c[u>>2]|0,c[s>>2]|0)|0;do if(c[i>>2]|0){c[h>>2]=cd(c[u>>2]|0,c[t>>2]|0)|0;if(!(c[h>>2]|0)){Id(c[i>>2]|0);break}c[k>>2]=Hd(0)|0;Nd(c[k>>2]|0,c[c[h>>2]>>2]|0,c[j+4>>2]|0,c[j>>2]|0);c[n>>2]=Hd(0)|0;Md(c[n>>2]|0,c[i>>2]|0,c[k>>2]|0,c[j>>2]|0);Id(c[i>>2]|0);Id(c[j>>2]|0);Id(c[j+4>>2]|0);Id(c[k>>2]|0);dd(c[h>>2]|0);x=ed(c[n>>2]|0,c[v>>2]|0)|0;c[c[g>>2]>>2]=x;Id(c[n>>2]|0);c[r>>2]=1;x=c[r>>2]|0;l=y;return x|0}while(0);Id(c[j>>2]|0);Id(c[j+4>>2]|0);c[c[v>>2]>>2]=0;c[c[g>>2]>>2]=0;c[r>>2]=0;x=c[r>>2]|0;l=y;return x|0}c[q>>2]=744;if((c[257]|0)==-1)c[257]=Wb(1,0,20893,21282,c[q>>2]|0)|0;if((Xb()|0)<=0){if(c[257]|0){c[x>>2]=20893;c[x+4>>2]=744;Zb(1,61295,x)}}else Yb(-1,0);c[c[v>>2]>>2]=0;c[c[g>>2]>>2]=0;c[r>>2]=0;x=c[r>>2]|0;l=y;return x|0}function bd(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,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=r+8|0;n=r;p=r+52|0;f=r+48|0;g=r+44|0;h=r+40|0;i=r+36|0;j=r+32|0;k=r+28|0;q=r+24|0;d=r+20|0;e=r+16|0;c[f>>2]=a;c[g>>2]=b;if(Xc(i,c[c[f>>2]>>2]|0,40693,39075)|0){c[d>>2]=689;if((c[262]|0)==-1)c[262]=Wb(1,0,20893,21400,c[d>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[262]|0))Vb();c[n>>2]=20893;c[n+4>>2]=689;Zb(1,61295,n);Vb()}if(!($d(c[i>>2]|0,2)|0)){c[k>>2]=Zc(c[f>>2]|0,j)|0;Ic(h,c[i>>2]|0,c[j>>2]|0,c[k>>2]|0,c[g>>2]|0,64,21421);Rb(c[j>>2]|0,20893,704);c[q>>2]=fd(c[h>>2]|0,c[i>>2]|0)|0;Id(c[i>>2]|0);a=c[h>>2]|0;if(c[q>>2]|0){c[p>>2]=a;q=c[p>>2]|0;l=r;return q|0}else{Id(a);c[p>>2]=0;q=c[p>>2]|0;l=r;return q|0}}c[e>>2]=691;if((c[263]|0)==-1)c[263]=Wb(1,0,20893,21400,c[e>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[263]|0))Vb();c[o>>2]=20893;c[o+4>>2]=691;Zb(1,61295,o);Vb();return 0}function cd(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,n=0,o=0,p=0,q=0;q=l;l=l+64|0;if((l|0)>=(m|0))$(64);p=q+16|0;o=q+8|0;n=q;d=q+52|0;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;i=q+32|0;j=q+28|0;k=q+24|0;c[d>>2]=a;c[e>>2]=b;c[f>>2]=21332;c[g>>2]=Pb(4,20893,434)|0;if(!(c[g>>2]|0)){c[i>>2]=435;if((c[259]|0)==-1)c[259]=Wb(1,0,20893,21363,c[i>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[259]|0))Vb();c[n>>2]=20893;c[n+4>>2]=435;Zb(1,61295,n);Vb()}if(Xc(h,c[c[d>>2]>>2]|0,40693,39075)|0){c[j>>2]=438;if((c[260]|0)==-1)c[260]=Wb(1,0,20893,21363,c[j>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[260]|0))Vb();c[o>>2]=20893;c[o+4>>2]=438;Zb(1,61295,o);Vb()}if(!($d(c[h>>2]|0,2)|0)){k=c[g>>2]|0;n=c[h>>2]|0;o=c[f>>2]|0;p=Fo(c[f>>2]|0)|0;Ic(k,n,o,p,c[e>>2]|0,32,21387);if(fd(c[c[g>>2]>>2]|0,c[h>>2]|0)|0){p=c[h>>2]|0;Id(p);p=c[g>>2]|0;l=q;return p|0}Rb(c[g>>2]|0,20893,448);c[g>>2]=0;p=c[h>>2]|0;Id(p);p=c[g>>2]|0;l=q;return p|0}c[k>>2]=440;if((c[261]|0)==-1)c[261]=Wb(1,0,20893,21363,c[k>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[261]|0))Vb();c[p>>2]=20893;c[p+4>>2]=440;Zb(1,61295,p);Vb();return 0}function dd(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;Id(c[c[d>>2]>>2]|0);Rb(c[d>>2]|0,20893,631);l=b;return}function ed(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i;j=i+28|0;d=i+24|0;e=i+20|0;f=i+16|0;g=i+8|0;c[j>>2]=a;c[d>>2]=b;Ld(5,0,0,e,c[j>>2]|0)|0;c[f>>2]=Pb(c[e>>2]|0,20893,655)|0;if(!(Ld(5,c[f>>2]|0,c[e>>2]|0,i+12|0,c[j>>2]|0)|0)){c[c[d>>2]>>2]=c[f>>2];l=i;return c[e>>2]|0}c[g>>2]=661;if((c[258]|0)==-1)c[258]=Wb(1,0,20893,21306,c[g>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[258]|0))Vb();c[h>>2]=20893;c[h+4>>2]=661;Zb(1,61295,h);Vb();return 0}function fd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=d+12|0;g=d+8|0;f=d+4|0;e=d;c[h>>2]=a;c[g>>2]=b;c[f>>2]=Hd(0)|0;c[e>>2]=Od(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;Id(c[f>>2]|0);l=d;return c[e>>2]|0}function gd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;f=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=f+8|0;g=f;h=f+24|0;b=f+20|0;d=f+16|0;c[h>>2]=a;c[b>>2]=0;c[g>>2]=c[h>>2];if(!(Bd(b,0,21436,g)|0)){l=f;return c[b>>2]|0}c[d>>2]=806;if((c[264]|0)==-1)c[264]=Wb(1,0,20893,21466,c[d>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[264]|0))Vb();c[e>>2]=20893;c[e+4>>2]=806;Zb(1,61295,e);Vb();return 0}function hd(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=a;Cd(c[c[d>>2]>>2]|0);Rb(c[d>>2]|0,20893,936);l=b;return}function id(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,n=0,o=0,p=0;n=l;l=l+48|0;if((l|0)>=(m|0))$(48);k=n+8|0;j=n;d=n+44|0;p=n+40|0;o=n+36|0;e=n+32|0;f=n+28|0;g=n+24|0;h=n+20|0;i=n+16|0;c[p>>2]=a;c[o>>2]=b;c[e>>2]=Pb(4,20893,985)|0;if(Ad(c[e>>2]|0,c[p>>2]|0,c[o>>2]|0,0)|0){c[h>>2]=992;if((c[265]|0)==-1)c[265]=Wb(2,0,20893,21478,c[h>>2]|0)|0;if((Xb()|0)<=0){if(c[265]|0){c[j>>2]=20893;c[j+4>>2]=992;Zb(66,21097,j)}}else Yb(-1,0);Rb(c[e>>2]|0,20893,993);c[d>>2]=0;p=c[d>>2]|0;l=n;return p|0}c[f>>2]=Xc(g,c[c[e>>2]>>2]|0,37529,39073)|0;if(c[f>>2]|0)c[f>>2]=Xc(g,c[c[e>>2]>>2]|0,40693,39073)|0;if(!(c[f>>2]|0)){Id(c[g>>2]|0);c[d>>2]=c[e>>2];p=c[d>>2]|0;l=n;return p|0}c[i>>2]=1003;if((c[266]|0)==-1)c[266]=Wb(2,0,20893,21478,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[266]|0){c[k>>2]=20893;c[k+4>>2]=1003;Zb(66,21097,k)}}else Yb(-1,0);Cd(c[c[e>>2]>>2]|0);Rb(c[e>>2]|0,20893,1005);c[d>>2]=0;p=c[d>>2]|0;l=n;return p|0}function jd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+112|0;if((l|0)>=(m|0))$(112);z=C+40|0;y=C+32|0;x=C+24|0;B=C+16|0;A=C+8|0;w=C;p=C+108|0;q=C+104|0;r=C+100|0;s=C+96|0;t=C+92|0;u=C+88|0;v=C+84|0;e=C+80|0;f=C+76|0;g=C+72|0;h=C+68|0;i=C+64|0;j=C+60|0;k=C+56|0;n=C+52|0;o=C+48|0;c[q>>2]=a;c[r>>2]=b;c[s>>2]=d;c[g>>2]=Xc(u,c[c[s>>2]>>2]|0,37679,39075)|0;if(c[g>>2]|0)c[g>>2]=Xc(u,c[c[s>>2]>>2]|0,40693,39075)|0;if(c[g>>2]|0){c[i>>2]=1066;if((c[267]|0)==-1)c[267]=Wb(2,0,20893,21513,c[i>>2]|0)|0;if((Xb()|0)<=0){if(c[267]|0){c[w>>2]=20893;c[w+4>>2]=1066;Zb(66,21097,w)}}else Yb(-1,0);c[p>>2]=0;B=c[p>>2]|0;l=C;return B|0}c[g>>2]=Xc(v,c[c[q>>2]>>2]|0,37529,39073)|0;if(c[g>>2]|0)c[g>>2]=Xc(v,c[c[q>>2]>>2]|0,40693,39073)|0;if(c[g>>2]|0){Id(c[u>>2]|0);c[j>>2]=1075;if((c[268]|0)==-1)c[268]=Wb(2,0,20893,21513,c[j>>2]|0)|0;if((Xb()|0)<=0){if(c[268]|0){c[A>>2]=20893;c[A+4>>2]=1075;Zb(66,21097,A)}}else Yb(-1,0);c[p>>2]=0;B=c[p>>2]|0;l=C;return B|0}c[t>>2]=cd(c[s>>2]|0,c[r>>2]|0)|0;if(!(c[t>>2]|0)){c[k>>2]=1086;if((c[269]|0)==-1)c[269]=Wb(2,0,20893,21513,c[k>>2]|0)|0;if((Xb()|0)<=0){if(c[269]|0){c[B>>2]=20893;c[B+4>>2]=1086;Zb(66,21097,B)}}else Yb(-1,0);Id(c[u>>2]|0);Id(c[v>>2]|0);c[p>>2]=0;B=c[p>>2]|0;l=C;return B|0}c[e>>2]=Hd(0)|0;if(1!=(Pd(c[e>>2]|0,c[c[t>>2]>>2]|0,c[u>>2]|0)|0)){c[n>>2]=1100;if((c[270]|0)==-1)c[270]=Wb(2,0,20893,21513,c[n>>2]|0)|0;if((Xb()|0)<=0){if(c[270]|0){c[x>>2]=20893;c[x+4>>2]=1100;Zb(66,21097,x)}}else Yb(-1,0);Id(c[e>>2]|0);dd(c[t>>2]|0);Id(c[u>>2]|0);Id(c[v>>2]|0);c[p>>2]=0;B=c[p>>2]|0;l=C;return B|0}c[f>>2]=Hd(0)|0;Md(c[f>>2]|0,c[v>>2]|0,c[e>>2]|0,c[u>>2]|0);Id(c[u>>2]|0);Id(c[e>>2]|0);Id(c[v>>2]|0);dd(c[t>>2]|0);c[h>>2]=Pb(4,20893,1115)|0;B=c[h>>2]|0;c[y>>2]=c[f>>2];if(!(Bd(B,0,21539,y)|0)){Id(c[f>>2]|0);c[p>>2]=c[h>>2];B=c[p>>2]|0;l=C;return B|0}c[o>>2]=1120;if((c[271]|0)==-1)c[271]=Wb(1,0,20893,21513,c[o>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[271]|0))Vb();c[z>>2]=20893;c[z+4>>2]=1120;Zb(1,61295,z);Vb();return 0}function kd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+64|0;if((l|0)>=(m|0))$(64);p=q+8|0;o=q;g=q+52|0;r=q+48|0;h=q+44|0;i=q+40|0;j=q+36|0;k=q+32|0;n=q+28|0;e=q+24|0;f=q+20|0;c[r>>2]=a;c[h>>2]=b;c[i>>2]=d;c[k>>2]=bd(c[i>>2]|0,c[r>>2]|0)|0;if(!(c[k>>2]|0)){c[e>>2]=1146;if((c[272]|0)==-1)c[272]=Wb(2,0,20893,21562,c[e>>2]|0)|0;if((Xb()|0)<=0){if(c[272]|0){c[o>>2]=20893;c[o+4>>2]=1146;Zb(66,21097,o)}}else Yb(-1,0);c[g>>2]=0;r=c[g>>2]|0;l=q;return r|0}c[j>>2]=gd(c[k>>2]|0)|0;Id(c[k>>2]|0);c[n>>2]=he(c[c[h>>2]>>2]|0,c[j>>2]|0,c[c[i>>2]>>2]|0)|0;Cd(c[j>>2]|0);if(!(c[n>>2]|0)){c[g>>2]=1;r=c[g>>2]|0;l=q;return r|0}c[f>>2]=1169;if((c[273]|0)==-1)c[273]=Wb(2,20980,20893,21562,c[f>>2]|0)|0;if((Xb()|0)<=0){if(c[273]|0){r=xd(c[n>>2]|0)|0;c[p>>2]=20893;c[p+4>>2]=1168;c[p+8>>2]=r;cc(2,20980,21587,p)}}else Yb(-1,0);c[g>>2]=-1;r=c[g>>2]|0;l=q;return r|0}function ld(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;j=l;l=l+48|0;if((l|0)>=(m|0))$(48);h=j+16|0;d=j+40|0;e=j+36|0;f=j+32|0;g=j+8|0;k=j;c[e>>2]=b;c[f>>2]=21675;o=a;b=c[o+4>>2]|0;n=g;c[n>>2]=c[o>>2];c[n+4>>2]=b;n=rd()|0;b=k;c[b>>2]=n;c[b+4>>2]=D;b=a;if((c[k>>2]|0)==(c[b>>2]|0)?(c[k+4>>2]|0)==(c[b+4>>2]|0):0){c[d>>2]=21653;o=c[d>>2]|0;l=j;return o|0}o=a;if(0==(c[o>>2]|0)?0==(c[o+4>>2]|0):0){c[d>>2]=21679;o=c[d>>2]|0;l=j;return o|0}o=g;n=c[o+4>>2]|0;if(!(!(1==(c[e>>2]|0)&(n>>>0>0|(n|0)==0&(c[o>>2]|0)>>>0>5e3))?(o=g,o=nr(c[o>>2]|0,c[o+4>>2]|0,1e3,0)|0,!(0==(o|0)&0==(D|0))):0))i=7;do if((i|0)==7){n=g;n=ir(c[n>>2]|0,c[n+4>>2]|0,1e3,0)|0;o=g;c[o>>2]=n;c[o+4>>2]=D;c[f>>2]=21661;o=g;n=c[o+4>>2]|0;if(!(1==(c[e>>2]|0)&(n>>>0>0|(n|0)==0&(c[o>>2]|0)>>>0>5e3))?(o=g,o=nr(c[o>>2]|0,c[o+4>>2]|0,1e3,0)|0,!(0==(o|0)&0==(D|0))):0)break;n=g;n=ir(c[n>>2]|0,c[n+4>>2]|0,1e3,0)|0;o=g;c[o>>2]=n;c[o+4>>2]=D;c[f>>2]=39073;o=g;n=c[o+4>>2]|0;if(!(1==(c[e>>2]|0)&(n>>>0>0|(n|0)==0&(c[o>>2]|0)>>>0>300))?(o=g,o=nr(c[o>>2]|0,c[o+4>>2]|0,60,0)|0,!(0==(o|0)&0==(D|0))):0)break;n=g;n=ir(c[n>>2]|0,c[n+4>>2]|0,60,0)|0;o=g;c[o>>2]=n;c[o+4>>2]=D;c[f>>2]=21664;o=g;n=c[o+4>>2]|0;if(!(1==(c[e>>2]|0)&(n>>>0>0|(n|0)==0&(c[o>>2]|0)>>>0>300))?(o=g,o=nr(c[o>>2]|0,c[o+4>>2]|0,60,0)|0,!(0==(o|0)&0==(D|0))):0)break;n=g;n=ir(c[n>>2]|0,c[n+4>>2]|0,60,0)|0;o=g;c[o>>2]=n;c[o+4>>2]=D;c[f>>2]=35382;o=g;n=c[o+4>>2]|0;if(!(1==(c[e>>2]|0)&(n>>>0>0|(n|0)==0&(c[o>>2]|0)>>>0>120))?(o=g,o=nr(c[o>>2]|0,c[o+4>>2]|0,24,0)|0,!(0==(o|0)&0==(D|0))):0)break;n=g;n=ir(c[n>>2]|0,c[n+4>>2]|0,24,0)|0;o=g;c[o>>2]=n;c[o+4>>2]=D;o=g;if(1==(c[o>>2]|0)?0==(c[o+4>>2]|0):0){c[f>>2]=21666;break}else{c[f>>2]=21670;break}}while(0);i=g;k=c[i+4>>2]|0;o=c[f>>2]|0;n=h;c[n>>2]=c[i>>2];c[n+4>>2]=k;c[h+8>>2]=o;Sb(71651,128,21645,h)|0;c[d>>2]=71651;o=c[d>>2]|0;l=j;return o|0}function md(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=l;l=l+96|0;if((l|0)>=(m|0))$(96);x=A+24|0;z=A+16|0;y=A+8|0;o=A;t=A+84|0;B=A+80|0;n=A+76|0;u=A+72|0;v=A+68|0;w=A+64|0;h=A+60|0;i=A+56|0;p=A+52|0;j=A+48|0;k=A+44|0;q=A+40|0;r=A+36|0;s=A+32|0;c[B>>2]=b;c[n>>2]=e;c[u>>2]=f;c[v>>2]=g;c[j>>2]=c[B>>2];if((c[v>>2]|0)>>>0<((((c[n>>2]<<3)+4|0)>>>0)/5|0)>>>0){c[k>>2]=883;if((c[274]|0)==-1)c[274]=Wb(1,0,21635,21684,c[k>>2]|0)|0;if((Xb()|0)<=0){if(c[274]|0){c[o>>2]=21635;c[o+4>>2]=883;Zb(1,61295,o)}}else Yb(-1,0);c[t>>2]=0;B=c[t>>2]|0;l=A;return B|0}c[p>>2]=0;c[w>>2]=0;c[h>>2]=0;c[i>>2]=0;while(1){if(!((c[h>>2]|0)>>>0<(c[n>>2]|0)>>>0?1:(c[p>>2]|0)>>>0>0)){b=32;break}if((c[p>>2]|0)>>>0<5?(c[h>>2]|0)>>>0<(c[n>>2]|0)>>>0:0){o=c[i>>2]<<8;B=c[h>>2]|0;c[h>>2]=B+1;c[i>>2]=o|(d[(c[j>>2]|0)+B>>0]|0);c[p>>2]=(c[p>>2]|0)+8}if((c[p>>2]|0)>>>0<5){c[i>>2]=c[i>>2]<<5-(c[p>>2]|0);if((c[p>>2]|0)!=((c[n>>2]<<3>>>0)%5|0|0)){b=15;break}c[p>>2]=5}if((c[w>>2]|0)>>>0>=(c[v>>2]|0)>>>0){b=24;break}o=a[(c[277]|0)+((c[i>>2]|0)>>>((c[p>>2]|0)-5|0)&31)>>0]|0;B=c[w>>2]|0;c[w>>2]=B+1;a[(c[u>>2]|0)+B>>0]=o;c[p>>2]=(c[p>>2]|0)-5}if((b|0)==15){c[q>>2]=900;if((c[275]|0)==-1)c[275]=Wb(1,0,21635,21684,c[q>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[275]|0))Vb();c[y>>2]=21635;c[y+4>>2]=900;Zb(1,61295,y);Vb()}else if((b|0)==24){c[r>>2]=905;if((c[276]|0)==-1)c[276]=Wb(1,0,21635,21684,c[r>>2]|0)|0;if((Xb()|0)<=0){if(c[276]|0){c[z>>2]=21635;c[z+4>>2]=905;Zb(1,61295,z)}}else Yb(-1,0);c[t>>2]=0;B=c[t>>2]|0;l=A;return B|0}else if((b|0)==32){if(!(c[p>>2]|0)){if((c[w>>2]|0)>>>0<(c[v>>2]|0)>>>0)a[(c[u>>2]|0)+(c[w>>2]|0)>>0]=0;c[t>>2]=(c[u>>2]|0)+(c[w>>2]|0);B=c[t>>2]|0;l=A;return B|0}c[s>>2]=911;if((c[278]|0)==-1)c[278]=Wb(1,0,21635,21684,c[s>>2]|0)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[278]|0))Vb();c[x>>2]=21635;c[x+4>>2]=911;Zb(1,61295,x);Vb()}return 0}function nd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=k+20|0;f=k+16|0;g=k+12|0;h=k+8|0;i=k+4|0;j=k;c[f>>2]=b;c[g>>2]=d;c[i>>2]=c[g>>2]<<3;if((((c[i>>2]|0)>>>0)%5|0)>>>0>0)c[i>>2]=(c[i>>2]|0)+(5-(((c[i>>2]|0)>>>0)%5|0));c[i>>2]=((c[i>>2]|0)>>>0)/5|0;c[h>>2]=Pb((c[i>>2]|0)+1|0,21635,939)|0;c[j>>2]=md(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[i>>2]|0)|0;if(!(c[j>>2]|0)){Rb(c[h>>2]|0,21635,943);c[e>>2]=0;j=c[e>>2]|0;l=k;return j|0}else{a[c[j>>2]>>0]=0;c[e>>2]=c[h>>2];j=c[e>>2]|0;l=k;return j|0}return 0}function od(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+64|0;if((l|0)>=(m|0))$(64);w=x;v=x+60|0;r=x+56|0;i=x+52|0;j=x+48|0;k=x+44|0;s=x+40|0;n=x+36|0;o=x+32|0;t=x+28|0;p=x+24|0;g=x+20|0;q=x+16|0;h=x+12|0;u=x+8|0;c[r>>2]=b;c[i>>2]=d;c[j>>2]=e;c[k>>2]=f;c[h>>2]=c[k>>2]<<3;if(!(c[i>>2]|0))if(!(c[k>>2]|0)){c[v>>2]=1;w=c[v>>2]|0;l=x;return w|0}else{c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}c[q>>2]=c[j>>2];c[n>>2]=c[k>>2];c[s>>2]=c[i>>2];if((((c[h>>2]|0)>>>0)%5|0)>>>0>0){c[t>>2]=((c[h>>2]|0)>>>0)%5|0;c[g>>2]=5-(c[t>>2]|0);k=(c[s>>2]|0)+-1|0;c[s>>2]=k;k=pd(a[(c[r>>2]|0)+k>>0]|0)|0;c[p>>2]=k;c[o>>2]=k>>c[g>>2]}else{c[t>>2]=5;c[g>>2]=0;k=(c[s>>2]|0)+-1|0;c[s>>2]=k;k=pd(a[(c[r>>2]|0)+k>>0]|0)|0;c[p>>2]=k;c[o>>2]=k}if(((((c[h>>2]|0)+(c[g>>2]|0)|0)>>>0)/5|0|0)!=(c[i>>2]|0)){c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}if(-1==(c[p>>2]|0)){c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}while(1){d=c[s>>2]|0;if((c[n>>2]|0)>>>0<=0){b=25;break}if(!d){b=14;break}k=(c[s>>2]|0)+-1|0;c[s>>2]=k;k=pd(a[(c[r>>2]|0)+k>>0]|0)|0;c[p>>2]=k;c[o>>2]=k<<c[t>>2]|c[o>>2];if(-1==(c[p>>2]|0)){b=22;break}c[t>>2]=(c[t>>2]|0)+5;if((c[t>>2]|0)>>>0<8)continue;j=c[o>>2]&255;k=(c[n>>2]|0)+-1|0;c[n>>2]=k;a[(c[q>>2]|0)+k>>0]=j;c[o>>2]=(c[o>>2]|0)>>>8;c[t>>2]=(c[t>>2]|0)-8}if((b|0)==14){c[u>>2]=1003;if((c[279]|0)==-1)c[279]=Wb(1,0,21635,21747,c[u>>2]|0)|0;if((Xb()|0)<=0){if(c[279]|0){c[w>>2]=21635;c[w+4>>2]=1003;Zb(1,61295,w)}}else Yb(-1,0);c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}else if((b|0)==22){c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}else if((b|0)==25)if(0!=(d|0)|0!=(c[t>>2]|0)){c[v>>2]=-1;w=c[v>>2]|0;l=x;return w|0}else{c[v>>2]=1;w=c[v>>2]|0;l=x;return w|0}return 0}function pd(b){b=b|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=h+4|0;f=h+8|0;g=h;a[f>>0]=b;switch(d[f>>0]|0|0){case 111:case 79:{a[f>>0]=48;break}case 76:case 108:case 73:case 105:{a[f>>0]=49;break}case 85:case 117:{a[f>>0]=86;break}default:{}}if((d[f>>0]|0|0)>=48?(d[f>>0]|0|0)<=57:0){c[e>>2]=(d[f>>0]|0)-48;g=c[e>>2]|0;l=h;return g|0}if((d[f>>0]|0|0)>=97?(d[f>>0]|0|0)<=122:0)a[f>>0]=Bp(d[f>>0]|0)|0;c[g>>2]=0;if((d[f>>0]|0|0)>=65?(d[f>>0]|0|0)<=90:0){if(73<(d[f>>0]|0|0))c[g>>2]=(c[g>>2]|0)+1;if(76<(d[f>>0]|0|0))c[g>>2]=(c[g>>2]|0)+1;if(79<(d[f>>0]|0|0))c[g>>2]=(c[g>>2]|0)+1;if(85<(d[f>>0]|0|0))c[g>>2]=(c[g>>2]|0)+1;c[e>>2]=(d[f>>0]|0)-65+10-(c[g>>2]|0);g=c[e>>2]|0;l=h;return g|0}c[e>>2]=-1;g=c[e>>2]|0;l=h;return g|0}function qd(){var a=0;a=70232;D=c[a+4>>2]|0;return c[a>>2]|0}function rd(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=a;c[b>>2]=c[16];c[b+4>>2]=c[17];D=c[b+4>>2]|0;l=a;return c[b>>2]|0}function sd(){var a=0,b=0,d=0,e=0,f=0;a=l;l=l+32|0;if((l|0)>=(m|0))$(32);b=a+8|0;d=a;e=a+16|0;gb(e|0,0)|0;f=c[e>>2]|0;f=kr(f|0,((f|0)<0)<<31>>31|0,1e3,0)|0;f=kr(f|0,D|0,1e3,0)|0;e=c[e+4>>2]|0;e=_q(f|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;f=70232;f=_q(e|0,D|0,c[f>>2]|0,c[f+4>>2]|0)|0;e=d;c[e>>2]=f;c[e+4>>2]=D;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];D=c[b+4>>2]|0;l=a;return c[b>>2]|0}function td(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=a;c[b>>2]=c[17560];c[b+4>>2]=c[17561];D=c[b+4>>2]|0;l=a;return c[b>>2]|0}function ud(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=l;l=l+32|0;if((l|0)>=(m|0))$(32);b=f+24|0;d=f+16|0;e=f+8|0;h=f;g=sd()|0;j=h;c[j>>2]=g;c[j+4>>2]=D;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];h=a;j=c[h+4>>2]|0;g=d;i=c[g+4>>2]|0;if(j>>>0>i>>>0|((j|0)==(i|0)?(c[h>>2]|0)>>>0>(c[g>>2]|0)>>>0:0)){j=td()|0;i=b;c[i>>2]=j;c[i+4>>2]=D;i=b;j=i;j=c[j>>2]|0;i=i+4|0;i=c[i>>2]|0;D=i;l=f;return j|0}else{i=d;j=a;j=Xq(c[i>>2]|0,c[i+4>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0;i=e;c[i>>2]=j;c[i+4>>2]=D;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];i=b;j=i;j=c[j>>2]|0;i=i+4|0;i=c[i>>2]|0;D=i;l=f;return j|0}return 0}function vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=Xp(c[e>>2]|0)|0;b=_q(0,b|0,Xp(c[e+4>>2]|0)|0,0)|0;l=d;return b|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;f=e;c[f>>2]=a;c[f+4>>2]=b;b=Yp(c[e>>2]|0)|0;b=_q(0,b|0,Yp(c[e+4>>2]|0)|0,0)|0;l=d;return b|0}function xd(a){a=a|0;return Pn(a)|0}function yd(a){a=a|0;return Ye(a)|0}function zd(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;c[e>>2]=b;b=Ze(a,e)|0;l=d;return ((b|0)==0?0:b&65535|16777216)|0}function Ad(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=tf(a,b,c,d)|0;return ((d|0)==0?0:d&65535|16777216)|0}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=f;c[g>>2]=e;e=Ef(a,b,d,g)|0;l=f;return ((e|0)==0?0:e&65535|16777216)|0}function Cd(a){a=a|0;sf(a);return}function Dd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gf(a,b,c,d)|0}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;return uf(a,b,c)|0}function Fd(a){a=a|0;return Cf(a)|0}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;return Af(a,b,c)|0}function Hd(a){a=a|0;return Hl(a)|0}function Id(a){a=a|0;Jl(a);return}function Jd(a,b){a=a|0;b=b|0;return wk(a,b)|0}function Kd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=Sk(a,b,c,d,e)|0;return ((e|0)==0?0:e&65535|16777216)|0}function Ld(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;e=Tk(a,b,c,d,e)|0;return ((e|0)==0?0:e&65535|16777216)|0}function Md(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Lk(a,b,c,d);return}function Nd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Mk(a,b,c,d);return}function Od(a,b,c){a=a|0;b=b|0;c=c|0;return Ek(a,b,c)|0}function Pd(a,b,c){a=a|0;b=b|0;c=c|0;return Fk(a,b,c)|0}function Qd(a){a=a|0;return Oj(a)|0}function Rd(a){a=a|0;Qj(a);return}function Sd(a,b,c){a=a|0;b=b|0;c=c|0;c=Hg(a,b,c)|0;return ((c|0)==0?0:c&65535|16777216)|0}function Td(a,b,c){a=a|0;b=b|0;c=c|0;return Zj(a,b,c)|0}function Ud(a,b,c){a=a|0;b=b|0;c=c|0;return _j(a,b,c)|0}function Vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nj(a,b,c,sg(d,1)|0)|0}function Wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ck(a,b,c,sg(d,1)|0);return}function Xd(a){a=a|0;return lk(a)|0}function Yd(a,b){a=a|0;b=b|0;return mk(a,b)|0}function Zd(a,b){a=a|0;b=b|0;pk(a,b);return}function _d(a,b){a=a|0;b=b|0;return wl(a,b)|0}function $d(a,b){a=a|0;b=b|0;return Ll(a,b)|0}function ae(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(!(We()|0)){c[a>>2]=0;e=16777392;return e|0}else{e=vg(a,b,d,e)|0;e=(e|0)==0?0:e&65535|16777216;return e|0}return 0}function be(a){a=a|0;xg(a);return}function ce(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0)){c=16777392;return c|0}c=Ag(a,b,c)|0;c=(c|0)==0?0:c&65535|536870912;return c|0}function de(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0)){c=16777392;return c|0}c=Bg(a,b,c)|0;c=(c|0)==0?0:c&65535|536870912;return c|0}function ee(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(We()|0){e=yg(a,b,c,d,e)|0;e=(e|0)==0?0:e&65535|16777216;return e|0}if(!b){e=16777392;return e|0}Yq(b|0,66,c|0)|0;e=16777392;return e|0}function fe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!(We()|0)){e=16777392;return e|0}e=zg(a,b,c,d,e)|0;e=(e|0)==0?0:e&65535|16777216;return e|0}function ge(a,b,d){a=a|0;b=b|0;d=d|0;if(!(We()|0)){c[a>>2]=0;d=16777392;return d|0}else{d=Sh(a,b,d)|0;d=(d|0)==0?0:d&65535|16777216;return d|0}return 0}function he(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0)){c=16777392;return c|0}c=Th(a,b,c)|0;c=(c|0)==0?0:c&65535|16777216;return c|0}function ie(a){a=a|0;if(!(We()|0)){a=16777392;return a|0}a=Uh(a)|0;a=(a|0)==0?0:a&65535|16777216;return a|0}function je(a,b){a=a|0;b=b|0;if(!(We()|0)){c[a>>2]=0;b=16777392;return b|0}else{b=Vh(a,b)|0;b=(b|0)==0?0:b&65535|16777216;return b|0}return 0}function ke(a,b,d){a=a|0;b=b|0;d=d|0;if(!(We()|0)){c[a>>2]=0;d=16777392;return d|0}else{d=eh(a,b,d)|0;d=(d|0)==0?0:d&65535|16777216;return d|0}return 0}function le(a){a=a|0;kh(a);return}function me(a){a=a|0;ih(a);return}function ne(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0))return;lh(a,b,c);return}function oe(a,b){a=a|0;b=b|0;return ph(a,b)|0}function pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!(We()|0))kg(21777,1175,21790,0,21810);oh(a,b,c,d);return}function qe(a){a=a|0;if(!(We()|0)){kg(21777,1198,21842,0,21859);a=0;return a|0}else{a=rh(a)|0;return a|0}return 0}function re(a){a=a|0;return sh(a)|0}function se(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0)){c=16777392;return c|0}c=nh(a,b,c)|0;c=(c|0)==0?0:c&65535|16777216;return c|0}function te(a,b,c){a=a|0;b=b|0;c=c|0;if(!(We()|0)){kg(21777,1287,21889,1,21810);fg()}else{Dj(a,b,c);return}}function ue(a,b){a=a|0;b=b|0;if(!(We()|0)){kg(21777,1340,21904,1,21810);fg()}else{Hj(a,b);return}}function ve(a){a=a|0;tg(a);return}function we(a,b){a=a|0;b=b|0;of(a,b);return}function xe(a,b){a=a|0;b=b|0;Ae(a,b);return}function ye(a){a=a|0;cf(a);return}function ze(a){a=a|0;var b=0;b=c[17575]|0;if(!b){b=a;return b|0}b=tb[b&15](a)|0;return b|0}function Ae(a,b){a=a|0;b=b|0;c[17576]=b;c[17577]=a;return}function Be(a,b){a=a|0;b=b|0;if(!b)b=Pn(a)|0;if(c[17577]|0?(gg()|0)==0:0)ub[c[17577]&7](c[17576]|0,a,b);kg(21922,86,21929,1,b);Ce(21947);Ce(b);Ce(22378);bg();za()}function Ce(a){a=a|0;oq(2,a,Fo(a)|0)|0;return}function De(a){a=a|0;c[17580]=a;return}function Ee(a){a=a|0;return (c[17580]|0)>=(a|0)|0}function Fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=g;e=c[17578]|0;if(!e){switch(a|0){case 30:case 20:case 10:case 0:break;case 40:{iq(21962,7,1,c[3935]|0)|0;break}case 50:{iq(21970,13,1,c[3935]|0)|0;break}case 100:{iq(21984,5,1,c[3935]|0)|0;break}default:{e=c[3935]|0;c[f>>2]=a;Rp(e,21990,f)|0}}np(c[3935]|0,b,d)|0}else zb[e&1](c[17579]|0,a,b,d);switch(a|0){case 40:case 50:{kg(21922,140,22015,1,22026);bg();za();break}default:{l=g;return}}}function Ge(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e;c[f>>2]=d;Fe(a,b,f);l=e;return}function He(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);c[e>>2]=a;c[e+4>>2]=b;c[e+8>>2]=d;Ge(50,22056,e);za()}function Ie(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;c[f+12>>2]=e;Ge(50,22086,f);za()}function Je(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;c[d>>2]=b;b=c[17578]|0;if(!b){np(c[3935]|0,a,d)|0;l=e;return}else{zb[b&1](c[17579]|0,10,a,d);l=e;return}}function Ke(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=f;c[e>>2]=d;a=c[17578]|0;if(!a){np(c[3935]|0,b,e)|0;l=f;return 0}else{zb[a&1](c[17579]|0,10,b,e);l=f;return 0}return 0}function Le(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;c[d>>2]=b;b=c[17578]|0;if(!b){np(c[3935]|0,a,d)|0;l=e;return}else{zb[b&1](c[17579]|0,30,a,d);l=e;return}}function Me(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);c[d>>2]=b;Fe(40,a,d);za()}function Ne(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);c[d>>2]=b;Fe(50,a,d);za()}function Oe(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;c[d>>2]=b;b=c[17578]|0;if(!b){b=c[3935]|0;iq(21984,5,1,b)|0;np(b,a,d)|0;l=e;return}else{zb[b&1](c[17579]|0,100,a,d);l=e;return}}function Pe(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;if(!a){l=e;return}c[d>>2]=b;b=c[17578]|0;if(!b)np(c[3935]|0,a,d)|0;else zb[b&1](c[17579]|0,0,a,d);l=e;return}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;Re(a,22120,b,c);return}function Re(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+80|0;if((l|0)>=(m|0))$(80);r=s+64|0;p=s+48|0;o=s+40|0;n=s+32|0;k=s+24|0;j=s+16|0;i=s+8|0;h=s;q=(b|0)!=0;if(q?(a[b>>0]|0)!=0:0){c[h>>2]=b;c[h+4>>2]=e;Oe(22122,h);if((f|0)!=0&((g|0)!=0&(a[e+1>>0]|0)==91)){Pe(22378,i);c[j>>2]=Fo(b)|0;c[j+4>>2]=71847;Oe(22128,j);i=1;e=22120}else i=1}else i=0;a:do if(g|0){h=g+-1|0;if(!i)while(1){c[k>>2]=d[f>>0];Pe(22134,k);if(!h)break a;else{f=f+1|0;h=h+-1|0}}else i=0;while(1){c[n>>2]=d[f>>0];Pe(22134,n);i=i+1|0;if((h|0)!=0&(i|0)==32){Pe(22139,o);k=Fo(b)|0;i=Fo(e)|0;c[p>>2]=k;c[p+4>>2]=71847;c[p+8>>2]=i;c[p+12>>2]=71847;Oe(22143,p);i=0}if(!h)break;else{f=f+1|0;h=h+-1|0}}}while(0);if(!q){l=s;return}Pe(22378,r);l=s;return}function Se(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+80|0;if((l|0)>=(m|0))$(80);n=p+32|0;o=p+24|0;g=p+16|0;j=p+8|0;i=p;h=p+44|0;k=p+40|0;e=p+36|0;f=p+48|0;if(!d){d=b|0?b:22120;if(a[d>>0]|0){c[i>>2]=d;c[i+4>>2]=22151;Oe(22122,i)}Pe(22378,j);l=p;return}if(c[d+12>>2]&4|0){o=wl(d,e)|0;c[g>>2]=c[e>>2];lp(f,30,22159,g)|0;Re(b|0?b:22120,f,o,((c[e>>2]|0)+7|0)>>>3);l=p;return}f=Ok(d,0,h,k)|0;if(!f){d=b|0?b:22120;if(a[d>>0]|0){c[o>>2]=d;c[o+4>>2]=22169;Oe(22122,o)}Pe(22378,n);l=p;return}e=c[h>>2]|0;d=c[k>>2]|0?22184:22186;if(!e)Re(b,d,71847,1);else Re(b,d,f,e);cf(f);l=p;return}function Te(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;d=b+63+((b|0)==0&1)&-64;e=d;b=l;l=l+((1*e|0)+15&-16)|0;if((l|0)>=(m|0))$((1*e|0)+15&-16|0);if((d|0)!=0&(b&7|0)!=0)do{a[b>>0]=0;b=b+1|0;d=d+-1|0}while((d|0)!=0&(b&7|0)!=0);if(d>>>0>=8){g=d+-8|0;h=g&-8;f=h+8|0;e=b;while(1){j=e;c[j>>2]=0;c[j+4>>2]=0;d=d+-8|0;if(d>>>0<=7)break;else e=e+8|0}b=b+f|0;d=g-h|0}if(!d){l=i;return}while(1){a[b>>0]=0;d=d+-1|0;if(!d)break;else b=b+1|0}l=i;return}function Ue(){return}function Ve(){Tn(33);Be(Qn(c[(zo()|0)>>2]|0)|0,22188)}function We(){if(!(c[17581]|0))Xe();return mg()|0}function Xe(){if(c[17581]|0)return;c[17581]=1;qj(0);dg(c[17582]|0);Mf();if((((((Cg()|0)==0?(vh()|0)==0:0)?(Wh()|0)==0:0)?(wh()|0)==0:0)?(Wf()|0)==0:0)?(jl()|0)==0:0)return;He(22203,123,22212)}function Ye(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;if(!b){Xe();h=22224;return h|0}if((a[b>>0]|0)==1?(a[b+1>>0]|0)==1:0){h=Nl()|0;return h|0}Xe();c=a[b>>0]|0;if(c<<24>>24==48?((a[b+1>>0]|0)+-48|0)>>>0<10:0){h=0;return h|0}d=(c<<24>>24)+-48|0;if(d>>>0<10){e=0;do{e=(e*10|0)+d|0;b=b+1|0;c=a[b>>0]|0;d=(c<<24>>24)+-48|0}while(d>>>0<10);if((e|0)<0){h=0;return h|0}}else e=0;if(c<<24>>24!=46){h=0;return h|0}d=b+1|0;g=a[d>>0]|0;if(g<<24>>24==48?((a[b+2>>0]|0)+-48|0)>>>0<10:0){h=0;return h|0}c=(g<<24>>24)+-48|0;if(c>>>0<10){f=d;d=0;do{d=(d*10|0)+c|0;f=f+1|0;b=a[f>>0]|0;c=(b<<24>>24)+-48|0}while(c>>>0<10);if((d|0)<0){h=0;return h|0}else h=d}else{h=0;f=d;b=g}if(b<<24>>24!=46){h=0;return h|0}d=f+1|0;b=a[d>>0]|0;if(b<<24>>24==48?((a[f+2>>0]|0)+-48|0)>>>0<10:0){h=0;return h|0}c=(b<<24>>24)+-48|0;if(c>>>0<10){b=0;do{b=(b*10|0)+c|0;d=d+1|0;c=(a[d>>0]|0)+-48|0}while(c>>>0<10);if((b|0)<0){h=0;return h|0}}else b=0;if((e|0)<1){h=22224;return h|0}if((e|0)==1){if((h|0)<7){h=22224;return h|0}if((h|0)==7&(b|0)==0){h=22224;return h|0}}h=0;return h|0}function Ze(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+112|0;if((l|0)>=(m|0))$(112);r=s+88|0;p=s+80|0;o=s+72|0;n=s+64|0;h=s+48|0;g=s+24|0;f=s+16|0;e=s+8|0;d=s;j=s+96|0;do switch(a|0){case 31:{Nf();b=0;l=s;return b|0}case 44:{qj(0);wj();b=0;l=s;return b|0}case 51:{b=(zj()|0)!=0&1;l=s;return b|0}case 13:{uj();b=0;l=s;return b|0}case 14:{cg();b=0;l=s;return b|0}case 30:{Xe();Uf(0);b=0;l=s;return b|0}case 37:{Xe();c[17583]=1;b=0;l=s;return b|0}case 24:{Xe();q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;Uf(r);b=(Tf()|0)>>>2&1;l=s;return b|0}case 25:{Xe();bg();b=0;l=s;return b|0}case 27:{qj(0);Sf(Tf()|0|1);b=0;l=s;return b|0}case 28:{qj(0);Sf(Tf()|0|2);b=0;l=s;return b|0}case 29:{qj(0);Sf((Tf()|0)&-3);b=0;l=s;return b|0}case 22:{Xe();vj();b=0;l=s;return b|0}case 45:{qj(0);q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;Ej(r);b=0;l=s;return b|0}case 46:{qj(0);if(!(c[17581]|0))Xe();if(!(mg()|0)){b=0;l=s;return b|0}Fj();b=0;l=s;return b|0}case 19:{qj(0);q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;De(r);b=0;l=s;return b|0}case 20:{q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;c[17584]=c[17584]|r;b=0;l=s;return b|0}case 21:{q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;c[17584]=c[17584]&~r;b=0;l=s;return b|0}case 36:{Xe();b=0;l=s;return b|0}case 40:{b=c[17581]|0;l=s;return b|0}case 39:{b=c[17585]|0;l=s;return b|0}case 38:{if(c[17585]|0){b=0;l=s;return b|0}Xe();rj(0);c[17585]=1;if(!(c[17581]|0))Xe();mg()|0;b=0;l=s;return b|0}case 47:{qj(0);Xe();b=0;l=s;return b|0}case 48:{qj(0);rj(1);if(!(c[17581]|0))Xe();if(!(mg()|0)){b=0;l=s;return b|0}Gj();b=0;l=s;return b|0}case 52:{b=16777276;l=s;return b|0}case 49:{qj(0);q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;xj(r);b=0;l=s;return b|0}case 50:{qj(0);rj(1);q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;yj((r|0)!=0&1)|0;b=0;l=s;return b|0}case 70:{sj();b=0;l=s;return b|0}case 53:{i=(c[b>>2]|0)+(4-1)&~(4-1);k=c[i>>2]|0;c[b>>2]=i+4;qj(0);i=k|0?28:27;c[d>>2]=22224;pb[i&63](k,22238,d)|0;c[e>>2]=22264;pb[i&63](k,22251,e)|0;c[f>>2]=22289;pb[i&63](k,22276,f)|0;c[g>>2]=22310;pb[i&63](k,22297,g)|0;pb[i&63](k,22324,s+32|0)|0;pb[i&63](k,22340,s+40|0)|0;c[h>>2]=il()|0;pb[i&63](k,22352,h)|0;e=Kf()|0;pb[i&63](k,22365,s+56|0)|0;a=Lf(0,j)|0;if(a|0){d=0;do{if(c[j>>2]&e|0){c[n>>2]=a;pb[i&63](k,22374,n)|0}d=d+1|0;a=Lf(d,j)|0}while((a|0)!=0)}pb[i&63](k,22378,o)|0;b=(gg()|0)!=0;a=(hg()|0)!=0;c[p>>2]=b?121:110;c[p+4>>2]=a?121:110;pb[i&63](k,22380,p)|0;a=tj(0)|0;switch(a|0){case 1:{q=22423;break}case 2:{q=22418;break}case 3:{q=22411;break}default:He(22203,321,22398)}c[r>>2]=q;c[r+4>>2]=a;pb[i&63](k,22432,r)|0;b=0;l=s;return b|0}case 54:{qj(0);b=(pg()|0)!=0&1;l=s;return b|0}case 55:{if(!(gg()|0)){b=0;l=s;return b|0}b=lg()|0;b=(c[17583]|b|0)==0&1;l=s;return b|0}case 56:{qj(0);if(!(c[17581]|0)){c[17582]=1;b=0;l=s;return b|0}if(!(qg()|0)){b=mg()|0;b=(b|0)!=0;b=b&1;l=s;return b|0}ng(1)|0;b=mg()|0;b=(b|0)!=0;b=b&1;l=s;return b|0}case 57:{Xe();b=ng(1)|0;l=s;return b|0}case 58:{r=(c[b>>2]|0)+(4-1)&~(4-1);a=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);d=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);e=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);f=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);g=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);h=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);i=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);j=c[r>>2]|0;c[b>>2]=r+4;if(!(c[17581]|0))Xe();if(!(mg()|0)){b=176;l=s;return b|0}b=Jj(a,d,e,f,g,h,i,j)|0;l=s;return b|0}case 59:{r=(c[b>>2]|0)+(4-1)&~(4-1);a=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);d=c[r>>2]|0;c[b>>2]=r+4;r=(c[b>>2]|0)+(4-1)&~(4-1);e=c[r>>2]|0;c[b>>2]=r+4;if(!(c[17581]|0))Xe();if(!(mg()|0)){b=176;l=s;return b|0}b=Kj(a,d,e)|0;l=s;return b|0}case 60:{q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;Lj(r);b=0;l=s;return b|0}case 61:{q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;switch(r|0){case 30111:{b=Un(1120)|0;l=s;return b|0}case 30112:{b=Vn(1120)|0;l=s;return b|0}case 30113:{b=Wn(1120)|0;l=s;return b|0}case 30114:{b=Xn(1120)|0;l=s;return b|0}default:{b=61;l=s;return b|0}}}case 63:{q=(c[b>>2]|0)+(4-1)&~(4-1);r=c[q>>2]|0;c[b>>2]=q+4;b=Jf(r)|0;l=s;return b|0}case 64:{if(c[17581]|0){b=1;l=s;return b|0}qj(0);ig();b=0;l=s;return b|0}case 65:{r=(c[b>>2]|0)+(4-1)&~(4-1);a=c[r>>2]|0;c[b>>2]=r+4;if((a|0)<=0){b=0;l=s;return b|0}qj(a);b=0;l=s;return b|0}case 66:{r=(c[b>>2]|0)+(4-1)&~(4-1);a=c[r>>2]|0;c[b>>2]=r+4;if(!a){b=0;l=s;return b|0}c[a>>2]=tj(c[17581]^1)|0;b=0;l=s;return b|0}case 67:{qj(0);Sf(Tf()|0|8);b=0;l=s;return b|0}case 68:{qj(0);Sf(Tf()|0|16);b=0;l=s;return b|0}case 72:case 71:{b=69;l=s;return b|0}case 62:case 23:{b=0;l=s;return b|0}default:{qj(0);b=61;l=s;return b|0}}while(0);return 0}function _e(a){a=a|0;var b=0;b=c[17586]|0;if(!b)a=Of(a)|0;else a=tb[b&15](a)|0;if(a|0){b=a;return b|0}b=zo()|0;a=c[b>>2]|0;if(!a){Tn(12);a=c[b>>2]|0}Qn(a)|0;b=0;return b|0}function $e(a){a=a|0;var b=0,d=0;do if(c[17583]|0){if(hg()|0){c[17583]=0;d=5;break}if(c[17583]|0){b=c[17586]|0;if(!b){b=Of(a)|0;break}else{b=tb[b&15](a)|0;break}}else d=5}else d=5;while(0);do if((d|0)==5){b=c[17587]|0;if(!b){b=Pf(a)|0;break}else{b=tb[b&15](a)|0;break}}while(0);if(b|0){d=b;return d|0}a=zo()|0;b=c[a>>2]|0;if(!b){Tn(12);b=c[a>>2]|0}Qn(b)|0;d=0;return d|0}function af(a){a=a|0;var b=0;do if(c[17583]|0){if(hg()|0){c[17583]=0;break}if(c[17583]|0){b=0;return b|0}}while(0);b=c[17588]|0;if(!b){b=ag(a)|0;return b|0}else{b=tb[b&15](a)|0;return b|0}return 0}function bf(a,b){a=a|0;b=b|0;var d=0;if(!a){d=c[17586]|0;if(!d)d=Of(b)|0;else d=tb[d&15](b)|0;if(d|0){a=d;return a|0}b=zo()|0;d=c[b>>2]|0;if(!d){Tn(12);d=c[b>>2]|0}Qn(d)|0;a=0;return a|0}if(!b){d=c[(zo()|0)>>2]|0;b=c[17590]|0;if(!b)Rf(a);else rb[b&7](a);if(!d){a=0;return a|0}Tn(d);a=0;return a|0}d=c[17589]|0;if(!d)d=Qf(a,b)|0;else d=yb[d&7](a,b)|0;if(d|0){a=d;return a|0}if(c[(zo()|0)>>2]|0){a=0;return a|0}Tn(12);a=0;return a|0}function cf(a){a=a|0;var b=0,d=0;if(!a)return;b=c[(zo()|0)>>2]|0;d=c[17590]|0;if(!d)Rf(a);else rb[d&7](a);if(!b)return;Tn(b);return}function df(a,b){a=a|0;b=b|0;var d=0;d=S(b,a)|0;if(b|0?((d>>>0)/(b>>>0)|0|0)!=(a|0):0){Tn(12);d=0;return d|0}a=c[17586]|0;if(!a)a=Of(d)|0;else a=tb[a&15](d)|0;if(a|0){Yq(a|0,0,d|0)|0;d=a;return d|0}b=zo()|0;a=c[b>>2]|0;if(!a){Tn(12);a=c[b>>2]|0}Qn(a)|0;d=0;return d|0}function ef(a,b){a=a|0;b=b|0;var c=0;c=S(b,a)|0;if(b|0?((c>>>0)/(b>>>0)|0|0)!=(a|0):0){Tn(12);c=0;return c|0}a=$e(c)|0;if(!a){c=0;return c|0}Yq(a|0,0,c|0)|0;c=a;return c|0}function ff(a){a=a|0;var b=0,d=0,e=0,f=0;e=Fo(a)|0;do if(c[17583]|0){if(hg()|0){c[17583]=0;f=6;break}if(c[17583]|0){d=e+1|0;f=10}else f=6}else f=6;while(0);if((f|0)==6){b=c[17588]|0;if(!b)d=ag(a)|0;else d=tb[b&15](a)|0;b=e+1|0;if(d){b=$e(b)|0;if(!b){a=0;return a|0}}else{d=b;f=10}}if((f|0)==10){b=c[17586]|0;if(!b)b=Of(d)|0;else b=tb[b&15](d)|0;if(!b){d=zo()|0;b=c[d>>2]|0;if(!b){Tn(12);b=c[d>>2]|0}Qn(b)|0;a=0;return a|0}}Mp(b,a)|0;a=b;return a|0}function gf(a){a=a|0;var b=0,d=0,e=0;while(1){b=c[17586]|0;if(!b)b=Of(a)|0;else b=tb[b&15](a)|0;if(b|0){a=11;break}d=zo()|0;b=c[d>>2]|0;if(!b){Tn(12);b=c[d>>2]|0}Qn(b)|0;e=(gg()|0)==0;b=c[17591]|0;if(!(e&(b|0)!=0)){a=10;break}if(!(pb[b&63](c[17592]|0,a,0)|0)){a=10;break}}if((a|0)==10)Be(Qn(c[d>>2]|0)|0,0);else if((a|0)==11)return b|0;return 0}function hf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;while(1){d=bf(a,b)|0;if(d|0){g=13;break}f=(gg()|0)==0;e=c[17591]|0;if(!(f&(e|0)!=0)){g=12;break}f=c[17592]|0;do if(c[17583]|0)if(!(hg()|0))if(!(c[17583]|0)){g=8;break}else{d=0;break}else{c[17583]=0;g=8;break}else g=8;while(0);do if((g|0)==8){g=0;d=c[17588]|0;if(!d){d=ag(a)|0;break}else{d=tb[d&15](a)|0;break}}while(0);if(!(pb[e&63](f,b,d|0?3:2)|0)){g=12;break}}if((g|0)==12)Be(Qn(c[(zo()|0)>>2]|0)|0,0);else if((g|0)==13)return d|0;return 0}function jf(a){a=a|0;var b=0,d=0;while(1){d=$e(a)|0;if(d|0){b=6;break}d=(gg()|0)==0;b=c[17591]|0;if(!(d&(b|0)!=0)){b=5;break}if(!(pb[b&63](c[17592]|0,a,1)|0)){b=5;break}}if((b|0)==5){d=Qn(c[(zo()|0)>>2]|0)|0;Be(d,ze(22449)|0)}else if((b|0)==6)return d|0;return 0}function kf(a,b){a=a|0;b=b|0;var d=0;d=S(b,a)|0;if(b|0?((d>>>0)/(b>>>0)|0|0)!=(a|0):0){Tn(12);Be(Qn(c[(zo()|0)>>2]|0)|0,0)}b=gf(d)|0;Yq(b|0,0,d|0)|0;return b|0}function lf(a,b){a=a|0;b=b|0;var d=0;d=S(b,a)|0;if(b|0?((d>>>0)/(b>>>0)|0|0)!=(a|0):0){Tn(12);Be(Qn(c[(zo()|0)>>2]|0)|0,0)}b=jf(d)|0;Yq(b|0,0,d|0)|0;return b|0}function mf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;do{b=ff(a)|0;if(b|0){f=15;break}e=Fo(a)|0;do if(c[17583]|0)if(!(hg()|0))if(!(c[17583]|0)){f=7;break}else{b=0;break}else{c[17583]=0;f=7;break}else f=7;while(0);do if((f|0)==7){f=0;b=c[17588]|0;if(!b){b=ag(a)|0;break}else{b=tb[b&15](a)|0;break}}while(0);d=(b|0)!=0;g=(gg()|0)==0;b=c[17591]|0;if(!(g&(b|0)!=0))break}while((pb[b&63](c[17592]|0,e,d&1)|0)!=0);if((f|0)==15)return b|0;b=Qn(c[(zo()|0)>>2]|0)|0;if(!d){g=0;Be(b,g)}g=ze(22449)|0;Be(b,g);return 0}function nf(a){a=a|0;var b=0;b=(gg()|0)==0;return (b?c[17584]&a:0)|0}function of(a,b){a=a|0;b=b|0;xh(a,b);oj(a,b);return}function pf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+16|0;if((l|0)>=(m|0))$(16);o=(e|0)==0?p+4|0:e;n=(f|0)==0?p:f;c[n>>2]=0;c[o>>2]=0;a:do if(!b)e=0;else{if((a[b>>0]|0)!=40){c[n>>2]=204;e=0;break}k=d+-1|0;e=0;d=0;j=0;i=0;f=b;b=40;b:while(1){g=b&255;c:do if(j)if(b<<24>>24==58){b=d+j|0;if(k>>>0<b>>>0){f=9;break b}d=b;h=0;b=i;f=f+j|0;break}else{if((b+-48&255)>=10){f=13;break b}h=(j*10|0)+-48+g|0;b=i;break}else switch(b<<24>>24){case 40:{if(i|0){f=16;break b}e=e+1|0;h=0;b=0;break c}case 41:{if(!e){f=19;break b}if(i|0){f=21;break b}e=e+-1|0;if(!e){f=23;break b}else{h=0;b=0;break c}}case 91:if(!i){h=0;b=f;break c}else{f=25;break b}case 93:if(!i){f=27;break b}else{h=0;b=0;break c}default:{if((b+-48&255)>=10){f=32;break b}if(b<<24>>24==48){f=30;break b}h=g+-48|0;b=i;break c}}while(0);g=f+1|0;d=d+1|0;if(k>>>0<d>>>0){f=5;break}j=h;i=b;f=g;b=a[g>>0]|0}switch(f|0){case 5:{c[o>>2]=d;c[n>>2]=202;e=0;break a}case 9:{c[o>>2]=d;c[n>>2]=202;e=0;break a}case 13:{c[o>>2]=d;c[n>>2]=201;e=0;break a}case 16:{c[o>>2]=d;c[n>>2]=209;e=0;break a}case 19:{c[o>>2]=d;c[n>>2]=203;e=0;break a}case 21:{c[o>>2]=d;c[n>>2]=209;e=0;break a}case 23:{e=d+1|0;break a}case 25:{c[o>>2]=d;c[n>>2]=208;e=0;break a}case 27:{c[o>>2]=d;c[n>>2]=209;e=0;break a}case 30:{c[o>>2]=d;c[n>>2]=207;e=0;break a}case 32:switch(b<<24>>24){case 92:case 38:{c[o>>2]=d;c[n>>2]=210;e=0;break a}default:{c[o>>2]=d;c[n>>2]=205;e=0;break a}}}}while(0);l=p;return e|0}function qf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);j=i;c[j>>2]=h;h=rf(a,b,d,e,f,g,j)|0;l=i;return h|0}function rf(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,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;T=l;l=l+64|0;if((l|0)>=(m|0))$(64);P=T+8|0;O=T;M=T+16|0;N=T+12|0;if(!b){S=45;l=T;return S|0}c[b>>2]=0;if(!f){S=45;l=T;return S|0}R=(e|0)==0?T+52|0:e;k=g+2|0;p=(g|0)==0;if(!p?(af(f)|0)!=0:0)e=$e(k)|0;else e=_e(k)|0;s=e;a:do if(!e){n=Qn(c[(zo()|0)>>2]|0)|0;c[R>>2]=0;o=s;S=283}else{b:do if(p){q=f;g=0;o=s;e=s;S=274}else{K=(h|0)!=0;L=(i|0)==0;q=f;J=g;A=0;y=0;x=0;r=0;B=0;C=0;D=0;E=0;F=0;G=0;g=0;p=s;e=s;c:while(1){w=(r|0)!=0;if(!(w|(x|0)==0))if(!(No(22485,a[q>>0]|0,71)|0)){u=q;v=u-x|0;h=p;t=e-p|0;do if((t+3+v|0)>>>0>=k>>>0){s=k+6+(v<<1)|0;if(s>>>0<=k>>>0){e=67;S=18;break c}h=bf(h,s)|0;if(!h){h=Qn(c[(zo()|0)>>2]|0)|0;if(!h)break;else{e=h;S=18;break c}}else{p=h;k=s;e=h+t|0;break}}while(0);H=e;I=H+1|0;a[H>>0]=1;S=v&65535;a[I>>0]=S;a[I+1>>0]=S>>8;H=H+3|0;cr(H|0,x|0,v|0)|0;I=0;H=H+v|0;S=20}else{z=y;h=q;w=J;r=0;t=G}else{I=x;H=e;S=20}d:do if((S|0)==20){S=0;if(y|0){e=a[q>>0]|0;if(F|0)switch(e<<24>>24|0){case 92:case 39:case 34:case 114:case 102:case 110:case 118:case 116:case 98:{F=0;z=y;x=I;h=q;w=J;t=G;e=H;break d}case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{if(J>>>0<=2){S=26;break c}if((a[q+1>>0]&-8)<<24>>24!=48){S=26;break c}e=q+2|0;if((a[e>>0]&-8)<<24>>24!=48){S=26;break c}F=0;z=y;x=I;h=e;w=J+-2|0;t=G;e=H;break d}case 120:{if(J>>>0<=2){S=33;break c}e=a[q+1>>0]|0;if((e+-48&255)>=10)switch(e<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{S=33;break c}}h=q+2|0;e=a[h>>0]|0;if((e+-48&255)>=10)switch(e<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{S=33;break c}}F=0;z=y;x=I;w=J+-2|0;t=G;e=H;break d}case 13:{h=q+1|0;w=(a[h>>0]|0)==10;F=0;z=y;x=I;h=w?h:q;w=(w<<31>>31)+J|0;t=G;e=H;break d}case 10:{h=q+1|0;w=(a[h>>0]|0)==13;F=0;z=y;x=I;h=w?h:q;w=(w<<31>>31)+J|0;t=G;e=H;break d}default:{S=37;break c}}if(e<<24>>24==92){F=1;z=y;x=I;h=q;w=J;t=G;e=H;break}if(e<<24>>24!=34){F=0;z=y;x=I;h=q;w=J;t=G;e=H;break}s=y+1|0;t=q;v=t-s|0;e=p;u=H-p|0;do if((v+3+u|0)>>>0>=k>>>0){h=(v<<1)+6+k|0;if(h>>>0<=k>>>0){e=67;S=81;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=81;break c}}else{p=e;k=h;e=e+u|0;break}}else e=H;while(0);x=e+1|0;a[e>>0]=1;a[x>>0]=0;a[x+1>>0]=0;e=e+3|0;y=e;e:do if(v){w=v;h=0;while(1){t=a[s>>0]|0;u=t&255;f:do if(!h){if(t<<24>>24==92){h=1;u=w;break}a[e>>0]=t;h=0;u=w;e=e+1|0}else do switch(t<<24>>24){case 98:{a[e>>0]=8;h=0;u=w;e=e+1|0;break f}case 116:{a[e>>0]=9;h=0;u=w;e=e+1|0;break f}case 118:{a[e>>0]=11;h=0;u=w;e=e+1|0;break f}case 110:{a[e>>0]=10;h=0;u=w;e=e+1|0;break f}case 102:{a[e>>0]=12;h=0;u=w;e=e+1|0;break f}case 114:{a[e>>0]=13;h=0;u=w;e=e+1|0;break f}case 34:{a[e>>0]=34;h=0;u=w;e=e+1|0;break f}case 39:{a[e>>0]=39;h=0;u=w;e=e+1|0;break f}case 92:{a[e>>0]=92;h=0;u=w;e=e+1|0;break f}case 13:{t=s+1|0;if(w>>>0<=1)break e;H=(a[t>>0]|0)==10;h=0;u=(H<<31>>31)+w|0;s=H?t:s;break f}case 10:{t=s+1|0;if(w>>>0<=1)break e;H=(a[t>>0]|0)==13;h=0;u=(H<<31>>31)+w|0;s=H?t:s;break f}case 120:{if(w>>>0<=2){h=0;u=w;break f}t=a[s+1>>0]|0;if((t+-48&255)>=10)switch(t<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{h=0;u=w;break f}}v=s+2|0;u=a[v>>0]|0;if((u+-48&255)>=10)switch(u<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{h=0;u=w;break f}}h=t&255;if((t&255)<58)s=h+-48|0;else s=h+10+((t&255)<71?-65:-97)|0;h=u&255;if((u&255)<58)h=h+-48|0;else h=h+10+((u&255)<71?-65:-97)|0;a[e>>0]=h+(s<<4);h=0;u=w+-2|0;e=e+1|0;s=v;break f}default:{if(!(w>>>0>2&(t&-8)<<24>>24==48)){h=0;u=w;break f}h=a[s+1>>0]|0;if((h&-8)<<24>>24!=48){h=0;u=w;break f}v=s+2|0;t=a[v>>0]|0;if((t&-8)<<24>>24!=48){h=0;u=w;break f}a[e>>0]=(u<<6)+80+((h&255)<<3)+(t&255);h=0;u=w+-2|0;e=e+1|0;s=v;break f}}while(0);while(0);w=u+-1|0;if(!w)break;else s=s+1|0}}while(0);F=e-y&65535;a[x>>0]=F;a[x+1>>0]=F>>8;F=0;z=0;x=I;h=q;w=J;t=G;break}if(w){e=a[q>>0]|0;h=e<<24>>24;if(kp(h)|0){E=E+1|0;z=0;x=I;h=q;w=J;t=G;e=H;break}if(e<<24>>24!=35)switch(h|0){case 10:case 13:case 12:case 11:case 9:case 32:{z=0;x=I;h=q;w=J;t=G;e=H;break d}default:{S=112;break c}}if(E&1|0){S=87;break c}t=(E|0)/2|0;e=p;s=H-p|0;do if((t+3+s|0)>>>0>=k>>>0){h=(t<<1)+6+k|0;if(h>>>0<=k>>>0){e=67;S=93;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=93;break c}}else{p=e;k=h;e=e+s|0;break}}else e=H;while(0);h=e+1|0;a[e>>0]=1;H=t&65535;a[h>>0]=H;a[h+1>>0]=H>>8;e=e+3|0;h=r+1|0;if(h>>>0>=q>>>0){z=0;x=I;h=q;w=J;r=0;t=G;break}while(1){s=r;r=h;g:while(1){h=a[r>>0]|0;switch(h<<24>>24|0){case 10:case 13:case 12:case 11:case 9:case 32:break;default:break g}h=r+1|0;if(h>>>0<q>>>0){s=r;r=h}else{z=0;x=I;h=q;w=J;r=0;t=G;break d}}r=h&255;h=r+-48|0;do if(h>>>0>=10)if((r+-65|0)>>>0<6){h=r+-55|0;break}else{h=(r+-97|0)>>>0<6?r+-87|0:0;break}while(0);r=s+2|0;h:do if(r>>>0<q>>>0){i:while(1){s=a[r>>0]|0;switch(s<<24>>24|0){case 10:case 13:case 12:case 11:case 9:case 32:break;default:break i}r=r+1|0;if(r>>>0>=q>>>0)break h}t=h<<4;s=s&255;h=s+-48|0;do if(h>>>0>=10)if((s+-65|0)>>>0<6){h=s+-55|0;break}else{h=(s+-97|0)>>>0<6?s+-87|0:0;break}while(0);h=h+t|0}while(0);H=e;e=H+1|0;a[H>>0]=h;h=r+1|0;if(h>>>0>=q>>>0){z=0;x=I;h=q;w=J;r=0;t=G;break d}}}if(B|0){B=(a[q>>0]|0)==124?0:B;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break}if(A|0){e=a[q>>0]|0;if((e+-48&255)<10){B=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break}switch(e<<24>>24){case 34:{A=0;B=0;F=0;z=q;x=I;h=q;w=J;r=0;t=G;e=H;break d}case 58:{s=Fq(A)|0;if(s>>>0>(J+-1|0)>>>0){S=119;break c}e=p;r=H-p|0;do if((r+3+s|0)>>>0>=k>>>0){h=k+6+(s<<1)|0;if(h>>>0<=k>>>0){e=67;S=125;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=125;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);A=e+1|0;a[e>>0]=1;B=s&65535;a[A>>0]=B;a[A+1>>0]=B>>8;e=e+3|0;cr(e|0,q+1|0,s|0)|0;A=0;B=0;z=0;x=I;h=q+s|0;w=J-s|0;r=0;t=G;e=e+s|0;break d}case 35:{A=0;B=0;E=0;z=0;x=I;h=q;w=J;r=q;t=G;e=H;break d}case 124:{A=0;B=q;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}default:{S=129;break c}}}h=a[q>>0]|0;if(!D)switch(h<<24>>24){case 34:{A=0;B=0;D=0;F=0;z=q;x=I;h=q;w=J;r=0;t=G;e=H;break d}case 40:{if(C|0){S=239;break c}e=p;r=H-p|0;do if((r+3|0)>>>0>=k>>>0){h=k+6|0;if(k>>>0>=4294967290){e=67;S=245;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=245;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);a[e>>0]=3;A=0;B=0;C=0;D=0;g=g+1|0;z=0;x=I;h=q;w=J;r=0;t=G;e=e+1|0;break d}case 41:{if(C|0){S=248;break c}e=p;r=H-p|0;do if((r+3|0)>>>0>=k>>>0){h=k+6|0;if(k>>>0>=4294967290){e=67;S=254;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=254;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);a[e>>0]=4;A=0;B=0;C=0;D=0;g=g+-1|0;z=0;x=I;h=q;w=J;r=0;t=G;e=e+1|0;break d}case 35:{A=0;B=0;D=0;E=0;z=0;x=I;h=q;w=J;r=q;t=G;e=H;break d}case 124:{A=0;B=q;D=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}case 91:if(!C){A=0;B=0;C=q;D=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}else{S=259;break c}case 93:if(!C){S=261;break c}else{A=0;B=0;C=0;D=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}default:{if((h+-48&255)<10)if(h<<24>>24==48){S=264;break c}else{A=q;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}e=h<<24>>24;if(No(22485,e,71)|0){A=0;B=0;D=0;z=0;x=q;h=q;w=J;r=0;t=G;e=H;break d}switch(e|0){case 10:case 13:case 12:case 11:case 9:case 32:{A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}default:{}}if(h<<24>>24==123){S=268;break c}if(No(22584,e,3)|0){S=270;break c}if(K&h<<24>>24==37){A=0;B=0;D=q;z=0;x=I;h=q;w=J;r=0;t=G;e=H;break d}else{S=272;break c}}}switch(h<<24>>24){case 77:case 109:{c[M>>2]=0;s=(a[q>>0]|0)==109?1:5;if(L){t=(c[j>>2]|0)+(4-1)&~(4-1);u=c[t>>2]|0;c[j>>2]=t+4;t=G}else{u=c[c[i+(G<<2)>>2]>>2]|0;t=G+1|0}if(!(Ll(u,2)|0)){if(Tk(s,0,0,M,u)|0){S=152;break c}e=c[M>>2]|0;h=p;r=H-p|0;do if((r+3+e|0)>>>0>=k>>>0){e=k+6+(e<<1)|0;if(e>>>0<=k>>>0){e=67;S=158;break c}h=bf(h,e)|0;if(!h){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=158;break c}}else{p=h;k=e;e=h+r|0;break}}else e=H;while(0);h=p;do if(!(af(h)|0)){if(!(Ll(u,1)|0))break;r=$e(k)|0;if(!r){S=163;break c}e=e-p|0;cr(r|0,h|0,e|0)|0;cf(p);p=r;e=r+e|0}while(0);H=e+1|0;a[e>>0]=1;G=c[M>>2]&65535;a[H>>0]=G;a[H+1>>0]=G>>8;e=e+3|0;if(Tk(s,e,c[M>>2]|0,M,u)|0){S=165;break c}e=e+(c[M>>2]|0)|0}else{s=wl(u,N)|0;e=((c[N>>2]|0)+7|0)>>>3;c[M>>2]=e;if((s|0)!=0&(e|0)!=0){h=p;r=H-p|0;do if((r+3+e|0)>>>0>=k>>>0){e=k+6+(e<<1)|0;if(e>>>0<=k>>>0){e=67;S=142;break c}h=bf(h,e)|0;if(!h){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=142;break c}}else{p=h;k=e;e=h+r|0;break}}else e=H;while(0);h=p;do if(!(af(h)|0)){if(!(Ll(u,1)|0))break;r=$e(k)|0;if(!r){S=147;break c}e=e-p|0;cr(r|0,h|0,e|0)|0;cf(p);p=r;e=r+e|0}while(0);H=e+1|0;a[e>>0]=1;G=c[M>>2]&65535;a[H>>0]=G;a[H+1>>0]=G>>8;e=e+3|0;cr(e|0,s|0,c[M>>2]|0)|0;e=e+(c[M>>2]|0)|0}else e=H}A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;break d}case 115:{if(L){t=(c[j>>2]|0)+(4-1)&~(4-1);s=c[t>>2]|0;c[j>>2]=t+4;t=G}else{s=c[c[i+(G<<2)>>2]>>2]|0;t=G+1|0}u=Fo(s)|0;e=p;r=H-p|0;do if((r+3+u|0)>>>0>=k>>>0){h=k+6+(u<<1)|0;if(h>>>0<=k>>>0){e=67;S=178;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=178;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);A=e+1|0;a[e>>0]=1;B=u&65535;a[A>>0]=B;a[A+1>>0]=B>>8;e=e+3|0;cr(e|0,s|0,u|0)|0;A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;e=e+u|0;break d}case 98:{if(L){u=(c[j>>2]|0)+(4-1)&~(4-1);v=c[u>>2]|0;c[j>>2]=u+4;u=(c[j>>2]|0)+(4-1)&~(4-1);t=c[u>>2]|0;c[j>>2]=u+4;u=G}else{t=c[c[i+(G+1<<2)>>2]>>2]|0;v=c[c[i+(G<<2)>>2]>>2]|0;u=G+2|0}e=p;r=H-p|0;do if((r+3+v|0)>>>0>=k>>>0){h=k+6+(v<<1)|0;if(h>>>0<=k>>>0){n=67;S=187;break c}s=bf(e,h)|0;if(!s){h=Qn(c[(zo()|0)>>2]|0)|0;if(!h){e=H;break}else{n=h;S=187;break c}}else{p=s;k=h;e=s+r|0;break}}else e=H;while(0);do if(v){h=p;if(af(h)|0)break;if(!(af(t)|0))break;r=$e(k)|0;if(!r){S=193;break c}e=e-p|0;cr(r|0,h|0,e|0)|0;cf(p);p=r;e=r+e|0}while(0);A=e+1|0;a[e>>0]=1;B=v&65535;a[A>>0]=B;a[A+1>>0]=B>>8;e=e+3|0;cr(e|0,t|0,v|0)|0;A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=u;e=e+v|0;break d}case 100:{if(L){t=(c[j>>2]|0)+(4-1)&~(4-1);e=c[t>>2]|0;c[j>>2]=t+4;t=G}else{e=c[c[i+(G<<2)>>2]>>2]|0;t=G+1|0}c[O>>2]=e;Pp(M,22578,O)|0;s=Fo(M)|0;e=p;r=H-p|0;do if((r+3+s|0)>>>0>=k>>>0){h=k+6+(s<<1)|0;if(h>>>0<=k>>>0){e=67;S=204;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=204;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);A=e+1|0;a[e>>0]=1;B=s&65535;a[A>>0]=B;a[A+1>>0]=B>>8;e=e+3|0;cr(e|0,M|0,s|0)|0;A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;e=e+s|0;break d}case 117:{if(L){t=(c[j>>2]|0)+(4-1)&~(4-1);e=c[t>>2]|0;c[j>>2]=t+4;t=G}else{e=c[c[i+(G<<2)>>2]>>2]|0;t=G+1|0}c[P>>2]=e;Pp(M,22581,P)|0;s=Fo(M)|0;e=p;r=H-p|0;do if((r+3+s|0)>>>0>=k>>>0){h=k+6+(s<<1)|0;if(h>>>0<=k>>>0){e=67;S=214;break c}e=bf(e,h)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=214;break c}}else{p=e;k=h;e=e+r|0;break}}else e=H;while(0);A=e+1|0;a[e>>0]=1;B=s&65535;a[A>>0]=B;a[A+1>>0]=B>>8;e=e+3|0;cr(e|0,M|0,s|0)|0;A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;e=e+s|0;break d}case 83:{if(L){y=(c[j>>2]|0)+(4-1)&~(4-1);w=c[y>>2]|0;c[j>>2]=y+4;y=G}else{w=c[c[i+(G<<2)>>2]>>2]|0;y=G+1|0}if(!w){A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=H;break d}e=a[w>>0]|0;if(!(e<<24>>24)){A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=H;break d}v=w;u=0;r=w;h=0;while(1){s=r;r=e;j:while(1){t=s+1|0;switch(r<<24>>24){case 3:{S=225;break j}case 4:{S=227;break j}case 1:{e=t+(((d[t>>0]|d[t+1>>0]<<8)&65535)+2)|0;break}default:e=t}r=a[e>>0]|0;if(!(r<<24>>24)){A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=H;break d}else s=e}if((S|0)==225){S=0;e=u+1|0;h=(u|0)==0?s-v|0:h}else if((S|0)==227){S=0;e=u+-1|0;if(!e)break}s=a[t>>0]|0;if(!(s<<24>>24)){A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=H;break d}else{u=e;r=t;e=s}}u=t-v|0;if(!u){A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=H;break d}e=p;s=H-p|0;do if((s+3+u|0)>>>0>=k>>>0){r=k+6+(u<<1)|0;if(r>>>0<=k>>>0){e=67;S=235;break c}e=bf(e,r)|0;if(!e){e=Qn(c[(zo()|0)>>2]|0)|0;if(!e){e=H;break}else{S=235;break c}}else{p=e;k=r;e=e+s|0;break}}else e=H;while(0);cr(e|0,w+h|0,u|0)|0;A=0;B=0;D=0;z=0;x=I;h=q;w=J;r=0;t=y;e=e+u|0;break d}default:{S=236;break c}}}while(0);q=h+1|0;J=w+-1|0;if(!J){o=p;S=274;break b}else{y=z;G=t}}switch(S|0){case 18:{c[R>>2]=u-f;o=p;break b}case 26:{c[R>>2]=q-f;e=206;o=p;break b}case 33:{c[R>>2]=q-f;e=206;o=p;break b}case 37:{c[R>>2]=q-f;e=206;o=p;break b}case 81:{c[R>>2]=t-f;o=p;break b}case 87:{c[R>>2]=q-f;e=212;o=p;break b}case 93:{c[R>>2]=q-f;o=p;break b}case 112:{c[R>>2]=q-f;e=211;o=p;break b}case 119:{c[R>>2]=q-f;e=202;o=p;break b}case 125:{c[R>>2]=q-f;o=p;break b}case 129:{c[R>>2]=q-f;e=201;o=p;break b}case 142:{c[R>>2]=q-f;o=p;S=150;break}case 147:{e=Qn(c[(zo()|0)>>2]|0)|0;o=p;S=150;break}case 152:{He(22556,1433,22563);break}case 158:{c[R>>2]=q-f;n=e;o=p;Q=k;break}case 163:{n=Qn(c[(zo()|0)>>2]|0)|0;o=p;Q=k;break}case 165:{He(22556,1460,22563);break}case 178:{c[R>>2]=q-f;o=p;break b}case 187:{c[R>>2]=q-f;g=p;break a}case 193:{n=Qn(c[(zo()|0)>>2]|0)|0;o=p;S=283;break a}case 204:{c[R>>2]=q-f;o=p;break b}case 214:{c[R>>2]=q-f;o=p;break b}case 235:{c[R>>2]=q-f;o=p;break b}case 236:{c[R>>2]=q-f;e=201;o=p;break b}case 239:{c[R>>2]=q-f;e=209;o=p;break b}case 245:{c[R>>2]=q-f;o=p;break b}case 248:{c[R>>2]=q-f;e=209;o=p;break b}case 254:{c[R>>2]=q-f;o=p;break b}case 259:{c[R>>2]=q-f;e=208;o=p;break b}case 261:{c[R>>2]=q-f;e=209;o=p;break b}case 264:{c[R>>2]=q-f;e=207;o=p;break b}case 268:{c[R>>2]=q-f;e=210;o=p;break b}case 270:{c[R>>2]=q-f;e=210;o=p;break b}case 272:{c[R>>2]=q-f;e=205;o=p;break b}}if((S|0)==150){n=e;Q=k}k=Q;S=283;break a}while(0);k:do if((S|0)==274){n=o;h=e-o|0;l:do if((h+3|0)>>>0>=k>>>0){p=k+6|0;do if(k>>>0<4294967290){n=bf(n,p)|0;if(!n){n=Qn(c[(zo()|0)>>2]|0)|0;if(!n)break l;else{e=n;break}}else{o=n;k=p;e=n+h|0;break l}}else e=67;while(0);c[R>>2]=q-f;break k}while(0);a[e>>0]=0;if(!g){k=o;e=o;S=295;break a}else e=203}while(0);n=e;g=o;e=o}while(0);if((S|0)==283){e=o;if(!n){k=o;S=295}else g=o}if((S|0)==295){m:do if(k){switch(a[e>>0]|0){case 0:{sf(e);e=0;break m}case 3:break;default:break m}if((a[e+1>>0]|0)==4){sf(e);e=0}}else e=0;while(0);c[b>>2]=e;S=0;l=T;return S|0}if(!e){S=n;l=T;return S|0}if(af(e)|0){if((k|0)!=0&(e&7|0)!=0)do{a[e>>0]=0;e=e+1|0;k=k+-1|0}while((k|0)!=0&(e&7|0)!=0);if(k>>>0>=8){p=k+-8|0;h=p&-8;q=h+8|0;o=e;while(1){S=o;c[S>>2]=0;c[S+4>>2]=0;k=k+-8|0;if(k>>>0<=7)break;else o=o+8|0}k=p-h|0;e=e+q|0}if(k|0)while(1){a[e>>0]=0;k=k+-1|0;if(!k)break;else e=e+1|0}}cf(g);S=n;l=T;return S|0}function sf(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!b)return;if(af(b)|0){f=a[b>>0]|0;if(!(f<<24>>24))e=b;else{e=b;do{g=e+1|0;if(f<<24>>24==1)e=e+3+((d[g>>0]|d[g+1>>0]<<8)&65535)|0;else e=g;f=a[e>>0]|0}while(f<<24>>24!=0)}j=b;e=e-j|0;if((e|0)!=0&(j&7|0)!=0){f=b;do{a[f>>0]=0;f=f+1|0;e=e+-1|0}while((e|0)!=0&(f&7|0)!=0)}else f=b;if(e>>>0>=8){i=e+-8|0;j=i&-8;h=j+8|0;g=f;while(1){k=g;c[k>>2]=0;c[k+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else g=g+8|0}f=f+h|0;e=i-j|0}if(e|0)while(1){a[f>>0]=0;e=e+-1|0;if(!e)break;else f=f+1|0}}cf(b);return}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=i;g=i+8|0;h=i+4|0;do if((a|0)!=0?(c[a>>2]=0,(b|0)!=0&e>>>0<2):0){if(!(e|d)){d=pf(b,0,0,g)|0;if(!d){d=c[g>>2]|0;break}}else if((d|0)==0&(e|0)!=0)d=Fo(b)|0;d=qf(h,0,b,d,0,0,f)|0;c[g>>2]=d;if(!d){c[a>>2]=c[h>>2];d=0}}else d=45;while(0);l=i;return d|0}function uf(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;if(!b){h=0;return h|0}if(!e)e=Fo(c)|0;g=b;a:while(1){f=a[g>>0]|0;switch(f<<24>>24){case 0:{e=0;h=26;break a}case 3:break;default:{b=g+1|0;if(f<<24>>24!=1){g=b;continue a}g=g+3+((d[b>>0]|d[b+1>>0]<<8)&65535)|0;continue a}}b=g+1|0;if((a[b>>0]|0)!=1){g=b;continue}b=g+2|0;f=g+4|0;b=(d[b>>0]|d[b+1>>0]<<8)&65535;if((b|0)==(e|0)?(Tp(f,c,e)|0)==0:0)break;g=f+b|0}if((h|0)==26)return e|0;b=1;f=f+e|0;b:do{e=f;c:while(1){switch(a[e>>0]|0){case 0:{h=15;break b}case 3:{h=13;break c}case 4:{h=14;break c}case 1:{e=e+1|0;e=e+(((d[e>>0]|d[e+1>>0]<<8)&65535)+2)+-1|0;break}default:{}}e=e+1|0}if((h|0)==13){h=0;b=b+1|0}else if((h|0)==14){h=0;b=b+-1|0}f=e+1|0}while((b|0)!=0);if((h|0)==15)He(22556,481,22587);e=f-g&65535;b=_e(e+1|0)|0;if(!b){h=0;return h|0}cr(b|0,g|0,e|0)|0;a[b+e>>0]=0;switch(a[b>>0]|0){case 0:{sf(b);h=0;return h|0}case 3:{if((a[b+1>>0]|0)!=4){h=b;return h|0}sf(b);h=0;return h|0}default:{h=b;return h|0}}return 0}function vf(b){b=b|0;var c=0,e=0,f=0,g=0;if(!b){g=0;return g|0}e=0;c=0;a:while(1){f=e;b:while(1){c:while(1){e=a[b>>0]|0;if(!(e<<24>>24))break a;b=b+1|0;switch(e<<24>>24){case 1:{g=7;break b}case 3:{g=8;break b}case 4:break c;default:{}}}f=f+-1|0}if((g|0)==7){e=f;b=b+(((d[b>>0]|d[b+1>>0]<<8)&65535)+2)|0;f=(f|0)==1&1}else if((g|0)==8){e=f+1|0;f=(f|0)==1&1}c=f+c|0}return c|0}function wf(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;if(!b){g=0;return g|0}if((a[b>>0]|0)!=3){g=0;return g|0}a:do if((c|0)>0){e=0;b:while(1){c:while(1){d:while(1){f=b+1|0;switch(a[f>>0]|0){case 0:{b=0;break b}case 1:{g=9;break c}case 4:{g=11;break c}case 3:break d;default:b=f}}e=e+1|0;b=f}if((g|0)==9){b=b+2|0;b=b+(((d[b>>0]|d[b+1>>0]<<8)&65535)+2)+-1|0}else if((g|0)==11){e=e+-1|0;b=f}c=(((e|0)==0)<<31>>31)+c|0;if((c|0)<=0)break a}return b|0}while(0);f=b+1|0;e:do switch(a[f>>0]|0){case 1:{b=b+2|0;b=(d[b>>0]|d[b+1>>0]<<8)&65535;e=_e(b+6|0)|0;if(!e){g=0;return g|0}else{g=e+1|0;a[e>>0]=3;c=b+3|0;cr(g|0,f|0,c|0)|0;c=g+c|0;a[c>>0]=4;a[c+1>>0]=0;c=e;b=e;break e}}case 3:{c=1;b=f;f:while(1){g:while(1){e=b+1|0;switch(a[e>>0]|0){case 0:{g=18;break f}case 3:{g=16;break g}case 4:{g=17;break g}case 1:break;default:{b=e;continue g}}g=b+2|0;b=g+(((d[g>>0]|d[g+1>>0]<<8)&65535)+2)+-1|0}if((g|0)==16){g=0;c=c+1|0}else if((g|0)==17){g=0;c=c+-1|0}if(!c)break;else b=e}if((g|0)==18)He(22556,673,22609);b=b+2-f&65535;e=_e(b+1|0)|0;if(!e){g=0;return g|0}cr(e|0,f|0,b|0)|0;a[e+b>>0]=0;switch(a[e>>0]|0){case 3:{c=e;b=e;break e}case 0:break;default:{g=e;return g|0}}sf(e);g=0;return g|0}default:{g=0;return g|0}}while(0);if((a[c+1>>0]|0)!=4){g=b;return g|0}sf(b);g=0;return g|0}function xf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;c[f>>2]=0;if(!b){f=0;return f|0}g=a[b>>0]|0;if(g<<24>>24==3){b=b+1|0;h=a[b>>0]|0;g=h<<24>>24==1;a:do if((e|0)>0){i=0;b:while(1){c:do if(g){g=i;j=6}else{g=i;d:while(1){switch(h<<24>>24){case 0:{b=0;break b}case 4:break d;case 3:{g=g+1|0;break}default:{}}b=b+1|0;h=a[b>>0]|0;if(h<<24>>24==1){j=6;break c}}i=g+-1|0}while(0);if((j|0)==6){j=0;b=b+1|0;i=g;b=b+(((d[b>>0]|d[b+1>>0]<<8)&65535)+2)+-1|0}e=(((i|0)==0)<<31>>31)+e|0;b=b+1|0;h=a[b>>0]|0;g=h<<24>>24==1;if((e|0)<=0)break a}return b|0}while(0);if(!g){f=0;return f|0}}else if(!((e|0)==0&g<<24>>24==1)){f=0;return f|0}j=b+1|0;c[f>>2]=(d[j>>0]|d[j+1>>0]<<8)&65535;f=b+3|0;return f|0}function yf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;c[f>>2]=0;if(!b){f=0;return f|0}g=a[b>>0]|0;if(g<<24>>24==3){g=b+1|0;h=a[g>>0]|0;b=h<<24>>24==1;a:do if((e|0)>0){i=0;b:while(1){c:do if(b){b=i;j=6}else{b=i;d:while(1){switch(h<<24>>24){case 0:{b=0;break b}case 4:break d;case 3:{b=b+1|0;break}default:{}}g=g+1|0;h=a[g>>0]|0;if(h<<24>>24==1){j=6;break c}}i=b+-1|0}while(0);if((j|0)==6){j=0;g=g+1|0;i=b;g=g+(((d[g>>0]|d[g+1>>0]<<8)&65535)+2)+-1|0}e=(((i|0)==0)<<31>>31)+e|0;g=g+1|0;h=a[g>>0]|0;b=h<<24>>24==1;if((e|0)<=0)break a}return b|0}while(0);if(b)b=g;else{f=0;return f|0}}else if(!((e|0)==0&g<<24>>24==1)){f=0;return f|0}j=b+1|0;j=d[j>>0]|d[j+1>>0]<<8;g=j&65535;if(!(j<<16>>16)){f=0;return f|0}h=_e(g)|0;if(!h){f=0;return f|0}cr(h|0,b+3|0,g|0)|0;c[f>>2]=g;f=h;return f|0}function zf(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0;if(!b){h=0;return h|0}e=a[b>>0]|0;if(e<<24>>24==3){e=b+1|0;f=a[e>>0]|0;b=f<<24>>24==1;a:do if((c|0)>0){g=0;b:while(1){c:do if(b){b=g;h=6}else{b=g;d:while(1){switch(f<<24>>24){case 0:{b=0;break b}case 4:break d;case 3:{b=b+1|0;break}default:{}}e=e+1|0;f=a[e>>0]|0;if(f<<24>>24==1){h=6;break c}}g=b+-1|0}while(0);if((h|0)==6){h=0;e=e+1|0;g=b;e=e+(((d[e>>0]|d[e+1>>0]<<8)&65535)+2)+-1|0}c=(((g|0)==0)<<31>>31)+c|0;e=e+1|0;f=a[e>>0]|0;b=f<<24>>24==1;if((c|0)<=0)break a}return b|0}while(0);if(b)b=e;else{h=0;return h|0}}else if(!((c|0)==0&e<<24>>24==1)){h=0;return h|0}h=b+1|0;h=d[h>>0]|d[h+1>>0]<<8;e=h&65535;if(!(h<<16>>16)){h=0;return h|0}f=_e(e+1|0)|0;if(!f){h=0;return h|0}cr(f|0,b+3|0,e|0)|0;a[f+e>>0]=0;h=f;return h|0}function Af(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))$(16);k=n;switch(f|0){case 8:{if(!b){k=0;l=n;return k|0}f=a[b>>0]|0;if(f<<24>>24==3){g=b+1|0;h=a[g>>0]|0;f=h<<24>>24==1;a:do if((e|0)>0){i=e;e=0;b:while(1){c:do if(f){f=e;j=7}else{f=e;d:while(1){switch(h<<24>>24){case 0:{b=0;break b}case 4:break d;case 3:{f=f+1|0;break}default:{}}g=g+1|0;h=a[g>>0]|0;if(h<<24>>24==1){j=7;break c}}e=f+-1|0}while(0);if((j|0)==7){j=0;g=g+1|0;e=f;g=g+(((d[g>>0]|d[g+1>>0]<<8)&65535)+2)+-1|0}i=(((e|0)==0)<<31>>31)+i|0;g=g+1|0;h=a[g>>0]|0;f=h<<24>>24==1;if((i|0)<=0)break a}l=n;return b|0}while(0);if(f)f=g;else{k=0;l=n;return k|0}}else if((e|0)==0&f<<24>>24==1)f=b;else{k=0;l=n;return k|0}j=f+1|0;j=d[j>>0]|d[j+1>>0]<<8;g=j&65535;if(!(j<<16>>16)){k=0;l=n;return k|0}h=_e(g)|0;if(!h){k=0;l=n;return k|0}cr(h|0,f+3|0,g|0)|0;if(!(af(b)|0))b=Hl(0)|0;else b=Il(0)|0;c[k>>2]=b;if(!b){cf(h);k=0;l=n;return k|0}else{ul(b,h,g<<3)|0;k=b;l=n;return k|0}}case 0:{i=1;break}default:i=f}if(!b){k=0;l=n;return k|0}f=a[b>>0]|0;if(f<<24>>24==3){b=b+1|0;g=a[b>>0]|0;f=g<<24>>24==1;e:do if((e|0)>0){h=0;f:while(1){g:do if(f){f=h;j=28}else{f=h;h:while(1){switch(g<<24>>24){case 0:{b=0;break f}case 4:break h;case 3:{f=f+1|0;break}default:{}}b=b+1|0;g=a[b>>0]|0;if(g<<24>>24==1){j=28;break g}}h=f+-1|0}while(0);if((j|0)==28){j=0;b=b+1|0;h=f;b=b+(((d[b>>0]|d[b+1>>0]<<8)&65535)+2)+-1|0}e=(((h|0)==0)<<31>>31)+e|0;b=b+1|0;g=a[b>>0]|0;f=g<<24>>24==1;if((e|0)<=0)break e}l=n;return b|0}while(0);if(!f){k=0;l=n;return k|0}}else if(!((e|0)==0&f<<24>>24==1)){k=0;l=n;return k|0}j=b+1|0;j=(Sk(k,i,b+3|0,(d[j>>0]|d[j+1>>0]<<8)&65535,0)|0)==0;k=j?c[k>>2]|0:0;l=n;return k|0}function Bf(b){b=b|0;var c=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!b){l=0;return l|0}if((a[b>>0]|0)==3){c=1;i=0;f=-1}else{l=0;return l|0}a:while(1){b:while(1){c:while(1){e=b+1|0;switch(a[e>>0]|0){case 0:{k=0;l=19;break a}case 3:{l=8;break b}case 4:{l=10;break b}case 1:break c;default:b=e}}b=b+2|0;b=b+(((d[b>>0]|d[b+1>>0]<<8)&65535)+2)+-1|0;c=f+c|0;if((c|0)<=0){j=b;break a}}if((l|0)==8){l=0;g=c;h=i+1|0}else if((l|0)==10){l=0;h=i+-1|0;g=(((h|0)==0)<<31>>31)+c|0}if((g|0)>0){c=g;i=h;b=e;f=((h|0)==0)<<31>>31}else{j=e;break}}if((l|0)==19)return k|0;e=j+1|0;b=0;c=e;d:do{switch(a[c>>0]|0){case 0:{k=0;l=19;break d}case 1:{c=c+1|0;c=c+(((d[c>>0]|d[c+1>>0]<<8)&65535)+2)+-1|0;break}case 3:{b=b+1|0;break}case 4:{b=b+-1|0;break}default:{}}c=c+1|0}while((b|0)!=0);if((l|0)==19)return k|0;b=c-e&65535;c=_e(b+3|0)|0;if(!c){l=0;return l|0}l=c+1|0;a[c>>0]=3;cr(l|0,e|0,b|0)|0;k=l+b|0;a[k>>0]=4;a[k+1>>0]=0;if((a[l>>0]|0)!=4){l=c;return l|0}sf(c);l=0;return l|0}function Cf(a){a=a|0;var b=0;b=Bf(a)|0;a=wf(b,0)|0;sf(b);return a|0}function Df(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=f;c[g>>2]=e;e=rf(a,b,d,Fo(d)|0,1,0,g)|0;l=f;return e|0}function Ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return rf(a,b,c,Fo(c)|0,1,0,d)|0}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=qf(a,b,c,d,0,0,e)|0;l=e;return d|0}function Gf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+48|0;if((l|0)>=(m|0))$(48);A=C+16|0;z=C+8|0;y=C;v=C+20|0;w=(e|0)==3;x=(f|0)!=0;B=(f|0)==0;u=(e|0)!=1;t=(e|0)==1;s=u^1;r=0;e=0;h=b|0?b:22624;a:while(1){b:while(1){switch(a[h>>0]|0){case 0:{b=79;break a}case 3:{b=4;break b}case 4:{b=13;break b}case 1:break;default:{b=78;break a}}b=h+1|0;b=d[b>>0]|d[b+1>>0]<<8;p=h+3|0;q=b&65535;if(w){o=b<<16>>16==0;c:do if(o){k=2;b=1}else{b=a[p>>0]|0;d:do if(b<<24>>24>=1){n=p;j=q;i=1;h=b;while(1){if((h&255)<32|(h+-127&255)<34?(No(22627,h&255,10)|0)==0:0)break d;if(i){if(!((h+-48&255)<10|((h&-33)+-65&255)<26)){k=(No(22637,h&255,9)|0)==0;i=k?0:i}}else i=0;k=n+1|0;h=j+-1|0;if(!h)break;n=k;j=h;h=a[k>>0]|0}if((b+-48&255)>9&(i|0)!=0){k=q;b=2;break c}else{j=2;h=q;k=p}while(1){e:do switch(b<<24>>24){case 92:case 39:case 34:case 13:case 12:case 10:case 11:case 9:case 8:{b=j+2|0;break}default:if((b&255)<32|(b+-127&255)<34){b=j+4|0;break e}else{b=j+1|0;break e}}while(0);h=h+-1|0;i=k+1|0;if(!h){k=b;b=1;break c}j=b;k=i;b=a[i>>0]|0}}while(0);k=(q<<1)+2|0;b=0}while(0);e=k+e|0;if(x){if(e>>>0>=g>>>0){e=0;b=87;break a}switch(b&3){case 1:{if(f|0){b=f+1|0;a[f>>0]=34;f:do if(!o){i=q;j=p;while(1){h=a[j>>0]|0;g:do switch(h<<24>>24){case 8:{a[b>>0]=92;a[b+1>>0]=98;b=b+2|0;break}case 9:{a[b>>0]=92;a[b+1>>0]=116;b=b+2|0;break}case 11:{a[b>>0]=92;a[b+1>>0]=118;b=b+2|0;break}case 10:{a[b>>0]=92;a[b+1>>0]=110;b=b+2|0;break}case 12:{a[b>>0]=92;a[b+1>>0]=102;b=b+2|0;break}case 13:{a[b>>0]=92;a[b+1>>0]=114;b=b+2|0;break}case 34:{a[b>>0]=92;a[b+1>>0]=34;b=b+2|0;break}case 39:{a[b>>0]=92;a[b+1>>0]=39;b=b+2|0;break}case 92:{a[b>>0]=92;a[b+1>>0]=92;b=b+2|0;break}default:if((h&255)<32|(h+-127&255)<34){c[y>>2]=h&255;Pp(b,22478,y)|0;b=b+4|0;break g}else{a[b>>0]=h;b=b+1|0;break g}}while(0);i=i+-1|0;if(!i)break f;else j=j+1|0}}while(0);a[b>>0]=34}break}case 2:{if(f|0)cr(f|0,p|0,q|0)|0;break}default:if(f|0){b=f+1|0;a[f>>0]=35;if(!o){i=q<<1;h=0;while(1){c[z>>2]=d[p+h>>0];Pp(b,22646,z)|0;h=h+1|0;if((h|0)==(q|0))break;else b=b+2|0}b=f+(i|1)|0}a[b>>0]=35}}f=f+k|0}if((a[p+q>>0]|0)!=4){e=e+1|0;if(x){if(e>>>0>=g>>>0){e=0;b=87;break a}a[f>>0]=32;f=f+1|0}}}else{c[A>>2]=q;Pp(v,22651,A)|0;e=q+e+(Fo(v)|0)|0;if(!B){if(e>>>0>=g>>>0){e=0;b=87;break a}f=Np(f,v)|0;cr(f|0,p|0,q|0)|0;f=f+q|0}}h=p+q|0}if((b|0)==4){h=h+1|0;if(u)e=r+e+((r|0)!=0&1)|0;e=e+1|0;if(!B){if(e>>>0>=g>>>0){e=0;b=87;break}if(!((r|0)==0|s)){b=f+1|0;a[f>>0]=10;if((r|0)>0){Yq(b|0,32,r|0)|0;f=b+r|0}else f=b}a[f>>0]=40;f=f+1|0}r=r+1|0;continue}else if((b|0)==13){h=h+1|0;b=e+1|0;if(x){if(b>>>0>=g>>>0){e=0;b=87;break}a[f>>0]=41;f=f+1|0}i=r+-1|0;if(t){r=i;e=b;continue}switch(a[h>>0]|0){case 0:case 3:{r=i;e=b;continue a}default:{}}e=e+2+i|0;if(!x){r=i;continue}if(e>>>0>=g>>>0){e=0;b=87;break}a[f>>0]=10;b=f+1|0;if((r|0)<=1){r=i;f=b;continue}Yq(b|0,32,i|0)|0;f=f+r|0;r=i;continue}}if((b|0)==78)He(22556,2008,22655);else if((b|0)==79){do if(t){if(B)b=86}else{e=e+1|0;if(!B)if(e>>>0<g>>>0){a[f>>0]=10;f=f+1|0;break}else{g=0;l=C;return g|0}else b=86}while(0);if((b|0)==86){g=e+1|0;l=C;return g|0}if(e>>>0>=g>>>0){g=0;l=C;return g|0}a[f>>0]=0;g=e;l=C;return g|0}else if((b|0)==87){l=C;return e|0}return 0}function Hf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+112|0;if((l|0)>=(m|0))$(112);u=y+80|0;w=y;x=y+84|0;h=x;i=h+20|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));j=a[f>>0]|0;do if(j<<24>>24){h=f;i=0;a:while(1){b:do switch(j<<24>>24){case 63:case 47:case 45:case 43:case 38:break;default:{switch(j<<24>>24|0){case 10:case 13:case 12:case 11:case 9:case 32:break b;default:{}}if(j<<24>>24==39){v=h+1|0;h=Ko(v,39)|0;if((h|0)==0|(h|0)==(v|0)){h=29;v=94;break a}}t=(c[g>>2]|0)+(4-1)&~(4-1);v=c[t>>2]|0;c[g>>2]=t+4;c[w+(i<<2)>>2]=v;if(!v){h=128;v=94;break a}i=i+1|0}}while(0);h=h+1|0;j=a[h>>0]|0;if(!(i>>>0<20&j<<24>>24!=0)){v=9;break}}if((v|0)==9){if(!(j<<24>>24))break;else h=183;l=y;return h|0}else if((v|0)==94){l=y;return h|0}}else i=0;while(0);s=(c[g>>2]|0)+(4-1)&~(4-1);t=c[s>>2]|0;c[g>>2]=s+4;if(t|0){x=45;l=y;return x|0}c:do if(!e){g=0;v=12}else{j=e;g=0;while(1){if(!(a[j>>0]|0)){v=12;break c}h=Ko(j,33)|0;if((h|0)==(j|0)){j=0;h=27;break c}h=(h|0)==0?0:h-j|0;e=uf(b,j,h)|0;if(!e){j=0;h=27;break c}sf(g);j=(h|0)==0?0:j+(h+1)|0;if(!j){b=e;g=e;v=12;break}else{b=e;g=e}}}while(0);d:do if((v|0)==12){t=43;i=0;e:while(1){h=a[f>>0]|0;f:do switch(h<<24>>24){case 0:break e;case 47:case 45:case 43:case 38:{j=h<<24>>24;h=f;break}default:{switch(h<<24>>24|0){case 10:case 13:case 12:case 11:case 9:case 32:{j=t;h=f;break f}default:{}}switch(h<<24>>24){case 63:{j=t;h=f;break f}case 39:{h=f+1|0;f=Ko(h,39)|0;if((f|0)==0|(f|0)==(h|0)){j=0;h=29;break d}j=uf(b,h,f-h|0)|0;break}default:j=uf(b,f,1)|0}do if(j){g:do switch(t|0){case 38:{h=c[w+(i<<2)>>2]|0;r=h+12|0;s=c[r>>2]|0;if(!s){c[h>>2]=0;if((a[j>>0]|0)!=3){v=58;break e}k=j+1|0;n=a[k>>0]|0;q=1;e=0;o=n<<24>>24==1;do{h:do if(o)v=49;else{i:while(1){switch(n<<24>>24){case 0:{v=58;break e}case 4:break i;case 3:{e=e+1|0;break}default:{}}k=k+1|0;n=a[k>>0]|0;if(n<<24>>24==1){v=49;break h}}e=e+-1|0;p=k}while(0);if((v|0)==49){v=0;p=k+1|0;p=p+(((d[p>>0]|d[p+1>>0]<<8)&65535)+2)+-1|0}q=(((e|0)==0)<<31>>31)+q|0;k=p+1|0;n=a[k>>0]|0;o=n<<24>>24==1}while((q|0)>0);if(!o){v=58;break e}s=p+2|0;s=d[s>>0]|d[s+1>>0]<<8;e=s&65535;if(!(s<<16>>16)){v=58;break e}k=_e(e)|0;if(!k){v=58;break e}cr(k|0,p+4|0,e|0)|0;c[h>>2]=e;c[r>>2]=k;c[h+8>>2]=e;c[h+4>>2]=0;a[x+i>>0]=2;break g}else{if((a[j>>0]|0)!=3){h=65;break d}k=j+1|0;n=a[k>>0]|0;q=1;e=0;o=n<<24>>24==1;do{j:do if(o)v=36;else{k:while(1){switch(n<<24>>24){case 0:{h=65;break d}case 4:break k;case 3:{e=e+1|0;break}default:{}}k=k+1|0;n=a[k>>0]|0;if(n<<24>>24==1){v=36;break j}}e=e+-1|0;p=k}while(0);if((v|0)==36){v=0;p=k+1|0;p=p+(((d[p>>0]|d[p+1>>0]<<8)&65535)+2)+-1|0}q=(((e|0)==0)<<31>>31)+q|0;k=p+1|0;n=a[k>>0]|0;o=n<<24>>24==1}while((q|0)>0);if(!o){h=65;break d}r=p+2|0;r=d[r>>0]|d[r+1>>0]<<8;e=r&65535;if(!(r<<16>>16)){h=65;break d}k=c[h+4>>2]|0;if((k+e|0)>>>0>(c[h>>2]|0)>>>0){h=200;break d}cr(s+k|0,p+4|0,e|0)|0;c[h+8>>2]=e;a[x+i>>0]=1;break g}}case 47:{s=Af(j,1,8)|0;h=c[w+(i<<2)>>2]|0;c[h>>2]=s;break}case 45:{l:do if((a[j>>0]|0)==3){e=j+1|0;o=a[e>>0]|0;p=1;h=0;n=o<<24>>24==1;do{m:do if(n)v=64;else{k=o;n:while(1){switch(k<<24>>24){case 0:{h=0;break l}case 4:break n;case 3:{h=h+1|0;break}default:{}}e=e+1|0;k=a[e>>0]|0;if(k<<24>>24==1){v=64;break m}}h=h+-1|0;k=e}while(0);if((v|0)==64){v=0;k=e+1|0;k=k+(((d[k>>0]|d[k+1>>0]<<8)&65535)+2)+-1|0}p=(((h|0)==0)<<31>>31)+p|0;e=k+1|0;o=a[e>>0]|0;n=o<<24>>24==1}while((p|0)>0);if(n){h=k+2|0;h=(Sk(u,1,k+4|0,(d[h>>0]|d[h+1>>0]<<8)&65535,0)|0)==0;h=h?c[u>>2]|0:0}else h=0}else h=0;while(0);s=c[w+(i<<2)>>2]|0;c[s>>2]=h;h=s;break}default:{o:do if((a[j>>0]|0)==3){e=j+1|0;o=a[e>>0]|0;p=1;h=0;n=o<<24>>24==1;do{p:do if(n)v=76;else{k=o;q:while(1){switch(k<<24>>24){case 0:{h=0;break o}case 4:break q;case 3:{h=h+1|0;break}default:{}}e=e+1|0;k=a[e>>0]|0;if(k<<24>>24==1){v=76;break p}}h=h+-1|0;k=e}while(0);if((v|0)==76){v=0;k=e+1|0;k=k+(((d[k>>0]|d[k+1>>0]<<8)&65535)+2)+-1|0}p=(((h|0)==0)<<31>>31)+p|0;e=k+1|0;o=a[e>>0]|0;n=o<<24>>24==1}while((p|0)>0);if(n){h=k+2|0;h=(Sk(u,5,k+4|0,(d[h>>0]|d[h+1>>0]<<8)&65535,0)|0)==0;h=h?c[u>>2]|0:0}else h=0}else h=0;while(0);s=c[w+(i<<2)>>2]|0;c[s>>2]=h;h=s}}while(0);sf(j);if(!(c[h>>2]|0)){j=0;h=65;break d}}else{if((a[f+1>>0]|0)!=63){j=0;h=68;break d}h=w+(i<<2)|0;if((t|0)!=38){c[c[h>>2]>>2]=0;break}h=c[h>>2]|0;if(!(c[h+12>>2]|0)){c[h>>2]=0;c[h+4>>2]=0}c[h+8>>2]=0}while(0);j=t;i=i+1|0;h=f}}while(0);t=j;f=h+1|0}if((v|0)==58){c[r>>2]=0;h=65;break}sf(g);x=0;l=y;return x|0}while(0);sf(g);sf(j);if(!i){x=h;l=y;return x|0}do{i=i+-1|0;j=w+(i<<2)|0;if(!(a[x+i>>0]|0)){v=c[j>>2]|0;Jl(c[v>>2]|0);c[v>>2]=0}else{v=c[j>>2]|0;cf(c[v+12>>2]|0);c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0}}while((i|0)!=0);l=y;return h|0}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=f;c[g>>2]=e;e=Hf(a,b,d,g)|0;l=f;return ((e|0)==0?0:e&65535|16777216)|0}function Jf(a){a=a|0;if(Go(22673,a)|0)if(Go(22685,a)|0)if(Go(22697,a)|0)if(Go(22709,a)|0)if(Go(22722,a)|0)if(Go(22732,a)|0)if(Go(22743,a)|0)if(Go(22755,a)|0)if(Go(22768,a)|0)if(Go(22780,a)|0)if(Go(22793,a)|0)if(Go(22803,a)|0)if(!(Go(22814,a)|0))a=12;else{a=88;return a|0}else a=11;else a=10;else a=9;else a=8;else a=7;else a=6;else a=5;else a=4;else a=3;else a=2;else a=1;else a=0;c[17593]=c[17593]|c[1164+(a<<3)>>2];a=0;return a|0}function Kf(){return 0}function Lf(a,b){a=a|0;b=b|0;if((a|0)<0|a>>>0>12){b=0;return b|0}if(b|0)c[b>>2]=c[1164+(a<<3)>>2];b=c[1164+(a<<3)+4>>2]|0;return b|0}function Mf(){var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+256|0;if((l|0)>=(m|0))$(256);f=h;if(gg()|0){l=h;return}g=aq(22823,23390)|0;if(g|0){if(Sp(f,256,g)|0)do{b=a[f>>0]|0;e=b<<24>>24;a:do if(!(e&128)){d=f;do{if(!(Lo(e)|0))break a;d=d+1|0;b=a[d>>0]|0;e=b<<24>>24}while(!(e&128|0))}else d=f;while(0);e=Ko(d,10)|0;if(e){a[e>>0]=0;b=a[d>>0]|0}b:do if(b<<24>>24){e=(Fo(d)|0)+-1|0;if((e|0)>0){b=d+e|0;do{e=a[b>>0]|0;if((e&128|0)==0?Lo(e)|0:0)a[b>>0]=0;b=b+-1|0}while(b>>>0>d>>>0);b=a[d>>0]|0}switch(b<<24>>24){case 35:case 0:break b;default:{}}do if(Go(22673,d)|0)if(Go(22685,d)|0)if(Go(22697,d)|0)if(Go(22709,d)|0)if(Go(22722,d)|0)if(Go(22732,d)|0)if(Go(22743,d)|0)if(Go(22755,d)|0){if(!(Go(22768,d)|0)){b=8;break}if(!(Go(22780,d)|0)){b=9;break}if(!(Go(22793,d)|0)){b=10;break}if(!(Go(22803,d)|0)){b=11;break}if(!(Go(22814,d)|0))b=12;else break b}else b=7;else b=6;else b=5;else b=4;else b=3;else b=2;else b=1;else b=0;while(0);c[17593]=c[17593]|c[1164+(b<<3)>>2]}while(0)}while((Sp(f,256,g)|0)!=0);kq(g)|0;bq(g)|0}l=h;return}function Nf(){c[17594]=1;return}function Of(b){b=b|0;var d=0;if(!b){Tn(22);d=0;return d|0}if(!(c[17594]|0)){d=Oq(b)|0;return d|0}d=Oq(b+5|0)|0;if(!d){d=0;return d|0}a[d>>0]=b;a[d+1>>0]=b>>>8;a[d+2>>0]=b>>>16;a[d+3>>0]=85;a[d+(b+4)>>0]=-86;d=d+4|0;return d|0}
+function rm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=c[b+12>>2]|0;s=c[t+36>>2]|0;t=c[t+20>>2]|0;if(e>>>0<g>>>0){u=200;return u|0}u=b+112|0;e=c[u>>2]|0;if(e>>>0>=g>>>0){h=b+64+t+(0-e)|0;if(!((f|d|h)&3))if(g>>>0>3){l=g+-4|0;m=l&-4;o=m+4|0;n=f+o|0;i=h;j=d;k=g;while(1){c[j>>2]=c[f>>2]^c[i>>2];k=k+-4|0;if(k>>>0<=3)break;else{f=f+4|0;i=i+4|0;j=j+4|0}}i=l-m|0;f=n;h=h+o|0;d=d+o|0}else i=g;else i=g;if(i){e=i;while(1){a[d>>0]=a[f>>0]^a[h>>0];e=e+-1|0;if(!e)break;else{f=f+1|0;h=h+1|0;d=d+1|0}}e=c[u>>2]|0}c[u>>2]=e-g;u=0;return u|0}if(e){g=g-e|0;i=b+64+t+(0-e)|0;if(e>>>0>3&((f|d|i)&3|0)==0){n=e+-4|0;o=n&-4;p=o+4|0;j=f+p|0;h=f;k=i;l=d;m=e;while(1){c[l>>2]=c[h>>2]^c[k>>2];m=m+-4|0;if(m>>>0<=3)break;else{h=h+4|0;k=k+4|0;l=l+4|0}}k=n-o|0;if(k){i=i+p|0;h=d+p|0;e=k;q=18}}else{j=f;h=d;q=18}if((q|0)==18){while(1){a[h>>0]=a[j>>0]^a[i>>0];e=e+-1|0;if(!e)break;else{j=j+1|0;i=i+1|0;h=h+1|0;q=18}}e=c[u>>2]|0}c[u>>2]=0;d=d+e|0;f=f+e|0}a:do if(g>>>0<t>>>0)e=0;else{q=b+496|0;r=b+64|0;m=r;l=t+-4|0;o=l&-4;n=o+4|0;p=r+n|0;o=l-o|0;if(t>>>0>3)e=0;else{l=(t|0)==0;e=0;while(1){p=pb[s&63](q,r,r)|0;e=p>>>0>e>>>0?p:e;if(!l){h=f;i=r;j=d;k=t;while(1){a[j>>0]=a[h>>0]^a[i>>0];k=k+-1|0;if(!k)break;else{h=h+1|0;i=i+1|0;j=j+1|0}}}d=d+t|0;f=f+t|0;g=g-t|0;if(g>>>0<t>>>0)break a}}do{l=pb[s&63](q,r,r)|0;e=l>>>0>e>>>0?l:e;if(!((f|m|d)&3)){h=f+n|0;i=f;j=r;k=d;l=t;while(1){c[k>>2]=c[i>>2]^c[j>>2];l=l+-4|0;if(l>>>0<=3)break;else{i=i+4|0;j=j+4|0;k=k+4|0}}j=p;k=d+n|0;i=o}else{h=f;j=r;k=d;i=t}if(i|0)while(1){a[k>>0]=a[h>>0]^a[j>>0];i=i+-1|0;if(!i)break;else{h=h+1|0;j=j+1|0;k=k+1|0}}d=d+t|0;f=f+t|0;g=g-t|0}while(g>>>0>=t>>>0)}while(0);do if(g){h=b+64|0;s=pb[s&63](b+496|0,h,h)|0;e=s>>>0>e>>>0?s:e;c[u>>2]=t-g;if(((f|h|d)&3|0)==0&g>>>0>3){k=g+-4|0;l=k&-4;n=l+4|0;m=f+n|0;i=h;j=d;while(1){c[j>>2]=c[f>>2]^c[i>>2];g=g+-4|0;if(g>>>0<=3)break;else{f=f+4|0;i=i+4|0;j=j+4|0}}g=k-l|0;if(!g)break;else{f=m;h=h+n|0;d=d+n|0}}while(1){a[d>>0]=a[f>>0]^a[h>>0];g=g+-1|0;if(!g)break;else{f=f+1|0;h=h+1|0;d=d+1|0}}}while(0);if(!e){u=0;return u|0}Te(e+16|0);u=0;return u|0}function sm(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,n=0,o=0,p=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);g=p;if((d|0)==0&(e|0)!=12){o=45;l=p;return o|0}f=b+128|0;i=b+148|0;j=i;k=j+92|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));c[f>>2]=0;c[f+4>>2]=0;c[b+136>>2]=0;c[b+140>>2]=0;o=b+144|0;a[o>>0]=a[o>>0]&-4;o=b+56|0;a[o>>0]=a[o>>0]&-7;h=b+12|0;f=b+496|0;ub[c[(c[h>>2]|0)+60>>2]&7](f,d,e);j=g;k=j+64|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(k|0));zb[c[(c[h>>2]|0)+44>>2]&1](f,g,g,64);i=Lm(i,g,32)|0;if(g&7){f=64;do{a[g>>0]=0;g=g+1|0;f=f+-1|0}while((f|0)!=0&(g&7|0)!=0);if(f>>>0>=8)n=5}else{f=64;n=5}if((n|0)==5){h=f+-8|0;d=h&-8;e=d+8|0;b=g;while(1){n=b;c[n>>2]=0;c[n+4>>2]=0;f=f+-8|0;if(f>>>0<=7)break;else b=b+8|0}f=h-d|0;g=g+e|0}if(f|0)while(1){a[g>>0]=0;f=f+-1|0;if(!f)break;else g=g+1|0}if(i|0){o=i;l=p;return o|0}a[o>>0]=a[o>>0]|2;o=0;l=p;return o|0}function tm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=k;if(e>>>0<g>>>0){g=200;l=k;return g|0}h=a[b+56>>0]|0;if(h&4){g=156;l=k;return g|0}j=b+144|0;e=a[j>>0]|0;if(e&2){g=139;l=k;return g|0}do if(!(h&2)){e=i;c[e>>2]=0;c[e+4>>2]=0;e=sm(b,i,8)|0;if(!e){e=a[j>>0]|0;break}else{g=e;l=k;return g|0}}while(0);if(!(e&1)){h=c[b+128>>2]&15;if(h){Km(b+148|0,71811,16-h|0);e=a[j>>0]|0}e=e|1;a[j>>0]=e;h=b+136|0;c[h>>2]=0;c[b+140>>2]=0;i=0}else{i=b+136|0;h=i;i=c[i>>2]|0}i=i+g|0;c[h>>2]=i;if(i>>>0<g>>>0?(h=b+140|0,i=(c[h>>2]|0)+1|0,c[h>>2]=i,(i|0)==0):0){a[j>>0]=e|2;g=139;l=k;return g|0}zb[c[(c[b+12>>2]|0)+44>>2]&1](b+496|0,d,f,g);Km(b+148|0,d,g);g=0;l=k;return g|0}function um(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=k;if(e>>>0<g>>>0){g=200;l=k;return g|0}h=a[b+56>>0]|0;if(h&4){g=156;l=k;return g|0}j=b+144|0;e=a[j>>0]|0;if(e&2){g=139;l=k;return g|0}do if(!(h&2)){e=i;c[e>>2]=0;c[e+4>>2]=0;e=sm(b,i,8)|0;if(!e){e=a[j>>0]|0;break}else{g=e;l=k;return g|0}}while(0);if(!(e&1)){h=c[b+128>>2]&15;if(h){Km(b+148|0,71811,16-h|0);e=a[j>>0]|0}e=e|1;a[j>>0]=e;h=b+136|0;c[h>>2]=0;c[b+140>>2]=0;i=0}else{i=b+136|0;h=i;i=c[i>>2]|0}i=i+g|0;c[h>>2]=i;if(i>>>0<g>>>0?(h=b+140|0,i=(c[h>>2]|0)+1|0,c[h>>2]=i,(i|0)==0):0){a[j>>0]=e|2;g=139;l=k;return g|0}Km(b+148|0,f,g);zb[c[(c[b+12>>2]|0)+48>>2]&1](b+496|0,d,f,g);g=0;l=k;return g|0}function vm(b){b=b|0;var d=0;d=b+128|0;c[d>>2]=0;c[d+4>>2]=0;c[b+136>>2]=0;c[b+140>>2]=0;d=b+144|0;a[d>>0]=a[d>>0]&-4;b=b+56|0;a[b>>0]=a[b>>0]&-7;return}function wm(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=i+15&-16;w=S(h,g)|0;x=df(1,(h<<1)+16+(w*3|0)+b|0)|0;if(!x){h=46734;return h|0}y=x+(0-x&15)|0;r=y+b|0;s=r+h|0;t=s+h|0;u=t+w|0;v=u+w|0;if(pb[d&63](y,16,16)|0){cf(x);h=46720;return h|0}Yq(r|0,78,h|0)|0;Yq(s|0,78,h|0)|0;if((h|0)>0){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(h|0))}q=r;if(!((t|q|v)&3))if(h>>>0>3){l=h+-4|0;m=l&-4;n=m+4|0;i=t+n|0;b=t;d=r;j=v;k=h;while(1){c[j>>2]=c[b>>2]^c[d>>2];k=k+-4|0;if(k>>>0<=3)break;else{b=b+4|0;d=d+4|0;j=j+4|0}}b=l-m|0;j=r+n|0;d=v+n|0}else{b=h;i=t;j=r;d=v}else{i=t;j=r;d=v;b=h}if(b|0)while(1){a[d>>0]=a[i>>0]^a[j>>0];b=b+-1|0;if(!b)break;else{i=i+1|0;j=j+1|0;d=d+1|0}}pb[e&63](y,v,v)|0;cr(r|0,v|0,h|0)|0;qb[f&15](y,s,u,v,1);if(Tp(u,t,h)|0){cf(x);h=46671;return h|0}if(Tp(s,r,h)|0){cf(x);h=46671;return h|0}Yq(r|0,95,h|0)|0;Yq(s|0,95,h|0)|0;i=(w|0)>0;a:do if(i){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(w|0));if(i){o=h+-4|0;n=o&-4;m=n+4|0;p=r+m|0;n=o-n|0;if(h>>>0>3)l=0;else{m=(h|0)==0;k=0;while(1){l=v+k|0;if(!m){b=t+k|0;i=r;d=l;j=h;while(1){a[d>>0]=a[b>>0]^a[i>>0];j=j+-1|0;if(!j)break;else{b=b+1|0;i=i+1|0;d=d+1|0}}}pb[e&63](y,l,l)|0;cr(r|0,l|0,h|0)|0;k=k+h|0;if((k|0)>=(w|0))break a}}do{o=v+l|0;b=t+l|0;if(!((o|q|b)&3)){k=b+m|0;i=r;d=o;j=h;while(1){c[d>>2]=c[b>>2]^c[i>>2];j=j+-4|0;if(j>>>0<=3)break;else{b=b+4|0;i=i+4|0;d=d+4|0}}b=k;d=p;j=o+m|0;i=n}else{d=r;j=o;i=h}if(i|0)while(1){a[j>>0]=a[b>>0]^a[d>>0];i=i+-1|0;if(!i)break;else{b=b+1|0;d=d+1|0;j=j+1|0}}pb[e&63](y,o,o)|0;cr(r|0,o|0,h|0)|0;l=l+h|0}while((l|0)<(w|0))}}while(0);qb[f&15](y,s,u,v,g);if(!(Tp(u,t,w)|0)){h=(Tp(s,r,h)|0)==0;cf(x);h=h?0:46671;return h|0}else{cf(x);h=46671;return h|0}return 0}function xm(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=i+15&-16;w=S(h,g)|0;x=df(1,(h<<1)+16+(w*3|0)+b|0)|0;if(!x){h=46734;return h|0}y=x+(0-x&15)|0;r=y+b|0;s=r+h|0;t=s+h|0;u=t+w|0;v=u+w|0;if(pb[d&63](y,32,16)|0){cf(x);h=46720;return h|0}Yq(r|0,-45,h|0)|0;Yq(s|0,-45,h|0)|0;if((h|0)>0){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(h|0))}pb[e&63](y,v,r)|0;q=r;if(!((t|q|v)&3))if(h>>>0>3){l=h+-4|0;m=l&-4;n=m+4|0;j=v+n|0;b=t;i=v;d=r;k=h;while(1){p=c[i>>2]^c[b>>2];c[i>>2]=p;c[d>>2]=p;k=k+-4|0;if(k>>>0<=3)break;else{b=b+4|0;i=i+4|0;d=d+4|0}}b=l-m|0;d=t+n|0;i=r+n|0}else{b=h;d=t;j=v;i=r}else{d=t;j=v;i=r;b=h}if(b|0)while(1){p=a[j>>0]^a[d>>0];a[j>>0]=p;a[i>>0]=p;b=b+-1|0;if(!b)break;else{d=d+1|0;j=j+1|0;i=i+1|0}}qb[f&15](y,s,u,v,1);if(Tp(u,t,h)|0){cf(x);h=46760;return h|0}if(Tp(s,r,h)|0){cf(x);h=46760;return h|0}Yq(r|0,-26,h|0)|0;Yq(s|0,-26,h|0)|0;i=(w|0)>0;a:do if(i){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(w|0));if(i){m=h+-4|0;o=m&-4;n=o+4|0;p=r+n|0;o=m-o|0;if(h>>>0>3)m=0;else{l=(h|0)==0;k=0;while(1){b=v+k|0;pb[e&63](y,b,r)|0;if(!l){j=t+k|0;i=r;d=h;while(1){q=a[b>>0]^a[j>>0];a[b>>0]=q;a[i>>0]=q;d=d+-1|0;if(!d)break;else{j=j+1|0;b=b+1|0;i=i+1|0}}}k=k+h|0;if((k|0)>=(w|0))break a}}do{d=v+m|0;pb[e&63](y,d,r)|0;b=t+m|0;if(!((d|q|b)&3)){l=b+n|0;i=d;j=r;k=h;while(1){z=c[i>>2]^c[b>>2];c[i>>2]=z;c[j>>2]=z;k=k+-4|0;if(k>>>0<=3)break;else{b=b+4|0;i=i+4|0;j=j+4|0}}b=l;d=d+n|0;j=p;i=o}else{j=r;i=h}if(i|0)while(1){z=a[d>>0]^a[b>>0];a[d>>0]=z;a[j>>0]=z;i=i+-1|0;if(!i)break;else{b=b+1|0;d=d+1|0;j=j+1|0}}m=m+h|0}while((m|0)<(w|0))}}while(0);qb[f&15](y,s,u,v,g);if(!(Tp(u,t,w)|0)){z=(Tp(s,r,h)|0)==0;cf(x);z=z?0:46760;return z|0}else{cf(x);z=46760;return z|0}return 0}function ym(b,c,e,f,g,h,i){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;b=i+15&-16;w=S(h,g)|0;y=df(1,(h<<1)+16+(w<<2)+b|0)|0;if(!y){h=46734;return h|0}x=y+(0-y&15)|0;r=x+b|0;s=r+h|0;t=s+h|0;u=t+w|0;v=u+w|0;j=v+w|0;if(pb[c&63](x,48,16)|0){cf(y);h=46720;return h|0}Yq(r|0,-1,h|0)|0;q=(h|0)>0;if(q){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(h|0));pb[e&63](x,v,r)|0;if(q){b=0;do{p=v+b|0;a[p>>0]=a[p>>0]^a[t+b>>0];b=b+1|0}while((b|0)!=(h|0));b=h}else b=h}else{pb[e&63](x,v,r)|0;b=h}do{if((b|0)<=0)break;b=b+-1|0;o=r+b|0;p=(a[o>>0]|0)+1<<24>>24;a[o>>0]=p}while(!(p<<24>>24));Yq(s|0,-1,h|0)|0;qb[f&15](x,s,u,v,1);if(Tp(u,t,h)|0){cf(y);h=46809;return h|0}if(Tp(s,r,h)|0){cf(y);h=46809;return h|0}p=h+-4|0;Yq(r|0,87,p|0)|0;o=h+-1|0;n=r+o|0;a[n>>0]=1;l=h+-2|0;a[r+l>>0]=0;m=h+-3|0;a[r+m>>0]=0;a[r+p>>0]=0;Yq(s|0,87,p|0)|0;o=s+o|0;a[o>>0]=1;a[s+l>>0]=0;a[s+m>>0]=0;a[s+p>>0]=0;p=(w|0)>0;a:do if(p){b=0;do{m=b&255;a[t+b>>0]=m;a[u+b>>0]=m;b=b+1|0}while((b|0)!=(w|0));if(p){if(q)i=0;else{i=0;while(1){pb[e&63](x,v+i|0,r)|0;b=h;do{if((b|0)<=0)break;b=b+-1|0;l=r+b|0;m=(a[l>>0]|0)+1<<24>>24;a[l>>0]=m}while(!(m<<24>>24));i=i+h|0;if((i|0)>=(w|0))break a}}do{pb[e&63](x,v+i|0,r)|0;b=0;do{l=b+i|0;m=v+l|0;a[m>>0]=a[m>>0]^a[t+l>>0];b=b+1|0}while((b|0)!=(h|0));b=h;do{if((b|0)<=0)break;b=b+-1|0;l=r+b|0;m=(a[l>>0]|0)+1<<24>>24;a[l>>0]=m}while(!(m<<24>>24));i=i+h|0}while((i|0)<(w|0))}}while(0);qb[f&15](x,s,j,u,g);if(Tp(j,v,w)|0){cf(y);h=46809;return h|0}if(Tp(s,r,h)|0){cf(y);h=46809;return h|0}b:do if((g|0)>0){j=r+1|0;k=r+2|0;l=s+1|0;m=s+2|0;c=0;while(1){Yq(r|0,-1,h|0)|0;a[n>>0]=(d[n>>0]|0)-c;a[j>>0]=0;a[r>>0]=0;a[k>>0]=7;c:do if(p){b=0;do{a[t+b>>0]=b;b=b+1|0}while((b|0)!=(w|0));if(p){if(q)i=0;else{i=0;while(1){pb[e&63](x,v+i|0,r)|0;b=h;do{if((b|0)<=0)break;b=b+-1|0;A=r+b|0;z=(a[A>>0]|0)+1<<24>>24;a[A>>0]=z}while(!(z<<24>>24));i=i+h|0;if((i|0)>=(w|0))break c}}do{pb[e&63](x,v+i|0,r)|0;b=0;do{z=b+i|0;A=v+z|0;a[A>>0]=a[A>>0]^a[t+z>>0];b=b+1|0}while((b|0)!=(h|0));b=h;do{if((b|0)<=0)break;b=b+-1|0;z=r+b|0;A=(a[z>>0]|0)+1<<24>>24;a[z>>0]=A}while(!(A<<24>>24));i=i+h|0}while((i|0)<(w|0))}}while(0);Yq(s|0,-1,h|0)|0;a[o>>0]=(d[o>>0]|0)-c;a[l>>0]=0;a[s>>0]=0;a[m>>0]=7;qb[f&15](x,s,u,v,g);if(Tp(u,t,w)|0){b=49;break}c=c+1|0;if(Tp(s,r,h)|0){b=51;break}if((c|0)>=(g|0))break b}if((b|0)==49){cf(y);A=46809;return A|0}else if((b|0)==51){cf(y);A=46809;return A|0}}while(0);cf(y);A=0;return A|0}function zm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,ba=0;ba=l;l=l+544|0;if((l|0)>=(m|0))$(544);L=ba+496|0;X=ba+248|0;V=ba+216|0;U=ba+136|0;R=ba+128|0;Q=ba+120|0;N=ba+112|0;J=ba+104|0;E=ba+96|0;D=ba+88|0;C=ba+80|0;z=ba+72|0;H=ba+64|0;G=ba+56|0;F=ba+48|0;A=ba+40|0;w=ba+32|0;x=ba+24|0;v=ba+16|0;j=ba+8|0;i=ba;M=ba+440|0;I=ba+428|0;B=ba+384|0;y=ba+372|0;o=ba+368|0;Z=ba+324|0;_=ba+264|0;aa=ba+260|0;Y=ba+256|0;W=ba+252|0;c[aa>>2]=0;c[Y>>2]=0;c[W>>2]=0;r=Z;s=r+44|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));r=_;s=r+60|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));f=Fh(b,o)|0;if(f|0){aa=f;l=ba;return aa|0}f=uf(b,46925,0)|0;if(f){g=zf(f,1)|0;sf(f);if(!g){aa=65;l=ba;return aa|0}}else g=0;f=uf(b,46885,0)|0;if((f|0)!=0?(h=Eh(f,W,0)|0,sf(f),(h|0)!=0):0){o=0;n=0;k=0;j=0;i=0;b=0;g=0;f=0}else S=6;do if((S|0)==6){f=uf(b,48632,0)|0;if(f|0){c[W>>2]=c[W>>2]|32;sf(f)}f=c[o>>2]|0;if(!((g|0)!=0|(f|0)!=0)){aa=68;l=ba;return aa|0}h=Eg(f,g,Z,o)|0;cf(g);if(!h){if(!(nf(1)|0)){i=Z+4|0;n=Z+8|0;g=Z+12|0;h=Z+16|0}else{u=Wg(c[Z>>2]|0)|0;g=Z+4|0;f=Xg(c[g>>2]|0)|0;c[i>>2]=u;c[i+4>>2]=f;Oe(48646,i);f=c[Z+40>>2]|0;if(f|0){c[j>>2]=f;Oe(48671,j)}n=Z+8|0;Se(48693,c[n>>2]|0);u=Z+12|0;Se(48709,c[u>>2]|0);h=Z+16|0;Se(48725,c[h>>2]|0);Se(48741,c[Z+32>>2]|0);Se(48757,c[Z+36>>2]|0);Mj(48773,Z+20|0,0);i=g;g=u}k=Uj(c[Z>>2]|0,c[i>>2]|0,0,c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;q=c[W>>2]|0;if(!(q&4096)){p=c[o>>2]|0;b=lk(c[n>>2]|0)|0;Pj(y);f=2-(q>>>5&1)|0;if((c[k+4>>2]|0)==1){t=_+56|0;c[t>>2]=Il(256)|0;u=Cj(32,f)|0;a[u>>0]=(d[u>>0]|0)&63|64;o=u+31|0;a[o>>0]=(d[o>>0]|0)&248;Rk(c[t>>2]|0,u,32,0);cf(u);u=t;o=Z+32|0;f=c[t>>2]|0}else{o=Z+32|0;f=Gn(c[o>>2]|0,f)|0;u=_+56|0;c[u>>2]=f}j=Z+20|0;ck(y,f,j,k);c[_>>2]=c[Z>>2];t=_+4|0;c[t>>2]=c[i>>2];c[_+8>>2]=yl(c[n>>2]|0)|0;c[_+12>>2]=yl(c[g>>2]|0)|0;c[_+16>>2]=yl(c[h>>2]|0)|0;h=_+20|0;Pj(h);Al(c[h>>2]|0,c[j>>2]|0)|0;Al(c[_+24>>2]|0,c[Z+24>>2]|0)|0;Al(c[_+28>>2]|0,c[Z+28>>2]|0)|0;c[_+32>>2]=yl(c[o>>2]|0)|0;c[_+36>>2]=yl(c[Z+36>>2]|0)|0;j=_+44|0;Pj(j);f=Hl(b)|0;g=Hl(b)|0;if(Nj(f,g,y,k)|0){c[v>>2]=48835;Me(48787,v)}do if((c[i>>2]|0)!=1){i=Hl(b)|0;b=c[n>>2]|0;if(!(c[Z>>2]|0))hk(i,b,g);else hk(i,b,f);if((wk(i,g)|0)>=0){tl(i);Al(c[j>>2]|0,c[y>>2]|0)|0;Al(c[_+48>>2]|0,c[y+4>>2]|0)|0;Al(c[_+52>>2]|0,c[y+8>>2]|0)|0;if(!(nf(1)|0))break;Oe(48877,w);break}if(!(c[Z>>2]|0)){tl(g);g=i}else{tl(f);f=i}w=c[u>>2]|0;hk(w,c[o>>2]|0,w);Sj(j,f,g,Ml(1)|0)|0;if(nf(1)|0)Oe(48837,x)}else{Al(c[j>>2]|0,c[y>>2]|0)|0;Al(c[_+48>>2]|0,c[y+4>>2]|0)|0;Al(c[_+52>>2]|0,c[y+8>>2]|0)|0}while(0);Rj(y);do if(!(q&16384)){q=p+-64|0;if((c[_>>2]|0)!=1){i=Hl(q)|0;j=Hl(q)|0;n=Hl(q)|0;o=Hl(q)|0;p=Hl(q)|0;if(nf(1)|0)Oe(48930,A);Pj(I);r=L;b=_;s=r+44|0;do{c[r>>2]=c[b>>2];r=r+4|0;b=b+4|0}while((r|0)<(s|0));Vg(B,L);r=M;b=B;s=r+44|0;do{c[r>>2]=c[b>>2];r=r+4|0;b=b+4|0}while((r|0)<(s|0));b=M+44|0;Pj(b);Al(c[b>>2]|0,c[_+44>>2]|0)|0;Al(c[M+48>>2]|0,c[_+48>>2]|0)|0;Al(c[M+52>>2]|0,c[_+52>>2]|0)|0;Kl(i,q,0);if(Kn(i,_,o,p,0,0)|0)Me(48944,F);if(Ln(i,M,o,p)|0)Me(48974,G);if(nf(1)|0)Oe(49012,H);Rj(b);Ug(M);Rj(I);tl(p);tl(o);tl(n);tl(j);tl(i);break}if(nf(1)|0)Oe(48930,z);Pj(I);r=L;b=_;s=r+44|0;do{c[r>>2]=c[b>>2];r=r+4|0;b=b+4|0}while((r|0)<(s|0));Vg(B,L);r=M;b=B;s=r+44|0;do{c[r>>2]=c[b>>2];r=r+4|0;b=b+4|0}while((r|0)<(s|0));o=M+44|0;Pj(o);Al(c[o>>2]|0,c[_+44>>2]|0)|0;Al(c[M+48>>2]|0,c[_+48>>2]|0)|0;Al(c[M+52>>2]|0,c[_+52>>2]|0)|0;if((c[t>>2]|0)==1){b=Hl(256)|0;H=Aj(32,0)|0;a[H>>0]=(d[H>>0]|0)&63|64;G=H+31|0;a[G>>0]=(d[G>>0]|0)&248;Rk(b,H,32,0);cf(H)}else{b=Hl(q)|0;Kl(b,q,0)}i=Uj(c[M>>2]|0,c[M+4>>2]|0,0,c[M+8>>2]|0,c[M+12>>2]|0,c[M+16>>2]|0)|0;j=Hl(0)|0;n=Hl(0)|0;ck(I,b,o,i);if((c[t>>2]|0)!=1)ck(I,c[i+36>>2]|0,I,i);if(Nj(j,0,I,i)|0)Me(49047,C);ck(I,b,M+20|0,i);ck(I,c[u>>2]|0,I,i);if((c[t>>2]|0)!=1)ck(I,c[i+36>>2]|0,I,i);if(Nj(n,0,I,i)|0)Me(49095,D);if(!(wk(j,n)|0)){tl(j);tl(n);Yj(i);Rj(o);Ug(M);Rj(I);tl(b);break}else Me(49144,E)}while(0)}else{h=Rg(_,Z,k,q)|0;if(h|0){o=0;n=0;j=0;i=0;b=0;g=0;f=0;break}g=0;f=0;h=_+20|0}s=Hl(0)|0;r=Hl(0)|0;if(Nj(s,r,h,k)|0){c[J>>2]=49163;Me(48787,J)}q=_+8|0;n=Yg(s,r,c[q>>2]|0)|0;do if((c[_+4>>2]|0)==1?(K=c[W>>2]|0,(K&2048|0)==0):0){h=Mg(_+44|0,k,s,r,K>>>10&1,L,M)|0;if(!h){b=Hl(0)|0;ul(b,c[L>>2]|0,c[M>>2]<<3)|0;break}aa=h;l=ba;return aa|0}else S=71;while(0);if((S|0)==71){if(!f){f=Hl(0)|0;g=Hl(0)|0;if(!(Nj(f,g,_+44|0,k)|0)){O=g;P=f}else{c[N>>2]=48835;Me(48787,N)}}else{O=g;P=f}b=Yg(P,O,c[q>>2]|0)|0;g=O;f=P}p=_+56|0;o=c[p>>2]|0;c[p>>2]=0;p=Z+40|0;h=c[p>>2]|0;if(h|0?(c[Q>>2]=h,T=Df(aa,0,49165,Q)|0,T|0):0){j=r;i=s;h=T;break}h=c[W>>2]|0;i=h&4608;if(i){h=Df(Y,0,(i|0)!=4608?(h&512|0?49176:49190):49204,R)|0;if(h|0){j=r;i=s;break}h=c[W>>2]|0}i=c[aa>>2]|0;j=c[Y>>2]|0;if((h&512|0)==0|(c[p>>2]|0)==0){c[V>>2]=i;c[V+4>>2]=j;c[V+8>>2]=b;c[V+12>>2]=i;c[V+16>>2]=j;c[V+20>>2]=b;c[V+24>>2]=o;h=Df(e,0,49360,V)|0}else{R=c[q>>2]|0;S=c[_+12>>2]|0;T=c[_+16>>2]|0;V=c[_+32>>2]|0;h=c[_+36>>2]|0;c[U>>2]=i;c[U+4>>2]=j;c[U+8>>2]=R;c[U+12>>2]=S;c[U+16>>2]=T;c[U+20>>2]=n;c[U+24>>2]=V;c[U+28>>2]=h;c[U+32>>2]=b;c[U+36>>2]=i;c[U+40>>2]=j;c[U+44>>2]=R;c[U+48>>2]=S;c[U+52>>2]=T;c[U+56>>2]=n;c[U+60>>2]=V;c[U+64>>2]=h;c[U+68>>2]=b;c[U+72>>2]=o;h=Df(e,0,49224,U)|0}if(!h)if((nf(1)|0)!=0?(Se(49436,c[q>>2]|0),Se(49452,c[_+12>>2]|0),Se(49468,c[_+16>>2]|0),Se(49484,n),Se(49500,c[_+32>>2]|0),Se(49516,c[_+36>>2]|0),Se(49532,b),Se(49548,o),(c[W>>2]&4096|0)!=0):0){Oe(49564,X);j=r;i=s;h=0}else{j=r;i=s;h=0}else{j=r;i=s}}else{o=0;n=0;k=0;j=0;i=0;b=0;g=0;f=0}}while(0);tl(o);tl(b);tl(n);Ug(_);Rj(_+44|0);tl(c[_+56>>2]|0);Ug(Z);tl(i);tl(j);tl(f);tl(g);Yj(k);sf(c[Y>>2]|0);sf(c[aa>>2]|0);aa=h;l=ba;return aa|0}function Am(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;I=l;l=l+240|0;if((l|0)>=(m|0))$(240);H=I+144|0;C=I+136|0;B=I+128|0;A=I+120|0;z=I+112|0;y=I+104|0;x=I+96|0;v=I+88|0;u=I+80|0;t=I+72|0;j=I+64|0;i=I+56|0;g=I+40|0;f=I;D=I+220|0;q=I+216|0;E=I+212|0;F=I+208|0;G=I+148|0;c[q>>2]=0;c[E>>2]=0;c[F>>2]=0;b=G;d=b+60|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));e=uf(a,46885,0)|0;if(e){b=Eh(e,q,0)|0;if(!b)if(!(c[q>>2]&512))k=5;else{c[f>>2]=G+8;c[f+4>>2]=G+12;c[f+8>>2]=G+16;c[f+12>>2]=E;c[f+16>>2]=G+32;c[f+20>>2]=G+36;c[f+24>>2]=F;c[f+28>>2]=G+56;c[f+32>>2]=0;b=If(a,0,47225,f)|0;k=6}else{f=0;d=0}}else k=5;if((k|0)==5){c[g>>2]=F;c[g+4>>2]=G+56;c[g+8>>2]=0;b=If(a,0,47244,g)|0;k=6}do if((k|0)==6)if(!b){sf(e);r=uf(a,46925,5)|0;if((r|0)!=0?(h=zf(r,1)|0,(h|0)!=0):0){b=Fg(h,G,G+4|0,G+8|0,G+12|0,G+16|0,E,G+32|0,G+36|0)|0;if(!b)k=h;else{H=b;l=I;return H|0}}else k=0;if(c[E>>2]|0?(n=G+20|0,Pj(n),n=_g(n,c[E>>2]|0)|0,n|0):0){f=0;e=r;d=k;b=n;break}if(!k){n=c[q>>2]|0;c[G>>2]=n>>>11&2;c[G+4>>2]=n>>>12&1}if(nf(1)|0){n=Wg(c[G>>2]|0)|0;b=Xg(c[G+4>>2]|0)|0;c[i>>2]=n;c[i+4>>2]=b;Oe(48153,i);b=c[G+40>>2]|0;if(b|0){c[j>>2]=b;Oe(48177,j)}b=G+8|0;Se(48198,c[b>>2]|0);Se(48214,c[G+12>>2]|0);Se(48230,c[G+16>>2]|0);Mj(48246,G+20|0,0);Se(48260,c[G+32>>2]|0);Se(48276,c[G+36>>2]|0);Se(48292,c[F>>2]|0);if(!(gg()|0))Se(48308,c[G+56>>2]|0)}else b=G+8|0;b=c[b>>2]|0;if(((((((b|0)!=0?(o=c[G+12>>2]|0,(o|0)!=0):0)?(p=c[G+16>>2]|0,(p|0)!=0):0)?(c[G+20>>2]|0)!=0:0)?(s=G+32|0,(c[s>>2]|0)!=0):0)?(c[G+36>>2]|0)!=0:0)?(w=G+56|0,(c[w>>2]|0)!=0):0){h=G+4|0;f=Uj(c[G>>2]|0,c[h>>2]|0,0,b,o,p)|0;if(c[F>>2]|0){i=G+44|0;Pj(i);b=c[F>>2]|0;if((c[f+4>>2]|0)==1)b=Pg(b,f,i,0,0)|0;else b=_g(i,b)|0;if(!b){d=c[q>>2]|0;Pj(D);a=Hl(0)|0;if((c[f>>2]|0)==1)g=0;else g=Hl(0)|0;e=G+20|0;a:do if(!(dk(e,f)|0)){if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48324,t);b=7;e=0;d=0}else{if(!(vk(c[G+28>>2]|0,0)|0)){if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48376,u);b=7;e=0;d=0;break}do if((c[h>>2]|0)!=1){ck(D,c[s>>2]|0,e,f);if(!(vk(c[D+8>>2]|0,0)|0))break;if(!(nf(1)|0)){b=7;e=0;d=0;break a}Oe(48421,v);b=7;e=0;d=0;break a}while(0);b=G+52|0;if(!(vk(c[b>>2]|0,0)|0)){if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48468,x);b=7;e=0;d=0;break}if(!($g(D,f,e,c[w>>2]|0)|0)){if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48514,y);b=7;e=0;d=0;break}if(Nj(a,g,D,f)|0){if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48468,z);b=7;e=0;d=0;break}if(d&4096|0){b=0;e=0;d=0;break}if(!(vk(c[b>>2]|0,1)|0)){if(!(wk(a,c[i>>2]|0)|0)){if(g|0){b=0;e=0;d=0;break}if(!(wk(0,c[G+48>>2]|0)|0)){b=0;e=0;d=0;break}}if(!(nf(1)|0)){b=7;e=0;d=0;break}Oe(48551,A);b=7;e=0;d=0;break}d=Hl(0)|0;e=Hl(0)|0;if(Nj(d,e,i,f)|0){if(!(nf(1)|0)){b=7;break}Oe(48468,B);b=7;break}if((wk(a,d)|0)==0?(wk(g,e)|0)==0:0){b=0;break}if(!(nf(1)|0)){b=7;break}Oe(48551,C);b=7}while(0);tl(d);tl(a);tl(g);tl(e);Rj(D);e=r;d=k}else{e=r;d=k}}else{e=r;d=k;b=68}}else{f=0;e=r;d=k;b=68}}else{f=0;d=0}while(0);Yj(f);Jl(c[G+8>>2]|0);Jl(c[G+12>>2]|0);Jl(c[G+16>>2]|0);Jl(c[E>>2]|0);Rj(G+20|0);Jl(c[G+32>>2]|0);Jl(c[G+36>>2]|0);Jl(c[F>>2]|0);Rj(G+44|0);Jl(c[G+56>>2]|0);cf(d);sf(e);if(!(nf(1)|0)){H=b;l=I;return H|0}c[H>>2]=Pn(b)|0;Oe(48611,H);H=b;l=I;return H|0}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+192|0;if((l|0)>=(m|0))$(192);E=F+72|0;D=F+64|0;C=F+56|0;p=F+48|0;n=F+40|0;k=F+32|0;B=F;v=F+152|0;w=F+144|0;x=F+140|0;y=F+136|0;A=F+80|0;c[w>>2]=0;c[x>>2]=0;c[y>>2]=0;e=A;f=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Jh(v,0,Fm(d)|0);b=Lh(b,y,v)|0;do if(!b){if(nf(1)|0)Se(47813,c[y>>2]|0);o=c[y>>2]|0;if(o|0?c[o+12>>2]&4|0:0){q=79;r=0;s=0;t=0;u=0;break}o=A+8|0;i=A+12|0;j=A+16|0;e=A+32|0;f=A+36|0;c[B>>2]=o;c[B+4>>2]=i;c[B+8>>2]=j;c[B+12>>2]=w;c[B+16>>2]=e;c[B+20>>2]=f;c[B+24>>2]=x;c[B+28>>2]=0;b=If(d,0,47830,B)|0;if(!b){if(c[w>>2]|0?(g=A+20|0,Pj(g),g=_g(g,c[w>>2]|0)|0,g|0):0){q=g;r=0;s=0;t=0;u=0;break}sf(0);b=uf(d,46925,5)|0;if((b|0)!=0?(h=zf(b,1)|0,(h|0)!=0):0){b=Eg(0,h,A,0)|0;if(b){E=b;l=F;return E|0}}else{c[A>>2]=0;c[A+4>>2]=0;h=0}if(nf(1)|0){g=Wg(c[A>>2]|0)|0;b=Xg(c[A+4>>2]|0)|0;c[k>>2]=g;c[k+4>>2]=b;Oe(47846,k);b=c[A+40>>2]|0;if(b|0){c[n>>2]=b;Oe(47871,n)}Se(47893,c[o>>2]|0);Se(47910,c[i>>2]|0);Se(47927,c[j>>2]|0);Mj(47944,A+20|0,0);Se(47959,c[e>>2]|0);Se(47976,c[f>>2]|0);Se(47993,c[x>>2]|0)}if((!((c[o>>2]|0)==0|(c[i>>2]|0)==0|(c[j>>2]|0)==0)?(z=A+20|0,!((c[z>>2]|0)==0|(c[e>>2]|0)==0)):0)?(c[f>>2]|0)!=0&(c[x>>2]|0)!=0:0){g=A+44|0;Pj(g);b=_g(g,c[x>>2]|0)|0;if(!b){e=Uj(c[A>>2]|0,c[A+4>>2]|0,0,c[o>>2]|0,c[i>>2]|0,c[j>>2]|0)|0;f=Hl(0)|0;d=Hl(0)|0;Pj(B);ck(B,c[y>>2]|0,g,e);if(Nj(f,d,B,e)|0)Me(48010,p);b=Yg(f,d,c[o>>2]|0)|0;ck(B,c[y>>2]|0,z,e);if(!(Nj(f,d,B,e)|0)){s=Yg(f,d,c[o>>2]|0)|0;tl(f);tl(d);Rj(B);c[D>>2]=b;c[D+4>>2]=s;q=Df(a,0,48105,D)|0;r=e;t=b;u=h;break}else Me(48058,C)}else{q=b;r=0;s=0;t=0;u=h}}else{q=68;r=0;s=0;t=0;u=h}}else{q=b;r=0;s=0;t=0;u=0}}else{q=b;r=0;s=0;t=0;u=0}while(0);Jl(c[A+8>>2]|0);Jl(c[A+12>>2]|0);Jl(c[A+16>>2]|0);Jl(c[w>>2]|0);Rj(A+20|0);Jl(c[A+32>>2]|0);Jl(c[A+36>>2]|0);Jl(c[x>>2]|0);Rj(A+44|0);Jl(c[y>>2]|0);Jl(t);Jl(s);cf(u);Yj(r);Kh(v);if(!(nf(1)|0)){E=q;l=F;return E|0}c[E>>2]=Pn(q)|0;Oe(48131,E);E=q;l=F;return E|0}function Cm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+224|0;if((l|0)>=(m|0))$(224);A=B+72|0;s=B+64|0;r=B+56|0;q=B+48|0;p=B+40|0;j=B+8|0;h=B;t=B+176|0;u=B+168|0;v=B+164|0;w=B+104|0;x=B+100|0;y=B+88|0;z=B+76|0;c[u>>2]=0;c[v>>2]=0;c[x>>2]=0;f=w;g=f+60|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));Pj(y);Pj(z);Jh(t,1,Fm(d)|0);b=Ih(b,12556,u,t)|0;do if(!b){b=c[u>>2]|0;c[h>>2]=v;c[h+4>>2]=0;b=If(b,0,47524,h)|0;if(!b){if(nf(1)|0)Se(47526,c[v>>2]|0);n=c[v>>2]|0;if(n|0?c[n+12>>2]&4|0:0){f=0;g=0;b=79;e=0;break}n=w+8|0;h=w+12|0;i=w+16|0;f=w+32|0;g=w+36|0;k=w+56|0;c[j>>2]=n;c[j+4>>2]=h;c[j+8>>2]=i;c[j+12>>2]=x;c[j+16>>2]=f;c[j+20>>2]=g;c[j+24>>2]=k;c[j+28>>2]=0;b=If(d,0,47543,j)|0;if(!b){if(c[x>>2]|0?(o=w+20|0,Pj(o),o=_g(o,c[x>>2]|0)|0,o|0):0){f=0;g=0;b=o;e=0;break}sf(c[u>>2]|0);b=uf(d,46925,5)|0;c[u>>2]=b;if((b|0)!=0?(e=zf(b,1)|0,(e|0)!=0):0){b=Eg(0,e,w,0)|0;if(b){A=b;l=B;return A|0}}else{c[w>>2]=0;c[w+4>>2]=0;e=0}if(nf(1)|0){o=Wg(c[w>>2]|0)|0;b=Xg(c[w+4>>2]|0)|0;c[p>>2]=o;c[p+4>>2]=b;Oe(47559,p);b=c[w+40>>2]|0;if(b|0){c[q>>2]=b;Oe(47584,q)}Se(47606,c[n>>2]|0);Se(47623,c[h>>2]|0);Se(47640,c[i>>2]|0);Mj(47657,w+20|0,0);Se(47672,c[f>>2]|0);Se(47689,c[g>>2]|0);if(!(gg()|0))Se(47706,c[k>>2]|0)}if(!((c[n>>2]|0)==0|(c[h>>2]|0)==0|(c[i>>2]|0)==0)?!((c[w+20>>2]|0)==0|(c[f>>2]|0)==0|(c[g>>2]|0)==0|(c[k>>2]|0)==0):0){b=_g(y,c[v>>2]|0)|0;if(b|0){Rj(y);A=b;l=B;return A|0}i=Uj(c[w>>2]|0,c[w+4>>2]|0,0,c[n>>2]|0,c[h>>2]|0,c[i>>2]|0)|0;ck(z,c[k>>2]|0,y,i);g=Hl(0)|0;h=Hl(0)|0;if(Nj(g,h,z,i)|0)Me(47723,r);f=Yg(g,h,c[n>>2]|0)|0;if(!f)b=Sn()|0;else b=0;tl(g);tl(h);if(nf(1)|0)Se(47763,f);if(!b){c[s>>2]=f;g=i;b=Df(a,0,47780,s)|0}else g=i}else{f=0;g=0;b=68}}else{f=0;g=0;e=0}}else{f=0;g=0;e=0}}else{f=0;g=0;e=0}while(0);Rj(z);Rj(y);Jl(f);Jl(c[w+8>>2]|0);Jl(c[w+12>>2]|0);Jl(c[w+16>>2]|0);Jl(c[x>>2]|0);Rj(w+20|0);Jl(c[w+32>>2]|0);Jl(c[w+36>>2]|0);Jl(c[w+56>>2]|0);Jl(c[v>>2]|0);cf(e);sf(c[u>>2]|0);Yj(g);Kh(t);if(!(nf(1)|0)){A=b;l=B;return A|0}c[A>>2]=Pn(b)|0;Oe(47791,A);A=b;l=B;return A|0}function Dm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+224|0;if((l|0)>=(m|0))$(224);w=x+104|0;q=x+96|0;p=x+88|0;o=x+80|0;n=x+72|0;j=x+56|0;h=x+40|0;g=x;r=x+184|0;s=x+176|0;t=x+172|0;u=x+168|0;v=x+108|0;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;e=v;f=e+60|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Jh(r,2,0);b=Lh(b,s,r)|0;do if(!b){if(nf(1)|0)Se(47209,c[s>>2]|0);e=r+12|0;if(!(c[e>>2]&512)){c[h>>2]=u;c[h+4>>2]=v+56;c[h+8>>2]=0;b=If(d,0,47244,h)|0}else{c[g>>2]=v+8;c[g+4>>2]=v+12;c[g+8>>2]=v+16;c[g+12>>2]=t;c[g+16>>2]=v+32;c[g+20>>2]=v+36;c[g+24>>2]=u;c[g+28>>2]=v+56;c[g+32>>2]=0;b=If(d,0,47225,g)|0}if(!b){if(c[t>>2]|0?(k=v+20|0,Pj(k),k=_g(k,c[t>>2]|0)|0,k|0):0){f=0;g=0;h=0;e=0;b=k;break}sf(0);h=uf(d,46925,5)|0;if((h|0)!=0?(i=zf(h,1)|0,(i|0)!=0):0){b=Eg(0,i,v,0)|0;if(b){w=b;l=x;return w|0}}else{i=c[e>>2]|0;c[v>>2]=i>>>11&2;c[v+4>>2]=i>>>12&1;i=0}if(nf(1)|0){d=Wg(c[v>>2]|0)|0;k=Xg(c[v+4>>2]|0)|0;b=c[e>>2]&4096|0?47019:71847;c[j>>2]=d;c[j+4>>2]=k;c[j+8>>2]=b;Oe(47250,j);b=c[v+40>>2]|0;if(b|0){c[n>>2]=b;Oe(47276,n)}b=v+8|0;Se(47297,c[b>>2]|0);Se(47313,c[v+12>>2]|0);Se(47329,c[v+16>>2]|0);Mj(47345,v+20|0,0);Se(47359,c[v+32>>2]|0);Se(47375,c[v+36>>2]|0);Se(47391,c[u>>2]|0);if(!(gg()|0))Se(47407,c[v+56>>2]|0)}else b=v+8|0;if(((((((c[b>>2]|0)!=0?(c[v+12>>2]|0)!=0:0)?(c[v+16>>2]|0)!=0:0)?(c[v+20>>2]|0)!=0:0)?(c[v+32>>2]|0)!=0:0)?(c[v+36>>2]|0)!=0:0)?(c[v+56>>2]|0)!=0:0){g=Hl(0)|0;f=Hl(0)|0;e=c[e>>2]|0;if(e&4096|0){b=Sg(c[s>>2]|0,v,g,f,c[r+16>>2]|0,c[u>>2]|0)|0;if(b|0){e=i;break}c[o>>2]=g;c[o+4>>2]=f;e=i;b=Df(a,0,47423,o)|0;break}b=c[s>>2]|0;if(!(e&8192)){b=Kn(b,v,g,f,e,c[r+16>>2]|0)|0;if(b|0){e=i;break}c[q>>2]=g;c[q+4>>2]=f;e=i;b=Df(a,0,47476,q)|0;break}else{b=Mn(b,v,g,f)|0;if(b|0){e=i;break}c[p>>2]=g;c[p+4>>2]=f;e=i;b=Df(a,0,47450,p)|0;break}}else{f=0;g=0;e=i;b=68}}else{f=0;g=0;h=0;e=0}}else{f=0;g=0;h=0;e=0}while(0);Jl(c[v+8>>2]|0);Jl(c[v+12>>2]|0);Jl(c[v+16>>2]|0);Jl(c[t>>2]|0);Rj(v+20|0);Jl(c[v+32>>2]|0);Jl(c[v+36>>2]|0);Jl(c[u>>2]|0);Rj(v+44|0);Jl(c[v+56>>2]|0);Jl(g);Jl(f);cf(e);Jl(c[s>>2]|0);sf(h);Kh(r);if(!(nf(1)|0)){w=b;l=x;return w|0}c[w>>2]=Pn(b)|0;Oe(47503,w);w=b;l=x;return w|0}function Em(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+224|0;if((l|0)>=(m|0))$(224);D=E+80|0;n=E+72|0;k=E+56|0;g=E+48|0;h=E+16|0;t=E;w=E+176|0;x=E+172|0;y=E+168|0;z=E+164|0;A=E+160|0;B=E+156|0;C=E+152|0;v=E+96|0;o=E+88|0;u=E+84|0;c[x>>2]=0;c[y>>2]=0;c[z>>2]=0;c[A>>2]=0;c[B>>2]=0;c[C>>2]=0;e=v;f=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));Jh(w,3,Fm(d)|0);e=Lh(b,C,w)|0;a:do if(!e){if(nf(1)|0)Se(46951,c[C>>2]|0);e=Hh(a,12556,x,o)|0;if(!e){a=c[x>>2]|0;e=c[o>>2]&4096|0?46967:46882;c[t>>2]=A;c[t+4>>2]=B;c[t+8>>2]=0;e=If(a,0,e,t)|0;if(!e){if(nf(1)|0){Se(46971,c[A>>2]|0);Se(46987,c[B>>2]|0)}b=c[w+12>>2]|0;if(!((c[o>>2]^b)&4096)){if(!(b&512)){c[g>>2]=z;c[g+4>>2]=0;e=If(d,0,46920,g)|0}else{e=v+32|0;c[h>>2]=v+8;c[h+4>>2]=v+12;c[h+8>>2]=v+16;c[h+12>>2]=y;c[h+16>>2]=e;c[h+20>>2]=e;c[h+24>>2]=z;c[h+28>>2]=0;e=If(d,0,47003,h)|0}if(!e){if(c[y>>2]|0?(i=v+20|0,Pj(i),i=_g(i,c[y>>2]|0)|0,i|0):0){f=0;e=i;break}sf(c[x>>2]|0);b=uf(d,46925,5)|0;c[x>>2]=b;if((b|0)!=0?(j=zf(b,1)|0,(j|0)!=0):0){b=Eg(0,j,v,0)|0;if(!b)a=j;else{D=b;l=E;return D|0}}else{a=c[o>>2]|0;c[v>>2]=a>>>11&2;c[v+4>>2]=a>>>12&1;a=0}if(!(nf(1)|0))f=v+8|0;else{i=Wg(c[v>>2]|0)|0;j=Xg(c[v+4>>2]|0)|0;b=c[o>>2]&4096|0?47019:71847;c[k>>2]=i;c[k+4>>2]=j;c[k+8>>2]=b;Oe(47026,k);b=c[v+40>>2]|0;if(b|0){c[n>>2]=b;Oe(47052,n)}f=v+8|0;Se(47073,c[f>>2]|0);Se(47089,c[v+12>>2]|0);Se(47105,c[v+16>>2]|0);Mj(47121,v+20|0,0);Se(47135,c[v+32>>2]|0);Se(47151,c[v+36>>2]|0);Se(47167,c[z>>2]|0)}if((((((c[f>>2]|0)!=0?(q=v+12|0,(c[q>>2]|0)!=0):0)?(r=v+16|0,(c[r>>2]|0)!=0):0)?(c[v+20>>2]|0)!=0:0)?(s=v+32|0,(c[s>>2]|0)!=0):0)?(p=c[z>>2]|0,(c[v+36>>2]|0)!=0&(p|0)!=0):0){e=c[o>>2]|0;if(e&4096|0){f=a;e=Tg(c[C>>2]|0,v,c[A>>2]|0,c[B>>2]|0,c[w+16>>2]|0,p)|0;break}b=v+44|0;Pj(b);if(e&8192|0){e=_g(b,c[z>>2]|0)|0;if(e|0){f=a;break}f=a;e=Nn(c[C>>2]|0,v,c[A>>2]|0,c[B>>2]|0)|0;break}if((c[v+4>>2]|0)==1){r=Uj(c[v>>2]|0,1,0,c[f>>2]|0,c[q>>2]|0,c[r>>2]|0)|0;e=Pg(c[z>>2]|0,r,b,0,0)|0;Yj(r)}else e=_g(b,c[z>>2]|0)|0;if(e|0){f=a;break}b=c[C>>2]|0;do if(b|0){if(!(c[b+12>>2]&4))break;e=lk(c[s>>2]|0)|0;b=wl(c[C>>2]|0,t)|0;b=Sk(u,5,b,((c[t>>2]|0)+7|0)>>>3,0)|0;if(!b){b=c[t>>2]|0;if(b>>>0>e>>>0){t=c[u>>2]|0;sk(t,t,b-e|0)}b=Ln(c[u>>2]|0,v,c[A>>2]|0,c[B>>2]|0)|0;Jl(c[u>>2]|0)}f=a;e=b;break a}while(0);f=a;e=Ln(b,v,c[A>>2]|0,c[B>>2]|0)|0}else{f=a;e=68}}else f=0}else{f=0;e=70}}else f=0}else f=0}else f=0;while(0);Jl(c[v+8>>2]|0);Jl(c[v+12>>2]|0);Jl(c[v+16>>2]|0);Jl(c[y>>2]|0);Rj(v+20|0);Jl(c[v+32>>2]|0);Jl(c[v+36>>2]|0);Jl(c[z>>2]|0);Rj(v+44|0);Jl(c[C>>2]|0);Jl(c[A>>2]|0);Jl(c[B>>2]|0);cf(f);sf(c[x>>2]|0);Kh(w);if(!(nf(1)|0)){D=e;l=E;return D|0}if(!e)b=47183;else b=Pn(e)|0;c[D>>2]=b;Oe(47188,D);D=e;l=E;return D|0}function Fm(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=f;c[e>>2]=0;b=uf(a,46949,1)|0;if(!b){a=uf(a,46925,5)|0;if((a|0)!=0?(d=zf(a,1)|0,sf(a),(d|0)!=0):0){if(Eg(0,d,0,e)|0)c[e>>2]=0;cf(d);a=c[e>>2]|0}else a=0}else{a=Af(b,1,5)|0;sf(b);if(!a)a=0;else{d=lk(a)|0;c[e>>2]=d;Jl(a);a=d}}l=f;return a|0}function Gm(a,b,c){a=a|0;b=b|0;c=c|0;return ((a|0)==18?0:4)|0}function Hm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+176|0;if((l|0)>=(m|0))$(176);E=G+88|0;D=G+80|0;i=G+72|0;h=G+64|0;q=G+32|0;p=G;F=G+112|0;w=G+108|0;r=G+104|0;y=G+100|0;B=G+140|0;C=G+96|0;c[w>>2]=0;c[r>>2]=0;c[y>>2]=0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;c[F+16>>2]=0;c[F+20>>2]=0;c[F+24>>2]=0;g=uf(d,46885,0)|0;do if(g){e=Eh(g,w,0)|0;if(!e){n=c[w>>2]|0;o=(n&4096|0)!=0;if(!(n&512)){e=F+24|0;if(!o){j=10;break}c[h>>2]=e;c[h+4>>2]=0;e=If(d,0,46920,h)|0;j=11;break}e=F+4|0;h=F+8|0;i=F+12|0;j=F+16|0;k=F+20|0;n=F+24|0;if(o){c[p>>2]=F;c[p+4>>2]=e;c[p+8>>2]=h;c[p+12>>2]=i;c[p+16>>2]=j;c[p+20>>2]=k;c[p+24>>2]=n;c[p+28>>2]=0;e=If(d,0,46891,p)|0;j=11;break}else{c[q>>2]=F;c[q+4>>2]=e;c[q+8>>2]=h;c[q+12>>2]=i;c[q+16>>2]=j;c[q+20>>2]=k;c[q+24>>2]=n;c[q+28>>2]=0;e=If(d,0,46906,q)|0;j=11;break}}else f=0}else{e=F+24|0;j=10}while(0);if((j|0)==10){c[i>>2]=e;c[i+4>>2]=0;e=If(d,0,46923,i)|0;j=11}a:do if((j|0)==11)if(!e){sf(g);g=uf(d,46925,5)|0;if((g|0)!=0?(f=zf(g,1)|0,(f|0)!=0):0){e=Fg(f,r,y,F,F+4|0,F+8|0,F+12|0,F+16|0,F+20|0)|0;if(!e)e=F;else break}else{f=c[w>>2]|0;c[r>>2]=f>>>11&2;c[y>>2]=f>>>12&1;f=0;e=F}e=c[e>>2]|0;if(((((((e|0)!=0?(kk(e),x=c[F+4>>2]|0,(x|0)!=0):0)?(kk(x),A=c[F+8>>2]|0,(A|0)!=0):0)?(kk(A),s=c[F+12>>2]|0,(s|0)!=0):0)?(kk(s),t=c[F+16>>2]|0,(t|0)!=0):0)?(kk(t),u=c[F+20>>2]|0,(u|0)!=0):0)?(kk(u),z=F+24|0,v=c[z>>2]|0,(v|0)!=0):0){kk(v);if(c[w>>2]&4096|0){if((c[y>>2]|0)!=1){e=69;break}e=Ng(c[z>>2]|0,256)|0;if(e|0)break}h=0;while(1){if((h|0)==5){h=6;continue}e=c[F+(h<<2)>>2]|0;if((e|0)!=0?(c[e+12>>2]&4|0)!=0:0){A=wl(e,C)|0;z=((c[C>>2]|0)+7|0)>>>3;c[C>>2]=z;c[D>>2]=a[46931+h>>0];c[D+4>>2]=z;lp(B,30,46938,D)|0;lh(b,B,Fo(B)|0);lh(b,A,c[C>>2]|0);lh(b,46947,1)}else{e=Ok(e,0,C,0)|0;if(!e)break;A=c[C>>2]|0;c[E>>2]=a[46931+h>>0];c[E+4>>2]=A;lp(B,30,46938,E)|0;lh(b,B,Fo(B)|0);lh(b,e,c[C>>2]|0);lh(b,46947,1);cf(e)}h=h+1|0;if((h|0)>=7){e=0;break a}}e=Sn()|0}else e=68}else f=0;while(0);cf(f);sf(g);Jl(c[F>>2]|0);Jl(c[F+4>>2]|0);Jl(c[F+8>>2]|0);Jl(c[F+12>>2]|0);Jl(c[F+16>>2]|0);Jl(c[F+20>>2]|0);Jl(c[F+24>>2]|0);l=G;return e|0}function Im(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+1008|0;if((l|0)>=(m|0))$(1008);j=k;h=k+8|0;if((sh(a)|0)!=(g|0)){j=49658;l=k;return j|0}if(eh(j,a,0)|0){j=49699;l=k;return j|0}switch(b|0){case 0:{lh(c[j>>2]|0,d,e);i=8;break}case 1:{Yq(h|0,97,1e3)|0;b=0;do{lh(c[j>>2]|0,h,1e3);b=b+1|0}while((b|0)!=1e3);i=8;break}default:b=49641}if((i|0)==8){b=(Tp(ph(c[j>>2]|0,a)|0,f,g)|0)==0;b=b?0:49625}kh(c[j>>2]|0);j=b;l=k;return j|0}function Jm(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;h=b+148|0;j=c[h>>2]|0;if(j>>>0>128)He(49719,112,49733);i=b+152|0;g=c[i>>2]|0;if(!g)return;k=b+144|0;f=c[k>>2]|0;if((f|0)==(j|0)){Te(pb[g&63](b,b,1)|0);c[k>>2]=0;l=b+128|0;f=l;f=_q(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;g=D;c[l>>2]=f;c[l+4>>2]=g;if((f|0)==0&(g|0)==0){f=b+136|0;l=f;l=_q(c[l>>2]|0,c[l+4>>2]|0,1,0)|0;c[f>>2]=l;c[f+4>>2]=D;f=0}else f=0}if(!d)return;a:do if(f){b:do if(e|0){if(f>>>0<j>>>0)do{l=a[d>>0]|0;c[k>>2]=f+1;a[b+f>>0]=l;e=e+-1|0;if(!e)break b;d=d+1|0;f=c[k>>2]|0}while(f>>>0<j>>>0);g=c[h>>2]|0;if(g>>>0>128)He(49719,112,49733);h=c[i>>2]|0;if(!((f|0)==(g|0)&(h|0)!=0))break a;Te(pb[h&63](b,b,1)|0);c[k>>2]=0;g=b+128|0;h=g;h=_q(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;l=D;c[g>>2]=h;c[g+4>>2]=l;if(!((h|0)==0&(l|0)==0))break a;l=b+136|0;h=l;h=_q(c[h>>2]|0,c[h+4>>2]|0,1,0)|0;c[l>>2]=h;c[l+4>>2]=D;break a}while(0);e=c[h>>2]|0;if(e>>>0>128)He(49719,112,49733);d=c[i>>2]|0;if(!d)return;if((c[k>>2]|0)!=(e|0))return;Te(pb[d&63](b,b,1)|0);c[k>>2]=0;j=b+128|0;k=j;k=_q(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;l=D;c[j>>2]=k;c[j+4>>2]=l;if(!((k|0)==0&(l|0)==0))return;l=b+136|0;k=l;k=_q(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;c[l>>2]=k;c[l+4>>2]=D;return}while(0);if(e>>>0<j>>>0)f=0;else{l=(e>>>0)/(j>>>0)|0;f=pb[c[i>>2]&63](b,d,l)|0;c[k>>2]=0;i=b+128|0;g=i;g=_q(c[g>>2]|0,c[g+4>>2]|0,l|0,0)|0;h=D;m=b+136|0;n=m;n=_q((h>>>0<0|(h|0)==0&g>>>0<l>>>0)&1|0,0,c[n>>2]|0,c[n+4>>2]|0)|0;c[m>>2]=n;c[m+4>>2]=D;c[i>>2]=g;c[i+4>>2]=h;l=S(l,j)|0;e=e-l|0;d=d+l|0}Te(f);if(!e)return;while(1){f=c[k>>2]|0;if(f>>>0>=j>>>0){d=29;break}n=a[d>>0]|0;c[k>>2]=f+1;a[b+f>>0]=n;e=e+-1|0;if(!e){d=29;break}else d=d+1|0}if((d|0)==29)return}function Km(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;q=b+3|0;q=q+(0-(q&3))|0;r=b+84|0;p=c[c[r>>2]>>2]|0;s=b+88|0;f=c[s>>2]|0;do if(f){o=p-f|0;o=o>>>0>e>>>0?e:o;g=b+68+f|0;if(!((g|d)&3))if(o>>>0>3){l=o+-4|0;m=l&-4;n=m+4|0;h=d+n|0;i=d;j=g;k=o;while(1){c[j>>2]=c[i>>2];k=k+-4|0;if(k>>>0<=3)break;else{i=i+4|0;j=j+4|0}}i=l-m|0;g=g+n|0}else{i=o;h=d}else{h=d;i=o}if(i){f=i;while(1){a[g>>0]=a[h>>0]|0;f=f+-1|0;if(!f)break;else{h=h+1|0;g=g+1|0}}f=c[s>>2]|0}n=f+o|0;c[s>>2]=n;if(n>>>0<p>>>0)return;else{g=pb[c[(c[r>>2]|0)+8>>2]&63](q,b+68|0,p)|0;c[s>>2]=0;d=d+o|0;f=e-o|0;break}}else{f=e;g=0}while(0);i=f&0-p;if(f>>>0<p>>>0){h=d;o=f;n=g}else{h=d+i|0;o=f-i|0;n=pb[c[(c[r>>2]|0)+8>>2]&63](q,d,i)|0}if(o|0){f=c[s>>2]|0;g=b+68+f|0;if(o>>>0>3&((g|h)&3|0)==0){j=o+-4|0;k=j&-4;m=k+4|0;l=h+m|0;i=g;d=o;while(1){c[i>>2]=c[h>>2];d=d+-4|0;if(d>>>0<=3)break;else{h=h+4|0;i=i+4|0}}i=j-k|0;if(i){h=l;g=g+m|0;f=i;t=20}}else{f=o;t=20}if((t|0)==20){while(1){a[g>>0]=a[h>>0]|0;f=f+-1|0;if(!f)break;else{h=h+1|0;g=g+1|0;t=20}}f=c[s>>2]|0}c[s>>2]=f+o}if(!n)return;Te(n);return}function Lm(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,n=0,o=0,p=0,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;J=l;l=l+624|0;if((l|0)>=(m|0))$(624);H=J+96|0;C=J;o=J+228|0;D=J+136|0;E=J+592|0;F=J+336|0;G=J+320|0;g=J+104|0;if(!(c[17642]|0)){c[17642]=1;f=o;B=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(B|0));f=D;B=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(B|0));f=G;B=f+16|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(B|0));f=C;B=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(B|0));Lm(C,49754,32)|0;Km(C,49786,131);B=C+3|0;Te(wb[c[(c[C+84>>2]|0)+12>>2]&3](B+(0-(B&3))|0,C+68|0,c[C+88>>2]|0,G)|0);if(C&4){f=C;h=92;do{a[f>>0]=0;f=f+1|0;h=h+-1|0}while((h|0)!=0&(f&7|0)!=0);if(h>>>0>=8)I=5}else{f=C;h=92;I=5}if((I|0)==5){k=h+-8|0;n=k&-8;j=n+8|0;i=f;while(1){B=i;c[B>>2]=0;c[B+4>>2]=0;h=h+-8|0;if(h>>>0<=7)break;else i=i+8|0}f=f+j|0;h=k-n|0}if(h|0)while(1){a[f>>0]=0;h=h+-1|0;if(!h)break;else f=f+1|0}if(!(Tp(49917,G,16)|0)){f=G;B=f+16|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(B|0));Lm(o,49754,32)|0;Km(o,49786,32);Km(o,49818,64);Km(o,49882,16);Km(o,49898,8);Km(o,49906,4);Km(o,49910,2);Km(o,49912,1);Km(o,49913,1);Km(o,49914,1);Km(o,49915,1);Km(o,49916,1);B=o+3|0;Te(wb[c[(c[o+84>>2]|0)+12>>2]&3](B+(0-(B&3))|0,o+68|0,c[o+88>>2]|0,G)|0);if(!(Tp(49917,G,16)|0)){f=G;B=f+16|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(B|0));f=C;B=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(B|0));Lm(C,49933,32)|0;Km(C,49965,16);B=C+3|0;Te(wb[c[(c[C+84>>2]|0)+12>>2]&3](B+(0-(B&3))|0,C+68|0,c[C+88>>2]|0,G)|0);if(C&4){f=C;h=92;do{a[f>>0]=0;f=f+1|0;h=h+-1|0}while((h|0)!=0&(f&7|0)!=0);if(h>>>0>=8)I=15}else{f=C;h=92;I=15}if((I|0)==15){k=h+-8|0;n=k&-8;j=n+8|0;i=f;while(1){B=i;c[B>>2]=0;c[B+4>>2]=0;h=h+-8|0;if(h>>>0<=7)break;else i=i+8|0}f=f+j|0;h=k-n|0}if(h|0)while(1){a[f>>0]=0;h=h+-1|0;if(!h)break;else f=f+1|0}if(!(Tp(49981,G,16)|0)){Lm(D,49997,32)|0;h=C+3|0;h=h+(0-(h&3))|0;i=C+84|0;j=C+68|0;k=C+88|0;n=C+8|0;o=C+16|0;p=C+24|0;q=C+32|0;r=C+40|0;s=C+48|0;t=C+56|0;u=C+64|0;v=C+72|0;w=C+80|0;x=k+1|0;y=k+2|0;z=k+3|0;A=0;do{f=A&255;Yq(E|0,f|0,32)|0;if(A|0)Yq(F|0,f|0,A|0)|0;f=C;B=f+92|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(B|0));Lm(C,E,32)|0;Km(C,F,A);Te(wb[c[(c[i>>2]|0)+12>>2]&3](h,j,c[k>>2]|0,G)|0);B=C;c[B>>2]=0;c[B+4>>2]=0;B=n;c[B>>2]=0;c[B+4>>2]=0;B=o;c[B>>2]=0;c[B+4>>2]=0;B=p;c[B>>2]=0;c[B+4>>2]=0;B=q;c[B>>2]=0;c[B+4>>2]=0;B=r;c[B>>2]=0;c[B+4>>2]=0;B=s;c[B>>2]=0;c[B+4>>2]=0;B=t;c[B>>2]=0;c[B+4>>2]=0;B=u;c[B>>2]=0;c[B+4>>2]=0;B=v;c[B>>2]=0;c[B+4>>2]=0;B=w;c[B>>2]=0;c[B+4>>2]=0;a[k>>0]=0;a[x>>0]=0;a[y>>0]=0;a[z>>0]=0;Km(D,G,16);A=A+1|0}while((A|0)!=256);f=D+3|0;Te(wb[c[(c[D+84>>2]|0)+12>>2]&3](f+(0-(f&3))|0,D+68|0,c[D+88>>2]|0,G)|0);f=(Tp(50029,G,16)|0)==0;f=f?0:50045}else f=50117}else f=50093}else f=50069;c[17643]=f;if(f|0){c[H>>2]=f;Le(50141,H)}}if((e|0)!=32){I=44;l=J;return I|0}if(c[17643]|0){I=50;l=J;return I|0}f=b+84|0;c[f>>2]=12580;if(!(d&3)){c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[g+16>>2]=c[d+16>>2];c[g+20>>2]=c[d+20>>2];c[g+24>>2]=c[d+24>>2];c[g+28>>2]=c[d+28>>2];f=12580}else{a[g>>0]=a[d>>0]|0;a[g+1>>0]=a[d+1>>0]|0;a[g+2>>0]=a[d+2>>0]|0;a[g+3>>0]=a[d+3>>0]|0;a[g+4>>0]=a[d+4>>0]|0;a[g+5>>0]=a[d+5>>0]|0;a[g+6>>0]=a[d+6>>0]|0;a[g+7>>0]=a[d+7>>0]|0;a[g+8>>0]=a[d+8>>0]|0;a[g+9>>0]=a[d+9>>0]|0;a[g+10>>0]=a[d+10>>0]|0;a[g+11>>0]=a[d+11>>0]|0;a[g+12>>0]=a[d+12>>0]|0;a[g+13>>0]=a[d+13>>0]|0;a[g+14>>0]=a[d+14>>0]|0;a[g+15>>0]=a[d+15>>0]|0;a[g+16>>0]=a[d+16>>0]|0;a[g+17>>0]=a[d+17>>0]|0;a[g+18>>0]=a[d+18>>0]|0;a[g+19>>0]=a[d+19>>0]|0;a[g+20>>0]=a[d+20>>0]|0;a[g+21>>0]=a[d+21>>0]|0;a[g+22>>0]=a[d+22>>0]|0;a[g+23>>0]=a[d+23>>0]|0;a[g+24>>0]=a[d+24>>0]|0;a[g+25>>0]=a[d+25>>0]|0;a[g+26>>0]=a[d+26>>0]|0;a[g+27>>0]=a[d+27>>0]|0;a[g+28>>0]=a[d+28>>0]|0;a[g+29>>0]=a[d+29>>0]|0;a[g+30>>0]=a[d+30>>0]|0;a[g+31>>0]=a[d+31>>0]|0;f=c[f>>2]|0}d=b+3|0;c[b+88>>2]=0;sb[c[f+4>>2]&7](d+(0-(d&3))|0,g);if(g&4){f=32;do{a[g>>0]=0;g=g+1|0;f=f+-1|0}while((f|0)!=0&(g&7|0)!=0);if(f>>>0>=8)I=36}else{f=32;I=36}if((I|0)==36){i=f+-8|0;j=i&-8;k=j+8|0;h=g;while(1){I=h;c[I>>2]=0;c[I+4>>2]=0;f=f+-8|0;if(f>>>0<=7)break;else h=h+8|0}f=i-j|0;g=g+k|0}if(!f){I=0;l=J;return I|0}while(1){a[g>>0]=0;f=f+-1|0;if(!f){f=0;break}else g=g+1|0}l=J;return f|0}function Mm(b,e){b=b|0;e=e|0;var f=0,g=0;f=e+3|0;c[b>>2]=(d[e+2>>0]|0)<<16|(d[f>>0]|0)<<24&50331648|(d[e+1>>0]|0)<<8|(d[e>>0]|0);g=e+6|0;c[b+4>>2]=((d[e+5>>0]|0)<<16|(d[g>>0]|0)<<24|(d[e+4>>0]|0)<<8|(d[f>>0]|0))>>>2&67108611;f=e+9|0;c[b+8>>2]=((d[e+8>>0]|0)<<16|(d[f>>0]|0)<<24|(d[e+7>>0]|0)<<8|(d[g>>0]|0))>>>4&67092735;c[b+12>>2]=((d[e+11>>0]|0)<<16|(d[e+12>>0]|0)<<24|(d[e+10>>0]|0)<<8|(d[f>>0]|0))>>>6&66076671;c[b+16>>2]=(d[e+14>>0]|0)<<8|(d[e+15>>0]|0)<<16&983040|(d[e+13>>0]|0);f=b+20|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[b+40>>2]=(d[e+18>>0]|0)<<16|(d[e+19>>0]|0)<<24|(d[e+17>>0]|0)<<8|(d[e+16>>0]|0);c[b+44>>2]=(d[e+22>>0]|0)<<16|(d[e+23>>0]|0)<<24|(d[e+21>>0]|0)<<8|(d[e+20>>0]|0);c[b+48>>2]=(d[e+26>>0]|0)<<16|(d[e+27>>0]|0)<<24|(d[e+25>>0]|0)<<8|(d[e+24>>0]|0);c[b+52>>2]=(d[e+30>>0]|0)<<16|(d[e+31>>0]|0)<<24|(d[e+29>>0]|0)<<8|(d[e+28>>0]|0);a[b+56>>0]=0;return}function Nm(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,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0;t=a[b+56>>0]|0?0:16777216;u=c[b+4>>2]|0;m=c[b+8>>2]|0;n=c[b+12>>2]|0;o=c[b+16>>2]|0;v=b+20|0;k=c[v>>2]|0;w=b+24|0;j=c[w>>2]|0;x=b+28|0;i=c[x>>2]|0;y=b+32|0;h=c[y>>2]|0;z=b+36|0;g=c[z>>2]|0;if(f>>>0<=15){q=k;r=j;s=i;t=h;u=g;c[v>>2]=q;c[w>>2]=r;c[x>>2]=s;c[y>>2]=t;c[z>>2]=u;return 124}p=o*5|0;q=n*5|0;r=m*5|0;s=u*5|0;l=c[b>>2]|0;b=e;while(1){I=d[b+3>>0]|0;A=(d[b+2>>0]<<16|I<<24&50331648|d[b+1>>0]<<8|d[b>>0])+k|0;G=d[b+6>>0]|0;I=((G<<24|I|d[b+5>>0]<<16|d[b+4>>0]<<8)>>>2&67108863)+j|0;F=d[b+9>>0]|0;G=((d[b+8>>0]<<16|F<<24|d[b+7>>0]<<8|G)>>>4&67108863)+i|0;F=((d[b+11>>0]<<16|d[b+12>>0]<<24|d[b+10>>0]<<8|F)>>>6)+h|0;k=(d[b+15>>0]<<16|t|d[b+14>>0]<<8|d[b+13>>0])+g|0;j=kr(A|0,0,l|0,0)|0;i=D;e=kr(I|0,0,p|0,0)|0;i=_q(e|0,D|0,j|0,i|0)|0;j=D;e=kr(G|0,0,q|0,0)|0;e=_q(i|0,j|0,e|0,D|0)|0;j=D;i=kr(F|0,0,r|0,0)|0;i=_q(e|0,j|0,i|0,D|0)|0;j=D;e=kr(k|0,0,s|0,0)|0;e=_q(i|0,j|0,e|0,D|0)|0;j=D;i=kr(A|0,0,u|0,0)|0;h=D;E=kr(I|0,0,l|0,0)|0;h=_q(E|0,D|0,i|0,h|0)|0;i=D;E=kr(G|0,0,p|0,0)|0;E=_q(h|0,i|0,E|0,D|0)|0;i=D;h=kr(F|0,0,q|0,0)|0;h=_q(E|0,i|0,h|0,D|0)|0;i=D;E=kr(k|0,0,r|0,0)|0;E=_q(h|0,i|0,E|0,D|0)|0;i=D;h=kr(A|0,0,m|0,0)|0;g=D;C=kr(I|0,0,u|0,0)|0;g=_q(C|0,D|0,h|0,g|0)|0;h=D;C=kr(G|0,0,l|0,0)|0;C=_q(g|0,h|0,C|0,D|0)|0;h=D;g=kr(F|0,0,p|0,0)|0;g=_q(C|0,h|0,g|0,D|0)|0;h=D;C=kr(k|0,0,q|0,0)|0;C=_q(g|0,h|0,C|0,D|0)|0;h=D;g=kr(A|0,0,n|0,0)|0;H=D;B=kr(I|0,0,m|0,0)|0;H=_q(B|0,D|0,g|0,H|0)|0;g=D;B=kr(G|0,0,u|0,0)|0;B=_q(H|0,g|0,B|0,D|0)|0;g=D;H=kr(F|0,0,l|0,0)|0;H=_q(B|0,g|0,H|0,D|0)|0;g=D;B=kr(k|0,0,p|0,0)|0;B=_q(H|0,g|0,B|0,D|0)|0;g=D;A=kr(A|0,0,o|0,0)|0;H=D;I=kr(I|0,0,n|0,0)|0;H=_q(I|0,D|0,A|0,H|0)|0;A=D;G=kr(G|0,0,m|0,0)|0;G=_q(H|0,A|0,G|0,D|0)|0;A=D;F=kr(F|0,0,u|0,0)|0;F=_q(G|0,A|0,F|0,D|0)|0;A=D;k=kr(k|0,0,l|0,0)|0;k=_q(F|0,A|0,k|0,D|0)|0;A=D;j=gr(e|0,j|0,26)|0;j=_q(E|0,i|0,j|0,0)|0;i=gr(j|0,D|0,26)|0;i=_q(C|0,h|0,i|0,0)|0;h=gr(i|0,D|0,26)|0;i=i&67108863;h=_q(B|0,g|0,h|0,0)|0;g=gr(h|0,D|0,26)|0;h=h&67108863;g=_q(k|0,A|0,g|0,0)|0;A=gr(g|0,D|0,26)|0;g=g&67108863;A=A*5|0;k=A+e&67108863;j=((A+(e&67108863)|0)>>>26)+(j&67108863)|0;f=f+-16|0;if(f>>>0<=15)break;else b=b+16|0}c[v>>2]=k;c[w>>2]=j;c[x>>2]=i;c[y>>2]=h;c[z>>2]=g;return 124}function Om(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=i;if(!e)d=100;else{h=g;j=h+16|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(j|0));cr(g|0,d|0,e|0)|0;a[g+e>>0]=1;a[b+56>>0]=1;Nm(b,g,16)|0;d=224}j=c[b+24>>2]|0;t=(c[b+28>>2]|0)+(j>>>26)|0;h=t&67108863;r=(t>>>26)+(c[b+32>>2]|0)|0;q=r&67108863;k=(r>>>26)+(c[b+36>>2]|0)|0;g=((k>>>26)*5|0)+(c[b+20>>2]|0)|0;e=g&67108863;j=(g>>>26)+(j&67108863)|0;v=((e+5|0)>>>26)+j|0;u=v>>>26;s=(u+h|0)>>>26;o=(k|-67108864)+((s+q|0)>>>26)|0;p=(o>>>31)+-1|0;n=o>>31;j=v&67108863&p|n&j;h=u+t&67108863&p|n&h;q=s+r&67108863&p|n&q;e=_q(g+5&67108863&p|n&e|j<<26|0,0,c[b+40>>2]|0,0)|0;g=D;j=_q(j>>>6|h<<20|0,0,c[b+44>>2]|0,0)|0;g=_q(j|0,D|0,g|0,0)|0;j=D;h=_q(h>>>12|q<<14|0,0,c[b+48>>2]|0,0)|0;j=_q(h|0,D|0,j|0,0)|0;h=D;k=_q(q>>>18|(p&o|n&k)<<8|0,0,c[b+52>>2]|0,0)|0;h=_q(k|0,D|0,h|0,0)|0;a[f+3>>0]=e>>>24;a[f+2>>0]=e>>>16;a[f+1>>0]=e>>>8;a[f>>0]=e;a[f+7>>0]=g>>>24;a[f+6>>0]=g>>>16;a[f+5>>0]=g>>>8;a[f+4>>0]=g;a[f+11>>0]=j>>>24;a[f+10>>0]=j>>>16;a[f+9>>0]=j>>>8;a[f+8>>0]=j;a[f+15>>0]=h>>>24;a[f+14>>0]=h>>>16;a[f+13>>0]=h>>>8;a[f+12>>0]=h;h=b;j=h+56|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(j|0));l=i;return d|0}function Pm(a){a=a|0;if(a|0){Qm();return}if(c[17644]|0)return;c[17644]=1;return}function Qm(){var a=0,b=0,d=0,e=0,f=0;f=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=f+16|0;d=f+8|0;b=f;if(!(c[17644]|0))c[17644]=1;a=Vn(12596)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(50172,b)}c[17645]=1;do if(!(c[17646]|0)){if(!(c[17647]|0))a=kf(1,664)|0;else a=lf(1,664)|0;c[17646]=a;if(!(c[17647]|0))a=kf(1,664)|0;else a=lf(1,664)|0;c[17648]=a;if(vq(52444,4)|0){b=ze(50209)|0;Me(b,d)}if(!(vq(52456,4)|0)){c[17649]=3;break}else{b=ze(50209)|0;Me(b,d)}}while(0);c[17645]=0;a=Wn(12596)|0;if(!a){l=f;return}else{c[e>>2]=Pn(a)|0;Me(50247,e)}}function Rm(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;a=Vn(12596)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(50172,b)}c[17645]=1;Dn(0,0,0,0)|0;c[17650]=0;c[17645]=0;a=Wn(12596)|0;if(!a){l=e;return}else{c[d>>2]=Pn(a)|0;Me(50247,d)}}function Sm(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;a=l;l=l+48|0;if((l|0)>=(m|0))$(48);b=a;p=c[17651]|0;o=c[17652]|0;n=c[17653]|0;k=c[17654]|0;j=c[17655]|0;i=c[17656]|0;h=c[17657]|0;g=c[17658]|0;f=c[17659]|0;e=c[17660]|0;d=(An()|0)!=0;c[b>>2]=600;c[b+4>>2]=p;c[b+8>>2]=o;c[b+12>>2]=n;c[b+16>>2]=k;c[b+20>>2]=j;c[b+24>>2]=i;c[b+28>>2]=h;c[b+32>>2]=g;c[b+36>>2]=f;c[b+40>>2]=e;c[b+44>>2]=d?50284:71847;Je(50300,b);l=a;return}function Tm(){c[17647]=1;return}function Um(){c[17661]=1;return}function Vm(a){a=a|0;return}function Wm(a){a=a|0;return 0}function Xm(){Qm();return c[17661]|0}function Ym(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+192|0;if((l|0)>=(m|0))$(192);j=o;k=b+600|0;if(!(c[17645]|0))Ie(50424,50439,615,50455);si(j);f=k;d=b+580|0;e=f+20|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));n=b+620|0;f=n;d=b;e=f+44|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));ti(j,k);f=b;d=k;e=f+20|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));if((c[17664]|0)!=0&(c[17646]|0)==(b|0)){a[b>>0]=a[b>>0]^a[71826];g=b+1|0;a[g>>0]=a[g>>0]^a[71827];g=b+2|0;a[g>>0]=a[g>>0]^a[71828];g=b+3|0;a[g>>0]=a[g>>0]^a[71829];g=b+4|0;a[g>>0]=a[g>>0]^a[71830];g=b+5|0;a[g>>0]=a[g>>0]^a[71831];g=b+6|0;a[g>>0]=a[g>>0]^a[71832];g=b+7|0;a[g>>0]=a[g>>0]^a[71833];g=b+8|0;a[g>>0]=a[g>>0]^a[71834];g=b+9|0;a[g>>0]=a[g>>0]^a[71835];g=b+10|0;a[g>>0]=a[g>>0]^a[71836];g=b+11|0;a[g>>0]=a[g>>0]^a[71837];g=b+12|0;a[g>>0]=a[g>>0]^a[71838];g=b+13|0;a[g>>0]=a[g>>0]^a[71839];g=b+14|0;a[g>>0]=a[g>>0]^a[71840];g=b+15|0;a[g>>0]=a[g>>0]^a[71841];g=b+16|0;a[g>>0]=a[g>>0]^a[71842];g=b+17|0;a[g>>0]=a[g>>0]^a[71843];g=b+18|0;a[g>>0]=a[g>>0]^a[71844];g=b+19|0;a[g>>0]=a[g>>0]^a[71845];g=1;h=0}else{g=1;h=0}do{f=k;d=b+h|0;e=f+20|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));f=h;h=h+20|0;i=b+h|0;d=f+40|0;if((f+104|0)<600){f=n;d=b+d|0;e=f+44|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0))}else{e=20;while(1){d=(d|0)>599?0:d;a[k+e>>0]=a[b+d>>0]|0;e=e+1|0;if((e|0)==64)break;else d=d+1|0}}ti(j,k);f=i;d=k;e=f+20|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));g=g+1|0}while((g|0)!=30);if((c[17646]|0)!=(b|0)){Te(384);l=o;return}ui(71826,b,600);c[17664]=1;Te(384);l=o;return}function Zm(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,n=0,o=0,p=0,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;N=l;l=l+832|0;if((l|0)>=(m|0))$(832);M=N+136|0;K=N+128|0;J=N+120|0;I=N+112|0;H=N+104|0;G=N+96|0;F=N+88|0;E=N+80|0;D=N+72|0;L=N+64|0;y=N+56|0;x=N+48|0;w=N+40|0;B=N+32|0;A=N+24|0;z=N+16|0;C=N+8|0;f=N;t=N+144|0;u=N+224|0;v=N+140|0;Qm();g=e>>>0>1&(c[17661]|0)!=0?1:e&3;e=Vn(12596)|0;if(e|0){c[f>>2]=Pn(e)|0;Me(50172,f)}c[17645]=1;if(g>>>0>1){c[17660]=(c[17660]|0)+d;c[17659]=(c[17659]|0)+1}else{c[17658]=(c[17658]|0)+d;c[17657]=(c[17657]|0)+1}a:do if(d|0){p=t+12|0;q=t+36|0;r=(g|0)!=2;o=(g|0)==2;n=d;k=d>>>0>600?600:d;b:while(1){j=b;i=k;while(1){c[v>>2]=qq()|0;if((c[3160]|0)==-1)c[3160]=c[v>>2];if((c[3160]|0)!=(c[v>>2]|0)){c[3160]=c[v>>2];d=c[3160]|0;if(!(c[17645]|0)){f=14;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;h=c[17662]|0;f=h+1|0;c[17662]=f;e=c[17646]|0;h=e+h|0;a[h>>0]=a[h>>0]^d&255;if(f>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0;f=c[17662]|0;e=c[17646]|0}g=f+1|0;c[17662]=g;h=e+f|0;a[h>>0]=a[h>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0;f=c[17662]|0;e=c[17646]|0}else f=g;h=f+1|0;c[17662]=h;g=e+f|0;a[g>>0]=a[g>>0]^d>>>16&255;if(h>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}g=c[17662]|0;h=g+1|0;c[17662]=h;e=c[17646]|0;g=e+g|0;a[g>>0]=a[g>>0]^d>>>24&255;if(h>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}c[17663]=0}if(!(c[17645]|0)){f=19;break b}if(i>>>0>600){f=21;break b}c:do if(!(c[17650]|0)){e=c[17665]|0;d:do if(e|0){f=Bq(e,0,z)|0;if((f|0)==-1){e=zo()|0;if((c[e>>2]|0)==2){c[17666]=1;break}else{h=ze(50521)|0;g=c[17665]|0;d=dp(c[e>>2]|0)|0;c[A>>2]=g;c[A+4>>2]=d;Je(h,A);break}}if(_m(f,c[17665]|0,0)|0){Up(f)|0;break}if(mq(f,t)|0){h=ze(50542)|0;g=c[17665]|0;d=dp(c[(zo()|0)>>2]|0)|0;c[B>>2]=g;c[B+4>>2]=d;Je(h,B);Up(f)|0;break}if((c[p>>2]&61440|0)!=32768){h=ze(50563)|0;c[w>>2]=c[17665];Je(h,w);Up(f)|0;break}switch(c[q>>2]|0){case 0:{Je(ze(50601)|0,x);Up(f)|0;c[17666]=1;break d}case 600:{e:while(1){switch(pq(f,u,600)|0){case 600:break e;case -1:break;default:{f=38;break b}}e=zo()|0;if((c[e>>2]|0)!=4){f=40;break b}}Up(f)|0;if(!(c[17645]|0)){f=42;break b}c[17655]=(c[17655]|0)+600;c[17654]=(c[17654]|0)+1;e=u;g=599;while(1){O=a[e>>0]|0;d=c[17662]|0;h=d+1|0;c[17662]=h;f=c[17646]|0;d=f+d|0;a[d>>0]=a[d>>0]^O;if(h>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=(g|0)==0&1}if(!g)break;else{e=e+1|0;g=g+-1|0}}d=qq()|0;if(!(c[17645]|0)){f=48;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;O=c[17662]|0;e=O+1|0;c[17662]=e;f=c[17646]|0;O=f+O|0;a[O>>0]=a[O>>0]^d&255;if(e>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;f=c[17646]|0}g=e+1|0;c[17662]=g;O=f+e|0;a[O>>0]=a[O>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;g=c[17662]|0;e=c[17646]|0}else e=f;O=g+1|0;c[17662]=O;h=e+g|0;a[h>>0]=a[h>>0]^d>>>16&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}h=c[17662]|0;O=h+1|0;c[17662]=O;e=c[17646]|0;h=e+h|0;a[h>>0]=a[h>>0]^d>>>24&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}d=fb(0)|0;if(!(c[17645]|0)){f=52;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;O=c[17662]|0;e=O+1|0;c[17662]=e;f=c[17646]|0;O=f+O|0;a[O>>0]=a[O>>0]^d&255;if(e>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;f=c[17646]|0}g=e+1|0;c[17662]=g;O=f+e|0;a[O>>0]=a[O>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;g=c[17662]|0;e=c[17646]|0}else e=f;O=g+1|0;c[17662]=O;h=e+g|0;a[h>>0]=a[h>>0]^d>>>16&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}h=c[17662]|0;O=h+1|0;c[17662]=O;e=c[17646]|0;h=e+h|0;a[h>>0]=a[h>>0]^d>>>24&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}d=Qa()|0;if(!(c[17645]|0)){f=56;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;O=c[17662]|0;e=O+1|0;c[17662]=e;f=c[17646]|0;O=f+O|0;a[O>>0]=a[O>>0]^d&255;if(e>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;f=c[17646]|0}g=e+1|0;c[17662]=g;O=f+e|0;a[O>>0]=a[O>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;g=c[17662]|0;e=c[17646]|0}else e=f;O=g+1|0;c[17662]=O;h=e+g|0;a[h>>0]=a[h>>0]^d>>>16&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}h=c[17662]|0;O=h+1|0;c[17662]=O;e=c[17646]|0;h=e+h|0;a[h>>0]=a[h>>0]^d>>>24&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}if(!(c[17649]|0)){f=60;break b}if((Dn(3,0,16,0)|0)<0){f=62;break b}c[17666]=1;c[17650]=1;break c}default:{Je(ze(50634)|0,y);Up(f)|0;break d}}}while(0)}while(0);if(!(r|(c[17667]|0)!=0)){c[17668]=0;e=i>>>0<16?16:i;if(!(c[17649]|0)){f=85;break b}if((Dn(3,4,e,2)|0)<0){f=87;break b}c[17668]=(c[17668]|0)+e;c[17667]=1}if(o?(s=c[17668]|0,s>>>0<i>>>0):0){if((s|0)<0){c[17668]=0;e=0}else e=s;e=i-e|0;if(e>>>0>600){f=94;break b}if(!(c[17649]|0)){f=96;break b}if((Dn(3,4,e,2)|0)<0){f=98;break b}c[17668]=(c[17668]|0)+e}while(1){if(c[17650]|0)break;c[17652]=(c[17652]|0)+1;if(!(c[17649]|0)){f=102;break b}if((Dn(3,3,120,1)|0)<0){f=104;break b}}an();d=c[3160]|0;if(!(c[17645]|0)){f=106;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;O=c[17662]|0;e=O+1|0;c[17662]=e;f=c[17646]|0;O=f+O|0;a[O>>0]=a[O>>0]^d&255;if(e>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;f=c[17646]|0}g=e+1|0;c[17662]=g;O=f+e|0;a[O>>0]=a[O>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;g=c[17662]|0;e=c[17646]|0}else e=f;O=g+1|0;c[17662]=O;h=e+g|0;a[h>>0]=a[h>>0]^d>>>16&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}h=c[17662]|0;O=h+1|0;c[17662]=O;e=c[17646]|0;h=e+h|0;a[h>>0]=a[h>>0]^d>>>24&255;if(O>>>0<=599){if(!(c[17663]|0)){Ym(e);c[17651]=(c[17651]|0)+1}}else{c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}d=c[17646]|0;e=c[17648]|0;f=d;g=0;while(1){c[e>>2]=(c[f>>2]|0)+-1515870811;g=g+1|0;if((g|0)==150)break;else{e=e+4|0;f=f+4|0}}Ym(d);c[17651]=(c[17651]|0)+1;Ym(c[17648]|0);c[17656]=(c[17656]|0)+1;e=i+-1|0;if(!i){h=j;i=e;e=c[17668]|0}else{g=c[17648]|0;h=c[17668]|0;f=j;d=c[17669]|0;while(1){O=d+1|0;a[f>>0]=a[g+d>>0]|0;d=O>>>0>599?0:O;if(!e)break;else{f=f+1|0;e=e+-1|0}}e=h-i|0;c[17669]=d;c[17668]=e;h=j+i|0;i=-1}if((e|0)<0)c[17668]=0;Yq(c[17648]|0,0,600)|0;O=qq()|0;if((O|0)==(c[v>>2]|0))break;d=qq()|0;if(!(c[17645]|0)){f=122;break b}c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;O=c[17662]|0;e=O+1|0;c[17662]=e;f=c[17646]|0;O=f+O|0;a[O>>0]=a[O>>0]^d&255;if(e>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;f=c[17646]|0}g=e+1|0;c[17662]=g;O=f+e|0;a[O>>0]=a[O>>0]^d>>>8&255;if(g>>>0>599){c[17662]=0;Ym(f);c[17651]=(c[17651]|0)+1;c[17663]=0;g=c[17662]|0;e=c[17646]|0}else e=f;O=g+1|0;c[17662]=O;j=e+g|0;a[j>>0]=a[j>>0]^d>>>16&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=0}j=c[17662]|0;O=j+1|0;c[17662]=O;e=c[17646]|0;j=e+j|0;a[j>>0]=a[j>>0]^d>>>24&255;if(O>>>0>599){c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=1}c[17663]=0;c[3160]=d;j=h}e=n-k|0;if(!e)break a;if(!(c[17645]|0)){f=9;break}else{b=b+k|0;n=e;k=e>>>0>600?600:e}}switch(f|0){case 9:{Ie(50424,50439,934,50464);break}case 14:{Ie(50424,50439,1074,50474);break}case 19:{Ie(50424,50439,953,50464);break}case 21:{Ne(50489,C);break}case 38:{J=zo()|0;O=ze(50688)|0;K=c[17665]|0;J=c[J>>2]|0;J=dp(J)|0;c[L>>2]=K;K=L+4|0;c[K>>2]=J;Me(O,L);break}case 40:{O=ze(50688)|0;K=c[17665]|0;J=c[e>>2]|0;J=dp(J)|0;c[L>>2]=K;K=L+4|0;c[K>>2]=J;Me(O,L);break}case 42:{Ie(50424,50439,1074,50474);break}case 48:{Ie(50424,50439,1074,50474);break}case 52:{Ie(50424,50439,1074,50474);break}case 56:{Ie(50424,50439,1074,50474);break}case 60:{Me(50709,D);break}case 62:{Me(50760,E);break}case 85:{Me(50709,F);break}case 87:{Me(50760,G);break}case 94:{He(50439,995,50464);break}case 96:{Me(50709,H);break}case 98:{Me(50760,I);break}case 102:{Me(50709,J);break}case 104:{Me(50760,K);break}case 106:{Ie(50424,50439,1074,50474);break}case 122:{Ie(50424,50439,1074,50474);break}}}while(0);c[17645]=0;e=Wn(12596)|0;if(!e){l=N;return}else{c[M>>2]=Pn(e)|0;Me(50247,M)}}function _m(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);n=p+24|0;k=p+16|0;j=p+8|0;g=p;h=p+40|0;i=p+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;b[h>>1]=(e|0)!=0&1;b[h+2>>1]=0;c[g>>2]=h;if((jq(a,13,g)|0)!=-1){o=0;l=p;return o|0}f=zo()|0;g=i+4|0;e=0;a:while(1){switch(c[f>>2]|0){case 13:case 11:break;default:break a}if((e|0)>2){q=ze(50839)|0;c[k>>2]=d;Je(q,k)}c[i>>2]=e;c[g>>2]=25e4;nq(0,0,0,0,i)|0;c[n>>2]=h;if((jq(a,13,n)|0)==-1)e=((e|0)<10&1)+e|0;else{e=0;o=8;break}}if((o|0)==8){l=p;return e|0}q=ze(50818)|0;o=dp(c[f>>2]|0)|0;c[j>>2]=d;c[j+4>>2]=o;Je(q,j);q=-1;l=p;return q|0}function $m(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!(c[17645]|0))Ie(50424,50439,1074,50474);c[17655]=(c[17655]|0)+d;c[17654]=(c[17654]|0)+1;f=d+-1|0;if(!d)return;if(e>>>0<3){while(1){h=a[b>>0]|0;g=c[17662]|0;e=g+1|0;c[17662]=e;d=c[17646]|0;g=d+g|0;a[g>>0]=a[g>>0]^h;if(e>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=(f|0)==0&1}if(!f)break;else{b=b+1|0;f=f+-1|0}}return}else d=0;while(1){i=a[b>>0]|0;b=b+1|0;g=c[17662]|0;h=g+1|0;c[17662]=h;e=c[17646]|0;g=e+g|0;a[g>>0]=a[g>>0]^i;d=d+1|0;if(h>>>0>599){if(!(c[17650]|0)){i=(c[17670]|0)+d|0;c[17670]=i;if(i>>>0>599){c[17650]=1;d=0}else d=0}c[17662]=0;Ym(e);c[17651]=(c[17651]|0)+1;c[17663]=(f|0)==0&1}if(!f)break;else f=f+-1|0}return}function an(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+144|0;if((l|0)>=(m|0))$(144);g=h;if(!(c[17645]|0))Ie(50424,50439,1180,50798);c[17653]=(c[17653]|0)+1;if(gb(g|0,0)|0)He(50439,1198,50798);if(!(c[17645]|0))Ie(50424,50439,1074,50474);c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;e=a[g>>0]|0;f=c[17662]|0;b=f+1|0;c[17662]=b;d=c[17646]|0;f=d+f|0;a[f>>0]=a[f>>0]^e;if(b>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=0;b=c[17662]|0;d=c[17646]|0}i=a[g+1>>0]|0;e=b+1|0;c[17662]=e;f=d+b|0;a[f>>0]=a[f>>0]^i;if(e>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;b=c[17646]|0}else b=d;d=a[g+2>>0]|0;i=e+1|0;c[17662]=i;f=b+e|0;a[f>>0]=a[f>>0]^d;if(i>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0}e=a[g+3>>0]|0;f=c[17662]|0;i=f+1|0;c[17662]=i;b=c[17646]|0;f=b+f|0;a[f>>0]=a[f>>0]^e;if(i>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=1}if(!(c[17645]|0))Ie(50424,50439,1074,50474);f=g+4|0;c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;e=a[f>>0]|0;i=c[17662]|0;d=i+1|0;c[17662]=d;b=c[17646]|0;i=b+i|0;a[i>>0]=a[i>>0]^e;if(d>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0;d=c[17662]|0;b=c[17646]|0}j=a[f+1>>0]|0;e=d+1|0;c[17662]=e;i=b+d|0;a[i>>0]=a[i>>0]^j;if(e>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0;d=c[17662]|0;b=c[17646]|0}else d=e;e=a[f+2>>0]|0;j=d+1|0;c[17662]=j;i=b+d|0;a[i>>0]=a[i>>0]^e;if(j>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0}f=a[f+3>>0]|0;i=c[17662]|0;j=i+1|0;c[17662]=j;b=c[17646]|0;i=b+i|0;a[i>>0]=a[i>>0]^f;if(j>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=1}Gq(0,g)|0;if(!(c[17645]|0))Ie(50424,50439,1074,50474);c[17655]=(c[17655]|0)+136;c[17654]=(c[17654]|0)+1;b=g;e=135;while(1){f=a[b>>0]|0;i=c[17662]|0;j=i+1|0;c[17662]=j;d=c[17646]|0;i=d+i|0;a[i>>0]=a[i>>0]^f;if(j>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=(e|0)==0&1}if(!e)break;else{b=b+1|0;e=e+-1|0}}f=fb(0)|0;c[g>>2]=f;if(!(c[17645]|0))Ie(50424,50439,1074,50474);c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;j=c[17662]|0;d=j+1|0;c[17662]=d;b=c[17646]|0;j=b+j|0;a[j>>0]=a[j>>0]^f&255;if(d>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0;d=c[17662]|0;b=c[17646]|0}e=d+1|0;c[17662]=e;j=b+d|0;a[j>>0]=a[j>>0]^f>>>8&255;if(e>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0;d=c[17662]|0;b=c[17646]|0}else d=e;j=d+1|0;c[17662]=j;i=b+d|0;a[i>>0]=a[i>>0]^f>>>16&255;if(j>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0}f=a[g+3>>0]|0;i=c[17662]|0;j=i+1|0;c[17662]=j;b=c[17646]|0;i=b+i|0;a[i>>0]=a[i>>0]^f;if(j>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=1}f=Qa()|0;c[g>>2]=f;if(!(c[17645]|0))Ie(50424,50439,1074,50474);c[17655]=(c[17655]|0)+4;c[17654]=(c[17654]|0)+1;j=c[17662]|0;b=j+1|0;c[17662]=b;d=c[17646]|0;j=d+j|0;a[j>>0]=a[j>>0]^f&255;if(b>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=0;b=c[17662]|0;d=c[17646]|0}e=b+1|0;c[17662]=e;j=d+b|0;a[j>>0]=a[j>>0]^f>>>8&255;if(e>>>0>599){c[17662]=0;Ym(d);c[17651]=(c[17651]|0)+1;c[17663]=0;e=c[17662]|0;b=c[17646]|0}else b=d;j=e+1|0;c[17662]=j;i=b+e|0;a[i>>0]=a[i>>0]^f>>>16&255;if(j>>>0>599){c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=0}g=a[g+3>>0]|0;i=c[17662]|0;j=i+1|0;c[17662]=j;b=c[17646]|0;i=b+i|0;a[i>>0]=a[i>>0]^g;if(j>>>0<=599){l=h;return}c[17662]=0;Ym(b);c[17651]=(c[17651]|0)+1;c[17663]=1;l=h;return}function bn(a){a=a|0;if(!(c[17665]|0)){c[17665]=mf(a)|0;return}else He(50439,673,50868)}function cn(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;if((l|0)>=(m|0))$(80);p=q+72|0;n=q+64|0;k=q+56|0;j=q+48|0;i=q+40|0;h=q+32|0;g=q+24|0;f=q+16|0;d=q+8|0;b=q;if(!(c[17644]|0))c[17644]=1;a=Vn(12596)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(50172,b)}c[17645]=1;e=c[17646]|0;if(!((c[17665]|0)!=0&(e|0)!=0&(c[17650]|0)!=0)){c[17645]=0;a=Wn(12596)|0;if(!a){l=q;return}else{c[d>>2]=Pn(a)|0;Me(50247,d)}}if(!(c[17666]|0)){c[17645]=0;a=Wn(12596)|0;if(a|0){c[f>>2]=Pn(a)|0;Me(50247,f)}Je(ze(50898)|0,g);l=q;return}a=e;b=c[17648]|0;d=0;while(1){c[b>>2]=(c[a>>2]|0)+-1515870811;d=d+1|0;if((d|0)==150)break;else{a=a+4|0;b=b+4|0}}Ym(e);c[17651]=(c[17651]|0)+1;Ym(c[17648]|0);c[17656]=(c[17656]|0)+1;b=c[17665]|0;c[h>>2]=384;b=Bq(b,65,h)|0;do if((b|0)!=-1){if(_m(b,c[17665]|0,1)|0){Up(b)|0;break}if(yq(b,0)|0){o=ze(50957)|0;k=c[17665]|0;n=dp(c[(zo()|0)>>2]|0)|0;c[j>>2]=k;c[j+4>>2]=n;Je(o,j);Up(b)|0;break}a:while(1){switch(oq(b,c[17648]|0,600)|0){case 600:break a;case -1:break;default:{o=21;break a}}a=zo()|0;if((c[a>>2]|0)!=4){o=23;break}}if((o|0)==21){a=zo()|0;o=23}if((o|0)==23){o=ze(50957)|0;i=c[17665]|0;j=dp(c[a>>2]|0)|0;c[k>>2]=i;c[k+4>>2]=j;Je(o,k)}if(Up(b)|0){o=ze(50979)|0;j=c[17665]|0;k=dp(c[(zo()|0)>>2]|0)|0;c[n>>2]=j;c[n+4>>2]=k;Je(o,n)}}else{o=ze(50934)|0;k=c[17665]|0;n=dp(c[(zo()|0)>>2]|0)|0;c[i>>2]=k;c[i+4>>2]=n;Je(o,i)}while(0);c[17645]=0;a=Wn(12596)|0;if(!a){l=q;return}else{c[p>>2]=Pn(a)|0;Me(50247,p)}}function dn(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;if(!(c[17644]|0))c[17644]=1;a=Vn(12596)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(50172,b)}c[17645]=1;if(c[17646]|0)an();c[17645]=0;a=Wn(12596)|0;if(!a){l=e;return}else{c[d>>2]=Pn(a)|0;Me(50247,d)}}function en(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+48|0;if((l|0)>=(m|0))$(48);i=j+32|0;h=j+24|0;g=j+16|0;f=j+8|0;d=j;if(!(c[17671]|0)){c[17671]=1;c[17672]=0}if(!b){l=j;return}b=Vn(12644)|0;if(b|0){c[d>>2]=Pn(b)|0;Me(51001,d)}c[17672]=1;if(c[17673]|0){b=c[17674]|0;if(c[b+52>>2]|0)Ie(51037,51065,767,51079);d=c[17675]|0;if(c[d+52>>2]|0)Ie(51104,51065,768,51079);e=c[17676]|0;if(c[e+52>>2]|0)Ie(51134,51065,769,51079);if((a[b>>0]|0)!=17){c[f>>2]=b;Me(51167,f)}if((a[b+16>>0]|0)!=42){c[f>>2]=b;Me(51167,f)}if((a[b+33>>0]|0)!=-119){c[f>>2]=b;Me(51167,f)}if((a[b+50>>0]|0)!=-4){c[f>>2]=b;Me(51167,f)}if((a[d>>0]|0)!=17){c[g>>2]=d;Me(51167,g)}if((a[d+16>>0]|0)!=42){c[g>>2]=d;Me(51167,g)}if((a[d+33>>0]|0)!=-119){c[g>>2]=d;Me(51167,g)}if((a[d+50>>0]|0)!=-4){c[g>>2]=d;Me(51167,g)}if((a[e>>0]|0)!=17){c[h>>2]=e;Me(51167,h)}if((a[e+16>>0]|0)!=42){c[h>>2]=e;Me(51167,h)}if((a[e+33>>0]|0)!=-119){c[h>>2]=e;Me(51167,h)}if((a[e+50>>0]|0)!=-4){c[h>>2]=e;Me(51167,h)}}else{c[17673]=jf(48)|0;h=kf(1,68)|0;c[17674]=h;a[h>>0]=17;a[h+16>>0]=42;a[h+33>>0]=-119;a[h+50>>0]=-4;h=lf(1,68)|0;c[17675]=h;a[h>>0]=17;a[h+16>>0]=42;a[h+33>>0]=-119;a[h+50>>0]=-4;h=lf(1,68)|0;c[17676]=h;a[h>>0]=17;a[h+16>>0]=42;a[h+33>>0]=-119;a[h+50>>0]=-4}c[17672]=0;b=Wn(12644)|0;if(!b){l=j;return}else{c[i>>2]=Pn(b)|0;Me(51213,i)}}function fn(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;a=Vn(12644)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(51001,b)}c[17672]=1;Dn(0,0,0,0)|0;c[17672]=0;a=Wn(12644)|0;if(!a){l=e;return}else{c[d>>2]=Pn(a)|0;Me(51213,d)}}function gn(){return}function hn(){return 0}function jn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=h+8|0;f=h;en(1);e=Vn(12644)|0;if(e|0){c[f>>2]=Pn(e)|0;Me(51001,f)}c[17672]=1;if((d|0)==2)kn(a,b,c[17676]|0);else kn(a,b,c[17675]|0);c[17672]=0;a=Wn(12644)|0;if(!a){l=h;return}else{c[g>>2]=Pn(a)|0;Me(51213,g)}}function kn(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,n=0,o=0;o=l;l=l+32|0;if((l|0)>=(m|0))$(32);n=o+16|0;k=o+8|0;f=o;if(!b)Ie(52320,51065,685,52343);if(!e)Ie(51249,51065,686,52343);if((a[e>>0]|0)!=17){c[f>>2]=e;Me(51167,f)}j=e+16|0;if((a[j>>0]|0)!=42){c[f>>2]=e;Me(51167,f)}h=e+33|0;if((a[h>>0]|0)!=-119){c[f>>2]=e;Me(51167,f)}i=e+50|0;if((a[i>>0]|0)!=-4){c[f>>2]=e;Me(51167,f)}f=e+4|0;do if(!(c[f>>2]|0)){if((c[17674]|0)==(e|0))g=ln(1)|0;else g=ln(0)|0;c[f>>2]=g;if(!g)Me(51311,n);else{c[e+60>>2]=qq()|0;break}}while(0);if(!(a[e+8>>0]&1))mn(e);g=c[e+60>>2]|0;if((g|0)==(qq()|0)?(g=c[e+64>>2]|0,(g|0)==(qq()|0)):0){if(nn(b,d,e)|0)Me(51311,n);if((a[e>>0]|0)!=17){c[k>>2]=e;Me(51167,k)}if((a[j>>0]|0)!=42){c[k>>2]=e;Me(51167,k)}if((a[h>>0]|0)!=-119){c[k>>2]=e;Me(51167,k)}if((a[i>>0]|0)==-4){l=o;return}else{c[k>>2]=e;Me(51167,k)}}kg(51065,714,52343,0,51257);Me(51311,n)}function ln(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);n=o+8|0;e=o;k=o+12|0;if(!(c[17672]|0))Ie(51340,51065,596,51674);d=vg(k,7,1,1)|0;if(d|0){c[e>>2]=Pn(d)|0;Le(51692,e);n=0;l=o;return n|0}if(!b)i=pn()|0;else{i=gf(16)|0;kn(i,16,c[17675]|0)}j=Ag(c[k>>2]|0,i,16)|0;if(i&7){b=16;d=i;do{a[d>>0]=0;d=d+1|0;b=b+-1|0}while((b|0)!=0&(d&7|0)!=0);if(b>>>0>=8)f=11}else{b=16;d=i;f=11}if((f|0)==11){f=b+-8|0;g=f&-8;h=g+8|0;e=d;while(1){p=e;c[p>>2]=0;c[p+4>>2]=0;b=b+-8|0;if(b>>>0<=7)break;else e=e+8|0}b=f-g|0;d=d+h|0}if(b|0)while(1){a[d>>0]=0;b=b+-1|0;if(!b)break;else d=d+1|0}cf(i);if(!j){p=c[k>>2]|0;l=o;return p|0}else{c[n>>2]=Pn(j)|0;Le(51735,n);xg(c[k>>2]|0);p=0;l=o;return p|0}return 0}function mn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!(c[17672]|0))Ie(51340,51065,658,51556);d=b+17|0;if((c[17674]|0)==(b|0)){kn(d,16,c[17675]|0);i=b+8|0;a[i>>0]=a[i>>0]|1;c[b+64>>2]=qq()|0;return}i=pn()|0;e=i;f=d+16|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(i&7){e=16;d=i;do{a[d>>0]=0;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0);if(e>>>0>=8)g=8}else{d=i;e=16;g=8}if((g|0)==8){g=e+-8|0;h=g&-8;f=d;while(1){j=f;c[j>>2]=0;c[j+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}d=d+(h+8)|0;e=g-h|0}if(e|0)while(1){a[d>>0]=0;e=e+-1|0;if(!e)break;else d=d+1|0}cf(i);j=b+8|0;a[j>>0]=a[j>>0]|1;c[b+64>>2]=qq()|0;return}function nn(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,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;eb=l;l=l+64|0;if((l|0)>=(m|0))$(64);cb=eb+24|0;bb=eb+16|0;ab=eb+8|0;$a=eb;J=eb+32|0;U=eb+40|0;if(!(c[17672]|0))Ie(51340,51065,444,51359);ya=f+4|0;if(!(c[ya>>2]|0))Ie(51375,51065,445,51359);o=f+8|0;if(!(a[o>>0]&1))Ie(51394,51065,446,51359);u=c[17673]|0;if(!u)Ie(51413,51065,448,51359);v=u+16|0;w=u+32|0;if(!e){db=0;l=eb;return db|0}x=f+52|0;y=f+12|0;z=J+4|0;A=U+1|0;B=U+2|0;C=U+3|0;D=U+4|0;E=U+5|0;F=U+6|0;G=U+7|0;H=U+8|0;I=U+9|0;K=U+10|0;L=U+11|0;M=U+12|0;N=U+13|0;O=U+14|0;P=U+15|0;Q=f+17|0;R=u+1|0;S=f+18|0;T=u+17|0;V=u+2|0;W=f+19|0;X=u+18|0;Y=u+3|0;Z=f+20|0;_=u+19|0;aa=u+4|0;ba=f+21|0;ca=u+20|0;da=u+5|0;ea=f+22|0;fa=u+21|0;ga=u+6|0;ha=f+23|0;ia=u+22|0;ja=u+7|0;ka=f+24|0;la=u+23|0;ma=u+8|0;na=f+25|0;oa=u+24|0;pa=u+9|0;qa=f+26|0;ra=u+25|0;sa=u+10|0;ta=f+27|0;ua=u+26|0;va=u+11|0;wa=f+28|0;xa=u+27|0;za=u+12|0;Aa=f+29|0;Ba=u+28|0;Ca=u+13|0;Da=f+30|0;Ea=u+29|0;Fa=u+14|0;Ga=f+31|0;Ha=u+30|0;Ia=u+15|0;Ja=f+32|0;Ka=u+31|0;La=u+33|0;Ma=u+34|0;Na=u+35|0;Oa=u+36|0;Pa=u+37|0;Qa=u+38|0;Ra=u+39|0;Sa=u+40|0;Ta=u+41|0;Ua=u+42|0;Va=u+43|0;Wa=u+44|0;Xa=u+45|0;Ya=u+46|0;Za=u+47|0;_a=(u&7|0)==0;p=(v&7|0)==0;q=f+51|0;r=f+34|0;s=f+56|0;t=(w&7|0)==0;a:while(1){while(1){if((c[x>>2]|0)==0?(c[y>>2]|0)>>>0>1e3:0){mn(f);c[y>>2]=0}if(!(c[17672]|0)){db=16;break a}g=c[x>>2]|0;if((g|0)==0|(c[17674]|0)==(f|0)|(c[17675]|0)==(f|0)|(c[17676]|0)==(f|0)){if(!(c[17677]|0)){c[17678]=qq()|0;c[17679]=zq()|0}if(gb(J|0,0)|0){db=22;break a}g=c[z>>2]|0;h=g<<4;i=c[J>>2]|0;if((i|0)==(c[17677]|0)&(h|0)==(c[17680]|0)){j=(b[35680]|0)+1&4095;b[35680]=j}else{b[35680]=0;c[17677]=i;c[17680]=h;j=0}a[U>>0]=i>>>24;a[A>>0]=i>>>16;a[B>>0]=i>>>8;a[C>>0]=i;a[D>>0]=g>>>12;a[E>>0]=g>>>4;a[F>>0]=(j&65535)>>>8&15|h;a[G>>0]=j;g=c[17678]|0;a[H>>0]=g>>>24;a[I>>0]=g>>>16;a[K>>0]=g>>>8;a[L>>0]=g;n=c[17679]|0;a[M>>0]=n>>>24;a[N>>0]=n>>>16;a[O>>0]=n>>>8;a[P>>0]=n;n=n+1|0;c[17679]=n;if(!n)c[17678]=g+1}else{j=U;i=j+15|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(i|0));n=c[s>>2]|0;a[M>>0]=n>>>24;a[N>>0]=n>>>16;a[O>>0]=n>>>8;a[P>>0]=n;c[s>>2]=n+1}h=c[ya>>2]|0;g=yg(h,u,16,U,16)|0;if(g|0){db=30;break a}a[v>>0]=a[Q>>0]^a[u>>0];a[T>>0]=a[S>>0]^a[R>>0];a[X>>0]=a[W>>0]^a[V>>0];a[_>>0]=a[Z>>0]^a[Y>>0];a[ca>>0]=a[ba>>0]^a[aa>>0];a[fa>>0]=a[ea>>0]^a[da>>0];a[ia>>0]=a[ha>>0]^a[ga>>0];a[la>>0]=a[ka>>0]^a[ja>>0];a[oa>>0]=a[na>>0]^a[ma>>0];a[ra>>0]=a[qa>>0]^a[pa>>0];a[ua>>0]=a[ta>>0]^a[sa>>0];a[xa>>0]=a[wa>>0]^a[va>>0];a[Ba>>0]=a[Aa>>0]^a[za>>0];a[Ea>>0]=a[Da>>0]^a[Ca>>0];a[Ha>>0]=a[Ga>>0]^a[Fa>>0];a[Ka>>0]=a[Ja>>0]^a[Ia>>0];g=yg(h,w,16,v,16)|0;if(g|0){db=32;break a}a[v>>0]=a[u>>0]^a[w>>0];a[T>>0]=a[R>>0]^a[La>>0];a[X>>0]=a[V>>0]^a[Ma>>0];a[_>>0]=a[Y>>0]^a[Na>>0];a[ca>>0]=a[aa>>0]^a[Oa>>0];a[fa>>0]=a[da>>0]^a[Pa>>0];a[ia>>0]=a[ga>>0]^a[Qa>>0];a[la>>0]=a[ja>>0]^a[Ra>>0];a[oa>>0]=a[ma>>0]^a[Sa>>0];a[ra>>0]=a[pa>>0]^a[Ta>>0];a[ua>>0]=a[sa>>0]^a[Ua>>0];a[xa>>0]=a[va>>0]^a[Va>>0];a[Ba>>0]=a[za>>0]^a[Wa>>0];a[Ea>>0]=a[Ca>>0]^a[Xa>>0];a[Ha>>0]=a[Fa>>0]^a[Ya>>0];a[Ka>>0]=a[Ia>>0]^a[Za>>0];g=yg(h,Q,16,v,16)|0;if(g|0){db=35;break a}if(!_a){g=u;h=16;do{a[g>>0]=0;g=g+1|0;h=h+-1|0}while((h|0)!=0&(g&7|0)!=0);if(h>>>0>=8)db=38}else{g=u;h=16;db=38}if((db|0)==38){db=0;j=h+-8|0;k=j&-8;i=g;while(1){n=i;c[n>>2]=0;c[n+4>>2]=0;h=h+-8|0;if(h>>>0<=7)break;else i=i+8|0}g=g+(k+8)|0;h=j-k|0}if(h|0)while(1){a[g>>0]=0;h=h+-1|0;if(!h)break;else g=g+1|0}if(!p){g=16;h=v;do{a[h>>0]=0;h=h+1|0;g=g+-1|0}while((g|0)!=0&(h&7|0)!=0);if(g>>>0>=8)db=46}else{g=16;h=v;db=46}if((db|0)==46){db=0;j=g+-8|0;k=j&-8;i=h;while(1){n=i;c[n>>2]=0;c[n+4>>2]=0;g=g+-8|0;if(g>>>0<=7)break;else i=i+8|0}g=j-k|0;h=h+(k+8)|0}if(g|0)while(1){a[h>>0]=0;g=g+-1|0;if(!g)break;else h=h+1|0}c[y>>2]=(c[y>>2]|0)+1;if(a[q>>0]|0?!((c[x>>2]|0)==0|(c[17674]|0)==(f|0)|(c[17675]|0)==(f|0)|(c[17676]|0)==(f|0)):0){db=58;break}h=a[o>>0]|0;if(h&2){db=55;break}j=r;g=w;i=j+16|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(i|0));a[o>>0]=h|2}if((db|0)==55){db=0;if(!(Tp(r,w,16)|0)){db=56;break}h=e>>>0<16?e:16;j=r;g=w;i=j+16|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(i|0));n=h}else if((db|0)==58){db=0;n=e>>>0<16?e:16}cr(d|0,w|0,n|0)|0;if(!t){g=16;h=w;do{a[h>>0]=0;h=h+1|0;g=g+-1|0}while((g|0)!=0&(h&7|0)!=0);if(g>>>0>=8)db=62}else{g=16;h=w;db=62}if((db|0)==62){db=0;i=g+-8|0;j=i&-8;k=h+8|0;while(1){fb=h;c[fb>>2]=0;c[fb+4>>2]=0;g=g+-8|0;if(g>>>0<=7)break;else h=h+8|0}g=i-j|0;h=k+j|0}if(g|0)while(1){a[h>>0]=0;g=g+-1|0;if(!g)break;else h=h+1|0}e=e-n|0;if(!e){d=0;db=68;break}else d=d+n|0}if((db|0)==16)Ie(51340,51065,274,51443);else if((db|0)==22){c[$a>>2]=dp(c[(zo()|0)>>2]|0)|0;Me(51455,$a)}else if((db|0)==30){c[ab>>2]=on(g)|0;Me(51482,ab)}else if((db|0)==32){c[bb>>2]=on(g)|0;Me(51482,bb)}else if((db|0)==35){c[cb>>2]=on(g)|0;Me(51482,cb)}else if((db|0)==56){kg(51065,502,51359,0,51516);fb=-1;l=eb;return fb|0}else if((db|0)==68){l=eb;return d|0}return 0}function on(a){a=a|0;return Pn(a)|0}function pn(){var a=0,b=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);a=b;if(c[17681]|0)Ie(51568,51065,552,51592);c[17681]=jf(16)|0;c[17682]=16;c[17683]=0;if((Dn(4,0,16,2)|0)>=0?(c[17683]|0)==(c[17682]|0):0){a=c[17681]|0;c[17681]=0;l=b;return a|0}cf(c[17681]|0);c[17681]=0;Me(51604,a);return 0}function qn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!(c[17672]|0))Ie(51340,51065,531,51632);f=c[17681]|0;if(!f)Ie(51651,51065,532,51632);if(!d)return;g=c[17682]|0;e=d;d=c[17683]|0;while(1){e=e+-1|0;if(d>>>0>=g>>>0){e=9;break}i=a[b>>0]|0;h=d;d=d+1|0;c[17683]=d;h=f+h|0;a[h>>0]=a[h>>0]^i;if(!e){e=9;break}else b=b+1|0}if((e|0)==9)return}function rn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=g+8|0;e=g;en(1);d=Vn(12644)|0;if(d|0){c[e>>2]=Pn(d)|0;Me(51001,e)}c[17672]=1;kn(a,b,c[17674]|0);c[17672]=0;a=Wn(12644)|0;if(!a){l=g;return}else{c[f>>2]=Pn(a)|0;Me(51213,f)}}function sn(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))$(48);y=z+24|0;x=z+16|0;s=z+8|0;f=z;q=z+32|0;Dj(q,8,1);if(!(c[17673]|0))Ie(51413,51065,912,51767);t=kf(1,68)|0;a[t>>0]=17;u=t+16|0;a[u>>0]=42;v=t+33|0;a[v>>0]=-119;w=t+50|0;a[w>>0]=-4;e=Vn(12644)|0;if(e|0){c[f>>2]=Pn(e)|0;Me(51001,f)}c[17672]=1;r=t+4|0;f=t+60|0;g=t+17|0;h=t+8|0;i=t+64|0;j=t+52|0;k=t+56|0;e=0;while(1){if(vg(r,7,1,1)|0){f=52137;e=18;break}if(Ag(c[r>>2]|0,51780+(e*96|0)|0,16)|0){f=52175;e=18;break}c[f>>2]=qq()|0;n=g;o=51780+(e*96|0)+32|0;p=n+16|0;do{a[n>>0]=a[o>>0]|0;n=n+1|0;o=o+1|0}while((n|0)<(p|0));a[h>>0]=a[h>>0]|1;c[i>>2]=qq()|0;c[j>>2]=51780+(e*96|0)+16;c[k>>2]=d[51780+(e*96|0)+29>>0]<<16|d[51780+(e*96|0)+28>>0]<<24|d[51780+(e*96|0)+30>>0]<<8|d[51780+(e*96|0)+31>>0];if(nn(q,16,t)|0){f=52068;e=18;break}if(Tp(q,51780+(e*96|0)+48|0,16)|0){f=52099;e=18;break}if(nn(q,16,t)|0){f=52068;e=18;break}if(Tp(q,51780+(e*96|0)+64|0,16)|0){f=52099;e=18;break}if(nn(q,16,t)|0){f=52068;e=18;break}if(Tp(q,51780+(e*96|0)+80|0,16)|0){f=52099;e=18;break}p=c[f>>2]|0;if((p|0)!=(qq()|0)){f=52201;e=18;break}p=c[i>>2]|0;if((p|0)!=(qq()|0)){f=52201;e=18;break}xg(c[r>>2]|0);c[r>>2]=0;a[h>>0]=a[h>>0]&-2;if((a[t>>0]|0)!=17){e=17;break}if((a[u>>0]|0)!=42){e=17;break}if((a[v>>0]|0)!=-119){e=17;break}e=e+1|0;if((a[w>>0]|0)!=-4){e=17;break}if(e>>>0>=3){f=0;e=18;break}}if((e|0)==17){c[s>>2]=t;Me(51167,s)}else if((e|0)==18){c[17672]=0;e=Wn(12644)|0;if(e|0){c[x>>2]=Pn(e)|0;Me(51213,x)}xg(c[r>>2]|0);if((a[t>>0]|0)!=17){c[y>>2]=t;Me(51167,y)}if((a[u>>0]|0)!=42){c[y>>2]=t;Me(51167,y)}if((a[v>>0]|0)!=-119){c[y>>2]=t;Me(51167,y)}if((a[w>>0]|0)!=-4){c[y>>2]=t;Me(51167,y)}cf(t);e=(f|0)!=0;if(!((b|0)!=0&e)){b=e?16777266:0;l=z;return b|0}zb[b&1](52223,0,52230,f);b=e?16777266:0;l=z;return b|0}return 0}function tn(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))$(16);t=v;en(1);if((b|0)==0|(f|0)==0|(g|0)!=16|(h|0)==0|(i|0)!=16|(j|0)==0|(k|0)!=16){u=45;l=v;return u|0}r=df(1,84)|0;if(!r){u=Sn()|0;l=v;return u|0}a[r>>0]=17;o=r+16|0;a[o>>0]=42;p=r+33|0;a[p>>0]=-119;q=r+50|0;a[q>>0]=-4;i=r+4|0;g=vg(i,7,1,1)|0;if(!g){g=Ag(c[i>>2]|0,f,16)|0;if(!g){c[r+60>>2]=qq()|0;f=r+17|0;i=h;k=f+16|0;do{a[f>>0]=a[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(k|0));g=r+8|0;a[g>>0]=a[g>>0]|1;c[r+64>>2]=qq()|0;g=r+68|0;f=g;i=j;k=f+16|0;do{a[f>>0]=a[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(k|0));c[r+52>>2]=g;c[r+56>>2]=d[r+81>>0]<<16|d[r+80>>0]<<24|d[r+82>>0]<<8|d[r+83>>0];if(e&1|0)a[r+51>>0]=1;if((a[r>>0]|0)!=17){c[t>>2]=r;Me(51167,t)}if((a[o>>0]|0)!=42){c[t>>2]=r;Me(51167,t)}if((a[p>>0]|0)!=-119){c[t>>2]=r;Me(51167,t)}if((a[q>>0]|0)==-4){n=0;s=r}else{c[t>>2]=r;Me(51167,t)}}else{n=g;u=13}}else{n=g;u=13}if((u|0)==13){xg(c[i>>2]|0);cf(r);s=0}c[b>>2]=s;u=n;l=v;return u|0}function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=g+8|0;e=g;if((a|0)==0|(b|0)==0|(d|0)!=16){f=45;l=g;return f|0}d=Vn(12644)|0;if(d|0){c[e>>2]=Pn(d)|0;Me(51001,e)}c[17672]=1;kn(b,16,a);c[17672]=0;d=Wn(12644)|0;if(!d){f=0;l=g;return f|0}else{c[f>>2]=Pn(d)|0;Me(51213,f)}return 0}function vn(a){a=a|0;if(!a)return;xg(c[a+4>>2]|0);cf(a);return}function wn(a){a=a|0;if(c[17684]|0)return;c[17684]=1;c[17685]=0;return}function xn(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;a=Vn(12688)|0;if(a|0){c[b>>2]=Pn(a)|0;Me(52234,b)}c[17685]=1;Dn(0,0,0,0)|0;c[17685]=0;a=Wn(12688)|0;if(!a){l=e;return}else{c[d>>2]=Pn(a)|0;Me(52277,d)}}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=i+16|0;g=i+8|0;f=i;if(!(c[17684]|0)){c[17684]=1;c[17685]=0}e=Vn(12688)|0;if(e|0){c[f>>2]=Pn(e)|0;Me(52234,f)}c[17685]=1;if(!a)Ie(52320,52327,144,52343);c[17686]=a;c[17687]=b;c[17688]=0;a=Dn(5,0,b,(d|0)==2?2:1)|0;if((a|0)<0){c[g>>2]=a;Me(52354,g)}if((c[17688]|0)!=(c[17687]|0)){c[g>>2]=a;Me(52354,g)}c[17685]=0;a=Wn(12688)|0;if(!a){l=i;return}else{c[h>>2]=Pn(a)|0;Me(52277,h)}}function zn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!(c[17685]|0))Ie(52400,52327,124,52421);f=c[17686]|0;if(!f)Ie(52429,52327,125,52421);if(!d)return;g=c[17687]|0;e=d;d=c[17688]|0;while(1){e=e+-1|0;if(d>>>0>=g>>>0){e=9;break}i=a[b>>0]|0;h=d;d=d+1|0;c[17688]=d;a[f+h>>0]=i;if(!e){e=9;break}else b=b+1|0}if((e|0)==9)return}function An(){return c[17689]|0}function Bn(a,b){a=a|0;b=b|0;return}function Cn(a,b){a=a|0;b=b|0;return 0}function Dn(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+944|0;if((l|0)>=(m|0))$(944);C=F+24|0;r=F+16|0;B=F+8|0;A=F;h=F+168|0;y=F+40|0;z=F+32|0;if(!b){g=c[3183]|0;if((g|0)!=-1){Up(g)|0;c[3183]=-1}g=c[3184]|0;if((g|0)==-1){l=F;return 0}Up(g)|0;c[3184]=-1;l=F;return 0}k=Cn(b,e)|0;x=f>>>1;k=f-(f>>>0>1?(k>>>0>x>>>0?x:k):0)|0;if((g|0)>1){g=c[3183]|0;if((g|0)==-1){g=En(52444,(d[71846]|0)&1)|0;c[3183]=g;a[71846]=d[71846]|0|1}}else{g=c[3184]|0;if((g|0)==-1){g=En(52456,(d[71846]|0)&2)|0;c[3184]=g;a[71846]=d[71846]|0|2}}a:do if(!k)E=0;else{u=1<<(g&31);v=y+(g>>>5<<2)|0;w=z+4|0;x=g+1|0;if((g|0)<1024){i=0;j=0;s=0;t=k}else{n=0;o=0;q=k;b:while(1){k=f-q|0;if((n|0)==0&(o|0)==(k|0))n=0;else{pj(52469,88,k,f);n=1;o=k}p=q>>>0<768?q:768;while(1){k=pq(g,h,p)|0;if((k|0)>-1&k>>>0>p>>>0){c[r>>2]=k;Le(52502,r);k=p}if((k|0)!=-1)break;k=c[(zo()|0)>>2]|0;if((k|0)!=4)break b}ub[b&7](h,k,e);q=q-k|0;if(!q){E=n;break a}}r=dp(k)|0;c[C>>2]=r;Me(52540,C)}c:while(1){k=f-t|0;if((j|0)==0&(s|0)==(k|0)){j=0;o=s}else{pj(52469,88,k,f);j=1;o=k}k=y;n=k+128|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(n|0));c[v>>2]=c[v>>2]|u;c[z>>2]=i;k=(i|0)!=0;c[w>>2]=k?0:1e5;switch(nq(x,y,0,0,z)|0){case 0:{n=t;i=3;j=1;break}case -1:{c[A>>2]=dp(c[(zo()|0)>>2]|0)|0;Le(52482,A);n=t;i=k?i:1;break}default:{n=t>>>0<768?t:768;while(1){k=pq(g,h,n)|0;if((k|0)>-1&k>>>0>n>>>0){c[B>>2]=k;Le(52502,B);k=n}if((k|0)!=-1)break;k=c[(zo()|0)>>2]|0;if((k|0)!=4)break c}ub[b&7](h,k,e);n=t-k|0}}if(!n){E=j;break a}else{s=o;t=n}}B=dp(k)|0;c[C>>2]=B;Me(52540,C)}while(0);if(h&7){g=768;do{a[h>>0]=0;h=h+1|0;g=g+-1|0}while((g|0)!=0&(h&7|0)!=0);if(g>>>0>=8)D=36}else{g=768;D=36}if((D|0)==36){j=g+-8|0;k=j&-8;n=k+8|0;i=h;while(1){D=i;c[D>>2]=0;c[D+4>>2]=0;g=g+-8|0;if(g>>>0<=7)break;else i=i+8|0}g=j-k|0;h=h+n|0}if(g|0)while(1){a[h>>0]=0;g=g+-1|0;if(!g)break;else h=h+1|0}if(!E){l=F;return 0}pj(52469,88,f,f);l=F;return 0}function En(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,n=0,o=0;o=l;l=l+64|0;if((l|0)>=(m|0))$(64);n=o+48|0;k=o+40|0;j=o+32|0;g=o+24|0;i=o+16|0;h=o+8|0;e=o;f=(b|0)!=0;do if(f){pj(52573,88,1,0);b=Bq(a,0,h)|0;e=(b|0)==-1;if(f&e){b=h+4|0;do{c[h>>2]=5;c[b>>2]=0;pj(52589,88,0,5);nq(0,0,0,0,h)|0;d=Bq(a,0,i)|0}while((d|0)==-1)}else{if(!e){d=b;break}i=zo()|0;i=c[i>>2]|0;i=dp(i)|0;c[g>>2]=a;a=g+4|0;c[a>>2]=i;Me(52605,g)}}else{b=Bq(a,0,e)|0;if((b|0)==-1){i=zo()|0;i=c[i>>2]|0;i=dp(i)|0;c[g>>2]=a;a=g+4|0;c[a>>2]=i;Me(52605,g)}else d=b}while(0);c[j>>2]=0;b=jq(d,1,j)|0;if((b|0)>=0?(c[k>>2]=b|1,(jq(d,2,k)|0)==0):0){l=o;return d|0}k=dp(c[(zo()|0)>>2]|0)|0;c[n>>2]=d;c[n+4>>2]=k;Le(52624,n);l=o;return d|0}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,i=0,j=0,k=0,l=0,m=0,n=0;h=a+(d<<2)|0;f=b+(d<<2)|0;g=e&65535;e=e>>>16;b=0;a=0-d|0;do{m=c[f+(a<<2)>>2]|0;l=m&65535;m=m>>>16;k=S(l,g)|0;n=S(m,g)|0;m=S(m,e)|0;l=n+(S(l,e)|0)+(k>>>16)|0;k=(l<<16|k&65535)+b|0;d=h+(a<<2)|0;j=c[d>>2]|0;i=k+j|0;b=(l>>>0<n>>>0?m+65536|0:m)+(l>>>16)+(k>>>0<b>>>0&1)+(i>>>0<j>>>0&1)|0;c[d>>2]=i;a=a+1|0}while((a|0)!=0);return b|0}function Gn(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;if((l|0)>=(m|0))$(48);k=q+32|0;j=q+24|0;i=q+16|0;h=q+8|0;f=q;p=nl(c[b+4>>2]|0)|0;g=lk(b)|0;o=(g+7|0)>>>3;if(nf(1)|0){c[f>>2]=g;c[f+4>>2]=e;Oe(52663,f)}n=g+-1|0;if(g>>>0<32){f=0;while(1){cf(f);f=Cj(o,e)|0;Rk(p,f,o,0);k=(mk(p,n)|0)==0;ok(p,n);if(k)qk(p,n);if((wk(p,b)|0)>=0){if(!(nf(1)|0))continue;Oe(52710,h);continue}if((vk(p,0)|0)>0)break;if(!(nf(1)|0))continue;Oe(52732,i)}cf(f);l=q;return p|0}else f=0;while(1){if(!f){cf(0);f=Cj(o,e)|0}else{i=Cj(4,e)|0;h=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;a[f>>0]=h;a[f+1>>0]=h>>8;a[f+2>>0]=h>>16;a[f+3>>0]=h>>24;cf(i)}Rk(p,f,o,0);i=(mk(p,n)|0)==0;ok(p,n);if(i)qk(p,n);if((wk(p,b)|0)>=0){if(!(nf(1)|0))continue;Oe(52710,j);continue}if((vk(p,0)|0)>0)break;if(!(nf(1)|0))continue;Oe(52732,k)}cf(f);l=q;return p|0}function Hn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;if((l|0)>=(m|0))$(32);j=v+16|0;t=v+12|0;u=v+8|0;q=v+4|0;r=v;c[t>>2]=0;c[u>>2]=0;c[q>>2]=0;c[r>>2]=0;o=lk(b)|0;if(!((f|0)!=0&((e|0)!=0&(o|0)!=0))){a=32816;l=v;return a|0}if((sh(g)|0)!=(f|0)){a=5;l=v;return a|0}s=_e(f)|0;a:do if(s){Yq(s|0,1,f|0)|0;p=df(1,f)|0;if(!p){g=0;d=0;i=Sn()|0;break}k=(o+7|0)>>>3;i=In(t,d,k)|0;if(!i){n=f<<3;i=Sk(j,5,e,f&536870911,0)|0;if(i|0){g=0;d=p;break}if(n>>>0>o>>>0){e=c[j>>2]|0;sk(e,e,n-o|0)}if((wk(c[j>>2]|0,b)|0)>-1){e=c[j>>2]|0;hk(e,e,b)}i=In(u,c[j>>2]|0,k)|0;tl(c[j>>2]|0);if(!i){i=eh(q,g,3)|0;if(!i){i=nh(c[q>>2]|0,p,f)|0;if(!i){lh(c[q>>2]|0,s,f);lh(c[q>>2]|0,71847,1);d=c[t>>2]|0;lh(c[q>>2]|0,d,k);e=c[u>>2]|0;lh(c[q>>2]|0,e,k);cr(p|0,ph(c[q>>2]|0,0)|0,f|0)|0;i=nh(c[q>>2]|0,p,f)|0;if(!i){lh(c[q>>2]|0,s,f);cr(s|0,ph(c[q>>2]|0,0)|0,f|0)|0;i=nh(c[q>>2]|0,p,f)|0;if(!i){lh(c[q>>2]|0,s,f);lh(c[q>>2]|0,52752,1);lh(c[q>>2]|0,d,k);lh(c[q>>2]|0,e,k);cr(p|0,ph(c[q>>2]|0,0)|0,f|0)|0;i=nh(c[q>>2]|0,p,f)|0;if(!i){lh(c[q>>2]|0,s,f);cr(s|0,ph(c[q>>2]|0,0)|0,f|0)|0;g=_e(k+f|0)|0;if(!g){g=0;d=p;i=Sn()|0;break}else e=h;while(1){while(1){d=0;do{i=nh(c[q>>2]|0,p,f)|0;if(i|0){d=p;break a}lh(c[q>>2]|0,s,f);cr(s|0,ph(c[q>>2]|0,0)|0,f|0)|0;cr(g+(d>>>3)|0,s|0,f|0)|0;d=d+n|0}while(d>>>0<o>>>0);tl(c[r>>2]|0);c[r>>2]=0;i=Sk(r,5,g,d>>>3,0)|0;if(i|0){d=p;break a}if(d>>>0>o>>>0){h=c[r>>2]|0;sk(h,h,d-o|0)}if((wk(c[r>>2]|0,b)|0)<0?(vk(c[r>>2]|0,0)|0)>0:0)break;i=nh(c[q>>2]|0,p,f)|0;if(i|0){d=p;break a}lh(c[q>>2]|0,s,f);lh(c[q>>2]|0,71847,1);cr(p|0,ph(c[q>>2]|0,0)|0,f|0)|0;i=nh(c[q>>2]|0,p,f)|0;if(i|0){d=p;break a}lh(c[q>>2]|0,s,f);cr(s|0,ph(c[q>>2]|0,0)|0,f|0)|0}if(!e){d=p;i=0;break a}i=nh(c[q>>2]|0,p,f)|0;if(i|0){d=p;break a}lh(c[q>>2]|0,s,f);lh(c[q>>2]|0,71847,1);cr(p|0,ph(c[q>>2]|0,0)|0,f|0)|0;i=nh(c[q>>2]|0,p,f)|0;if(i|0){d=p;break a}lh(c[q>>2]|0,s,f);cr(s|0,ph(c[q>>2]|0,0)|0,f|0)|0;e=e+-1|0}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=p}}else{g=0;d=0;i=Sn()|0}while(0);cf(g);kh(c[q>>2]|0);cf(c[u>>2]|0);cf(c[t>>2]|0);cf(d);cf(s);d=c[r>>2]|0;if(!i){c[a>>2]=d;a=0;l=v;return a|0}else{tl(d);a=i;l=v;return a|0}return 0}function In(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=h;e=Tk(5,0,0,g,b)|0;if(e|0){a=e;l=h;return a|0}e=c[g>>2]|0;if(e>>>0>d>>>0){a=67;l=h;return a|0}f=e>>>0<d>>>0?d-e|0:0;e=f+e|0;if((b|0)!=0?(c[b+12>>2]&1|0)!=0:0)d=$e(e)|0;else d=_e(e)|0;if(!d){a=Sn()|0;l=h;return a|0}if(f|0)Yq(d|0,0,f|0)|0;e=c[g>>2]|0;c[g>>2]=e+f;e=Tk(5,d+f|0,e,0,b)|0;if(!e){c[a>>2]=d;a=0;l=h;return a|0}else{cf(d);a=e;l=h;return a|0}return 0}function Jn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g+4|0;f=g;if((a|0)!=0?(c[a+12>>2]&4|0)!=0:0){a=wl(a,e)|0;a=Sk(f,5,a,((c[e>>2]|0)+7|0)>>>3,0)|0;if(a|0){f=a;l=g;return f|0}a=c[e>>2]|0;if(a>>>0>d>>>0){e=c[f>>2]|0;sk(e,e,a-d|0)}}else c[f>>2]=a;c[b>>2]=c[f>>2];f=0;l=g;return f|0}function Kn(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;if((l|0)>=(m|0))$(32);v=A;w=A+24|0;x=A+12|0;y=A+8|0;u=A+4|0;if(nf(1)|0)Se(52754,a);o=b+32|0;h=Jn(a,y,lk(c[o>>2]|0)|0)|0;if(h|0){a=h;l=A;return a|0}c[w>>2]=0;p=ll(0)|0;q=ll(0)|0;r=ll(0)|0;s=ll(0)|0;Pj(x);t=Uj(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;n=(f&2|0)!=0&(g|0)!=0;i=(a|0)==0;j=a+12|0;k=b+56|0;b=b+20|0;h=0;a:while(1){if(n)do{tl(c[w>>2]|0);c[w>>2]=0;if(i){f=70;break a}if(!(c[j>>2]&4)){f=70;break a}f=wl(a,u)|0;f=Hn(w,c[o>>2]|0,c[k>>2]|0,f,((c[u>>2]|0)+7|0)>>>3,g,h)|0;if(f|0)break a;h=h+1|0;ck(x,c[w>>2]|0,b,t);if(Nj(s,0,x,t)|0){z=12;break a}Gk(d,s,c[o>>2]|0)}while((vk(d,0)|0)==0);else do{tl(c[w>>2]|0);c[w>>2]=0;f=Gn(c[o>>2]|0,1)|0;c[w>>2]=f;ck(x,f,b,t);if(Nj(s,0,x,t)|0){z=12;break a}Gk(d,s,c[o>>2]|0)}while(!(vk(d,0)|0));Lk(p,c[k>>2]|0,d,c[o>>2]|0);ik(q,c[y>>2]|0,p,c[o>>2]|0);Fk(r,c[w>>2]|0,c[o>>2]|0)|0;Lk(e,r,q,c[o>>2]|0);if(vk(e,0)|0){z=16;break}}if((z|0)==12)if(!(nf(1)|0))f=8;else{Oe(52831,v);f=8}else if((z|0)==16)if(!(nf(1)|0))f=0;else{Se(52772,d);Se(52793,e);f=0}Yj(t);Rj(x);tl(s);tl(r);tl(q);tl(p);tl(c[w>>2]|0);h=c[y>>2]|0;if((h|0)==(a|0)){a=f;l=A;return a|0}tl(h);a=f;l=A;return a|0}function Ln(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=t+8|0;n=t;p=t+48|0;q=t+36|0;r=t+24|0;s=t+12|0;if((vk(d,0)|0)<=0){a=8;l=t;return a|0}g=b+32|0;if((wk(d,c[g>>2]|0)|0)>=0){a=8;l=t;return a|0}if((vk(e,0)|0)<=0){a=8;l=t;return a|0}if((wk(e,c[g>>2]|0)|0)>=0){a=8;l=t;return a|0}f=Jn(a,p,lk(c[g>>2]|0)|0)|0;if(f|0){a=f;l=t;return a|0}f=ll(0)|0;h=ll(0)|0;i=ll(0)|0;j=ll(0)|0;Pj(q);Pj(r);Pj(s);k=Uj(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;Fk(f,e,c[g>>2]|0)|0;Lk(h,c[p>>2]|0,f,c[g>>2]|0);ck(r,h,b+20|0,k);Lk(i,d,f,c[g>>2]|0);ck(s,i,b+44|0,k);ak(q,r,s,k);do if(!(vk(c[q+8>>2]|0,0)|0))if(!(nf(1)|0))b=8;else{Oe(52915,n);b=8}else{if(Nj(j,0,q,k)|0){if(!(nf(1)|0)){b=8;break}Oe(52937,o);b=8;break}Gk(j,j,c[g>>2]|0);if(wk(j,d)|0)if(!(nf(1)|0))b=8;else{Se(52983,j);Se(52990,d);Se(52997,e);b=8}else b=0}while(0);Yj(k);Rj(s);Rj(r);Rj(q);tl(j);tl(i);tl(h);tl(f);f=c[p>>2]|0;if((f|0)==(a|0)){a=b;l=t;return a|0}tl(f);a=b;l=t;return a|0}function Mn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;if((l|0)>=(m|0))$(32);s=v;t=v+12|0;u=v+8|0;g=v+4|0;if(nf(1)|0)Se(52814,a);r=b+32|0;h=lk(c[r>>2]|0)|0;if((a|0)!=0?(c[a+12>>2]&4|0)!=0:0){f=wl(a,g)|0;f=Sk(u,5,f,((c[g>>2]|0)+7|0)>>>3,0)|0;if(f|0){a=f;l=v;return a|0}f=c[g>>2]|0;if(f>>>0>h>>>0){q=c[u>>2]|0;sk(q,q,f-h|0)}}else c[u>>2]=a;j=ll(0)|0;k=ll(0)|0;n=ll(0)|0;o=ll(0)|0;p=ll(0)|0;Pj(t);q=Uj(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;Gk(o,a,c[r>>2]|0);if(!(vk(o,0)|0))El(o,1)|0;i=b+20|0;g=b+56|0;f=0;a:while(1){h=f;do{tl(h);h=Gn(c[r>>2]|0,1)|0;ck(t,h,i,q);if(Nj(p,0,t,q)|0){f=14;break a}Gk(d,p,c[r>>2]|0)}while(!(vk(d,0)|0));Lk(j,c[g>>2]|0,d,c[r>>2]|0);Lk(n,h,o,c[r>>2]|0);ik(e,n,j,c[r>>2]|0);if(!(vk(e,0)|0))f=h;else{f=18;break}}if((f|0)==14)if(!(nf(1)|0))g=8;else{Oe(52831,s);g=8}else if((f|0)==18)if(!(nf(1)|0))g=0;else{Se(52875,d);Se(52895,e);g=0}Yj(q);Rj(t);tl(p);tl(o);tl(n);tl(k);tl(j);tl(h);f=c[u>>2]|0;if((f|0)==(a|0)){a=g;l=v;return a|0}tl(f);a=g;l=v;return a|0}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,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+64|0;if((l|0)>=(m|0))$(64);j=x+24|0;i=x+16|0;h=x+8|0;g=x;u=x+52|0;v=x+40|0;w=x+28|0;if((vk(d,0)|0)<=0){w=8;l=x;return w|0}f=b+32|0;if((wk(d,c[f>>2]|0)|0)>=0){w=8;l=x;return w|0}if((vk(e,0)|0)<=0){w=8;l=x;return w|0}if((wk(e,c[f>>2]|0)|0)>=0){w=8;l=x;return w|0}k=ll(0)|0;n=ll(0)|0;o=ll(0)|0;p=ll(0)|0;q=ll(0)|0;r=ll(0)|0;s=ll(0)|0;Pj(u);Pj(v);Pj(w);t=Uj(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;Gk(n,a,c[f>>2]|0);if(!(vk(n,0)|0))El(n,1)|0;Fk(q,n,c[f>>2]|0)|0;Lk(o,e,q,c[f>>2]|0);Lk(r,d,q,c[f>>2]|0);jk(p,s,r,c[f>>2]|0);ck(v,o,b+20|0,t);ck(w,p,b+44|0,t);ak(u,v,w,t);do if(!(vk(c[u+8>>2]|0,0)|0))if(!(nf(1)|0))a=8;else{Oe(52915,g);a=8}else{if(Nj(k,0,u,t)|0){if(!(nf(1)|0)){a=8;break}Oe(52937,h);a=8;break}Gk(k,k,c[f>>2]|0);h=(wk(k,d)|0)==0;a=(nf(1)|0)!=0;if(h){if(!a){a=0;break}Oe(53030,j);a=0;break}else{if(!a){a=8;break}Se(52983,k);Se(52990,d);Se(52997,e);Oe(53004,i);a=8;break}}while(0);Yj(t);Rj(w);Rj(v);Rj(u);tl(s);tl(r);tl(q);tl(p);tl(o);tl(k);tl(n);w=a;l=x;return w|0}function On(){return ao()|0}function Pn(a){a=a|0;return ho(a)|0}function Qn(a){a=a|0;return jo(a)|0}function Rn(a){a=a|0;return io(a)|0}function Sn(){return ko()|0}function Tn(a){a=a|0;bo(a);return}function Un(a){a=a|0;return Yn(a)|0}function Vn(a){a=a|0;return Zn(a)|0}function Wn(a){a=a|0;return _n(a)|0}function Xn(a){a=a|0;return $n(a)|0}function Yn(a){a=a|0;switch(c[a>>2]|0){case 0:{c[a>>2]=1;break}case 1:break;default:Da(53052,53072,114,53085)}a=xa(a+4|0,0)|0;if(!a){a=0;return a|0}a=Qn(a)|0;return a|0}function Zn(a){a=a|0;if((c[a>>2]|0)!=1)Da(53052,53072,114,53085);a=Zq(a+4|0)|0;if(!a){a=0;return a|0}a=Qn(a)|0;return a|0}function _n(a){a=a|0;if((c[a>>2]|0)!=1)Da(53052,53072,114,53085);a=hr(a+4|0)|0;if(!a){a=0;return a|0}a=Qn(a)|0;return a|0}function $n(a){a=a|0;var b=0,d=0;if((c[a>>2]|0)!=1)Da(53052,53072,114,53085);b=a+4|0;d=Ua(b|0)|0;if(!d){c[a>>2]=1;a=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));d=0;return d|0}else{d=Qn(d)|0;return d|0}return 0}function ao(){co()|0;return 0}function bo(a){a=a|0;c[(zo()|0)>>2]=a;return}function co(){if(c[17690]|0)return 0;c[17690]=1;ib(3)|0;return 0}function eo(){fo(0)|0;c[17691]=0;c[17692]=0;return}function fo(b){b=b|0;var d=0,e=0,f=0,g=0;if(b|0){e=b+36|0;d=c[e>>2]|0;if(!(a[d+1140>>0]&32))Zn(d+1040|0)|0;if(!(c[b>>2]&65536)){c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;b=0}else b=go(b)|0;d=c[e>>2]|0;if(a[d+1140>>0]&32){g=b;g=(g|0)!=0;g=g<<31>>31;return g|0}_n(d+1040|0)|0;g=b;g=(g|0)!=0;g=g<<31>>31;return g|0}Zn(12740)|0;b=c[17693]|0;if(!b)d=0;else{d=0;do{g=b+4|0;f=c[g>>2]|0;if(f){e=c[f+36>>2]|0;if(!(a[e+1140>>0]&32)){Zn(e+1040|0)|0;f=c[g>>2]|0}if(!(c[f>>2]&65536)){c[f+12>>2]=0;c[f+16>>2]=0;c[f+32>>2]=0;e=0}else{e=go(f)|0;f=c[g>>2]|0}d=e|d;e=c[f+36>>2]|0;if(!(a[e+1140>>0]&32))_n(e+1040|0)|0}b=c[b>>2]|0}while((b|0)!=0)}_n(12740)|0;g=d;g=(g|0)!=0;g=g<<31>>31;return g|0}function go(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=b+36|0;d=c[j>>2]|0;h=c[d+1108>>2]|0;if(!(c[b>>2]&65536))Da(53101,53123,1654,53133);i=b+16|0;e=c[i>>2]|0;if(!e){j=0;return j|0}do if(h){g=b+4|0;a:do if((e|0)>0){d=0;f=e;while(1){e=pb[h&63](c[(c[j>>2]|0)+1084>>2]|0,(c[g>>2]|0)+d|0,f)|0;f=(e|0)==-1;d=(f?0:e)+d|0;e=c[i>>2]|0;if(f){f=d;g=-1;break a}f=e-d|0;if((f|0)<=0){f=d;g=0;break}}}else{f=0;g=0}while(0);d=b+20|0;c[d>>2]=(c[d>>2]|0)+f;if((e|0)==(f|0)){b=c[j>>2]|0;f=b+1100|0;c[f>>2]=(c[f>>2]|0)+e;c[i>>2]=0;c[d>>2]=0;pb[h&63](c[b+1084>>2]|0,0,0)|0}if(!g){j=0;return j|0}else{e=-1;d=c[j>>2]|0;break}}else e=95;while(0);j=d+1136|0;a[j>>0]=a[j>>0]|1;j=e;return j|0}function ho(a){a=a|0;var b=0,d=0;b=a&65535;a:do if(!(a&32768)){if(b>>>0>=214){if((b+-222|0)>>>0<33){b=b+-8|0;break}if((b+-257|0)>>>0<15){b=b+-10|0;break}if((b+-273|0)>>>0<9){b=b+-11|0;break}if((b+-721|0)>>>0<9){b=b+-450|0;break}if((b+-750|0)>>>0<3){b=b+-470|0;break}if((b+-754|0)>>>0<29){b=b+-471|0;break}if((b+-784|0)>>>0<6){b=b+-472|0;break}if((b+-800|0)>>>0<5){b=b+-482|0;break}if((b+-815|0)>>>0<8){b=b+-492|0;break}if((a&65528|0)==832){b=b+-501|0;break}switch((a&65535)<<16>>16){case 844:{b=339;break a}case 848:{b=340;break a}default:{}}if((b+-881|0)>>>0<11){b=b+-540|0;break}if((a&65520|0)==1024)b=b+-672|0;else d=31}}else{b=Rn(b)|0;if(!b){b=16382;d=31}else{d=dp(b)|0;return d|0}}while(0);if((d|0)==31)b=(b+-16381|0)>>>0<3?b+-16013|0:371;d=53142+(c[12784+(b<<2)>>2]|0)|0;return d|0}function io(a){a=a|0;var b=0;if((a&32768|0)!=0?(b=a&-32769,b>>>0<141):0)a=c[14272+(b<<2)>>2]|0;else a=0;return a|0}function jo(a){a=a|0;var b=0;if(!a){a=0;return a|0}b=a+-1|0;do if(b>>>0>=11)if((a+-11|0)>>>0>=25){if((a+-35|0)>>>0<6){b=a+1|0;break}if((a+-42|0)>>>0>=16)if((a+-59|0)>>>0<37){if((b|0)<0)b=16382;else break;return b|0}else{if((a+-95|0)>>>0<31){b=a;break}else b=16382;return b|0}else b=a}else b=a;while(0);a=c[14836+(b<<2)>>2]|32768;return a|0}function ko(){var a=0,b=0;b=c[(zo()|0)>>2]|0;if(!b){b=16381;return b|0}a=b+-1|0;do if(a>>>0>=11)if((b+-11|0)>>>0>=25){if((b+-35|0)>>>0<6){a=b+1|0;break}if((b+-42|0)>>>0>=16)if((b+-59|0)>>>0<37){if((a|0)<0)a=16382;else break;return a|0}else{if((b+-95|0)>>>0<31){a=b;break}else a=16382;return a|0}else a=b}else a=b;while(0);b=c[14836+(a<<2)>>2]|32768;return b|0}function lo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=d;h=vd(c[h>>2]|0,c[h+4>>2]|0)|0;e=D;f=b;g=f;a[g>>0]=h;a[g+1>>0]=h>>8;a[g+2>>0]=h>>16;a[g+3>>0]=h>>24;f=f+4|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;f=Xp(c[d+8>>2]|0)|0;e=b+8|0;a[e>>0]=f;a[e+1>>0]=f>>8;a[e+2>>0]=f>>16;a[e+3>>0]=f>>24;e=b+12|0;b=d+12|0;d=e+12|0;do{a[e>>0]=a[b>>0]|0;e=e+1|0;b=b+1|0}while((e|0)<(d|0));return}function mo(b,e){b=b|0;e=e|0;var f=0,g=0;g=e;f=g;g=g+4|0;g=wd(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)|0;f=b;c[f>>2]=g;c[f+4>>2]=D;f=e+8|0;c[b+8>>2]=Yp(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)|0;f=b+12|0;b=e+12|0;e=f+12|0;do{a[f>>0]=a[b>>0]|0;f=f+1|0;b=b+1|0}while((f|0)<(e|0));return}function no(a,b){a=a|0;b=b|0;var d=0;d=Fo(a)|0;if(d>>>0>11){d=-1;return d|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;cr(b+12|0,a|0,d|0)|0;d=1;return d|0}function oo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;if((l|0)>=(m|0))$(32);t=v+16|0;k=v+8|0;g=v;f=b+12|0;if((a[f>>0]|0?(e=d+12|0,a[e>>0]|0):0)?(Op(f,e)|0)==0:0){i=b;h=c[i>>2]|0;i=c[i+4>>2]|0;g=c[b+8>>2]|0;f=d;j=c[f>>2]|0;f=c[f+4>>2]|0;e=c[d+8>>2]|0;a:do if((h|0)==-1&(i|0)==-1)u=14;else{b=i;while(1){if(g>>>0<=99999999){o=g;p=h;r=b;break a}g=g+-1e8|0;h=_q(h|0,b|0,1,0)|0;b=D;if((h|0)==-1&(b|0)==-1){u=14;break}}}while(0);if((u|0)==14)if(g>>>0>99999999){if((c[3836]|0)==-1)c[3836]=Wb(1,0,61157,61166,353)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3836]|0))Vb();c[k>>2]=61157;c[k+4>>2]=353;Zb(1,61295,k);Vb()}else{o=g;p=-1;r=-1}b:do if((j|0)==-1&(f|0)==-1)u=25;else{g=j;while(1){if(e>>>0<=99999999){n=e;q=g;s=f;break b}e=e+-1e8|0;g=_q(g|0,f|0,1,0)|0;f=D;if((g|0)==-1&(f|0)==-1){u=25;break}}}while(0);if((u|0)==25)if(e>>>0>99999999){if((c[3837]|0)==-1)c[3837]=Wb(1,0,61157,61166,355)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3837]|0))Vb();c[t>>2]=61157;c[t+4>>2]=355;Zb(1,61295,t);Vb()}else{n=e;q=-1;s=-1}if(!((p|0)==(q|0)&(r|0)==(s|0))){u=r>>>0<s>>>0|(r|0)==(s|0)&p>>>0<q>>>0?-1:1;l=v;return u|0}if(o>>>0<n>>>0){u=-1;l=v;return u|0}u=o>>>0>n>>>0&1;l=v;return u|0}if((c[3835]|0)==-1)c[3835]=Wb(1,0,61157,61166,349)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3835]|0))Vb();c[g>>2]=61157;c[g+4>>2]=349;Zb(1,61295,g);Vb();return 0}function po(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;if(!(a[b+12>>0]|0)){b=-1;return b|0}h=b+8|0;e=b;g=c[e>>2]|0;e=c[e+4>>2]|0;f=c[h>>2]|0;a:do if((g|0)==-1&(e|0)==-1){e=0;d=f}else{d=0;while(1){if(f>>>0<=99999999)break;f=f+-1e8|0;c[h>>2]=f;g=_q(g|0,e|0,1,0)|0;e=D;d=b;c[d>>2]=g;c[d+4>>2]=e;if((g|0)==-1&(e|0)==-1){e=1;d=f;break a}else d=1}return d|0}while(0);if(d>>>0<=99999999){b=e;return b|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;b=-1;return b|0}function qo(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,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;if((l|0)>=(m|0))$(48);r=s+32|0;q=s+24|0;o=s;g=d+12|0;if((a[g>>0]|0?(f=e+12|0,a[f>>0]|0):0)?(Op(g,f)|0)==0: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=e;i=c[d>>2]|0;d=c[d+4>>2]|0;f=c[e+8>>2]|0;n=o+12|0;do if(a[n>>0]|0){k=o+8|0;h=o;e=c[h>>2]|0;h=c[h+4>>2]|0;g=c[k>>2]|0;a:do if((e|0)==-1&(h|0)==-1)p=9;else while(1){if(g>>>0<=99999999)break a;g=g+-1e8|0;c[k>>2]=g;e=_q(e|0,h|0,1,0)|0;h=D;j=o;c[j>>2]=e;c[j+4>>2]=h;if((e|0)==-1&(h|0)==-1){p=9;break}}while(0);if((p|0)==9)if(g>>>0>99999999){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;break}else{e=-1;h=-1}b:do if((i|0)==-1&(d|0)==-1)p=14;else while(1){if(f>>>0<=99999999){j=d;break b}f=f+-1e8|0;i=_q(i|0,d|0,1,0)|0;d=D;if((i|0)==-1&(d|0)==-1){p=14;break}}while(0);if((p|0)==14)if(f>>>0>99999999)break;else{j=-1;i=-1}do if(g>>>0<f>>>0){if(!((e|0)==0&(h|0)==0)){g=g+1e8|0;c[k>>2]=g;e=_q(e|0,h|0,-1,-1)|0;h=D;p=o;c[p>>2]=e;c[p+4>>2]=h;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;r=-1;l=s;return r|0}while(0);if(h>>>0<j>>>0|(h|0)==(j|0)&e>>>0<i>>>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;r=-1;l=s;return r|0}d=Fo(n)|0;if(d>>>0>11){if((c[3838]|0)==-1)c[3838]=Wb(1,0,61157,61183,421)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3838]|0))Vb();c[q>>2]=61157;c[q+4>>2]=421;Zb(1,61295,q);Vb()};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;cr(b+12|0,n|0,d|0)|0;if(g>>>0>=f>>>0){r=g-f|0;c[b+8>>2]=r;p=Xq(e|0,h|0,i|0,j|0)|0;q=D;c[b>>2]=p;c[b+4>>2]=q;r=(p|0)==0&(q|0)==0&(r|0)==0&1^1;l=s;return r|0}if((c[3839]|0)==-1)c[3839]=Wb(1,0,61157,61183,422)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3839]|0))Vb();c[r>>2]=61157;c[r+4>>2]=422;Zb(1,61295,r);Vb()}while(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;r=-1;l=s;return r|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;r=-1;l=s;return r|0}function ro(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,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;if((l|0)>=(m|0))$(32);o=r;q=r+8|0;n=d+12|0;if((a[n>>0]|0?(f=e+12|0,a[f>>0]|0):0)?(Op(n,f)|0)==0:0){g=d;i=c[g>>2]|0;g=c[g+4>>2]|0;d=c[d+8>>2]|0;j=e;h=c[j>>2]|0;j=c[j+4>>2]|0;f=c[e+8>>2]|0;a:do if((i|0)==-1&(g|0)==-1)p=8;else{e=i;while(1){if(d>>>0<=99999999){k=d;i=e;p=9;break a}d=d+-1e8|0;e=_q(e|0,g|0,1,0)|0;g=D;if((e|0)==-1&(g|0)==-1){p=8;break}}}while(0);if((p|0)==8?d>>>0<=99999999:0){k=d;i=-1;g=-1;p=9}do if((p|0)==9){b:do if((h|0)==-1&(j|0)==-1)p=12;else{e=j;while(1){if(f>>>0<=99999999)break b;f=f+-1e8|0;h=_q(h|0,e|0,1,0)|0;e=D;if((h|0)==-1&(e|0)==-1){p=12;break}}}while(0);if((p|0)==12)if(f>>>0>99999999)break;else{h=-1;e=-1}d=Fo(n)|0;if(d>>>0>11){if((c[3840]|0)==-1)c[3840]=Wb(1,0,61157,61205,468)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3840]|0))Vb();c[o>>2]=61157;c[o+4>>2]=468;Zb(1,61295,o);Vb()}Yq(q+d|0,0,12-d|0)|0;cr(q|0,n|0,d|0)|0;e=_q(h|0,e|0,i|0,g|0)|0;d=D;if(d>>>0<g>>>0|(d|0)==(g|0)&e>>>0<i>>>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;b=-1;l=r;return b|0}f=f+k|0;do if(a[q>>0]|0){c:do if((e|0)==-1&(d|0)==-1)p=28;else while(1){if(f>>>0<=99999999)break c;f=f+-1e8|0;e=_q(e|0,d|0,1,0)|0;d=D;if((e|0)==-1&(d|0)==-1){p=28;break}}while(0);if((p|0)==28)if(f>>>0>99999999){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;break}else{e=-1;d=-1}p=b;c[p>>2]=e;c[p+4>>2]=d;c[b+8>>2]=f;b=b+12|0;c[b>>2]=c[q>>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];b=1;l=r;return b|0}while(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;b=-1;l=r;return b|0}while(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;b=-1;l=r;return b|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;b=-1;l=r;return b|0}function so(){var a=0,b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=d+8|0;a=d;xe(6,0);if(!(yd(61222)|0)){iq(61228,27,1,c[3935]|0)|0;za()}else{c[a>>2]=0;zd(37,a)|0;c[b>>2]=0;zd(38,b)|0;l=d;return}}function to(a,b,d){a=a|0;b=b|0;d=d|0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=a;a=c[3935]|0;c[b>>2]=d;Rp(a,61256,b)|0;za()}function uo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;h=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=h+16|0;i=h;j=h+24|0;c[j>>2]=Xp(e)|0;c[i>>2]=61323;c[i+4>>2]=21;c[i+8>>2]=0;c[i+12>>2]=0;if((Hc(f,64,j,4,b,64,i)|0)==1){a[f>>0]=(d[f>>0]|0)&63|64;j=f+31|0;a[j>>0]=(d[j>>0]|0)&248;l=h;return}if((c[3841]|0)==-1)c[3841]=Wb(1,0,61286,61345,197)|0;if((Xb()|0)>0){Yb(-1,0);Vb()}if(!(c[3841]|0))Vb();c[g>>2]=61286;c[g+4>>2]=197;Zb(1,61295,g);Vb()}function vo(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=Co(c[a+60>>2]|0)|0;a=yo(cb(6,d|0)|0)|0;l=b;return a|0}function wo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))$(32);f=g;c[b+36>>2]=25;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Za(54,f|0)|0):0)a[b+75>>0]=-1;f=Bo(b,d,e)|0;l=g;return f|0}function xo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((yo(jb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function yo(a){a=a|0;if(a>>>0>4294963200){c[(zo()|0)>>2]=0-a;a=-1}return a|0}function zo(){return (Ao()|0)+64|0}function Ao(){return 15492}function Bo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;o=l;l=l+48|0;if((l|0)>=(m|0))$(48);k=o+16|0;g=o;f=o+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=yo(nb(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;q=c[f+4>>2]|0;p=g>>>0>q>>>0;f=p?f+8|0:f;b=(p<<31>>31)+b|0;q=g-(p?q:0)|0;c[f>>2]=(c[f>>2]|0)+q;p=f+4|0;c[p>>2]=(c[p>>2]|0)-q;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=yo(nb(146,k|0)|0)|0;if((e|0)==(g|0)){n=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else n=3;while(0);if((n|0)==3){q=c[a+44>>2]|0;c[a+16>>2]=q+(c[a+48>>2]|0);c[i>>2]=q;c[j>>2]=q}l=o;return d|0}function Co(a){a=a|0;return a|0}function Do(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,n=0;k=l;l=l+32|0;if((l|0)>=(m|0))$(32);f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;n=c[j>>2]|0;c[g>>2]=e-((n|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=n;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=yo(mb(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function Eo(){return 70776}function Fo(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function Go(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function Ho(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;Vo();c[e>>2]=a;c[e+4>>2]=b;b=yo(Ta(91,e|0)|0)|0;l=d;return b|0}function Io(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;n=c[b+8>>2]|0;o=(c[b>>2]|0)==-1794895138;h=er(n|0)|0;h=o?n:h;n=c[b+12>>2]|0;f=er(n|0)|0;f=o?n:f;n=c[b+16>>2]|0;g=er(n|0)|0;g=o?n:g;a:do if((h>>>0<d>>>2>>>0?(n=d-(h<<2)|0,f>>>0<n>>>0&g>>>0<n>>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){i=h>>>1;j=l+i|0;k=j<<1;p=k+n|0;f=c[b+(p<<2)>>2]|0;g=er(f|0)|0;g=o?f:g;p=c[b+(p+1<<2)>>2]|0;f=er(p|0)|0;f=o?p:f;if(!(f>>>0<d>>>0&g>>>0<(d-f|0)>>>0)){f=0;break a}if(a[b+(f+g)>>0]|0){f=0;break a}f=Go(e,b+f|0)|0;if(!f)break;if((h|0)==1){f=0;break a}p=(f|0)<0;l=p?l:j;h=p?i:h-i|0}p=k+m|0;f=c[b+(p<<2)>>2]|0;g=er(f|0)|0;g=o?f:g;p=c[b+(p+1<<2)>>2]|0;f=er(p|0)|0;f=o?p:f;if(f>>>0<d>>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function Jo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)f=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);f=(f&255)-(d[c>>0]|0)|0}return f|0}function Ko(b,c){b=b|0;c=c|0;b=Uo(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function Lo(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Mo(a,b,c){a=a|0;b=b|0;c=c|0;c=Oo(a,b,c,-1,0)|0;return c|0}function No(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=S(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function Oo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+128|0;if((l|0)>=(m|0))$(128);h=j;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;Po(h,0);d=Qo(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[g>>2]|0));l=j;return d|0}function Po(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 Qo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(zo()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Ro(b)|0}while((Lo(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=Ro(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Ro(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Ro(b)|0;if((d[61369+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){Po(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[61369+i>>0]|0)>>>0<e>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;Po(b,0);c[(zo()|0)>>2]=22;h=0;g=0;break a}}while(0);if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=Ro(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}j=e+-48|0;if(j>>>0<10){m=j;while(1){j=kr(i|0,f|0,10,0)|0;k=D;l=((m|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&j>>>0>~m>>>0){j=e;e=m;break}i=_q(j|0,k|0,m|0,l|0)|0;f=D;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=Ro(b)|0;k=e+-48|0;if(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378))m=k;else{j=e;e=k;break}}if(e>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;c:do if((n|0)==46){if(!(e+-1&e)){n=a[61625+((e*23|0)>>>5&7)>>0]|0;f=a[61369+i>>0]|0;j=f&255;if(j>>>0<e>>>0){i=0;k=j;do{i=k|i<<n;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=Ro(b)|0;f=a[61369+j>>0]|0;k=f&255}while(i>>>0<134217728&k>>>0<e>>>0);k=0}else{j=i;k=0;i=0}l=gr(-1,-1,n|0)|0;m=D;if((f&255)>>>0>=e>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break}else j=k;while(1){i=mr(i|0,j|0,n|0)|0;k=D;i=f&255|i;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=Ro(b)|0;f=a[61369+j>>0]|0;if((f&255)>>>0>=e>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break c}else j=k}}f=a[61369+i>>0]|0;j=f&255;if(j>>>0<e>>>0){i=0;k=j;do{i=k+(S(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=Ro(b)|0;f=a[61369+j>>0]|0;k=f&255}while(i>>>0<119304647&k>>>0<e>>>0);k=0}else{j=i;i=0;k=0}if((f&255)>>>0<e>>>0){n=ir(-1,-1,e|0,0)|0;o=D;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break c}k=kr(i|0,m|0,e|0,0)|0;l=D;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break c}i=_q(f|0,0,k|0,l|0)|0;k=D;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=Ro(b)|0;f=a[61369+j>>0]|0;if((f&255)>>>0>=e>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if((d[61369+j>>0]|0)>>>0<e>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Ro(b)|0}while((d[61369+i>>0]|0)>>>0<e>>>0);c[(zo()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0<h>>>0|(e|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(zo()|0)>>2]=34;g=_q(g|0,h|0,-1,-1)|0;h=D;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(zo()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=Xq(i^j|0,e^g|0,j|0,g|0)|0;h=D}while(0);D=h;return g|0}function Ro(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=So(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function So(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=e;if((To(a)|0)==0?(pb[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function To(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)pb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function Uo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(Fo(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=S(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function Vo(){return}function Wo(a){a=a|0;return Xo(a)|0}function Xo(a){a=a|0;return ((a|0)==32|(a|0)==9)&1|0}function Yo(a){a=a|0;var b=0;b=(Zo(a)|0)==0;return (b?a:a|32)|0}function Zo(a){a=a|0;return (a+-65|0)>>>0<26|0}function _o(a){a=a|0;return ap(a,0)|0}function $o(a){a=a|0;return ap(a,1)|0}function ap(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(f<<1)+-1|0;l=f+-1|0;a:do if(!((c+-43008|0)>>>0<22272|((c+-11776|0)>>>0<30784|((c+-1536|0)>>>0<2560|(bp(c)|0)==0)))){g=(f|0)!=0;if(g&(c+-4256|0)>>>0<46){if((c|0)>4293)switch(c|0){case 4295:case 4301:break;default:break a}c=c+7264|0;break}if((c+-11520|0)>>>0<38&(g^1)){if((c|0)>11557)switch(c|0){case 11559:case 11565:break;default:break a}c=c+-7264|0;break}else g=0;do{i=a[18762+(g<<2)+2>>0]|0;j=i<<24>>24;h=c-(e[18762+(g<<2)>>1]|0)|0;if((h-(j&l)|0)>>>0<(d[18762+(g<<2)+3>>0]|0)>>>0){m=13;break}g=g+1|0}while((g|0)!=61);if((m|0)==13)if(i<<24>>24==1){c=f+c-(h&1)|0;break}else{c=(S(j,k)|0)+c|0;break}i=1-f|0;g=b[18274+(i<<1)>>1]|0;b:do if(g<<16>>16){h=0;while(1){if((g&65535|0)==(c|0))break;h=h+1|0;g=b[18274+(h<<2)+(i<<1)>>1]|0;if(!(g<<16>>16))break b}c=e[18274+(h<<2)+(f<<1)>>1]|0;break a}while(0);return ((c+-66600+(f*40|0)|0)>>>0<40?c+-40+(f*80|0)|0:c)|0}while(0);return c|0}function bp(a){a=a|0;if(a>>>0<131072)a=(d[61634+((d[61634+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=a>>>0<196606&1;return a|0}function cp(a){a=a|0;return (a+-97|0)>>>0<26|0}function dp(a){a=a|0;return ep(a,c[(Ao()|0)+188>>2]|0)|0}function ep(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[64610+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=64698;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=64698;else{f=64698;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return fp(f,c[e+20>>2]|0)|0}function fp(a,b){a=a|0;b=b|0;return gp(a,b)|0}function gp(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Io(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function hp(a){a=a|0;if(!a)a=0;else a=(ip(16072,a)|0)!=0;return a&1|0}function ip(a,b){a=a|0;b=b|0;var d=0;if(!b)a=a+((jp(a)|0)<<2)|0;else{while(1){d=c[a>>2]|0;if((d|0)==0|(d|0)==(b|0))break;else a=a+4|0}a=d|0?a:0}return a|0}function jp(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function kp(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function lp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=f;c[g>>2]=e;e=mp(a,b,d,g)|0;l=f;return e|0}function mp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+128|0;if((l|0)>=(m|0))$(128);g=o+124|0;n=o;h=n;i=16160;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[(zo()|0)>>2]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[n+48>>2]=k;g=n+20|0;c[g>>2]=b;c[n+44>>2]=b;d=b+k|0;b=n+16|0;c[b>>2]=d;c[n+28>>2]=d;d=np(n,e,f)|0;if(k){n=c[g>>2]|0;a[n+(((n|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=o;return d|0}function np(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+224|0;if((l|0)>=(m|0))$(224);o=t+120|0;q=t+80|0;r=t;s=t+136|0;f=q;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((op(0,d,o,r,q)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)p=pp(b)|0;else p=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=s;i=b+28|0;c[i>>2]=s;j=b+20|0;c[j>>2]=s;c[f>>2]=80;k=b+16|0;c[k>>2]=s+80;e=op(b,d,o,r,q)|0;if(h){pb[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=op(b,d,o,r,q)|0;f=c[b>>2]|0;c[b>>2]=f|n;if(p|0)qp(b);e=(f&32|0)==0?e:-1}l=t;return e|0}
+function Pf(b){b=b|0;var d=0;if(!b){Tn(22);d=0;return d|0}if(!(c[17594]|0)){d=Xf(b)|0;return d|0}d=Xf(b+5|0)|0;if(!d){d=0;return d|0}a[d>>0]=b;a[d+1>>0]=b>>>8;a[d+2>>0]=b>>>16;a[d+3>>0]=-52;a[d+(b+4)>>0]=-86;d=d+4|0;return d|0}function Qf(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=j+8|0;f=j;if(!(c[17594]|0))if(!(ag(b)|0)){e=Rq(b,e)|0;l=j;return e|0}else{e=$f(b,e)|0;l=j;return e|0}if(!b){if(!e){Tn(22);e=0;l=j;return e|0}f=Oq(e+5|0)|0;if(!f){e=0;l=j;return e|0}a[f>>0]=e;a[f+1>>0]=e>>>8;a[f+2>>0]=e>>>16;a[f+3>>0]=85;a[f+(e+4)>>0]=-86;e=f+4|0;l=j;return e|0}h=a[b+-1>>0]|0;switch(h<<24>>24){case -52:case 85:break;default:{c[f>>2]=b;c[f+4>>2]=h&255;Me(22844,f)}}i=d[b+-3>>0]<<8|d[b+-4>>0]|d[b+-2>>0]<<16;if((a[b+i>>0]|0)!=-86){c[g>>2]=b;c[g+4>>2]=h&255;Me(22885,g)}if(i>>>0>=e>>>0){e=b;l=j;return e|0}f=(e|0)==0;do if(h<<24>>24==-52){if(f){Tn(22);e=0;l=j;return e|0}f=Xf(e+5|0)|0;if(!f){e=0;l=j;return e|0}else{a[f>>0]=e;a[f+1>>0]=e>>>8;a[f+2>>0]=e>>>16;a[f+3>>0]=-52;a[f+(e+4)>>0]=-86;break}}else{if(f){Tn(22);e=0;l=j;return e|0}f=Oq(e+5|0)|0;if(!f){e=0;l=j;return e|0}else{a[f>>0]=e;a[f+1>>0]=e>>>8;a[f+2>>0]=e>>>16;a[f+3>>0]=85;a[f+(e+4)>>0]=-86;break}}while(0);h=f+4|0;cr(h|0,b|0,i|0)|0;Yq(h+i|0,0,e-i|0)|0;Rf(b);e=h;l=j;return e|0}function Rf(b){b=b|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=h+8|0;e=h;if(!b){l=h;return}if(!(c[17594]|0))if(!(ag(b)|0)){Pq(b);l=h;return}else{Zf(b);l=h;return}f=a[b+-1>>0]|0;switch(f<<24>>24){case -52:case 85:break;default:{c[e>>2]=b;c[e+4>>2]=f&255;Me(22844,e)}}e=b+-4|0;if((a[b+(d[b+-3>>0]<<8|d[e>>0]|d[b+-2>>0]<<16)>>0]|0)!=-86){c[g>>2]=b;c[g+4>>2]=f&255;Me(22885,g)}if(!(ag(b)|0)){Pq(e);l=h;return}else{Zf(e);l=h;return}}function Sf(a){a=a|0;Vn(1268)|0;c[17595]=a&1;c[17596]=a&2;c[17597]=a&8;c[17598]=a&16;Wn(1268)|0;return}function Tf(){var a=0;Vn(1268)|0;a=(c[17596]|0?2:0)|(c[17595]|0)!=0|(c[17597]|0?8:0)|(c[17598]|0?16:0);Wn(1268)|0;return a|0}function Uf(a){a=a|0;Vn(1268)|0;Vf(a);Wn(1268)|0;return}function Vf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+48|0;if((l|0)>=(m|0))$(48);f=n+40|0;k=n+32|0;j=n+24|0;g=n+16|0;e=n+8|0;d=n;if(!a){c[17599]=1;b=uq()|0;if((b|0)==(wq()|0)){l=n;return}if(xq(b)|0)Me(22925,d);b=uq()|0;if((b|0)!=(wq()|0))Me(22925,d);if(!(xq(0)|0))Me(22925,d);else{l=n;return}}if(c[17600]|0){Le(23124,f);l=n;return}c[17601]=a>>>0<16384?16384:a;if(c[17599]|0)Ne(22948,e);f=Oa(30)|0;f=(f|0)>0?f:4096;f=(c[17601]|0)+-1+f&0-f;c[17601]=f;f=Aq(0,f,3,34,-1,0)|0;c[17602]=f;if((f|0)==(-1|0)){e=c[17601]|0;f=dp(c[(zo()|0)>>2]|0)|0;c[g>>2]=e;c[g+4>>2]=f;Je(22974,g)}else{c[17603]=1;c[17600]=1}do if(!(c[17600]|0)){a=c[17601]|0;b=Oq(a)|0;c[17602]=b;if(!b){c[j>>2]=a;Me(23022,j)}else{c[17600]=1;h=a;i=b;break}}else{h=c[17601]|0;i=c[17602]|0}while(0);c[i>>2]=h;c[i+4>>2]=0;if(c[17597]|0){l=n;return}Je(23062,k);l=n;return}function Wf(){return 0}function Xf(a){a=a|0;Vn(1268)|0;a=Yf(a)|0;Wn(1268)|0;return a|0}function Yf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=n;if((c[17600]|0)==0?(Vf(32768),(c[17600]|0)==0):0){Je(ze(23170)|0,b);Tn(12);k=0;l=n;return k|0}j=a+31&-32;i=c[17602]|0;k=i;h=(c[17601]|0)+k|0;b=i;a=k;do{if(a>>>0>=h>>>0)break;d=b+4|0;e=c[d>>2]|0;f=c[b>>2]|0;if(!((e&1|0)!=0|f>>>0<j>>>0)){g=7;break}b=b+8+f|0;b=b>>>0<i>>>0?0:b>>>0<h>>>0?b:0;a=b}while(b>>>0>=i>>>0);if((g|0)==7){c[d>>2]=e|1;d=f-j|0;if(d>>>0>8){g=b+8+j|0;c[g>>2]=d+-8;c[g+4>>2]=0;c[b>>2]=j;if((i|0)==(g|0))e=0;else{e=i;while(1){d=e+8+(c[e>>2]|0)|0;d=d>>>0<i>>>0?0:d>>>0<h>>>0?d:0;if((d|0)==(g|0))break;else e=d}}d=c[g>>2]|0;f=g+8+d|0;f=f>>>0<i>>>0?0:f>>>0<h>>>0?f:0;if((e|0)!=0?(c[e+4>>2]&1|0)==0:0){d=d+8+(c[e>>2]|0)|0;c[e>>2]=d}else e=g;if((f|0)!=0?(c[f+4>>2]&1|0)==0:0)c[e>>2]=d+8+(c[f>>2]|0)}}if(a>>>0>=k>>>0?a>>>0<((c[17601]|0)+k|0)>>>0:0)if(!b)a=0;else{if(j|0){c[17604]=(c[17604]|0)+j;c[17605]=(c[17605]|0)+1}a=b+8|0}else{Tn(12);a=0}k=a;l=n;return k|0}function Zf(a){a=a|0;Vn(1268)|0;_f(a);Wn(1268)|0;return}function _f(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;if(!b)return;l=b+-8|0;k=c[l>>2]|0;j=(k|0)!=0&(b&7|0)!=0;if(j){e=b;d=k;do{a[e>>0]=-1;e=e+1|0;d=d+-1|0}while((d|0)!=0&(e&7|0)!=0)}else{e=b;d=k}if(d>>>0>=8){h=d+-8|0;i=h&-8;g=i+8|0;f=e;while(1){m=f;c[m>>2]=-1;c[m+4>>2]=-1;d=d+-8|0;if(d>>>0<=7)break;else f=f+8|0}e=e+g|0;d=h-i|0}if(d|0)while(1){a[e>>0]=-1;d=d+-1|0;if(!d)break;else e=e+1|0}if(j){e=b;d=k;do{a[e>>0]=-86;e=e+1|0;d=d+-1|0}while((d|0)!=0&(e&7|0)!=0)}else{e=b;d=k}if(d>>>0>=8){h=d+-8|0;i=h&-8;g=i+8|0;f=e;while(1){m=f;c[m>>2]=-1431655766;c[m+4>>2]=-1431655766;d=d+-8|0;if(d>>>0<=7)break;else f=f+8|0}e=e+g|0;d=h-i|0}if(d|0)while(1){a[e>>0]=-86;d=d+-1|0;if(!d)break;else e=e+1|0}if(j){e=k;d=b;do{a[d>>0]=85;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0)}else{e=k;d=b}if(e>>>0>=8){g=e+-8|0;h=g&-8;i=h+8|0;f=d;while(1){m=f;c[m>>2]=1431655765;c[m+4>>2]=1431655765;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}e=g-h|0;d=d+i|0}if(e|0)while(1){a[d>>0]=85;e=e+-1|0;if(!e)break;else d=d+1|0}if(j){e=k;d=b;do{a[d>>0]=0;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0)}else{e=k;d=b}if(e>>>0>=8){g=e+-8|0;h=g&-8;i=h+8|0;f=d;while(1){m=f;c[m>>2]=0;c[m+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}e=g-h|0;d=d+i|0}if(e|0)while(1){a[d>>0]=0;e=e+-1|0;if(!e)break;else d=d+1|0}if(k|0){c[17604]=(c[17604]|0)-k;c[17605]=(c[17605]|0)+-1}g=b+-4|0;c[g>>2]=c[g>>2]&-2;g=c[17602]|0;h=g;if((g|0)==(l|0))e=0;else{d=(c[17601]|0)+h|0;e=g;while(1){f=e+8+(c[e>>2]|0)|0;f=f>>>0<g>>>0?0:f>>>0<d>>>0?f:0;if((f|0)==(l|0))break;else e=f}}d=c[l>>2]|0;f=b+d|0;if(f>>>0<g>>>0)f=0;else f=f>>>0<((c[17601]|0)+h|0)>>>0?f:0;if((e|0)!=0?(c[e+4>>2]&1|0)==0:0){d=d+8+(c[e>>2]|0)|0;c[e>>2]=d}else e=l;if(!f)return;if(c[f+4>>2]&1|0)return;c[e>>2]=d+8+(c[f>>2]|0);return}function $f(a,b){a=a|0;b=b|0;var d=0,e=0;Vn(1268)|0;d=c[a+-8>>2]|0;if(d>>>0<=b>>>0){e=Yf(b)|0;if(!e)a=0;else{cr(e|0,a|0,d|0)|0;Yq(e+d|0,0,b-d|0)|0;_f(a);a=e}}Wn(1268)|0;return a|0}function ag(a){a=a|0;var b=0,d=0;if((c[17600]|0)!=0?(b=a,d=c[17602]|0,b>>>0>=d>>>0):0)a=b>>>0<((c[17601]|0)+d|0)>>>0;else a=0;return a&1|0}function bg(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!(c[17600]|0))return;b=c[17602]|0;d=c[17601]|0;if((d|0)!=0&(b&7|0)!=0){f=d;e=b;do{a[e>>0]=-1;e=e+1|0;f=f+-1|0}while((f|0)!=0&(e&7|0)!=0)}else{e=b;f=d}if(f>>>0>=8){i=f+-8|0;j=i&-8;h=j+8|0;g=e;while(1){k=g;c[k>>2]=-1;c[k+4>>2]=-1;f=f+-8|0;if(f>>>0<=7)break;else g=g+8|0}e=e+h|0;f=i-j|0}if(f){d=f;b=e;while(1){a[b>>0]=-1;d=d+-1|0;if(!d)break;else b=b+1|0}b=c[17602]|0;d=c[17601]|0}if((d|0)!=0&(b&7|0)!=0){e=b;f=d;do{a[e>>0]=-86;e=e+1|0;f=f+-1|0}while((f|0)!=0&(e&7|0)!=0)}else{e=b;f=d}if(f>>>0>=8){i=f+-8|0;j=i&-8;h=j+8|0;g=e;while(1){k=g;c[k>>2]=-1431655766;c[k+4>>2]=-1431655766;f=f+-8|0;if(f>>>0<=7)break;else g=g+8|0}e=e+h|0;f=i-j|0}if(f){d=e;b=f;while(1){a[d>>0]=-86;b=b+-1|0;if(!b)break;else d=d+1|0}b=c[17602]|0;d=c[17601]|0}if((d|0)!=0&(b&7|0)!=0)do{a[b>>0]=85;b=b+1|0;d=d+-1|0}while((d|0)!=0&(b&7|0)!=0);if(d>>>0>=8){f=d+-8|0;g=f&-8;h=g+8|0;e=b;while(1){k=e;c[k>>2]=1431655765;c[k+4>>2]=1431655765;d=d+-8|0;if(d>>>0<=7)break;else e=e+8|0}d=f-g|0;b=b+h|0}if(d|0)while(1){a[b>>0]=85;d=d+-1|0;if(!d)break;else b=b+1|0}b=c[17602]|0;d=c[17601]|0;if((d|0)!=0&(b&7|0)!=0)do{a[b>>0]=0;b=b+1|0;d=d+-1|0}while((d|0)!=0&(b&7|0)!=0);if(d>>>0>=8){f=d+-8|0;g=f&-8;h=g+8|0;e=b;while(1){k=e;c[k>>2]=0;c[k+4>>2]=0;d=d+-8|0;if(d>>>0<=7)break;else e=e+8|0}d=f-g|0;b=b+h|0}if(d|0)while(1){a[b>>0]=0;d=d+-1|0;if(!d)break;else b=b+1|0}if(c[17603]|0)Ho(c[17602]|0,c[17601]|0)|0;c[17602]=0;c[17600]=0;c[17601]=0;return}function cg(){var a=0,b=0,d=0,e=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);a=b;Vn(1268)|0;if(!(c[17600]|0)){Wn(1268)|0;l=b;return}e=c[17601]|0;d=c[17605]|0;c[a>>2]=c[17604];c[a+4>>2]=e;c[a+8>>2]=d;Je(23231,a);Wn(1268)|0;l=b;return}function dg(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+272|0;if((l|0)>=(m|0))$(272);d=f+8|0;b=f;e=f+16|0;if(c[17606]|0)if((c[17607]|0)==1)Ie(23272,23278,114,23285);else{eg(5);fg()}c[17606]=1;a:do if(a){if(c[17607]|0)Ie(23312,23278,121,23285)}else{if(!(vq(23335,0)|0)){if(!(c[17607]|0))break;Ie(23312,23278,132,23285)}a=aq(23360,23390)|0;b:do if(!a){a=c[(zo()|0)>>2]|0;switch(a|0){case 2:case 13:break b;default:{}}if(!(vq(23392,0)|0)){e=dp(a)|0;c[b>>2]=23360;c[b+4>>2]=e;Je(23406,b);za()}}else{if(Sp(e,256,a)|0?Fq(e)|0:0){bq(a)|0;if(!(c[17607]|0))break a;else Ie(23312,23278,151,23285)}bq(a)|0}while(0);c[17607]=1;l=f;return}while(0);a=Un(1312)|0;if(a|0){c[d>>2]=Pn(a)|0;Je(23450,d);za()}a=aq(23335,23390)|0;if(a|0){if(Sp(e,256,a)|0?Fq(e)|0:0)c[17608]=1;bq(a)|0}eg(1);l=f;return}function eg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;if((l|0)>=(m|0))$(48);h=i+24|0;f=i+16|0;e=i+8|0;d=i;b=Vn(1312)|0;if(b|0){c[d>>2]=Pn(b)|0;Je(23505,d);za()}d=c[17609]|0;switch(d|0){case 0:{b=a+-1|0;if(b>>>0<5?(25>>>(b&31)&1)!=0:0)b=14;else b=17;break}case 1:{b=a+-2|0;if(b>>>0<4?(13>>>(b&15)&1)!=0:0)b=14;else b=17;break}case 2:{if((a+-3|0)>>>0<3)b=14;else b=17;break}case 3:{b=a+-2|0;if(b>>>0<5?(29>>>(b&31)&1)!=0:0)b=14;else b=17;break}case 4:{b=a+-2|0;if(b>>>0<5?(29>>>(b&31)&1)!=0:0)b=14;else b=17;break}case 5:{if((a|0)==6)b=14;else b=17;break}default:b=17}if((b|0)==14){c[17609]=a;b=Wn(1312)|0;if(b|0){c[e>>2]=Pn(b)|0;Je(23560,e);za()}if(!(Ee(2)|0)){l=i;return}else g=1}else if((b|0)==17){b=Wn(1312)|0;if(!b)g=0;else{c[f>>2]=Pn(b)|0;Je(23560,f);za()}}switch(d|0){case 0:{d=23669;break}case 1:{d=23664;break}case 2:{d=23654;break}case 3:{d=23642;break}case 4:{d=23636;break}case 5:{d=23624;break}case 6:{d=23615;break}default:d=37665}switch(a|0){case 0:{b=23669;break}case 1:{b=23664;break}case 2:{b=23654;break}case 3:{b=23642;break}case 4:{b=23636;break}case 5:{b=23624;break}case 6:{b=23615;break}default:b=37665}c[h>>2]=d;c[h+4>>2]=b;c[h+8>>2]=g?23678:23686;Je(23693,h);if(g){l=i;return}else fg()}function fg(){$p(0)|0;za()}function gg(){return c[17607]^1|0}function hg(){return ((c[17607]|0)==1?0:c[17608]|0)|0}function ig(){c[17608]=1;return}function jg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+48|0;if((l|0)>=(m|0))$(48);e=g+40|0;f=g+32|0;d=g+24|0;b=g;if((c[17607]|0)==1)Ie(23733,23278,295,23752);if(c[17608]|0){eg(4);c[b>>2]=71847;c[b+4>>2]=23278;c[b+8>>2]=300;c[b+12>>2]=23852;c[b+16>>2]=23752;c[b+20>>2]=a|0?a:23779;Je(23804,b);l=g;return}a=Vn(1312)|0;if(a|0){c[d>>2]=Pn(a)|0;Je(23505,d);za()}if(!(c[17610]|0)){c[17610]=1;a=Wn(1312)|0;if(!a){l=g;return}else{c[f>>2]=Pn(a)|0;Je(23560,f);za()}}else{a=Wn(1312)|0;if(!a){l=g;return}else{c[e>>2]=Pn(a)|0;Je(23560,e);za()}}}function kg(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;h=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=h;if((c[17607]|0)==1){l=h;return}i=(e|0)!=0;eg(i?5:4);e=(d|0)!=0;c[g>>2]=i?23864:71847;c[g+4>>2]=a;c[g+8>>2]=b;c[g+12>>2]=e?23852:71847;c[g+16>>2]=e?d:71847;c[g+20>>2]=f|0?f:23779;Je(23804,g);l=h;return}function lg(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;if((c[17607]|0)==1){d=0;l=e;return d|0}a=Vn(1312)|0;if(a|0){c[b>>2]=Pn(a)|0;Je(23505,b);za()}a=c[17610]|0;b=Wn(1312)|0;if(!b){d=a;l=e;return d|0}else{c[d>>2]=Pn(b)|0;Je(23560,d);za()}return 0}function mg(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=h+24|0;e=h+16|0;d=h+8|0;b=h;if((c[17607]|0)==1){g=1;l=h;return g|0}a=Vn(1312)|0;if(a|0){c[b>>2]=Pn(a)|0;Je(23505,b);za()}a=c[17609]|0;do if((a|0)==1){a=Wn(1312)|0;if(a|0){c[d>>2]=Pn(a)|0;Je(23560,d);za()}ng(0)|0;a=Vn(1312)|0;if(!a){f=c[17609]|0;break}else{c[e>>2]=Pn(a)|0;Je(23505,e);za()}}else f=a;while(0);a=Wn(1312)|0;if(!a){g=(f|0)==3&1;l=h;return g|0}else{c[g>>2]=Pn(a)|0;Je(23560,g);za()}return 0}function ng(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if((c[17607]|0)!=1)eg(2);b=Dg(2,a,1)|0;g=(b|0)!=0;if(g)b=Pn(b)|0;else b=0;og(37899,2,0,b);f=Dg(7,a,1)|0;if(!f)b=0;else b=Pn(f)|0;og(37899,7,0,b);e=Dg(8,a,1)|0;if(!e)b=0;else b=Pn(e)|0;og(37899,8,0,b);b=Dg(9,a,1)|0;if(!b)d=0;else d=Pn(b)|0;og(37899,9,0,d);do if(!(f|g&1|e|b)){b=uh(2,a,1)|0;h=(b|0)!=0;if(h)b=Pn(b)|0;else b=0;og(42873,2,0,b);g=uh(11,a,1)|0;if(!g)b=0;else b=Pn(g)|0;og(42873,11,0,b);f=uh(8,a,1)|0;if(!f)b=0;else b=Pn(f)|0;og(42873,8,0,b);e=uh(9,a,1)|0;if(!e)b=0;else b=Pn(e)|0;og(42873,9,0,b);b=uh(10,a,1)|0;if(!b)d=0;else d=Pn(b)|0;og(42873,10,0,d);if(!(g|h&1|f|e|b)){b=ah(2,a,1)|0;h=(b|0)!=0;if(h)b=Pn(b)|0;else b=0;og(36051,2,0,b);g=ah(11,a,1)|0;if(!g)b=0;else b=Pn(g)|0;og(36051,11,0,b);f=ah(8,a,1)|0;if(!f)b=0;else b=Pn(f)|0;og(36051,8,0,b);e=ah(9,a,1)|0;if(!e)b=0;else b=Pn(e)|0;og(36051,9,0,b);b=ah(10,a,1)|0;if(!b)d=0;else d=Pn(b)|0;og(36051,10,0,d);if(!(g|h&1|f|e|b)){b=Ij(1)|0;if(b|0){og(52223,0,0,Pn(b)|0);d=50;b=4;break}og(52223,0,0,0);b=Xh(1,a,1)|0;e=(b|0)!=0;if(e)b=Pn(b)|0;else b=0;og(40871,1,0,b);b=Xh(17,a,1)|0;if(!b){og(40871,17,0,0);d=e?50:0;b=e?4:3;break}else{og(40871,17,0,Pn(b)|0);d=50;b=4;break}}else{d=50;b=4}}else{d=50;b=4}}else{d=50;b=4}while(0);if((c[17607]|0)==1)return d|0;eg(b);return d|0}function og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;if((l|0)>=(m|0))$(32);j=k;h=(e|0)!=0;if(!h?(Ee(2)|0)==0:0){l=k;return}f=Go(a,36051)|0;i=f|0?a:42873;f=(f|0)==0;g=f?23871:71847;do if(Go(a,37899)|0){if(!(Go(a,42873)|0)){a=dh(b)|0;break}if(f){a=dh(b)|0;break}if(!(Go(a,40871)|0))a=Oh(b)|0;else a=71847}else a=ug(b)|0;while(0);f=(d|0)!=0;c[j>>2]=i;c[j+4>>2]=g;c[j+8>>2]=a;c[j+12>>2]=b;c[j+16>>2]=h?e:23877;c[j+20>>2]=f?23882:71847;c[j+24>>2]=f?d:71847;c[j+28>>2]=f?46947:71847;Je(23885,j);l=k;return}function pg(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;if((c[17607]|0)==1){d=1;l=e;return d|0}a=Vn(1312)|0;if(a|0){c[b>>2]=Pn(a)|0;Je(23505,b);za()}a=(c[17609]|0)==3&1;b=Wn(1312)|0;if(!b){d=a;l=e;return d|0}else{c[d>>2]=Pn(b)|0;Je(23560,d);za()}return 0}function qg(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e+8|0;b=e;if((c[17607]|0)==1){d=1;l=e;return d|0}a=Vn(1312)|0;if(a|0){c[b>>2]=Pn(a)|0;Je(23505,b);za()}a=((c[17609]|0)+-3|0)>>>0<2&1;b=Wn(1312)|0;if(!b){d=a;l=e;return d|0}else{c[d>>2]=Pn(b)|0;Je(23560,d);za()}return 0}function rg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=g;if((b|0)!=1){c[f>>2]=b;Ne(23929,f)}b=df(1,(d>>>0<8?8:d)+8|0)|0;if(!b){e=0;l=g;return e|0};a[b>>0]=a[23975]|0;a[b+1>>0]=a[23976]|0;a[b+2>>0]=a[23977]|0;a[b+3>>0]=1;c[b+4>>2]=e;e=b;l=g;return e|0}function sg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+32|0;if((l|0)>=(m|0))$(32);f=g+8|0;e=g;if(!b){c[e>>2]=b;Me(23979,e)}if(Tp(b,23975,3)|0){c[e>>2]=b;Me(23979,e)}e=a[b+3>>0]|0;if((e|0)==(d|0)){l=g;return b+8|0}else{c[f>>2]=d;c[f+4>>2]=b;c[f+8>>2]=e;Me(24027,f)}return 0}function tg(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=f+8|0;d=f;if(!b){l=f;return}if(Tp(b,23975,3)|0){c[d>>2]=b;Me(24084,d)}d=a[b+3>>0]|0;if(d<<24>>24!=1){c[e>>2]=d<<24>>24;Me(24126,e)}d=c[b+4>>2]|0;if(d|0)rb[d&7](b+8|0);cf(b);l=f;return}function ug(a){a=a|0;if((c[1088]|0)!=(a|0))if((c[1806]|0)!=(a|0))if((c[1835]|0)!=(a|0))if((c[1987]|0)!=(a|0))if((c[3027]|0)==(a|0))a=12108;else{a=37665;return a|0}else a=7948;else a=7340;else a=7224;else a=4352;a=c[a+8>>2]|0;return a|0}function vg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=g;c[f>>2]=0;if((d|0)>65535){d=71;b=0}else{d=wg(f,b,d,e)|0;b=c[f>>2]|0}c[a>>2]=d|0?0:b;l=g;return d|0}function wg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=f&1;Gj();if((c[1088]|0)!=(d|0))if((c[1806]|0)!=(d|0))if((c[1835]|0)!=(d|0))if((c[1987]|0)!=(d|0))if((c[3027]|0)==(d|0)){g=12108;i=6}else{h=12;k=0}else{g=7948;i=6}else{g=7340;i=6}else{g=7224;i=6}else{g=4352;i=6}if((i|0)==6){h=(a[g+4>>0]&1)==0?0:12;k=g}g=f>>>0>15&(h|0)==0?12:h;a:do if(!g){b:do if((e|0)>=6){if((e|0)<9){switch(e|0){case 7:case 6:{i=11;break b}case 8:break;default:{h=0;g=71;break a}}if(!(c[k+36>>2]|0)){h=0;g=71;break a}if((c[k+40>>2]|0)==0?1:(c[k+20>>2]|0)!=16){h=0;g=71;break a}else break}if((e|0)<11){switch(e|0){case 9:{i=11;break b}case 10:break;default:{h=0;g=71;break a}}if(!(c[k+44>>2]|0)){h=0;g=71;break a}if(!(c[k+48>>2]|0)){h=0;g=71;break a}if(!(c[k+60>>2]|0)){h=0;g=71;break a}if((c[k>>2]|0)==316)break;else{h=0;g=71;break a}}if((e|0)>=65537)switch(e|0){case 65537:{i=11;break b}default:{h=0;g=71;break a}}switch(e|0){case 11:break;default:{h=0;g=71;break a}}if(!(c[k+36>>2]|0)){h=0;g=71;break a}if(!(c[k+40>>2]|0)){h=0;g=71;break a}if((c[k+20>>2]|0)!=16){h=0;g=71;break a}}else switch(e|0){case 5:case 2:case 3:case 1:{i=11;break b}case 4:{if(!(c[k+44>>2]|0)){h=0;g=71;break a}if(!(c[k+48>>2]|0)){h=0;g=71;break a}else break b}case 0:{if(gg()|0){h=0;g=71;break a}if(!(nf(0)|0)){h=0;g=71;break a}else break b}default:{h=0;g=71;break a}}while(0);if((i|0)==11){if(!(c[k+36>>2]|0)){h=0;g=71;break}if(!(c[k+40>>2]|0)){h=0;g=71;break}}i=(c[k+28>>2]<<1)+511|0;g=(j|0)!=0;if(g)h=ef(1,i)|0;else h=df(1,i)|0;if(!h){g=Sn()|0;break}j=h&15;l=(j|0)==0;j=16-j|0;h=l?h:h+j|0;j=l?0:j;c[h>>2]=g?1183944770:604576100;c[h+4>>2]=i-j;c[h+8>>2]=j;c[h+12>>2]=k;c[h+16>>2]=d;c[h+48>>2]=e;c[h+52>>2]=f;switch(d|0){case 9:case 8:case 7:{c[h+20>>2]=1;c[h+24>>2]=2;c[h+28>>2]=1;c[h+32>>2]=3;c[h+36>>2]=4;c[h+40>>2]=5;c[h+44>>2]=2;break}case 303:case 10:{c[h+32>>2]=6;c[h+24>>2]=7;c[h+36>>2]=8;break}default:{}}if((e|0)==11){a[h+480>>0]=16;g=0}else g=0}else h=0;while(0);c[b>>2]=g|0?0:h;return ((g|0)==0?0:g&65535|536870912)|0}function xg(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!b)return;d=c[b>>2]|0;a:do if((d|0)<1183944770){switch(d|0){case 604576100:break a;default:{}}Be(63,24175)}else{switch(d|0){case 1183944770:break a;default:{}}Be(63,24175)}while(0);c[b>>2]=0;j=c[b+8>>2]|0;d=c[b+4>>2]|0;if((d|0)!=0&(b&7|0)!=0){e=b;do{a[e>>0]=0;e=e+1|0;d=d+-1|0}while((d|0)!=0&(e&7|0)!=0)}else e=b;if(d>>>0>=8){h=d+-8|0;i=h&-8;g=i+8|0;f=e;while(1){k=f;c[k>>2]=0;c[k+4>>2]=0;d=d+-8|0;if(d>>>0<=7)break;else f=f+8|0}e=e+g|0;d=h-i|0}if(d|0)while(1){a[e>>0]=0;d=d+-1|0;if(!d)break;else e=e+1|0}cf(b+(0-j)|0);return}function yg(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,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=n;k=(e|0)==0;i=k?d:f;f=k?b:e;e=c[a+48>>2]|0;a:do if((e|0)<6)switch(e|0){case 1:{k=c[a+12>>2]|0;j=c[k+36>>2]|0;k=c[k+20>>2]|0;if(i>>>0>d>>>0){g=200;break a}if((i>>>0)%(k>>>0)|0|0){g=139;break a}d=(i>>>0)/(k>>>0)|0;if(k>>>0>i>>>0){b=0;l=n;return b|0}i=a+496|0;h=0;e=b;g=0;while(1){b=pb[j&63](i,e,f)|0;h=b>>>0>h>>>0?b:h;g=g+1|0;if(g>>>0>=d>>>0)break;else{e=e+k|0;f=f+k|0}}if(!h){b=0;l=n;return b|0}Te(h+16|0);b=0;l=n;return b|0}case 3:{g=Wl(a,b,d,f,i)|0;break a}case 2:{g=am(a,b,d,f,i)|0;break a}case 5:{g=rm(a,b,d,f,i)|0;break a}case 4:{zb[c[(c[a+12>>2]|0)+44>>2]&1](a+496|0,b,f,i);b=0;l=n;return b|0}case 0:{if((gg()|0)==0?nf(0)|0:0){if((f|0)==(b|0)){b=0;l=n;return b|0}dr(b|0,f|0,i|0)|0;b=0;l=n;return b|0}kg(24224,875,24233,0,24248);g=71;break a}default:{c[h>>2]=e;Me(24270,h)}}else{if((e|0)<9)switch(e|0){case 6:{g=dm(a,b,d,f,i)|0;break a}case 7:{g=Ul(a,b,d,f,i)|0;break a}case 8:{g=_l(a,b,d,f,i)|0;break a}default:{c[h>>2]=e;Me(24270,h)}}if((e|0)<11)switch(e|0){case 9:{g=em(a,b,d,f,i)|0;break a}case 10:{g=tm(a,b,d,f,i)|0;break a}default:{c[h>>2]=e;Me(24270,h)}}if((e|0)>=65537){switch(e|0){case 65537:{g=71;break a}default:{}}c[h>>2]=e;Me(24270,h)}switch(e|0){case 11:{g=nm(a,b,d,f,i)|0;break a}default:{c[h>>2]=e;Me(24270,h)}}}while(0);if(!((b|0)!=0&(g|0)!=0)){b=g;l=n;return b|0}Yq(b|0,66,d|0)|0;b=g;l=n;return b|0}function zg(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,n=0;n=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=n;i=(e|0)==0;e=i?b:e;i=i?d:f;f=c[a+48>>2]|0;a:do if((f|0)<6)switch(f|0){case 1:{k=c[a+12>>2]|0;j=c[k+40>>2]|0;k=c[k+20>>2]|0;if(i>>>0>d>>>0){g=200;break a}if((i>>>0)%(k>>>0)|0|0){g=139;break a}d=(i>>>0)/(k>>>0)|0;if(k>>>0>i>>>0){g=0;break a}i=a+496|0;h=0;f=b;g=0;while(1){b=pb[j&63](i,f,e)|0;h=b>>>0>h>>>0?b:h;g=g+1|0;if(g>>>0>=d>>>0)break;else{f=f+k|0;e=e+k|0}}if(!h){g=0;break a}Te(h+16|0);g=0;break a}case 3:{g=Xl(a,b,d,e,i)|0;break a}case 2:{g=bm(a,b,d,e,i)|0;break a}case 5:{g=rm(a,b,d,e,i)|0;break a}case 4:{zb[c[(c[a+12>>2]|0)+48>>2]&1](a+496|0,b,e,i);g=0;break a}case 0:{if((gg()|0)==0?nf(0)|0:0){if((e|0)==(b|0)){g=0;break a}dr(b|0,e|0,i|0)|0;g=0;break a}kg(24224,992,24303,0,24248);g=71;break a}default:{c[h>>2]=f;Me(24318,h)}}else{if((f|0)<9)switch(f|0){case 6:{g=dm(a,b,d,e,i)|0;break a}case 7:{g=Vl(a,b,d,e,i)|0;break a}case 8:{g=$l(a,b,d,e,i)|0;break a}default:{c[h>>2]=f;Me(24318,h)}}if((f|0)<11)switch(f|0){case 9:{g=hm(a,b,d,e,i)|0;break a}case 10:{g=um(a,b,d,e,i)|0;break a}default:{c[h>>2]=f;Me(24318,h)}}if((f|0)>=65537){switch(f|0){case 65537:{g=71;break a}default:{}}c[h>>2]=f;Me(24318,h)}switch(f|0){case 11:{g=qm(a,b,d,e,i)|0;break a}default:{c[h>>2]=f;Me(24318,h)}}}while(0);l=n;return g|0}function Ag(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+12|0;g=b+496|0;e=pb[c[(c[f>>2]|0)+32>>2]&63](g,d,e)|0;if(e|0){b=b+56|0;a[b>>0]=a[b>>0]&-2;return e|0}d=c[(c[f>>2]|0)+28>>2]|0;cr(g+d|0,g|0,d|0)|0;d=b+56|0;a[d>>0]=a[d>>0]|1;d=c[b+48>>2]|0;if((d|0)<10){switch(d|0){case 9:break;default:return e|0}im(b);return e|0}if((d|0)<65537){switch(d|0){case 10:break;default:return e|0}vm(b);return e|0}else{switch(d|0){case 65537:break;default:return e|0}cm(b)|0;return e|0}return 0}function Bg(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;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);j=k;switch(c[b+48>>2]|0){case 8:{e=Yl(b,d,e)|0;l=k;return e|0}case 9:{e=fm(b,d,e)|0;l=k;return e|0}case 10:{e=sm(b,d,e)|0;l=k;return e|0}case 11:{e=mm(b,d,e)|0;l=k;return e|0}default:{i=b+12|0;g=c[i>>2]|0;f=c[g+60>>2]|0;if(f|0){ub[f&7](b+496|0,d,e);e=0;l=k;return e|0}h=b+64|0;f=g+20|0;Yq(h|0,0,c[f>>2]|0)|0;if(!d){e=b+56|0;a[e>>0]=a[e>>0]&-3}else{f=c[f>>2]|0;if((f|0)==(e|0))f=e;else{c[j>>2]=e;c[j+4>>2]=f;Je(24351,j);kg(24224,682,24394,0,24407);f=c[(c[i>>2]|0)+20>>2]|0}cr(h|0,d|0,(f>>>0<e>>>0?f:e)|0)|0;e=b+56|0;a[e>>0]=a[e>>0]|2}c[b+112>>2]=0;e=0;l=k;return e|0}}return 0}function Cg(){return 0}function Dg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((c[1088]|0)!=(b|0))if((c[1806]|0)!=(b|0))if((c[1835]|0)!=(b|0))if((c[1987]|0)!=(b|0))if((c[3027]|0)==(b|0)){f=12108;h=6}else{f=0;d=0;h=9}else{f=7948;h=6}else{f=7340;h=6}else{f=7224;h=6}else{f=4352;h=6}if((h|0)==6)if((a[f+4>>0]&1)==0?(g=c[f+52>>2]|0,(g|0)!=0):0)f=pb[g&63](b,d,e)|0;else{d=1;h=9}if((h|0)==9)if(!e)f=12;else{if(d?(a[f+4>>0]&1)==0:0)f=37736;else f=d?37697:37716;zb[e&1](37899,b,37758,f);f=12}return ((f|0)==0?0:f&65535|16777216)|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,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+64|0;if((l|0)>=(m|0))$(64);r=s+48|0;p=s+40|0;o=s+32|0;n=s+24|0;k=s+16|0;j=s+8|0;i=s;q=s+52|0;a:do if(!b)if((a|0)!=192){switch(a|0){case 224:case 256:{g=(a|0)==224?2:3;break a}default:{}}if((a|0)!=384)if((a|0)!=521)if((a|0)!=160)if((a|0)!=320)if((a|0)!=512)if((a|0)==511)g=17;else{d=188;l=s;return d|0}else g=12;else g=10;else g=6;else g=5;else g=4}else g=1;else{a=0;while(1){if(!(Go(b,c[1356+(a*48|0)>>2]|0)|0))break;a=a+1|0;if((a|0)==21){a=0;g=2412;h=5;break}}b:do if((h|0)==5){while(1){h=0;f=a+1|0;if(!(Go(b,c[2412+(a<<3)+4>>2]|0)|0))break;if((f|0)==36){a=188;h=47;break}else{a=f;g=2412+(f<<3)|0;h=5}}if((h|0)==47){l=s;return a|0}f=c[g>>2]|0;a=0;while(1){if(!(Go(f,c[1356+(a*48|0)>>2]|0)|0))break b;a=a+1|0;if((a|0)==21){a=188;break}}l=s;return a|0}while(0);if((a|0)<0){d=188;l=s;return d|0}else g=a}while(0);b=c[1356+(g*48|0)>>2]|0;if(!((g+-1|0)>>>0<5|(gg()|0)==0)){d=60;l=s;return d|0}if(e|0)c[e>>2]=c[1356+(g*48|0)+4>>2];if(!d){d=0;l=s;return d|0}c[d>>2]=c[1356+(g*48|0)+12>>2];c[d+4>>2]=c[1356+(g*48|0)+16>>2];a=d+8|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+20>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[i>>2]=Pn(f)|0;Me(35626,i)}}while(0);a=d+12|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+24>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[j>>2]=Pn(f)|0;Me(35626,j)}}while(0);a=d+16|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+28>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[k>>2]=Pn(f)|0;Me(35626,k)}}while(0);a=d+32|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+32>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[n>>2]=Pn(f)|0;Me(35626,n)}}while(0);a=d+36|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+44>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[o>>2]=Pn(f)|0;Me(35626,o)}}while(0);a=d+20|0;do if(!(c[a>>2]|0)){f=Sk(q,4,c[1356+(g*48|0)+36>>2]|0,0,0)|0;if(!f){c[a>>2]=c[q>>2];break}else{c[p>>2]=Pn(f)|0;Me(35626,p)}}while(0);f=d+24|0;do if(!(c[f>>2]|0)){a=Sk(q,4,c[1356+(g*48|0)+40>>2]|0,0,0)|0;if(!a){c[f>>2]=c[q>>2];break}else{c[r>>2]=Pn(a)|0;Me(35626,r)}}while(0);a=d+28|0;if(!(c[a>>2]|0))c[a>>2]=kl(1)|0;a=d+40|0;if(c[a>>2]|0){d=0;l=s;return d|0}c[a>>2]=b;d=0;l=s;return d|0}function Fg(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;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;y=l;l=l+48|0;if((l|0)>=(m|0))$(48);x=y+40|0;v=y+32|0;u=y+24|0;t=y+16|0;s=y+8|0;r=y;w=y+44|0;n=0;while(1){if(!(Go(b,c[1356+(n*48|0)>>2]|0)|0)){b=n;break}n=n+1|0;if((n|0)==21){n=0;p=2412;q=5;break}}a:do if((q|0)==5){while(1){q=0;o=n+1|0;if(!(Go(b,c[2412+(n<<3)+4>>2]|0)|0))break;if((o|0)==36){n=188;q=40;break}else{n=o;p=2412+(o<<3)|0;q=5}}if((q|0)==40){l=y;return n|0}o=c[p>>2]|0;n=0;while(1){if(!(Go(o,c[1356+(n*48|0)>>2]|0)|0)){b=n;break a}n=n+1|0;if((n|0)==21){n=188;break}}l=y;return n|0}while(0);if((b|0)<0){x=188;l=y;return x|0}do if(i|0){n=(c[1356+(b*48|0)+36>>2]|0)+2|0;p=Fo(n)|0;o=(c[1356+(b*48|0)+40>>2]|0)+2|0;p=_e(p+5+(Fo(o)|0)|0)|0;if(!p){x=Sn()|0;l=y;return x|0}a[p>>0]=a[35365]|0;a[p+1>>0]=a[35366]|0;a[p+2>>0]=a[35367]|0;a[p+3>>0]=a[35368]|0;a[p+4>>0]=a[35369]|0;Mp(Np(p+4|0,n)|0,o)|0;Jl(c[i>>2]|0);n=Sk(w,4,p,0,0)|0;if(!n){c[i>>2]=c[w>>2];cf(p);break}else{c[r>>2]=Pn(n)|0;Me(35626,r)}}while(0);if(d|0)c[d>>2]=c[1356+(b*48|0)+12>>2];if(e|0)c[e>>2]=c[1356+(b*48|0)+16>>2];do if(f|0){Jl(c[f>>2]|0);n=Sk(w,4,c[1356+(b*48|0)+20>>2]|0,0,0)|0;if(!n){c[f>>2]=c[w>>2];break}else{c[s>>2]=Pn(n)|0;Me(35626,s)}}while(0);do if(g|0){Jl(c[g>>2]|0);n=Sk(w,4,c[1356+(b*48|0)+24>>2]|0,0,0)|0;if(!n){c[g>>2]=c[w>>2];break}else{c[t>>2]=Pn(n)|0;Me(35626,t)}}while(0);do if(h|0){Jl(c[h>>2]|0);n=Sk(w,4,c[1356+(b*48|0)+28>>2]|0,0,0)|0;if(!n){c[h>>2]=c[w>>2];break}else{c[u>>2]=Pn(n)|0;Me(35626,u)}}while(0);do if(j|0){Jl(c[j>>2]|0);n=Sk(w,4,c[1356+(b*48|0)+32>>2]|0,0,0)|0;if(!n){c[j>>2]=c[w>>2];break}else{c[v>>2]=Pn(n)|0;Me(35626,v)}}while(0);if(!k){x=0;l=y;return x|0}Jl(c[k>>2]|0);n=Sk(w,4,c[1356+(b*48|0)+44>>2]|0,0,0)|0;if(n|0){c[x>>2]=Pn(n)|0;Me(35626,x)}c[k>>2]=c[w>>2];x=0;l=y;return x|0}function Gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+144|0;if((l|0)>=(m|0))$(144);w=C+80|0;v=C+72|0;u=C+64|0;t=C+56|0;s=C+48|0;r=C+40|0;x=C+32|0;q=C;z=C+88|0;A=C+84|0;c[A>>2]=0;f=z;g=f+44|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));B=(d|0)!=0;if(B)c[d>>2]=0;if(!a){if(!((b|0)>-1&b>>>0<22)){d=0;l=C;return d|0}e=c[1356+(b*48|0)>>2]|0;if(!B){d=e;l=C;return d|0}c[d>>2]=c[1356+(b*48|0)+4>>2];d=e;l=C;return d|0}j=z+8|0;k=z+12|0;n=z+16|0;o=z+32|0;p=z+36|0;c[q>>2]=j;c[q+4>>2]=k;c[q+8>>2]=n;c[q+12>>2]=A;c[q+16>>2]=o;c[q+20>>2]=p;c[q+24>>2]=0;a:do switch(((If(a,0,35370,q)|0)&65535)<<16>>16){case 68:{e=uf(a,46925,5)|0;if((e|0)!=0?(h=zf(e,1)|0,sf(e),(h|0)!=0):0){e=0;while(1){f=c[1356+(e*48|0)>>2]|0;if(!(Go(h,f)|0)){b=e;break}e=e+1|0;if((e|0)==21){e=0;g=2412;i=13;break}}b:do if((i|0)==13){while(1){i=0;f=e+1|0;if(!(Go(h,c[2412+(e<<3)+4>>2]|0)|0)){i=14;break}if((f|0)==36)break;else{e=f;g=2412+(f<<3)|0;i=13}}if((i|0)==14){f=c[g>>2]|0;e=0;do{g=c[1356+(e*48|0)>>2]|0;if(!(Go(f,g)|0)){b=e;f=g;break b}e=e+1|0}while((e|0)!=21)}cf(h);d=0;l=C;return d|0}while(0);cf(h);e=(b|0)<0;if(e|B^1){d=e?0:f;l=C;return d|0}c[d>>2]=c[1356+(b*48|0)+4>>2];d=f;l=C;return d|0}else{y=0;e=0}break}case 0:{if(c[A>>2]|0?(i=z+20|0,Pj(i),_g(i,c[A>>2]|0)|0):0){y=0;e=0;break a}b=z+20|0;a=z+24|0;h=0;f=0;g=1356;while(1){tl(f);f=Sk(q,4,c[1356+(h*48|0)+20>>2]|0,0,0)|0;if(f|0){i=24;break}f=c[q>>2]|0;if(!(wk(f,c[j>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+24>>2]|0,0,0)|0;if(f|0){i=27;break}f=c[q>>2]|0;if(!(wk(f,c[k>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+28>>2]|0,0,0)|0;if(f|0){i=30;break}f=c[q>>2]|0;if(!(wk(f,c[n>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+32>>2]|0,0,0)|0;if(f|0){i=33;break}f=c[q>>2]|0;if(!(wk(f,c[o>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+44>>2]|0,0,0)|0;if(f|0){i=36;break}f=c[q>>2]|0;if(!(wk(f,c[p>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+36>>2]|0,0,0)|0;if(f|0){i=39;break}f=c[q>>2]|0;if(!(wk(f,c[b>>2]|0)|0)){tl(f);f=Sk(q,4,c[1356+(h*48|0)+40>>2]|0,0,0)|0;if(f|0){i=42;break}f=c[q>>2]|0;if(!(wk(f,c[a>>2]|0)|0)){i=44;break}}}}}}}g=h+1|0;if((g|0)==21){y=f;e=0;break a}else{h=g;g=1356+(g*48|0)|0}}if((i|0)==24){c[x>>2]=Pn(f)|0;Me(35626,x)}else if((i|0)==27){c[r>>2]=Pn(f)|0;Me(35626,r)}else if((i|0)==30){c[s>>2]=Pn(f)|0;Me(35626,s)}else if((i|0)==33){c[t>>2]=Pn(f)|0;Me(35626,t)}else if((i|0)==36){c[u>>2]=Pn(f)|0;Me(35626,u)}else if((i|0)==39){c[v>>2]=Pn(f)|0;Me(35626,v)}else if((i|0)==42){c[w>>2]=Pn(f)|0;Me(35626,w)}else if((i|0)==44){e=c[g>>2]|0;if(!B){y=f;break a}c[d>>2]=c[1356+(h*48|0)+4>>2];y=f;break a}break}default:{y=0;e=0}}while(0);Jl(y);Jl(c[j>>2]|0);Jl(c[k>>2]|0);Jl(c[n>>2]|0);Jl(c[A>>2]|0);Rj(z+20|0);Jl(c[o>>2]|0);Jl(c[p>>2]|0);d=e;l=C;return d|0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+16|0;if((l|0)>=(m|0))$(16);r=u+12|0;s=u+8|0;t=u+4|0;p=u;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[p>>2]=0;c[a>>2]=0;q=(b|0)!=0;do if(q){f=uf(b,46885,0)|0;if(f|0?(e=Eh(f,p,0)|0,sf(f),e|0):0){j=0;i=0;h=0;g=0;f=0;break}k=uf(b,46925,5)|0;if(k|0?(c[p>>2]&512|0)==0:0){j=0;i=0;h=0;g=0;f=0;o=19;break}e=uf(b,46949,0)|0;if(e){n=Af(e,1,5)|0;f=n;sf(e);if(!n){e=65;j=0;i=0;h=0;g=0;break}}else f=0;e=uf(b,39071,0)|0;if(e){n=Af(e,1,5)|0;g=n;sf(e);if(!n){e=65;j=0;i=0;h=0;break}}else g=0;e=uf(b,35378,0)|0;if(e){n=Af(e,1,5)|0;h=n;sf(e);if(!n){e=65;j=0;i=0;break}}else h=0;e=Ig(s,b,35380,0)|0;if(!e){e=uf(b,39075,0)|0;if(e){n=Af(e,1,5)|0;i=n;sf(e);if(!n){e=65;j=0;break}}else i=0;e=uf(b,35382,0)|0;if(e){n=Af(e,1,5)|0;j=n;sf(e);if(!n)e=65;else o=17}else{j=0;o=17}}else{j=0;i=0}}else{k=0;j=0;i=0;h=0;g=0;f=0;o=17}while(0);if((o|0)==17){e=(k|0)!=0;if((d|0)!=0|e)if(e)o=19;else{k=0;o=20}else{k=0;d=0;n=f;o=37}}if((o|0)==19){e=zf(k,1)|0;sf(k);if(!e)e=65;else{k=e;o=20}}do if((o|0)==20){n=df(1,44)|0;if(!n){e=Sn()|0;cf(k);break}e=Eg(0,k|0?k:d,n,0)|0;cf(k);if(e|0){cf(n);break}d=c[n>>2]|0;k=c[n+4>>2]|0;if(!f){o=n+8|0;f=c[o>>2]|0;c[o>>2]=0}if(!g){o=n+12|0;g=c[o>>2]|0;c[o>>2]=0}if(!h){o=n+16|0;h=c[o>>2]|0;c[o>>2]=0}if(!(c[s>>2]|0)){v=n+20|0;e=n+24|0;o=n+28|0;c[s>>2]=Tj(0,c[v>>2]|0,c[e>>2]|0,c[o>>2]|0)|0;c[v>>2]=0;c[e>>2]=0;c[o>>2]=0}if(!i){v=n+32|0;i=c[v>>2]|0;c[v>>2]=0}if(!j){v=n+36|0;e=c[v>>2]|0;c[v>>2]=0}else e=j;Ug(n);cf(n);j=e;n=f;o=37}while(0);do if((o|0)==37){e=Wj(r,d,k,c[p>>2]|0,n,g,h)|0;if(!e){k=sg(c[r>>2]|0,1)|0;if(h|0){v=k+24|0;tl(c[v>>2]|0);c[v>>2]=h}e=c[s>>2]|0;if(e|0){c[k+28>>2]=e;c[s>>2]=0}if(i|0)c[k+32>>2]=i;if(j|0)c[k+36>>2]=j;if(q){e=Ig(t,b,46923,k)|0;if(e|0){j=0;i=0;h=0;f=n;break}f=uf(b,35384,0)|0;if(f){e=Af(f,1,5)|0;sf(f);if(!e){e=65;j=0;i=0;h=0;f=n;break}}else e=0}else e=0;f=c[t>>2]|0;if(f|0){c[k+40>>2]=f;c[t>>2]=0}if(e|0)c[k+44>>2]=e;c[a>>2]=c[r>>2];c[r>>2]=0;e=0;j=0;i=0;h=0;f=n}else f=n}while(0);tg(c[r>>2]|0);tl(f);tl(g);tl(h);Qj(c[s>>2]|0);tl(i);tl(j);Qj(c[t>>2]|0);tl(0);l=u;return e|0}function Ig(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=uf(d,e,0)|0;if(g){h=Af(g,1,8)|0;sf(g);if(!h){b=65;return b|0}g=Oj(0)|0;if((f|0)!=0?(c[f+4>>2]|0)==1:0)f=Pg(h,f,g,0,0)|0;else f=_g(g,h)|0;tl(h);if(f){Qj(g);b=f;return b|0}}else{j=_e((Fo(e)|0)+3|0)|0;if(!j){b=Sn()|0;return b|0}g=Np(j,e)|0;a[g>>0]=a[35386]|0;a[g+1>>0]=a[35387]|0;a[g+2>>0]=a[35388]|0;g=uf(d,j,0)|0;if(g){f=Af(g,1,5)|0;sf(g);if(!f){cf(j);b=65;return b|0}}else f=0;g=Np(j,e)|0;a[g>>0]=a[35389]|0;a[g+1>>0]=a[35390]|0;a[g+2>>0]=a[35391]|0;g=uf(d,j,0)|0;if(g){h=Af(g,1,5)|0;sf(g);if(!h){tl(f);cf(j);b=65;return b|0}else i=h}else i=0;h=Np(j,e)|0;a[h>>0]=a[35392]|0;a[h+1>>0]=a[35393]|0;a[h+2>>0]=a[35394]|0;h=uf(d,j,0)|0;if(h){g=Af(h,1,5)|0;sf(h);if(!g){tl(i);tl(f);cf(j);b=65;return b|0}}else g=El(0,1)|0;if((f|0)!=0&(i|0)!=0)g=Tj(0,f,i,g)|0;else{tl(f);tl(i);tl(g);g=0}cf(j)}if(!g){b=0;return b|0}c[b>>2]=g;b=0;return b|0}function Jg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;o=l;l=l+112|0;if((l|0)>=(m|0))$(112);j=o+8|0;h=o;b=o+108|0;i=o+64|0;k=o+36|0;n=o+32|0;d=i;e=d+44|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));if(Eg(0,a,i,b)|0){n=0;l=o;return n|0}f=Hl(0)|0;g=Hl(0)|0;d=i+8|0;e=i+12|0;a=Uj(0,0,0,c[d>>2]|0,c[e>>2]|0,0)|0;b=i+20|0;if(Nj(f,g,b,a)|0)Me(35395,h);Yj(a);Rj(b);b=c[d>>2]|0;c[k>>2]=b;p=c[e>>2]|0;c[k+4>>2]=p;d=c[i+16>>2]|0;c[k+8>>2]=d;a=b;e=Yg(f,g,a)|0;c[k+12>>2]=e;h=c[i+32>>2]|0;c[k+16>>2]=h;i=c[i+36>>2]|0;c[k+20>>2]=i;c[k+24>>2]=0;tl(f);tl(g);c[j>>2]=a;c[j+4>>2]=p;c[j+8>>2]=d;c[j+12>>2]=e;c[j+16>>2]=h;c[j+20>>2]=i;if(Df(n,0,35444,j)|0)c[n>>2]=0;if(b|0){b=0;do{Jl(a);b=b+1|0;a=c[k+(b<<2)>>2]|0}while((a|0)!=0)}p=c[n>>2]|0;l=o;return p|0}function Kg(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+16|0;if((l|0)>=(m|0))$(16);x=z+4|0;y=z;q=a[b>>0]|0;a:do if(q<<24>>24){if((Go(b,46949)|0)==0?(f=c[d+16>>2]|0,f|0):0){if(!(e|0?1:(c[f+12>>2]&32|0)==0))break;f=yl(f)|0;break}if((Go(b,39071)|0)==0?(n=c[d+20>>2]|0,n|0):0){if(!(e|0?1:(c[n+12>>2]&32|0)==0)){f=n;break}f=yl(n)|0;break}if((Go(b,35378)|0)==0?(o=c[d+24>>2]|0,o|0):0){if(!(e|0?1:(c[o+12>>2]&32|0)==0)){f=o;break}f=yl(o)|0;break}if((Go(b,39075)|0)==0?(p=c[d+32>>2]|0,p|0):0){if(!(e|0?1:(c[p+12>>2]&32|0)==0)){f=p;break}f=yl(p)|0;break}if((Go(b,35382)|0)==0?(r=c[d+36>>2]|0,r|0):0){if(!(e|0?1:(c[r+12>>2]&32|0)==0)){f=r;break}f=yl(r)|0;break}if((Go(b,35384)|0)==0?(s=c[d+44>>2]|0,s|0):0){if(!(e|0?1:(c[s+12>>2]&32|0)==0)){f=s;break}f=yl(s)|0;break}if(((Go(b,35492)|0)==0?(t=c[d+28>>2]|0,t|0):0)?(u=c[t>>2]|0,u|0):0){if(!(e|0?1:(c[u+12>>2]&32|0)==0)){f=u;break}f=yl(u)|0;break}if(((Go(b,35496)|0)==0?(v=c[d+28>>2]|0,v|0):0)?(w=c[v+4>>2]|0,w|0):0){if(!(e|0?1:(c[w+12>>2]&32|0)==0)){f=w;break}f=yl(w)|0;break}if(((Go(b,35500)|0)==0?(g=c[d+40>>2]|0,g|0):0)?(h=c[g>>2]|0,h|0):0){if(!(e|0?1:(c[h+12>>2]&32|0)==0)){f=h;break}f=yl(h)|0;break}if(((Go(b,35504)|0)==0?(i=c[d+40>>2]|0,i|0):0)?(j=c[i+4>>2]|0,j|0):0){y=c[(c[d+28>>2]|0)+4>>2]|0;if(y|0?!(e|0?1:(c[y+12>>2]&32|0)==0):0){f=j;break}f=yl(j)|0;break}if((Go(b,35380)|0)==0?(k=c[d+28>>2]|0,k|0):0){f=Zg(k,d)|0;break}if(q<<24>>24==113){h=b+1|0;g=a[h>>0]|0;switch(g<<24>>24){case 64:case 0:break;default:{f=0;break a}}i=d+40|0;f=c[i>>2]|0;if(!f){f=$g(0,d,0,0)|0;c[i>>2]=f;if(!f){f=0;break}g=a[h>>0]|0}if(g<<24>>24!=64){f=Zg(f,d)|0;break}if((Go(b+2|0,49614)|0)==0?(c[d>>2]|0)==2:0)if(!(Mg(f,d,0,0,0,x,y)|0)){f=ul(0,c[x>>2]|0,c[y>>2]<<3)|0;break}else{f=0;break}else f=0}else f=0}else f=0;while(0);l=z;return f|0}function Lg(a,b){a=a|0;b=b|0;var d=0;if((Go(a,35380)|0)==0?(d=c[b+28>>2]|0,d|0):0){b=Oj(0)|0;Al(c[b>>2]|0,c[d>>2]|0)|0;Al(c[b+4>>2]|0,c[d+4>>2]|0)|0;Al(c[b+8>>2]|0,c[d+8>>2]|0)|0;return b|0}if(Go(a,46923)|0){b=0;return b|0}d=b+40|0;a=c[d>>2]|0;if(!a){a=$g(0,b,0,0)|0;c[d>>2]=a;if(!a){b=0;return b|0}}b=Oj(0)|0;Al(c[b>>2]|0,c[a>>2]|0)|0;Al(c[b+4>>2]|0,c[a+4>>2]|0)|0;Al(c[b+8>>2]|0,c[a+8>>2]|0)|0;return b|0}function Mg(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))$(16);k=s;o=s+4|0;r=(f|0)!=0;if(r)q=f;else q=Hl(0)|0;p=(g|0)!=0;if(p)n=g;else n=Hl(0)|0;if(!(Nj(q,n,b,e)|0)){b=(h|0)!=0;h=b&1;f=Qk(n,(c[e+12>>2]|0)>>>3,b<<31>>31,o,0)|0;if(!f)f=Sn()|0;else{e=(mk(q,0)|0)!=0;g=c[o>>2]|0;if(e&(g|0)!=0){e=f+(g+((b^1)<<31>>31))|0;a[e>>0]=d[e>>0]|0|128}if(b)a[f>>0]=64;c[i>>2]=f;c[j>>2]=(c[o>>2]|0)+h;f=0}}else{Le(35508,k);f=63}if(!r)tl(q);if(p){l=s;return f|0}tl(n);l=s;return f|0}function Ng(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);j=o+12|0;i=o+8|0;k=o+4|0;n=o;if(!b){n=65;l=o;return n|0}if(!(c[b+12>>2]&4)){n=65;l=o;return n|0}f=wl(b,i)|0;if(!f){n=65;l=o;return n|0}h=(c[i>>2]|0)+7|0;g=h>>>3;c[i>>2]=g;if(h>>>0<16|(g&1|0)==0){n=0;l=o;return n|0}switch(a[f>>0]|0){case 4:{h=f+1|0;f=Sk(k,1,h,(g+-1|0)>>>1,0)|0;if(f|0){n=f;l=o;return n|0}f=((c[i>>2]|0)+-1|0)>>>1;f=Sk(n,1,h+f|0,f,0)|0;g=c[k>>2]|0;if(f|0){tl(g);n=f;l=o;return n|0}h=Qk(c[n>>2]|0,e>>>3,0,j,0)|0;if(!h){g=Sn()|0;f=0}else{e=(mk(g,0)|0)!=0;f=c[j>>2]|0;if(e&(f|0)!=0){f=h+(f+-1)|0;a[f>>0]=d[f>>0]|128;f=c[j>>2]|0}g=0;f=f<<3}tl(c[k>>2]|0);tl(c[n>>2]|0);if(g|0){n=g;l=o;return n|0}ul(b,h,f)|0;n=0;l=o;return n|0}case 64:{if(vl(b,f+1|0,(g<<3)+-8|0)|0){n=0;l=o;return n|0}n=Sn()|0;l=o;return n|0}default:{n=0;l=o;return n|0}}return 0}function Og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);p=q+8|0;g=q;n=q+12|0;if((c[e+4>>2]|0)!=1){d=69;l=q;return d|0}do if(!(c[17611]|0)){f=Sk(n,4,35561,0,0)|0;if(!f){c[17611]=c[n>>2];break}else{c[g>>2]=Pn(f)|0;Me(35626,g)}}while(0);if(!(c[17612]|0))c[17612]=El(0,7)|0;g=Hl(0)|0;h=Hl(0)|0;i=Hl(0)|0;j=Hl(0)|0;k=e+16|0;Lk(g,b,b,c[k>>2]|0);Lk(h,c[e+24>>2]|0,g,c[k>>2]|0);gk(g,g,1);ek(h,h,1);e=Ml(3)|0;Mk(i,h,e,c[k>>2]|0);Mk(j,h,c[17612]|0,c[k>>2]|0);Lk(j,j,g,c[k>>2]|0);Mk(j,j,c[17611]|0,c[k>>2]|0);Lk(j,j,g,c[k>>2]|0);Lk(a,j,i,c[k>>2]|0);Lk(j,a,a,c[k>>2]|0);Lk(j,j,h,c[k>>2]|0);zl(j,j);if(!(wk(j,g)|0)){f=c[17613]|0;do if(!f){f=Sk(n,4,35661,0,0)|0;if(!f){o=c[n>>2]|0;c[17613]=o;break}else{c[p>>2]=Pn(f)|0;Me(35626,p)}}else o=f;while(0);Lk(a,a,o,c[k>>2]|0);Lk(j,a,a,c[k>>2]|0);Lk(j,j,h,c[k>>2]|0);zl(j,j);f=(wk(j,g)|0)==0;f=f?65:0}else f=0;if((mk(a,0)|0)!=((d|0)!=0|0))hk(a,c[k>>2]|0,a);tl(j);tl(i);tl(h);tl(g);d=f;l=q;return d|0}function Pg(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+16|0;if((l|0)>=(m|0))$(16);k=r+12|0;q=r+8|0;n=r+4|0;o=r;if((b|0)!=0?(c[b+12>>2]&4|0)!=0:0){j=wl(b,q)|0;if(!j){f=65;l=r;return f|0}i=(c[q>>2]|0)+7|0;b=i>>>3;c[q>>2]=b;a:do if(!(i>>>0<16|(b&1|0)==0)){switch(a[j>>0]|0){case 4:break;case 64:{b=b+-1|0;c[q>>2]=b;j=j+1|0;break a}default:break a}i=j+1|0;b=Sk(n,1,i,(b+-1|0)>>>1,0)|0;b:do if(!b){b=((c[q>>2]|0)+-1|0)>>>1;b=Sk(o,1,i+b|0,b,0)|0;if(b|0){tl(c[n>>2]|0);break}do if(g|0){b=c[n>>2]|0;i=Qk(c[o>>2]|0,(c[e+12>>2]|0)>>>3,0,k,0)|0;if(!i){b=Sn()|0;if(!b)break;tl(c[n>>2]|0);tl(c[o>>2]|0);break b}e=(mk(b,0)|0)!=0;b=c[k>>2]|0;if(e&(b|0)!=0){b=i+(b+-1)|0;a[b>>0]=d[b>>0]|128;b=c[k>>2]|0}c[g>>2]=i;c[h>>2]=b}while(0);Cl(c[f>>2]|0,c[n>>2]|0);Cl(c[f+4>>2]|0,c[o>>2]|0);El(c[f+8>>2]|0,1)|0;b=0}while(0);f=b;l=r;return f|0}while(0);b=_e(b|0?b:1)|0;if(!b){f=Sn()|0;l=r;return f|0}i=c[q>>2]|0;cr(b|0,j|0,i|0)|0;k=i>>>1;if(k){n=i+-1|0;j=0;do{t=b+j|0;s=a[t>>0]|0;o=b+(n-j)|0;a[t>>0]=a[o>>0]|0;a[o>>0]=s;j=j+1|0}while((j|0)!=(k|0))}}else p=24;do if((p|0)==24){b=Ok(b,(c[e+12>>2]|0)>>>3,q,0)|0;if(b|0){i=c[q>>2]|0;break}t=Sn()|0;l=r;return t|0}while(0);if(!i){n=0;i=0}else{n=d[b>>0]|0;a[b>>0]=n&127;n=n>>>7;i=c[q>>2]|0}o=f+4|0;Rk(c[o>>2]|0,b,i,0);if(g){i=c[q>>2]|0;if((n|0)!=0&(i|0)!=0){a[b>>0]=d[b>>0]|128;i=c[q>>2]|0}k=i>>>1;if(k|0){j=i+-1|0;i=0;do{p=b+i|0;s=a[p>>0]|0;t=b+(j-i)|0;a[p>>0]=a[t>>0]|0;a[t>>0]=s;i=i+1|0}while((i|0)!=(k|0))}c[g>>2]=b;if(h|0)c[h>>2]=c[q>>2]}else cf(b);t=Og(c[f>>2]|0,c[o>>2]|0,n,e)|0;El(c[f+8>>2]|0,1)|0;l=r;return t|0}function Qg(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;i=l;l=l+48|0;if((l|0)>=(m|0))$(48);f=i+32|0;g=i;c[b>>2]=0;if(((c[e+12>>2]|0)+7&-8|0)!=256){b=63;l=i;return b|0}h=ef(2,32)|0;if(!h){b=Sn()|0;l=i;return b|0};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;d=Ok(d,0,f,0)|0;if(!d){cf(h);b=Sn()|0;l=i;return b|0}c[g+12>>2]=h;c[g+4>>2]=0;e=c[f>>2]|0;c[g+8>>2]=e>>>0<32?32-e|0:0;c[g+28>>2]=d;c[g+20>>2]=0;c[g+24>>2]=e;e=qh(10,0,h,g,2)|0;cf(d);if(!e){f=a[h>>0]|0;g=h+31|0;d=a[g>>0]|0;k=h+1|0;j=a[k>>0]|0;e=h+30|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+2|0;j=a[e>>0]|0;k=h+29|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+3|0;j=a[k>>0]|0;e=h+28|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+4|0;j=a[e>>0]|0;k=h+27|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+5|0;j=a[k>>0]|0;e=h+26|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+6|0;j=a[e>>0]|0;k=h+25|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+7|0;j=a[k>>0]|0;e=h+24|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+8|0;j=a[e>>0]|0;k=h+23|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+9|0;j=a[k>>0]|0;e=h+22|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+10|0;j=a[e>>0]|0;k=h+21|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+11|0;j=a[k>>0]|0;e=h+20|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+12|0;j=a[e>>0]|0;k=h+19|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+13|0;j=a[k>>0]|0;e=h+18|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;e=h+14|0;j=a[e>>0]|0;k=h+17|0;a[e>>0]=a[k>>0]|0;a[k>>0]=j;k=h+15|0;j=a[k>>0]|0;e=h+16|0;a[k>>0]=a[e>>0]|0;a[e>>0]=j;a[h>>0]=d&63|64;a[g>>0]=f&248;c[b>>2]=h;b=0;l=i;return b|0}else{cf(h);k=e;l=i;return k|0}return 0}function Rg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+32|0;if((l|0)>=(m|0))$(32);j=p+16|0;h=p;Pj(j);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;k=Il(0)|0;n=Hl(0)|0;o=Hl(0)|0;i=$e(64)|0;if(!i){e=Sn()|0;d=0;e=(e|0)==0?0:e&65535|16777216;Rj(j);Jl(k);Jl(n);Jl(o);cf(d);l=p;return e|0}g=Cj(32,2-(f>>>5&1)|0)|0;c[h+12>>2]=g;c[h+8>>2]=32;f=qh(10,0,i,h,1)|0;if(f|0){d=i;e=f;Rj(j);Jl(k);Jl(n);Jl(o);cf(d);l=p;return e|0}c[b+56>>2]=ul(0,g,256)|0;h=a[i>>0]|0;f=i+31|0;g=a[f>>0]|0;s=i+1|0;r=a[s>>0]|0;q=i+30|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+2|0;r=a[q>>0]|0;s=i+29|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+3|0;r=a[s>>0]|0;q=i+28|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+4|0;r=a[q>>0]|0;s=i+27|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+5|0;r=a[s>>0]|0;q=i+26|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+6|0;r=a[q>>0]|0;s=i+25|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+7|0;r=a[s>>0]|0;q=i+24|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+8|0;r=a[q>>0]|0;s=i+23|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+9|0;r=a[s>>0]|0;q=i+22|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+10|0;r=a[q>>0]|0;s=i+21|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+11|0;r=a[s>>0]|0;q=i+20|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+12|0;r=a[q>>0]|0;s=i+19|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+13|0;r=a[s>>0]|0;q=i+18|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;q=i+14|0;r=a[q>>0]|0;s=i+17|0;a[q>>0]=a[s>>0]|0;a[s>>0]=r;s=i+15|0;r=a[s>>0]|0;q=i+16|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;a[i>>0]=g&63|64;a[f>>0]=h&248;Rk(k,i,32,0);cf(i);f=d+20|0;ck(j,k,f,e);if(nf(1)|0)Mj(35726,j,e);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=yl(c[d+8>>2]|0)|0;c[b+12>>2]=yl(c[d+12>>2]|0)|0;c[b+16>>2]=yl(c[d+16>>2]|0)|0;r=b+20|0;Pj(r);Al(c[r>>2]|0,c[f>>2]|0)|0;Al(c[b+24>>2]|0,c[d+24>>2]|0)|0;Al(c[b+28>>2]|0,c[d+28>>2]|0)|0;c[b+32>>2]=yl(c[d+32>>2]|0)|0;c[b+36>>2]=yl(c[d+36>>2]|0)|0;r=b+44|0;Pj(r);Al(c[r>>2]|0,c[j>>2]|0)|0;Al(c[b+48>>2]|0,c[j+4>>2]|0)|0;Al(c[b+52>>2]|0,c[j+8>>2]|0)|0;r=0;s=0;Rj(j);Jl(k);Jl(n);Jl(o);cf(r);l=p;return s|0}function Sg(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=l;l=l+112|0;if((l|0)>=(m|0))$(112);v=G+96|0;n=G+92|0;k=G+88|0;t=G+40|0;C=G+36|0;u=G+32|0;D=G+28|0;s=G+24|0;E=G+12|0;F=G;c[C>>2]=0;c[D>>2]=0;i=t;j=i+48|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));if(!b){F=79;l=G;return F|0}if(!(c[b+12>>2]&4)){F=79;l=G;return F|0}Pj(E);Pj(F);x=Il(0)|0;y=Hl(0)|0;z=Hl(0)|0;A=Hl(0)|0;B=Uj(c[d>>2]|0,c[d+4>>2]|0,0,c[d+8>>2]|0,c[d+12>>2]|0,c[d+16>>2]|0)|0;if(((c[B+12>>2]|0)+7&-8|0)!=256){F=63;l=G;return F|0}j=Qg(k,c[d+56>>2]|0,B)|0;w=c[k>>2]|0;do if(!j){Rk(x,w,32,0);i=w;if(!h){ck(F,x,d+20|0,B);j=Mg(F,B,y,z,0,D,s)|0;if(j|0){i=0;break}if(nf(1)|0)Qe(35747,c[D>>2]|0,c[s>>2]|0)}else{j=Pg(h,B,F,D,s)|0;if(j|0){i=0;break}if(nf(1)|0)Qe(35740,c[D>>2]|0,c[s>>2]|0);if(!(dk(F,B)|0)){j=195;i=0;break}}q=wl(b,n)|0;o=((c[n>>2]|0)+7|0)>>>3;if(nf(1)|0)Qe(35754,q,o);p=t+12|0;c[p>>2]=i;k=t+4|0;c[k>>2]=32;h=t+8|0;c[h>>2]=32;b=t+28|0;c[b>>2]=q;n=t+24|0;c[n>>2]=o;j=qh(g,0,w,t,2)|0;if(!j){i=0;do{H=w+i|0;j=a[H>>0]|0;r=w+(63-i)|0;a[H>>0]=a[r>>0]|0;a[r>>0]=j;i=i+1|0}while((i|0)!=32);if(nf(1)|0)Qe(52990,w,64);Rk(A,w,64,0);ck(E,A,d+20|0,B);if(nf(1)|0)Mj(35761,E,B);j=Mg(E,B,y,z,0,C,u)|0;if(j|0){i=c[C>>2]|0;break}if(!(nf(1)|0)){j=c[C>>2]|0;i=j;r=c[u>>2]|0}else{j=c[C>>2]|0;r=c[u>>2]|0;Qe(35766,j,r);i=j}c[p>>2]=j;c[k>>2]=0;c[h>>2]=r;c[b>>2]=c[D>>2];c[t+20>>2]=0;c[n>>2]=c[s>>2];c[t+44>>2]=q;c[t+36>>2]=0;c[t+40>>2]=o;j=qh(g,0,w,t,3)|0;if(!j){ul(e,i,r<<3)|0;c[C>>2]=0;i=0;do{t=w+i|0;e=a[t>>0]|0;H=w+(63-i)|0;a[t>>0]=a[H>>0]|0;a[H>>0]=e;i=i+1|0}while((i|0)!=32);if(nf(1)|0)Qe(35773,w,64);Rk(f,w,64,0);j=d+32|0;Lk(f,f,x,c[j>>2]|0);ik(f,f,A,c[j>>2]|0);j=Ok(f,32,v,0)|0;if(!j){j=Sn()|0;if(!j){j=0;i=r}else{i=0;break}}else{c[C>>2]=j;i=c[v>>2]|0;c[u>>2]=i}if(nf(1)|0)Qe(35780,j,i);ul(f,j,i<<3)|0;c[C>>2]=0;j=0;i=0}}else i=0}else i=0;while(0);Jl(x);Jl(y);Jl(z);Jl(A);cf(w);Yj(B);Rj(E);Rj(F);cf(c[D>>2]|0);cf(i);H=j;l=G;return H|0}function Tg(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+176|0;if((l|0)>=(m|0))$(176);n=y+100|0;w=y+88|0;x=y+84|0;j=y+80|0;t=y+76|0;p=y+72|0;k=y+104|0;i=y+24|0;u=y+12|0;v=y;c[x>>2]=0;c[t>>2]=0;if(!b){x=79;l=y;return x|0}if(!(e|0?(c[b+12>>2]&4|0)!=0:0)){x=79;l=y;return x|0}if(!(f|0?(c[e+12>>2]&4|0)!=0:0)){x=79;l=y;return x|0}if(!(c[f+12>>2]&4)){x=79;l=y;return x|0}if((g|0)!=10){x=5;l=y;return x|0}Pj(w);Pj(u);Pj(v);q=Hl(0)|0;r=Hl(0)|0;s=Uj(c[d>>2]|0,c[d+4>>2]|0,0,c[d+8>>2]|0,c[d+12>>2]|0,c[d+16>>2]|0)|0;if((c[s+12>>2]&-8|0)!=256){x=63;l=y;return x|0}g=Pg(h,s,w,x,j)|0;do if(!g)if(dk(w,s)|0){if(nf(1)|0)Qe(35747,c[x>>2]|0,c[j>>2]|0);if((c[j>>2]|0)==32){h=wl(b,n)|0;b=((c[n>>2]|0)+7|0)>>>3;if(nf(1)|0)Qe(35754,h,b);o=wl(e,n)|0;g=((c[n>>2]|0)+7|0)>>>3;if(nf(1)|0)Qe(52990,o,g);if((g|0)==32){c[i+12>>2]=o;c[i+4>>2]=0;c[i+8>>2]=32;c[i+28>>2]=c[x>>2];c[i+20>>2]=0;c[i+24>>2]=c[j>>2];c[i+44>>2]=h;c[i+36>>2]=0;c[i+40>>2]=b;g=qh(10,0,k,i,3)|0;if(!g){g=0;do{e=k+g|0;i=a[e>>0]|0;j=k+(63-g)|0;a[e>>0]=a[j>>0]|0;a[j>>0]=i;g=g+1|0}while((g|0)!=32);if(nf(1)|0)Qe(35773,k,64);Rk(q,k,64,0);i=xl(f,n)|0;b=(c[n>>2]|0)+7|0;h=b>>>3;b=b>>>4;if(b|0){e=h+-1|0;g=0;do{k=i+g|0;f=a[k>>0]|0;n=i+(e-g)|0;a[k>>0]=a[n>>0]|0;a[n>>0]=f;g=g+1|0}while((g|0)!=(b|0))}if(nf(1)|0)Qe(52997,i,h);Rk(r,i,h,0);cf(i);if((h|0)==32){ck(u,r,d+20|0,s);ck(v,q,w,s);g=c[v>>2]|0;zl(g,g);ak(u,u,v,s);g=Mg(u,s,r,q,0,t,p)|0;if(!g){if((c[p>>2]|0)!=32){g=8;break}g=(Tp(c[t>>2]|0,o,32)|0)==0;g=g?0:8}}else g=139}}else g=139}else g=139}else g=195;while(0);cf(c[x>>2]|0);cf(c[t>>2]|0);Yj(s);Jl(r);Jl(q);Rj(u);Rj(v);Rj(w);x=g;l=y;return x|0}function Ug(a){a=a|0;var b=0;b=a+8|0;tl(c[b>>2]|0);c[b>>2]=0;b=a+12|0;tl(c[b>>2]|0);c[b>>2]=0;b=a+16|0;tl(c[b>>2]|0);c[b>>2]=0;Rj(a+20|0);b=a+32|0;tl(c[b>>2]|0);c[b>>2]=0;a=a+36|0;tl(c[a>>2]|0);c[a>>2]=0;return}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+48|0;if((l|0)>=(m|0))$(48);d=e;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+40>>2]=c[b+40>>2];c[d+8>>2]=yl(c[b+8>>2]|0)|0;c[d+12>>2]=yl(c[b+12>>2]|0)|0;c[d+16>>2]=yl(c[b+16>>2]|0)|0;f=d+20|0;Pj(f);Al(c[f>>2]|0,c[b+20>>2]|0)|0;Al(c[d+24>>2]|0,c[b+24>>2]|0)|0;Al(c[d+28>>2]|0,c[b+28>>2]|0)|0;c[d+32>>2]=yl(c[b+32>>2]|0)|0;c[d+36>>2]=yl(c[b+36>>2]|0)|0;b=d;d=a+44|0;do{c[a>>2]=c[b>>2];a=a+4|0;b=b+4|0}while((a|0)<(d|0));l=e;return}function Wg(a){a=a|0;switch(a|0){case 0:{a=35795;break}case 1:{a=45456;break}case 2:{a=35787;break}default:a=37665}return a|0}function Xg(a){a=a|0;return ((a|0)==0?35815:(a|0)==1?35807:37665)|0}function Yg(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,n=0,o=0,p=0,q=0;q=l;l=l+32|0;if((l|0)>=(m|0))$(32);p=q+16|0;k=q+8|0;g=q;h=q+24|0;o=q+20|0;i=((lk(e)|0)+7|0)>>>3;j=i<<1|1;n=gf(j)|0;a[n>>0]=4;f=n+1|0;e=Tk(5,f,i,h,b)|0;if(e|0){c[g>>2]=Pn(e)|0;Me(35824,g)}e=c[h>>2]|0;if(i>>>0>e>>>0){g=i-e|0;dr(f+g|0,f|0,e|0)|0;Yq(f|0,0,g|0)|0}b=f+i|0;e=Tk(5,b,i,h,d)|0;if(e|0){c[k>>2]=Pn(e)|0;Me(35824,k)}e=c[h>>2]|0;if(i>>>0>e>>>0){k=i-e|0;dr(b+k|0,b|0,e|0)|0;Yq(b|0,0,k|0)|0}e=Sk(o,5,n,j,0)|0;if(!e){cf(n);l=q;return c[o>>2]|0}else{c[p>>2]=Pn(e)|0;Me(35846,p)}return 0}function Zg(a,b){a=a|0;b=b|0;var d=0,e=0;d=Hl(0)|0;e=Hl(0)|0;if(!(Nj(d,e,a,b)|0))a=Yg(d,e,c[b+16>>2]|0)|0;else a=0;tl(d);tl(e);return a|0}function _g(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=k+12|0;i=k+8|0;j=k+4|0;e=k;do if((d|0)!=0?(c[d+12>>2]&4|0)!=0:0){d=wl(d,e)|0;if(d|0){e=((c[e>>2]|0)+7|0)>>>3;c[h>>2]=e;g=0;break}j=65;l=k;return j|0}else f=6;while(0);do if((f|0)==6){g=((lk(d)|0)+7|0)>>>3;c[h>>2]=g;e=gf(g)|0;d=Tk(5,e,g,h,d)|0;if(!d){d=e;g=e;e=c[h>>2]|0;break}cf(e);j=d;l=k;return j|0}while(0);if(!e){cf(g);j=65;l=k;return j|0}if((a[d>>0]|0)!=4){cf(g);j=69;l=k;return j|0}e=e+-1|0;if(e&1|0){cf(g);j=65;l=k;return j|0}e=e>>>1;c[h>>2]=e;d=d+1|0;e=Sk(i,5,d,e,0)|0;if(e|0){cf(g);j=e;l=k;return j|0}h=c[h>>2]|0;d=Sk(j,5,d+h|0,h,0)|0;cf(g);if(!d){Al(c[b>>2]|0,c[i>>2]|0)|0;Al(c[b+4>>2]|0,c[j>>2]|0)|0;El(c[b+8>>2]|0,1)|0;tl(c[i>>2]|0);tl(c[j>>2]|0);j=0;l=k;return j|0}else{tl(c[i>>2]|0);j=d;l=k;return j|0}return 0}function $g(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=h;if(!d)d=c[b+28>>2]|0;if(!e)e=c[b+44>>2]|0;if(!((d|0)!=0&(e|0)!=0)){b=0;l=h;return b|0}if(!(c[b+16>>2]|0)){b=0;l=h;return b|0}if(!(c[b+20>>2]|0)){b=0;l=h;return b|0}if((c[b>>2]|0)==2?(c[b+24>>2]|0)==0:0){b=0;l=h;return b|0}if((c[b+4>>2]|0)==1?c[b+8>>2]&4096|0:0){if(Qg(f,e,b)|0){b=0;l=h;return b|0}e=Il(0)|0;Rk(e,c[f>>2]|0,32,0);cf(c[f>>2]|0);if(!a){a=Oj(0)|0;if(!a)a=0;else g=15}else g=15;if((g|0)==15)ck(a,e,d,b);tl(e);b=a;l=h;return b|0}if(!a){a=Oj(0)|0;if(!a){b=0;l=h;return b|0}}ck(a,e,d,b);b=a;l=h;return b|0}function ah(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,n=0,o=0,p=0;n=l;l=l+128|0;if((l|0)>=(m|0))$(128);j=n;a:do if(th(b,8,0,0)|0)if(!e)b=5;else{zb[e&1](36051,b,37758,36151);b=5}else switch(b|0){case 2:{b=0;do{a[j+b>>0]=b;b=b+1|0}while((b|0)!=64);b=bh(2,35867,9,j,64,35877,20)|0;if(!b)if(d){a[j>>0]=48;a[j+1>>0]=49;a[j+2>>0]=50;a[j+3>>0]=51;a[j+4>>0]=52;a[j+5>>0]=53;a[j+6>>0]=54;a[j+7>>0]=55;a[j+8>>0]=56;a[j+9>>0]=57;a[j+10>>0]=58;a[j+11>>0]=59;a[j+12>>0]=60;a[j+13>>0]=61;a[j+14>>0]=62;a[j+15>>0]=63;a[j+16>>0]=64;a[j+17>>0]=65;a[j+18>>0]=66;a[j+19>>0]=67;b=bh(2,35898,9,j,20,35908,20)|0;if(!b){b=80;d=0;while(1){a[j+d>>0]=b;d=d+1|0;if((d|0)==100)break;else b=b+1|0}b=bh(2,35929,9,j,100,35939,20)|0;if(!b){b=112;d=0;while(1){a[j+d>>0]=b;d=d+1|0;if((d|0)==49)break;else b=b+1|0}b=bh(2,35960,9,j,49,35970,20)|0;if(!b)b=0;else{d=36036;k=12}}else{d=36021;k=12}}else{d=36006;k=12}}else b=0;else{d=35991;k=12}if((k|0)==12)if(!e)b=50;else{zb[e&1](36051,2,d,b);b=50}break a}case 11:{b=c[677]|0;if(!b){b=0;break a}b:do if(!d){j=c[678]|0;k=Fo(j)|0;d=c[679]|0;d=bh(11,j,k,d,Fo(d)|0,2720,28)|0;if(!d){b=0;break a}}else{f=0;while(1){j=c[2708+(f*40|0)+4>>2]|0;k=Fo(j)|0;d=c[2708+(f*40|0)+8>>2]|0;d=bh(11,j,k,d,Fo(d)|0,2708+(f*40|0)+12|0,28)|0;if(d|0)break b;f=f+1|0;b=c[2708+(f*40|0)>>2]|0;if(!b){b=0;break a}}}while(0);if(!e){b=50;break a}zb[e&1](36051,11,b,d);b=50;break a}case 8:{b=c[747]|0;if(!b){b=0;break a}c:do if(!d){h=c[748]|0;i=Fo(h)|0;d=c[749]|0;d=bh(8,h,i,d,Fo(d)|0,3e3,32)|0;if(!d){f=c[749]|0;f=Ol(f,Fo(f)|0)|0;if(f){d=c[748]|0;Pl(f,d,Fo(d)|0);d=Tl(f,j)|0;if(d)if((c[j>>2]|0)==32?(Tp(d,3e3,32)|0)==0:0){Rl(f);b=0;break a}else{d=f;k=36}else{d=f;k=33}}else d=36056}}else{i=0;while(1){g=2988+(i*44|0)+4|0;p=c[g>>2]|0;o=Fo(p)|0;f=2988+(i*44|0)+8|0;d=c[f>>2]|0;h=2988+(i*44|0)+12|0;d=bh(8,p,o,d,Fo(d)|0,h,32)|0;if(d|0)break c;d=c[f>>2]|0;d=Ol(d,Fo(d)|0)|0;if(!d){d=36056;break c}f=c[g>>2]|0;Pl(d,f,Fo(f)|0);f=Tl(d,j)|0;if(!f){k=33;break c}if((c[j>>2]|0)!=32){k=36;break c}if(Tp(f,h,32)|0){k=36;break c}Rl(d);i=i+1|0;b=c[2988+(i*44|0)>>2]|0;if(!b){b=0;break a}}}while(0);if((k|0)==33){Rl(d);d=36081}else if((k|0)==36){Rl(d);d=36111}if(!e){b=50;break a}zb[e&1](36051,8,b,d);b=50;break a}case 9:{b=c[824]|0;if(!b){b=0;break a}d:do if(!d){o=c[825]|0;p=Fo(o)|0;d=c[826]|0;d=bh(9,o,p,d,Fo(d)|0,3308,48)|0;if(!d){b=0;break a}}else{f=0;while(1){o=c[3296+(f*60|0)+4>>2]|0;p=Fo(o)|0;d=c[3296+(f*60|0)+8>>2]|0;d=bh(9,o,p,d,Fo(d)|0,3296+(f*60|0)+12|0,48)|0;if(d|0)break d;f=f+1|0;b=c[3296+(f*60|0)>>2]|0;if(!b){b=0;break a}}}while(0);if(!e){b=50;break a}zb[e&1](36051,9,b,d);b=50;break a}case 10:{b=c[929]|0;if(!b){b=0;break a}e:do if(!d){o=c[930]|0;p=Fo(o)|0;d=c[931]|0;d=bh(10,o,p,d,Fo(d)|0,3728,64)|0;if(!d){b=0;break a}}else{f=0;while(1){o=c[3716+(f*76|0)+4>>2]|0;p=Fo(o)|0;d=c[3716+(f*76|0)+8>>2]|0;d=bh(10,o,p,d,Fo(d)|0,3716+(f*76|0)+12|0,64)|0;if(d|0)break e;f=f+1|0;b=c[3716+(f*76|0)>>2]|0;if(!b){b=0;break a}}}while(0);if(!e){b=50;break a}zb[e&1](36051,10,b,d);b=50;break a}default:{b=5;break a}}while(0);l=n;return ((b|0)==0?0:b&65535|16777216)|0}function bh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=j;do if((sh(a)|0)==(h|0))if(!(eh(i,a,2)|0)){f=(nh(c[i>>2]|0,e,f)|0)==0;e=c[i>>2]|0;if(!f){kh(e);e=36834;break}lh(e,b,d);e=ph(c[i>>2]|0,a)|0;if(!e){kh(c[i>>2]|0);e=36856;break}else{e=(Tp(e,g,h)|0)==0;kh(c[i>>2]|0);e=e?0:36819;break}}else e=49699;else e=36876;while(0);l=j;return e|0}function ch(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;if(!a){o=0;return o|0}if((Jo(a,36895,4)|0)!=0?(Jo(a,36900,4)|0)!=0:0)n=a;else n=a+4|0;f=c[1910]|0;a:do if((f|0)!=0?(g=c[f>>2]|0,(g|0)!=0):0){d=0;e=g;while(1){d=d+1|0;if(!(Op(n,e)|0)){m=7620;b=g;o=f;g=29;break a}e=c[f+(d<<2)>>2]|0;if(!e){g=9;break}}}else g=9;while(0);b:do if((g|0)==9){e=c[1944]|0;if(e|0?(h=c[e>>2]|0,h|0):0){d=0;f=h;do{d=d+1|0;if(!(Op(n,f)|0)){m=7756;b=h;o=e;g=29;break b}f=c[e+(d<<2)>>2]|0}while((f|0)!=0)}e=c[1929]|0;if(e|0?(i=c[e>>2]|0,i|0):0){d=0;f=i;do{d=d+1|0;if(!(Op(n,f)|0)){m=7696;b=i;o=e;g=29;break b}f=c[e+(d<<2)>>2]|0}while((f|0)!=0)}e=c[1960]|0;if(e|0?(j=c[e>>2]|0,j|0):0){d=0;f=j;do{d=d+1|0;if(!(Op(n,f)|0)){m=7820;b=j;o=e;g=29;break b}f=c[e+(d<<2)>>2]|0}while((f|0)!=0)}e=c[1976]|0;if(e|0?(k=c[e>>2]|0,k|0):0){d=0;f=k;do{d=d+1|0;if(!(Op(n,f)|0)){m=7884;b=k;o=e;g=29;break b}f=c[e+(d<<2)>>2]|0}while((f|0)!=0)}e=c[1869]|0;if(e|0?(l=c[e>>2]|0,l|0):0){d=0;f=l;do{d=d+1|0;if(!(Op(n,f)|0)){m=7456;b=l;o=e;g=29;break b}f=c[e+(d<<2)>>2]|0}while((f|0)!=0)}}while(0);c:do if((g|0)==29?b|0:0){d=0;while(1){d=d+1|0;if(!(Op(n,b)|0))break;b=c[o+(d<<2)>>2]|0;if(!b)break c}o=c[m>>2]|0;return o|0}while(0);if(Op(a,c[1907]|0)|0)if(Op(a,c[1941]|0)|0)if(Op(a,c[1926]|0)|0)if(Op(a,c[1957]|0)|0)if(Op(a,c[1973]|0)|0)if(!(Op(a,c[1866]|0)|0))b=7456;else{o=0;return o|0}else b=7884;else b=7820;else b=7696;else b=7756;else b=7620;o=c[b>>2]|0;return o|0}function dh(a){a=a|0;if((c[1905]|0)!=(a|0))if((c[1939]|0)!=(a|0))if((c[1924]|0)!=(a|0))if((c[1955]|0)!=(a|0))if((c[1971]|0)!=(a|0))if((c[1864]|0)==(a|0))a=7456;else{a=37665;return a|0}else a=7884;else a=7820;else a=7696;else a=7756;else a=7620;a=c[a+8>>2]|0;return a|0}function eh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=f;if(!(d&-260)){d=fh(e,b,d)|0;b=c[e>>2]|0}else{d=45;b=0}c[a>>2]=d|0?0:b;l=f;return d|0}function fh(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;g=e&1;j=(g|0)!=0;k=(e&2|0)==0;g=(g<<9^512)+535&1552;h=g+28|0;if(j)l=$e(h)|0;else l=_e(h)|0;if((l|0)==0?(f=Qn(c[(zo()|0)>>2]|0)|0,f|0):0){n=f;return n|0}i=l+g|0;c[l>>2]=i;c[l+8>>2]=g+-15;c[l+4>>2]=0;g=i+4+4|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[i>>2]=j?378630161:285677921;c[i+4>>2]=h;a[i+12>>0]=e>>>6&4|e&1;if(!k){switch(d|0){case 10:case 9:{c[i+24>>2]=128;f=256;break}case 311:case 308:{c[i+24>>2]=32;f=64;break}default:{c[i+24>>2]=64;f=128}}k=$e(f)|0;c[i+20>>2]=k;if((k|0)==0?(m=Qn(c[(zo()|0)>>2]|0)|0,gh(l),m|0):0){n=m;return n|0}}Gj();if(d|0?(n=hh(c[l>>2]|0,d)|0,n|0):0){gh(l);return n|0}c[b>>2]=l;n=0;return n|0}function gh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0;k=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=k+16|0;i=k+8|0;j=k;if(!b){l=k;return}d=c[b>>2]|0;e=c[d+8>>2]|0;if(e){g=b+4|0;d=c[g>>2]|0;if(!d)d=e;else{f=b+12|0;if((iq(f,d,1,e)|0)!=1)He(36953,630,36958);d=c[b>>2]|0;e=c[d+16>>2]|0;if(e){do{d=c[g>>2]|0;if(!d)d=e+16|0;else{n=e+16|0;ub[c[(c[e>>2]|0)+32>>2]&7](n,f,d);d=n}ub[c[(c[e>>2]|0)+32>>2]&7](d,0,0);e=c[e+4>>2]|0}while((e|0)!=0);d=c[b>>2]|0}c[g>>2]=0;d=c[d+8>>2]|0}bq(d)|0;d=c[b>>2]|0;c[d+8>>2]=0;c[h>>2]=b;n=i;c[n>>2]=42;c[n+4>>2]=0;i=kr(c[h>>2]|0,0,c[i>>2]|0,c[i+4>>2]|0)|0;n=j;c[n>>2]=i;c[n+4>>2]=D}e=c[d+16>>2]|0;if(e){do{j=e;e=c[e+4>>2]|0;d=c[j+8>>2]|0;if((d|0)!=0&(j&7|0)!=0){f=j;do{a[f>>0]=0;f=f+1|0;d=d+-1|0}while((d|0)!=0&(f&7|0)!=0)}else f=j;if(d>>>0>=8){h=d+-8|0;i=h&-8;g=f+8|0;while(1){n=f;c[n>>2]=0;c[n+4>>2]=0;d=d+-8|0;if(d>>>0<=7)break;else f=f+8|0}f=g+i|0;d=h-i|0}if(d|0)while(1){a[f>>0]=0;d=d+-1|0;if(!d)break;else f=f+1|0}cf(j)}while((e|0)!=0);d=c[b>>2]|0}f=c[d+20>>2]|0;if(f){n=c[d+24>>2]|0;e=n<<1;if((n|0)!=0&(f&7|0)!=0){d=f;do{a[d>>0]=0;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0)}else d=f;if(e>>>0>=8){g=e+-8|0;h=g&-8;i=h+8|0;f=d;while(1){n=f;c[n>>2]=0;c[n+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}e=g-h|0;d=d+i|0}if(e|0)while(1){a[d>>0]=0;e=e+-1|0;if(!e)break;else d=d+1|0}cf(c[(c[b>>2]|0)+20>>2]|0);d=c[b>>2]|0}d=c[d+4>>2]|0;if((d|0)!=0&(b&7|0)!=0){e=b;do{a[e>>0]=0;e=e+1|0;d=d+-1|0}while((d|0)!=0&(e&7|0)!=0)}else e=b;if(d>>>0>=8){g=d+-8|0;h=g&-8;i=h+8|0;f=e;while(1){n=f;c[n>>2]=0;c[n+4>>2]=0;d=d+-8|0;if(d>>>0<=7)break;else f=f+8|0}d=g-h|0;e=e+i|0}if(d|0)while(1){a[e>>0]=0;d=d+-1|0;if(!d)break;else e=e+1|0}cf(b);l=k;return}function hh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=i;h=b+16|0;e=c[h>>2]|0;a:do if(e|0){while(1){if((c[c[e>>2]>>2]|0)==(d|0)){e=0;break}e=c[e+4>>2]|0;if(!e)break a}l=i;return e|0}while(0);if((c[1905]|0)!=(d|0))if((c[1939]|0)!=(d|0))if((c[1924]|0)!=(d|0))if((c[1955]|0)!=(d|0))if((c[1971]|0)!=(d|0))if((c[1864]|0)==(d|0))g=7456;else{c[f>>2]=d;Oe(36905,f);h=5;l=i;return h|0}else g=7884;else g=7820;else g=7696;else g=7756;else g=7620;if(((d|0)==1?gg()|0:0)?(jg(36944),hg()|0):0){h=5;l=i;return h|0}d=(c[g+44>>2]|0)+16|0;f=b+12|0;if(!(a[f>>0]&1))e=_e(d)|0;else e=$e(d)|0;if(!e){h=Qn(c[(zo()|0)>>2]|0)|0;l=i;return h|0}else{c[e>>2]=g;c[e+4>>2]=c[h>>2];c[e+8>>2]=d;c[h>>2]=e;sb[c[g+28>>2]&7](e+16|0,(a[f>>0]&4)<<6);h=0;l=i;return h|0}return 0}function ih(b){b=b|0;var d=0,e=0,f=0;e=(c[b>>2]|0)+12|0;a[e>>0]=a[e>>0]&-3;c[b+4>>2]=0;e=c[b>>2]|0;d=c[e+16>>2]|0;if(!d)d=e;else{do{e=d+16|0;f=c[d>>2]|0;Yq(e|0,0,c[f+44>>2]|0)|0;sb[c[f+28>>2]&7](e,(a[(c[b>>2]|0)+12>>0]&4)<<6);d=c[d+4>>2]|0}while((d|0)!=0);d=c[b>>2]|0}e=c[d+20>>2]|0;if(!e)return;jh(b,e,c[d+24>>2]|0);return}function jh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[(c[a>>2]|0)+8>>2]|0;g=a+4|0;if(e|0){f=c[g>>2]|0;if(f|0?(iq(a+12|0,f,1,e)|0)!=1:0)He(36953,630,36958);if(d|0?(iq(b,d,1,c[(c[a>>2]|0)+8>>2]|0)|0)!=1:0)He(36953,632,36958)}e=c[(c[a>>2]|0)+16>>2]|0;if(!e){c[g>>2]=0;return}a=a+12|0;do{f=c[g>>2]|0;if(!f)f=e+16|0;else{h=e+16|0;ub[c[(c[e>>2]|0)+32>>2]&7](h,a,f);f=h}ub[c[(c[e>>2]|0)+32>>2]&7](f,b,d);e=c[e+4>>2]|0}while((e|0)!=0);c[g>>2]=0;return}function kh(a){a=a|0;gh(a);return}function lh(a,b,c){a=a|0;b=b|0;c=c|0;jh(a,b,c);return}function mh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;if((l|0)>=(m|0))$(32);r=v+16|0;n=v+8|0;k=v;o=v+20|0;g=c[b>>2]|0;if(a[g+12>>0]&2){l=v;return}j=b+4|0;i=c[j>>2]|0;if(i){h=c[g+8>>2]|0;do if(h)if((iq(b+12|0,i,1,h)|0)==1){f=c[b>>2]|0;break}else He(36953,630,36958);else f=g;while(0);g=c[f+16>>2]|0;if(g){h=b+12|0;do{f=c[j>>2]|0;if(!f)f=g+16|0;else{i=g+16|0;ub[c[(c[g>>2]|0)+32>>2]&7](i,h,f);f=i}ub[c[(c[g>>2]|0)+32>>2]&7](f,0,0);g=c[g+4>>2]|0}while((g|0)!=0);f=c[b>>2]|0}c[j>>2]=0;g=f}f=c[g+16>>2]|0;if(!f)f=g;else{do{rb[c[(c[f>>2]|0)+36>>2]&7](f+16|0);f=c[f+4>>2]|0}while((f|0)!=0);f=c[b>>2]|0}f=f+12|0;a[f>>0]=a[f>>0]|2;f=c[b>>2]|0;if(!(c[f+20>>2]|0)){l=v;return}f=c[f+16>>2]|0;if(!f)He(36953,816,37090);if(!(c[f+4>>2]|0))g=f;else{kg(36953,980,36967,0,36979);Le(37e3,k);g=c[(c[b>>2]|0)+16>>2]|0}h=c[c[f>>2]>>2]|0;f=(g|0)==0;do if(h){if(f)He(36953,816,37090);else e=g;while(1){f=c[e>>2]|0;if((c[f>>2]|0)==(h|0)){p=29;break}e=c[e+4>>2]|0;if(!e){p=31;break}}if((p|0)==29){s=tb[c[f+40>>2]&15](e+16|0)|0;q=0;u=h;break}else if((p|0)==31)He(36953,816,37090)}else{if(f)He(36953,816,37090);if(c[g+4>>2]|0)Oe(37051,n);s=tb[c[(c[g>>2]|0)+40>>2]&15](g+16|0)|0;q=1;u=0}while(0);if((c[1905]|0)!=(u|0))if((c[1939]|0)!=(u|0))if((c[1924]|0)!=(u|0))if((c[1955]|0)!=(u|0))if((c[1971]|0)!=(u|0))if((c[1864]|0)==(u|0)){e=7456;p=38}else h=0;else{e=7884;p=38}else{e=7820;p=38}else{e=7696;p=38}else{e=7756;p=38}else{e=7620;p=38}if((p|0)==38)h=c[e+24>>2]|0;e=a[(c[b>>2]|0)+12>>0]|0;e=fh(o,u,(e&4)<<6|e&1)|0;if(e|0)Be(e,0);g=c[o>>2]|0;f=c[b>>2]|0;e=c[f+24>>2]|0;jh(g,(c[f+20>>2]|0)+e|0,e);jh(g,s,h);mh(g);e=c[(c[g>>2]|0)+16>>2]|0;f=(e|0)==0;do if(!q){if(f)He(36953,816,37090);else d=e;while(1){e=c[d>>2]|0;if((c[e>>2]|0)==(u|0)){p=48;break}d=c[d+4>>2]|0;if(!d){p=50;break}}if((p|0)==48){t=tb[c[e+40>>2]&15](d+16|0)|0;break}else if((p|0)==50)He(36953,816,37090)}else{if(f)He(36953,816,37090);if(c[e+4>>2]|0)Oe(37051,r);t=tb[c[(c[e>>2]|0)+40>>2]&15](e+16|0)|0}while(0);cr(s|0,t|0,h|0)|0;gh(g);l=v;return}function nh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=c[b>>2]|0;if(!(c[g+20>>2]|0)){b=70;l=o;return b|0}g=c[g+16>>2]|0;if(!g){b=5;l=o;return b|0}if(c[g+4>>2]|0){kg(36953,980,36967,0,36979);Le(37e3,o)}h=c[c[g>>2]>>2]|0;if(!h){b=5;l=o;return b|0}i=c[b>>2]|0;g=c[i+24>>2]|0;do if(g>>>0<f>>>0){if((c[1905]|0)!=(h|0))if((c[1939]|0)!=(h|0))if((c[1924]|0)!=(h|0))if((c[1955]|0)!=(h|0))if((c[1971]|0)!=(h|0))if((c[1864]|0)==(h|0)){g=7456;n=13}else g=0;else{g=7884;n=13}else{g=7820;n=13}else{g=7696;n=13}else{g=7756;n=13}else{g=7620;n=13}if((n|0)==13)g=c[g+24>>2]|0;j=$e(g)|0;if(!j){g=Qn(c[(zo()|0)>>2]|0)|0;if(!g)break;l=o;return g|0}oh(h,j,e,f);if((c[1905]|0)!=(h|0))if((c[1939]|0)!=(h|0))if((c[1924]|0)!=(h|0))if((c[1955]|0)!=(h|0))if((c[1971]|0)!=(h|0))if((c[1864]|0)==(h|0))g=7456;else{g=c[b>>2]|0;e=j;k=j;j=0;i=g;g=c[g+24>>2]|0;n=24;break}else g=7884;else g=7820;else g=7696;else g=7756;else g=7620;h=c[g+24>>2]|0;i=c[b>>2]|0;g=c[i+24>>2]|0;if(h>>>0>g>>>0)Ie(37098,36953,716,37131);else{e=j;k=j;j=h;n=24}}else{k=0;j=f;n=24}while(0);if((n|0)==24){Yq(c[i+20>>2]|0,0,g<<1|0)|0;i=c[b>>2]|0;h=c[i+20>>2]|0;i=h+(c[i+24>>2]|0)|0;cr(h|0,e|0,j|0)|0;cr(i|0,e|0,j|0)|0;if((c[(c[b>>2]|0)+24>>2]|0)>0){g=0;do{n=h+g|0;a[n>>0]=(d[n>>0]|0)^54;n=i+g|0;a[n>>0]=(d[n>>0]|0)^92;g=g+1|0}while((g|0)<(c[(c[b>>2]|0)+24>>2]|0))}cf(k)}h=(c[b>>2]|0)+12|0;a[h>>0]=a[h>>0]&-3;c[b+4>>2]=0;h=c[b>>2]|0;g=c[h+16>>2]|0;if(!g)g=h;else{do{n=g+16|0;k=c[g>>2]|0;Yq(n|0,0,c[k+44>>2]|0)|0;sb[c[k+28>>2]&7](n,(a[(c[b>>2]|0)+12>>0]&4)<<6);g=c[g+4>>2]|0}while((g|0)!=0);g=c[b>>2]|0}h=c[g+20>>2]|0;if(!h){b=0;l=o;return b|0}jh(b,h,c[g+24>>2]|0);b=0;l=o;return b|0}function oh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);j=o+8|0;i=o;h=o+12|0;a:do switch(a|0){case 2:{Vi(b,d,e);l=o;return}case 3:{if(gg()|0)break a;ui(b,d,e);l=o;return}default:if(((a|0)==1?(gg()|0)!=0:0)?(jg(36944),(hg()|0)!=0):0)fg()}while(0);g=fh(h,a,0)|0;if(g|0){g=Pn(g&65535|536870912)|0;c[i>>2]=a;c[i+4>>2]=g;Ne(37147,i)}i=c[h>>2]|0;jh(i,d,e);mh(i);g=c[(c[i>>2]|0)+16>>2]|0;h=(g|0)==0;do if(a){if(h)He(36953,816,37090);else f=g;while(1){g=c[f>>2]|0;if((c[g>>2]|0)==(a|0)){k=19;break}f=c[f+4>>2]|0;if(!f){k=21;break}}if((k|0)==19){n=tb[c[g+40>>2]&15](f+16|0)|0;break}else if((k|0)==21)He(36953,816,37090)}else{if(h)He(36953,816,37090);if(c[g+4>>2]|0)Oe(37051,j);n=tb[c[(c[g>>2]|0)+40>>2]&15](g+16|0)|0}while(0);if((c[1905]|0)!=(a|0))if((c[1939]|0)!=(a|0))if((c[1924]|0)!=(a|0))if((c[1955]|0)!=(a|0))if((c[1971]|0)!=(a|0))if((c[1864]|0)==(a|0)){f=7456;k=28}else f=0;else{f=7884;k=28}else{f=7820;k=28}else{f=7696;k=28}else{f=7756;k=28}else{f=7620;k=28}if((k|0)==28)f=c[f+24>>2]|0;cr(b|0,n|0,f|0)|0;gh(i);l=o;return}function ph(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=h;mh(a);a=c[(c[a>>2]|0)+16>>2]|0;d=(a|0)==0;if(!b){if(d)He(36953,816,37090);if(c[a+4>>2]|0)Oe(37051,e);g=tb[c[(c[a>>2]|0)+40>>2]&15](a+16|0)|0;l=h;return g|0}if(d)He(36953,816,37090);else f=a;while(1){a=c[f>>2]|0;if((c[a>>2]|0)==(b|0))break;d=c[f+4>>2]|0;if(!d){g=10;break}else f=d}if((g|0)==10)He(36953,816,37090);g=tb[c[a+40>>2]&15](f+16|0)|0;l=h;return g|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,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=o;g=o+4|0;if(!((b&-3|0)==0&((e|0)!=0&(f|0)>-1))){d=45;l=o;return d|0}b=b&2;h=(b|0)!=0;if(h&(f|0)<1){d=45;l=o;return d|0}if(!((a|0)!=2|h)){Wi(d,e,f);d=0;l=o;return d|0}if(((a|0)==1?gg()|0:0)?(jg(36944),hg()|0):0)fg();b=fh(g,a,b)|0;a:do if(!b){g=c[g>>2]|0;do if(h){b=nh(g,(c[e+12>>2]|0)+(c[e+4>>2]|0)|0,c[e+8>>2]|0)|0;if(!b){f=f+-1|0;b=e+16|0;break}else{gh(g);break a}}else b=e;while(0);if(f|0)while(1){jh(g,(c[b+12>>2]|0)+(c[b+4>>2]|0)|0,c[b+8>>2]|0);f=f+-1|0;if(!f)break;else b=b+16|0}mh(g);b=c[(c[g>>2]|0)+16>>2]|0;f=(b|0)==0;do if(a){if(f)He(36953,816,37090);else j=b;while(1){b=c[j>>2]|0;if((c[b>>2]|0)==(a|0)){k=23;break}b=c[j+4>>2]|0;if(!b){k=25;break}else j=b}if((k|0)==23){n=tb[c[b+40>>2]&15](j+16|0)|0;break}else if((k|0)==25)He(36953,816,37090)}else{if(f)He(36953,816,37090);if(c[b+4>>2]|0)Oe(37051,i);n=tb[c[(c[b>>2]|0)+40>>2]&15](b+16|0)|0}while(0);if((c[1905]|0)!=(a|0))if((c[1939]|0)!=(a|0))if((c[1924]|0)!=(a|0))if((c[1955]|0)!=(a|0))if((c[1971]|0)!=(a|0))if((c[1864]|0)==(a|0)){b=7456;k=32}else b=0;else{b=7884;k=32}else{b=7820;k=32}else{b=7696;k=32}else{b=7756;k=32}else{b=7620;k=32}if((k|0)==32)b=c[b+24>>2]|0;cr(d|0,n|0,b|0)|0;gh(g);d=0;l=o;return d|0}while(0);d=b;l=o;return d|0}function rh(a){a=a|0;var b=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);a=c[(c[a>>2]|0)+16>>2]|0;if(!a){a=0;l=b;return a|0}if(c[a+4>>2]|0){kg(36953,980,36967,0,36979);Le(37e3,b)}a=c[c[a>>2]>>2]|0;l=b;return a|0}function sh(a){a=a|0;if((c[1905]|0)!=(a|0))if((c[1939]|0)!=(a|0))if((c[1924]|0)!=(a|0))if((c[1955]|0)!=(a|0))if((c[1971]|0)!=(a|0))if((c[1864]|0)==(a|0))a=7456;else{a=0;return a|0}else a=7884;else a=7820;else a=7696;else a=7756;else a=7620;a=c[a+24>>2]|0;return a|0}function th(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=k;switch(d|0){case 8:{if((e|0)!=0|(f|0)!=0){f=45;l=k;return f|0}if((c[1905]|0)!=(b|0))if((c[1939]|0)!=(b|0))if((c[1924]|0)!=(b|0))if((c[1955]|0)!=(b|0))if((c[1971]|0)!=(b|0)){if((c[1864]|0)==(b|0)){g=7456;j=9}}else{g=7884;j=9}else{g=7820;j=9}else{g=7696;j=9}else{g=7756;j=9}else{g=7620;j=9}if((j|0)==9?(a[g+4>>0]&1)==0:0){f=0;l=k;return f|0}f=5;l=k;return f|0}case 10:{d=(c[1905]|0)==(b|0);if(!d)if((c[1939]|0)!=(b|0))if((c[1924]|0)!=(b|0))if((c[1955]|0)!=(b|0))if((c[1971]|0)!=(b|0))if((c[1864]|0)==(b|0))g=7456;else{f=5;l=k;return f|0}else g=7884;else g=7820;else g=7696;else g=7756;else g=7620;if(a[g+4>>0]&1){f=5;l=k;return f|0}if(!d)if((c[1939]|0)!=(b|0))if((c[1924]|0)!=(b|0))if((c[1955]|0)!=(b|0))if((c[1971]|0)!=(b|0))if((c[1864]|0)==(b|0))i=7456;else{c[h>>2]=b;Ne(37183,h)}else i=7884;else i=7820;else i=7696;else i=7756;else i=7620;h=c[i+16>>2]|0;g=c[i+12>>2]|0;d=(e|0)!=0;if(d){if((c[f>>2]|0)>>>0>=h>>>0){cr(e|0,g|0,h|0)|0;c[f>>2]=h;f=0;l=k;return f|0}}else if(f|0){c[f>>2]=h;f=0;l=k;return f|0}f=d?66:45;l=k;return f|0}case 57:{if(!f)h=0;else h=c[f>>2]|0;if((c[1905]|0)!=(b|0))if((c[1939]|0)!=(b|0))if((c[1924]|0)!=(b|0))if((c[1955]|0)!=(b|0))if((c[1971]|0)!=(b|0))if((c[1864]|0)==(b|0)){d=7456;j=39}else g=69;else{d=7884;j=39}else{d=7820;j=39}else{d=7696;j=39}else{d=7756;j=39}else{d=7620;j=39}do if((j|0)==39){g=c[d+48>>2]|0;if(a[d+4>>0]&1){g=g|0?5:69;break}if(!g)g=69;else g=pb[g&63](b,h,0)|0}while(0);f=g&65535;l=k;return f|0}default:{f=61;l=k;return f|0}}return 0}function uh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((c[1905]|0)!=(b|0))if((c[1939]|0)!=(b|0))if((c[1924]|0)!=(b|0))if((c[1955]|0)!=(b|0))if((c[1971]|0)!=(b|0))if((c[1864]|0)==(b|0)){f=7456;i=7}else{d=0;g=0;f=69;i=11}else{f=7884;i=7}else{f=7820;i=7}else{f=7696;i=7}else{f=7756;i=7}else{f=7620;i=7}do if((i|0)==7){h=c[f+48>>2]|0;if(a[f+4>>0]&1){d=f;g=1;f=h|0?5:69;i=11;break}if(!h){d=f;g=1;f=69;i=11}else f=pb[h&63](b,d,e)|0}while(0);if((i|0)==11)if(e){if(g?(a[d+4>>0]&1)==0:0)d=37736;else d=g?37697:37716;zb[e&1](42873,b,37758,d)}return ((f|0)==0?0:f&65535|16777216)|0}function vh(){return 0}function wh(){return 0}function xh(a,b){a=a|0;b=b|0;c[17614]=a;c[17615]=b;return}function yh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=zh(a,1,b,d,e)|0;b=c[17614]|0;if(!b)return a|0;qb[b&15](c[17615]|0,37212,10,0,0);return a|0}function zh(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+16|0;if((l|0)>=(m|0))$(16);C=E+8|0;h=E;B=E+12|0;if(a>>>0<16){c[h>>2]=16;Me(37221,h)}y=gf(2672)|0;z=kl(2)|0;A=kl(3)|0;r=(b|0)!=0;if(r)s=Il(a)|0;else s=Hl(a)|0;t=Bl(s)|0;u=Bl(s)|0;v=Bl(s)|0;c[B>>2]=0;w=a+-1|0;x=a+-2|0;p=w-b|0;q=(f|0)==0;a:while(1){Kl(s,a,d);ok(s,w);if(r)nk(s,x);nk(s,0);h=0;do{c[y+(h<<2)>>2]=Ak(0,s,e[16424+(h<<1)>>1]|0)|0;h=h+1|0}while((h|0)!=668);b:do if(q){h=0;o=0;while(1){n=0;j=3;while(1){k=y+(n<<2)|0;i=c[k>>2]|0;b=i+o|0;if(b>>>0>=j>>>0){do{i=i-j|0;b=i+o|0}while(b>>>0>=j>>>0);c[k>>2]=i}i=n+1|0;if(!b)break;if((i|0)==668){D=15;break}else{n=i;j=e[16424+(i<<1)>>1]|0}}if((D|0)==15){D=0;ek(v,s,o);c[B>>2]=(c[B>>2]|0)+1;gk(u,v,1);Mk(t,z,u,v);if((vk(t,1)|0)==0?Ah(v,5,B)|0:0)break;h=h+1|0;if((h|0)==10){h=c[17614]|0;if(!h)h=0;else{qb[h&15](c[17615]|0,37212,46,0,0);h=0}}}o=o+2|0;if(o>>>0>=2e4)break b}if(!(mk(v,p)|0))D=34;else{D=46;break a}}else{h=0;o=0;do{n=0;k=3;while(1){j=y+(n<<2)|0;i=c[j>>2]|0;b=i+o|0;if(b>>>0>=k>>>0){do{i=i-k|0;b=i+o|0}while(b>>>0>=k>>>0);c[j>>2]=i}i=n+1|0;if(!b)break;if((i|0)==668){D=31;break}else{n=i;k=e[16424+(i<<1)>>1]|0}}if((D|0)==31){D=0;ek(v,s,o);c[B>>2]=(c[B>>2]|0)+1;gk(u,v,1);Mk(t,z,u,v);if((vk(t,1)|0)==0?Ah(v,5,B)|0:0){if(!(mk(v,p)|0)){D=34;break b}if(!(yb[f&7](g,v)|0)){D=46;break a}b=c[17614]|0;if(b|0)qb[b&15](c[17615]|0,37212,47,0,0)}h=h+1|0;if((h|0)==10){h=c[17614]|0;if(!h)h=0;else{qb[h&15](c[17615]|0,37212,46,0,0);h=0}}}o=o+2|0}while(o>>>0<2e4)}while(0);if((D|0)==34){D=0;h=c[17614]|0;if(h|0)qb[h&15](c[17615]|0,37212,10,0,0);Oe(37268,C)}h=c[17614]|0;if(!h)continue;qb[h&15](c[17615]|0,37212,58,0,0)}if((D|0)==46){tl(z);tl(A);tl(t);tl(u);tl(s);cf(y);l=E;return v|0}return 0}function Ah(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=a+4|0;o=ll(c[l>>2]|0)|0;p=ll(c[l>>2]|0)|0;q=ll(c[l>>2]|0)|0;l=ll(c[l>>2]|0)|0;m=kl(2)|0;n=lk(a)|0;f=(b|0)<5?5:b;gk(l,a,1);g=yl(l)|0;h=Nk(g)|0;Ck(g,g,h);a:do if(f){i=n+-2|0;if(h>>>0<=1){b=0;while(1){c[d>>2]=(c[d>>2]|0)+1;if(b){Kl(o,n,0);e=(mk(o,i)|0)==0;ok(o,i);if(e)qk(o,i);if((wk(o,l)|0)>=0){b=24;break}if((vk(o,1)|0)<=0){b=24;break}}else El(o,2)|0;Mk(p,o,g,a);if((vk(p,1)|0?wk(p,l)|0:0)?wk(p,l)|0:0){j=0;break a}e=c[17614]|0;if(e|0)qb[e&15](c[17615]|0,37212,43,0,0);b=b+1|0;if(b>>>0>=f>>>0){j=1;break a}}if((b|0)==24)Ie(37298,37370,951,37381)}else k=0;while(1){c[d>>2]=(c[d>>2]|0)+1;if(k){Kl(o,n,0);e=(mk(o,i)|0)==0;ok(o,i);if(e)qk(o,i);if((wk(o,l)|0)>=0){b=24;break}if((vk(o,1)|0)<=0){b=24;break}}else El(o,2)|0;Mk(p,o,g,a);if(vk(p,1)|0?wk(p,l)|0:0){b=1;do{if(!(wk(p,l)|0))break;Mk(p,p,m,a);b=b+1|0;if(!(vk(p,1)|0)){j=0;break a}}while(b>>>0<h>>>0);if(wk(p,l)|0){j=0;break a}}b=c[17614]|0;if(b|0)qb[b&15](c[17615]|0,37212,43,0,0);k=k+1|0;if(k>>>0>=f>>>0){j=1;break a}}if((b|0)==24)Ie(37298,37370,951,37381)}else j=1;while(0);tl(o);tl(p);tl(q);tl(l);tl(g);tl(m);return j|0}function Bh(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);k=o;c[k>>2]=0;h=0;i=3;while(1){j=h+1|0;if(Dk(a,i)|0){n=4;break}if((j|0)==668)break;else{h=j;i=e[16424+(j<<1)>>1]|0}}if((n|0)==4){n=(vk(a,i)|0)==0&1;l=o;return n|0}i=Bl(a)|0;j=Bl(a)|0;gk(j,a,1);Mk(i,b,j,a);tl(j);j=(vk(i,1)|0)==0;tl(i);if(!j){h=c[17614]|0;if(!h){n=0;l=o;return n|0}qb[h&15](c[17615]|0,37212,46,0,0);n=0;l=o;return n|0}h=(f|0)!=0;if(!(h?!(pb[f&63](g,2,a)|0):0))n=10;if((n|0)==10?Ah(a,d,k)|0:0){if(!h){n=1;l=o;return n|0}if(pb[f&63](g,1,a)|0){n=1;l=o;return n|0}}h=c[17614]|0;if(!h){n=0;l=o;return n|0}qb[h&15](c[17615]|0,37212,46,0,0);n=0;l=o;return n|0}function Ch(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;if((e|0)==0|(a|0)!=0&(b|0)!=0&(d|0)!=0^1){g=0;return g|0}if(!(mk(e,0)|0)){g=0;return g|0}k=Dh(b)|0;i=Dh(d)|0;h=Bl(a)|0;Kk(h,k,i);b=Bl(k)|0;Fk(b,i,k)|0;Kk(b,b,i);j=Bl(i)|0;Fk(j,k,i)|0;Kk(j,j,k);hk(b,b,j);if(c[b+8>>2]|0)fk(b,b,h);jk(j,b,a,h);fk(j,j,a);tl(b);if((wk(j,a)|0)<0)fk(j,j,h);b=kl(2)|0;d=Bl(j)|0;gk(h,h,1);gk(j,j,1);while(1){a=Ek(d,e,j)|0;ek(j,j,1);if(!a){a=c[17614]|0;if(a|0)qb[a&15](c[17615]|0,37212,47,0,0)}else if(Bh(j,b,64,0,0)|0)break;fk(j,j,h)}tl(d);tl(b);tl(h);b=c[17614]|0;if(b|0)qb[b&15](c[17615]|0,37212,10,0,0);if(!f)tl(k);else c[f>>2]=k;if(!g){tl(i);g=j;return g|0}else{c[g>>2]=i;g=j;return g|0}return 0}function Dh(a){a=a|0;var b=0;b=kl(2)|0;a=yl(a)|0;nk(a,0);if(Bh(a,b,64,0,0)|0){tl(b);return a|0}do ek(a,a,2);while(!(Bh(a,b,64,0,0)|0));tl(b);return a|0}function Eh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+16|0;if((l|0)>=(m|0))$(16);n=o;if((a|0)!=0?(e=vf(a)|0,(e|0)>1):0){k=0;g=0;f=5;j=e;e=0;while(1){j=j+-1|0;i=xf(a,j,n)|0;a:do if(!i)h=k;else do switch(c[n>>2]|0){case 3:{h=(f|0)==5;if(h&(Tp(i,37390,3)|0)==0){h=k;g=g|4;f=4;break a}if(h&(Tp(i,37394,3)|0)==0){h=k;g=g|16;f=0;break a}else{h=k;e=(k|0)==0?72:e;break a}}case 4:{if(!(Tp(i,37398,4)|0)){h=k;g=g|1024;break a}if((f|0)==5&(Tp(i,37403,4)|0)==0){h=k;g=g|4;f=3;break a}if(!(Tp(i,49620,4)|0)){h=k;g=g|8192;f=0;break a}else{h=k;e=(k|0)==0?72:e;break a}}case 5:{if(!(Tp(i,49614,5)|0)){h=k;g=g|4096;f=0;break a}if((f|0)==5&(Tp(i,37408,5)|0)==0){h=k;g=g|4;f=1;break a}if(!(Tp(i,37414,5)|0)){h=k;g=g|512;break a}else{h=k;e=(k|0)==0?72:e;break a}}case 6:if(!(Tp(i,37420,6)|0)){h=k;g=g|2048;break a}else{h=k;e=(k|0)==0?72:e;break a}case 7:if(!(Tp(i,37427,7)|0)){h=k;g=g|2;break a}else{i=(k|0)!=0|(Tp(i,37435,7)|0)==0;h=k;e=i?e:72;break a}case 8:if(!(Tp(i,41515,8)|0)){h=k;g=g|64;break a}else{h=k;e=(k|0)==0?72:e;break a}case 9:if((f|0)==5&(Tp(i,37443,9)|0)==0){h=k;g=g|4;f=2;break a}else{h=k;e=(k|0)==0?72:e;break a}case 10:{if(!(Tp(i,37453,10)|0)){h=1;break a}if(!(Tp(i,37464,10)|0)){h=k;g=g|16384;break a}else{h=k;e=(k|0)==0?72:e;break a}}case 11:{if(!(Tp(i,37475,11)|0)){h=k;g=g|1;break a}if(!(Tp(i,37487,11)|0)){h=k;g=g|128;break a}else{h=k;e=(k|0)==0?72:e;break a}}case 13:{if(!(Tp(i,37499,13)|0)){h=k;g=g|256;break a}if(!(Tp(i,48632,13)|0)){h=k;g=g|32;break a}else{h=k;e=(k|0)==0?72:e;break a}}default:{h=k;e=(k|0)==0?72:e;break a}}while(0);while(0);if((j|0)<=1)break;else k=h}}else{g=0;f=5;e=0}if(b|0)c[b>>2]=g;if(!d){l=o;return e|0}c[d>>2]=f;l=o;return e|0}function Fh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+64|0;if((l|0)>=(m|0))$(64);h=i+4|0;e=i;c[d>>2]=0;f=uf(b,37513,0)|0;if(!f){h=0;l=i;return h|0}g=xf(f,1,e)|0;b=c[e>>2]|0;if((g|0)==0|b>>>0>48){sf(f);h=65;l=i;return h|0}else{cr(h|0,g|0,b|0)|0;a[h+b>>0]=0;c[d>>2]=Mo(h,0,0)|0;sf(f);h=0;l=i;return h|0}return 0}function Gh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+64|0;if((l|0)>=(m|0))$(64);h=i+4|0;e=i;c[d>>2]=0;f=uf(b,37519,0)|0;if(!f){c[d>>2]=65537;h=0;l=i;return h|0}g=xf(f,1,e)|0;b=c[e>>2]|0;if((g|0)==0|b>>>0>48){sf(f);h=65;l=i;return h|0}else{cr(h|0,g|0,b|0)|0;a[h+b>>0]=0;c[d>>2]=Mo(h,0,0)|0;sf(f);h=0;l=i;return h|0}return 0}function Hh(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;c[d>>2]=0;i=(e|0)!=0;if(i)c[e>>2]=0;j=uf(a,37529,0)|0;a:do if(j){a=wf(j,1)|0;if(a){f=zf(a,0)|0;if(f){if(!(Go(f,46885)|0)){sf(a);a=wf(j,2)|0;if(!a){g=65;a=0;break}cf(f);f=zf(a,0)|0;if(!f){g=65;f=0;break}}g=c[b>>2]|0;if(!g)g=70;else{h=0;while(1){h=h+1|0;if(!(Op(f,g)|0))break;g=c[b+(h<<2)>>2]|0;if(!g){g=70;break a}}if(i){if(!(Go(f,49614)|0))c[e>>2]=4096;if(!(Go(f,49620)|0))c[e>>2]=8192}c[d>>2]=a;g=0;a=0}}else{g=65;f=0}}else{g=68;f=0;a=0}}else{g=65;f=0;a=0}while(0);cf(f);sf(a);sf(j);return g|0}function Ih(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);n=q+4|0;o=q;c[o>>2]=0;c[e>>2]=0;p=uf(b,40685,0)|0;a:do if(p){g=wf(p,1)|0;if(g){k=zf(g,0)|0;if(k){if(!(Go(k,46885)|0)){h=f+8|0;b=Eh(g,o,h)|0;if(b|0){h=k;break}b:do switch(c[h>>2]|0){case 4:{h=k;b=70;break a}case 3:{sf(g);g=uf(p,37537,0)|0;if(g|0){i=xf(g,1,n)|0;if(!i){h=k;b=68;break a}j=c[n>>2]|0;b=0;while(1){h=c[4248+(b<<3)>>2]|0;if((Fo(h)|0)==(j|0)?(Tp(h,i,j)|0)==0:0){h=13;break}b=b+1|0;if((b|0)==12){h=14;break}}do if((h|0)==13)b=c[4248+(b<<3)+4>>2]|0;else if((h|0)==14){b=_e(j+1|0)|0;if(!b){c[f+16>>2]=0;h=k;b=5;break a}else{cr(b|0,i|0,j|0)|0;a[b+j>>0]=0;j=ch(b)|0;cf(b);b=j;break}}while(0);c[f+16>>2]=b;if(!b){h=k;b=5;break a}}sf(g);g=uf(p,37547,0)|0;if(g){h=xf(g,1,n)|0;if(!h){h=k;b=68;break a}b=c[n>>2]|0;if(b){b=_e(b)|0;c[f+20>>2]=b;if(!b){b=Sn()|0;if(!b)break b;else{h=k;break a}}else{j=c[n>>2]|0;cr(b|0,h|0,j|0)|0;c[f+24>>2]=j;break b}}}else g=0;break}default:{}}while(0);sf(g);g=wf(p,2)|0;if(!g){h=k;g=0;b=68;break}else h=2;c:while(1){b=xf(g,0,n)|0;switch(c[n>>2]|0){case 9:{if(Tp(b,37537,9)|0)break c;break}case 5:{if(Tp(b,37547,5)|0)break c;break}case 15:{if(Tp(b,37553,15)|0)break c;break}default:break c}h=h+1|0;sf(g);g=wf(p,h)|0;if(!g){h=k;g=0;b=68;break a}}cf(k);b=zf(g,0)|0;if(!b){h=0;b=65;break}}else{c[o>>2]=8;b=k}h=c[d>>2]|0;if(!h){h=b;b=70}else{i=0;while(1){i=i+1|0;if(!(Op(b,h)|0))break;h=c[d+(i<<2)>>2]|0;if(!h){h=b;b=70;break a}}c[e>>2]=g;h=f+12|0;c[h>>2]=c[h>>2]|c[o>>2];h=b;g=0;b=0}}else{h=0;b=65}}else{h=0;g=0;b=68}}else{h=0;g=0;b=65}while(0);cf(h);sf(g);sf(p);l=q;return b|0}function Jh(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=b;c[a+4>>2]=d;c[a+8>>2]=5;c[a+12>>2]=0;c[a+16>>2]=2;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=20;c[a+32>>2]=0;c[a+36>>2]=0;return}function Kh(a){a=a|0;cf(c[a+20>>2]|0);return}function Lh(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((l|0)>=(m|0))$(16);r=w+8|0;u=w+4|0;s=w;c[u>>2]=0;c[d>>2]=0;v=uf(b,37643,0)|0;if(!v){v=Af(b,0,0)|0;c[d>>2]=v;v=v|0?0:65;l=w;return v|0}b=uf(v,46885,0)|0;g=e+8|0;if(!b)b=0;else{t=(Eh(b,u,g)|0)!=0&1;sf(b);b=t}if((c[g>>2]|0)==5)c[g>>2]=0;t=uf(v,37648,0)|0;i=(t|0)!=0;if(!i){f=uf(v,40697,0)|0;if(!f){b=65;f=0}else{h=1;q=9}}else{f=0;h=0;q=9}a:do if((q|0)==9)if(!b){g=c[g>>2]|0;b=(g|0)==0;if(b){if(c[u>>2]&4096|0){b:do if(h?(p=uf(v,37537,0)|0,(p|0)!=0):0){i=xf(p,1,r)|0;c:do if(i){h=c[r>>2]|0;b=0;while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(h|0)?(Tp(g,i,h)|0)==0:0){q=19;break}b=b+1|0;if((b|0)==12){q=20;break}}do if((q|0)==19)b=c[4248+(b<<3)+4>>2]|0;else if((q|0)==20){b=_e(h+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break c}else{cr(b|0,i|0,h|0)|0;a[b+h>>0]=0;r=ch(b)|0;cf(b);b=r;break}}while(0);c[e+16>>2]=b;if(!b)b=5;else{sf(p);b=yf(f,1,s)|0;if(!b){c[s>>2]=0;b=_e(1)|0;if(!b){b=Sn()|0;if(!b)b=0;else break b}}else{r=c[s>>2]|0;if(r<<3>>>0<r>>>0){cf(b);b=67;break b}}c[d>>2]=ul(0,b,c[s>>2]<<3)|0;b=0;break b}}else b=68;while(0);sf(p)}else b=65;while(0);break}if(i&b?c[u>>2]&18|0:0){if((vf(t)|0)!=3){b=65;break}i=xf(t,1,r)|0;h=c[r>>2]|0;if(!((i|0)!=0&(h|0)!=0)){b=65;break}b=0;while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(h|0)?(Tp(g,i,h)|0)==0:0){q=40;break}b=b+1|0;if((b|0)==12){q=41;break}}do if((q|0)==40){b=c[4248+(b<<3)+4>>2]|0;q=44}else if((q|0)==41){b=_e(h+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break}else{cr(b|0,i|0,h|0)|0;a[b+h>>0]=0;q=ch(b)|0;cf(b);b=q;q=44;break}}while(0);do if((q|0)==44){c[e+16>>2]=b;if(b){g=yf(t,2,s)|0;if(g){s=c[s>>2]|0;b=s<<3;if(b>>>0<s>>>0){cf(g);b=67;break}else{c[d>>2]=ul(0,g,b)|0;b=0;break}}else b=65}else b=5}while(0);break}if(h&b){if(c[u>>2]&2|0){b=70;break}b=Af(f,1,5)|0;c[d>>2]=b;b=(b|0)==0?65:0;break}else b=0}else{b=(g|0)==1;if(h&b?(c[e>>2]|0)==0:0){i=xf(f,1,s)|0;d:do if((i|0)!=0&(c[s>>2]|0)!=0){h=uf(v,37553,0)|0;e:do if(!h){g=0;b=0}else{g=xf(h,1,r)|0;if(!g){sf(h);b=68;break d}b=c[r>>2]|0;do if(b){b=_e(b)|0;if(!b){b=Sn()|0;sf(h);if(!b){g=0;b=0;break e}else break d}else{r=c[r>>2]|0;cr(b|0,g|0,r|0)|0;g=r;break}}else{g=0;b=0}while(0);sf(h)}while(0);d=vi(d,c[e+4>>2]|0,i,c[s>>2]|0,b,g)|0;cf(b);b=d}else b=65;while(0);break}}if(i&b?(c[e>>2]&-2|0)==2:0){if((vf(t)|0)!=3){b=65;break}i=xf(t,1,r)|0;h=c[r>>2]|0;if(!((i|0)!=0&(h|0)!=0)){b=65;break}b=0;while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(h|0)?(Tp(g,i,h)|0)==0:0){q=74;break}b=b+1|0;if((b|0)==12){q=75;break}}do if((q|0)==74){b=c[4248+(b<<3)+4>>2]|0;q=78}else if((q|0)==75){b=_e(h+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break}else{cr(b|0,i|0,h|0)|0;a[b+h>>0]=0;q=ch(b)|0;cf(b);b=q;q=78;break}}while(0);if((q|0)==78){h=e+16|0;c[h>>2]=b;if(b){g=xf(t,2,s)|0;b=c[s>>2]|0;if((g|0)!=0&(b|0)!=0)b=xi(d,c[e+4>>2]|0,g,b,c[h>>2]|0)|0;else b=65}else b=5}break}if(h&(g|0)==2?(c[e>>2]&-2|0)==2:0){if((vf(f)|0)==2?(j=xf(f,1,s)|0,k=c[s>>2]|0,(j|0)!=0&(k|0)!=0):0)b=yi(d,c[e+4>>2]|0,j,k)|0;else b=65;break}if(h&(g|0)==3?(c[e>>2]|0)==0:0){k=xf(f,1,s)|0;f:do if((k|0)!=0&(c[s>>2]|0)!=0){j=uf(v,37537,0)|0;g:do if(j|0){h=xf(j,1,r)|0;h:do if(h){i=c[r>>2]|0;b=0;while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(i|0)?(Tp(g,h,i)|0)==0:0){q=97;break}b=b+1|0;if((b|0)==12){q=98;break}}do if((q|0)==97)b=c[4248+(b<<3)+4>>2]|0;else if((q|0)==98){b=_e(i+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break h}else{cr(b|0,h|0,i|0)|0;a[b+i>>0]=0;q=ch(b)|0;cf(b);b=q;break}}while(0);c[e+16>>2]=b;if(!b)b=5;else{sf(j);break g}}else b=68;while(0);sf(j);break f}while(0);h=uf(v,37547,0)|0;i:do if(h|0){g=xf(h,1,r)|0;if(!g){sf(h);b=68;break f}b=c[r>>2]|0;do if(b|0){b=_e(b)|0;c[e+20>>2]=b;if(!b){b=Sn()|0;sf(h);if(!b)break i;else break f}else{q=c[r>>2]|0;cr(b|0,g|0,q|0)|0;c[e+24>>2]=q;break}}while(0);sf(h)}while(0);h=uf(v,37553,0)|0;j:do if(!h){g=0;b=0}else{g=xf(h,1,r)|0;if(!g){sf(h);b=68;break f}b=c[r>>2]|0;do if(b){b=_e(b)|0;if(!b){b=Sn()|0;sf(h);if(!b){g=0;b=0;break j}else break f}else{r=c[r>>2]|0;cr(b|0,g|0,r|0)|0;g=r;break}}else{g=0;b=0}while(0);sf(h)}while(0);d=zi(d,c[e+4>>2]|0,c[e+16>>2]|0,k,c[s>>2]|0,c[e+20>>2]|0,c[e+24>>2]|0,b,g)|0;cf(b);b=d}else b=65;while(0);break}if(i&(g|0)==4){if((c[e>>2]|0)!=2){if((c[e>>2]|0)!=3){b=70;break}if((vf(t)|0)!=3){b=65;break}i=xf(t,1,r)|0;h=c[r>>2]|0;if((i|0)!=0&(h|0)!=0)b=0;else{b=65;break}while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(h|0)?(Tp(g,i,h)|0)==0:0){q=155;break}b=b+1|0;if((b|0)==12){q=156;break}}do if((q|0)==155)b=c[4248+(b<<3)+4>>2]|0;else if((q|0)==156){b=_e(h+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break a}else{cr(b|0,i|0,h|0)|0;a[b+h>>0]=0;s=ch(b)|0;cf(b);b=s;break}}while(0);c[e+16>>2]=b;if(!b){b=5;break}b=Af(t,2,5)|0;c[d>>2]=b;c[e+32>>2]=5;c[e+36>>2]=c[d>>2];b=(b|0)==0?65:0;break}if((vf(t)|0)==3?(n=xf(t,1,r)|0,o=c[r>>2]|0,(n|0)!=0&(o|0)!=0):0){b=0;while(1){g=c[4248+(b<<3)>>2]|0;if((Fo(g)|0)==(o|0)?(Tp(g,n,o)|0)==0:0){q=130;break}b=b+1|0;if((b|0)==12){q=131;break}}do if((q|0)==130){b=c[4248+(b<<3)+4>>2]|0;q=134}else if((q|0)==131){b=_e(o+1|0)|0;if(!b){c[e+16>>2]=0;b=5;break}else{cr(b|0,n|0,o|0)|0;a[b+o>>0]=0;q=ch(b)|0;cf(b);b=q;q=134;break}}while(0);k:do if((q|0)==134){j=e+16|0;c[j>>2]=b;if(b){i=xf(t,2,s)|0;if((i|0)!=0&(c[s>>2]|0)!=0){b=uf(v,37653,0)|0;if(b|0){g=xf(b,1,r)|0;if(!g){b=68;break}c[e+28>>2]=Mo(g,0,10)|0;sf(b)}h=uf(v,37553,0)|0;l:do if(!h){g=0;b=0}else{g=xf(h,1,r)|0;if(!g){sf(h);b=68;break k}b=c[r>>2]|0;do if(b){b=_e(b)|0;if(!b){b=Sn()|0;sf(h);if(!b){g=0;b=0;break l}else break k}else{r=c[r>>2]|0;cr(b|0,g|0,r|0)|0;g=r;break}}else{g=0;b=0}while(0);sf(h)}while(0);d=Ci(d,(c[e+4>>2]|0)+-1|0,c[j>>2]|0,i,c[s>>2]|0,c[e+28>>2]|0,b,g)|0;cf(b);b=d}else b=65}else b=5}while(0)}else b=65}else b=70}else b=72;while(0);sf(v);sf(t);sf(f);if(!b){c[e+12>>2]=c[u>>2];v=0;l=w;return v|0}else{v=e+20|0;cf(c[v>>2]|0);c[v>>2]=0;v=b;l=w;return v|0}return 0}function Mh(a,b){a=a|0;b=b|0;return Di(c[a+36>>2]|0,b,(c[a+4>>2]|0)+-1|0,c[a+16>>2]|0,c[a+28>>2]|0)|0}function Nh(a){a=a|0;var b=0,d=0;if(!(Op(a,c[3121]|0)|0)){a=12472;return a|0}d=c[3122]|0;b=c[d>>2]|0;a:do if(b|0){while(1){d=d+4|0;if(!(Op(a,b)|0)){b=12472;break}b=c[d>>2]|0;if(!b)break a}return b|0}while(0);if(!(Op(a,c[1883]|0)|0)){a=7520;return a|0}b=c[1884]|0;d=c[b>>2]|0;if(!d){a=0;return a|0}while(1){b=b+4|0;if(!(Op(a,d)|0)){b=7520;d=6;break}d=c[b>>2]|0;if(!d){b=0;d=6;break}}if((d|0)==6)return b|0;return 0}function Oh(a){a=a|0;switch(a|0){case 3:case 2:{a=1;break}case 16:{a=20;break}case 301:{a=18;break}case 302:{a=18;break}default:{}}if((a|0)!=(c[3118]|0))if((a|0)==(c[1880]|0))a=7520;else{a=37665;return a|0}else a=12472;a=c[a+12>>2]|0;return a|0}function Ph(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g+4|0;f=g;c[a>>2]=0;d=Qh(d,0,e,f)|0;if(!d){d=c[(c[e>>2]|0)+48>>2]|0;if(!d)d=69;else d=pb[d&63](a,b,c[f>>2]|0)|0}sf(c[f>>2]|0);l=g;return d|0}function Qh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;c[d>>2]=0;g=(e|0)!=0;if(g)c[e>>2]=0;f=(b|0)!=0;b=uf(a,f?37667:37679,0)|0;if(!(f|(b|0)!=0))b=uf(a,37667,0)|0;if(!b){g=65;return g|0}f=Cf(b)|0;sf(b);b=zf(f,0)|0;if(!b){sf(f);g=65;return g|0}a=Nh(b)|0;cf(b);if(!a){sf(f);g=4;return g|0}c[d>>2]=a;if(g){c[e>>2]=f;g=0;return g|0}else{sf(f);g=0;return g|0}return 0}function Rh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g+4|0;f=g;c[a>>2]=0;d=Qh(d,1,e,f)|0;if(!d){d=c[(c[e>>2]|0)+52>>2]|0;if(!d)d=69;else d=pb[d&63](a,b,c[f>>2]|0)|0}sf(c[f>>2]|0);l=g;return d|0}function Sh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g+4|0;f=g;c[a>>2]=0;d=Qh(d,1,e,f)|0;if(!d){d=c[(c[e>>2]|0)+56>>2]|0;if(!d)d=69;else d=pb[d&63](a,b,c[f>>2]|0)|0}sf(c[f>>2]|0);l=g;return d|0}function Th(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g+4|0;f=g;d=Qh(d,0,e,f)|0;if(!d){d=c[(c[e>>2]|0)+60>>2]|0;if(!d)d=69;else d=pb[d&63](a,b,c[f>>2]|0)|0}sf(c[f>>2]|0);l=g;return d|0}function Uh(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=e+4|0;d=e;a=Qh(a,1,b,d)|0;if(!a){a=c[(c[b>>2]|0)+44>>2]|0;if(!a)a=69;else a=tb[a&15](c[d>>2]|0)|0}sf(c[d>>2]|0);l=e;return a|0}function Vh(a,b){a=a|0;b=b|0;var d=0,e=0;c[a>>2]=0;d=uf(b,37690,0)|0;if(d){b=Cf(d)|0;sf(d);if(b){d=zf(b,0)|0;if(d){e=Nh(d)|0;cf(d);if(e){d=c[e+40>>2]|0;if(!d)d=69;else d=yb[d&7](b,a)|0}else d=4}else d=65}else{d=68;b=0}}else{d=65;b=0}sf(b);cf(0);sf(0);return d|0}function Wh(){return 0}function Xh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;switch(b|0){case 3:case 2:{g=1;break}case 16:{g=20;break}case 301:{g=18;break}case 302:{g=18;break}default:g=b}if((g|0)!=(c[3118]|0))if((g|0)==(c[1880]|0)){b=7520;h=8}else{b=0;d=0;h=11}else{b=12472;h=8}if((h|0)==8)if((a[b+4>>0]&1)==0?(f=c[b+68>>2]|0,(f|0)!=0):0)b=pb[f&63](g,d,e)|0;else{d=1;h=11}if((h|0)==11)if(!e)b=4;else{if(d?(a[b+4>>0]&1)==0:0)b=37736;else b=d?37697:37716;zb[e&1](40871,g,37758,b);b=4}return ((b|0)==0?0:b&65535|16777216)|0}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;return ai(a,b,c)|0}function Zh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[a+496>>2]|0;if(e|0)vb[e&3]();return pb[c[a+488>>2]&63](a,b,d)|0}function _h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;bi(a);e=c[a+500>>2]|0;if(e|0)vb[e&3]();return pb[c[a+492>>2]&63](a,b,d)|0}function $h(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+528|0;if((l|0)>=(m|0))$(528);e=h;f=h+504|0;switch(a|0){case 7:{ai(e,37769,16)|0;a=c[e+496>>2]|0;if(a|0)vb[a&3]();pb[c[e+488>>2]&63](e,f,37785)|0;if(!(Tp(f,37801,16)|0)){bi(e);a=c[e+500>>2]|0;if(a|0)vb[a&3]();pb[c[e+492>>2]&63](e,f,f)|0;if(!(Tp(f,37785,16)|0)){if(!b){d=0;l=h;return d|0}a=ci(2)|0;if(!a){a=ci(5)|0;if(!a){d=0;l=h;return d|0}else b=37885}else b=37881}else{a=37817;g=8}}else{a=37849;g=8}if((g|0)==8)b=37889;if(!d){d=50;l=h;return d|0}zb[d&1](37899,7,b,a);d=50;l=h;return d|0}case 8:{ai(e,37906,24)|0;a=c[e+496>>2]|0;if(a|0)vb[a&3]();pb[c[e+488>>2]&63](e,f,37930)|0;if(!(Tp(f,37946,16)|0)){bi(e);a=c[e+500>>2]|0;if(a|0)vb[a&3]();pb[c[e+492>>2]&63](e,f,f)|0;if(!(Tp(f,37930,16)|0)){d=0;l=h;return d|0}else a=37962}else a=37994;if(!d){d=50;l=h;return d|0}zb[d&1](37899,8,37889,a);d=50;l=h;return d|0}case 9:{ai(e,38026,32)|0;a=c[e+496>>2]|0;if(a|0)vb[a&3]();pb[c[e+488>>2]&63](e,f,38058)|0;if(!(Tp(f,38074,16)|0)){bi(e);a=c[e+500>>2]|0;if(a|0)vb[a&3]();pb[c[e+492>>2]&63](e,f,f)|0;if(!(Tp(f,38058,16)|0)){d=0;l=h;return d|0}else a=38090}else a=38122;if(!d){d=50;l=h;return d|0}zb[d&1](37899,9,37889,a);d=50;l=h;return d|0}default:{d=12;l=h;return d|0}}return 0}function ai(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;K=l;l=l+528|0;if((l|0)>=(m|0))$(528);j=K+504|0;J=K;h=K+512|0;I=gg()|0;a:do if(!(c[17616]|I)){c[17616]=1;ai(J,37769,16)|0;g=c[J+496>>2]|0;if(g|0)vb[g&3]();pb[c[J+488>>2]&63](J,h,37785)|0;do if(!(Tp(h,37801,16)|0)){bi(J);g=c[J+500>>2]|0;if(g|0)vb[g&3]();pb[c[J+492>>2]&63](J,h,h)|0;if(!(Tp(h,37785,16)|0)){ai(J,37906,24)|0;g=c[J+496>>2]|0;if(g|0)vb[g&3]();pb[c[J+488>>2]&63](J,h,37930)|0;if(!(Tp(h,37946,16)|0)){bi(J);g=c[J+500>>2]|0;if(g|0)vb[g&3]();pb[c[J+492>>2]&63](J,h,h)|0;if(!(Tp(h,37930,16)|0)){ai(J,38026,32)|0;g=c[J+496>>2]|0;if(g|0)vb[g&3]();pb[c[J+488>>2]&63](J,h,38058)|0;if(!(Tp(h,38074,16)|0)){bi(J);g=c[J+500>>2]|0;if(g|0)vb[g&3]();pb[c[J+492>>2]&63](J,h,h)|0;if(!(Tp(h,38058,16)|0)){g=ym(37765,1,2,4,9,16,504)|0;if(g|0){i=25;break}g=wm(37765,1,2,3,10,16,504)|0;if(g|0){i=25;break}g=xm(37765,1,2,2,10,16,504)|0;c[17617]=g;if(!g)break a;else break}else g=38090}else g=38122;i=25;break}else g=37962}else g=37994;i=25}else{g=37817;i=8}}else{g=37849;i=8}while(0);if((i|0)==8)i=25;if((i|0)==25)c[17617]=g;c[j>>2]=g;Le(43455,j);i=28}else i=28;while(0);if((i|0)==28?c[17617]|0:0){J=50;l=K;return J|0}switch(f|0){case 16:{h=10;I=4;break}case 24:{h=12;I=6;break}case 32:{h=14;I=8;break}default:{J=44;l=K;return J|0}}c[b+480>>2]=h;g=b+484|0;a[g>>0]=a[g>>0]&-2;c[b+488>>2]=29;c[b+492>>2]=30;c[b+496>>2]=1;c[b+500>>2]=2;g=0;do{a[(g&3)+(J+(g>>2<<2))>>0]=a[e+g>>0]|0;g=g+1|0}while((g|0)!=(f|0));j=I+-1|0;H=J+32|0;g=j;while(1){c[H+(g<<2)>>2]=c[J+(g<<2)>>2];if((g|0)>0)g=g+-1|0;else break}G=h|1;h=0;e=0;g=0;do{if((g|0)<(I|0)&(h|0)<4){E=g-I|0;F=h+-4|0;cr(b+((e<<4)+(h<<2))|0,H+(g<<2)|0,S(E>>>0>F>>>0?E:F,-4)|0)|0;do{g=g+1|0;h=h+1|0}while((g|0)<(I|0)&(h|0)<4)}i=(h|0)==4;e=(i&1)+e|0;h=i?0:h;i=(e|0)<(G|0)}while((g|0)<(I|0)&i);if(i){B=H+(j<<2)+1|0;C=H+(j<<2)+2|0;D=H+1|0;E=H+(j<<2)+3|0;F=H+2|0;o=H+(j<<2)|0;p=H+3|0;q=(I|0)==8;r=I>>>1;y=r+-1|0;s=H+(y<<2)|0;t=H+(r<<2)|0;u=H+(y<<2)+1|0;v=H+(r<<2)+1|0;w=H+(y<<2)+2|0;x=H+(r<<2)+2|0;y=H+(y<<2)+3|0;z=H+(r<<2)+3|0;k=r+1|0;A=k>>>0<8;n=H+(r<<2)|0;f=0;i=e;do{j=c[H>>2]|0;e=j&255^a[4801+((d[B>>0]|0)<<2)>>0];a[H>>0]=e;a[D>>0]=(j&65535)>>>8&255^a[4801+((d[C>>0]|0)<<2)>>0];a[F>>0]=j>>>16&255^a[4801+((d[E>>0]|0)<<2)>>0];a[p>>0]=j>>>24&255^a[4801+((d[o>>0]|0)<<2)>>0];a[H>>0]=e&255^c[7104+(f<<2)>>2];f=f+1|0;if(q){g=1;j=c[H>>2]|0;do{e=H+(g<<2)|0;j=c[e>>2]^j;c[e>>2]=j;g=g+1|0}while((g|0)<(r|0));a[t>>0]=a[t>>0]^a[4801+((d[s>>0]|0)<<2)>>0];a[v>>0]=a[v>>0]^a[4801+((d[u>>0]|0)<<2)>>0];a[x>>0]=a[x>>0]^a[4801+((d[w>>0]|0)<<2)>>0];a[z>>0]=a[z>>0]^a[4801+((d[y>>0]|0)<<2)>>0];if(A){g=k;j=c[n>>2]|0;do{e=H+(g<<2)|0;j=c[e>>2]^j;c[e>>2]=j;g=g+1|0}while((g|0)<8)}}else{g=1;j=c[H>>2]|0;do{e=H+(g<<2)|0;j=c[e>>2]^j;c[e>>2]=j;g=g+1|0}while((g|0)<(I|0))}if((i|0)<(G|0)){g=0;do{if((g|0)<(I|0)&(h|0)<4){j=g-I|0;e=h+-4|0;cr(b+((i<<4)+(h<<2))|0,H+(g<<2)|0,S(j>>>0>e>>>0?j:e,-4)|0)|0;do{g=g+1|0;h=h+1|0}while((g|0)<(I|0)&(h|0)<4)}e=(h|0)==4;i=(e&1)+i|0;h=e?0:h}while((g|0)<(I|0)&(i|0)<(G|0))}}while((i|0)<(G|0))}b=J;c[b>>2]=0;c[b+4>>2]=0;b=J+8|0;c[b>>2]=0;c[b+4>>2]=0;b=J+16|0;c[b>>2]=0;c[b+4>>2]=0;b=J+24|0;c[b>>2]=0;c[b+4>>2]=0;b=J+32|0;c[b>>2]=0;c[b+4>>2]=0;b=J+40|0;c[b>>2]=0;c[b+4>>2]=0;b=J+48|0;c[b>>2]=0;c[b+4>>2]=0;J=J+56|0;c[J>>2]=0;c[J+4>>2]=0;J=0;l=K;return J|0}function bi(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=b+484|0;if(a[h>>0]&1)return;i=b+240|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[b+248>>2]=c[b+8>>2];c[b+252>>2]=c[b+12>>2];g=b+480|0;e=b+16|0;if((c[g>>2]|0)>1){f=1;do{e=c[e>>2]|0;j=c[5824+((d[4801+(e>>>6&1020)>>0]|0)<<2)>>2]|0;k=c[5824+((d[4801+(e>>>14&1020)>>0]|0)<<2)>>2]|0;l=c[5824+((d[4801+(e>>>24<<2)>>0]|0)<<2)>>2]|0;c[i+(f<<4)>>2]=(j<<8|j>>>24)^c[5824+((d[4801+(e<<2&1020)>>0]|0)<<2)>>2]^(k<<16|k>>>16)^(l<<24|l>>>8);l=c[b+(f<<4)+4>>2]|0;k=c[5824+((d[4801+(l>>>6&1020)>>0]|0)<<2)>>2]|0;e=c[5824+((d[4801+(l>>>14&1020)>>0]|0)<<2)>>2]|0;j=c[5824+((d[4801+(l>>>24<<2)>>0]|0)<<2)>>2]|0;c[i+(f<<4)+4>>2]=(k<<8|k>>>24)^c[5824+((d[4801+(l<<2&1020)>>0]|0)<<2)>>2]^(e<<16|e>>>16)^(j<<24|j>>>8);j=c[b+(f<<4)+8>>2]|0;e=c[5824+((d[4801+(j>>>6&1020)>>0]|0)<<2)>>2]|0;l=c[5824+((d[4801+(j>>>14&1020)>>0]|0)<<2)>>2]|0;k=c[5824+((d[4801+(j>>>24<<2)>>0]|0)<<2)>>2]|0;c[i+(f<<4)+8>>2]=(e<<8|e>>>24)^c[5824+((d[4801+(j<<2&1020)>>0]|0)<<2)>>2]^(l<<16|l>>>16)^(k<<24|k>>>8);k=c[b+(f<<4)+12>>2]|0;l=c[5824+((d[4801+(k>>>6&1020)>>0]|0)<<2)>>2]|0;j=c[5824+((d[4801+(k>>>14&1020)>>0]|0)<<2)>>2]|0;e=c[5824+((d[4801+(k>>>24<<2)>>0]|0)<<2)>>2]|0;c[i+(f<<4)+12>>2]=(l<<8|l>>>24)^c[5824+((d[4801+(k<<2&1020)>>0]|0)<<2)>>2]^(j<<16|j>>>16)^(e<<24|e>>>8);f=f+1|0;e=b+(f<<4)|0}while((f|0)<(c[g>>2]|0))}else f=1;c[i+(f<<4)>>2]=c[e>>2];c[i+(f<<4)+4>>2]=c[b+(f<<4)+4>>2];c[i+(f<<4)+8>>2]=c[b+(f<<4)+8>>2];c[i+(f<<4)+12>>2]=c[b+(f<<4)+12>>2];a[h>>0]=a[h>>0]|1;return}function ci(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=h+8|0;f=h+4|0;g=h;c[f>>2]=0;c[g>>2]=0;if((a|0)!=2)if((a|0)==5)d=1;else{xg(0);xg(0);g=38154;l=h;return g|0}else d=0;a=c[4472+(d*164|0)>>2]|0;if(vg(f,7,a,0)|0){xg(c[f>>2]|0);xg(c[g>>2]|0);g=38181;l=h;return g|0}b=(vg(g,7,a,0)|0)==0;a=c[f>>2]|0;if(!b){xg(a);xg(c[g>>2]|0);g=38181;l=h;return g|0}b=4472+(d*164|0)+4|0;if(!(Ag(a,b,16)|0)){b=(Ag(c[g>>2]|0,b,16)|0)==0;a=c[f>>2]|0;if(b){b=4472+(d*164|0)+20|0;if((Bg(a,b,16)|0)==0?(Bg(c[g>>2]|0,b,16)|0)==0:0){a=4472+(d*164|0)+36|0;a:do if(!(yg(c[f>>2]|0,e,16,a,16)|0)){b=4472+(d*164|0)+52|0;b:do if(!(Tp(e,b,16)|0)){c:do if(!(zg(c[g>>2]|0,e,16,b,16)|0)){do if(!(Tp(e,a,16)|0)){a=4472+(d*164|0)+68|0;if(yg(c[f>>2]|0,e,16,a,16)|0)break a;b=4472+(d*164|0)+84|0;if(Tp(e,b,16)|0)break b;if(zg(c[g>>2]|0,e,16,b,16)|0)break c;if(Tp(e,a,16)|0)break;a=4472+(d*164|0)+100|0;if(yg(c[f>>2]|0,e,16,a,16)|0)break a;b=4472+(d*164|0)+116|0;if(Tp(e,b,16)|0)break b;if(zg(c[g>>2]|0,e,16,b,16)|0)break c;if(Tp(e,a,16)|0)break;b=4472+(d*164|0)+132|0;if(yg(c[f>>2]|0,e,16,b,16)|0)break a;a=4472+(d*164|0)+148|0;if(Tp(e,a,16)|0)break b;if(zg(c[g>>2]|0,e,16,a,16)|0)break c;if(Tp(e,b,16)|0)break;xg(c[f>>2]|0);xg(c[g>>2]|0);g=0;l=h;return g|0}while(0);xg(c[f>>2]|0);xg(c[g>>2]|0);g=38250;l=h;return g|0}while(0);xg(c[f>>2]|0);xg(c[g>>2]|0);g=38234;l=h;return g|0}while(0);xg(c[f>>2]|0);xg(c[g>>2]|0);g=38217;l=h;return g|0}while(0);xg(c[f>>2]|0);xg(c[g>>2]|0);g=38201;l=h;return g|0}xg(c[f>>2]|0);xg(c[g>>2]|0);g=38194;l=h;return g|0}}else a=c[f>>2]|0;xg(a);xg(c[g>>2]|0);g=38186;l=h;return g|0}function di(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;F=l;l=l+16|0;if((l|0)>=(m|0))$(16);E=F;h=c[b+496>>2]|0;if(h|0)vb[h&3]();j=c[b+488>>2]|0;if(!g){d=E;c[d>>2]=0;c[d+4>>2]=0;E=E+8|0;c[E>>2]=0;c[E+4>>2]=0;l=F;return}k=E+4|0;n=E+8|0;o=E+12|0;p=E+1|0;q=E+2|0;r=E+3|0;s=E+4|0;t=s+1|0;u=s+2|0;v=s+3|0;w=E+8|0;x=w+1|0;y=w+2|0;z=w+3|0;A=E+12|0;B=A+1|0;C=A+2|0;D=A+3|0;do{i=pb[j&63](b,E,d)|0;if(!((e|f)&3)){c[e>>2]=c[f>>2]^c[E>>2];c[e+4>>2]=c[f+4>>2]^c[k>>2];c[e+8>>2]=c[f+8>>2]^c[n>>2];c[e+12>>2]=c[f+12>>2]^c[o>>2]}else{a[e>>0]=a[f>>0]^a[E>>0];a[e+1>>0]=a[f+1>>0]^a[p>>0];a[e+2>>0]=a[f+2>>0]^a[q>>0];a[e+3>>0]=a[f+3>>0]^a[r>>0];a[e+4>>0]=a[f+4>>0]^a[s>>0];a[e+5>>0]=a[f+5>>0]^a[t>>0];a[e+6>>0]=a[f+6>>0]^a[u>>0];a[e+7>>0]=a[f+7>>0]^a[v>>0];a[e+8>>0]=a[f+8>>0]^a[w>>0];a[e+9>>0]=a[f+9>>0]^a[x>>0];a[e+10>>0]=a[f+10>>0]^a[y>>0];a[e+11>>0]=a[f+11>>0]^a[z>>0];a[e+12>>0]=a[f+12>>0]^a[A>>0];a[e+13>>0]=a[f+13>>0]^a[B>>0];a[e+14>>0]=a[f+14>>0]^a[C>>0];a[e+15>>0]=a[f+15>>0]^a[D>>0]}e=e+16|0;f=f+16|0;h=16;do{if((h|0)<=0)break;h=h+-1|0;H=d+h|0;G=(a[H>>0]|0)+1<<24>>24;a[H>>0]=G}while(!(G<<24>>24));g=g+-1|0}while((g|0)!=0);H=E;c[H>>2]=0;c[H+4>>2]=0;H=E+8|0;c[H>>2]=0;c[H+4>>2]=0;if(!i){l=F;return}Te(i+16|0);l=F;return}function ei(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;X=l;l=l+16|0;if((l|0)>=(m|0))$(16);W=X;bi(b);h=c[b+500>>2]|0;if(h|0)vb[h&3]();i=c[b+492>>2]|0;if(!g){d=W;c[d>>2]=0;c[d+4>>2]=0;W=W+8|0;c[W>>2]=0;c[W+4>>2]=0;l=X;return}j=d;k=W+4|0;n=d+4|0;o=W+8|0;p=d+8|0;q=W+12|0;r=d+12|0;s=W+1|0;t=d+1|0;u=W+2|0;v=d+2|0;w=W+3|0;x=d+3|0;y=W+4|0;z=d+4|0;A=W+5|0;B=d+5|0;C=W+6|0;D=d+6|0;E=W+7|0;F=d+7|0;G=W+8|0;H=d+8|0;I=W+9|0;J=d+9|0;K=W+10|0;L=d+10|0;M=W+11|0;N=d+11|0;O=W+12|0;P=d+12|0;Q=W+13|0;R=d+13|0;S=W+14|0;T=d+14|0;U=W+15|0;V=d+15|0;h=g;while(1){g=pb[i&63](b,W,f)|0;if(!((f|j|e)&3)){Y=c[f>>2]|0;c[e>>2]=c[W>>2]^c[d>>2];c[d>>2]=Y;Y=c[f+4>>2]|0;c[e+4>>2]=c[k>>2]^c[n>>2];c[n>>2]=Y;Y=c[f+8>>2]|0;c[e+8>>2]=c[o>>2]^c[p>>2];c[p>>2]=Y;Y=c[f+12>>2]|0;c[e+12>>2]=c[q>>2]^c[r>>2];c[r>>2]=Y}else{Y=a[f>>0]|0;a[e>>0]=a[W>>0]^a[d>>0];a[d>>0]=Y;Y=a[f+1>>0]|0;a[e+1>>0]=a[s>>0]^a[t>>0];a[t>>0]=Y;Y=a[f+2>>0]|0;a[e+2>>0]=a[u>>0]^a[v>>0];a[v>>0]=Y;Y=a[f+3>>0]|0;a[e+3>>0]=a[w>>0]^a[x>>0];a[x>>0]=Y;Y=a[f+4>>0]|0;a[e+4>>0]=a[y>>0]^a[z>>0];a[z>>0]=Y;Y=a[f+5>>0]|0;a[e+5>>0]=a[A>>0]^a[B>>0];a[B>>0]=Y;Y=a[f+6>>0]|0;a[e+6>>0]=a[C>>0]^a[D>>0];a[D>>0]=Y;Y=a[f+7>>0]|0;a[e+7>>0]=a[E>>0]^a[F>>0];a[F>>0]=Y;Y=a[f+8>>0]|0;a[e+8>>0]=a[G>>0]^a[H>>0];a[H>>0]=Y;Y=a[f+9>>0]|0;a[e+9>>0]=a[I>>0]^a[J>>0];a[J>>0]=Y;Y=a[f+10>>0]|0;a[e+10>>0]=a[K>>0]^a[L>>0];a[L>>0]=Y;Y=a[f+11>>0]|0;a[e+11>>0]=a[M>>0]^a[N>>0];a[N>>0]=Y;Y=a[f+12>>0]|0;a[e+12>>0]=a[O>>0]^a[P>>0];a[P>>0]=Y;Y=a[f+13>>0]|0;a[e+13>>0]=a[Q>>0]^a[R>>0];a[R>>0]=Y;Y=a[f+14>>0]|0;a[e+14>>0]=a[S>>0]^a[T>>0];a[T>>0]=Y;Y=a[f+15>>0]|0;a[e+15>>0]=a[U>>0]^a[V>>0];a[V>>0]=Y}h=h+-1|0;if(!h)break;else{e=e+16|0;f=f+16|0}}Y=W;c[Y>>2]=0;c[Y+4>>2]=0;Y=W+8|0;c[Y>>2]=0;c[Y+4>>2]=0;if(!g){l=X;return}Te(g+16|0);l=X;return}function fi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;h=c[b+496>>2]|0;if(h|0)vb[h&3]();z=c[b+488>>2]|0;if(!g)return;j=d;k=d+4|0;l=d+8|0;m=d+12|0;n=d+1|0;o=d+2|0;p=d+3|0;q=d+5|0;r=d+6|0;s=d+7|0;t=d+9|0;u=d+10|0;v=d+11|0;w=d+13|0;x=d+14|0;y=d+15|0;i=f;h=g;while(1){f=pb[z&63](b,d,d)|0;if(!((e|j|i)&3)){g=c[i>>2]|0;c[e>>2]=c[d>>2]^g;c[d>>2]=g;g=c[i+4>>2]|0;c[e+4>>2]=c[k>>2]^g;c[k>>2]=g;g=c[i+8>>2]|0;c[e+8>>2]=c[l>>2]^g;c[l>>2]=g;g=c[i+12>>2]|0;c[e+12>>2]=c[m>>2]^g;c[m>>2]=g}else{g=a[i>>0]|0;a[e>>0]=a[d>>0]^g;a[d>>0]=g;g=a[i+1>>0]|0;a[e+1>>0]=a[n>>0]^g;a[n>>0]=g;g=a[i+2>>0]|0;a[e+2>>0]=a[o>>0]^g;a[o>>0]=g;g=a[i+3>>0]|0;a[e+3>>0]=a[p>>0]^g;a[p>>0]=g;g=a[i+4>>0]|0;a[e+4>>0]=a[k>>0]^g;a[k>>0]=g;g=a[i+5>>0]|0;a[e+5>>0]=a[q>>0]^g;a[q>>0]=g;g=a[i+6>>0]|0;a[e+6>>0]=a[r>>0]^g;a[r>>0]=g;g=a[i+7>>0]|0;a[e+7>>0]=a[s>>0]^g;a[s>>0]=g;g=a[i+8>>0]|0;a[e+8>>0]=a[l>>0]^g;a[l>>0]=g;g=a[i+9>>0]|0;a[e+9>>0]=a[t>>0]^g;a[t>>0]=g;g=a[i+10>>0]|0;a[e+10>>0]=a[u>>0]^g;a[u>>0]=g;g=a[i+11>>0]|0;a[e+11>>0]=a[v>>0]^g;a[v>>0]=g;g=a[i+12>>0]|0;a[e+12>>0]=a[m>>0]^g;a[m>>0]=g;g=a[i+13>>0]|0;a[e+13>>0]=a[w>>0]^g;a[w>>0]=g;g=a[i+14>>0]|0;a[e+14>>0]=a[x>>0]^g;a[x>>0]=g;g=a[i+15>>0]|0;a[e+15>>0]=a[y>>0]^g;a[y>>0]=g}h=h+-1|0;if(!h)break;else{i=i+16|0;e=e+16|0}}if(!f)return;Te(f+16|0);return}function gi(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,x=0,y=0,z=0,A=0;l=c[b+480>>2]|0;p=c[b>>2]^((d[f+2>>0]|0)<<16|(d[f+3>>0]|0)<<24|(d[f+1>>0]|0)<<8|(d[f>>0]|0));q=c[b+4>>2]^((d[f+6>>0]|0)<<16|(d[f+7>>0]|0)<<24|(d[f+5>>0]|0)<<8|(d[f+4>>0]|0));g=c[b+8>>2]^((d[f+10>>0]|0)<<16|(d[f+11>>0]|0)<<24|(d[f+9>>0]|0)<<8|(d[f+8>>0]|0));j=c[b+12>>2]^((d[f+14>>0]|0)<<16|(d[f+15>>0]|0)<<24|(d[f+13>>0]|0)<<8|(d[f+12>>0]|0));k=c[4800+((p>>>8&255)<<2)>>2]|0;s=c[4800+((p>>>16&255)<<2)>>2]|0;r=c[4800+(p>>>24<<2)>>2]|0;o=c[4800+((q>>>8&255)<<2)>>2]|0;m=c[4800+((q>>>16&255)<<2)>>2]|0;t=c[4800+(q>>>24<<2)>>2]|0;i=c[4800+((g>>>8&255)<<2)>>2]|0;n=c[4800+((g>>>16&255)<<2)>>2]|0;h=c[4800+(g>>>24<<2)>>2]|0;f=c[4800+((j>>>8&255)<<2)>>2]|0;f=(t<<24|t>>>8)^(s<<16|s>>>16)^c[4800+((g&255)<<2)>>2]^c[b+24>>2]^(f<<8|f>>>24);g=c[4800+((j>>>16&255)<<2)>>2]|0;g=(r<<24|r>>>8)^c[4800+((q&255)<<2)>>2]^c[b+20>>2]^(i<<8|i>>>24)^(g<<16|g>>>16);i=c[4800+(j>>>24<<2)>>2]|0;i=c[b+16>>2]^c[4800+((p&255)<<2)>>2]^(o<<8|o>>>24)^(n<<16|n>>>16)^(i<<24|i>>>8);j=(m<<16|m>>>16)^(k<<8|k>>>24)^(h<<24|h>>>8)^c[4800+((j&255)<<2)>>2]^c[b+28>>2];h=i&255;if((l|0)>2){k=2;do{t=c[4800+((i>>>8&255)<<2)>>2]|0;w=c[4800+((i>>>16&255)<<2)>>2]|0;m=c[4800+(i>>>24<<2)>>2]|0;x=c[4800+((g>>>8&255)<<2)>>2]|0;q=c[4800+((g>>>16&255)<<2)>>2]|0;p=c[4800+(g>>>24<<2)>>2]|0;u=c[4800+((f>>>8&255)<<2)>>2]|0;z=c[4800+((f>>>16&255)<<2)>>2]|0;s=c[4800+(f>>>24<<2)>>2]|0;y=c[4800+((j>>>8&255)<<2)>>2]|0;y=(p<<24|p>>>8)^(w<<16|w>>>16)^c[4800+((f&255)<<2)>>2]^c[b+(k<<4)+8>>2]^(y<<8|y>>>24);w=c[4800+((j>>>16&255)<<2)>>2]|0;w=(m<<24|m>>>8)^c[4800+((g&255)<<2)>>2]^c[b+(k<<4)+4>>2]^(u<<8|u>>>24)^(w<<16|w>>>16);u=c[4800+(j>>>24<<2)>>2]|0;u=c[b+(k<<4)>>2]^c[4800+(h<<2)>>2]^(x<<8|x>>>24)^(z<<16|z>>>16)^(u<<24|u>>>8);s=(q<<16|q>>>16)^(t<<8|t>>>24)^(s<<24|s>>>8)^c[4800+((j&255)<<2)>>2]^c[b+(k<<4)+12>>2];t=k|1;q=c[4800+((u>>>8&255)<<2)>>2]|0;z=c[4800+((u>>>16&255)<<2)>>2]|0;x=c[4800+(u>>>24<<2)>>2]|0;m=c[4800+((w>>>8&255)<<2)>>2]|0;p=c[4800+((w>>>16&255)<<2)>>2]|0;A=c[4800+(w>>>24<<2)>>2]|0;v=c[4800+((y>>>8&255)<<2)>>2]|0;n=c[4800+((y>>>16&255)<<2)>>2]|0;r=c[4800+(y>>>24<<2)>>2]|0;o=c[4800+((s>>>8&255)<<2)>>2]|0;f=(A<<24|A>>>8)^(z<<16|z>>>16)^c[4800+((y&255)<<2)>>2]^c[b+(t<<4)+8>>2]^(o<<8|o>>>24);o=c[4800+((s>>>16&255)<<2)>>2]|0;g=(x<<24|x>>>8)^c[4800+((w&255)<<2)>>2]^c[b+(t<<4)+4>>2]^(v<<8|v>>>24)^(o<<16|o>>>16);o=c[4800+(s>>>24<<2)>>2]|0;i=c[b+(t<<4)>>2]^c[4800+((u&255)<<2)>>2]^(m<<8|m>>>24)^(n<<16|n>>>16)^(o<<24|o>>>8);j=(p<<16|p>>>16)^(q<<8|q>>>24)^(r<<24|r>>>8)^c[4800+((s&255)<<2)>>2]^c[b+(t<<4)+12>>2];k=k+2|0;h=i&255}while((k|0)<(l|0));k=l+1&-2}else k=2;r=c[b+(k<<4)>>2]|0;u=r^(d[4801+(h<<2)>>0]|0);t=(d[4801+(g>>>6&1020)>>0]|0)<<8^r;v=c[b+(k<<4)+4>>2]|0;x=v^(d[4801+(g<<2&1020)>>0]|0|(d[4801+(i>>>24<<2)>>0]|0)<<24);w=(d[4801+(f>>>6&1020)>>0]|0)<<8^v;s=(d[4801+(f>>>14&1020)>>0]|0)<<16^r;z=c[b+(k<<4)+8>>2]^((d[4801+(g>>>24<<2)>>0]|0)<<24|(d[4801+(i>>>14&1020)>>0]|0)<<16|(d[4801+(f<<2&1020)>>0]|0));y=(d[4801+(j>>>6&1020)>>0]|0)<<8^z;v=(d[4801+(j>>>14&1020)>>0]|0)<<16^v;A=c[b+(k<<4)+12>>2]^((d[4801+(g>>>14&1020)>>0]|0)<<16|(d[4801+(i>>>6&1020)>>0]|0)<<8|(d[4801+(f>>>24<<2)>>0]|0)<<24|(d[4801+(j<<2&1020)>>0]|0));a[e+3>>0]=((d[4801+(j>>>24<<2)>>0]|0)<<24^r)>>>24;a[e+2>>0]=s>>>16;a[e+1>>0]=t>>>8;a[e>>0]=u;a[e+7>>0]=x>>>24;a[e+6>>0]=v>>>16;a[e+5>>0]=w>>>8;a[e+4>>0]=x;a[e+11>>0]=z>>>24;a[e+10>>0]=z>>>16;a[e+9>>0]=y>>>8;a[e+8>>0]=z;a[e+15>>0]=A>>>24;a[e+14>>0]=A>>>16;a[e+13>>0]=A>>>8;a[e+12>>0]=A;return 64}function hi(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,x=0,y=0,z=0,A=0;i=c[b+480>>2]|0;p=b+240|0;m=i;h=c[p+(i<<4)>>2]^((d[f+2>>0]|0)<<16|(d[f+3>>0]|0)<<24|(d[f+1>>0]|0)<<8|(d[f>>0]|0));n=c[p+(i<<4)+12>>2]^((d[f+14>>0]|0)<<16|(d[f+15>>0]|0)<<24|(d[f+13>>0]|0)<<8|(d[f+12>>0]|0));o=c[p+(i<<4)+4>>2]^((d[f+6>>0]|0)<<16|(d[f+7>>0]|0)<<24|(d[f+5>>0]|0)<<8|(d[f+4>>0]|0));i=c[p+(i<<4)+8>>2]^((d[f+10>>0]|0)<<16|(d[f+11>>0]|0)<<24|(d[f+9>>0]|0)<<8|(d[f+8>>0]|0));while(1){g=m+-1|0;k=c[5824+((h&255)<<2)>>2]|0;l=c[5824+((h>>>8&255)<<2)>>2]|0;l=l<<8|l>>>24;j=c[5824+((h>>>16&255)<<2)>>2]|0;j=j<<16|j>>>16;f=c[5824+(h>>>24<<2)>>2]|0;f=f<<24|f>>>8;if((g|0)<=1)break;w=c[5824+((o>>>8&255)<<2)>>2]|0;s=c[5824+((o>>>16&255)<<2)>>2]|0;z=c[5824+(o>>>24<<2)>>2]|0;u=c[5824+((i>>>8&255)<<2)>>2]|0;t=c[5824+((i>>>16&255)<<2)>>2]|0;x=c[5824+(i>>>24<<2)>>2]|0;A=c[5824+((n>>>8&255)<<2)>>2]|0;A=c[p+(g<<4)>>2]^k^(z<<24|z>>>8)^(t<<16|t>>>16)^(A<<8|A>>>24);t=c[5824+((n>>>16&255)<<2)>>2]|0;t=c[5824+((o&255)<<2)>>2]^l^c[p+(g<<4)+4>>2]^(x<<24|x>>>8)^(t<<16|t>>>16);k=c[5824+(n>>>24<<2)>>2]|0;j=(w<<8|w>>>24)^j^c[5824+((i&255)<<2)>>2]^c[p+(g<<4)+8>>2]^(k<<24|k>>>8);u=(s<<16|s>>>16)^f^(u<<8|u>>>24)^c[5824+((n&255)<<2)>>2]^c[p+(g<<4)+12>>2];k=m+-2|0;s=c[5824+((A>>>8&255)<<2)>>2]|0;g=c[5824+((A>>>16&255)<<2)>>2]|0;w=c[5824+(A>>>24<<2)>>2]|0;f=c[5824+((t>>>8&255)<<2)>>2]|0;x=c[5824+((t>>>16&255)<<2)>>2]|0;z=c[5824+(t>>>24<<2)>>2]|0;v=c[5824+((j>>>8&255)<<2)>>2]|0;y=c[5824+((j>>>16&255)<<2)>>2]|0;r=c[5824+(j>>>24<<2)>>2]|0;h=c[5824+((u>>>8&255)<<2)>>2]|0;q=c[5824+((u>>>16&255)<<2)>>2]|0;l=c[5824+(u>>>24<<2)>>2]|0;m=k;h=c[p+(k<<4)>>2]^c[5824+((A&255)<<2)>>2]^(z<<24|z>>>8)^(y<<16|y>>>16)^(h<<8|h>>>24);n=(x<<16|x>>>16)^(w<<24|w>>>8)^(v<<8|v>>>24)^c[5824+((u&255)<<2)>>2]^c[p+(k<<4)+12>>2];o=c[5824+((t&255)<<2)>>2]^(s<<8|s>>>24)^c[p+(k<<4)+4>>2]^(r<<24|r>>>8)^(q<<16|q>>>16);i=(f<<8|f>>>24)^(g<<16|g>>>16)^c[5824+((j&255)<<2)>>2]^c[p+(k<<4)+8>>2]^(l<<24|l>>>8)}u=c[5824+((o>>>8&255)<<2)>>2]|0;r=c[5824+((o>>>16&255)<<2)>>2]|0;x=c[5824+(o>>>24<<2)>>2]|0;A=c[5824+((i>>>8&255)<<2)>>2]|0;q=c[5824+((i>>>16&255)<<2)>>2]|0;w=c[5824+(i>>>24<<2)>>2]|0;m=c[5824+((n>>>8&255)<<2)>>2]|0;m=c[b+256>>2]^k^(x<<24|x>>>8)^(q<<16|q>>>16)^(m<<8|m>>>24);q=c[5824+((n>>>16&255)<<2)>>2]|0;q=c[5824+((o&255)<<2)>>2]^l^c[b+260>>2]^(w<<24|w>>>8)^(q<<16|q>>>16);o=c[5824+(n>>>24<<2)>>2]|0;o=(u<<8|u>>>24)^j^c[5824+((i&255)<<2)>>2]^c[b+264>>2]^(o<<24|o>>>8);A=(r<<16|r>>>16)^f^(A<<8|A>>>24)^c[5824+((n&255)<<2)>>2]^c[b+268>>2];r=c[p>>2]|0;u=r^(d[6848+(m&255)>>0]|0);w=c[p+4>>2]|0;x=w^(d[6848+(q&255)>>0]|0|(d[6848+(m>>>8&255)>>0]|0)<<8);s=(d[6848+(o>>>16&255)>>0]|0)<<16^r;v=(d[6848+(o>>>24)>>0]|0)<<24^w;z=c[b+248>>2]^((d[6848+(q>>>8&255)>>0]|0)<<8|(d[6848+(m>>>16&255)>>0]|0)<<16|(d[6848+(o&255)>>0]|0));t=(d[6848+(A>>>8&255)>>0]|0)<<8^r;w=(d[6848+(A>>>16&255)>>0]|0)<<16^w;y=(d[6848+(A>>>24)>>0]|0)<<24^z;A=c[b+252>>2]^((d[6848+(q>>>16&255)>>0]|0)<<16|(d[6848+(m>>>24)>>0]|0)<<24|(d[6848+(o>>>8&255)>>0]|0)<<8|(d[6848+(A&255)>>0]|0));a[e+3>>0]=((d[6848+(q>>>24)>>0]|0)<<24^r)>>>24;a[e+2>>0]=s>>>16;a[e+1>>0]=t>>>8;a[e>>0]=u;a[e+7>>0]=v>>>24;a[e+6>>0]=w>>>16;a[e+5>>0]=x>>>8;a[e+4>>0]=x;a[e+11>>0]=y>>>24;a[e+10>>0]=z>>>16;a[e+9>>0]=z>>>8;a[e+8>>0]=z;a[e+15>>0]=A>>>24;a[e+14>>0]=A>>>16;a[e+13>>0]=A>>>8;a[e+12>>0]=A;return 64}function ii(){return}function ji(){return}function ki(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;h=c[b+496>>2]|0;if(h|0)vb[h&3]();B=c[b+488>>2]|0;if(!g)return;i=d;j=d+4|0;k=d+8|0;l=d+12|0;m=d+1|0;n=d+2|0;o=d+3|0;p=d+4|0;q=d+5|0;r=d+6|0;s=d+7|0;t=d+8|0;u=d+9|0;v=d+10|0;w=d+11|0;x=d+12|0;y=d+13|0;z=d+14|0;A=d+15|0;h=g;while(1){g=pb[B&63](b,d,d)|0;if(!((e|i|f)&3)){C=c[d>>2]^c[f>>2];c[d>>2]=C;c[e>>2]=C;C=c[j>>2]^c[f+4>>2];c[j>>2]=C;c[e+4>>2]=C;C=c[k>>2]^c[f+8>>2];c[k>>2]=C;c[e+8>>2]=C;C=c[l>>2]^c[f+12>>2];c[l>>2]=C;c[e+12>>2]=C}else{C=a[d>>0]^a[f>>0];a[d>>0]=C;a[e>>0]=C;C=a[m>>0]^a[f+1>>0];a[m>>0]=C;a[e+1>>0]=C;C=a[n>>0]^a[f+2>>0];a[n>>0]=C;a[e+2>>0]=C;C=a[o>>0]^a[f+3>>0];a[o>>0]=C;a[e+3>>0]=C;C=a[p>>0]^a[f+4>>0];a[p>>0]=C;a[e+4>>0]=C;C=a[q>>0]^a[f+5>>0];a[q>>0]=C;a[e+5>>0]=C;C=a[r>>0]^a[f+6>>0];a[r>>0]=C;a[e+6>>0]=C;C=a[s>>0]^a[f+7>>0];a[s>>0]=C;a[e+7>>0]=C;C=a[t>>0]^a[f+8>>0];a[t>>0]=C;a[e+8>>0]=C;C=a[u>>0]^a[f+9>>0];a[u>>0]=C;a[e+9>>0]=C;C=a[v>>0]^a[f+10>>0];a[v>>0]=C;a[e+10>>0]=C;C=a[w>>0]^a[f+11>>0];a[w>>0]=C;a[e+11>>0]=C;C=a[x>>0]^a[f+12>>0];a[x>>0]=C;a[e+12>>0]=C;C=a[y>>0]^a[f+13>>0];a[y>>0]=C;a[e+13>>0]=C;C=a[z>>0]^a[f+14>>0];a[z>>0]=C;a[e+14>>0]=C;C=a[A>>0]^a[f+15>>0];a[A>>0]=C;a[e+15>>0]=C}h=h+-1|0;if(!h)break;else{f=f+16|0;e=e+16|0}}if(!g)return;Te(g+16|0);return}function li(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;i=c[b+496>>2]|0;if(i|0)vb[i&3]();C=c[b+488>>2]|0;if(!g)return;if(!h){k=(g<<4)+-16|0;i=d;j=e;h=g;while(1){if(!((f|j|i)&3)){c[j>>2]=c[i>>2]^c[f>>2];c[j+4>>2]=c[i+4>>2]^c[f+4>>2];c[j+8>>2]=c[i+8>>2]^c[f+8>>2];c[j+12>>2]=c[i+12>>2]^c[f+12>>2]}else{a[j>>0]=a[i>>0]^a[f>>0];a[j+1>>0]=a[i+1>>0]^a[f+1>>0];a[j+2>>0]=a[i+2>>0]^a[f+2>>0];a[j+3>>0]=a[i+3>>0]^a[f+3>>0];a[j+4>>0]=a[i+4>>0]^a[f+4>>0];a[j+5>>0]=a[i+5>>0]^a[f+5>>0];a[j+6>>0]=a[i+6>>0]^a[f+6>>0];a[j+7>>0]=a[i+7>>0]^a[f+7>>0];a[j+8>>0]=a[i+8>>0]^a[f+8>>0];a[j+9>>0]=a[i+9>>0]^a[f+9>>0];a[j+10>>0]=a[i+10>>0]^a[f+10>>0];a[j+11>>0]=a[i+11>>0]^a[f+11>>0];a[j+12>>0]=a[i+12>>0]^a[f+12>>0];a[j+13>>0]=a[i+13>>0]^a[f+13>>0];a[j+14>>0]=a[i+14>>0]^a[f+14>>0];a[j+15>>0]=a[i+15>>0]^a[f+15>>0]}i=pb[C&63](b,j,j)|0;h=h+-1|0;if(!h)break;else{i=j;f=f+16|0;j=j+16|0}}e=e+k|0}else{j=e;k=e+4|0;l=e+8|0;m=e+12|0;n=e+1|0;o=e+2|0;p=e+3|0;q=e+4|0;r=e+5|0;s=e+6|0;t=e+7|0;u=e+8|0;v=e+9|0;w=e+10|0;x=e+11|0;y=e+12|0;z=e+13|0;A=e+14|0;B=e+15|0;i=d;h=g;while(1){if(!((f|j|i)&3)){c[e>>2]=c[i>>2]^c[f>>2];c[k>>2]=c[i+4>>2]^c[f+4>>2];c[l>>2]=c[i+8>>2]^c[f+8>>2];c[m>>2]=c[i+12>>2]^c[f+12>>2]}else{a[e>>0]=a[i>>0]^a[f>>0];a[n>>0]=a[i+1>>0]^a[f+1>>0];a[o>>0]=a[i+2>>0]^a[f+2>>0];a[p>>0]=a[i+3>>0]^a[f+3>>0];a[q>>0]=a[i+4>>0]^a[f+4>>0];a[r>>0]=a[i+5>>0]^a[f+5>>0];a[s>>0]=a[i+6>>0]^a[f+6>>0];a[t>>0]=a[i+7>>0]^a[f+7>>0];a[u>>0]=a[i+8>>0]^a[f+8>>0];a[v>>0]=a[i+9>>0]^a[f+9>>0];a[w>>0]=a[i+10>>0]^a[f+10>>0];a[x>>0]=a[i+11>>0]^a[f+11>>0];a[y>>0]=a[i+12>>0]^a[f+12>>0];a[z>>0]=a[i+13>>0]^a[f+13>>0];a[A>>0]=a[i+14>>0]^a[f+14>>0];a[B>>0]=a[i+15>>0]^a[f+15>>0]}i=pb[C&63](b,e,e)|0;h=h+-1|0;if(!h)break;else{i=e;f=f+16|0}}}do if((e|0)!=(d|0))if(!((e|d)&3)){c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];break}else{a[d>>0]=a[e>>0]|0;a[d+1>>0]=a[e+1>>0]|0;a[d+2>>0]=a[e+2>>0]|0;a[d+3>>0]=a[e+3>>0]|0;a[d+4>>0]=a[e+4>>0]|0;a[d+5>>0]=a[e+5>>0]|0;a[d+6>>0]=a[e+6>>0]|0;a[d+7>>0]=a[e+7>>0]|0;a[d+8>>0]=a[e+8>>0]|0;a[d+9>>0]=a[e+9>>0]|0;a[d+10>>0]=a[e+10>>0]|0;a[d+11>>0]=a[e+11>>0]|0;a[d+12>>0]=a[e+12>>0]|0;a[d+13>>0]=a[e+13>>0]|0;a[d+14>>0]=a[e+14>>0]|0;a[d+15>>0]=a[e+15>>0]|0;break}while(0);if(!i)return;Te(i+16|0);return}
+function Mk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;fa=l;l=l+208|0;if((l|0)>=(m|0))$(208);U=fa+136|0;T=fa+72|0;R=fa+40|0;H=fa+20|0;I=fa;v=c[e+4>>2]|0;V=c[f+4>>2]|0;r=V<<1;W=c[f+8>>2]|0;g=v<<5;if((g|0)<=512)if((g|0)<=256)if((g|0)>128)D=3;else D=(g|0)>64?2:1;else D=4;else D=5;u=c[e+12>>2]&1;S=(u|0)!=0;s=c[f+12>>2]&1;q=(s|0)!=0;if(!b)k=0;else k=(c[b+12>>2]&1|0)!=0;n=k&1;Z=a+16|0;g=c[Z>>2]|0;o=c[e+16>>2]|0;if(!V)Ve();if(!v){if((V|0)==1){ea=(c[c[f+16>>2]>>2]|0)!=1;c[a+4>>2]=ea&1;if(ea)G=13}else{c[a+4>>2]=1;G=13}if((G|0)==13){if((c[a>>2]|0)<1){ql(a,1);g=c[Z>>2]|0}c[g>>2]=1}c[a+8>>2]=0;l=fa;return}X=q?V:0;Y=ml(V,s)|0;f=c[f+16>>2]|0;Q=c[f+(V+-1<<2)>>2]|0;P=Q>>>0<65536?(Q>>>0<256?0:8):Q>>>0<16777216?16:24;P=32-(d[45555+(Q>>>P)>>0]|0)-P|0;Q=(P|0)!=0;if(!Q){if((V|0)>0){e=0;do{c[Y+(e<<2)>>2]=c[f+(e<<2)>>2];e=e+1|0}while((e|0)!=(V|0))}}else _k(Y,f,V,P)|0;i=c[b+4>>2]|0;p=c[b+8>>2]|0;a:do if((i|0)>(V|0)){j=i+1|0;h=k?j:0;j=ml(j,n)|0;if((i|0)>0){f=c[b+16>>2]|0;e=0;do{c[j+(e<<2)>>2]=c[f+(e<<2)>>2];e=e+1|0}while((e|0)!=(i|0))}Yk(j+(V<<2)|0,0,j,i,Y,V)|0;i=V;while(1){if((i|0)<=0){f=j;b=j;e=i;G=29;break a}e=i+-1|0;if(!(c[j+(e<<2)>>2]|0))i=e;else{f=j;b=j;G=31;break}}}else{f=c[b+16>>2]|0;b=0;h=0;e=i;G=29}while(0);if((G|0)==29)if(!e){c[a+4>>2]=0;c[a+8>>2]=0;_=0;aa=0;ba=0;ca=0;da=b;ea=h}else{i=e;G=31}do if((G|0)==31){if((g|0)==(f|0)){if(b|0)Ie(45811,45822,515,45832);b=k?i:0;f=ml(i,n)|0;if((i|0)>0){e=0;do{c[f+(e<<2)>>2]=c[g+(e<<2)>>2];e=e+1|0}while((e|0)!=(i|0));t=f;O=f;N=b}else{t=f;O=f;N=b}}else{t=f;O=b;N=h}if((g|0)==(o|0)){b=S?v:0;f=ml(v,u)|0;if((v|0)>0){e=0;do{c[f+(e<<2)>>2]=c[g+(e<<2)>>2];e=e+1|0}while((e|0)!=(v|0));z=f;M=f;L=b}else{z=f;M=f;L=b}}else{z=o;M=0;L=0}if((c[a>>2]|0)<(r|0)){ql(a,r);g=c[Z>>2]|0}J=r+2|0;K=q?J:0;J=ml(J,s)|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;F=(p|0)!=0&(c[z>>2]&1|0)!=0;if(D>>>0>1){if((i|0)<16)el(J,t,i,t,i)|0;else dl(J,t,i,t,i,R);e=i<<1;if((e|0)>(V|0)){Yk(J+(V<<2)|0,0,J,e,Y,V)|0;e=V}}else e=0;b=ml(i,u)|0;c[U>>2]=b;c[T>>2]=i;p=(i|0)>0;if(p){f=0;do{c[b+(f<<2)>>2]=c[t+(f<<2)>>2];f=f+1|0}while((f|0)!=(i|0))}q=D+-1|0;E=1<<q;if((E|0)>1){n=(e|0)<16;o=g+(V<<2)|0;k=1;h=i;f=i;do{if((e|0)<(f|0)){if(n)el(g,b,f,J,e)|0;else dl(g,b,f,J,e,R);f=f+e|0;if((f|0)>(V|0)){Yk(o,0,g,f,Y,V)|0;f=V}}else{if((f|0)<16)el(g,J,e,b,f)|0;else dl(g,J,e,b,f,R);f=f+e|0;if((f|0)>(V|0)){Yk(o,0,g,f,Y,V)|0;f=V}}b=ml(f,u)|0;c[U+(k<<2)>>2]=b;c[T+(k<<2)>>2]=f;h=(h|0)<(f|0)?f:h;if((f|0)>0){j=0;do{c[b+(j<<2)>>2]=c[g+(j<<2)>>2];j=j+1|0}while((j|0)!=(f|0))}k=k+1|0}while((k|0)!=(E|0));C=h}else C=i;B=ml(C,u)|0;if((C|0)>0)Yq(B|0,0,C<<2|0)|0;j=v+-1|0;if((D|0)!=1)if((V|0)>0){Yq(g|0,0,V<<2|0)|0;e=V}else e=V;else e=i;if(p){f=0;do{c[g+(f<<2)>>2]=c[t+(f<<2)>>2];f=f+1|0}while((f|0)!=(i|0))}b=c[z+(j<<2)>>2]|0;i=b>>>0<65536?(b>>>0<256?0:8):b>>>0<16777216?16:24;i=32-(d[45555+(b>>>i)>>0]|0)-i|0;y=32-D|0;A=(q|0)==31;q=H+4|0;r=I+4|0;s=I+8|0;t=H+8|0;u=I+12|0;v=H+12|0;w=H+16|0;x=I+16|0;b=b<<i<<1;i=31-i|0;h=J;f=0;b:while(1){if(!b){b=j;while(1){f=i+f|0;j=b+-1|0;if((b|0)<1){u=0;b=0;break b}b=c[z+(j<<2)>>2]|0;if(!b){i=32;b=j}else{i=32;break}}}p=b>>>0<65536?(b>>>0<256?0:8):b>>>0<16777216?16:24;p=32-p-(d[45555+(b>>>p)>>0]|0)|0;b=b<<p;n=i-p|0;p=p+f|0;if((n|0)<(D|0)){o=j+-1|0;if((j|0)<1){G=94;break}j=c[z+(o<<2)>>2]|0;i=n+y|0;k=j>>>i|b>>>y;b=j<<D-n}else{k=b>>>y;b=b<<D;i=n-D|0;o=j}n=k&0-k;f=n>>>0<65536?(n>>>0<256?0:8):n>>>0<16777216?16:24;f=(d[45555+(n>>>f)>>0]|0)+-1+f|0;n=k>>>f>>>1;j=p+D-f|0;if(!j)k=h;else while(1){if((e|0)<16)el(h,g,e,g,e)|0;else dl(h,g,e,g,e,R);e=e<<1;if((e|0)>(V|0)){Yk(h+(V<<2)|0,0,h,e,Y,V)|0;e=V}j=j+-1|0;if(!j){k=g;g=h;break}else{p=g;g=h;h=p}}do if(A){h=0;G=90}else{j=0;h=0;do{p=c[T+(j<<2)>>2]|0;c[q>>2]=p;c[H>>2]=p;c[r>>2]=p;c[I>>2]=p;c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=B;c[x>>2]=c[U+(j<<2)>>2];ga=(j|0)==(n|0);Dl(H,I,ga&1)|0;h=(ga?p:0)|h;j=j+1|0}while((j|0)<(E|0));if((h|0)<16){G=90;break}dl(k,g,e,B,h,R)}while(0);if((G|0)==90){G=0;el(k,g,e,B,h)|0}e=h+e|0;if((e|0)<=(V|0)){h=g;g=k;j=o;continue}Yk(k+(V<<2)|0,0,k,e,Y,V)|0;h=g;g=k;j=o;e=V}if((G|0)==94){b=b>>>(32-n|0);if(!n){u=b;b=0;f=p}else{u=b&0-b;ga=u>>>0<65536?(u>>>0<256?0:8):u>>>0<16777216?16:24;ga=ga+-1+(d[45555+(u>>>ga)>>0]|0)|0;u=b>>>ga;b=ga;f=i+f-ga|0}}if(!f)t=h;else while(1){f=f+-1|0;if((e|0)<16)el(h,g,e,g,e)|0;else dl(h,g,e,g,e,R);e=e<<1;if((e|0)>(V|0)){Yk(h+(V<<2)|0,0,h,e,Y,V)|0;e=V}if(!f){t=g;g=h;break}else{ga=g;g=h;h=ga}}do if(u){do if(A){f=0;G=108}else{j=H+4|0;k=I+4|0;n=I+8|0;o=H+8|0;p=I+12|0;q=H+12|0;r=H+16|0;s=I+16|0;i=u>>>1;h=0;f=0;do{ga=c[T+(h<<2)>>2]|0;c[j>>2]=ga;c[H>>2]=ga;c[k>>2]=ga;c[I>>2]=ga;c[n>>2]=0;c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;c[r>>2]=B;c[s>>2]=c[U+(h<<2)>>2];D=(h|0)==(i|0);Dl(H,I,D&1)|0;f=(D?ga:0)|f;h=h+1|0}while((h|0)<(E|0));if((f|0)<16){G=108;break}dl(t,g,e,B,f,R)}while(0);if((G|0)==108)el(t,g,e,B,f)|0;e=f+e|0;if((e|0)>(V|0)){Yk(t+(V<<2)|0,0,t,e,Y,V)|0;e=V}if(!b){g=t;break}else f=t;while(1){if((e|0)<16)el(g,f,e,f,e)|0;else dl(g,f,e,f,e,R);e=e<<1;if((e|0)>(V|0)){Yk(g+(V<<2)|0,0,g,e,Y,V)|0;e=V}b=b+-1|0;if(!b)break;else{ga=f;f=g;g=ga}}}while(0);b=c[Z>>2]|0;do if(Q){f=_k(b,g,e,P)|0;g=c[Z>>2]|0;if(!f)break;c[g+(e<<2)>>2]=f;e=e+1|0}else{if((b|0)==(g|0))break;if((e|0)>0)f=0;else{g=b;break}do{c[b+(f<<2)>>2]=c[g+(f<<2)>>2];f=f+1|0}while((f|0)!=(e|0));g=b}while(0);if((e|0)>=(V|0)){Yk(g+(V<<2)|0,0,g,e,Y,V)|0;e=V}if(Q)gl(g,g,e,P)|0;while(1){if((e|0)<=0)break;f=e+-1|0;if(!(c[g+(f<<2)>>2]|0))e=f;else break}fl(R);if(!A)if(S){f=0;do{ol(c[U+(f<<2)>>2]|0,c[T+(f<<2)>>2]|0);f=f+1|0}while((f|0)<(E|0))}else{f=0;do{ol(c[U+(f<<2)>>2]|0,0);f=f+1|0}while((f|0)<(E|0))}ol(B,S?C:0);c:do if(F&(e|0)!=0){if(Q)gl(Y,Y,V,P)|0;f=hl(g,Y,g,e)|0;b=V-e|0;d:do if(!b)e=V;else{T=g+(e<<2)|0;ga=Y+(e<<2)|0;e=ga+4|0;ga=c[ga>>2]|0;U=ga-f|0;f=T+4|0;c[T>>2]=U;if(U>>>0>ga>>>0)while(1){b=b+-1|0;if(!b){e=V;break d}i=e+4|0;ga=c[e>>2]|0;h=f+4|0;c[f>>2]=ga+-1;if(!ga){e=i;f=h}else{f=h;break}}else i=e;if((f|0)==(i|0)){e=V;break}h=b+-1|0;if((b|0)>1)e=0;else{e=V;break}do{c[f+(e<<2)>>2]=c[i+(e<<2)>>2];e=e+1|0}while((e|0)!=(h|0));e=V}while(0);while(1){if((e|0)<=0){f=W;break c}f=e+-1|0;if(!(c[g+(f<<2)>>2]|0))e=f;else{f=W;break}}}else f=0;while(0);if((c[Z>>2]|0)==(g|0)){c[a+4>>2]=e;c[a+8>>2]=f;_=J;aa=K;ba=M;ca=L;da=O;ea=N;break}else Ie(45847,45822,786,45832)}while(0);if(Y|0)ol(Y,X);if(da|0)ol(da,ea);if(ba|0)ol(ba,ca);if(!_){l=fa;return}ol(_,aa);l=fa;return}function Nk(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=c[a+4>>2]|0;if(!g){h=0;return h|0}f=c[a+16>>2]|0;a=0;e=0;while(1){b=c[f+(e<<2)>>2]|0;if(b|0)break;a=a+32|0;e=e+1|0;if(e>>>0>=g>>>0){h=6;break}}if((h|0)==6)return a|0;g=b&0-b;h=g>>>0<65536?(g>>>0<256?0:8):g>>>0<16777216?16:24;h=a+-1+h+(d[45555+(g>>>h)>>0]|0)|0;return h|0}function Ok(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Pk(a,b,0,c,d,0)|0}function Pk(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;if(g|0)c[g>>2]=c[b+8>>2];k=b+4|0;i=c[k>>2]|0;g=i<<2;c[f>>2]=g;g=(i|0)==0?1:g;i=(e|0)<0;j=0-e|0;g=(g>>>0<d>>>0?d:g)+(i?j:e)|0;if((h|0)==0?(c[b+12>>2]&1|0)==0:0)l=_e(g)|0;else l=$e(g)|0;if(!l){f=0;return f|0}h=i?l+j|0:l;g=c[k>>2]|0;if((g|0)>0){i=b+16|0;e=h;while(1){b=g;g=g+-1|0;k=c[(c[i>>2]|0)+(g<<2)>>2]|0;a[e>>0]=k>>>24;a[e+1>>0]=k>>>16;a[e+2>>0]=k>>>8;a[e+3>>0]=k;if((b|0)<=1)break;else e=e+4|0}}g=c[f>>2]|0;if(d|0){i=g>>>1;if(i|0){j=g+-1|0;e=0;do{m=h+e|0;k=a[m>>0]|0;b=h+(j-e)|0;a[m>>0]=a[b>>0]|0;a[b>>0]=k;e=e+1|0}while((e|0)!=(i|0))}if(g>>>0<d>>>0){Yq(h+g|0,0,d-g|0)|0;g=d}c[f>>2]=g;m=l;return m|0}if(!g){m=l;return m|0}else e=h;while(1){if(a[e>>0]|0)break;e=e+1|0;g=g+-1|0;c[f>>2]=g;if(!g){g=0;break}}if((e|0)==(h|0)){m=l;return m|0}dr(h|0,e|0,g|0)|0;m=l;return m|0}function Qk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Pk(a,b,c,d,e,0)|0}function Rk(a,b,e,f){a=a|0;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;if(a|0?c[a+12>>2]&16|0:0){sl();return}n=(e+3|0)>>>2;if((c[a>>2]|0)<(n|0))ql(a,n);c[a+8>>2]=f;m=e+-1|0;g=b+m|0;if((m|0)>3){l=e+-5|0;f=l>>>2;m=f<<2;f=f+1|0;l=l-m|0;k=c[a+16>>2]|0;h=0;j=e;while(1){i=j+-4|0;c[k+(h<<2)>>2]=(d[b+(j+-2)>>0]|0)<<8|(d[g>>0]|0)|(d[b+(j+-3)>>0]|0)<<16|(d[b+i>>0]|0)<<24;h=h+1|0;if((h|0)==(f|0))break;else{g=b+(j+-5)|0;j=i}}h=b+l|0;e=e+-4-m|0}else{f=0;h=g}if((e|0)>0){g=h+-1|0;e=d[h>>0]|0;if(g>>>0>=b>>>0){e=(d[g>>0]|0)<<8|e;g=h+-2|0}if(g>>>0>=b>>>0){e=(d[g>>0]|0)<<16|e;g=g+-1|0}if(g>>>0>=b>>>0)e=(d[g>>0]|0)<<24|e;c[(c[a+16>>2]|0)+(f<<2)>>2]=e;f=f+1|0}c[a+4>>2]=f;if((f|0)==(n|0))return;else Ie(45860,45872,377,45883)}function Sk(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;if(!f)m=0;else m=(af(f)|0)!=0;j=(e|0)==3;o=j?0:g;switch(e|0){case 1:{e=(o+3|0)>>>2;if(m)k=nl(e)|0;else k=ll(e)|0;if(o|0?(Rk(k,f,o,0),f=a[f>>0]|0,l=k+8|0,c[l>>2]=(f&255)>>>7&255,f<<24>>24<0):0){g=lk(k)|0;if(!(c[k+12>>2]&16)){kk(k);i=c[k+16>>2]|0;j=c[k+4>>2]|0;if(j|0){e=0;do{f=i+(e<<2)|0;c[f>>2]=~c[f>>2];e=e+1|0}while((e|0)!=(j|0))}c[l>>2]=0;pk(k,g+-1|0)}else sl();ek(k,k,1);c[l>>2]=1}if(!b)tl(k);else{kk(k);c[b>>2]=k}if(!h){b=0;return b|0}c[h>>2]=o;b=0;return b|0}case 5:{e=(o+3|0)>>>2;if(m)e=nl(e)|0;else e=ll(e)|0;if(o|0)Rk(e,f,o,0);if(!b)tl(e);else{kk(e);c[b>>2]=e}if(!h){b=0;return b|0}c[h>>2]=o;b=0;return b|0}case 2:{a:do if(o>>>0>=2?(i=d[f>>0]<<8|d[f+1>>0],i>>>0<=16384):0){i=(i+7|0)>>>3;k=(i+3|0)>>>2;if(m)e=nl(k)|0;else e=ll(k)|0;c[e+4>>2]=k;c[e+8>>2]=0;if(!k)g=2;else{m=e+16|0;g=2;j=f+2|0;i=0-i&3;b:while(1){l=0;do{g=g+1|0;if(g>>>0>o>>>0)break b;f=j;j=j+1|0;l=d[f>>0]|l<<8;i=i+1|0}while((i|0)<4);f=k;k=k+-1|0;c[(c[m>>2]|0)+(k<<2)>>2]=l;if((f|0)<=1)break a;else i=0}tl(e);e=0}}else{e=0;g=0}while(0);if(h|0)c[h>>2]=g;g=(e|0)!=0;if(!((b|0)!=0&g))if(g){tl(e);e=0}else e=0;else{kk(e);c[b>>2]=e}b=e|0?0:65;return b|0}default:{if(j){if((o+-1|0)>>>0<3){b=66;return b|0}i=d[f+1>>0]<<16|d[f>>0]<<24|d[f+2>>0]<<8|d[f+3>>0];g=f+4|0;f=o+-4|0;if(o|0?(f|0)!=0&i>>>0>f>>>0:0){b=67;return b|0}l=i+4|0;e=(i+3|0)>>>2;if(m)k=nl(e)|0;else k=ll(e)|0;if(i|0?(Rk(k,g,i,0),f=a[g>>0]|0,n=k+8|0,c[n>>2]=(f&255)>>>7&255,f<<24>>24<0):0){g=lk(k)|0;if(!(c[k+12>>2]&16)){kk(k);i=c[k+16>>2]|0;j=c[k+4>>2]|0;if(j|0){e=0;do{f=i+(e<<2)|0;c[f>>2]=~c[f>>2];e=e+1|0}while((e|0)!=(j|0))}c[n>>2]=0;pk(k,g+-1|0)}else sl();ek(k,k,1);c[n>>2]=1}if(h|0)c[h>>2]=l;if(!b){tl(k);b=0;return b|0}else{kk(k);c[b>>2]=k;b=0;return b|0}}if(!((e|0)==4&(g|0)==0)){b=45;return b|0}if(m)p=nl(0)|0;else p=ll(0)|0;g=(a[f>>0]|0)==45;e=g?f+1|0:f;if((a[e>>0]|0)==48)e=(a[e+1>>0]|0)==120?e+2|0:e;k=Fo(e)|0;j=((k<<2)+7|0)>>>3;i=(j+3|0)>>>2;if((c[p>>2]|0)>>>0<i>>>0)ql(p,i);c[p+4>>2]=i;c[p+8>>2]=g&1;c:do if(i|0){o=p+16|0;j=0-j&3;g=k&1;d:while(1){n=0;while(1){if(!g){g=a[e>>0]|0;if(!(g<<24>>24)){e=82;break d}else{k=g<<24>>24;g=e+1|0}}else{k=48;g=e}e=g+1|0;l=a[g>>0]|0;m=l<<24>>24;if(!(l<<24>>24)){e=84;break d}g=k+-48|0;do if(g>>>0>=10){if((k+-97|0)>>>0<6){g=k+-87|0;break}if((k+-65|0)>>>0>=6){e=90;break d}g=k+-55|0}while(0);k=g<<4;do if((l+-48&255)<10)g=m+-48|0;else{if((l+-97&255)<6){g=m+-87|0;break}if((l+-65&255)>=6){e=97;break d}g=m+-55|0}while(0);n=k|n<<8|g;j=j+1|0;if((j|0)>=4)break;else g=0}m=i;i=i+-1|0;c[(c[o>>2]|0)+(i<<2)>>2]=n;if((m|0)<=1)break c;else{j=0;g=0}}if((e|0)==82)rl(p);else if((e|0)==84)rl(p);else if((e|0)==90)rl(p);else if((e|0)==97)rl(p);tl(p);b=65;return b|0}while(0);if(!b)tl(p);else{kk(p);c[b>>2]=p}if(!h){b=0;return b|0}c[h>>2]=Fo(f)|0;b=0;return b|0}}return 0}function Tk(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,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=lk(h)|0;p=(g|0)==0?q:g;if((c[h+8>>2]|0)!=0?(vk(h,0)|0)!=0:0)o=1;else o=0;c[p>>2]=0;switch(b|0){case 1:{i=h+4|0;j=c[i>>2]|0;b=j<<2;j=(j|0)==0;g=j?1:b;if(!(c[h+12>>2]&1))k=_e(g)|0;else k=$e(g)|0;if(!k){p=Sn()|0;l=q;return p|0}g=c[i>>2]|0;if((g|0)>0){h=h+16|0;i=k;while(1){r=g;g=g+-1|0;s=c[(c[h>>2]|0)+(g<<2)>>2]|0;a[i>>0]=s>>>24;a[i+1>>0]=s>>>16;a[i+2>>0]=s>>>8;a[i+3>>0]=s;if((r|0)<=1)break;else i=i+4|0}}if(!j){g=k;while(1){if(a[g>>0]|0)break;g=g+1|0;b=b+-1|0;if(!b){b=0;break}}if((g|0)==(k|0))i=b;else{dr(k|0,g|0,b|0)|0;i=b}}else i=0;do if(!o)if(!i)if(!e){g=0;break}else{b=0;g=0;n=26;break}else{g=(d[k>>0]|0)>>>7&255;b=g;n=23;break}else{Uk(k,i);g=a[k>>0]|0;b=g<<24>>24<0?0:2;g=(g&255)>>>7&255^1;n=23}while(0);do if((n|0)==23){g=g+i|0;i=(e|0)!=0;if(!(i&g>>>0>f>>>0))if(i){n=26;break}else break;cf(k);s=66;l=q;return s|0}while(0);if((n|0)==26){switch(b&3){case 1:{a[e>>0]=0;e=e+1|0;break}case 0:break;default:{a[e>>0]=-1;e=e+1|0}}cr(e|0,k|0,g-((b|0)!=0&1)|0)|0}cf(k);c[p>>2]=g;s=0;l=q;return s|0}case 5:{g=(i+7|0)>>>3;b=(e|0)!=0;if(b&g>>>0>f>>>0){s=66;l=q;return s|0}if(b){i=h+4|0;j=c[i>>2]|0;g=j<<2;j=(j|0)==0;b=j?1:g;if(!(c[h+12>>2]&1))k=_e(b)|0;else k=$e(b)|0;if(!k){s=Sn()|0;l=q;return s|0}b=c[i>>2]|0;if((b|0)>0){h=h+16|0;i=k;while(1){s=b;b=b+-1|0;r=c[(c[h>>2]|0)+(b<<2)>>2]|0;a[i>>0]=r>>>24;a[i+1>>0]=r>>>16;a[i+2>>0]=r>>>8;a[i+3>>0]=r;if((s|0)<=1)break;else i=i+4|0}}if(!j){b=k;while(1){if(a[b>>0]|0)break;b=b+1|0;g=g+-1|0;if(!g){g=0;break}}if((b|0)!=(k|0))dr(k|0,b|0,g|0)|0}else g=0;cr(e|0,k|0,g|0)|0;cf(k)}c[p>>2]=g;s=0;l=q;return s|0}case 2:{g=(i+7|0)>>>3;if(o|0){s=45;l=q;return s|0}b=(e|0)!=0;if(b&(g+2|0)>>>0>f>>>0){s=66;l=q;return s|0}if(b){a[e>>0]=i>>>8;a[e+1>>0]=i;i=h+4|0;j=c[i>>2]|0;g=j<<2;j=(j|0)==0;b=j?1:g;if(!(c[h+12>>2]&1))k=_e(b)|0;else k=$e(b)|0;if(!k){s=Sn()|0;l=q;return s|0}b=c[i>>2]|0;if((b|0)>0){h=h+16|0;i=k;while(1){s=b;b=b+-1|0;r=c[(c[h>>2]|0)+(b<<2)>>2]|0;a[i>>0]=r>>>24;a[i+1>>0]=r>>>16;a[i+2>>0]=r>>>8;a[i+3>>0]=r;if((s|0)<=1)break;else i=i+4|0}}if(!j){b=k;while(1){if(a[b>>0]|0)break;b=b+1|0;g=g+-1|0;if(!g){g=0;break}}if((b|0)!=(k|0))dr(k|0,b|0,g|0)|0}else g=0;cr(e+2|0,k|0,g|0)|0;cf(k)}c[p>>2]=g+2;s=0;l=q;return s|0}case 3:{i=h+4|0;j=c[i>>2]|0;b=j<<2;j=(j|0)==0;g=j?1:b;if(!(c[h+12>>2]&1))k=_e(g)|0;else k=$e(g)|0;if(!k){s=Sn()|0;l=q;return s|0}g=c[i>>2]|0;if((g|0)>0){h=h+16|0;i=k;while(1){s=g;g=g+-1|0;r=c[(c[h>>2]|0)+(g<<2)>>2]|0;a[i>>0]=r>>>24;a[i+1>>0]=r>>>16;a[i+2>>0]=r>>>8;a[i+3>>0]=r;if((s|0)<=1)break;else i=i+4|0}}if(!j){g=k;while(1){if(a[g>>0]|0)break;g=g+1|0;b=b+-1|0;if(!b){b=0;break}}if((g|0)==(k|0))g=b;else{dr(k|0,g|0,b|0)|0;g=b}}else g=0;if(!o)if(!g){h=0;b=0}else{b=(d[k>>0]|0)>>>7&255;h=b;b=b+g|0}else{Uk(k,g);b=a[k>>0]|0;h=b<<24>>24<0?0:2;b=((b&255)>>>7&255^1)+g|0}i=b+4|0;if(e|0){if(i>>>0>f>>>0){cf(k);s=66;l=q;return s|0}a[e>>0]=b>>>24;a[e+1>>0]=b>>>16;a[e+2>>0]=b>>>8;g=e+4|0;a[e+3>>0]=b;switch(h&3){case 1:{a[g>>0]=0;g=e+5|0;break}case 0:break;default:{a[g>>0]=-1;g=e+5|0}}cr(g|0,k|0,b-((h|0)!=0&1)|0)|0}cf(k);c[p>>2]=i;s=0;l=q;return s|0}case 4:{i=h+4|0;j=c[i>>2]|0;b=j<<2;j=(j|0)==0;g=j?1:b;if(!(c[h+12>>2]&1))k=_e(g)|0;else k=$e(g)|0;if(!k){s=Sn()|0;l=q;return s|0}g=c[i>>2]|0;if((g|0)>0){h=h+16|0;i=k;while(1){s=g;g=g+-1|0;r=c[(c[h>>2]|0)+(g<<2)>>2]|0;a[i>>0]=r>>>24;a[i+1>>0]=r>>>16;a[i+2>>0]=r>>>8;a[i+3>>0]=r;if((s|0)<=1)break;else i=i+4|0}}if(!j){g=k;while(1){if(a[g>>0]|0)break;g=g+1|0;b=b+-1|0;if(!b){b=0;break}}if((g|0)!=(k|0))dr(k|0,g|0,b|0)|0;if(b)if((a[k>>0]|0)<0){g=0;n=106}else{i=0;j=b;b=0}else{b=0;g=1;n=106}}else{b=0;g=1;n=106}if((n|0)==106){i=2;j=b;b=g}h=j<<1;g=(i+h|o)+1|0;if(e){if(g>>>0>f>>>0){cf(k);s=66;l=q;return s|0}if(!o)g=e;else{a[e>>0]=45;g=e+1|0}if(i){a[g>>0]=48;a[g+1>>0]=48;g=g+2|0}if(!b){b=0;i=g;while(1){f=a[k+b>>0]|0;s=f&255;r=s>>>4;a[i>>0]=(f&255)<160?r|48:r+55|0;s=s&15;a[i+1>>0]=s>>>0<10?s|48:s+55|0;b=b+1|0;if((b|0)==(j|0))break;else i=i+2|0}g=g+h|0}a[g>>0]=0;g=g+1-e|0}c[p>>2]=g;cf(k);s=0;l=q;return s|0}default:{s=45;l=q;return s|0}}return 0}function Uk(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0;while(1){e=c+-1|0;if((e|0)<=-1){h=21;break}g=b+e|0;f=a[g>>0]|0;if(!(f<<24>>24))c=e;else break}if((h|0)==21)return;e=f&255;do if(!(e&1)){if(e&2|0){a[g>>0]=e&252^254;break}if(e&4|0){a[g>>0]=e&248^252;break}if(e&8|0){a[g>>0]=e&240^248;break}if(e&16|0){a[g>>0]=e&224^240;break}if(e&32|0){a[g>>0]=e&192^224;break}if(!(e&64)){a[g>>0]=-128;break}else{a[g>>0]=e&128^192;break}}else a[g>>0]=(e|1)^254;while(0);c=c+-2|0;if((c|0)<=-1)return;while(1){h=b+c|0;a[h>>0]=(d[h>>0]|0)^255;if((c|0)>0)c=c+-1|0;else break}return}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,i=0;i=(a|0)!=0;g=(b|0)!=0;if(!(i^g)){i=45;return i|0}if(i)c[a>>2]=0;f=lk(d)|0;if(c[d+8>>2]|0)vk(d,0)|0;h=(f+7|0)>>>3;if(h>>>0>e>>>0){i=67;return i|0}e=h>>>0<e>>>0?e-h|0:0;f=e+h|0;if(!g){if(!(c[d+12>>2]&1))f=_e(f)|0;else f=$e(f)|0;if(!f){i=Sn()|0;return i|0}else b=f}if(e|0)Yq(b|0,0,e|0)|0;f=Tk(5,b+e|0,h,0,d)|0;if(f|0){cf(b);i=f;return i|0}if(!i){i=0;return i|0}c[a>>2]=b;i=0;return i|0}function Wk(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;g=b+(e<<2)|0;f=d+(e<<2)|0;a=a+(e<<2)|0;b=0-e|0;d=0;do{i=c[g+(b<<2)>>2]|0;h=(c[f+(b<<2)>>2]|0)+d|0;e=h+i|0;d=(e>>>0<i>>>0&1)+(h>>>0<d>>>0&1)|0;c[a+(b<<2)>>2]=e;b=b+1|0}while((b|0)!=0);return d|0}function Xk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!b){a=0;return a|0}k=e>>>0<65536?(e>>>0<256?0:8):e>>>0<16777216?16:24;k=(d[45555+(e>>>k)>>0]|0)+k|0;n=32-k|0;if(!n){g=b+-1|0;f=c[a+(g<<2)>>2]|0;n=f>>>0<e>>>0;f=n?f:0;g=n?b+-2|0:g;if((g|0)<=-1){a=f;return a|0}j=e>>>16;k=e&65535;while(1){i=c[a+(g<<2)>>2]|0;h=S((f>>>0)/(j>>>0)|0,k)|0;f=((f>>>0)%(j>>>0)|0)<<16|i>>>16;b=f+e|0;if(f>>>0<h>>>0)f=(b>>>0>=e>>>0&b>>>0<h>>>0?e:0)+b|0;f=f-h|0;h=S((f>>>0)/(j>>>0)|0,k)|0;f=((f>>>0)%(j>>>0)|0)<<16|i&65535;b=f+e|0;if(f>>>0<h>>>0)f=(b>>>0>=e>>>0&b>>>0<h>>>0?e:0)+b|0;f=f-h|0;if((g|0)>0)g=g+-1|0;else break}return f|0}m=e<<n;g=c[a+(b+-1<<2)>>2]|0;f=g>>>k;b=b+-2|0;l=m>>>16;e=m&65535;if((b|0)>-1)while(1){j=c[a+(b<<2)>>2]|0;h=S((f>>>0)/(l>>>0)|0,e)|0;i=j>>>k|g<<n;f=i>>>16|((f>>>0)%(l>>>0)|0)<<16;g=f+m|0;if(f>>>0<h>>>0)f=(g>>>0>=m>>>0&g>>>0<h>>>0?m:0)+g|0;f=f-h|0;h=S((f>>>0)/(l>>>0)|0,e)|0;f=((f>>>0)%(l>>>0)|0)<<16|i&65535;g=f+m|0;if(f>>>0<h>>>0)f=(g>>>0>=m>>>0&g>>>0<h>>>0?m:0)+g|0;f=f-h|0;if((b|0)>0){b=b+-1|0;g=j}else{g=j;break}}b=S((f>>>0)/(l>>>0)|0,e)|0;h=g<<n;f=((f>>>0)%(l>>>0)|0)<<16|h>>>16;g=f+m|0;if(f>>>0<b>>>0)f=(g>>>0>=m>>>0&g>>>0<b>>>0?m:0)+g|0;f=f-b|0;b=S((f>>>0)/(l>>>0)|0,e)|0;f=((f>>>0)%(l>>>0)|0)<<16|h&65535;g=f+m|0;if(f>>>0<b>>>0)f=(g>>>0>=m>>>0&g>>>0<b>>>0?m:0)+g|0;a=(f-b|0)>>>n;return a|0}function Yk(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;switch(g|0){case 0:{Ve();break}case 1:{p=c[f>>2]|0;h=c[d+(e+-1<<2)>>2]|0;q=h>>>0<p>>>0;h=h-(q?0:p)|0;q=q&1^1;o=a+(b<<2)|0;i=e+-2|0;if((i|0)>-1){e=p>>>16;n=p&65535;while(1){j=(h>>>0)/(e>>>0)|0;k=S(j,n)|0;m=c[d+(i<<2)>>2]|0;h=m>>>16|((h>>>0)%(e>>>0)|0)<<16;if(h>>>0<k>>>0){h=h+p|0;a=h>>>0>=p>>>0&h>>>0<k>>>0;j=(a?-2:-1)+j|0;h=(a?p:0)+h|0}h=h-k|0;k=(h>>>0)/(e>>>0)|0;l=S(k,n)|0;h=m&65535|((h>>>0)%(e>>>0)|0)<<16;if(h>>>0<l>>>0){h=h+p|0;a=h>>>0>=p>>>0&h>>>0<l>>>0;k=(a?-2:-1)+k|0;h=(a?p:0)+h|0}h=h-l|0;c[o+(i<<2)>>2]=k|j<<16;if((i|0)>0)i=i+-1|0;else break}}e=o+(0-b<<2)|0;if((b|0)>0){n=p>>>16;o=p&65535;m=b;do{l=m;m=m+-1|0;i=(h>>>0)/(n>>>0)|0;j=S(i,o)|0;h=((h>>>0)%(n>>>0)|0)<<16;if(h>>>0<j>>>0){h=h+p|0;b=h>>>0>=p>>>0&h>>>0<j>>>0;i=(b?-2:-1)+i|0;h=(b?p:0)+h|0}h=h-j|0;j=(h>>>0)/(n>>>0)|0;k=S(j,o)|0;h=((h>>>0)%(n>>>0)|0)<<16;if(h>>>0<k>>>0){h=h+p|0;b=h>>>0>=p>>>0&h>>>0<k>>>0;j=(b?-2:-1)+j|0;h=(b?p:0)+h|0}h=h-k|0;c[e+(m<<2)>>2]=j|i<<16}while((l|0)>1)}c[d>>2]=h;b=q;return b|0}case 2:{j=d+(e+-2<<2)|0;w=c[f+4>>2]|0;u=c[f>>2]|0;v=0-u|0;i=c[j+4>>2]|0;h=c[j>>2]|0;if(i>>>0>=w>>>0?(k=h-u|0,!(i>>>0<=w>>>0&h>>>0<u>>>0)):0){i=i-w+((k>>>0>h>>>0)<<31>>31)|0;h=k;t=1}else t=0;k=b+-3+e|0;if((k|0)>-1){s=u-((u|0)!=0&1)|0;p=w>>>16;q=w&65535;d=u&65535;r=u>>>16;while(1){if((k|0)<(b|0))c[j>>2]=0;else j=j+-4|0;if((i|0)==(w|0)){h=h+w|0;if(h>>>0<w>>>0){i=c[j>>2]|0;f=i+u|0;c[a+(k<<2)>>2]=-1;i=h-u+(f>>>0<i>>>0&1)|0;h=f}else{m=-1;l=s;i=v;o=34}}else{l=(i>>>0)/(p>>>0)|0;m=S(l,q)|0;i=((i>>>0)%(p>>>0)|0)<<16|h>>>16;if(i>>>0<m>>>0){i=i+w|0;f=i>>>0>=w>>>0&i>>>0<m>>>0;l=(f?-2:-1)+l|0;i=(f?w:0)+i|0}i=i-m|0;m=(i>>>0)/(p>>>0)|0;e=S(m,q)|0;i=((i>>>0)%(p>>>0)|0)<<16|h&65535;if(i>>>0<e>>>0){i=i+w|0;f=i>>>0>=w>>>0&i>>>0<e>>>0;h=(f?-2:-1)+m|0;i=(f?w:0)+i|0}else h=m;m=h|l<<16;g=h&65535;f=m>>>16;o=S(g,d)|0;g=S(g,r)|0;l=S(f,r)|0;f=(o>>>16)+g+(S(f,d)|0)|0;h=i-e|0;l=(f>>>0<g>>>0?l+65536|0:l)+(f>>>16)|0;i=f<<16|o&65535;o=34}if((o|0)==34){o=0;n=c[j>>2]|0;while(1){if(l>>>0<=h>>>0?!(i>>>0>n>>>0&(l|0)==(h|0)):0)break;m=m+-1|0;e=i-u|0;l=l-(e>>>0>i>>>0&1)|0;h=h+w|0;if(h>>>0<w>>>0){i=e;break}else i=e}c[a+(k<<2)>>2]=m;f=n-i|0;i=h-l+((f>>>0>n>>>0)<<31>>31)|0;h=f}if((k|0)>0)k=k+-1|0;else break}}c[j+4>>2]=i;c[j>>2]=h;b=t;return b|0}default:{m=d+(e-g<<2)|0;u=g+-1|0;v=c[f+(u<<2)>>2]|0;w=g+-2|0;x=c[f+(w<<2)>>2]|0;i=m+(u<<2)|0;j=c[i>>2]|0;a:do if(j>>>0<v>>>0)h=0;else{b:do if(j>>>0<=v>>>0){h=u;do{if((h|0)<=0)break b;h=h+-1|0;k=c[m+(h<<2)>>2]|0;l=c[f+(h<<2)>>2]|0}while((k|0)==(l|0));if(k>>>0<=l>>>0){h=0;break a}}while(0);hl(m,m,f,g)|0;j=c[i>>2]|0;h=1}while(0);i=e+b-g|0;if((i|0)<=0){b=h;return b|0}q=v>>>16;d=v&65535;r=x&65535;s=x>>>16;t=(w|0)>-1;while(1){p=i;i=i+-1|0;if((p|0)>(b|0)){o=m+-4|0;n=c[o+(g<<2)>>2]|0}else{if(t){l=m+4|0;k=w;while(1){c[l+(k<<2)>>2]=c[m+(k<<2)>>2];if((k|0)>0)k=k+-1|0;else break}}c[m>>2]=0;n=j;o=m}c:do if((j|0)==(v|0))j=-1;else{k=(j>>>0)/(q>>>0)|0;l=S(k,d)|0;e=c[o+(u<<2)>>2]|0;j=e>>>16|((j>>>0)%(q>>>0)|0)<<16;if(j>>>0<l>>>0){j=j+v|0;m=j>>>0>=v>>>0&j>>>0<l>>>0;j=(m?v:0)+j|0;m=(m?-2:-1)+k|0}else m=k;k=j-l|0;j=(k>>>0)/(q>>>0)|0;l=S(j,d)|0;k=e&65535|((k>>>0)%(q>>>0)|0)<<16;if(k>>>0<l>>>0){k=k+v|0;e=k>>>0>=v>>>0&k>>>0<l>>>0;k=(e?v:0)+k|0;j=(e?-2:-1)+j|0}z=j|m<<16;A=j&65535;y=z>>>16;m=S(A,r)|0;A=S(A,s)|0;j=S(y,s)|0;y=(m>>>16)+A+(S(y,r)|0)|0;e=o+(w<<2)|0;k=k-l|0;l=(y>>>0<A>>>0?j+65536|0:j)+(y>>>16)|0;j=z;m=y<<16|m&65535;while(1){if(l>>>0<=k>>>0){if((l|0)!=(k|0))break c;if(m>>>0<=(c[e>>2]|0)>>>0)break c}j=j+-1|0;k=k+v|0;if(k>>>0<v>>>0)break c;l=l-(m>>>0<x>>>0&1)|0;m=m-x|0}}while(0);if((n|0)!=(al(o,f,g,j)|0)){Wk(o,o,f,g)|0;j=j+-1|0}c[a+(i<<2)>>2]=j;if((p|0)<=1)break;else{m=o;j=c[o+(u<<2)>>2]|0}}return h|0}}return 0}function Zk(a,b,e,f){a=a|0;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;if(!e){a=0;return a|0}n=f>>>0<65536?(f>>>0<256?0:8):f>>>0<16777216?16:24;n=(d[45555+(f>>>n)>>0]|0)+n|0;q=32-n|0;if(!q){h=e+-1|0;g=c[b+(h<<2)>>2]|0;if(g>>>0<f>>>0){c[a+(h<<2)>>2]=0;h=e+-2|0}else g=0;if((h|0)<=-1){a=g;return a|0}l=f>>>16;m=f&65535;while(1){j=c[b+(h<<2)>>2]|0;e=(g>>>0)/(l>>>0)|0;i=S(e,m)|0;g=((g>>>0)%(l>>>0)|0)<<16|j>>>16;if(g>>>0<i>>>0){g=g+f|0;k=g>>>0>=f>>>0&g>>>0<i>>>0;g=(k?f:0)+g|0;k=(k?-2:-1)+e|0}else k=e;g=g-i|0;e=(g>>>0)/(l>>>0)|0;i=S(e,m)|0;g=((g>>>0)%(l>>>0)|0)<<16|j&65535;if(g>>>0<i>>>0){g=g+f|0;q=g>>>0>=f>>>0&g>>>0<i>>>0;g=(q?f:0)+g|0;e=(q?-2:-1)+e|0}g=g-i|0;c[a+(h<<2)>>2]=e|k<<16;if((h|0)>0)h=h+-1|0;else break}return g|0}p=f<<q;i=c[b+(e+-1<<2)>>2]|0;g=i>>>n;h=e+-2|0;o=p>>>16;f=p&65535;if((h|0)>-1)while(1){m=c[b+(h<<2)>>2]|0;e=(g>>>0)/(o>>>0)|0;j=S(e,f)|0;k=m>>>n|i<<q;g=k>>>16|((g>>>0)%(o>>>0)|0)<<16;if(g>>>0<j>>>0){g=g+p|0;l=g>>>0>=p>>>0&g>>>0<j>>>0;g=(l?p:0)+g|0;l=(l?-2:-1)+e|0}else l=e;g=g-j|0;e=(g>>>0)/(o>>>0)|0;i=S(e,f)|0;g=((g>>>0)%(o>>>0)|0)<<16|k&65535;if(g>>>0<i>>>0){g=g+p|0;k=g>>>0>=p>>>0&g>>>0<i>>>0;g=(k?p:0)+g|0;e=(k?-2:-1)+e|0}g=g-i|0;c[a+(h+1<<2)>>2]=e|l<<16;if((h|0)>0){h=h+-1|0;i=m}else{h=m;break}}else h=i;e=(g>>>0)/(o>>>0)|0;i=S(e,f)|0;h=h<<q;g=((g>>>0)%(o>>>0)|0)<<16|h>>>16;if(g>>>0<i>>>0){g=g+p|0;j=g>>>0>=p>>>0&g>>>0<i>>>0;g=(j?p:0)+g|0;j=(j?-2:-1)+e|0}else j=e;b=g-i|0;g=(b>>>0)/(o>>>0)|0;e=S(g,f)|0;h=((b>>>0)%(o>>>0)|0)<<16|h&65535;if(h>>>0<e>>>0){h=h+p|0;b=h>>>0>=p>>>0&h>>>0<e>>>0;h=(b?p:0)+h|0;g=(b?-2:-1)+g|0}c[a>>2]=g|j<<16;a=(h-e|0)>>>q;return a|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,i=0;h=a+4|0;g=32-e|0;f=c[b+(d+-1<<2)>>2]|0;i=f>>>g;a=d+-2|0;if((d|0)>1){d=f;while(1){f=c[b+(a<<2)>>2]|0;c[h+(a<<2)>>2]=f>>>g|d<<e;if((a|0)>0){d=f;a=a+-1|0}else{a=-1;break}}}c[h+(a<<2)>>2]=f<<e;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,i=0,j=0,k=0;h=b+(d<<2)|0;f=a+(d<<2)|0;g=e&65535;e=e>>>16;a=0;b=0-d|0;do{j=c[h+(b<<2)>>2]|0;i=j&65535;j=j>>>16;d=S(i,g)|0;k=S(j,g)|0;j=S(j,e)|0;i=k+(S(i,e)|0)+(d>>>16)|0;d=(i<<16|d&65535)+a|0;a=(i>>>0<k>>>0?j+65536|0:j)+(i>>>16)+(d>>>0<a>>>0&1)|0;c[f+(b<<2)>>2]=d;b=b+1|0}while((b|0)!=0);return a|0}function al(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=a+(d<<2)|0;f=b+(d<<2)|0;g=e&65535;e=e>>>16;b=0;a=0-d|0;do{m=c[f+(a<<2)>>2]|0;l=m&65535;m=m>>>16;k=S(l,g)|0;n=S(m,g)|0;m=S(m,e)|0;l=n+(S(l,e)|0)+(k>>>16)|0;k=(l<<16|k&65535)+b|0;d=h+(a<<2)|0;j=c[d>>2]|0;i=j-k|0;b=(l>>>0<n>>>0?m+65536|0:m)+(l>>>16)+(k>>>0<b>>>0&1)+(i>>>0>j>>>0&1)|0;c[d>>2]=i;a=a+1|0}while((a|0)!=0);return b|0}function bl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[d>>2]|0;a:do if(f>>>0<2){g=(e|0)>0;if((f|0)==1){if(g){f=0;while(1){c[a+(f<<2)>>2]=c[b+(f<<2)>>2];f=f+1|0;if((f|0)==(e|0)){f=0;break a}}}}else if(g){Yq(a|0,0,e<<2|0)|0;f=0;break}c[a+(e<<2)>>2]=0;return}else f=$k(a,b,e,f)|0;while(0);c[a+(e<<2)>>2]=f;if((e|0)>1){h=1;g=a}else return;do{g=g+4|0;f=c[d+(h<<2)>>2]|0;if(f>>>0<2)if((f|0)==1)f=Wk(g,g,b,e)|0;else f=0;else f=Fn(g,b,e,f)|0;c[g+(e<<2)>>2]=f;h=h+1|0}while((h|0)!=(e|0));return}function cl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(e&1|0){g=e+-1|0;if((e|0)<17)bl(a,b,d,g);else cl(a,b,d,g,f);f=a+(g<<2)|0;c[a+(g<<1<<2)>>2]=Fn(f,b,g,c[d+(g<<2)>>2]|0)|0;c[a+(g+e<<2)>>2]=Fn(f,d,e,c[b+(g<<2)>>2]|0)|0;return}o=e>>1;n=(o|0)<16;g=a+(e<<2)|0;j=b+(o<<2)|0;m=d+(o<<2)|0;if(n){bl(g,j,m,o);i=o}else{cl(g,j,m,o,f);i=o}while(1){if((i|0)<=0){i=12;break}i=i+-1|0;k=c[j+(i<<2)>>2]|0;l=c[b+(i<<2)>>2]|0;if((k|0)!=(l|0)){i=11;break}}if((i|0)==11)if(k>>>0>l>>>0)i=12;else{hl(a,b,j,o)|0;j=1}if((i|0)==12){hl(a,j,b,o)|0;j=0}i=o;while(1){if((i|0)<=0){i=18;break}i=i+-1|0;k=c[m+(i<<2)>>2]|0;l=c[d+(i<<2)>>2]|0;if((k|0)!=(l|0)){i=17;break}}if((i|0)==17)if(k>>>0>l>>>0)i=18;else{l=a+(o<<2)|0;hl(l,d,m,o)|0;k=j}if((i|0)==18){l=a+(o<<2)|0;hl(l,m,d,o)|0;k=j^1}if(n){bl(f,a,l,o);if((o|0)>0)i=23;else j=0}else{cl(f,a,l,o,f+(e<<2)|0);i=23}if((i|0)==23){j=a+(o<<2)|0;i=0;do{c[j+(i<<2)>>2]=c[g+(i<<2)>>2];i=i+1|0}while((i|0)!=(o|0));j=1}i=Wk(g,g,g+(o<<2)|0,o)|0;if(!k)i=(Wk(l,l,f,e)|0)+i|0;else i=i-(hl(l,l,f,e)|0)|0;if(n)bl(f,b,d,o);else cl(f,b,d,o,f+(e<<2)|0);i=(Wk(l,l,f,e)|0)+i|0;a:do if(i|0?(h=a+(o<<2)+(e<<2)|0,d=c[h>>2]|0,b=d+i|0,c[h>>2]=b,b>>>0<d>>>0):0){i=o;do{h=h+4|0;i=i+-1|0;if(!i)break a;d=(c[h>>2]|0)+1|0;c[h>>2]=d}while(!(d|0))}while(0);if(j){h=0;do{c[a+(h<<2)>>2]=c[f+(h<<2)>>2];h=h+1|0}while((h|0)!=(o|0))}if(!(Wk(l,l,f+(o<<2)|0,o)|0))return;f=c[g>>2]|0;c[g>>2]=f+1;if((f|0)!=-1)return;while(1){g=g+4|0;e=e+-1|0;if(!e){i=41;break}f=(c[g>>2]|0)+1|0;c[g>>2]=f;if(f|0){i=41;break}}if((i|0)==41)return}function dl(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,s=0,t=0,u=0,v=0,w=0,x=0;x=g+4|0;h=c[x>>2]|0;if(h){if((c[g+12>>2]|0)<(f|0)){ol(h,c[g+8>>2]|0);w=4}}else w=4;if((w|0)==4){h=f<<1;c[g+8>>2]=h;if(!(af(b)|0))i=(af(e)|0)!=0;else i=1;h=ml(h,i&1)|0;c[x>>2]=h;c[g+12>>2]=f}k=(f|0)<16;if(k)bl(a,b,e,f);else cl(a,b,e,f,h);j=a+(f<<2)|0;i=b+(f<<2)|0;a=d-f|0;if((a|0)>=(f|0)){v=g+16|0;h=c[v>>2]|0;if(h){if((c[g+24>>2]|0)<(f|0)){ol(h,c[g+20>>2]|0);w=14}}else w=14;if((w|0)==14){h=f<<1;c[g+20>>2]=h;if(!(af(i)|0))b=(af(e)|0)!=0;else b=1;h=ml(h,b&1)|0;c[v>>2]=h;c[g+24>>2]=f}if(k){m=h;do{bl(m,i,e,f);r=Wk(j,j,c[v>>2]|0,f)|0;j=j+(f<<2)|0;m=c[v>>2]|0;u=m+(f<<2)|0;h=u+4|0;u=c[u>>2]|0;r=u+r|0;b=j+4|0;c[j>>2]=r;a:do if(r>>>0<u>>>0){d=f;while(1){d=d+-1|0;if(!d)break a;k=h+4|0;u=(c[h>>2]|0)+1|0;l=b+4|0;c[b>>2]=u;if(!u){h=k;b=l}else{o=d;q=k;s=l;w=21;break}}}else{o=f;q=h;s=b;w=21}while(0);if(((w|0)==21?(w=0,(s|0)!=(q|0)):0)?(t=o+-1|0,(o|0)>1):0){h=0;do{c[s+(h<<2)>>2]=c[q+(h<<2)>>2];h=h+1|0}while((h|0)!=(t|0))}i=i+(f<<2)|0;a=a-f|0}while((a|0)>=(f|0))}else{m=h;do{cl(m,i,e,f,c[x>>2]|0);s=Wk(j,j,c[v>>2]|0,f)|0;j=j+(f<<2)|0;m=c[v>>2]|0;t=m+(f<<2)|0;h=t+4|0;t=c[t>>2]|0;s=t+s|0;b=j+4|0;c[j>>2]=s;b:do if(s>>>0<t>>>0){d=f;while(1){d=d+-1|0;if(!d)break b;k=h+4|0;t=(c[h>>2]|0)+1|0;l=b+4|0;c[b>>2]=t;if(!t){h=k;b=l}else{n=d;p=k;r=l;w=28;break}}}else{n=f;p=h;r=b;w=28}while(0);if(((w|0)==28?(w=0,(r|0)!=(p|0)):0)?(u=n+-1|0,(n|0)>1):0){h=0;do{c[r+(h<<2)>>2]=c[p+(h<<2)>>2];h=h+1|0}while((h|0)!=(u|0))}i=i+(f<<2)|0;a=a-f|0}while((a|0)>=(f|0))}}if(!a)return;if((a|0)<16)el(c[x>>2]|0,e,f,i,a)|0;else{h=c[g>>2]|0;if(!h){h=kf(1,28)|0;c[g>>2]=h}dl(c[x>>2]|0,e,f,i,a,h)}i=Wk(j,j,c[x>>2]|0,f)|0;e=j+(f<<2)|0;x=(c[x>>2]|0)+(f<<2)|0;h=x+4|0;x=c[x>>2]|0;f=x+i|0;i=e+4|0;c[e>>2]=f;c:do if(f>>>0<x>>>0){while(1){a=a+-1|0;if(!a)break;b=h+4|0;x=(c[h>>2]|0)+1|0;j=i+4|0;c[i>>2]=x;if(!x){h=b;i=j}else{i=j;break c}}return}else b=h;while(0);if((i|0)==(b|0))return;j=a+-1|0;if((a|0)>1)h=0;else return;do{c[i+(h<<2)>>2]=c[b+(h<<2)>>2];h=h+1|0}while((h|0)!=(j|0));return}function el(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;j=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=j;i=a+(d<<2)|0;if((f|0)>=16){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;dl(a,b,d,e,f,g);fl(g);f=c[i+(f<<2)+-4>>2]|0;l=j;return f|0}if(!f){f=0;l=j;return f|0}h=c[e>>2]|0;do if(h>>>0<2){g=(d|0)>0;if((h|0)==1){if(g)g=0;else{g=0;break}do{c[a+(g<<2)>>2]=c[b+(g<<2)>>2];g=g+1|0}while((g|0)!=(d|0));g=0}else{if(!g){g=0;break}Yq(a|0,0,d<<2|0)|0;g=0;break}}else g=$k(a,b,d,h)|0;while(0);c[i>>2]=g;if((f|0)>1)h=1;else{f=g;l=j;return f|0}do{a=a+4|0;g=c[e+(h<<2)>>2]|0;if(g>>>0<2)if((g|0)==1)g=Wk(a,a,b,d)|0;else g=0;else g=Fn(a,b,d,g)|0;c[a+(d<<2)>>2]=g;h=h+1|0}while((h|0)!=(f|0));l=j;return g|0}function fl(a){a=a|0;var b=0,d=0;b=c[a+16>>2]|0;if(b|0)ol(b,c[a+20>>2]|0);b=c[a+4>>2]|0;if(b|0)ol(b,c[a+8>>2]|0);b=c[a>>2]|0;if(!b)return;do{d=b;b=c[b>>2]|0;a=c[d+16>>2]|0;if(a|0)ol(a,c[d+20>>2]|0);a=c[d+4>>2]|0;if(a|0)ol(a,c[d+8>>2]|0);cf(d)}while((b|0)!=0);return}function gl(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;i=a+-4|0;h=32-e|0;a=c[b>>2]|0;j=a<<h;if((d|0)>1){f=a;g=1;while(1){a=c[b+(g<<2)>>2]|0;c[i+(g<<2)>>2]=a<<h|f>>>e;g=g+1|0;if((g|0)==(d|0))break;else f=a}}else d=1;c[i+(d<<2)>>2]=a>>>e;return j|0}function hl(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;g=b+(e<<2)|0;f=d+(e<<2)|0;a=a+(e<<2)|0;b=0-e|0;d=0;do{i=c[g+(b<<2)>>2]|0;h=(c[f+(b<<2)>>2]|0)+d|0;e=i-h|0;d=(e>>>0>i>>>0&1)+(h>>>0<d>>>0&1)|0;c[a+(b<<2)>>2]=e;b=b+1|0}while((b|0)!=0);return d|0}function il(){return 45905}function jl(){var a=0,b=0;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[17636]=a;c[a+12>>2]=48;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=1;c[a+4>>2]=1;c[a+8>>2]=0;c[17637]=a;c[a+12>>2]=48;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=2;c[a+4>>2]=1;c[a+8>>2]=0;c[17638]=a;c[a+12>>2]=48;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=3;c[a+4>>2]=1;c[a+8>>2]=0;c[17639]=a;c[a+12>>2]=48;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=4;c[a+4>>2]=1;c[a+8>>2]=0;c[17640]=a;c[a+12>>2]=48;a=gf(20)|0;b=gf(4)|0;c[a+16>>2]=b;c[a>>2]=1;c[b>>2]=8;c[a+4>>2]=1;c[a+8>>2]=0;c[17641]=a;c[a+12>>2]=48;return 0}function kl(a){a=a|0;var b=0,d=0;b=gf(20)|0;d=gf(4)|0;c[b+16>>2]=d;c[b>>2]=1;c[b+12>>2]=0;c[d>>2]=a;c[b+4>>2]=(a|0)!=0&1;c[b+8>>2]=0;return b|0}function ll(a){a=a|0;var b=0,d=0;b=gf(20)|0;if(!a)d=0;else d=gf(a<<2)|0;c[b+16>>2]=d;c[b>>2]=a;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return b|0}function ml(a,b){a=a|0;b=b|0;var d=0;d=(a|0)!=0;a=d?a<<2:4;if(!b)a=gf(a)|0;else a=jf(a)|0;if(d)return a|0;c[a>>2]=0;return a|0}function nl(a){a=a|0;var b=0,d=0;b=gf(20)|0;if(!a)d=0;else d=jf(a<<2)|0;c[b+16>>2]=d;c[b>>2]=a;c[b+12>>2]=1;c[b+4>>2]=0;c[b+8>>2]=0;return b|0}function ol(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!b)return;e=d<<2;if(e|0){if(!(b&7))d=b;else{d=b;do{a[d>>0]=0;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0)}if(e>>>0>=8){h=e+-8|0;i=h&-8;g=i+8|0;f=d;while(1){j=f;c[j>>2]=0;c[j+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}d=d+g|0;e=h-i|0}if(e|0)while(1){a[d>>0]=0;e=e+-1|0;if(!e)break;else d=d+1|0}}cf(b);return}function pl(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;k=b+16|0;l=c[k>>2]|0;if(!l){c[k>>2]=d;c[b>>2]=e;return}g=c[b>>2]<<2;if(g|0){if(!(l&7))f=l;else{f=l;do{a[f>>0]=0;f=f+1|0;g=g+-1|0}while((g|0)!=0&(f&7|0)!=0)}if(g>>>0>=8){i=g+-8|0;j=i&-8;h=f;while(1){m=h;c[m>>2]=0;c[m+4>>2]=0;g=g+-8|0;if(g>>>0<=7)break;else h=h+8|0}f=f+(j+8)|0;g=i-j|0}if(g|0)while(1){a[f>>0]=0;g=g+-1|0;if(!g)break;else f=f+1|0}}cf(l);c[k>>2]=d;c[b>>2]=e;return}function ql(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=c[a>>2]|0;if(e>>>0>=b>>>0){d=c[a+4>>2]|0;if(d>>>0>=e>>>0)return;e=c[a+16>>2]|0;do{c[e+(d<<2)>>2]=0;d=d+1|0}while(d>>>0<(c[a>>2]|0)>>>0);return}e=a+16|0;d=c[e>>2]|0;do if(!d)if(!(c[a+12>>2]&1)){c[e>>2]=kf(b,4)|0;break}else{c[e>>2]=lf(b,4)|0;break}else{g=b<<2;f=hf(d,g)|0;c[e>>2]=f;d=c[a>>2]|0;if(d>>>0<b>>>0)Yq(f+(d<<2)|0,0,g-(d<<2)|0)|0}while(0);c[a>>2]=b;return}function rl(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;b=a+12|0;if(a|0?c[b>>2]&16|0:0){Je(46049,d);l=e;return}c[a+4>>2]=0;c[b>>2]=0;l=e;return}function sl(){var a=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);Je(46049,a);l=a;return}function tl(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;n=l;l=l+16|0;if((l|0)>=(m|0))$(16);k=n;if(!b){l=n;return}i=b+12|0;d=c[i>>2]|0;if(d&32|0){l=n;return}j=c[b+16>>2]|0;if(!(d&4)){if(j|0){e=c[b>>2]<<2;if(e|0){if(!(j&7))d=j;else{d=j;do{a[d>>0]=0;d=d+1|0;e=e+-1|0}while((e|0)!=0&(d&7|0)!=0)}if(e>>>0>=8){g=e+-8|0;h=g&-8;f=d;while(1){o=f;c[o>>2]=0;c[o+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}d=d+(h+8)|0;e=g-h|0}if(e|0)while(1){a[d>>0]=0;e=e+-1|0;if(!e)break;else d=d+1|0}}cf(j)}}else cf(j);if(c[i>>2]&-3864|0)Ne(46093,k);cf(b);l=n;return}function ul(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,n=0,o=0,p=0,q=0;p=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=p;if(!b){b=gf(20)|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;if(!b){o=0;f=c[3]|0}else h=4}else h=4;if((h|0)==4){f=c[b+12>>2]|0;if(!(f&16))o=b;else{Je(46049,g);d=b;l=p;return d|0}}n=o+12|0;j=o+16|0;k=c[j>>2]|0;if(!(f&4)){if(k|0){f=c[o>>2]<<2;if(f|0){if(!(k&7))b=k;else{b=k;do{a[b>>0]=0;b=b+1|0;f=f+-1|0}while((f|0)!=0&(b&7|0)!=0)}if(f>>>0>=8){h=f+-8|0;i=h&-8;g=b;while(1){q=g;c[q>>2]=0;c[q+4>>2]=0;f=f+-8|0;if(f>>>0<=7)break;else g=g+8|0}b=b+(i+8)|0;f=h-i|0}if(f|0)while(1){a[b>>0]=0;f=f+-1|0;if(!f)break;else b=b+1|0}}cf(k)}}else cf(k);c[j>>2]=d;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=e;b=c[n>>2]&3840;c[n>>2]=b|4;if(!(af(d)|0)){q=o;l=p;return q|0}c[n>>2]=b|5;q=o;l=p;return q|0}function vl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=(c+7|0)>>>3;if(!(af(b)|0))e=_e(d)|0;else e=$e(d)|0;if(!e){e=0;return e|0}cr(e|0,b|0,d|0)|0;e=ul(a,e,c)|0;return e|0}function wl(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);if(!(c[a+12>>2]&4))Ne(46125,d);if(b|0)c[b>>2]=c[a+8>>2];l=d;return c[a+16>>2]|0}function xl(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);if(!(c[a+12>>2]&4))Ne(46125,e);if(b){d=c[a+8>>2]|0;c[b>>2]=d;b=c[a+16>>2]|0;if(!b){d=0;l=e;return d|0}}else{d=0;b=c[a+16>>2]|0}a=(d+7|0)>>>3;if(!(af(b)|0))d=_e(a)|0;else d=$e(a)|0;if(!d){d=0;l=e;return d|0}cr(d|0,b|0,a|0)|0;l=e;return d|0}function yl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!a){a=0;return a|0}k=a+12|0;e=c[k>>2]|0;if(e&4|0){f=a+16|0;k=(af(c[f>>2]|0)|0)==0;d=a+8|0;b=((c[d>>2]|0)+7|0)/8|0;if(k)e=gf(b)|0;else e=jf(b)|0;b=c[f>>2]|0;if(!b)b=c[d>>2]|0;else{a=c[d>>2]|0;cr(e|0,b|0,(a+7|0)/8|0|0)|0;b=a}a=ul(0,e,b)|0;k=a+12|0;c[k>>2]=c[k>>2]&-49;return a|0}j=a+4|0;g=c[j>>2]|0;b=gf(20)|0;f=(g|0)==0;d=g<<2;if(!(e&1)){if(f)d=0;else d=gf(d)|0;c[b+16>>2]=d;c[b>>2]=g;e=b+4|0;c[e>>2]=0;g=b+8|0;c[g>>2]=0;h=b+12|0;c[h>>2]=0;i=d}else{if(f)d=0;else d=jf(d)|0;c[b+16>>2]=d;c[b>>2]=g;h=b+12|0;c[h>>2]=1;e=b+4|0;c[e>>2]=0;g=b+8|0;c[g>>2]=0;i=d}f=c[j>>2]|0;c[e>>2]=f;c[g>>2]=c[a+8>>2];c[h>>2]=c[k>>2]&-49;if((f|0)<=0){a=b;return a|0}e=c[a+16>>2]|0;d=0;do{c[i+(d<<2)>>2]=c[e+(d<<2)>>2];d=d+1|0}while((d|0)<(f|0));return b|0}function zl(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=e;if((a|0)==(b|0)){if(a|0?c[a+12>>2]&16|0:0){Je(46049,d);l=e;return}}else Al(a,b)|0;c[a+8>>2]=(c[b+8>>2]|0)==0&1;l=e;return}function Al(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;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=k;i=c[b+4>>2]|0;j=c[b+8>>2]|0;if(!a){a=gf(20)|0;if(!i)d=0;else d=gf(i<<2)|0;c[a+16>>2]=d;c[a>>2]=i;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}h=a+12|0;f=c[h>>2]|0;if(f&16|0){Je(46049,e);l=k;return a|0}e=c[a>>2]|0;a:do if((e|0)<(i|0)){if(e>>>0>=i>>>0){d=c[a+4>>2]|0;if(d>>>0>=e>>>0)break;e=c[a+16>>2]|0;while(1){c[e+(d<<2)>>2]=0;d=d+1|0;if(d>>>0>=(c[a>>2]|0)>>>0)break a}}g=a+16|0;d=c[g>>2]|0;do if(!d)if(!(f&1)){c[g>>2]=kf(i,4)|0;break}else{c[g>>2]=lf(i,4)|0;break}else{f=i<<2;e=hf(d,f)|0;c[g>>2]=e;d=c[a>>2]|0;if(d>>>0<i>>>0)Yq(e+(d<<2)|0,0,f-(d<<2)|0)|0}while(0);c[a>>2]=i}while(0);e=c[a+16>>2]|0;f=c[b+16>>2]|0;if((i|0)>0){d=0;do{c[e+(d<<2)>>2]=c[f+(d<<2)>>2];d=d+1|0}while((d|0)!=(i|0))}c[a+4>>2]=i;c[h>>2]=c[b+12>>2]&-49;c[a+8>>2]=j;l=k;return a|0}function Bl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(!a){g=0;return g|0}g=a+12|0;d=c[g>>2]|0;if(d&4|0){d=a+8|0;e=((c[d>>2]|0)+7|0)/8|0;a=a+16|0;if(!(af(c[a>>2]|0)|0))b=_e(e)|0;else b=$e(e)|0;cr(b|0,c[a>>2]|0,e|0)|0;g=ul(0,b,c[d>>2]|0)|0;return g|0}e=c[a+4>>2]|0;f=gf(20)|0;b=(e|0)==0;a=e<<2;if(!(d&1)){if(b)a=0;else a=gf(a)|0;c[f+16>>2]=a;c[f>>2]=e;a=f+4|0;c[a>>2]=0;b=f+8|0;c[b>>2]=0;d=f+12|0;c[d>>2]=0}else{if(b)a=0;else a=jf(a)|0;c[f+16>>2]=a;c[f>>2]=e;d=f+12|0;c[d>>2]=1;a=f+4|0;c[a>>2]=0;b=f+8|0;c[b>>2]=0}c[a>>2]=0;c[b>>2]=0;c[d>>2]=c[g>>2];g=f;return g|0}function Cl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=q;if(b|0){p=b+12|0;if(c[p>>2]&16|0){Je(46049,e);l=q;return}k=d+16|0;n=c[k>>2]|0;o=c[d>>2]|0;i=b+16|0;j=c[i>>2]|0;if(j|0){f=c[b>>2]<<2;if(f|0){if(!(j&7))e=j;else{e=j;do{a[e>>0]=0;e=e+1|0;f=f+-1|0}while((f|0)!=0&(e&7|0)!=0)}if(f>>>0>=8){h=f+-8|0;g=e;while(1){r=g;c[r>>2]=0;c[r+4>>2]=0;f=f+-8|0;if(f>>>0<=7)break;else g=g+8|0}f=h&-8;e=e+(f+8)|0;f=h-f|0}if(f|0)while(1){a[e>>0]=0;f=f+-1|0;if(!f)break;else e=e+1|0}}cf(j)}c[i>>2]=n;c[b>>2]=o;r=d+4|0;c[b+4>>2]=c[r>>2];c[b+8>>2]=c[d+8>>2];c[p>>2]=c[d+12>>2];c[d>>2]=0;c[r>>2]=0;c[k>>2]=0}tl(d);l=q;return}function Dl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=c[b>>2]|0;e=(d|0)!=0;if((c[a>>2]|0)!=(g|0))Ne(46155,i);if((g|0)>0?(h=c[a+16>>2]|0,f=c[b+16>>2]|0,e):0){d=0;do{c[h+(d<<2)>>2]=c[f+(d<<2)>>2];d=d+1|0}while((d|0)!=(g|0))}h=a+4|0;g=c[h>>2]|0;c[h>>2]=(e?c[b+4>>2]^g:0)^g;h=a+8|0;g=c[h>>2]|0;c[h>>2]=(e?c[b+8>>2]^g:0)^g;l=i;return a|0}function El(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=f;if(!a){a=gf(20)|0;c[a+16>>2]=gf(4)|0;c[a>>2]=1;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;if(!a)a=0;else e=3}else e=3;if((e|0)==3)if(c[a+12>>2]&16){Je(46049,d);b=a;l=f;return b|0}e=c[a>>2]|0;a:do if((e|0)<1){if(e|0){d=c[a+4>>2]|0;if(d>>>0>=e>>>0)break;e=c[a+16>>2]|0;while(1){c[e+(d<<2)>>2]=0;d=d+1|0;if(d>>>0>=(c[a>>2]|0)>>>0)break a}}e=a+16|0;d=c[e>>2]|0;do if(!d)if(!(c[a+12>>2]&1)){c[e>>2]=kf(1,4)|0;break}else{c[e>>2]=lf(1,4)|0;break}else{d=hf(d,4)|0;c[e>>2]=d;if(!(c[a>>2]|0))c[d>>2]=0}while(0);c[a>>2]=1}while(0);c[c[a+16>>2]>>2]=b;c[a+4>>2]=(b|0)!=0&1;c[a+8>>2]=0;c[a+12>>2]=0;b=a;l=f;return b|0}function Fl(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+32|0;if((l|0)>=(m|0))$(32);e=d;c[e>>2]=c[a>>2];c[e+4>>2]=c[a+4>>2];c[e+8>>2]=c[a+8>>2];c[e+12>>2]=c[a+12>>2];c[e+16>>2]=c[a+16>>2];c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];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];l=d;return}function Gl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=c[a>>2]|0;e=(d|0)!=0;if((g|0)!=(c[b>>2]|0))Ne(46186,i);if((g|0)>0?(h=c[a+16>>2]|0,f=c[b+16>>2]|0,e):0){d=0;do{n=h+(d<<2)|0;j=f+(d<<2)|0;o=c[j>>2]|0;k=o^c[n>>2];c[n>>2]=o;c[j>>2]=c[j>>2]^k;d=d+1|0}while((d|0)!=(g|0))}o=a+4|0;n=c[o>>2]|0;k=b+4|0;j=e?c[k>>2]^n:0;c[o>>2]=j^n;c[k>>2]=c[k>>2]^j;k=a+8|0;j=c[k>>2]|0;o=b+8|0;n=e?c[o>>2]^j:0;c[k>>2]=n^j;c[o>>2]=c[o>>2]^n;l=i;return}function Hl(a){a=a|0;var b=0,d=0;a=(a+31|0)>>>5;b=gf(20)|0;if(!a)d=0;else d=gf(a<<2)|0;c[b+16>>2]=d;c[b>>2]=a;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return b|0}function Il(a){a=a|0;var b=0,d=0;a=(a+31|0)>>>5;b=gf(20)|0;if(!a)d=0;else d=jf(a<<2)|0;c[b+16>>2]=d;c[b>>2]=a;c[b+12>>2]=1;c[b+4>>2]=0;c[b+8>>2]=0;return b|0}function Jl(a){a=a|0;tl(a);return}function Kl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=g;f=(b+7|0)>>>3;b=(a|0)!=0;if(b?c[a+12>>2]&16|0:0){Je(46049,e);l=g;return}do if(!d){if(b?(c[a+12>>2]&1|0)!=0:0)b=jf(f)|0;else b=gf(f)|0;Hj(b,f)}else{if(b?c[a+12>>2]&1|0:0){b=Cj(f,d)|0;break}b=Aj(f,d)|0}while(0);Rk(a,b,f,0);cf(b);l=g;return}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);switch(b|0){case 1:{d=c[a+12>>2]&1;break}case 2:{d=(c[a+12>>2]|0)>>>2&1;break}case 4:{d=(c[a+12>>2]|0)>>>4&1;break}case 8:{d=(c[a+12>>2]|0)>>>5&1;break}case 2048:case 1024:case 512:case 256:{d=(c[a+12>>2]&b|0)!=0&1;break}default:Ne(46218,e)}l=e;return d|0}function Ml(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=d;if((a|0)<0|a>>>0>6){c[b>>2]=a;Ne(46238,b)}a=c[70544+(a<<2)>>2]|0;if(!a)Ne(46269,d+8|0);else{l=d;return a|0}return 0}function Nl(){return 46300}function Ol(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0;o=l;l=l+64|0;if((l|0)>=(m|0))$(64);k=o;n=Oq(172)|0;if(!n){n=0;l=o;return n|0}c[n>>2]=1779033703;c[n+4>>2]=-1150833019;c[n+8>>2]=1013904242;c[n+12>>2]=-1521486534;c[n+16>>2]=1359893119;c[n+20>>2]=-1694144372;c[n+24>>2]=528734635;c[n+28>>2]=1541459225;c[n+32>>2]=0;c[n+36>>2]=0;i=n+40|0;a[i>>0]=0;if(!b){l=o;return n|0}g=k;h=g+64|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));j=n+105|0;g=j;h=g+64|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));do if(e>>>0<65){cr(k|0,b|0,e|0)|0;cr(j|0,b|0,e|0)|0;b=0}else{f=Oq(172)|0;if(f|0){c[f>>2]=1779033703;c[f+4>>2]=-1150833019;c[f+8>>2]=1013904242;c[f+12>>2]=-1521486534;c[f+16>>2]=1359893119;c[f+20>>2]=-1694144372;c[f+24>>2]=528734635;c[f+28>>2]=1541459225;c[f+32>>2]=0;c[f+36>>2]=0;a[f+40>>0]=0;Pl(f,b,e);Ql(f);b=f+41|0;g=k;e=b;h=g+32|0;do{a[g>>0]=a[e>>0]|0;g=g+1|0;e=e+1|0}while((g|0)<(h|0));g=j;e=b;h=g+32|0;do{a[g>>0]=a[e>>0]|0;g=g+1|0;e=e+1|0}while((g|0)<(h|0));Rl(f);b=0;break}Pq(n);n=0;l=o;return n|0}while(0);do{h=k+b|0;a[h>>0]=(d[h>>0]|0)^54;h=j+b|0;a[h>>0]=(d[h>>0]|0)^92;b=b+1|0}while((b|0)!=64);a[i>>0]=a[i>>0]|2;Pl(n,k,64);a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0;a[k+4>>0]=0;a[k+5>>0]=0;a[k+6>>0]=0;a[k+7>>0]=0;a[k+8>>0]=0;a[k+9>>0]=0;a[k+10>>0]=0;a[k+11>>0]=0;a[k+12>>0]=0;a[k+13>>0]=0;a[k+14>>0]=0;a[k+15>>0]=0;a[k+16>>0]=0;a[k+17>>0]=0;a[k+18>>0]=0;a[k+19>>0]=0;a[k+20>>0]=0;a[k+21>>0]=0;a[k+22>>0]=0;a[k+23>>0]=0;a[k+24>>0]=0;a[k+25>>0]=0;a[k+26>>0]=0;a[k+27>>0]=0;a[k+28>>0]=0;a[k+29>>0]=0;a[k+30>>0]=0;a[k+31>>0]=0;a[k+32>>0]=0;a[k+33>>0]=0;a[k+34>>0]=0;a[k+35>>0]=0;a[k+36>>0]=0;a[k+37>>0]=0;a[k+38>>0]=0;a[k+39>>0]=0;a[k+40>>0]=0;a[k+41>>0]=0;a[k+42>>0]=0;a[k+43>>0]=0;a[k+44>>0]=0;a[k+45>>0]=0;a[k+46>>0]=0;a[k+47>>0]=0;a[k+48>>0]=0;a[k+49>>0]=0;a[k+50>>0]=0;a[k+51>>0]=0;a[k+52>>0]=0;a[k+53>>0]=0;a[k+54>>0]=0;a[k+55>>0]=0;a[k+56>>0]=0;a[k+57>>0]=0;a[k+58>>0]=0;a[k+59>>0]=0;a[k+60>>0]=0;a[k+61>>0]=0;a[k+62>>0]=0;a[k+63>>0]=0;l=o;return n|0}function Pl(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;g=b+40|0;if(a[g>>0]&1)return;k=b+36|0;f=c[k>>2]|0;if((f|0)==64){Sl(b,b+41|0);c[k>>2]=0;f=b+32|0;c[f>>2]=(c[f>>2]|0)+1;f=0}if(!d)return;a:do if(!f)f=0;else{b:do if(e|0){if((f|0)<64)do{j=a[d>>0]|0;c[k>>2]=f+1;a[b+41+f>>0]=j;e=e+-1|0;if(!e)break b;d=d+1|0;f=c[k>>2]|0}while((f|0)<64);if(!((f|0)==64&(a[g>>0]&1)==0))break a;Sl(b,b+41|0);c[k>>2]=0;f=b+32|0;c[f>>2]=(c[f>>2]|0)+1;f=0;break a}while(0);if(a[g>>0]&1)return;if((c[k>>2]|0)!=64)return;Sl(b,b+41|0);c[k>>2]=0;k=b+32|0;c[k>>2]=(c[k>>2]|0)+1;return}while(0);if(e>>>0>63){g=b+32|0;i=e+-64|0;j=i&-64;h=j+64|0;f=d;while(1){Sl(b,f);c[k>>2]=0;c[g>>2]=(c[g>>2]|0)+1;e=e+-64|0;if(e>>>0<=63)break;else f=f+64|0}d=d+h|0;e=i-j|0;f=0}if(!((e|0)!=0&(f|0)<64))return;while(1){j=a[d>>0]|0;c[k>>2]=f+1;a[b+41+f>>0]=j;e=e+-1|0;if(!e){f=22;break}f=c[k>>2]|0;if((f|0)>=64){f=22;break}else d=d+1|0}if((f|0)==22)return}function Ql(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;m=b+40|0;if(a[m>>0]&1)return;k=b+36|0;d=c[k>>2]|0;if((d|0)==64){Sl(b,b+41|0);c[k>>2]=0;f=b+32|0;e=(c[f>>2]|0)+1|0;c[f>>2]=e;d=0}else{e=b+32|0;f=e;e=c[e>>2]|0}g=e<<6;l=g+d|0;g=(l>>>0<g>>>0&1)+(e>>>26)|0;h=l<<3;i=g<<3|l>>>29;c[k>>2]=d+1;j=b+41|0;a[b+41+d>>0]=-128;e=c[k>>2]|0;if((d|0)<56){if((e|0)<56){d=e;do{c[k>>2]=d+1;a[b+41+d>>0]=0;d=c[k>>2]|0}while((d|0)<56)}}else{if((e|0)<64){d=e;do{c[k>>2]=d+1;a[b+41+d>>0]=0;d=c[k>>2]|0}while((d|0)<64)}else d=e;if((d|0)==64&(a[m>>0]&1)==0){Sl(b,b+41|0);c[k>>2]=0;c[f>>2]=(c[f>>2]|0)+1}d=j;e=d+56|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0))}a[b+97>>0]=0;a[b+98>>0]=0;a[b+99>>0]=g>>>5;a[b+100>>0]=i;a[b+101>>0]=l>>>21;a[b+102>>0]=l>>>13;a[b+103>>0]=l>>>5;a[b+104>>0]=h;Sl(b,j);l=c[b>>2]|0;a[j>>0]=l>>>24;a[b+42>>0]=l>>>16;a[b+43>>0]=l>>>8;a[b+44>>0]=l;l=c[b+4>>2]|0;a[b+45>>0]=l>>>24;a[b+46>>0]=l>>>16;a[b+47>>0]=l>>>8;a[b+48>>0]=l;l=c[b+8>>2]|0;a[b+49>>0]=l>>>24;a[b+50>>0]=l>>>16;a[b+51>>0]=l>>>8;a[b+52>>0]=l;l=c[b+12>>2]|0;a[b+53>>0]=l>>>24;a[b+54>>0]=l>>>16;a[b+55>>0]=l>>>8;a[b+56>>0]=l;l=c[b+16>>2]|0;a[b+57>>0]=l>>>24;a[b+58>>0]=l>>>16;a[b+59>>0]=l>>>8;a[b+60>>0]=l;l=c[b+20>>2]|0;a[b+61>>0]=l>>>24;a[b+62>>0]=l>>>16;a[b+63>>0]=l>>>8;a[b+64>>0]=l;l=c[b+24>>2]|0;a[b+65>>0]=l>>>24;a[b+66>>0]=l>>>16;a[b+67>>0]=l>>>8;a[b+68>>0]=l;l=c[b+28>>2]|0;a[b+69>>0]=l>>>24;a[b+70>>0]=l>>>16;a[b+71>>0]=l>>>8;a[b+72>>0]=l;a[m>>0]=a[m>>0]|1;return}function Rl(b){b=b|0;if(!b)return;if(a[b+40>>0]&2){a[b+105>>0]=0;a[b+106>>0]=0;a[b+107>>0]=0;a[b+108>>0]=0;a[b+109>>0]=0;a[b+110>>0]=0;a[b+111>>0]=0;a[b+112>>0]=0;a[b+113>>0]=0;a[b+114>>0]=0;a[b+115>>0]=0;a[b+116>>0]=0;a[b+117>>0]=0;a[b+118>>0]=0;a[b+119>>0]=0;a[b+120>>0]=0;a[b+121>>0]=0;a[b+122>>0]=0;a[b+123>>0]=0;a[b+124>>0]=0;a[b+125>>0]=0;a[b+126>>0]=0;a[b+127>>0]=0;a[b+128>>0]=0;a[b+129>>0]=0;a[b+130>>0]=0;a[b+131>>0]=0;a[b+132>>0]=0;a[b+133>>0]=0;a[b+134>>0]=0;a[b+135>>0]=0;a[b+136>>0]=0;a[b+137>>0]=0;a[b+138>>0]=0;a[b+139>>0]=0;a[b+140>>0]=0;a[b+141>>0]=0;a[b+142>>0]=0;a[b+143>>0]=0;a[b+144>>0]=0;a[b+145>>0]=0;a[b+146>>0]=0;a[b+147>>0]=0;a[b+148>>0]=0;a[b+149>>0]=0;a[b+150>>0]=0;a[b+151>>0]=0;a[b+152>>0]=0;a[b+153>>0]=0;a[b+154>>0]=0;a[b+155>>0]=0;a[b+156>>0]=0;a[b+157>>0]=0;a[b+158>>0]=0;a[b+159>>0]=0;a[b+160>>0]=0;a[b+161>>0]=0;a[b+162>>0]=0;a[b+163>>0]=0;a[b+164>>0]=0;a[b+165>>0]=0;a[b+166>>0]=0;a[b+167>>0]=0;a[b+168>>0]=0}Pq(b);return}function Sl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;y=l;l=l+320|0;if((l|0)>=(m|0))$(320);e=y+256|0;u=y;j=c[b>>2]|0;v=b+4|0;f=c[v>>2]|0;w=b+8|0;h=c[w>>2]|0;x=b+12|0;p=c[x>>2]|0;q=b+16|0;i=c[q>>2]|0;r=b+20|0;k=c[r>>2]|0;s=b+24|0;o=c[s>>2]|0;t=b+28|0;n=c[t>>2]|0;a[e+3>>0]=a[d>>0]|0;a[e+2>>0]=a[d+1>>0]|0;a[e+1>>0]=a[d+2>>0]|0;a[e>>0]=a[d+3>>0]|0;g=e+4|0;a[g+3>>0]=a[d+4>>0]|0;a[g+2>>0]=a[d+5>>0]|0;a[g+1>>0]=a[d+6>>0]|0;a[g>>0]=a[d+7>>0]|0;g=e+8|0;a[g+3>>0]=a[d+8>>0]|0;a[g+2>>0]=a[d+9>>0]|0;a[g+1>>0]=a[d+10>>0]|0;a[g>>0]=a[d+11>>0]|0;g=e+12|0;a[g+3>>0]=a[d+12>>0]|0;a[g+2>>0]=a[d+13>>0]|0;a[g+1>>0]=a[d+14>>0]|0;a[g>>0]=a[d+15>>0]|0;g=e+16|0;a[g+3>>0]=a[d+16>>0]|0;a[g+2>>0]=a[d+17>>0]|0;a[g+1>>0]=a[d+18>>0]|0;a[g>>0]=a[d+19>>0]|0;g=e+20|0;a[g+3>>0]=a[d+20>>0]|0;a[g+2>>0]=a[d+21>>0]|0;a[g+1>>0]=a[d+22>>0]|0;a[g>>0]=a[d+23>>0]|0;g=e+24|0;a[g+3>>0]=a[d+24>>0]|0;a[g+2>>0]=a[d+25>>0]|0;a[g+1>>0]=a[d+26>>0]|0;a[g>>0]=a[d+27>>0]|0;g=e+28|0;a[g+3>>0]=a[d+28>>0]|0;a[g+2>>0]=a[d+29>>0]|0;a[g+1>>0]=a[d+30>>0]|0;a[g>>0]=a[d+31>>0]|0;g=e+32|0;a[g+3>>0]=a[d+32>>0]|0;a[g+2>>0]=a[d+33>>0]|0;a[g+1>>0]=a[d+34>>0]|0;a[g>>0]=a[d+35>>0]|0;g=e+36|0;a[g+3>>0]=a[d+36>>0]|0;a[g+2>>0]=a[d+37>>0]|0;a[g+1>>0]=a[d+38>>0]|0;a[g>>0]=a[d+39>>0]|0;g=e+40|0;a[g+3>>0]=a[d+40>>0]|0;a[g+2>>0]=a[d+41>>0]|0;a[g+1>>0]=a[d+42>>0]|0;a[g>>0]=a[d+43>>0]|0;g=e+44|0;a[g+3>>0]=a[d+44>>0]|0;a[g+2>>0]=a[d+45>>0]|0;a[g+1>>0]=a[d+46>>0]|0;a[g>>0]=a[d+47>>0]|0;g=e+48|0;a[g+3>>0]=a[d+48>>0]|0;a[g+2>>0]=a[d+49>>0]|0;a[g+1>>0]=a[d+50>>0]|0;a[g>>0]=a[d+51>>0]|0;g=e+52|0;a[g+3>>0]=a[d+52>>0]|0;a[g+2>>0]=a[d+53>>0]|0;a[g+1>>0]=a[d+54>>0]|0;a[g>>0]=a[d+55>>0]|0;g=e+56|0;a[g+3>>0]=a[d+56>>0]|0;a[g+2>>0]=a[d+57>>0]|0;a[g+1>>0]=a[d+58>>0]|0;a[g>>0]=a[d+59>>0]|0;g=e+60|0;a[g+3>>0]=a[d+60>>0]|0;a[g+2>>0]=a[d+61>>0]|0;a[g+1>>0]=a[d+62>>0]|0;a[g>>0]=a[d+63>>0]|0;d=u;g=d+64|0;do{c[d>>2]=c[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));d=16;e=c[u>>2]|0;do{g=c[u+(d+-2<<2)>>2]|0;z=e;e=c[u+(d+-15<<2)>>2]|0;c[u+(d<<2)>>2]=z+(c[u+(d+-7<<2)>>2]|0)+((g<<13|g>>>19)^g>>>10^(g<<15|g>>>17))+((e<<14|e>>>18)^e>>>3^(e<<25|e>>>7));d=d+1|0}while((d|0)!=64);e=n;n=o;d=p;g=0;while(1){e=((i<<26|i>>>6)^(i<<21|i>>>11)^(i<<7|i>>>25))+e+((n^k)&i^n)+(c[12216+(g<<2)>>2]|0)+(c[u+(g<<2)>>2]|0)|0;d=e+d|0;e=((j<<30|j>>>2)^(j<<19|j>>>13)^(j<<10|j>>>22))+((j|f)&h|j&f)+e|0;g=g+1|0;if((g|0)==64)break;else{C=j;B=f;A=h;o=i;p=k;z=n;j=e;i=d;f=C;h=B;d=A;k=o;n=p;e=z}}c[b>>2]=(c[b>>2]|0)+e;c[v>>2]=(c[v>>2]|0)+j;c[w>>2]=(c[w>>2]|0)+f;c[x>>2]=(c[x>>2]|0)+h;c[q>>2]=(c[q>>2]|0)+d;c[r>>2]=(c[r>>2]|0)+i;c[s>>2]=(c[s>>2]|0)+k;c[t>>2]=(c[t>>2]|0)+n;l=y;return}function Tl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;Ql(b);do if(a[b+40>>0]&2){e=Oq(172)|0;if(e|0){c[e>>2]=1779033703;c[e+4>>2]=-1150833019;c[e+8>>2]=1013904242;c[e+12>>2]=-1521486534;c[e+16>>2]=1359893119;c[e+20>>2]=-1694144372;c[e+24>>2]=528734635;c[e+28>>2]=1541459225;c[e+32>>2]=0;c[e+36>>2]=0;a[e+40>>0]=0;Pl(e,b+105|0,64);f=b+41|0;Pl(e,f,32);Ql(e);g=e+41|0;h=f+32|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(h|0));Rl(e);break}Pq(b);h=0;return h|0}while(0);if(d|0)c[d>>2]=32;h=b+41|0;return h|0}function Ul(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,n=0,o=0,p=0,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,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;pa=l;l=l+16|0;if((l|0)>=(m|0))$(16);na=pa;oa=b+12|0;if((c[(c[oa>>2]|0)+20>>2]|0)!=16){oa=139;l=pa;return oa|0}if((h+8|0)>>>0>f>>>0){oa=200;l=pa;return oa|0}if(h&7|0){oa=45;l=pa;return oa|0}la=h>>>3;if(h>>>0<16){oa=45;l=pa;return oa|0}ma=b+80|0;if(!(a[b+56>>0]&2)){ka=e;ja=ka;a[ja>>0]=-1499027802;a[ja+1>>0]=-1499027802>>8;a[ja+2>>0]=-1499027802>>16;a[ja+3>>0]=-1499027802>>24;ka=ka+4|0;a[ka>>0]=-1499027802;a[ka+1>>0]=-1499027802>>8;a[ka+2>>0]=-1499027802>>16;a[ka+3>>0]=-1499027802>>24;ka=e}else{ja=b+64|0;ha=ja;ha=d[ha>>0]|d[ha+1>>0]<<8|d[ha+2>>0]<<16|d[ha+3>>0]<<24;ja=ja+4|0;ja=d[ja>>0]|d[ja+1>>0]<<8|d[ja+2>>0]<<16|d[ja+3>>0]<<24;ka=e;ia=ka;a[ia>>0]=ha;a[ia+1>>0]=ha>>8;a[ia+2>>0]=ha>>16;a[ia+3>>0]=ha>>24;ka=ka+4|0;a[ka>>0]=ja;a[ka+1>>0]=ja>>8;a[ka+2>>0]=ja>>16;a[ka+3>>0]=ja>>24;ka=e}dr(e+8|0,g|0,h|0)|0;ia=na;c[ia>>2]=0;c[ia+4>>2]=0;ia=(la|0)==0;ja=b+88|0;z=b+496|0;A=((ma|e)&3|0)==0;B=ma+4|0;C=na+4|0;D=e+4|0;E=ma+1|0;F=na+7|0;G=na+6|0;H=na+5|0;I=na+4|0;J=na+3|0;K=na+2|0;L=na+1|0;M=e+1|0;N=ma+2|0;O=e+2|0;P=ma+3|0;Q=e+3|0;R=ma+4|0;S=e+4|0;T=ma+5|0;U=na+5|0;V=e+5|0;W=ma+6|0;X=na+6|0;Y=e+6|0;Z=ma+7|0;_=na+7|0;aa=e+7|0;ba=na+7|0;ca=na+6|0;da=na+5|0;ea=na+4|0;fa=na+3|0;ga=na+2|0;ha=na+1|0;o=0;y=0;j=0;s=0;r=0;q=0;n=0;k=0;v=0;f=0;g=0;h=0;t=0;i=0;b=0;p=0;while(1){if(!ia)if(A){t=1;k=s;do{w=ka;x=w;x=d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24;w=w+4|0;w=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;n=ma;u=n;a[u>>0]=x;a[u+1>>0]=x>>8;a[u+2>>0]=x>>16;a[u+3>>0]=x>>24;n=n+4|0;a[n>>0]=w;a[n+1>>0]=w>>8;a[n+2>>0]=w>>16;a[n+3>>0]=w>>24;n=e+(t<<3)|0;w=n;u=w;u=d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24;w=w+4|0;w=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;x=ja;v=x;a[v>>0]=u;a[v+1>>0]=u>>8;a[v+2>>0]=u>>16;a[v+3>>0]=u>>24;x=x+4|0;a[x>>0]=w;a[x+1>>0]=w>>8;a[x+2>>0]=w>>16;a[x+3>>0]=w>>24;x=pb[c[(c[oa>>2]|0)+36>>2]&63](z,ma,ma)|0;o=x>>>0>o>>>0?x:o;p=p+1<<24>>24;a[ba>>0]=p;if(!(p<<24>>24)){b=q+1<<24>>24;a[ca>>0]=b;if(!(b<<24>>24)){b=r+1<<24>>24;a[da>>0]=b;if(!(b<<24>>24)){x=k+1<<24>>24;a[ea>>0]=x;if(!(x<<24>>24)){h=h+1<<24>>24;a[fa>>0]=h;if(!(h<<24>>24)){g=g+1<<24>>24;a[ga>>0]=g;if(!(g<<24>>24)){f=f+1<<24>>24;a[ha>>0]=f;if(!(f<<24>>24)){a[na>>0]=j+1<<24>>24;r=0;q=0;f=0;g=0;h=0;i=0;b=0}else{r=0;q=0;g=0;h=0;i=0;b=0}}else{r=0;q=0;h=0;i=0;b=0}}else{r=0;q=0;i=0;b=0}}else{r=0;q=0;i=0;b=0}}else{r=b;q=0;i=b;b=0}}else q=b}j=c[na>>2]|0;c[e>>2]=j^c[ma>>2];k=c[C>>2]|0;c[D>>2]=k^c[B>>2];w=ja;u=w;u=d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24;w=w+4|0;w=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;x=n;v=x;a[v>>0]=u;a[v+1>>0]=u>>8;a[v+2>>0]=u>>16;a[v+3>>0]=u>>24;x=x+4|0;a[x>>0]=w;a[x+1>>0]=w>>8;a[x+2>>0]=w>>16;a[x+3>>0]=w>>24;t=t+1|0;k=k&255;j=j&255}while(t>>>0<=la>>>0);x=j;s=k;u=k;w=j;v=j;t=k}else{w=1;while(1){qa=ka;x=qa;x=d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24;qa=qa+4|0;qa=d[qa>>0]|d[qa+1>>0]<<8|d[qa+2>>0]<<16|d[qa+3>>0]<<24;u=ma;sa=u;a[sa>>0]=x;a[sa+1>>0]=x>>8;a[sa+2>>0]=x>>16;a[sa+3>>0]=x>>24;u=u+4|0;a[u>>0]=qa;a[u+1>>0]=qa>>8;a[u+2>>0]=qa>>16;a[u+3>>0]=qa>>24;u=e+(w<<3)|0;qa=u;sa=qa;sa=d[sa>>0]|d[sa+1>>0]<<8|d[sa+2>>0]<<16|d[sa+3>>0]<<24;qa=qa+4|0;qa=d[qa>>0]|d[qa+1>>0]<<8|d[qa+2>>0]<<16|d[qa+3>>0]<<24;x=ja;ra=x;a[ra>>0]=sa;a[ra+1>>0]=sa>>8;a[ra+2>>0]=sa>>16;a[ra+3>>0]=sa>>24;x=x+4|0;a[x>>0]=qa;a[x+1>>0]=qa>>8;a[x+2>>0]=qa>>16;a[x+3>>0]=qa>>24;x=pb[c[(c[oa>>2]|0)+36>>2]&63](z,ma,ma)|0;o=x>>>0>o>>>0?x:o;p=p+1<<24>>24;a[F>>0]=p;if(!(p<<24>>24)){b=b+1<<24>>24;a[G>>0]=b;if(!(b<<24>>24)){b=i+1<<24>>24;a[H>>0]=b;if(!(b<<24>>24)){b=t+1<<24>>24;a[I>>0]=b;if(!(b<<24>>24)){h=h+1<<24>>24;a[J>>0]=h;if(!(h<<24>>24)){g=g+1<<24>>24;a[K>>0]=g;if(!(g<<24>>24)){f=f+1<<24>>24;a[L>>0]=f;if(!(f<<24>>24)){j=v+1<<24>>24;a[na>>0]=j;k=j;f=0;g=0;h=0;n=0;s=0;r=0;q=0;i=0;b=0}else{g=0;h=0;n=0;s=0;r=0;q=0;i=0;b=0}}else{h=0;n=0;s=0;r=0;q=0;i=0;b=0}}else{n=0;s=0;r=0;q=0;i=0;b=0}}else{n=b;s=b;r=0;q=0;i=0;b=0}}else{r=b;q=0;i=b;b=0}}else q=b}a[e>>0]=k^a[ma>>0];a[M>>0]=f^a[E>>0];a[O>>0]=g^a[N>>0];a[Q>>0]=h^a[P>>0];a[S>>0]=n^a[R>>0];a[V>>0]=a[U>>0]^a[T>>0];a[Y>>0]=a[X>>0]^a[W>>0];a[aa>>0]=a[_>>0]^a[Z>>0];ra=ja;x=ra;x=d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24;ra=ra+4|0;ra=d[ra>>0]|d[ra+1>>0]<<8|d[ra+2>>0]<<16|d[ra+3>>0]<<24;sa=u;qa=sa;a[qa>>0]=x;a[qa+1>>0]=x>>8;a[qa+2>>0]=x>>16;a[qa+3>>0]=x>>24;sa=sa+4|0;a[sa>>0]=ra;a[sa+1>>0]=ra>>8;a[sa+2>>0]=ra>>16;a[sa+3>>0]=ra>>24;w=w+1|0;if(w>>>0>la>>>0){x=j;u=n;w=k;v=k;t=n;break}else{t=n;v=k}}}else{x=j;u=n;w=k}y=y+1|0;if((y|0)==6)break;else{j=x;n=u;k=w}}if(!o){sa=0;l=pa;return sa|0}Te(o+16|0);sa=0;l=pa;return sa|0}function Vl(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,n=0,o=0,p=0,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,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;la=l;l=l+16|0;if((l|0)>=(m|0))$(16);ja=la;ka=b+12|0;if((c[(c[ka>>2]|0)+20>>2]|0)!=16){ka=139;l=la;return ka|0}if((f+8|0)>>>0<h>>>0){ka=200;l=la;return ka|0}if(h>>>0<24|(h&7|0)!=0){ka=45;l=la;return ka|0}ha=b+96|0;ia=b+80|0;p=g;B=p;B=d[B>>0]|d[B+1>>0]<<8|d[B+2>>0]<<16|d[B+3>>0]<<24;p=p+4|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;A=ha;q=A;a[q>>0]=B;a[q+1>>0]=B>>8;a[q+2>>0]=B>>16;a[q+3>>0]=B>>24;A=A+4|0;a[A>>0]=p;a[A+1>>0]=p>>8;a[A+2>>0]=p>>16;a[A+3>>0]=p>>24;dr(e|0,g+8|0,h+-8|0)|0;A=(h>>>3)+-1|0;p=A*6|0;q=p&255;B=ja+7|0;a[B>>0]=q;o=p>>>8&255;C=ja+6|0;a[C>>0]=o;i=p>>>16&255;D=ja+5|0;a[D>>0]=i;p=p>>>24&255;E=ja+4|0;a[E>>0]=p;c[ja>>2]=0;F=(A|0)==0;G=((ha|ia)&3|0)==0;H=b+100|0;I=ia+4|0;J=b+88|0;K=b+496|0;L=ja+3|0;M=ja+2|0;N=ja+1|0;O=b+97|0;P=ia+1|0;Q=b+98|0;R=ia+2|0;S=b+99|0;T=ia+3|0;U=b+100|0;V=ia+4|0;W=b+101|0;X=ja+5|0;Y=ia+5|0;Z=b+102|0;_=ja+6|0;aa=ia+6|0;ba=b+103|0;ca=ja+7|0;da=ia+7|0;ea=ja+3|0;fa=ja+2|0;ga=ja+1|0;f=0;z=5;s=0;h=p;j=0;k=0;n=0;g=0;while(1){if(!F)if(G){x=A;g=q;q=o;p=i;s=j;t=k;u=n;while(1){h=c[ja>>2]|0;c[ia>>2]=h^c[ha>>2];y=c[E>>2]|0;c[I>>2]=y^c[H>>2];v=e+((x<<3)+-8)|0;w=v;n=w;n=d[n>>0]|d[n+1>>0]<<8|d[n+2>>0]<<16|d[n+3>>0]<<24;w=w+4|0;w=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;r=J;o=r;a[o>>0]=n;a[o+1>>0]=n>>8;a[o+2>>0]=n>>16;a[o+3>>0]=n>>24;r=r+4|0;a[r>>0]=w;a[r+1>>0]=w>>8;a[r+2>>0]=w>>16;a[r+3>>0]=w>>24;r=pb[c[(c[ka>>2]|0)+40>>2]&63](K,ia,ia)|0;r=r>>>0>f>>>0?r:f;w=g+-1<<24>>24;a[B>>0]=w;h=h&255;f=y&255;if(!(g<<24>>24)){o=q+-1<<24>>24;a[C>>0]=o;if(!(q<<24>>24)){i=p+-1<<24>>24;a[D>>0]=i;if(!(p<<24>>24)){g=f+-1<<24>>24;a[E>>0]=g;if(!(f<<24>>24)){j=s+-1<<24>>24;a[L>>0]=j;if(!(s<<24>>24)){k=t+-1<<24>>24;a[M>>0]=k;if(!(t<<24>>24)){n=u+-1<<24>>24;a[N>>0]=n;if(!(u<<24>>24)){h=h+-1<<24>>24;a[ja>>0]=h;f=g}else f=g}else{f=g;n=u}}else{f=g;k=t;n=u}}else{f=g;j=s;k=t;n=u}}else{j=s;k=t;n=u}}else{i=p;j=s;k=t;n=u}}else{i=p;o=q;j=s;k=t;n=u}t=ia;s=t;s=d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24;t=t+4|0;t=d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24;u=ha;y=u;a[y>>0]=s;a[y+1>>0]=s>>8;a[y+2>>0]=s>>16;a[y+3>>0]=s>>24;u=u+4|0;a[u>>0]=t;a[u+1>>0]=t>>8;a[u+2>>0]=t>>16;a[u+3>>0]=t>>24;u=J;t=u;t=d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24;u=u+4|0;u=d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24;y=v;v=y;a[v>>0]=t;a[v+1>>0]=t>>8;a[v+2>>0]=t>>16;a[v+3>>0]=t>>24;y=y+4|0;a[y>>0]=u;a[y+1>>0]=u>>8;a[y+2>>0]=u>>16;a[y+3>>0]=u>>24;x=x+-1|0;if(!x){s=h;u=f;q=w;p=f;g=h;break}else{f=r;g=w;q=o;p=i;s=j;t=k;u=n}}}else{y=A;x=g;g=q;while(1){a[ia>>0]=x^a[ha>>0];a[P>>0]=n^a[O>>0];a[R>>0]=k^a[Q>>0];a[T>>0]=j^a[S>>0];a[V>>0]=p^a[U>>0];a[Y>>0]=a[X>>0]^a[W>>0];a[aa>>0]=a[_>>0]^a[Z>>0];a[da>>0]=a[ca>>0]^a[ba>>0];v=e+((y<<3)+-8)|0;w=v;r=w;r=d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24;w=w+4|0;w=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;u=J;t=u;a[t>>0]=r;a[t+1>>0]=r>>8;a[t+2>>0]=r>>16;a[t+3>>0]=r>>24;u=u+4|0;a[u>>0]=w;a[u+1>>0]=w>>8;a[u+2>>0]=w>>16;a[u+3>>0]=w>>24;u=pb[c[(c[ka>>2]|0)+40>>2]&63](K,ia,ia)|0;u=u>>>0>f>>>0?u:f;w=g+-1<<24>>24;a[B>>0]=w;if(!(g<<24>>24)){t=o+-1<<24>>24;a[C>>0]=t;if(!(o<<24>>24)){f=i+-1<<24>>24;a[D>>0]=f;if(!(i<<24>>24)){g=h+-1<<24>>24;a[E>>0]=g;if(!(h<<24>>24)){p=j+-1<<24>>24;a[ea>>0]=p;if(!(j<<24>>24)){q=k+-1<<24>>24;a[fa>>0]=q;if(!(k<<24>>24)){r=n+-1<<24>>24;a[ga>>0]=r;if(!(n<<24>>24)){x=s+-1<<24>>24;a[ja>>0]=x;s=x;h=g;i=f;o=t;t=g;j=p;k=q;n=r;g=x}else{h=g;i=f;o=t;t=g;j=p;k=q;n=r;g=x}}else{h=g;i=f;o=t;t=g;j=p;k=q;g=x}}else{h=g;i=f;o=t;t=g;j=p;g=x}}else{h=g;i=f;o=t;t=g;g=x}}else{i=f;o=t;t=p;g=x}}else{o=t;t=p;g=x}}else{t=p;g=x}q=ia;p=q;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;q=q+4|0;q=d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24;r=ha;x=r;a[x>>0]=p;a[x+1>>0]=p>>8;a[x+2>>0]=p>>16;a[x+3>>0]=p>>24;r=r+4|0;a[r>>0]=q;a[r+1>>0]=q>>8;a[r+2>>0]=q>>16;a[r+3>>0]=q>>24;r=J;q=r;q=d[q>>0]|d[q+1>>0]<<8|d[q+2>>0]<<16|d[q+3>>0]<<24;r=r+4|0;r=d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24;x=v;v=x;a[v>>0]=q;a[v+1>>0]=q>>8;a[v+2>>0]=q>>16;a[v+3>>0]=q>>24;x=x+4|0;a[x>>0]=r;a[x+1>>0]=r>>8;a[x+2>>0]=r>>16;a[x+3>>0]=r>>24;y=y+-1|0;if(!y){r=u;u=h;q=w;p=t;break}else{f=u;x=g;p=t;g=w}}}else{r=f;u=h}if((z|0)>0){f=r;z=z+-1|0;h=u}else break}if(!(a[b+56>>0]&2))if(((((((a[ha>>0]|0)==-90?(a[b+97>>0]|0)==-90:0)?(a[b+98>>0]|0)==-90:0)?(a[b+99>>0]|0)==-90:0)?(a[H>>0]|0)==-90:0)?(a[b+101>>0]|0)==-90:0)?(a[b+102>>0]|0)==-90:0)f=(a[b+103>>0]|0)!=-90&1;else f=1;else f=Tp(ha,b+64|0,8)|0;if(r|0)Te(r+16|0);ka=f|0?10:0;l=la;return ka|0}function Wl(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=c[b+12>>2]|0;h=c[w+20>>2]|0;w=c[w+36>>2]|0;j=(g>>>0)/(h>>>0)|0;t=b+52|0;i=c[t>>2]|0;k=i&8;if((k|0?h:g)>>>0>e>>>0){w=200;return w|0}u=(g>>>0)%(h>>>0)|0;v=(u|0)==0;if(!v){e=i&4;if(h>>>0>=g>>>0|(e|0)==0){w=139;return w|0}}else e=i&4;s=h>>>0<g>>>0;r=((v&(s&(e|0)!=0))<<31>>31)+j|0;e=c[b+28>>2]|0;if(!e){g=b+64|0;if(r){q=h+-4|0;p=q&-4;o=p+4|0;p=q-p|0;q=b+496|0;if(h>>>0>3){e=0;i=g;n=0;while(1){if(!((f|i|d)&3)){m=i+o|0;j=f;k=d;l=h;while(1){c[k>>2]=c[i>>2]^c[j>>2];l=l+-4|0;if(l>>>0<=3)break;else{i=i+4|0;j=j+4|0;k=k+4|0}}i=m;k=f+o|0;l=d+o|0;j=p}else{k=f;l=d;j=h}if(j|0)while(1){a[l>>0]=a[i>>0]^a[k>>0];j=j+-1|0;if(!j)break;else{i=i+1|0;k=k+1|0;l=l+1|0}}i=pb[w&63](q,d,d)|0;e=i>>>0>e>>>0?i:e;f=f+h|0;i=c[t>>2]|0;j=(i&8|0)==0?d+h|0:d;n=n+1|0;if(n>>>0>=r>>>0){p=j;o=f;break}else{i=d;d=j}}}else{n=(h|0)==0;e=0;i=g;m=0;while(1){if(!n){j=f;k=d;l=h;while(1){a[k>>0]=a[i>>0]^a[j>>0];l=l+-1|0;if(!l)break;else{i=i+1|0;j=j+1|0;k=k+1|0}}}k=pb[w&63](q,d,d)|0;e=k>>>0>e>>>0?k:e;k=f+h|0;i=c[t>>2]|0;j=(i&8|0)==0?d+h|0:d;m=m+1|0;if(m>>>0>=r>>>0){p=j;o=k;break}else{i=d;d=j;f=k}}}if((d|0)!=(g|0)){if(!((d|g)&3))if(h>>>0>3){l=h+-4|0;f=l&-4;n=f+4|0;m=d+n|0;j=g;k=h;while(1){c[j>>2]=c[d>>2];k=k+-4|0;if(k>>>0<=3)break;else{d=d+4|0;j=j+4|0}}j=l-f|0;d=m;g=g+n|0}else j=h;else j=h;if(j){i=j;while(1){a[g>>0]=a[d>>0]|0;i=i+-1|0;if(!i)break;else{d=d+1|0;g=g+1|0}}f=o;g=p;i=c[t>>2]|0}else{f=o;g=p}}else{f=o;g=p}}else{e=0;g=d}}else{xb[e&1](b+496|0,b+64|0,d,f,r,k);g=S(r,h)|0;i=c[t>>2]|0;e=0;f=f+g|0;g=(i&8|0)==0?d+g|0:d}if(s&(i&4|0)!=0){j=v?h:u;g=g+(0-h)|0;i=b+64|0;if(!j){j=0;d=i}else{l=j+64|0;d=0;k=i;while(1){u=a[f+d>>0]|0;v=g+d|0;a[g+(d+h)>>0]=a[v>>0]|0;a[v>>0]=a[k>>0]^u;d=d+1|0;if((d|0)==(j|0))break;else k=k+1|0}d=b+l|0}if(j>>>0<h>>>0)while(1){a[g+j>>0]=a[d>>0]|0;j=j+1|0;if((j|0)==(h|0))break;else d=d+1|0}w=pb[w&63](b+496|0,g,g)|0;e=w>>>0>e>>>0?w:e;if(!((g|i)&3))if(h>>>0>3){j=h+-4|0;k=j&-4;f=k+4|0;l=g+f|0;d=i;while(1){c[d>>2]=c[g>>2];h=h+-4|0;if(h>>>0<=3)break;else{g=g+4|0;d=d+4|0}}h=j-k|0;g=l;i=i+f|0}if(h)while(1){a[i>>0]=a[g>>0]|0;h=h+-1|0;if(!h)break;else{g=g+1|0;i=i+1|0}}}if(!e){w=0;return w|0}Te(e+16|0);w=0;return w|0}function Xl(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=c[b+12>>2]|0;j=c[F+20>>2]|0;F=c[F+40>>2]|0;i=(g>>>0)/(j>>>0)|0;if(e>>>0<g>>>0){b=200;return b|0}D=(g>>>0)%(j>>>0)|0;E=(D|0)==0;if(!E){if(j>>>0>=g>>>0){b=139;return b|0}e=b+52|0;h=c[e>>2]|0;if(!(h&4)){b=139;return b|0}else C=e}else{h=b+52|0;C=h;h=c[h>>2]|0}B=j>>>0<g>>>0;if(B&(h&4|0)!=0){i=(E?-2:-1)+i|0;h=b+96|0;g=b+64|0;if(!((g|h)&3))if(j>>>0>3){k=j+-4|0;l=k&-4;n=l+4|0;m=g+n|0;e=j;while(1){c[h>>2]=c[g>>2];e=e+-4|0;if(e>>>0<=3)break;else{g=g+4|0;h=h+4|0}}e=k-l|0;g=m;h=b+96+n|0}else e=j;else e=j;if(e)while(1){a[h>>0]=a[g>>0]|0;e=e+-1|0;if(!e)break;else{g=g+1|0;h=h+1|0}}}e=c[b+32>>2]|0;do if(!e)if(!i){e=0;q=f}else{w=b+496|0;x=b+96|0;y=b+64|0;r=y|x;z=j+-4|0;t=z&-4;s=t+4|0;u=b+96+s|0;v=y+s|0;t=z-t|0;z=S(i,j)|0;A=f+z|0;if(j>>>0>3){e=0;p=d;q=0;o=f}else{q=(j|0)==0;e=0;o=d;p=0;h=f;while(1){f=pb[F&63](w,x,h)|0;e=f>>>0>e>>>0?f:e;if(!q){g=o;k=y;l=h;m=x;n=j;while(1){f=a[l>>0]|0;a[g>>0]=a[m>>0]^a[k>>0];a[k>>0]=f;n=n+-1|0;if(!n)break;else{g=g+1|0;k=k+1|0;l=l+1|0;m=m+1|0}}}p=p+1|0;if((p|0)==(i|0))break;else{o=o+j|0;h=h+j|0}}d=d+z|0;q=A;break}while(1){f=pb[F&63](w,x,o)|0;e=f>>>0>e>>>0?f:e;if(!((r|o|p)&3)){n=o+s|0;h=x;g=o;k=y;l=p;m=j;while(1){f=c[g>>2]|0;c[l>>2]=c[h>>2]^c[k>>2];c[k>>2]=f;m=m+-4|0;if(m>>>0<=3)break;else{h=h+4|0;g=g+4|0;k=k+4|0;l=l+4|0}}g=p+s|0;l=v;m=n;k=u;h=t}else{g=p;l=y;m=o;k=x;h=j}if(h|0)while(1){f=a[m>>0]|0;a[g>>0]=a[k>>0]^a[l>>0];a[l>>0]=f;h=h+-1|0;if(!h)break;else{g=g+1|0;l=l+1|0;m=m+1|0;k=k+1|0}}q=q+1|0;if((q|0)==(i|0))break;else{p=p+j|0;o=o+j|0}}d=d+z|0;q=A}else{qb[e&15](b+496|0,b+64|0,d,f,i);q=S(i,j)|0;e=0;d=d+q|0;q=f+q|0}while(0);if(B&(c[C>>2]&4|0)!=0){t=E?j:D;h=b+96|0;u=b+64|0;v=h;p=u;if(!((p|v)&3))if(j>>>0>3){m=j+-4|0;n=m&-4;o=n+4|0;i=u+o|0;g=u;k=h;l=j;while(1){c[k>>2]=c[g>>2];l=l+-4|0;if(l>>>0<=3)break;else{g=g+4|0;k=k+4|0}}g=m-n|0;k=b+96+o|0}else{g=j;i=u;k=h}else{i=u;k=h;g=j}if(g|0)while(1){a[k>>0]=a[i>>0]|0;g=g+-1|0;if(!g)break;else{i=i+1|0;k=k+1|0}}i=q+j|0;if(!((i|p)&3))if(t>>>0>3){l=t+-4|0;m=l&-4;o=m+4|0;n=i+o|0;g=u;k=t;while(1){c[g>>2]=c[i>>2];k=k+-4|0;if(k>>>0<=3)break;else{i=i+4|0;g=g+4|0}}g=l-m|0;i=n;k=u+o|0}else{g=t;k=u}else{k=u;g=t}if(g|0)while(1){a[k>>0]=a[i>>0]|0;g=g+-1|0;if(!g)break;else{i=i+1|0;k=k+1|0}}s=b+496|0;q=pb[F&63](s,d,q)|0;q=q>>>0>e>>>0?q:e;r=d;if(!((r|p)&3))if(t>>>0>3){l=t+-4|0;m=l&-4;n=m+4|0;g=d+n|0;e=u;i=d;k=t;while(1){c[i>>2]=c[e>>2]^c[i>>2];k=k+-4|0;if(k>>>0<=3)break;else{e=e+4|0;i=i+4|0}}l=l-m|0;e=u+n|0}else{l=t;e=u;g=d}else{e=u;g=d;l=t}if(l|0){k=g;i=g;g=l;while(1){a[i>>0]=a[e>>0]^a[k>>0];g=g+-1|0;if(!g)break;else{e=e+1|0;k=k+1|0;i=i+1|0}}}g=d+j|0;if(!((g|r)&3))if(t>>>0>3){m=t+-4|0;n=m&-4;o=n+4|0;i=d+o|0;e=d;k=g;l=t;while(1){c[k>>2]=c[e>>2];l=l+-4|0;if(l>>>0<=3)break;else{e=e+4|0;k=k+4|0}}e=m-n|0;g=g+o|0}else{e=t;i=d}else{i=d;e=t}if(e|0)while(1){a[g>>0]=a[i>>0]|0;e=e+-1|0;if(!e)break;else{i=i+1|0;g=g+1|0}}if(t>>>0<j>>>0){e=t;do{a[u+e>>0]=a[d+e>>0]|0;e=e+1|0}while((e|0)!=(j|0))}e=pb[F&63](s,d,u)|0;e=e>>>0>q>>>0?e:q;if(!((r|v)&3))if(j>>>0>3){g=j+-4|0;i=g&-4;k=i+4|0;l=d+k|0;while(1){c[d>>2]=c[h>>2]^c[d>>2];j=j+-4|0;if(j>>>0<=3)break;else{h=h+4|0;d=d+4|0}}j=g-i|0;h=b+96+k|0;d=l}if(j){i=d;g=d;d=j;while(1){a[g>>0]=a[h>>0]^a[i>>0];d=d+-1|0;if(!d)break;else{h=h+1|0;i=i+1|0;g=g+1|0}}}}if(!e){b=0;return b|0}Te(e+16|0);b=0;return b|0}function Yl(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;h=15-e|0;if(!d){k=45;return k|0}if((h+-2|0)>>>0>6){k=139;return k|0}Yq(b+128|0,0,368)|0;c[b+56>>2]=0;i=b+64|0;f=b+80|0;g=h+255&255;j=i;k=j+52|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));a[f>>0]=g;cr(f+1|0,d|0,e|0)|0;k=e+1|0;Yq(f+k|0,0,h|0)|0;a[i>>0]=g;cr(i+1|0,d|0,e|0)|0;Yq(i+k|0,0,h|0)|0;k=b+184|0;a[k>>0]=a[k>>0]|1;k=0;return k|0}function Zl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,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;wa=l;l=l+16|0;if((l|0)>=(m|0))$(16);sa=wa;ta=c[(c[b+12>>2]|0)+36>>2]|0;va=b+164|0;g=c[va>>2]|0;if(!e)if((f|0)!=0&(g|0)!=0)e=0;else{va=0;l=wa;return va|0}n=(f|0)==0;o=b+148|0;p=b+64|0;q=p;r=((q|o)&3|0)==0;s=p+4|0;t=b+152|0;u=b+72|0;v=b+156|0;w=b+76|0;x=b+160|0;y=b+496|0;z=b+28|0;A=(sa&7|0)==0;B=p+1|0;C=b+149|0;D=p+2|0;E=b+150|0;F=p+3|0;G=b+151|0;H=p+4|0;I=b+152|0;J=p+5|0;K=b+153|0;L=p+6|0;M=b+154|0;N=p+7|0;O=b+155|0;P=b+72|0;Q=b+156|0;R=b+73|0;S=b+157|0;T=b+74|0;U=b+158|0;V=b+75|0;W=b+159|0;X=b+76|0;Y=b+160|0;Z=b+77|0;_=b+161|0;aa=b+78|0;ba=b+162|0;ca=b+79|0;da=b+163|0;ea=p+1|0;fa=p+2|0;ga=p+3|0;ha=p+4|0;ia=p+5|0;ja=p+6|0;ka=p+7|0;la=b+72|0;ma=b+73|0;na=b+74|0;oa=b+75|0;pa=b+76|0;qa=b+77|0;ra=b+78|0;k=b+79|0;f=d;b=e;e=0;while(1){if((g|0)!=0|(b+g|0)>>>0<16){if(g>>>0<16&(b|0)!=0)while(1){d=f+1|0;h=g+1|0;a[o+g>>0]=a[f>>0]|0;g=b+-1|0;if(h>>>0<16&(g|0)!=0){b=g;g=h;f=d}else{f=d;b=g;g=h;break}}}else g=0;if(!b){if(n)break;if(g>>>0<16){Yq(o+g|0,0,16-g|0)|0;ua=12}else ua=12}else if(g)ua=12;if((ua|0)==12){ua=0;if(r){c[p>>2]=c[o>>2]^c[p>>2];c[s>>2]=c[t>>2]^c[s>>2];c[u>>2]=c[v>>2]^c[u>>2];c[w>>2]=c[x>>2]^c[w>>2]}else{a[p>>0]=a[o>>0]^a[p>>0];a[B>>0]=a[C>>0]^a[B>>0];a[D>>0]=a[E>>0]^a[D>>0];a[F>>0]=a[G>>0]^a[F>>0];a[H>>0]=a[I>>0]^a[H>>0];a[J>>0]=a[K>>0]^a[J>>0];a[L>>0]=a[M>>0]^a[L>>0];a[N>>0]=a[O>>0]^a[N>>0];a[P>>0]=a[Q>>0]^a[P>>0];a[R>>0]=a[S>>0]^a[R>>0];a[T>>0]=a[U>>0]^a[T>>0];a[V>>0]=a[W>>0]^a[V>>0];a[X>>0]=a[Y>>0]^a[X>>0];a[Z>>0]=a[_>>0]^a[Z>>0];a[aa>>0]=a[ba>>0]^a[aa>>0];a[ca>>0]=a[da>>0]^a[ca>>0]}j=pb[ta&63](y,p,p)|0;e=e>>>0>j>>>0?e:j}g=c[z>>2]|0;if(!g)if(b>>>0>15){d=b+-16|0;h=d&-16;g=f+16|0;while(1){if(!((f|q)&3)){c[p>>2]=c[f>>2]^c[p>>2];c[s>>2]=c[f+4>>2]^c[s>>2];c[u>>2]=c[f+8>>2]^c[u>>2];c[w>>2]=c[f+12>>2]^c[w>>2]}else{a[p>>0]=a[f>>0]^a[p>>0];a[ea>>0]=a[f+1>>0]^a[ea>>0];a[fa>>0]=a[f+2>>0]^a[fa>>0];a[ga>>0]=a[f+3>>0]^a[ga>>0];a[ha>>0]=a[f+4>>0]^a[ha>>0];a[ia>>0]=a[f+5>>0]^a[ia>>0];a[ja>>0]=a[f+6>>0]^a[ja>>0];a[ka>>0]=a[f+7>>0]^a[ka>>0];a[la>>0]=a[f+8>>0]^a[la>>0];a[ma>>0]=a[f+9>>0]^a[ma>>0];a[na>>0]=a[f+10>>0]^a[na>>0];a[oa>>0]=a[f+11>>0]^a[oa>>0];a[pa>>0]=a[f+12>>0]^a[pa>>0];a[qa>>0]=a[f+13>>0]^a[qa>>0];a[ra>>0]=a[f+14>>0]^a[ra>>0];a[k>>0]=a[f+15>>0]^a[k>>0]}j=pb[ta&63](y,p,p)|0;e=e>>>0>j>>>0?e:j;b=b+-16|0;if(b>>>0<=15)break;else f=f+16|0}f=g+h|0;g=d-h|0}else g=b;else{j=b>>>4;xb[g&1](y,p,sa,f,j,1);g=j<<4;j=f+g|0;g=b-g|0;if(!A){f=16;b=sa;do{a[b>>0]=0;b=b+1|0;f=f+-1|0}while((f|0)!=0&(b&7|0)!=0);if(f>>>0>=8)ua=22}else{f=16;b=sa;ua=22}if((ua|0)==22){ua=0;d=f+-8|0;h=d&-8;i=b+8|0;while(1){xa=b;c[xa>>2]=0;c[xa+4>>2]=0;f=f+-8|0;if(f>>>0<=7)break;else b=b+8|0}f=d-h|0;b=i+h|0}if(!f)f=j;else while(1){a[b>>0]=0;f=f+-1|0;if(!f){f=j;break}else b=b+1|0}}if(!g){g=0;break}else{b=g;g=0}}c[va>>2]=g;xa=(e|0)==0?0:e+16|0;l=wa;return xa|0}function _l(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(e>>>0<g>>>0){g=200;return g|0}h=a[b+184>>0]|0;if(!(h&1)){g=156;return g|0}if((h&2)==0|(a[b+56>>0]&4)!=0){g=156;return g|0}j=b+136|0;if(!((c[j>>2]|0)==0&(c[j+4>>2]|0)==0)){g=156;return g|0}h=b+128|0;j=h;i=c[j>>2]|0;j=c[j+4>>2]|0;if(j>>>0<0|(j|0)==0&i>>>0<g>>>0){g=139;return g|0}j=Xq(i|0,j|0,g|0,0)|0;c[h>>2]=j;c[h+4>>2]=D;h=Zl(b,f,g,0)|0;if(h|0)Te(h+20|0);g=dm(b,d,e,f,g)|0;return g|0}function $l(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;if(e>>>0<g>>>0){g=200;return g|0}h=a[b+184>>0]|0;if(!(h&1)){g=156;return g|0}if((h&2)==0|(a[b+56>>0]&4)!=0){g=156;return g|0}i=b+136|0;if(!((c[i>>2]|0)==0&(c[i+4>>2]|0)==0)){g=156;return g|0}i=b+128|0;h=i;j=c[h+4>>2]|0;if(0>j>>>0|(0==(j|0)?g>>>0>(c[h>>2]|0)>>>0:0)){j=139;return j|0}h=dm(b,d,e,f,g)|0;if(h|0){j=h;return j|0}j=i;j=Xq(c[j>>2]|0,c[j+4>>2]|0,g|0,0)|0;h=i;c[h>>2]=j;c[h+4>>2]=D;h=Zl(b,d,g,0)|0;if(!h){j=0;return j|0}Te(h+20|0);j=0;return j|0}function am(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=c[b+12>>2]|0;t=c[u+36>>2]|0;u=c[u+20>>2]|0;s=u<<1;if(e>>>0<g>>>0){v=200;return v|0}v=b+112|0;e=c[v>>2]|0;if(e>>>0>=g>>>0){h=b+64+u+(0-e)|0;if(!((f|d|h)&3))if(g>>>0>3){l=g+-4|0;m=l&-4;o=m+4|0;n=h+o|0;k=f;i=d;j=g;while(1){u=c[h>>2]^c[k>>2];c[h>>2]=u;c[i>>2]=u;j=j+-4|0;if(j>>>0<=3)break;else{k=k+4|0;h=h+4|0;i=i+4|0}}i=l-m|0;f=f+o|0;h=n;d=d+o|0}else i=g;else i=g;if(i){e=i;while(1){u=a[h>>0]^a[f>>0];a[h>>0]=u;a[d>>0]=u;e=e+-1|0;if(!e)break;else{f=f+1|0;h=h+1|0;d=d+1|0}}e=c[v>>2]|0}c[v>>2]=e-g;v=0;return v|0}if(e){g=g-e|0;i=b+64+u+(0-e)|0;if(e>>>0>3&((f|d|i)&3|0)==0){l=e+-4|0;m=l&-4;o=m+4|0;n=i+o|0;k=f;h=d;j=e;while(1){r=c[i>>2]^c[k>>2];c[i>>2]=r;c[h>>2]=r;j=j+-4|0;if(j>>>0<=3)break;else{k=k+4|0;i=i+4|0;h=h+4|0}}j=l-m|0;if(j){k=f+o|0;i=n;h=d+o|0;e=j;p=18}}else{k=f;h=d;p=18}if((p|0)==18){while(1){r=a[i>>0]^a[k>>0];a[i>>0]=r;a[h>>0]=r;e=e+-1|0;if(!e)break;else{k=k+1|0;i=i+1|0;h=h+1|0;p=18}}e=c[v>>2]|0}c[v>>2]=0;d=d+e|0;f=f+e|0}a:do if(g>>>0<s>>>0)e=0;else{e=c[b+20>>2]|0;if(e|0){s=(g>>>0)/(u>>>0)|0;qb[e&15](b+496|0,b+64|0,d,f,s);s=S(s,u)|0;e=0;d=d+s|0;f=f+s|0;g=g-s|0;break}q=b+496|0;r=b+64|0;n=r;l=u+-4|0;m=l&-4;o=m+4|0;p=r+o|0;m=l-m|0;if(u>>>0>3)e=0;else{l=(u|0)==0;e=0;while(1){p=pb[t&63](q,r,r)|0;e=p>>>0>e>>>0?p:e;if(!l){h=f;i=r;j=d;k=u;while(1){p=a[i>>0]^a[h>>0];a[i>>0]=p;a[j>>0]=p;k=k+-1|0;if(!k)break;else{h=h+1|0;i=i+1|0;j=j+1|0}}}d=d+u|0;f=f+u|0;g=g-u|0;if(g>>>0<s>>>0)break a}}do{l=pb[t&63](q,r,r)|0;e=l>>>0>e>>>0?l:e;if(!((f|n|d)&3)){h=f+o|0;i=f;j=r;k=d;l=u;while(1){w=c[j>>2]^c[i>>2];c[j>>2]=w;c[k>>2]=w;l=l+-4|0;if(l>>>0<=3)break;else{i=i+4|0;j=j+4|0;k=k+4|0}}j=p;k=d+o|0;i=m}else{h=f;j=r;k=d;i=u}if(i|0)while(1){w=a[j>>0]^a[h>>0];a[j>>0]=w;a[k>>0]=w;i=i+-1|0;if(!i)break;else{h=h+1|0;j=j+1|0;k=k+1|0}}d=d+u|0;f=f+u|0;g=g-u|0}while(g>>>0>=s>>>0)}while(0);if(g>>>0>=u>>>0){i=b+96|0;j=b+64|0;p=j;if(!((p|i)&3))if(u>>>0>3){m=u+-4|0;n=m&-4;o=n+4|0;k=j+o|0;l=j;h=u;while(1){c[i>>2]=c[l>>2];h=h+-4|0;if(h>>>0<=3)break;else{l=l+4|0;i=i+4|0}}h=m-n|0;i=b+96+o|0}else{h=u;k=j}else{k=j;h=u}if(h|0)while(1){a[i>>0]=a[k>>0]|0;h=h+-1|0;if(!h)break;else{k=k+1|0;i=i+1|0}}w=pb[t&63](b+496|0,j,j)|0;e=w>>>0>e>>>0?w:e;if(!((f|p|d)&3))if(u>>>0>3){l=u+-4|0;m=l&-4;o=m+4|0;n=j+o|0;k=f;h=d;i=u;while(1){w=c[j>>2]^c[k>>2];c[j>>2]=w;c[h>>2]=w;i=i+-4|0;if(i>>>0<=3)break;else{k=k+4|0;j=j+4|0;h=h+4|0}}h=l-m|0;k=f+o|0;j=n;i=d+o|0}else{h=u;k=f;i=d}else{k=f;i=d;h=u}if(h|0)while(1){w=a[j>>0]^a[k>>0];a[j>>0]=w;a[i>>0]=w;h=h+-1|0;if(!h)break;else{k=k+1|0;j=j+1|0;i=i+1|0}}d=d+u|0;f=f+u|0;g=g-u|0}if(g){j=b+96|0;h=b+64|0;p=h;if(!((p|j)&3))if(u>>>0>3){m=u+-4|0;n=m&-4;o=n+4|0;k=h+o|0;l=h;i=u;while(1){c[j>>2]=c[l>>2];i=i+-4|0;if(i>>>0<=3)break;else{l=l+4|0;j=j+4|0}}i=m-n|0;j=b+96+o|0}else{i=u;k=h}else{k=h;i=u}if(i|0)while(1){a[j>>0]=a[k>>0]|0;i=i+-1|0;if(!i)break;else{k=k+1|0;j=j+1|0}}w=pb[t&63](b+496|0,h,h)|0;e=w>>>0>e>>>0?w:e;c[v>>2]=u-g;if(!((f|p|d)&3))if(g>>>0>3){k=g+-4|0;l=k&-4;n=l+4|0;m=h+n|0;j=f;i=d;while(1){w=c[h>>2]^c[j>>2];c[h>>2]=w;c[i>>2]=w;g=g+-4|0;if(g>>>0<=3)break;else{j=j+4|0;h=h+4|0;i=i+4|0}}g=k-l|0;f=f+n|0;h=m;d=d+n|0}if(g)while(1){w=a[h>>0]^a[f>>0];a[h>>0]=w;a[d>>0]=w;g=g+-1|0;if(!g)break;else{f=f+1|0;h=h+1|0;d=d+1|0}}}if(!e){w=0;return w|0}Te(e+16|0);w=0;return w|0}function bm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=c[b+12>>2]|0;s=c[t+36>>2]|0;t=c[t+20>>2]|0;r=t<<1;if(e>>>0<g>>>0){u=200;return u|0}u=b+112|0;e=c[u>>2]|0;if(e>>>0>=g>>>0){h=b+64+t+(0-e)|0;if(!((f|d|h)&3))if(g>>>0>3){m=g+-4|0;n=m&-4;o=n+4|0;i=f;j=h;k=d;l=g;while(1){t=c[i>>2]|0;c[k>>2]=c[j>>2]^t;c[j>>2]=t;l=l+-4|0;if(l>>>0<=3)break;else{i=i+4|0;j=j+4|0;k=k+4|0}}i=m-n|0;f=f+o|0;h=h+o|0;d=d+o|0}else i=g;else i=g;if(i){e=i;while(1){t=a[f>>0]|0;a[d>>0]=t^a[h>>0];a[h>>0]=t;e=e+-1|0;if(!e)break;else{d=d+1|0;h=h+1|0;f=f+1|0}}e=c[u>>2]|0}c[u>>2]=e-g;u=0;return u|0}if(e){g=g-e|0;i=b+64+t+(0-e)|0;if(e>>>0>3&((f|d|i)&3|0)==0){m=e+-4|0;n=m&-4;o=n+4|0;h=f;j=i;k=d;l=e;while(1){q=c[h>>2]|0;c[k>>2]=c[j>>2]^q;c[j>>2]=q;l=l+-4|0;if(l>>>0<=3)break;else{h=h+4|0;j=j+4|0;k=k+4|0}}h=f+o|0;k=m-n|0;if(k){l=d+o|0;i=i+o|0;j=h;e=k;p=18}}else{l=d;j=f;h=f;p=18}if((p|0)==18){while(1){q=a[j>>0]|0;a[l>>0]=a[h>>0]^a[i>>0];a[i>>0]=q;e=e+-1|0;if(!e)break;else{l=l+1|0;i=i+1|0;j=j+1|0;h=h+1|0;p=18}}e=c[u>>2]|0}c[u>>2]=0;d=d+e|0;f=f+e|0}a:do if(g>>>0<r>>>0)e=0;else{e=c[b+24>>2]|0;if(e|0){r=(g>>>0)/(t>>>0)|0;qb[e&15](b+496|0,b+64|0,d,f,r);r=S(r,t)|0;e=0;d=d+r|0;f=f+r|0;g=g-r|0;break}p=b+496|0;q=b+64|0;n=q;k=t+-4|0;m=k&-4;l=m+4|0;o=q+l|0;m=k-m|0;if(t>>>0>3)e=0;else{l=(t|0)==0;e=0;while(1){o=pb[s&63](p,q,q)|0;e=o>>>0>e>>>0?o:e;if(!l){h=d;i=q;j=f;k=t;while(1){o=a[j>>0]|0;a[h>>0]=o^a[i>>0];a[i>>0]=o;k=k+-1|0;if(!k)break;else{h=h+1|0;i=i+1|0;j=j+1|0}}}d=d+t|0;f=f+t|0;g=g-t|0;if(g>>>0<r>>>0)break a}}do{k=pb[s&63](p,q,q)|0;e=k>>>0>e>>>0?k:e;if(!((f|n|d)&3)){h=f;i=q;j=d;k=t;while(1){v=c[h>>2]|0;c[j>>2]=c[i>>2]^v;c[i>>2]=v;k=k+-4|0;if(k>>>0<=3)break;else{h=h+4|0;i=i+4|0;j=j+4|0}}h=d+l|0;j=o;k=f+l|0;i=m}else{h=d;j=q;k=f;i=t}if(i|0)while(1){v=a[k>>0]|0;a[h>>0]=v^a[j>>0];a[j>>0]=v;i=i+-1|0;if(!i)break;else{h=h+1|0;j=j+1|0;k=k+1|0}}d=d+t|0;f=f+t|0;g=g-t|0}while(g>>>0>=r>>>0)}while(0);if(g>>>0>=t>>>0){i=b+96|0;k=b+64|0;p=k;if(!((p|i)&3))if(t>>>0>3){m=t+-4|0;n=m&-4;o=n+4|0;j=k+o|0;l=k;h=t;while(1){c[i>>2]=c[l>>2];h=h+-4|0;if(h>>>0<=3)break;else{l=l+4|0;i=i+4|0}}h=m-n|0;i=b+96+o|0}else{h=t;j=k}else{j=k;h=t}if(h|0)while(1){a[i>>0]=a[j>>0]|0;h=h+-1|0;if(!h)break;else{j=j+1|0;i=i+1|0}}v=pb[s&63](b+496|0,k,k)|0;e=v>>>0>e>>>0?v:e;if(!((f|p|d)&3))if(t>>>0>3){m=t+-4|0;n=m&-4;o=n+4|0;h=f;i=k;j=d;l=t;while(1){v=c[h>>2]|0;c[j>>2]=c[i>>2]^v;c[i>>2]=v;l=l+-4|0;if(l>>>0<=3)break;else{h=h+4|0;i=i+4|0;j=j+4|0}}i=m-n|0;j=f+o|0;k=k+o|0;h=d+o|0}else{i=t;j=f;h=d}else{h=d;j=f;i=t}if(i|0)while(1){v=a[j>>0]|0;a[h>>0]=v^a[k>>0];a[k>>0]=v;i=i+-1|0;if(!i)break;else{h=h+1|0;k=k+1|0;j=j+1|0}}d=d+t|0;f=f+t|0;g=g-t|0}if(g){j=b+96|0;h=b+64|0;p=h;if(!((p|j)&3))if(t>>>0>3){m=t+-4|0;n=m&-4;o=n+4|0;k=h+o|0;l=h;i=t;while(1){c[j>>2]=c[l>>2];i=i+-4|0;if(i>>>0<=3)break;else{l=l+4|0;j=j+4|0}}i=m-n|0;j=b+96+o|0}else{i=t;k=h}else{k=h;i=t}if(i|0)while(1){a[j>>0]=a[k>>0]|0;i=i+-1|0;if(!i)break;else{k=k+1|0;j=j+1|0}}v=pb[s&63](b+496|0,h,h)|0;e=v>>>0>e>>>0?v:e;c[u>>2]=t-g;if(!((f|p|d)&3))if(g>>>0>3){l=g+-4|0;m=l&-4;n=m+4|0;i=f;j=h;k=d;while(1){v=c[i>>2]|0;c[k>>2]=c[j>>2]^v;c[j>>2]=v;g=g+-4|0;if(g>>>0<=3)break;else{i=i+4|0;j=j+4|0;k=k+4|0}}g=l-m|0;f=f+n|0;h=h+n|0;d=d+n|0}if(g)while(1){v=a[f>>0]|0;a[d>>0]=v^a[h>>0];a[h>>0]=v;g=g+-1|0;if(!g)break;else{d=d+1|0;h=h+1|0;f=f+1|0}}}if(!e){v=0;return v|0}Te(e+16|0);v=0;return v|0}function cm(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=q;e=c[b+12>>2]|0;j=c[e+20>>2]|0;if(j>>>0>16)He(46529,113,46543);Yq(f|0,0,j|0)|0;p=pb[c[e+36>>2]&63](b+496|0,f,f)|0;g=j+-1|0;k=(j|0)==16?135:27;n=f+g|0;h=b+128|0;if((g|0)>-1){e=g;b=0;while(1){r=f+e|0;s=a[r>>0]|0;i=b;b=(s&255)>>>7;i=((s&255)<<1|i&255)&255;a[r>>0]=i;a[h+1+e>>0]=i;if((e|0)<=0)break;else e=e+-1|0}e=(d[n>>0]|0)^(b<<24>>24?k:0);b=e&255;a[h+1+g>>0]=b;b=(b&255)>>>7;e=e<<1&255;a[n>>0]=e;i=h+17+g|0;a[i>>0]=e;if((g|0)>0){e=j+-2|0;while(1){r=f+e|0;j=a[r>>0]|0;s=b;b=(j&255)>>>7;s=((j&255)<<1|s&255)&255;a[r>>0]=s;a[h+17+e>>0]=s;if((e|0)<=0)break;else e=e+-1|0}e=a[n>>0]|0}s=(e&255^(b<<24>>24?k:0))&255;a[n>>0]=s;a[i>>0]=s}else{s=a[n>>0]|0;a[h+1+g>>0]=s;a[h+17+g>>0]=s}if(f&4){e=16;do{a[f>>0]=0;f=f+1|0;e=e+-1|0}while((e|0)!=0&(f&7|0)!=0);if(e>>>0>=8)o=11}else{e=16;o=11}if((o|0)==11){g=e+-8|0;h=g&-8;b=f;while(1){s=b;c[s>>2]=0;c[s+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else b=b+8|0}e=g-h|0;f=f+(h+8)|0}if(e|0)while(1){a[f>>0]=0;e=e+-1|0;if(!e)break;else f=f+1|0}if(!p){l=q;return 0}Te(p+16|0);l=q;return 0}function dm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=A;w=c[b+12>>2]|0;y=c[w+36>>2]|0;w=c[w+20>>2]|0;if(e>>>0<g>>>0){z=200;l=A;return z|0}x=b+112|0;e=c[x>>2]|0;if(e){if(w>>>0<=e>>>0)Ie(46565,46587,53,46600);s=e>>>0>g>>>0?g:e;j=w-e+(b+96)|0;if(!((f|d|j)&3))if(s>>>0>3){o=s+-4|0;p=o&-4;r=p+4|0;q=j+r|0;i=f;k=d;n=s;while(1){c[k>>2]=c[j>>2]^c[i>>2];n=n+-4|0;if(n>>>0<=3)break;else{j=j+4|0;i=i+4|0;k=k+4|0}}n=o-p|0;j=q;k=f+r|0;i=d+r|0}else{n=s;k=f;i=d}else{k=f;i=d;n=s}if(n){e=n;while(1){a[i>>0]=a[j>>0]^a[k>>0];e=e+-1|0;if(!e)break;else{j=j+1|0;k=k+1|0;i=i+1|0}}e=c[x>>2]|0}c[x>>2]=e-s;d=d+s|0;f=f+s|0;g=g-s|0}e=(g>>>0)/(w>>>0)|0;if(w>>>0<=g>>>0?(t=c[b+36>>2]|0,u=S(e,w)|0,(t|0)!=0):0){qb[t&15](b+496|0,b+80|0,d,f,e);d=d+u|0;f=f+u|0;g=g-u|0}if(!g){z=0;l=A;return z|0}s=b+496|0;t=b+80|0;u=h;v=0;while(1){e=pb[y&63](s,h,t)|0;v=e>>>0>v>>>0?e:v;e=w;do{if((e|0)<=0)break;e=e+-1|0;q=t+e|0;r=(a[q>>0]|0)+1<<24>>24;a[q>>0]=r}while(!(r<<24>>24));r=w>>>0<g>>>0?w:g;if(!((f|u|d)&3))if(r>>>0>3){o=r+-4|0;p=o&-4;q=p+4|0;i=h+q|0;e=h;j=f;k=d;n=r;while(1){c[k>>2]=c[e>>2]^c[j>>2];n=n+-4|0;if(n>>>0<=3)break;else{e=e+4|0;j=j+4|0;k=k+4|0}}e=o-p|0;k=f+q|0;j=d+q|0}else{e=r;i=h;k=f;j=d}else{i=h;k=f;j=d;e=r}if(e|0)while(1){a[j>>0]=a[i>>0]^a[k>>0];e=e+-1|0;if(!e)break;else{i=i+1|0;k=k+1|0;j=j+1|0}}g=g-r|0;if(!g)break;else{d=d+r|0;f=f+r|0}}e=w-r|0;c[x>>2]=e;do if(e|0){g=b+96+r|0;d=h+r|0;if(e>>>0>3&((d|g)&3|0)==0){i=e+-4|0;j=i&-4;n=j+4|0;k=d+n|0;f=g;while(1){c[f>>2]=c[d>>2];e=e+-4|0;if(e>>>0<=3)break;else{d=d+4|0;f=f+4|0}}e=i-j|0;if(!e)break;else{d=k;g=g+n|0}}while(1){a[g>>0]=a[d>>0]|0;e=e+-1|0;if(!e)break;else{d=d+1|0;g=g+1|0}}}while(0);if(u&7){e=16;do{a[h>>0]=0;h=h+1|0;e=e+-1|0}while((e|0)!=0&(h&7|0)!=0);if(e>>>0>=8)z=41}else{e=16;z=41}if((z|0)==41){d=e+-8|0;f=d&-8;i=f+8|0;g=h;while(1){z=g;c[z>>2]=0;c[z+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else g=g+8|0}e=d-f|0;h=h+i|0}if(e|0)while(1){a[h>>0]=0;e=e+-1|0;if(!e)break;else h=h+1|0}if(!v){z=0;l=A;return z|0}Te(v+16|0);z=0;l=A;return z|0}function em(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;if((c[(c[b+12>>2]|0)+20>>2]|0)!=16){g=12;return g|0}if(e>>>0<g>>>0){g=200;return g|0}m=b+128|0;l=b+196|0;h=a[l>>0]|0;if(h&4){g=139;return g|0}i=a[b+56>>0]|0;if((i&4|h&1)<<24>>24){g=156;return g|0}if(!(i&2)){fm(b,71779,16)|0;h=a[l>>0]|0}if(h&8){g=156;return g|0}if(!(h&2)){gm(b,m,0,0,1);h=a[l>>0]|2;a[l>>0]=h}j=b+172|0;k=(c[j>>2]|0)+g|0;c[j>>2]=k;j=b+176|0;i=c[j>>2]|0;if(k>>>0<g>>>0){i=i+1|0;c[j>>2]=i}if(i>>>0<=15?(i|0)!=15|k>>>0<4294967265:0){h=dm(b,d,e,f,g)|0;if(h|0){g=h;return g|0}gm(b,m,d,g,0);g=0;return g|0}a[l>>0]=h|4;g=139;return g|0}function fm(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,n=0,o=0,p=0;n=l;l=l+32|0;if((l|0)>=(m|0))$(32);i=n;g=n+8|0;k=b+56|0;a[k>>0]=a[k>>0]&-7;h=b+196|0;a[h>>0]=a[h>>0]&-9;o=(gg()|0)==0;f=a[h>>0]|0;if(!o){f=f|8;a[h>>0]=f}p=b+128|0;o=b+164|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;a[h>>0]=f&-8;switch(e|0){case 12:{f=b+80|0;e=f;g=d;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));a[b+94>>0]=0;a[b+93>>0]=0;g=b+92|0;a[g>>0]=0;a[b+95>>0]=1;break}case 0:{p=139;l=n;return p|0}default:{f=i;c[f>>2]=0;c[f+4>>2]=0;f=b+80|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[i>>2]=e;gm(b,f,d,e,1);c[g+12>>2]=er(e<<3|0)|0;c[g+8>>2]=er(e>>>29|0)|0;c[g+4>>2]=0;c[g>>2]=0;gm(b,f,g,16,1);p=i;c[p>>2]=0;c[p+4>>2]=0;if(g&4){h=16;do{a[g>>0]=0;g=g+1|0;h=h+-1|0}while((h|0)!=0&(g&7|0)!=0);if(h>>>0>=8)j=7}else{h=16;j=7}if((j|0)==7){i=h+-8|0;d=i&-8;e=g;while(1){p=e;c[p>>2]=0;c[p+4>>2]=0;h=h+-8|0;if(h>>>0<=7)break;else e=e+8|0}h=i-d|0;g=g+(d+8)|0}if(h|0)while(1){a[g>>0]=0;h=h+-1|0;if(!h)break;else g=g+1|0}g=b+92|0}}pb[c[(c[b+12>>2]|0)+36>>2]&63](b+496|0,b+180|0,f)|0;c[g>>2]=er((er(c[g>>2]|0)|0)+1|0)|0;c[b+112>>2]=0;a[k>>0]=a[k>>0]&-7|2;p=0;l=n;return p|0}function gm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=b+160|0;h=c[v>>2]|0;w=c[b+224>>2]|0;if(!f)if((g|0)!=0&(h|0)!=0)f=0;else return;s=b+144|0;a:do if(!g){g=0;p=h;b:while(1){if((p|0)!=0|(f+p|0)>>>0<16){q=16-p|0;q=q>>>0<f>>>0?q:f;i=b+144+p|0;if(!((e|i)&3))if(q>>>0>3){m=q+-4|0;n=m&-4;o=n+4|0;j=e+o|0;h=e;k=i;l=q;while(1){c[k>>2]=c[h>>2];l=l+-4|0;if(l>>>0<=3)break;else{h=h+4|0;k=k+4|0}}h=m-n|0;i=i+o|0}else{h=q;j=e}else{j=e;h=q}if(h|0)while(1){a[i>>0]=a[j>>0]|0;h=h+-1|0;if(!h)break;else{j=j+1|0;i=i+1|0}}j=e+q|0;i=f-q|0;f=q+p|0}else{j=e;i=f;f=0}if(!i){t=g;u=f;break a}switch(f|0){case 0:break;case 16:{g=wb[w&3](b,d,s,1)|0;break}default:break b}e=i>>>4;h=e<<4;if(!e){e=j;f=i;p=0;continue}f=i-h|0;g=wb[w&3](b,d,j,e)|0;if(!f){t=g;u=0;break a}else{e=j+h|0;p=0}}Ie(46625,46645,499,46658)}else{q=0;o=h;c:while(1){if((o|0)!=0|(f+o|0)>>>0<16){p=16-o|0;p=p>>>0<f>>>0?p:f;h=b+144+o|0;if(!((e|h)&3))if(p>>>0>3){l=p+-4|0;m=l&-4;n=m+4|0;i=e+n|0;g=e;j=h;k=p;while(1){c[j>>2]=c[g>>2];k=k+-4|0;if(k>>>0<=3)break;else{g=g+4|0;j=j+4|0}}g=l-m|0;h=h+n|0}else{g=p;i=e}else{i=e;g=p}if(g|0)while(1){a[h>>0]=a[i>>0]|0;g=g+-1|0;if(!g)break;else{i=i+1|0;h=h+1|0}}i=e+p|0;f=f-p|0;g=p+o|0}else{i=e;g=0}if((f|0)==0&g>>>0<16){Yq(b+144+g|0,0,16-g|0)|0;r=33}else switch(g|0){case 0:{g=q;break}case 16:{r=33;break}default:break c}if((r|0)==33){r=0;g=wb[w&3](b,d,s,1)|0}e=f>>>4;h=e<<4;if(!e)e=i;else{g=wb[w&3](b,d,i,e)|0;e=i+h|0;f=f-h|0}if(!f){t=g;u=0;break a}else{q=g;o=0}}Ie(46625,46645,499,46658)}while(0);c[v>>2]=u;if(!t)return;Te(t);return}function hm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;if((c[(c[b+12>>2]|0)+20>>2]|0)!=16){g=12;return g|0}if(e>>>0<g>>>0){g=200;return g|0}l=b+128|0;m=b+196|0;h=a[m>>0]|0;if(h&4){g=139;return g|0}i=a[b+56>>0]|0;if((i&4|h&1)<<24>>24){g=156;return g|0}if(!(i&2)){fm(b,71795,16)|0;h=a[m>>0]|0}if(!(h&2)){gm(b,l,0,0,1);h=a[m>>0]|2;a[m>>0]=h}j=b+172|0;k=(c[j>>2]|0)+g|0;c[j>>2]=k;j=b+176|0;i=c[j>>2]|0;if(k>>>0<g>>>0){i=i+1|0;c[j>>2]=i}if(i>>>0<=15?(i|0)!=15|k>>>0<4294967265:0){gm(b,l,f,g,0);g=dm(b,d,e,f,g)|0;return g|0}a[m>>0]=h|4;g=139;return g|0}function im(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;r=a+208|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;pb[c[(c[a+12>>2]|0)+36>>2]&63](a+496|0,r,r)|0;c[a+224>>2]=2;l=a+228|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;l=d[r+3>>0]|0;s=(d[r+1>>0]|0)<<16|(d[r>>0]|0)<<24|(d[r+2>>0]|0)<<8|l;e=a+356|0;c[e>>2]=s;j=d[r+7>>0]|0;r=(d[r+5>>0]|0)<<16|(d[r+4>>0]|0)<<24|(d[r+6>>0]|0)<<8|j;f=a+360|0;c[f>>2]=r;p=d[a+219>>0]|0;q=(d[a+217>>0]|0)<<16|(d[a+216>>0]|0)<<24|(d[a+218>>0]|0)<<8|p;g=a+364|0;c[g>>2]=q;n=d[a+223>>0]|0;t=(d[a+221>>0]|0)<<16|(d[a+220>>0]|0)<<24|(d[a+222>>0]|0)<<8|n;h=a+368|0;c[h>>2]=t;i=a+304|0;t=t>>>1;p=t|p<<31;c[i>>2]=p;q=q>>>1;j=q|j<<31;c[a+300>>2]=j;r=r>>>1;l=r|l<<31;c[a+296>>2]=l;s=s>>>1;n=(n&1|0?-520093696:0)^s;c[a+292>>2]=n;x=p>>>1;q=x|q<<31;c[a+272>>2]=q;u=j>>>1;r=u|r<<31;c[a+268>>2]=r;v=l>>>1;s=v|s<<31;c[a+264>>2]=s;w=n>>>1;t=(t&1|0?-520093696:0)^w;c[a+260>>2]=t;u=q>>>1|u<<31;c[a+256>>2]=u;v=r>>>1|v<<31;c[a+252>>2]=v;w=w<<31|s>>>1;c[a+248>>2]=w;x=(x&1|0?-520093696:0)^t>>>1;c[a+244>>2]=x;o=x^t;c[a+276>>2]=o;m=w^s;c[a+280>>2]=m;k=v^r;c[a+284>>2]=k;b=u^q;c[a+288>>2]=b;c[a+308>>2]=x^n;c[a+312>>2]=w^l;c[a+316>>2]=v^j;c[a+320>>2]=u^p;c[a+324>>2]=t^n;c[a+328>>2]=s^l;c[a+332>>2]=r^j;c[a+336>>2]=q^p;c[a+340>>2]=o^n;c[a+344>>2]=m^l;c[a+348>>2]=k^j;c[a+352>>2]=c[i>>2]^b;b=1;do{w=b<<2;x=w+32|0;c[a+228+(x<<2)>>2]=c[a+228+(w<<2)>>2]^c[e>>2];c[a+228+((x|1)<<2)>>2]=c[a+228+((w|1)<<2)>>2]^c[f>>2];c[a+228+((x|2)<<2)>>2]=c[a+228+((w|2)<<2)>>2]^c[g>>2];c[a+228+((x|3)<<2)>>2]=c[a+228+((w|3)<<2)>>2]^c[h>>2];b=b+1|0}while((b|0)!=8);return}function jm(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,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,ba=0;Z=l;l=l+16|0;if((l|0)>=(m|0))$(16);U=Z;if(!h){Y=0;X=(Y|0)!=0;X=X?20:0;Y=X+Y|0;l=Z;return Y|0}V=f;W=f+4|0;X=U+4|0;Y=f+8|0;t=U+8|0;u=f+12|0;v=U+12|0;w=f+1|0;x=f+2|0;y=f+3|0;z=f+5|0;A=f+6|0;B=f+7|0;C=f+9|0;D=f+10|0;E=f+11|0;F=f+13|0;G=f+14|0;H=f+15|0;I=U+1|0;J=U+2|0;K=U+3|0;L=U+5|0;M=U+6|0;N=U+7|0;O=U+9|0;P=U+10|0;Q=U+11|0;R=U+13|0;S=U+14|0;T=U+15|0;while(1){if(!((g|V)&3)){c[U>>2]=c[g>>2]^c[f>>2];c[X>>2]=c[g+4>>2]^c[W>>2];c[t>>2]=c[g+8>>2]^c[Y>>2];j=c[g+12>>2]^c[u>>2];c[v>>2]=j;i=j>>>24&255;j=j>>>16&255}else{a[U>>0]=a[g>>0]^a[f>>0];a[I>>0]=a[g+1>>0]^a[w>>0];a[J>>0]=a[g+2>>0]^a[x>>0];a[K>>0]=a[g+3>>0]^a[y>>0];a[X>>0]=a[g+4>>0]^a[W>>0];a[L>>0]=a[g+5>>0]^a[z>>0];a[M>>0]=a[g+6>>0]^a[A>>0];a[N>>0]=a[g+7>>0]^a[B>>0];a[t>>0]=a[g+8>>0]^a[Y>>0];a[O>>0]=a[g+9>>0]^a[C>>0];a[P>>0]=a[g+10>>0]^a[D>>0];a[Q>>0]=a[g+11>>0]^a[E>>0];a[v>>0]=a[g+12>>0]^a[u>>0];a[R>>0]=a[g+13>>0]^a[F>>0];j=a[g+14>>0]^a[G>>0];a[S>>0]=j;i=a[g+15>>0]^a[H>>0];a[T>>0]=i}i=i&255;n=b+228+((i<<2&60)<<2)|0;i=b+228+(i>>>4<<2<<2)|0;r=c[n>>2]|0;k=c[n+12>>2]|0;q=c[n+4>>2]|0;n=c[n+8>>2]|0;s=14;j=j&255;o=c[i>>2]^r>>>4^(e[17762+((k<<4&240)<<1)>>1]|0)<<16;p=(n>>>4|q<<28)^c[i+8>>2];k=(n<<28|k>>>4)^c[i+12>>2];i=(q>>>4|r<<28)^c[i+4>>2];while(1){ba=b+228+((j<<2&60)<<2)|0;aa=b+228+(j>>>4<<2<<2)|0;r=c[ba>>2]|0;_=c[ba+12>>2]|0;j=c[aa>>2]^o>>>8^(e[17762+((k&255)<<1)>>1]|0)<<16^r>>>4;q=(e[17762+((_<<4&240)<<1)>>1]|0)<<16^j;n=c[ba+4>>2]|0;r=c[aa+4>>2]^(i>>>8|o<<24)^(n>>>4|r<<28);o=c[ba+8>>2]|0;n=c[aa+8>>2]^(p>>>8|i<<24)^(o>>>4|n<<28);i=c[aa+12>>2]^(k>>>8|p<<24)^(o<<28|_>>>4);if(!s)break;j=s+-1|0;s=j;j=d[U+j>>0]|0;o=q;p=n;k=i;i=r}a[f>>0]=q>>>24;a[w>>0]=q>>>16;a[x>>0]=j>>>8;a[y>>0]=j;a[W>>0]=r>>>24;a[z>>0]=r>>>16;a[A>>0]=r>>>8;a[B>>0]=r;a[Y>>0]=n>>>24;a[C>>0]=n>>>16;a[D>>0]=n>>>8;a[E>>0]=n;a[u>>0]=i>>>24;a[F>>0]=i>>>16;a[G>>0]=i>>>8;a[H>>0]=i;h=h+-1|0;if(!h){g=76;break}else g=g+16|0}ba=(g|0)!=0;ba=ba?20:0;ba=ba+g|0;l=Z;return ba|0}function km(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((e|0)==0&0==0)g=($q(f|0)|0)+32|0;else g=$q(e|0)|0;e=b+160|0;if((g|0)<16){b=e+(g<<4)|0;return b|0}f=e+240|0;do if((f|0)!=(d|0))if(!((f|d)&3)){c[d>>2]=c[f>>2];c[d+4>>2]=c[e+244>>2];c[d+8>>2]=c[e+248>>2];c[d+12>>2]=c[e+252>>2];break}else{a[d>>0]=a[f>>0]|0;a[d+1>>0]=a[f+1>>0]|0;a[d+2>>0]=a[f+2>>0]|0;a[d+3>>0]=a[f+3>>0]|0;a[d+4>>0]=a[e+244>>0]|0;a[d+5>>0]=a[f+5>>0]|0;a[d+6>>0]=a[f+6>>0]|0;a[d+7>>0]=a[f+7>>0]|0;a[d+8>>0]=a[e+248>>0]|0;a[d+9>>0]=a[f+9>>0]|0;a[d+10>>0]=a[f+10>>0]|0;a[d+11>>0]=a[f+11>>0]|0;a[d+12>>0]=a[e+252>>0]|0;a[d+13>>0]=a[f+13>>0]|0;a[d+14>>0]=a[f+14>>0]|0;a[d+15>>0]=a[f+15>>0]|0;break}while(0);lm(d);e=g+-16|0;if(!e){b=d;return b|0}do{lm(d);e=e+-1|0}while((e|0)!=0);return d|0}function lm(b){b=b|0;var c=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;B=mr(d[b>>0]|0|0,0,56)|0;e=D;R=b+1|0;U=mr(d[R>>0]|0|0,0,48)|0;U=U|B;T=D|e;O=b+2|0;Q=mr(d[O>>0]|0|0,0,40)|0;Q=U|Q;S=T|D;L=b+3|0;P=S|(d[L>>0]|0);I=b+4|0;N=mr(d[I>>0]|0|0,0,24)|0;N=Q|N;M=P|D;G=b+5|0;K=mr(d[G>>0]|0|0,0,16)|0;K=N|K;J=M|D;C=b+6|0;H=mr(d[C>>0]|0|0,0,8)|0;H=K|H;E=J|D;z=b+7|0;F=H|(d[z>>0]|0);w=b+8|0;A=d[w>>0]|0;y=mr(A|0,0,56)|0;x=D;u=b+9|0;r=mr(d[u>>0]|0|0,0,48)|0;y=r|y;x=D|x;r=b+10|0;t=mr(d[r>>0]|0|0,0,40)|0;t=y|t;v=x|D;o=b+11|0;s=v|(d[o>>0]|0);l=b+12|0;q=mr(d[l>>0]|0|0,0,24)|0;q=t|q;p=s|D;j=b+13|0;n=mr(d[j>>0]|0|0,0,16)|0;n=q|n;m=p|D;g=b+14|0;k=mr(d[g>>0]|0|0,0,8)|0;k=n|k;h=m|D;c=b+15|0;i=k|(d[c>>0]|0);e=fr(B|0,e|0,63)|0;B=mr(F|0,E|0,1)|0;f=D;A=gr(A|0,0,7)|0;f=mr(i|0,h|0,1)|0;T=gr(U|0,T|0,55)|0;a[b>>0]=T;b=gr(Q|0,S|0,47)|0;a[R>>0]=b;b=gr(Q|0,P|0,39)|0;a[O>>0]=b;b=gr(N|0,M|0,31)|0;a[L>>0]=b;b=gr(K|0,J|0,23)|0;a[I>>0]=b;b=gr(H|0,E|0,15)|0;a[G>>0]=b;b=gr(F|0,E|0,7)|0;a[C>>0]=b;a[z>>0]=B|A;b=gr(y|0,x|0,55)|0;a[w>>0]=b;b=gr(t|0,v|0,47)|0;a[u>>0]=b;b=gr(t|0,s|0,39)|0;a[r>>0]=b;b=gr(q|0,p|0,31)|0;a[o>>0]=b;b=gr(n|0,m|0,23)|0;a[l>>0]=b;b=gr(k|0,h|0,15)|0;a[j>>0]=b;b=gr(i|0,h|0,7)|0;a[g>>0]=b;a[c>>0]=f^e&135;return}function mm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+48|0;if((l|0)>=(m|0))$(48);g=z+24|0;h=z;w=b+56|0;if(!(a[w>>0]&1)){y=156;l=z;return y|0}x=b+128|0;s=b+480|0;switch(a[s>>0]|0){case 16:case 12:case 8:break;default:{y=59;l=z;return y|0}}u=b+12|0;i=c[u>>2]|0;if((c[i+20>>2]|0)!=16){y=12;l=z;return y|0}if(!e){y=45;l=z;return y|0}if((f&-8|0)!=8){y=139;l=z;return y|0};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;v=b+496|0;t=pb[c[i+36>>2]&63](v,x,g)|0;i=b+144|0;j=i;if(!((x|j)&3)){c[i>>2]=c[x>>2];c[b+148>>2]=c[x+4>>2];c[b+152>>2]=c[b+136>>2];c[b+156>>2]=c[b+140>>2]}else{a[i>>0]=a[x>>0]|0;a[b+145>>0]=a[x+1>>0]|0;a[b+146>>0]=a[x+2>>0]|0;a[b+147>>0]=a[x+3>>0]|0;a[b+148>>0]=a[x+4>>0]|0;a[b+149>>0]=a[x+5>>0]|0;a[b+150>>0]=a[x+6>>0]|0;a[b+151>>0]=a[x+7>>0]|0;a[b+152>>0]=a[b+136>>0]|0;a[b+153>>0]=a[b+137>>0]|0;a[b+154>>0]=a[b+138>>0]|0;a[b+155>>0]=a[b+139>>0]|0;a[b+156>>0]=a[b+140>>0]|0;a[b+157>>0]=a[b+141>>0]|0;a[b+158>>0]=a[b+142>>0]|0;a[b+159>>0]=a[b+143>>0]|0}lm(i);o=b+160|0;if(!((j|o)&3)){c[o>>2]=c[i>>2];c[o+4>>2]=c[b+148>>2];c[o+8>>2]=c[b+152>>2];c[o+12>>2]=c[b+156>>2]}else{a[o>>0]=a[i>>0]|0;a[o+1>>0]=a[b+145>>0]|0;a[o+2>>0]=a[b+146>>0]|0;a[o+3>>0]=a[b+147>>0]|0;a[o+4>>0]=a[b+148>>0]|0;a[o+5>>0]=a[b+149>>0]|0;a[o+6>>0]=a[b+150>>0]|0;a[o+7>>0]=a[b+151>>0]|0;a[o+8>>0]=a[b+152>>0]|0;a[o+9>>0]=a[b+153>>0]|0;a[o+10>>0]=a[b+154>>0]|0;a[o+11>>0]=a[b+155>>0]|0;a[o+12>>0]=a[b+156>>0]|0;a[o+13>>0]=a[b+157>>0]|0;a[o+14>>0]=a[b+158>>0]|0;a[o+15>>0]=a[b+159>>0]|0}lm(o);i=1;do{j=o+(i<<4)|0;k=i+-1|0;n=o+(k<<4)|0;if(!((n|j)&3)){c[j>>2]=c[n>>2];c[o+(i<<4)+4>>2]=c[o+(k<<4)+4>>2];c[o+(i<<4)+8>>2]=c[o+(k<<4)+8>>2];c[o+(i<<4)+12>>2]=c[o+(k<<4)+12>>2]}else{a[j>>0]=a[n>>0]|0;a[o+(i<<4)+1>>0]=a[o+(k<<4)+1>>0]|0;a[o+(i<<4)+2>>0]=a[o+(k<<4)+2>>0]|0;a[o+(i<<4)+3>>0]=a[o+(k<<4)+3>>0]|0;a[o+(i<<4)+4>>0]=a[o+(k<<4)+4>>0]|0;a[o+(i<<4)+5>>0]=a[o+(k<<4)+5>>0]|0;a[o+(i<<4)+6>>0]=a[o+(k<<4)+6>>0]|0;a[o+(i<<4)+7>>0]=a[o+(k<<4)+7>>0]|0;a[o+(i<<4)+8>>0]=a[o+(k<<4)+8>>0]|0;a[o+(i<<4)+9>>0]=a[o+(k<<4)+9>>0]|0;a[o+(i<<4)+10>>0]=a[o+(k<<4)+10>>0]|0;a[o+(i<<4)+11>>0]=a[o+(k<<4)+11>>0]|0;a[o+(i<<4)+12>>0]=a[o+(k<<4)+12>>0]|0;a[o+(i<<4)+13>>0]=a[o+(k<<4)+13>>0]|0;a[o+(i<<4)+14>>0]=a[o+(k<<4)+14>>0]|0;a[o+(i<<4)+15>>0]=a[o+(k<<4)+15>>0]|0}lm(j);i=i+1|0}while((i|0)!=16);r=16-f|0;Yq(g|0,0,r|0)|0;j=g+r|0;if(!((j|e)&3))if(f>>>0>3){n=f+-4|0;o=n&-4;q=o+4|0;p=e+q|0;k=j;i=f;while(1){c[k>>2]=c[e>>2];i=i+-4|0;if(i>>>0<=3)break;else{e=e+4|0;k=k+4|0}}i=n-o|0;e=p;j=j+q|0}else i=f;else i=f;if(i|0)while(1){a[j>>0]=a[e>>0]|0;i=i+-1|0;if(!i)break;else{e=e+1|0;j=j+1|0}}a[g>>0]=d[s>>0]<<4;p=g+(r+-1)|0;a[p>>0]=d[p>>0]|1;p=g+15|0;k=d[p>>0]|0;a[p>>0]=k&192;p=pb[c[(c[u>>2]|0)+36>>2]&63](v,g,g)|0;p=p>>>0>t>>>0?p:t;o=h;n=g;i=c[g>>2]|0;c[h>>2]=i;c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];j=h+16|0;e=g+1|0;if(!(e&3)){c[j>>2]=c[e>>2]^c[g>>2];c[h+20>>2]=c[g+5>>2]^c[g+4>>2]}else{v=a[e>>0]|0;a[j>>0]=v^i&255;u=a[g+2>>0]|0;a[h+17>>0]=u^v;v=a[g+3>>0]|0;a[h+18>>0]=v^u;u=a[g+4>>0]|0;a[h+19>>0]=u^v;v=a[g+5>>0]|0;a[h+20>>0]=v^u;u=a[g+6>>0]|0;a[h+21>>0]=u^v;v=a[g+7>>0]|0;a[h+22>>0]=v^u;a[h+23>>0]=a[g+8>>0]^v}j=b+64|0;e=h+(k>>>3&7)|0;i=k&7;if(!i){a[j>>0]=a[e>>0]|0;a[j+1>>0]=a[e+1>>0]|0;a[j+2>>0]=a[e+2>>0]|0;a[j+3>>0]=a[e+3>>0]|0;a[j+4>>0]=a[e+4>>0]|0;a[j+5>>0]=a[e+5>>0]|0;a[j+6>>0]=a[e+6>>0]|0;a[j+7>>0]=a[e+7>>0]|0;a[b+72>>0]=a[e+8>>0]|0;a[b+73>>0]=a[e+9>>0]|0;a[b+74>>0]=a[e+10>>0]|0;a[b+75>>0]=a[e+11>>0]|0;a[b+76>>0]=a[e+12>>0]|0;a[b+77>>0]=a[e+13>>0]|0;a[b+78>>0]=a[e+14>>0]|0;a[b+79>>0]=a[e+15>>0]|0}else{u=8-i|0;v=a[e+1>>0]|0;a[j>>0]=(v&255)>>>u|d[e>>0]<<i;t=a[e+2>>0]|0;a[j+1>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+3>>0]|0;a[j+2>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+4>>0]|0;a[j+3>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+5>>0]|0;a[j+4>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+6>>0]|0;a[j+5>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+7>>0]|0;a[j+6>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+8>>0]|0;a[j+7>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+9>>0]|0;a[b+72>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+10>>0]|0;a[b+73>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+11>>0]|0;a[b+74>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+12>>0]|0;a[b+75>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+13>>0]|0;a[b+76>>0]=(v&255)>>>u|(t&255)<<i;t=a[e+14>>0]|0;a[b+77>>0]=(t&255)>>>u|(v&255)<<i;v=a[e+15>>0]|0;a[b+78>>0]=(v&255)>>>u|(t&255)<<i;a[b+79>>0]=(d[e+16>>0]|0)>>>u|(v&255)<<i}i=b+432|0;j=a[w>>0]&-15|2;e=b+80|0;k=e+36|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(k|0));c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;c[i+24>>2]=0;c[i+28>>2]=0;a[w>>0]=j;w=b+464|0;x=x+353|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;a[x>>0]=a[x>>0]&-4;if(n&4){i=16;do{a[g>>0]=0;g=g+1|0;i=i+-1|0}while((i|0)!=0&(g&7|0)!=0);if(i>>>0>=8)y=34}else{i=16;y=34}if((y|0)==34){e=i+-8|0;k=e&-8;n=k+8|0;j=g;while(1){x=j;c[x>>2]=0;c[x+4>>2]=0;i=i+-8|0;if(i>>>0<=7)break;else j=j+8|0}i=e-k|0;g=g+n|0}if(i|0)while(1){a[g>>0]=0;i=i+-1|0;if(!i)break;else g=g+1|0}if(o&4){g=24;do{a[h>>0]=0;h=h+1|0;g=g+-1|0}while((g|0)!=0&(h&7|0)!=0);if(g>>>0>=8)y=42}else{g=24;y=42}if((y|0)==42){j=g+-8|0;e=j&-8;k=e+8|0;i=h;while(1){y=i;c[y>>2]=0;c[y+4>>2]=0;g=g+-8|0;if(g>>>0<=7)break;else i=i+8|0}g=j-e|0;h=h+k|0}if(g|0)while(1){a[h>>0]=0;g=g+-1|0;if(!g)break;else h=h+1|0}if(!p){y=0;l=z;return y|0}Te(p+16|0);y=0;l=z;return y|0}function nm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return om(a,1,b,c,d,e)|0}function om(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,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,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0;Da=l;l=l+32|0;if((l|0)>=(m|0))$(32);za=Da+16|0;j=Da;va=h>>>4;Aa=b+56|0;i=a[Aa>>0]|0;if(!(i&2)){Ca=156;l=Da;return Ca|0}xa=b+128|0;Ba=xa+353|0;if(a[Ba>>0]&1){Ca=156;l=Da;return Ca|0}Ca=b+12|0;k=c[Ca>>2]|0;if((c[k+20>>2]|0)!=16){Ca=12;l=Da;return Ca|0}if(f>>>0<h>>>0){Ca=200;l=Da;return Ca|0}if(!((h&15|0)==0|(i&8)!=0)){Ca=139;l=Da;return Ca|0}do if(va){i=c[b+40>>2]|0;wa=va<<4;if(i|0){qb[i&15](b,e,g,va,d);i=0;h=h-wa|0;g=g+wa|0;e=e+wa|0;break}ua=(d|0)!=0;p=c[(ua?k+36|0:k+40|0)>>2]|0;if(ua)pm(b+80|0,g,va);if(h>>>0>15){q=b+464|0;r=b+64|0;s=r;t=r+4|0;u=b+72|0;v=b+76|0;w=b+496|0;x=h+-16|0;sa=x&-16;ta=sa+16|0;sa=x-sa|0;x=b+72|0;y=r+4|0;z=b+76|0;A=r+1|0;B=r+2|0;C=r+3|0;E=r+4|0;F=r+5|0;G=r+6|0;H=r+7|0;I=b+72|0;J=b+73|0;K=b+74|0;L=b+75|0;M=b+76|0;N=b+77|0;O=b+78|0;P=b+79|0;Q=r+1|0;R=r+2|0;S=r+3|0;T=r+4|0;U=r+5|0;V=r+6|0;W=r+7|0;X=b+72|0;Y=b+73|0;Z=b+74|0;_=b+75|0;aa=b+76|0;ba=b+77|0;ca=b+78|0;da=b+79|0;ea=r+1|0;fa=r+2|0;ga=r+3|0;ha=r+4|0;ia=r+5|0;ja=r+6|0;ka=r+7|0;la=b+72|0;ma=b+73|0;na=b+74|0;oa=b+75|0;pa=b+76|0;qa=b+77|0;ra=b+78|0;o=b+79|0;i=0;k=g;n=e;while(1){Ea=q;Ea=_q(c[Ea>>2]|0,c[Ea+4>>2]|0,1,0)|0;f=D;Fa=q;c[Fa>>2]=Ea;c[Fa+4>>2]=f;f=km(b,za,Ea,f)|0;if(!((f|s)&3)){c[r>>2]=c[r>>2]^c[f>>2];c[t>>2]=c[t>>2]^c[f+4>>2];c[u>>2]=c[u>>2]^c[f+8>>2];c[v>>2]=c[v>>2]^c[f+12>>2]}else{a[r>>0]=a[r>>0]^a[f>>0];a[ea>>0]=a[ea>>0]^a[f+1>>0];a[fa>>0]=a[fa>>0]^a[f+2>>0];a[ga>>0]=a[ga>>0]^a[f+3>>0];a[ha>>0]=a[ha>>0]^a[f+4>>0];a[ia>>0]=a[ia>>0]^a[f+5>>0];a[ja>>0]=a[ja>>0]^a[f+6>>0];a[ka>>0]=a[ka>>0]^a[f+7>>0];a[la>>0]=a[la>>0]^a[f+8>>0];a[ma>>0]=a[ma>>0]^a[f+9>>0];a[na>>0]=a[na>>0]^a[f+10>>0];a[oa>>0]=a[oa>>0]^a[f+11>>0];a[pa>>0]=a[pa>>0]^a[f+12>>0];a[qa>>0]=a[qa>>0]^a[f+13>>0];a[ra>>0]=a[ra>>0]^a[f+14>>0];a[o>>0]=a[o>>0]^a[f+15>>0]}f=n|s;if(!((f|k)&3)){c[n>>2]=c[k>>2]^c[r>>2];c[n+4>>2]=c[k+4>>2]^c[y>>2];c[n+8>>2]=c[k+8>>2]^c[x>>2];c[n+12>>2]=c[k+12>>2]^c[z>>2]}else{a[n>>0]=a[k>>0]^a[r>>0];a[n+1>>0]=a[k+1>>0]^a[Q>>0];a[n+2>>0]=a[k+2>>0]^a[R>>0];a[n+3>>0]=a[k+3>>0]^a[S>>0];a[n+4>>0]=a[k+4>>0]^a[T>>0];a[n+5>>0]=a[k+5>>0]^a[U>>0];a[n+6>>0]=a[k+6>>0]^a[V>>0];a[n+7>>0]=a[k+7>>0]^a[W>>0];a[n+8>>0]=a[k+8>>0]^a[X>>0];a[n+9>>0]=a[k+9>>0]^a[Y>>0];a[n+10>>0]=a[k+10>>0]^a[Z>>0];a[n+11>>0]=a[k+11>>0]^a[_>>0];a[n+12>>0]=a[k+12>>0]^a[aa>>0];a[n+13>>0]=a[k+13>>0]^a[ba>>0];a[n+14>>0]=a[k+14>>0]^a[ca>>0];a[n+15>>0]=a[k+15>>0]^a[da>>0]}Fa=pb[p&63](w,n,n)|0;i=Fa>>>0>i>>>0?Fa:i;if(!(f&3)){Fa=n+4|0;c[n>>2]=c[n>>2]^c[r>>2];Ea=n+8|0;c[Fa>>2]=c[Fa>>2]^c[t>>2];Fa=n+12|0;c[Ea>>2]=c[Ea>>2]^c[u>>2];c[Fa>>2]=c[Fa>>2]^c[v>>2]}else{Fa=n+1|0;a[n>>0]=a[n>>0]^a[r>>0];Ea=n+2|0;a[Fa>>0]=a[Fa>>0]^a[A>>0];Fa=n+3|0;a[Ea>>0]=a[Ea>>0]^a[B>>0];Ea=n+4|0;a[Fa>>0]=a[Fa>>0]^a[C>>0];Fa=n+5|0;a[Ea>>0]=a[Ea>>0]^a[E>>0];Ea=n+6|0;a[Fa>>0]=a[Fa>>0]^a[F>>0];Fa=n+7|0;a[Ea>>0]=a[Ea>>0]^a[G>>0];Ea=n+8|0;a[Fa>>0]=a[Fa>>0]^a[H>>0];Fa=n+9|0;a[Ea>>0]=a[Ea>>0]^a[I>>0];Ea=n+10|0;a[Fa>>0]=a[Fa>>0]^a[J>>0];Fa=n+11|0;a[Ea>>0]=a[Ea>>0]^a[K>>0];Ea=n+12|0;a[Fa>>0]=a[Fa>>0]^a[L>>0];Fa=n+13|0;a[Ea>>0]=a[Ea>>0]^a[M>>0];Ea=n+14|0;a[Fa>>0]=a[Fa>>0]^a[N>>0];Fa=n+15|0;a[Ea>>0]=a[Ea>>0]^a[O>>0];a[Fa>>0]=a[Fa>>0]^a[P>>0]}h=h+-16|0;if(h>>>0<=15)break;else{k=k+16|0;n=n+16|0}}h=sa;g=g+ta|0;e=e+ta|0}else i=0;if(!ua)pm(b+80|0,e+(0-wa)|0,va)}else i=0;while(0);if(h){f=b+64|0;if(!((xa|f)&3)){Fa=f+4|0;c[f>>2]=c[f>>2]^c[xa>>2];Ea=b+72|0;c[Fa>>2]=c[Fa>>2]^c[xa+4>>2];Fa=b+76|0;c[Ea>>2]=c[Ea>>2]^c[b+136>>2];c[Fa>>2]=c[Fa>>2]^c[b+140>>2]}else{Fa=f+1|0;a[f>>0]=a[f>>0]^a[xa>>0];Ea=f+2|0;a[Fa>>0]=a[Fa>>0]^a[xa+1>>0];Fa=f+3|0;a[Ea>>0]=a[Ea>>0]^a[xa+2>>0];Ea=f+4|0;a[Fa>>0]=a[Fa>>0]^a[xa+3>>0];Fa=f+5|0;a[Ea>>0]=a[Ea>>0]^a[xa+4>>0];Ea=f+6|0;a[Fa>>0]=a[Fa>>0]^a[xa+5>>0];Fa=f+7|0;a[Ea>>0]=a[Ea>>0]^a[xa+6>>0];Ea=b+72|0;a[Fa>>0]=a[Fa>>0]^a[xa+7>>0];Fa=b+73|0;a[Ea>>0]=a[Ea>>0]^a[b+136>>0];Ea=b+74|0;a[Fa>>0]=a[Fa>>0]^a[b+137>>0];Fa=b+75|0;a[Ea>>0]=a[Ea>>0]^a[b+138>>0];Ea=b+76|0;a[Fa>>0]=a[Fa>>0]^a[b+139>>0];Fa=b+77|0;a[Ea>>0]=a[Ea>>0]^a[b+140>>0];Ea=b+78|0;a[Fa>>0]=a[Fa>>0]^a[b+141>>0];Fa=b+79|0;a[Ea>>0]=a[Ea>>0]^a[b+142>>0];a[Fa>>0]=a[Fa>>0]^a[b+143>>0]}Fa=pb[c[(c[Ca>>2]|0)+36>>2]&63](b+496|0,j,f)|0;i=Fa>>>0>i>>>0?Fa:i;do if(!d){p=c[j>>2]|0;c[za>>2]=p;r=c[j+4>>2]|0;c[za+4>>2]=r;c[za+8>>2]=c[j+8>>2];c[za+12>>2]=c[j+12>>2];do if(!(g&3)){if(h>>>0<=3){k=za;f=h;ya=55;break}n=h+-4|0;o=n&-4;s=o+4|0;q=g+s|0;f=za;k=h;while(1){c[f>>2]=c[g>>2];k=k+-4|0;if(k>>>0<=3)break;else{g=g+4|0;f=f+4|0}}f=n-o|0;if(!f){g=p;f=r}else{g=q;k=za+s|0;ya=55}}else{k=za;f=h;ya=55}while(0);if((ya|0)==55){while(1){a[k>>0]=a[g>>0]|0;f=f+-1|0;if(!f)break;else{g=g+1|0;k=k+1|0;ya=55}}g=c[j>>2]|0;f=c[j+4>>2]|0}r=za+4|0;c[za>>2]=c[za>>2]^g;q=za+8|0;c[r>>2]=c[r>>2]^f;p=za+12|0;c[q>>2]=c[q>>2]^c[j+8>>2];c[p>>2]=c[p>>2]^c[j+12>>2];a[za+h>>0]=-128;if(!(e&3))if(h>>>0>3){k=h+-4|0;n=k&-4;o=n+4|0;g=za+o|0;j=za;f=e;while(1){c[f>>2]=c[j>>2];h=h+-4|0;if(h>>>0<=3)break;else{j=j+4|0;f=f+4|0}}h=k-n|0;e=e+o|0}else g=za;else g=za;if(h|0)while(1){a[e>>0]=a[g>>0]|0;h=h+-1|0;if(!h)break;else{g=g+1|0;e=e+1|0}}h=b+80|0;if(!(h&3)){Fa=h+4|0;c[h>>2]=c[h>>2]^c[za>>2];Ea=b+88|0;c[Fa>>2]=c[Fa>>2]^c[r>>2];Fa=b+92|0;c[Ea>>2]=c[Ea>>2]^c[q>>2];c[Fa>>2]=c[Fa>>2]^c[p>>2];break}else{Fa=h+1|0;a[h>>0]=a[h>>0]^a[za>>0];Ea=h+2|0;a[Fa>>0]=a[Fa>>0]^a[za+1>>0];Fa=h+3|0;a[Ea>>0]=a[Ea>>0]^a[za+2>>0];Ea=h+4|0;a[Fa>>0]=a[Fa>>0]^a[za+3>>0];Fa=h+5|0;a[Ea>>0]=a[Ea>>0]^a[za+4>>0];Ea=h+6|0;a[Fa>>0]=a[Fa>>0]^a[za+5>>0];Fa=h+7|0;a[Ea>>0]=a[Ea>>0]^a[za+6>>0];Ea=b+88|0;a[Fa>>0]=a[Fa>>0]^a[za+7>>0];Fa=b+89|0;a[Ea>>0]=a[Ea>>0]^a[za+8>>0];Ea=b+90|0;a[Fa>>0]=a[Fa>>0]^a[za+9>>0];Fa=b+91|0;a[Ea>>0]=a[Ea>>0]^a[za+10>>0];Ea=b+92|0;a[Fa>>0]=a[Fa>>0]^a[za+11>>0];Fa=b+93|0;a[Ea>>0]=a[Ea>>0]^a[za+12>>0];Ea=b+94|0;a[Fa>>0]=a[Fa>>0]^a[za+13>>0];Fa=b+95|0;a[Ea>>0]=a[Ea>>0]^a[za+14>>0];a[Fa>>0]=a[Fa>>0]^a[za+15>>0];break}}else{s=g;do if(!(s&3)){if(h>>>0<=3){n=g;k=za;f=h;ya=37;break}p=h+-4|0;q=p&-4;r=q+4|0;n=g+r|0;f=g;k=za;o=h;while(1){c[k>>2]=c[f>>2];o=o+-4|0;if(o>>>0<=3)break;else{f=f+4|0;k=k+4|0}}f=p-q|0;if(f|0){k=za+r|0;ya=37}}else{n=g;k=za;f=h;ya=37}while(0);if((ya|0)==37)while(1){a[k>>0]=a[n>>0]|0;f=f+-1|0;if(!f)break;else{n=n+1|0;k=k+1|0;ya=37}}f=za+h|0;Yq(f|0,0,16-h|0)|0;a[f>>0]=-128;f=b+80|0;if(!(f&3)){Fa=f+4|0;c[f>>2]=c[f>>2]^c[za>>2];Ea=b+88|0;c[Fa>>2]=c[Fa>>2]^c[za+4>>2];Fa=b+92|0;c[Ea>>2]=c[Ea>>2]^c[za+8>>2];c[Fa>>2]=c[Fa>>2]^c[za+12>>2]}else{Fa=f+1|0;a[f>>0]=a[f>>0]^a[za>>0];Ea=f+2|0;a[Fa>>0]=a[Fa>>0]^a[za+1>>0];Fa=f+3|0;a[Ea>>0]=a[Ea>>0]^a[za+2>>0];Ea=f+4|0;a[Fa>>0]=a[Fa>>0]^a[za+3>>0];Fa=f+5|0;a[Ea>>0]=a[Ea>>0]^a[za+4>>0];Ea=f+6|0;a[Fa>>0]=a[Fa>>0]^a[za+5>>0];Fa=f+7|0;a[Ea>>0]=a[Ea>>0]^a[za+6>>0];Ea=b+88|0;a[Fa>>0]=a[Fa>>0]^a[za+7>>0];Fa=b+89|0;a[Ea>>0]=a[Ea>>0]^a[za+8>>0];Ea=b+90|0;a[Fa>>0]=a[Fa>>0]^a[za+9>>0];Fa=b+91|0;a[Ea>>0]=a[Ea>>0]^a[za+10>>0];Ea=b+92|0;a[Fa>>0]=a[Fa>>0]^a[za+11>>0];Fa=b+93|0;a[Ea>>0]=a[Ea>>0]^a[za+12>>0];Ea=b+94|0;a[Fa>>0]=a[Fa>>0]^a[za+13>>0];Fa=b+95|0;a[Ea>>0]=a[Ea>>0]^a[za+14>>0];a[Fa>>0]=a[Fa>>0]^a[za+15>>0]}if(!((s|e)&3))if(h>>>0>3){n=h+-4|0;o=n&-4;q=o+4|0;p=j+q|0;f=g;k=e;while(1){c[k>>2]=c[j>>2]^c[f>>2];h=h+-4|0;if(h>>>0<=3)break;else{j=j+4|0;f=f+4|0;k=k+4|0}}h=n-o|0;j=p;g=g+q|0;e=e+q|0}if(h|0)while(1){a[e>>0]=a[j>>0]^a[g>>0];h=h+-1|0;if(!h)break;else{j=j+1|0;g=g+1|0;e=e+1|0}}}while(0)}if(a[Aa>>0]&8){g=b+416|0;h=b+80|0;e=b+64|0;j=g;if(!((h|j|e)&3)){c[g>>2]=c[e>>2]^c[h>>2];c[b+420>>2]=c[e+4>>2]^c[h+4>>2];c[b+424>>2]=c[b+72>>2]^c[b+88>>2];c[b+428>>2]=c[b+76>>2]^c[b+92>>2]}else{a[g>>0]=a[e>>0]^a[h>>0];a[g+1>>0]=a[e+1>>0]^a[h+1>>0];a[g+2>>0]=a[e+2>>0]^a[h+2>>0];Fa=b+420|0;a[g+3>>0]=a[e+3>>0]^a[h+3>>0];a[Fa>>0]=a[e+4>>0]^a[h+4>>0];a[Fa+1>>0]=a[e+5>>0]^a[h+5>>0];a[Fa+2>>0]=a[e+6>>0]^a[h+6>>0];Ea=b+424|0;a[Fa+3>>0]=a[e+7>>0]^a[h+7>>0];a[Ea>>0]=a[b+72>>0]^a[b+88>>0];a[Ea+1>>0]=a[b+73>>0]^a[b+89>>0];a[Ea+2>>0]=a[b+74>>0]^a[b+90>>0];Fa=b+428|0;a[Ea+3>>0]=a[b+75>>0]^a[b+91>>0];a[Fa>>0]=a[b+76>>0]^a[b+92>>0];a[Fa+1>>0]=a[b+77>>0]^a[b+93>>0];a[Fa+2>>0]=a[b+78>>0]^a[b+94>>0];a[Fa+3>>0]=a[b+79>>0]^a[b+95>>0]}h=b+144|0;if(!((h|j)&3)){Fa=b+420|0;c[g>>2]=c[g>>2]^c[h>>2];Ea=b+424|0;c[Fa>>2]=c[Fa>>2]^c[b+148>>2];Fa=b+428|0;c[Ea>>2]=c[Ea>>2]^c[b+152>>2];c[Fa>>2]=c[Fa>>2]^c[b+156>>2]}else{Fa=g+1|0;a[g>>0]=a[g>>0]^a[h>>0];Ea=g+2|0;a[Fa>>0]=a[Fa>>0]^a[b+145>>0];Fa=g+3|0;a[Ea>>0]=a[Ea>>0]^a[b+146>>0];Ea=b+420|0;a[Fa>>0]=a[Fa>>0]^a[b+147>>0];Fa=Ea+1|0;a[Ea>>0]=a[Ea>>0]^a[b+148>>0];Aa=Ea+2|0;a[Fa>>0]=a[Fa>>0]^a[b+149>>0];Ea=Ea+3|0;a[Aa>>0]=a[Aa>>0]^a[b+150>>0];Aa=b+424|0;a[Ea>>0]=a[Ea>>0]^a[b+151>>0];Ea=Aa+1|0;a[Aa>>0]=a[Aa>>0]^a[b+152>>0];Fa=Aa+2|0;a[Ea>>0]=a[Ea>>0]^a[b+153>>0];Aa=Aa+3|0;a[Fa>>0]=a[Fa>>0]^a[b+154>>0];Fa=b+428|0;a[Aa>>0]=a[Aa>>0]^a[b+155>>0];Aa=Fa+1|0;a[Fa>>0]=a[Fa>>0]^a[b+156>>0];Ea=Fa+2|0;a[Aa>>0]=a[Aa>>0]^a[b+157>>0];Fa=Fa+3|0;a[Ea>>0]=a[Ea>>0]^a[b+158>>0];a[Fa>>0]=a[Fa>>0]^a[b+159>>0]}Fa=pb[c[(c[Ca>>2]|0)+36>>2]&63](b+496|0,g,g)|0;a[Ba>>0]=a[Ba>>0]|1;i=Fa>>>0>i>>>0?Fa:i}if(!i){Fa=0;l=Da;return Fa|0}Te(i+16|0);Fa=0;l=Da;return Fa|0}function pm(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;if(!e)return;s=b;t=b+4|0;u=b+8|0;v=b+12|0;w=b+1|0;x=b+2|0;f=b+3|0;g=b+4|0;h=b+5|0;i=b+6|0;j=b+7|0;k=b+8|0;l=b+9|0;m=b+10|0;n=b+11|0;o=b+12|0;p=b+13|0;q=b+14|0;r=b+15|0;while(1){if(!((d|s)&3)){c[b>>2]=c[b>>2]^c[d>>2];c[t>>2]=c[t>>2]^c[d+4>>2];c[u>>2]=c[u>>2]^c[d+8>>2];c[v>>2]=c[v>>2]^c[d+12>>2]}else{a[b>>0]=a[b>>0]^a[d>>0];a[w>>0]=a[w>>0]^a[d+1>>0];a[x>>0]=a[x>>0]^a[d+2>>0];a[f>>0]=a[f>>0]^a[d+3>>0];a[g>>0]=a[g>>0]^a[d+4>>0];a[h>>0]=a[h>>0]^a[d+5>>0];a[i>>0]=a[i>>0]^a[d+6>>0];a[j>>0]=a[j>>0]^a[d+7>>0];a[k>>0]=a[k>>0]^a[d+8>>0];a[l>>0]=a[l>>0]^a[d+9>>0];a[m>>0]=a[m>>0]^a[d+10>>0];a[n>>0]=a[n>>0]^a[d+11>>0];a[o>>0]=a[o>>0]^a[d+12>>0];a[p>>0]=a[p>>0]^a[d+13>>0];a[q>>0]=a[q>>0]^a[d+14>>0];a[r>>0]=a[r>>0]^a[d+15>>0]}e=e+-1|0;if(!e)break;else d=d+16|0}return}function qm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return om(a,0,b,c,d,e)|0}
+function mi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,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,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,qb=0,rb=0,sb=0,tb=0,ub=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0;Gb=l;l=l+16|0;if((l|0)>=(m|0))$(16);Eb=Gb;Fb=b+496|0;if(!g){bi(Fb);g=c[Fb+500>>2]|0;if(g|0)vb[g&3]();i=c[Fb+492>>2]|0;if(!f)g=0;else{j=b+464|0;k=b+64|0;n=k;o=k+4|0;p=b+72|0;q=b+76|0;r=Eb+4|0;s=Eb+8|0;t=Eb+12|0;u=(n&3|0)==0;v=b+80|0;w=(v&3|0)==0;x=v+4|0;y=b+88|0;z=b+92|0;A=b+160|0;B=Eb+1|0;C=Eb+2|0;E=Eb+3|0;F=Eb+4|0;G=F+1|0;H=F+2|0;I=F+3|0;J=Eb+8|0;K=J+1|0;L=J+2|0;M=J+3|0;N=Eb+12|0;O=N+1|0;P=N+2|0;Q=N+3|0;R=Eb+1|0;S=v+1|0;T=Eb+2|0;U=v+2|0;V=Eb+3|0;W=v+3|0;X=Eb+4|0;Y=v+4|0;Z=X+1|0;_=v+5|0;aa=X+2|0;ba=v+6|0;ca=X+3|0;da=v+7|0;ea=Eb+8|0;fa=b+88|0;ga=ea+1|0;ha=b+89|0;ia=ea+2|0;ja=b+90|0;ka=ea+3|0;la=b+91|0;ma=Eb+12|0;na=b+92|0;oa=ma+1|0;pa=b+93|0;qa=ma+2|0;ra=b+94|0;sa=ma+3|0;ta=b+95|0;ua=k+1|0;va=Eb+1|0;wa=k+2|0;xa=Eb+2|0;ya=k+3|0;za=Eb+3|0;Aa=k+4|0;Ba=Eb+4|0;Ca=k+5|0;Da=Ba+1|0;Ea=k+6|0;Fa=Ba+2|0;Ga=k+7|0;Ha=Ba+3|0;Ia=b+72|0;Ja=Eb+8|0;Ka=b+73|0;La=Ja+1|0;Ma=b+74|0;Na=Ja+2|0;Oa=b+75|0;Pa=Ja+3|0;Qa=b+76|0;Ra=Eb+12|0;Sa=b+77|0;Ta=Ra+1|0;Ua=b+78|0;Va=Ra+2|0;Wa=b+79|0;Xa=Ra+3|0;Ya=Eb+1|0;Za=Eb+2|0;_a=Eb+3|0;$a=Eb+4|0;ab=$a+1|0;bb=$a+2|0;cb=$a+3|0;db=Eb+8|0;eb=db+1|0;fb=db+2|0;gb=db+3|0;hb=Eb+12|0;ib=hb+1|0;jb=hb+2|0;kb=hb+3|0;lb=k+1|0;mb=k+2|0;nb=k+3|0;ob=k+4|0;qb=k+5|0;rb=k+6|0;sb=k+7|0;tb=b+72|0;ub=b+73|0;wb=b+74|0;xb=b+75|0;yb=b+76|0;zb=b+77|0;Ab=b+78|0;Bb=b+79|0;while(1){g=j;g=_q(c[g>>2]|0,c[g+4>>2]|0,1,0)|0;h=D;Cb=j;c[Cb>>2]=g;c[Cb+4>>2]=h;if(!((g|0)==0&0==0)?(Db=$q(g|0)|0,Db>>>0<16):0)g=A+(Db<<4)|0;else g=km(b,Eb,g,h)|0;if(!((g|n)&3)){c[k>>2]=c[k>>2]^c[g>>2];c[o>>2]=c[o>>2]^c[g+4>>2];c[p>>2]=c[p>>2]^c[g+8>>2];c[q>>2]=c[q>>2]^c[g+12>>2]}else{a[k>>0]=a[k>>0]^a[g>>0];a[lb>>0]=a[lb>>0]^a[g+1>>0];a[mb>>0]=a[mb>>0]^a[g+2>>0];a[nb>>0]=a[nb>>0]^a[g+3>>0];a[ob>>0]=a[ob>>0]^a[g+4>>0];a[qb>>0]=a[qb>>0]^a[g+5>>0];a[rb>>0]=a[rb>>0]^a[g+6>>0];a[sb>>0]=a[sb>>0]^a[g+7>>0];a[tb>>0]=a[tb>>0]^a[g+8>>0];a[ub>>0]=a[ub>>0]^a[g+9>>0];a[wb>>0]=a[wb>>0]^a[g+10>>0];a[xb>>0]=a[xb>>0]^a[g+11>>0];a[yb>>0]=a[yb>>0]^a[g+12>>0];a[zb>>0]=a[zb>>0]^a[g+13>>0];a[Ab>>0]=a[Ab>>0]^a[g+14>>0];a[Bb>>0]=a[Bb>>0]^a[g+15>>0]}if(!(e&3)){c[Eb>>2]=c[e>>2];c[r>>2]=c[e+4>>2];c[s>>2]=c[e+8>>2];c[t>>2]=c[e+12>>2]}else{a[Eb>>0]=a[e>>0]|0;a[Ya>>0]=a[e+1>>0]|0;a[Za>>0]=a[e+2>>0]|0;a[_a>>0]=a[e+3>>0]|0;a[$a>>0]=a[e+4>>0]|0;a[ab>>0]=a[e+5>>0]|0;a[bb>>0]=a[e+6>>0]|0;a[cb>>0]=a[e+7>>0]|0;a[db>>0]=a[e+8>>0]|0;a[eb>>0]=a[e+9>>0]|0;a[fb>>0]=a[e+10>>0]|0;a[gb>>0]=a[e+11>>0]|0;a[hb>>0]=a[e+12>>0]|0;a[ib>>0]=a[e+13>>0]|0;a[jb>>0]=a[e+14>>0]|0;a[kb>>0]=a[e+15>>0]|0}if(u){c[Eb>>2]=c[Eb>>2]^c[k>>2];c[r>>2]=c[r>>2]^c[o>>2];c[s>>2]=c[s>>2]^c[p>>2];c[t>>2]=c[t>>2]^c[q>>2];g=pb[i&63](Fb,Eb,Eb)|0;c[Eb>>2]=c[Eb>>2]^c[k>>2];c[r>>2]=c[r>>2]^c[o>>2];c[s>>2]=c[s>>2]^c[p>>2];c[t>>2]=c[t>>2]^c[q>>2]}else{a[Eb>>0]=a[Eb>>0]^a[k>>0];a[va>>0]=a[va>>0]^a[ua>>0];a[xa>>0]=a[xa>>0]^a[wa>>0];a[za>>0]=a[za>>0]^a[ya>>0];a[Ba>>0]=a[Ba>>0]^a[Aa>>0];a[Da>>0]=a[Da>>0]^a[Ca>>0];a[Fa>>0]=a[Fa>>0]^a[Ea>>0];a[Ha>>0]=a[Ha>>0]^a[Ga>>0];a[Ja>>0]=a[Ja>>0]^a[Ia>>0];a[La>>0]=a[La>>0]^a[Ka>>0];a[Na>>0]=a[Na>>0]^a[Ma>>0];a[Pa>>0]=a[Pa>>0]^a[Oa>>0];a[Ra>>0]=a[Ra>>0]^a[Qa>>0];a[Ta>>0]=a[Ta>>0]^a[Sa>>0];a[Va>>0]=a[Va>>0]^a[Ua>>0];a[Xa>>0]=a[Xa>>0]^a[Wa>>0];g=pb[i&63](Fb,Eb,Eb)|0;a[Eb>>0]=a[Eb>>0]^a[k>>0];a[va>>0]=a[va>>0]^a[ua>>0];a[xa>>0]=a[xa>>0]^a[wa>>0];a[za>>0]=a[za>>0]^a[ya>>0];a[Ba>>0]=a[Ba>>0]^a[Aa>>0];a[Da>>0]=a[Da>>0]^a[Ca>>0];a[Fa>>0]=a[Fa>>0]^a[Ea>>0];a[Ha>>0]=a[Ha>>0]^a[Ga>>0];a[Ja>>0]=a[Ja>>0]^a[Ia>>0];a[La>>0]=a[La>>0]^a[Ka>>0];a[Na>>0]=a[Na>>0]^a[Ma>>0];a[Pa>>0]=a[Pa>>0]^a[Oa>>0];a[Ra>>0]=a[Ra>>0]^a[Qa>>0];a[Ta>>0]=a[Ta>>0]^a[Sa>>0];a[Va>>0]=a[Va>>0]^a[Ua>>0];a[Xa>>0]=a[Xa>>0]^a[Wa>>0]}if(w){h=c[Eb>>2]|0;c[v>>2]=c[v>>2]^h;c[x>>2]=c[x>>2]^c[r>>2];c[y>>2]=c[y>>2]^c[s>>2];c[z>>2]=c[z>>2]^c[t>>2];h=h&255}else{h=a[Eb>>0]|0;a[v>>0]=a[v>>0]^h;a[S>>0]=a[S>>0]^a[R>>0];a[U>>0]=a[U>>0]^a[T>>0];a[W>>0]=a[W>>0]^a[V>>0];a[Y>>0]=a[Y>>0]^a[X>>0];a[_>>0]=a[_>>0]^a[Z>>0];a[ba>>0]=a[ba>>0]^a[aa>>0];a[da>>0]=a[da>>0]^a[ca>>0];a[fa>>0]=a[fa>>0]^a[ea>>0];a[ha>>0]=a[ha>>0]^a[ga>>0];a[ja>>0]=a[ja>>0]^a[ia>>0];a[la>>0]=a[la>>0]^a[ka>>0];a[na>>0]=a[na>>0]^a[ma>>0];a[pa>>0]=a[pa>>0]^a[oa>>0];a[ra>>0]=a[ra>>0]^a[qa>>0];a[ta>>0]=a[ta>>0]^a[sa>>0]}if(!(d&3)){c[d>>2]=c[Eb>>2];c[d+4>>2]=c[r>>2];c[d+8>>2]=c[s>>2];c[d+12>>2]=c[t>>2]}else{a[d>>0]=h;a[d+1>>0]=a[B>>0]|0;a[d+2>>0]=a[C>>0]|0;a[d+3>>0]=a[E>>0]|0;a[d+4>>0]=a[F>>0]|0;a[d+5>>0]=a[G>>0]|0;a[d+6>>0]=a[H>>0]|0;a[d+7>>0]=a[I>>0]|0;a[d+8>>0]=a[J>>0]|0;a[d+9>>0]=a[K>>0]|0;a[d+10>>0]=a[L>>0]|0;a[d+11>>0]=a[M>>0]|0;a[d+12>>0]=a[N>>0]|0;a[d+13>>0]=a[O>>0]|0;a[d+14>>0]=a[P>>0]|0;a[d+15>>0]=a[Q>>0]|0}f=f+-1|0;if(!f)break;else{d=d+16|0;e=e+16|0}}}}else{g=c[Fb+496>>2]|0;if(g|0)vb[g&3]();_=c[Fb+488>>2]|0;if(!f)g=0;else{aa=b+464|0;ba=b+64|0;ca=ba;da=ba+4|0;ea=b+72|0;fa=b+76|0;ga=Eb+4|0;ha=Eb+8|0;ia=Eb+12|0;ja=b+80|0;ka=(ja&3|0)==0;la=ja+4|0;ma=b+88|0;na=b+92|0;oa=(ca&3|0)==0;pa=b+160|0;qa=Eb+1|0;ra=Eb+2|0;sa=Eb+3|0;ta=Eb+4|0;ua=ta+1|0;va=ta+2|0;wa=ta+3|0;xa=Eb+8|0;ya=xa+1|0;za=xa+2|0;Aa=xa+3|0;Ba=Eb+12|0;Ca=Ba+1|0;Da=Ba+2|0;Ea=Ba+3|0;Fa=ba+1|0;Ga=Eb+1|0;Ha=ba+2|0;Ia=Eb+2|0;Ja=ba+3|0;Ka=Eb+3|0;La=ba+4|0;Ma=Eb+4|0;Na=ba+5|0;Oa=Ma+1|0;Pa=ba+6|0;Qa=Ma+2|0;Ra=ba+7|0;Sa=Ma+3|0;Ta=b+72|0;Ua=Eb+8|0;Va=b+73|0;Wa=Ua+1|0;Xa=b+74|0;Ya=Ua+2|0;Za=b+75|0;_a=Ua+3|0;$a=b+76|0;ab=Eb+12|0;bb=b+77|0;cb=ab+1|0;db=b+78|0;eb=ab+2|0;fb=b+79|0;gb=ab+3|0;hb=Eb+1|0;ib=ja+1|0;jb=Eb+2|0;kb=ja+2|0;lb=Eb+3|0;mb=ja+3|0;nb=Eb+4|0;ob=ja+4|0;qb=nb+1|0;rb=ja+5|0;sb=nb+2|0;tb=ja+6|0;ub=nb+3|0;wb=ja+7|0;xb=Eb+8|0;yb=b+88|0;zb=xb+1|0;Ab=b+89|0;Bb=xb+2|0;i=b+90|0;j=xb+3|0;k=b+91|0;n=Eb+12|0;o=b+92|0;p=n+1|0;q=b+93|0;r=n+2|0;s=b+94|0;t=n+3|0;u=b+95|0;v=Eb+1|0;w=Eb+2|0;x=Eb+3|0;y=Eb+4|0;z=y+1|0;A=y+2|0;B=y+3|0;C=Eb+8|0;E=C+1|0;F=C+2|0;G=C+3|0;H=Eb+12|0;I=H+1|0;J=H+2|0;K=H+3|0;L=ba+1|0;M=ba+2|0;N=ba+3|0;O=ba+4|0;P=ba+5|0;Q=ba+6|0;R=ba+7|0;S=b+72|0;T=b+73|0;U=b+74|0;V=b+75|0;W=b+76|0;X=b+77|0;Y=b+78|0;Z=b+79|0;while(1){g=aa;g=_q(c[g>>2]|0,c[g+4>>2]|0,1,0)|0;h=D;Db=aa;c[Db>>2]=g;c[Db+4>>2]=h;if(!((g|0)==0&0==0)?(Cb=$q(g|0)|0,Cb>>>0<16):0)g=pa+(Cb<<4)|0;else g=km(b,Eb,g,h)|0;if(!((g|ca)&3)){c[ba>>2]=c[ba>>2]^c[g>>2];c[da>>2]=c[da>>2]^c[g+4>>2];c[ea>>2]=c[ea>>2]^c[g+8>>2];c[fa>>2]=c[fa>>2]^c[g+12>>2]}else{a[ba>>0]=a[ba>>0]^a[g>>0];a[L>>0]=a[L>>0]^a[g+1>>0];a[M>>0]=a[M>>0]^a[g+2>>0];a[N>>0]=a[N>>0]^a[g+3>>0];a[O>>0]=a[O>>0]^a[g+4>>0];a[P>>0]=a[P>>0]^a[g+5>>0];a[Q>>0]=a[Q>>0]^a[g+6>>0];a[R>>0]=a[R>>0]^a[g+7>>0];a[S>>0]=a[S>>0]^a[g+8>>0];a[T>>0]=a[T>>0]^a[g+9>>0];a[U>>0]=a[U>>0]^a[g+10>>0];a[V>>0]=a[V>>0]^a[g+11>>0];a[W>>0]=a[W>>0]^a[g+12>>0];a[X>>0]=a[X>>0]^a[g+13>>0];a[Y>>0]=a[Y>>0]^a[g+14>>0];a[Z>>0]=a[Z>>0]^a[g+15>>0]}if(!(e&3)){c[Eb>>2]=c[e>>2];c[ga>>2]=c[e+4>>2];c[ha>>2]=c[e+8>>2];c[ia>>2]=c[e+12>>2]}else{a[Eb>>0]=a[e>>0]|0;a[v>>0]=a[e+1>>0]|0;a[w>>0]=a[e+2>>0]|0;a[x>>0]=a[e+3>>0]|0;a[y>>0]=a[e+4>>0]|0;a[z>>0]=a[e+5>>0]|0;a[A>>0]=a[e+6>>0]|0;a[B>>0]=a[e+7>>0]|0;a[C>>0]=a[e+8>>0]|0;a[E>>0]=a[e+9>>0]|0;a[F>>0]=a[e+10>>0]|0;a[G>>0]=a[e+11>>0]|0;a[H>>0]=a[e+12>>0]|0;a[I>>0]=a[e+13>>0]|0;a[J>>0]=a[e+14>>0]|0;a[K>>0]=a[e+15>>0]|0}if(ka){g=c[Eb>>2]|0;c[ja>>2]=c[ja>>2]^g;c[la>>2]=c[la>>2]^c[ga>>2];c[ma>>2]=c[ma>>2]^c[ha>>2];c[na>>2]=c[na>>2]^c[ia>>2];g=g&255}else{g=a[Eb>>0]|0;a[ja>>0]=a[ja>>0]^g;a[ib>>0]=a[ib>>0]^a[hb>>0];a[kb>>0]=a[kb>>0]^a[jb>>0];a[mb>>0]=a[mb>>0]^a[lb>>0];a[ob>>0]=a[ob>>0]^a[nb>>0];a[rb>>0]=a[rb>>0]^a[qb>>0];a[tb>>0]=a[tb>>0]^a[sb>>0];a[wb>>0]=a[wb>>0]^a[ub>>0];a[yb>>0]=a[yb>>0]^a[xb>>0];a[Ab>>0]=a[Ab>>0]^a[zb>>0];a[i>>0]=a[i>>0]^a[Bb>>0];a[k>>0]=a[k>>0]^a[j>>0];a[o>>0]=a[o>>0]^a[n>>0];a[q>>0]=a[q>>0]^a[p>>0];a[s>>0]=a[s>>0]^a[r>>0];a[u>>0]=a[u>>0]^a[t>>0]}if(oa){c[Eb>>2]=c[Eb>>2]^c[ba>>2];c[ga>>2]=c[ga>>2]^c[da>>2];c[ha>>2]=c[ha>>2]^c[ea>>2];c[ia>>2]=c[ia>>2]^c[fa>>2];g=pb[_&63](Fb,Eb,Eb)|0;c[Eb>>2]=c[Eb>>2]^c[ba>>2];c[ga>>2]=c[ga>>2]^c[da>>2];c[ha>>2]=c[ha>>2]^c[ea>>2];c[ia>>2]=c[ia>>2]^c[fa>>2]}else{a[Eb>>0]=g^a[ba>>0];a[Ga>>0]=a[Ga>>0]^a[Fa>>0];a[Ia>>0]=a[Ia>>0]^a[Ha>>0];a[Ka>>0]=a[Ka>>0]^a[Ja>>0];a[Ma>>0]=a[Ma>>0]^a[La>>0];a[Oa>>0]=a[Oa>>0]^a[Na>>0];a[Qa>>0]=a[Qa>>0]^a[Pa>>0];a[Sa>>0]=a[Sa>>0]^a[Ra>>0];a[Ua>>0]=a[Ua>>0]^a[Ta>>0];a[Wa>>0]=a[Wa>>0]^a[Va>>0];a[Ya>>0]=a[Ya>>0]^a[Xa>>0];a[_a>>0]=a[_a>>0]^a[Za>>0];a[ab>>0]=a[ab>>0]^a[$a>>0];a[cb>>0]=a[cb>>0]^a[bb>>0];a[eb>>0]=a[eb>>0]^a[db>>0];a[gb>>0]=a[gb>>0]^a[fb>>0];g=pb[_&63](Fb,Eb,Eb)|0;a[Eb>>0]=a[Eb>>0]^a[ba>>0];a[Ga>>0]=a[Ga>>0]^a[Fa>>0];a[Ia>>0]=a[Ia>>0]^a[Ha>>0];a[Ka>>0]=a[Ka>>0]^a[Ja>>0];a[Ma>>0]=a[Ma>>0]^a[La>>0];a[Oa>>0]=a[Oa>>0]^a[Na>>0];a[Qa>>0]=a[Qa>>0]^a[Pa>>0];a[Sa>>0]=a[Sa>>0]^a[Ra>>0];a[Ua>>0]=a[Ua>>0]^a[Ta>>0];a[Wa>>0]=a[Wa>>0]^a[Va>>0];a[Ya>>0]=a[Ya>>0]^a[Xa>>0];a[_a>>0]=a[_a>>0]^a[Za>>0];a[ab>>0]=a[ab>>0]^a[$a>>0];a[cb>>0]=a[cb>>0]^a[bb>>0];a[eb>>0]=a[eb>>0]^a[db>>0];a[gb>>0]=a[gb>>0]^a[fb>>0]}if(!(d&3)){c[d>>2]=c[Eb>>2];c[d+4>>2]=c[ga>>2];c[d+8>>2]=c[ha>>2];c[d+12>>2]=c[ia>>2]}else{a[d>>0]=a[Eb>>0]|0;a[d+1>>0]=a[qa>>0]|0;a[d+2>>0]=a[ra>>0]|0;a[d+3>>0]=a[sa>>0]|0;a[d+4>>0]=a[ta>>0]|0;a[d+5>>0]=a[ua>>0]|0;a[d+6>>0]=a[va>>0]|0;a[d+7>>0]=a[wa>>0]|0;a[d+8>>0]=a[xa>>0]|0;a[d+9>>0]=a[ya>>0]|0;a[d+10>>0]=a[za>>0]|0;a[d+11>>0]=a[Aa>>0]|0;a[d+12>>0]=a[Ba>>0]|0;a[d+13>>0]=a[Ca>>0]|0;a[d+14>>0]=a[Da>>0]|0;a[d+15>>0]=a[Ea>>0]|0}f=f+-1|0;if(!f)break;else{d=d+16|0;e=e+16|0}}}}if(!g){l=Gb;return}Te(g+16|0);l=Gb;return}function ni(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,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,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;Za=l;l=l+16|0;if((l|0)>=(m|0))$(16);Xa=Za;Ya=b+496|0;f=c[Ya+496>>2]|0;if(f|0)vb[f&3]();La=c[Ya+488>>2]|0;if(!e){Ya=Xa;c[Ya>>2]=0;c[Ya+4>>2]=0;Ya=Xa+8|0;c[Ya>>2]=0;c[Ya+4>>2]=0;l=Za;return}v=b+472|0;w=b+432|0;x=w;y=b+436|0;z=b+440|0;A=b+444|0;B=Xa+4|0;C=Xa+8|0;E=Xa+12|0;F=b+448|0;G=(F&3|0)==0;H=b+452|0;I=b+456|0;J=b+460|0;K=b+160|0;L=Xa+1|0;M=F+1|0;N=Xa+2|0;O=F+2|0;P=Xa+3|0;Q=F+3|0;R=Xa+4|0;S=b+452|0;T=R+1|0;U=S+1|0;V=R+2|0;W=S+2|0;X=R+3|0;Y=S+3|0;Z=Xa+8|0;_=b+456|0;aa=Z+1|0;ba=_+1|0;ca=Z+2|0;da=_+2|0;ea=Z+3|0;fa=_+3|0;ga=Xa+12|0;ha=b+460|0;ia=ga+1|0;ja=ha+1|0;ka=ga+2|0;la=ha+2|0;ma=ga+3|0;na=ha+3|0;oa=w+1|0;pa=Xa+1|0;qa=w+2|0;ra=Xa+2|0;sa=w+3|0;ta=Xa+3|0;ua=b+436|0;va=Xa+4|0;wa=ua+1|0;xa=va+1|0;ya=ua+2|0;za=va+2|0;Aa=ua+3|0;Ba=va+3|0;Ca=b+440|0;Da=Xa+8|0;Ea=Ca+1|0;Fa=Da+1|0;Ga=Ca+2|0;Ha=Da+2|0;Ia=Ca+3|0;Ja=Da+3|0;Ka=b+444|0;Ma=Xa+12|0;Na=Ka+1|0;Oa=Ma+1|0;Pa=Ka+2|0;Qa=Ma+2|0;Ra=Ka+3|0;Sa=Ma+3|0;Ta=w+1|0;Ua=w+2|0;Va=w+3|0;h=b+436|0;i=h+1|0;j=h+2|0;k=h+3|0;n=b+440|0;o=n+1|0;p=n+2|0;q=n+3|0;r=b+444|0;s=r+1|0;t=r+2|0;u=r+3|0;g=e;while(1){f=v;f=_q(c[f>>2]|0,c[f+4>>2]|0,1,0)|0;e=D;_a=v;c[_a>>2]=f;c[_a+4>>2]=e;if(!((f|0)==0&0==0)?(Wa=$q(f|0)|0,Wa>>>0<16):0)f=K+(Wa<<4)|0;else f=km(b,Xa,f,e)|0;if(!((f|x)&3)){c[w>>2]=c[w>>2]^c[f>>2];c[y>>2]=c[y>>2]^c[f+4>>2];c[z>>2]=c[z>>2]^c[f+8>>2];c[A>>2]=c[A>>2]^c[f+12>>2]}else{a[w>>0]=a[w>>0]^a[f>>0];a[Ta>>0]=a[Ta>>0]^a[f+1>>0];a[Ua>>0]=a[Ua>>0]^a[f+2>>0];a[Va>>0]=a[Va>>0]^a[f+3>>0];a[h>>0]=a[h>>0]^a[f+4>>0];a[i>>0]=a[i>>0]^a[f+5>>0];a[j>>0]=a[j>>0]^a[f+6>>0];a[k>>0]=a[k>>0]^a[f+7>>0];a[n>>0]=a[n>>0]^a[f+8>>0];a[o>>0]=a[o>>0]^a[f+9>>0];a[p>>0]=a[p>>0]^a[f+10>>0];a[q>>0]=a[q>>0]^a[f+11>>0];a[r>>0]=a[r>>0]^a[f+12>>0];a[s>>0]=a[s>>0]^a[f+13>>0];a[t>>0]=a[t>>0]^a[f+14>>0];a[u>>0]=a[u>>0]^a[f+15>>0]}if(!((d|x)&3)){c[Xa>>2]=c[d>>2]^c[w>>2];c[B>>2]=c[d+4>>2]^c[y>>2];c[C>>2]=c[d+8>>2]^c[z>>2];c[E>>2]=c[d+12>>2]^c[A>>2]}else{a[Xa>>0]=a[d>>0]^a[w>>0];a[pa>>0]=a[d+1>>0]^a[oa>>0];a[ra>>0]=a[d+2>>0]^a[qa>>0];a[ta>>0]=a[d+3>>0]^a[sa>>0];a[va>>0]=a[d+4>>0]^a[ua>>0];a[xa>>0]=a[d+5>>0]^a[wa>>0];a[za>>0]=a[d+6>>0]^a[ya>>0];a[Ba>>0]=a[d+7>>0]^a[Aa>>0];a[Da>>0]=a[d+8>>0]^a[Ca>>0];a[Fa>>0]=a[d+9>>0]^a[Ea>>0];a[Ha>>0]=a[d+10>>0]^a[Ga>>0];a[Ja>>0]=a[d+11>>0]^a[Ia>>0];a[Ma>>0]=a[d+12>>0]^a[Ka>>0];a[Oa>>0]=a[d+13>>0]^a[Na>>0];a[Qa>>0]=a[d+14>>0]^a[Pa>>0];a[Sa>>0]=a[d+15>>0]^a[Ra>>0]}f=pb[La&63](Ya,Xa,Xa)|0;if(G){c[F>>2]=c[F>>2]^c[Xa>>2];c[H>>2]=c[H>>2]^c[B>>2];c[I>>2]=c[I>>2]^c[C>>2];c[J>>2]=c[J>>2]^c[E>>2]}else{a[F>>0]=a[F>>0]^a[Xa>>0];a[M>>0]=a[M>>0]^a[L>>0];a[O>>0]=a[O>>0]^a[N>>0];a[Q>>0]=a[Q>>0]^a[P>>0];a[S>>0]=a[S>>0]^a[R>>0];a[U>>0]=a[U>>0]^a[T>>0];a[W>>0]=a[W>>0]^a[V>>0];a[Y>>0]=a[Y>>0]^a[X>>0];a[_>>0]=a[_>>0]^a[Z>>0];a[ba>>0]=a[ba>>0]^a[aa>>0];a[da>>0]=a[da>>0]^a[ca>>0];a[fa>>0]=a[fa>>0]^a[ea>>0];a[ha>>0]=a[ha>>0]^a[ga>>0];a[ja>>0]=a[ja>>0]^a[ia>>0];a[la>>0]=a[la>>0]^a[ka>>0];a[na>>0]=a[na>>0]^a[ma>>0]}g=g+-1|0;if(!g)break;else d=d+16|0}_a=Xa;c[_a>>2]=0;c[_a+4>>2]=0;_a=Xa+8|0;c[_a>>2]=0;c[_a+4>>2]=0;if(!f){l=Za;return}Te(f+16|0);l=Za;return}function oi(a,b){a=a|0;b=b|0;c[a+160>>2]=1732584193;c[a+164>>2]=-271733879;c[a+168>>2]=-1732584194;c[a+172>>2]=271733878;c[a+176>>2]=-1009589776;b=a+128|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[a+148>>2]=64;c[a+152>>2]=31;return}function pi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Jm(b,0,0);h=b+128|0;f=c[h>>2]|0;i=f<<6;h=gr(f|0,c[h+4>>2]|0,26)|0;e=b+144|0;j=c[e>>2]|0;g=i+j|0;f=(g>>>0<i>>>0&1)+(h&536870848|f>>>26)|0;h=g<<3;i=f<<3|g>>>29;c[e>>2]=j+1;a[b+j>>0]=-128;d=c[e>>2]|0;if((j|0)<56){if((d|0)<56)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<56)}else{if((d|0)<64)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<64);Jm(b,0,0);d=b;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0))}a[b+59>>0]=g>>>21;a[b+58>>0]=g>>>13;a[b+57>>0]=g>>>5;a[b+56>>0]=h;a[b+63>>0]=f>>>21;a[b+62>>0]=f>>>13;a[b+61>>0]=f>>>5;a[b+60>>0]=i;ri(b,b,1)|0;Te(124);j=c[b+160>>2]|0;a[b+3>>0]=j>>>24;a[b+2>>0]=j>>>16;a[b+1>>0]=j>>>8;a[b>>0]=j;j=c[b+164>>2]|0;a[b+7>>0]=j>>>24;a[b+6>>0]=j>>>16;a[b+5>>0]=j>>>8;a[b+4>>0]=j;j=c[b+168>>2]|0;a[b+11>>0]=j>>>24;a[b+10>>0]=j>>>16;a[b+9>>0]=j>>>8;a[b+8>>0]=j;j=c[b+172>>2]|0;a[b+15>>0]=j>>>24;a[b+14>>0]=j>>>16;a[b+13>>0]=j>>>8;a[b+12>>0]=j;j=c[b+176>>2]|0;a[b+19>>0]=j>>>24;a[b+18>>0]=j>>>16;a[b+17>>0]=j>>>8;a[b+16>>0]=j;return}function qi(a){a=a|0;return a|0}function ri(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,ba=0,ca=0,da=0;C=l;l=l+64|0;if((l|0)>=(m|0))$(64);x=C;y=a+160|0;z=a+164|0;A=a+168|0;B=a+172|0;v=a+176|0;w=x+20|0;f=x+4|0;g=x+56|0;h=x+8|0;i=x+28|0;j=x+12|0;k=x+16|0;n=x+36|0;o=x+24|0;p=x+44|0;q=x+32|0;r=x+52|0;s=x+40|0;t=x+60|0;u=x+48|0;while(1){a=0;do{D=b+(a<<2)|0;c[x+(a<<2)>>2]=(d[D+2>>0]|0)<<16|(d[D+3>>0]|0)<<24|(d[D+1>>0]|0)<<8|(d[D>>0]|0);a=a+1|0}while((a|0)!=16);V=c[y>>2]|0;a=c[z>>2]|0;M=c[A>>2]|0;ca=c[B>>2]|0;Z=c[v>>2]|0;N=c[x>>2]|0;H=(M^a^ca)+V+N|0;H=(H<<11|H>>>21)+Z|0;X=M<<10|M>>>22;O=c[w>>2]|0;V=V+1352829926+((M|~ca)^a)+O|0;V=(V<<8|V>>>24)+Z|0;Y=c[f>>2]|0;K=Y+Z+(X^a^H)|0;K=(K<<14|K>>>18)+ca|0;aa=a<<10|a>>>22;J=c[g>>2]|0;Z=Z+1352829926+J+(V^(a|~X))|0;Z=(Z<<9|Z>>>23)+ca|0;Q=c[h>>2]|0;da=Q+ca+(H^aa^K)|0;da=(da<<15|da>>>17)+X|0;H=H<<10|H>>>22;U=c[i>>2]|0;ca=ca+1352829926+U+(Z^(V|~aa))|0;ca=(ca<<9|ca>>>23)+X|0;V=V<<10|V>>>22;E=c[j>>2]|0;D=E+X+(K^H^da)|0;D=(D<<12|D>>>20)+aa|0;K=K<<10|K>>>22;X=X+1352829926+N+(ca^(Z|~V))|0;X=(X<<11|X>>>21)+aa|0;Z=Z<<10|Z>>>22;S=c[k>>2]|0;F=S+aa+(da^K^D)|0;F=(F<<5|F>>>27)+H|0;da=da<<10|da>>>22;G=c[n>>2]|0;aa=aa+1352829926+G+(X^(ca|~Z))|0;aa=(aa<<13|aa>>>19)+V|0;ca=ca<<10|ca>>>22;H=H+O+(D^da^F)|0;H=(H<<8|H>>>24)+K|0;D=D<<10|D>>>22;V=Q+1352829926+V+(aa^(X|~ca))|0;V=(V<<15|V>>>17)+Z|0;X=X<<10|X>>>22;T=c[o>>2]|0;K=K+T+(F^D^H)|0;K=(K<<7|K>>>25)+da|0;F=F<<10|F>>>22;I=c[p>>2]|0;Z=I+1352829926+Z+(V^(aa|~X))|0;Z=(Z<<15|Z>>>17)+ca|0;aa=aa<<10|aa>>>22;da=da+U+(H^F^K)|0;da=(da<<9|da>>>23)+D|0;H=H<<10|H>>>22;ca=S+1352829926+ca+(Z^(V|~aa))|0;ca=(ca<<5|ca>>>27)+X|0;V=V<<10|V>>>22;W=c[q>>2]|0;D=D+W+(K^H^da)|0;D=(D<<11|D>>>21)+F|0;K=K<<10|K>>>22;P=c[r>>2]|0;X=P+1352829926+X+(ca^(Z|~V))|0;X=(X<<7|X>>>25)+aa|0;Z=Z<<10|Z>>>22;F=F+G+(da^K^D)|0;F=(F<<13|F>>>19)+H|0;da=da<<10|da>>>22;aa=T+1352829926+aa+(X^(ca|~Z))|0;aa=(aa<<7|aa>>>25)+V|0;ca=ca<<10|ca>>>22;_=c[s>>2]|0;H=H+_+(D^da^F)|0;H=(H<<14|H>>>18)+K|0;D=D<<10|D>>>22;R=c[t>>2]|0;V=R+1352829926+V+(aa^(X|~ca))|0;V=(V<<8|V>>>24)+Z|0;X=X<<10|X>>>22;K=K+I+(F^D^H)|0;K=(K<<15|K>>>17)+da|0;F=F<<10|F>>>22;Z=W+1352829926+Z+(V^(aa|~X))|0;Z=(Z<<11|Z>>>21)+ca|0;aa=aa<<10|aa>>>22;ba=c[u>>2]|0;da=da+ba+(H^F^K)|0;da=(da<<6|da>>>26)+D|0;H=H<<10|H>>>22;ca=Y+1352829926+ca+(Z^(V|~aa))|0;ca=(ca<<14|ca>>>18)+X|0;V=V<<10|V>>>22;D=D+P+(K^H^da)|0;D=(D<<7|D>>>25)+F|0;K=K<<10|K>>>22;X=_+1352829926+X+(ca^(Z|~V))|0;X=(X<<14|X>>>18)+aa|0;Z=Z<<10|Z>>>22;F=F+J+(da^K^D)|0;F=(F<<9|F>>>23)+H|0;da=da<<10|da>>>22;aa=E+1352829926+aa+(X^(ca|~Z))|0;aa=(aa<<12|aa>>>20)+V|0;ca=ca<<10|ca>>>22;H=H+R+(D^da^F)|0;H=(H<<8|H>>>24)+K|0;D=D<<10|D>>>22;V=ba+1352829926+V+(aa^(X|~ca))|0;V=(V<<6|V>>>26)+Z|0;X=X<<10|X>>>22;K=U+1518500249+K+(H&F|D&~H)|0;K=(K<<7|K>>>25)+da|0;F=F<<10|F>>>22;Z=T+1548603684+Z+(V&X|aa&~X)|0;Z=(Z<<9|Z>>>23)+ca|0;aa=aa<<10|aa>>>22;da=S+1518500249+da+(K&H|F&~K)|0;da=(da<<6|da>>>26)+D|0;H=H<<10|H>>>22;ca=I+1548603684+ca+(Z&aa|V&~aa)|0;ca=(ca<<13|ca>>>19)+X|0;V=V<<10|V>>>22;D=P+1518500249+D+(da&K|H&~da)|0;D=(D<<8|D>>>24)+F|0;K=K<<10|K>>>22;X=E+1548603684+X+(ca&V|Z&~V)|0;X=(X<<15|X>>>17)+aa|0;Z=Z<<10|Z>>>22;F=Y+1518500249+F+(D&da|K&~D)|0;F=(F<<13|F>>>19)+H|0;da=da<<10|da>>>22;aa=U+1548603684+aa+(X&Z|ca&~Z)|0;aa=(aa<<7|aa>>>25)+V|0;ca=ca<<10|ca>>>22;H=_+1518500249+H+(F&D|da&~F)|0;H=(H<<11|H>>>21)+K|0;D=D<<10|D>>>22;V=N+1548603684+V+(aa&ca|X&~ca)|0;V=(V<<12|V>>>20)+Z|0;X=X<<10|X>>>22;K=T+1518500249+K+(H&F|D&~H)|0;K=(K<<9|K>>>23)+da|0;F=F<<10|F>>>22;Z=P+1548603684+Z+(V&X|aa&~X)|0;Z=(Z<<8|Z>>>24)+ca|0;aa=aa<<10|aa>>>22;da=R+1518500249+da+(K&H|F&~K)|0;da=(da<<7|da>>>25)+D|0;H=H<<10|H>>>22;ca=O+1548603684+ca+(Z&aa|V&~aa)|0;ca=(ca<<9|ca>>>23)+X|0;V=V<<10|V>>>22;D=E+1518500249+D+(da&K|H&~da)|0;D=(D<<15|D>>>17)+F|0;K=K<<10|K>>>22;X=_+1548603684+X+(ca&V|Z&~V)|0;X=(X<<11|X>>>21)+aa|0;Z=Z<<10|Z>>>22;F=ba+1518500249+F+(D&da|K&~D)|0;F=(F<<7|F>>>25)+H|0;da=da<<10|da>>>22;aa=J+1548603684+aa+(X&Z|ca&~Z)|0;aa=(aa<<7|aa>>>25)+V|0;ca=ca<<10|ca>>>22;H=N+1518500249+H+(F&D|da&~F)|0;H=(H<<12|H>>>20)+K|0;D=D<<10|D>>>22;V=R+1548603684+V+(aa&ca|X&~ca)|0;V=(V<<7|V>>>25)+Z|0;X=X<<10|X>>>22;K=G+1518500249+K+(H&F|D&~H)|0;K=(K<<15|K>>>17)+da|0;F=F<<10|F>>>22;Z=W+1548603684+Z+(V&X|aa&~X)|0;Z=(Z<<12|Z>>>20)+ca|0;aa=aa<<10|aa>>>22;da=O+1518500249+da+(K&H|F&~K)|0;da=(da<<9|da>>>23)+D|0;H=H<<10|H>>>22;ca=ba+1548603684+ca+(Z&aa|V&~aa)|0;ca=(ca<<7|ca>>>25)+X|0;V=V<<10|V>>>22;D=Q+1518500249+D+(da&K|H&~da)|0;D=(D<<11|D>>>21)+F|0;K=K<<10|K>>>22;X=S+1548603684+X+(ca&V|Z&~V)|0;X=(X<<6|X>>>26)+aa|0;Z=Z<<10|Z>>>22;F=J+1518500249+F+(D&da|K&~D)|0;F=(F<<7|F>>>25)+H|0;da=da<<10|da>>>22;aa=G+1548603684+aa+(X&Z|ca&~Z)|0;aa=(aa<<15|aa>>>17)+V|0;ca=ca<<10|ca>>>22;H=I+1518500249+H+(F&D|da&~F)|0;H=(H<<13|H>>>19)+K|0;D=D<<10|D>>>22;V=Y+1548603684+V+(aa&ca|X&~ca)|0;V=(V<<13|V>>>19)+Z|0;X=X<<10|X>>>22;L=~H;K=W+1518500249+K+(H&F|D&L)|0;K=(K<<12|K>>>20)+da|0;F=F<<10|F>>>22;Z=Q+1548603684+Z+(V&X|aa&~X)|0;Z=(Z<<11|Z>>>21)+ca|0;aa=aa<<10|aa>>>22;L=E+1859775393+da+((K|L)^F)|0;L=(L<<11|L>>>21)+D|0;H=H<<10|H>>>22;ca=R+1836072691+ca+((Z|~V)^aa)|0;ca=(ca<<9|ca>>>23)+X|0;V=V<<10|V>>>22;D=_+1859775393+D+((L|~K)^H)|0;D=(D<<13|D>>>19)+F|0;K=K<<10|K>>>22;X=O+1836072691+X+((ca|~Z)^V)|0;X=(X<<7|X>>>25)+aa|0;Z=Z<<10|Z>>>22;F=J+1859775393+F+((D|~L)^K)|0;F=(F<<6|F>>>26)+H|0;L=L<<10|L>>>22;aa=Y+1836072691+aa+((X|~ca)^Z)|0;aa=(aa<<15|aa>>>17)+V|0;ca=ca<<10|ca>>>22;H=S+1859775393+H+((F|~D)^L)|0;H=(H<<7|H>>>25)+K|0;D=D<<10|D>>>22;V=E+1836072691+V+((aa|~X)^ca)|0;V=(V<<11|V>>>21)+Z|0;X=X<<10|X>>>22;K=G+1859775393+K+((H|~F)^D)|0;K=(K<<14|K>>>18)+L|0;F=F<<10|F>>>22;Z=U+1836072691+Z+((V|~aa)^X)|0;Z=(Z<<8|Z>>>24)+ca|0;aa=aa<<10|aa>>>22;L=R+1859775393+L+((K|~H)^F)|0;L=(L<<9|L>>>23)+D|0;H=H<<10|H>>>22;ca=J+1836072691+ca+((Z|~V)^aa)|0;ca=(ca<<6|ca>>>26)+X|0;V=V<<10|V>>>22;D=W+1859775393+D+((L|~K)^H)|0;D=(D<<13|D>>>19)+F|0;K=K<<10|K>>>22;X=T+1836072691+X+((ca|~Z)^V)|0;X=(X<<6|X>>>26)+aa|0;Z=Z<<10|Z>>>22;F=Y+1859775393+F+((D|~L)^K)|0;F=(F<<15|F>>>17)+H|0;L=L<<10|L>>>22;aa=G+1836072691+aa+((X|~ca)^Z)|0;aa=(aa<<14|aa>>>18)+V|0;ca=ca<<10|ca>>>22;H=Q+1859775393+H+((F|~D)^L)|0;H=(H<<14|H>>>18)+K|0;D=D<<10|D>>>22;V=I+1836072691+V+((aa|~X)^ca)|0;V=(V<<12|V>>>20)+Z|0;X=X<<10|X>>>22;K=U+1859775393+K+((H|~F)^D)|0;K=(K<<8|K>>>24)+L|0;F=F<<10|F>>>22;Z=W+1836072691+Z+((V|~aa)^X)|0;Z=(Z<<13|Z>>>19)+ca|0;aa=aa<<10|aa>>>22;L=N+1859775393+L+((K|~H)^F)|0;L=(L<<13|L>>>19)+D|0;H=H<<10|H>>>22;ca=ba+1836072691+ca+((Z|~V)^aa)|0;ca=(ca<<5|ca>>>27)+X|0;V=V<<10|V>>>22;D=T+1859775393+D+((L|~K)^H)|0;D=(D<<6|D>>>26)+F|0;K=K<<10|K>>>22;X=Q+1836072691+X+((ca|~Z)^V)|0;X=(X<<14|X>>>18)+aa|0;Z=Z<<10|Z>>>22;F=P+1859775393+F+((D|~L)^K)|0;F=(F<<5|F>>>27)+H|0;L=L<<10|L>>>22;aa=_+1836072691+aa+((X|~ca)^Z)|0;aa=(aa<<13|aa>>>19)+V|0;ca=ca<<10|ca>>>22;H=I+1859775393+H+((F|~D)^L)|0;H=(H<<12|H>>>20)+K|0;D=D<<10|D>>>22;V=N+1836072691+V+((aa|~X)^ca)|0;V=(V<<13|V>>>19)+Z|0;X=X<<10|X>>>22;K=O+1859775393+K+((H|~F)^D)|0;K=(K<<7|K>>>25)+L|0;F=F<<10|F>>>22;Z=S+1836072691+Z+((V|~aa)^X)|0;Z=(Z<<7|Z>>>25)+ca|0;aa=aa<<10|aa>>>22;L=ba+1859775393+L+((K|~H)^F)|0;L=(L<<5|L>>>27)+D|0;H=H<<10|H>>>22;ca=P+1836072691+ca+((Z|~V)^aa)|0;ca=(ca<<5|ca>>>27)+X|0;V=V<<10|V>>>22;D=Y+-1894007588+D+(L&H|K&~H)|0;D=(D<<11|D>>>21)+F|0;K=K<<10|K>>>22;X=W+2053994217+X+(ca&Z|V&~ca)|0;X=(X<<15|X>>>17)+aa|0;Z=Z<<10|Z>>>22;F=G+-1894007588+F+(D&K|L&~K)|0;F=(F<<12|F>>>20)+H|0;L=L<<10|L>>>22;aa=T+2053994217+aa+(X&ca|Z&~X)|0;aa=(aa<<5|aa>>>27)+V|0;ca=ca<<10|ca>>>22;H=I+-1894007588+H+(F&L|D&~L)|0;H=(H<<14|H>>>18)+K|0;D=D<<10|D>>>22;V=S+2053994217+V+(aa&X|ca&~aa)|0;V=(V<<8|V>>>24)+Z|0;X=X<<10|X>>>22;K=_+-1894007588+K+(H&D|F&~D)|0;K=(K<<15|K>>>17)+L|0;F=F<<10|F>>>22;Z=Y+2053994217+Z+(V&aa|X&~V)|0;Z=(Z<<11|Z>>>21)+ca|0;aa=aa<<10|aa>>>22;L=N+-1894007588+L+(K&F|H&~F)|0;L=(L<<14|L>>>18)+D|0;H=H<<10|H>>>22;ca=E+2053994217+ca+(Z&V|aa&~Z)|0;ca=(ca<<14|ca>>>18)+X|0;V=V<<10|V>>>22;D=W+-1894007588+D+(L&H|K&~H)|0;D=(D<<15|D>>>17)+F|0;K=K<<10|K>>>22;X=I+2053994217+X+(ca&Z|V&~ca)|0;X=(X<<14|X>>>18)+aa|0;Z=Z<<10|Z>>>22;F=ba+-1894007588+F+(D&K|L&~K)|0;F=(F<<9|F>>>23)+H|0;L=L<<10|L>>>22;aa=R+2053994217+aa+(X&ca|Z&~X)|0;aa=(aa<<6|aa>>>26)+V|0;ca=ca<<10|ca>>>22;H=S+-1894007588+H+(F&L|D&~L)|0;H=(H<<8|H>>>24)+K|0;D=D<<10|D>>>22;V=N+2053994217+V+(aa&X|ca&~aa)|0;V=(V<<14|V>>>18)+Z|0;X=X<<10|X>>>22;K=P+-1894007588+K+(H&D|F&~D)|0;K=(K<<9|K>>>23)+L|0;F=F<<10|F>>>22;Z=O+2053994217+Z+(V&aa|X&~V)|0;Z=(Z<<6|Z>>>26)+ca|0;aa=aa<<10|aa>>>22;L=E+-1894007588+L+(K&F|H&~F)|0;L=(L<<14|L>>>18)+D|0;H=H<<10|H>>>22;ca=ba+2053994217+ca+(Z&V|aa&~Z)|0;ca=(ca<<9|ca>>>23)+X|0;V=V<<10|V>>>22;D=U+-1894007588+D+(L&H|K&~H)|0;D=(D<<5|D>>>27)+F|0;K=K<<10|K>>>22;X=Q+2053994217+X+(ca&Z|V&~ca)|0;X=(X<<12|X>>>20)+aa|0;Z=Z<<10|Z>>>22;F=R+-1894007588+F+(D&K|L&~K)|0;F=(F<<6|F>>>26)+H|0;L=L<<10|L>>>22;aa=P+2053994217+aa+(X&ca|Z&~X)|0;aa=(aa<<9|aa>>>23)+V|0;ca=ca<<10|ca>>>22;H=J+-1894007588+H+(F&L|D&~L)|0;H=(H<<8|H>>>24)+K|0;D=D<<10|D>>>22;V=G+2053994217+V+(aa&X|ca&~aa)|0;V=(V<<12|V>>>20)+Z|0;X=X<<10|X>>>22;K=O+-1894007588+K+(H&D|F&~D)|0;K=(K<<6|K>>>26)+L|0;F=F<<10|F>>>22;Z=U+2053994217+Z+(V&aa|X&~V)|0;Z=(Z<<5|Z>>>27)+ca|0;aa=aa<<10|aa>>>22;L=T+-1894007588+L+(K&F|H&~F)|0;L=(L<<5|L>>>27)+D|0;H=H<<10|H>>>22;ca=_+2053994217+ca+(Z&V|aa&~Z)|0;ca=(ca<<15|ca>>>17)+X|0;V=V<<10|V>>>22;D=Q+-1894007588+D+(L&H|K&~H)|0;D=(D<<12|D>>>20)+F|0;K=K<<10|K>>>22;X=J+2053994217+X+(ca&Z|V&~ca)|0;X=(X<<8|X>>>24)+aa|0;Z=Z<<10|Z>>>22;F=S+-1454113458+F+(D^(L|~K))|0;F=(F<<9|F>>>23)+H|0;L=L<<10|L>>>22;aa=aa+ba+(ca^Z^X)|0;aa=(aa<<8|aa>>>24)+V|0;ca=ca<<10|ca>>>22;H=N+-1454113458+H+(F^(D|~L))|0;H=(H<<15|H>>>17)+K|0;D=D<<10|D>>>22;V=V+R+(X^ca^aa)|0;V=(V<<5|V>>>27)+Z|0;X=X<<10|X>>>22;K=O+-1454113458+K+(H^(F|~D))|0;K=(K<<5|K>>>27)+L|0;F=F<<10|F>>>22;Z=Z+_+(aa^X^V)|0;Z=(Z<<12|Z>>>20)+ca|0;aa=aa<<10|aa>>>22;L=G+-1454113458+L+(K^(H|~F))|0;L=(L<<11|L>>>21)+D|0;H=H<<10|H>>>22;S=ca+S+(V^aa^Z)|0;S=(S<<9|S>>>23)+X|0;V=V<<10|V>>>22;D=U+-1454113458+D+(L^(K|~H))|0;D=(D<<6|D>>>26)+F|0;K=K<<10|K>>>22;X=X+Y+(Z^V^S)|0;X=(X<<12|X>>>20)+aa|0;Z=Z<<10|Z>>>22;F=ba+-1454113458+F+(D^(L|~K))|0;F=(F<<8|F>>>24)+H|0;L=L<<10|L>>>22;O=aa+O+(S^Z^X)|0;O=(O<<5|O>>>27)+V|0;S=S<<10|S>>>22;H=Q+-1454113458+H+(F^(D|~L))|0;H=(H<<13|H>>>19)+K|0;D=D<<10|D>>>22;V=V+W+(X^S^O)|0;V=(V<<14|V>>>18)+Z|0;X=X<<10|X>>>22;K=_+-1454113458+K+(H^(F|~D))|0;K=(K<<12|K>>>20)+L|0;F=F<<10|F>>>22;U=Z+U+(O^X^V)|0;U=(U<<6|U>>>26)+S|0;O=O<<10|O>>>22;L=J+-1454113458+L+(K^(H|~F))|0;L=(L<<5|L>>>27)+D|0;H=H<<10|H>>>22;S=S+T+(V^O^U)|0;S=(S<<8|S>>>24)+X|0;V=V<<10|V>>>22;D=Y+-1454113458+D+(L^(K|~H))|0;D=(D<<12|D>>>20)+F|0;K=K<<10|K>>>22;Q=X+Q+(U^V^S)|0;Q=(Q<<13|Q>>>19)+O|0;U=U<<10|U>>>22;F=E+-1454113458+F+(D^(L|~K))|0;F=(F<<13|F>>>19)+H|0;L=L<<10|L>>>22;O=O+P+(S^U^Q)|0;O=(O<<6|O>>>26)+V|0;S=S<<10|S>>>22;H=W+-1454113458+H+(F^(D|~L))|0;H=(H<<14|H>>>18)+K|0;D=D<<10|D>>>22;J=V+J+(Q^S^O)|0;J=(J<<5|J>>>27)+U|0;Q=Q<<10|Q>>>22;K=I+-1454113458+K+(H^(F|~D))|0;K=(K<<11|K>>>21)+L|0;F=F<<10|F>>>22;N=U+N+(O^Q^J)|0;N=(N<<15|N>>>17)+S|0;O=O<<10|O>>>22;L=T+-1454113458+L+(K^(H|~F))|0;L=(L<<8|L>>>24)+D|0;H=H<<10|H>>>22;E=S+E+(J^O^N)|0;E=(E<<13|E>>>19)+Q|0;J=J<<10|J>>>22;D=R+-1454113458+D+(L^(K|~H))|0;D=(D<<5|D>>>27)+F|0;K=K<<10|K>>>22;G=Q+G+(N^J^E)|0;G=(G<<11|G>>>21)+O|0;N=N<<10|N>>>22;F=P+-1454113458+F+(D^(L|~K))|0;I=O+I+(E^N^G)|0;c[z>>2]=N+M+(L<<10|L>>>22);c[A>>2]=J+(c[B>>2]|0)+K;c[B>>2]=H+(c[v>>2]|0)+J+(I<<11|I>>>21);c[v>>2]=H+(c[y>>2]|0)+G+(F<<6|F>>>26);c[y>>2]=(E<<10|E>>>22)+a+D;e=e+-1|0;if(!e)break;else b=b+64|0}l=C;return 124}function si(a){a=a|0;var b=0;c[a+160>>2]=1732584193;c[a+164>>2]=-271733879;c[a+168>>2]=-1732584194;c[a+172>>2]=271733878;c[a+176>>2]=-1009589776;b=a+128|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[a+148>>2]=64;c[a+152>>2]=31;return}function ti(a,b){a=a|0;b=b|0;ri(a,b,1)|0;c[b>>2]=c[a+160>>2];c[b+4>>2]=c[a+164>>2];c[b+8>>2]=c[a+168>>2];c[b+12>>2]=c[a+172>>2];c[b+16>>2]=c[a+176>>2];return}function ui(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+192|0;if((l|0)>=(m|0))$(192);g=f;c[g+160>>2]=1732584193;c[g+164>>2]=-271733879;c[g+168>>2]=-1732584194;c[g+172>>2]=271733878;c[g+176>>2]=-1009589776;h=g+128|0;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[g+148>>2]=64;c[g+152>>2]=31;Jm(g,d,e);pi(g);d=g;e=b+20|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));l=f;return}function vi(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;if((l|0)>=(m|0))$(16);r=s;p=(d+7|0)>>>3;c[r>>2]=p;if(!((p|0)!=0&(f+7|0)>>>0<=p>>>0)){b=66;l=s;return b|0}q=$e(p)|0;if(!q){b=Sn()|0;l=s;return b|0}a[q>>0]=0;a[q+1>>0]=2;d=-3-f+p|0;if((d|0)<=0)Ie(38682,38688,95,38701);if(!g){o=Cj(d,1)|0;while(1){g=0;h=0;do{g=((a[o+h>>0]|0)==0&1)+g|0;h=h+1|0}while((h|0)!=(d|0));if(!g)break;g=g+3+((g|0)/128|0)|0;n=Cj(g,1)|0;if(g|0){k=0;do{i=o+k|0;h=a[i>>0]|0;j=g+-1|0;if(!(h<<24>>24)){h=a[n+j>>0]|0;a[i>>0]=h;g=j}k=(h<<24>>24!=0&1)+k|0}while((k|0)<(d|0)&(g|0)!=0)}cf(n)}cr(q+2|0,o|0,d|0)|0;cf(o)}else{if((d|0)!=(h|0)){cf(q);b=45;l=s;return b|0}a:do if(h|0){d=0;while(1){if(!(a[g+d>>0]|0))break;d=d+1|0;if(d>>>0>=h>>>0)break a}cf(q);b=45;l=s;return b|0}while(0);cr(q+2|0,g|0,h|0)|0;d=h}o=d+3|0;a[q+(d+2)>>0]=0;cr(q+o|0,e|0,f|0)|0;if((o+f|0)!=(p|0))Ie(38732,38688,153,38701);d=Sk(b,5,q,p,r)|0;if((d|0)==0?nf(1)|0:0)Se(38744,c[b>>2]|0);cf(q);b=d;l=s;return b|0}function wi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=i;e=(e+7|0)>>>3;c[b>>2]=0;g=$e(e)|0;if(!g){h=Sn()|0;l=i;return h|0}e=Tk(5,g,e,h,f)|0;if(e|0){cf(g);h=e&65535;l=i;return h|0}f=c[h>>2]|0;if(f>>>0<4){cf(g);h=155;l=i;return h|0}j=(a[g>>0]|0)==0;e=j?2:1;c[h>>2]=e;if((a[g+(j&1)>>0]|0)!=2){cf(g);j=155;l=i;return j|0}a:do if(e>>>0<f>>>0)do{if(!(a[g+e>>0]|0))break a;e=e+1|0;c[h>>2]=e}while(e>>>0<f>>>0);while(0);e=e+1|0;if(f>>>0<=e>>>0){cf(g);j=155;l=i;return j|0}c[h>>2]=e;j=f-e|0;dr(g|0,g+e|0,j|0)|0;c[b>>2]=g;c[d>>2]=j;if(!(nf(1)|0)){j=0;l=i;return j|0}Qe(38777,c[b>>2]|0,c[d>>2]|0);j=0;l=i;return j|0}function xi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+112|0;if((l|0)>=(m|0))$(112);n=p+8|0;o=p+4|0;h=p;k=(d+7|0)>>>3;c[o>>2]=k;c[h>>2]=100;d=sh(g)|0;if(th(g,10,n,h)|0){b=69;l=p;return b|0}if((d|0)!=(f|0)){b=70;l=p;return b|0}if(!f){b=66;l=p;return b|0}if((f+4+(c[h>>2]|0)|0)>>>0>k>>>0){b=66;l=p;return b|0}j=_e(k)|0;if(!j){b=Sn()|0;l=p;return b|0}a[j>>0]=0;a[j+1>>0]=1;i=k-f|0;d=c[h>>2]|0;g=i-d|0;h=g+-3|0;if((h|0)<=1)Ie(38831,38688,303,38837);Yq(j+2|0,-1,h|0)|0;a[j+(g+-1)>>0]=0;cr(j+g|0,n|0,d|0)|0;cr(j+i|0,e|0,f|0)|0;d=Sk(b,5,j,k,o)|0;if((d|0)==0?nf(1)|0:0)Se(38868,c[b>>2]|0);cf(j);b=d;l=p;return b|0}function yi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;if((l|0)>=(m|0))$(16);i=k;h=(d+7|0)>>>3;c[i>>2]=h;if((f|0)==0|(f+4|0)>>>0>h>>>0){j=66;l=k;return j|0}j=_e(h)|0;if(!j){j=Sn()|0;l=k;return j|0}a[j>>0]=0;a[j+1>>0]=1;d=h-f|0;g=d+-3|0;if((g|0)<=1)Ie(38831,38688,368,38901);Yq(j+2|0,-1,g|0)|0;a[j+(d+-1)>>0]=0;cr(j+d|0,e|0,f|0)|0;d=Sk(b,5,j,h,i)|0;if(!d)if(!(nf(1)|0))d=0;else{Se(38868,c[b>>2]|0);d=0}else d=d&65535;cf(j);j=d;l=k;return j|0}function zi(b,d,e,f,g,h,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0;o=(d+7|0)>>>3;c[b>>2]=0;d=(h|0)!=0&(i|0)!=0;m=sh(e)|0;if(!(o|0?(o+-2-(m<<1)|0)>>>0>=g>>>0:0)){b=66;return b|0}p=ef(1,o)|0;if(!p){b=Sn()|0;return b|0}l=p+1|0;n=l+m|0;oh(e,n,d?h:71847,d?i:0);i=p+(o+-1-g)|0;a[i>>0]=1;cr(i+1|0,f|0,g|0)|0;do if(!j)Dj(l,m,1);else{if((m|0)==(k|0)){cr(l|0,j|0,k|0)|0;break}cf(p);b=45;return b|0}while(0);h=o-m+-1|0;g=$e(h)|0;if(!g){b=Sn()|0;cf(p);return b|0}d=Ai(g,h,l,m,e)|0;if(d|0){cf(g);cf(p);b=d;return b|0}i=m+1|0;if(i>>>0<o>>>0){d=i;f=g;while(1){l=p+d|0;a[l>>0]=a[l>>0]^a[f>>0];d=d+1|0;if((d|0)==(o|0))break;else f=f+1|0}}cf(g);g=$e(m)|0;if(!g){b=Sn()|0;cf(p);return b|0}d=Ai(g,m,n,h,e)|0;if(d|0){cf(g);cf(p);b=d;return b|0}if(i>>>0>1){d=1;f=g;while(1){e=p+d|0;a[e>>0]=a[e>>0]^a[f>>0];d=d+1|0;if((d|0)==(i|0))break;else f=f+1|0}}cf(g);d=Sk(b,5,p,o,0)|0;if((d|0)==0?nf(1)|0:0)Se(38936,c[b>>2]|0);cf(p);b=d;return b|0}function Ai(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;q=l;l=l+16|0;if((l|0)>=(m|0))$(16);o=q;p=q+4|0;h=eh(o,g,0)|0;if(h|0){p=h;l=q;return p|0}n=sh(g)|0;if(d|0){i=p+1|0;j=p+2|0;k=p+3|0;g=0;h=0;while(1){if(h|0)ih(c[o>>2]|0);a[p>>0]=h>>>24;a[i>>0]=h>>>16;a[j>>0]=h>>>8;a[k>>0]=h;lh(c[o>>2]|0,e,f);lh(c[o>>2]|0,p,4);s=ph(c[o>>2]|0,0)|0;r=d-g|0;r=r>>>0<n>>>0?r:n;cr(b+g|0,s|0,r|0)|0;g=r+g|0;if(g>>>0>=d>>>0)break;else h=h+1|0}}kh(c[o>>2]|0);s=0;l=q;return s|0}function Bi(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+16|0;if((l|0)>=(m|0))$(16);q=r;c[q>>2]=0;j=(e+7|0)>>>3;c[b>>2]=0;k=(h|0)!=0&(i|0)!=0;e=sh(f)|0;p=_e(e)|0;if(!p){q=Sn()|0;l=r;return q|0}oh(f,p,k?h:71847,k?i:0);if(Vk(q,0,g,j)|0){cf(p);q=155;l=r;return q|0}if(j>>>0<((e<<1)+2|0)>>>0){cf(c[q>>2]|0);cf(p);q=155;l=r;return q|0}j=j+-1|0;n=$e(j)|0;if(!n){d=Sn()|0;cf(c[q>>2]|0);cf(p);q=d;l=r;return q|0}o=n+e|0;k=(c[q>>2]|0)+1|0;g=k+e|0;i=j-e|0;h=(Ai(n,e,g,i,f)|0)!=0&1;if(e|0){j=0;do{s=n+j|0;a[s>>0]=a[s>>0]^a[k+j>>0];j=j+1|0}while((j|0)!=(e|0))}k=Ai(o,i,n,e,f)|0;if(i|0){j=0;do{s=o+j|0;a[s>>0]=a[s>>0]^a[g+j>>0];j=j+1|0}while((j|0)!=(i|0))}j=Tp(p,o,e)|0;a:do if(e>>>0<i>>>0)do{if((a[o+e>>0]|0)==1)break a;e=e+1|0}while(e>>>0<i>>>0);while(0);s=(a[c[q>>2]>>0]|0)==0;cf(p);cf(c[q>>2]|0);if(!((k|h|j|0)==0&(e|0)!=(i|0)&s)){cf(n);s=155;l=r;return s|0}q=e+1|0;s=i-q|0;dr(n|0,o+q|0,s|0)|0;c[b>>2]=n;c[d>>2]=s;if(!(nf(1)|0)){s=0;l=r;return s|0}Qe(38954,c[b>>2]|0,c[d>>2]|0);s=0;l=r;return s|0}function Ci(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;n=(e+7|0)>>>3;l=sh(f)|0;if(!l)Ie(38993,38688,800,38998);q=i+8+l|0;t=n-l+-1|0;m=q+t|0;v=_e(m)|0;if(!v){v=Sn()|0;return v|0}p=v+8|0;r=p+l|0;o=r+i|0;do if((l|0)==(h|0)){cr(p|0,g|0,h|0)|0;if(n>>>0<(i+2+h|0)>>>0)o=66;else{u=_e(n)|0;if(!u){o=Sn()|0;break}p=u+n+-1+(0-h)|0;do if(i){if(!j){Dj(r,i,1);s=14;break}if((k|0)==(i|0)){cr(r|0,j|0,i|0)|0;s=14;break}else{o=45;l=u;break}}else s=14;while(0);if((s|0)==14){s=v;l=s;a[l>>0]=0;a[l+1>>0]=0;a[l+2>>0]=0;a[l+3>>0]=0;s=s+4|0;a[s>>0]=0;a[s+1>>0]=0;a[s+2>>0]=0;a[s+3>>0]=0;oh(f,p,v,q);s=p+(0-i)+-1|0;l=u;Yq(u|0,0,s-l|0)|0;a[s>>0]=1;cr(s+1|0,r|0,i|0)|0;Ai(o,t,p,h,f)|0;if(t|0){p=0;while(1){s=u+p|0;a[s>>0]=a[s>>0]^a[o>>0];p=p+1|0;if((p|0)==(t|0))break;else o=o+1|0}}a[u>>0]=(d[u>>0]|0)&255>>>((n<<3)-e|0);a[u+(n+-1)>>0]=-68;o=Sk(b,5,u,n,0)|0;if(!o)if(!(nf(1)|0))o=0;else{Se(39019,c[b>>2]|0);o=0}}if((n|0)!=0&(l&7|0)!=0){l=u;do{a[l>>0]=0;l=l+1|0;n=n+-1|0}while((n|0)!=0&(l&7|0)!=0)}else l=u;if(n>>>0>=8){g=n+-8|0;q=g&-8;j=q+8|0;p=l;while(1){b=p;c[b>>2]=0;c[b+4>>2]=0;n=n+-8|0;if(n>>>0<=7)break;else p=p+8|0}n=g-q|0;l=l+j|0}if(n|0)while(1){a[l>>0]=0;n=n+-1|0;if(!n)break;else l=l+1|0}cf(u)}}else o=139;while(0);if((m|0)!=0&(v&7|0)!=0){l=v;do{a[l>>0]=0;l=l+1|0;m=m+-1|0}while((m|0)!=0&(l&7|0)!=0)}else l=v;if(m>>>0>=8){p=m+-8|0;g=p&-8;q=g+8|0;n=l;while(1){u=n;c[u>>2]=0;c[u+4>>2]=0;m=m+-8|0;if(m>>>0<=7)break;else n=n+8|0}m=p-g|0;l=l+q|0}if(m|0)while(1){a[l>>0]=0;m=m+-1|0;if(!m)break;else l=l+1|0}cf(v);v=o;return v|0}function Di(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if((l|0)>=(m|0))$(16);v=x;c[v>>2]=0;j=(f+7|0)>>>3;s=sh(g)|0;if(!s)Ie(38993,38688,926,39036);q=h+8+s|0;n=j-s|0;o=n+-1|0;i=(q>>>0<o>>>0?o:q)+s|0;w=_e(i)|0;u=(w|0)!=0;if(u){k=0-s|0;r=w+i+k|0;b=Vk(0,r,b,s)|0;if(!b){b=Vk(v,0,e,j)|0;if(!b)if(j>>>0>=(h+2+s|0)>>>0){b=c[v>>2]|0;if((a[b+(j+-1)>>0]|0)==-68){p=b+j+-1+k|0;k=255>>>((j<<3)-f|0);if(!(d[b>>0]&~k)){Ai(w,o,p,s,g)|0;if(o|0){b=w;e=0;while(1){f=(c[v>>2]|0)+e|0;a[f>>0]=a[f>>0]^a[b>>0];e=e+1|0;if((e|0)==(o|0))break;else b=b+1|0}}f=c[v>>2]|0;a[f>>0]=d[f>>0]&k;k=n-h|0;f=k+-2|0;a:do if(!f)b=0;else{e=c[v>>2]|0;b=0;do{if(a[e+b>>0]|0)break a;b=b+1|0}while(b>>>0<f>>>0)}while(0);if((b|0)==(f|0)){b=c[v>>2]|0;if((a[b+f>>0]|0)==1){t=w;o=t;a[o>>0]=0;a[o+1>>0]=0;a[o+2>>0]=0;a[o+3>>0]=0;t=t+4|0;a[t>>0]=0;a[t+1>>0]=0;a[t+2>>0]=0;a[t+3>>0]=0;t=w+8|0;cr(t|0,r|0,s|0)|0;cr(t+s|0,b+(k+-1)|0,h|0)|0;oh(g,w,w,q);b=(Tp(p,w,s)|0)!=0;b=b?8:0;t=19}else o=8}else{b=8;t=19}}else{b=8;t=19}}else o=8}else{b=66;t=19}else t=19}else t=19}else{b=Sn()|0;t=19}if((t|0)==19){o=b;b=c[v>>2]|0}if(b|0){if((j|0)!=0&(b&7|0)!=0)do{a[b>>0]=0;b=b+1|0;j=j+-1|0}while((j|0)!=0&(b&7|0)!=0);if(j>>>0>=8){k=j+-8|0;f=k&-8;n=f+8|0;e=b;while(1){t=e;c[t>>2]=0;c[t+4>>2]=0;j=j+-8|0;if(j>>>0<=7)break;else e=e+8|0}j=k-f|0;b=b+n|0}if(j|0)while(1){a[b>>0]=0;j=j+-1|0;if(!j)break;else b=b+1|0}cf(c[v>>2]|0)}if(!u){l=x;return o|0}if((i|0)!=0&(w&7|0)!=0){b=w;do{a[b>>0]=0;b=b+1|0;i=i+-1|0}while((i|0)!=0&(b&7|0)!=0)}else b=w;if(i>>>0>=8){e=i+-8|0;k=e&-8;f=k+8|0;j=b;while(1){v=j;c[v>>2]=0;c[v+4>>2]=0;i=i+-8|0;if(i>>>0<=7)break;else j=j+8|0}i=e-k|0;b=b+f|0}if(i|0)while(1){a[b>>0]=0;i=i+-1|0;if(!i)break;else b=b+1|0}cf(w);l=x;return o|0}function Ei(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+176|0;if((l|0)>=(m|0))$(176);C=F+8|0;A=F;s=F+164|0;t=F+160|0;u=F+156|0;v=F+152|0;w=F+148|0;x=F+144|0;n=F+88|0;i=F+84|0;k=F+80|0;D=F+56|0;j=F+48|0;E=F+44|0;c[j>>2]=0;c[E>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;c[D+16>>2]=0;c[D+20>>2]=0;e=Fh(a,i)|0;if(e|0){E=e;l=F;return E|0}e=Gh(a,k)|0;if(e|0){E=e;l=F;return E|0}e=uf(a,46885,0)|0;if(e|0?(f=Eh(e,j,0)|0,sf(e),f|0):0){E=f;l=F;return E|0}if((a|0)!=0?(g=uf(a,41502,0)|0,(g|0)!=0):0){z=g;B=11}else B=7;do if((B|0)==7){e=uf(a,41515,0)|0;if(e|0){c[j>>2]=c[j>>2]|64;sf(e)}if((c[j>>2]&64|0)==0?(gg()|0)==0:0){if((c[j>>2]&32|0)==0?(h=uf(a,48632,0)|0,h|0):0){c[j>>2]=c[j>>2]|32;sf(h)}e=c[i>>2]|0;f=c[k>>2]|0;d=(c[j>>2]|0)>>>5&1;if(gg()|0?!(e>>>0>1023&(d|0)==0):0){d=55;break}a=2-d|0;q=(e&1)+e|0;d=(f|0)==1?65537:f;p=ll(1)|0;if(!d){El(p,41)|0;g=Hl(q)|0;f=q>>>1;e=0;d=0;do{if(e|0)Jl(e);if(d|0)Jl(d);e=yh(f,a,0,0)|0;d=yh(f,a,0,0)|0;if((wk(e,d)|0)>0)Fl(e,d);Kk(g,e,d)}while((lk(g)|0)!=(q|0));f=0}else{El(p,d|1)|0;g=Hl(q)|0;f=q>>>1;e=0;d=0;do{if(e|0)Jl(e);if(d|0)Jl(d);e=yh(f,a,6,p)|0;d=yh(f,a,6,p)|0;if((wk(e,d)|0)>0)Fl(e,d);Kk(g,e,d)}while((lk(g)|0)!=(q|0));f=1}h=e+4|0;a=nl(c[h>>2]|0)|0;h=nl(c[h>>2]|0)|0;i=Il(q)|0;j=Il(q)|0;k=Il(q)|0;gk(a,e,1);gk(h,d,1);Kk(i,a,h);Ek(j,a,h)|0;Bk(k,i,j);if(!(Ek(a,p,i)|0))if(f)He(41560,287,41812);else do ek(p,p,2);while(!(Ek(a,p,i)|0));n=Il(q)|0;Fk(n,p,k)|0;o=Il(q)|0;Fk(o,e,d)|0;if(nf(1)|0){Se(41825,e);Se(41831,d);Se(41837,i);Se(41843,j);Se(41849,k);Se(41855,g);Se(41861,p);Se(41867,n);Se(41873,o)}Jl(a);Jl(h);Jl(i);Jl(k);Jl(j);c[D>>2]=g;h=D+4|0;c[h>>2]=p;g=D+12|0;c[g>>2]=e;f=D+16|0;c[f>>2]=d;a=D+8|0;c[a>>2]=n;d=D+20|0;c[d>>2]=o;if(!(Oi(D,q+-64|0)|0)){e=D;B=86}else{Jl(c[D>>2]|0);c[D>>2]=0;Jl(c[h>>2]|0);c[h>>2]=0;Jl(c[g>>2]|0);c[g>>2]=0;Jl(c[f>>2]|0);c[f>>2]=0;Jl(c[a>>2]|0);c[a>>2]=0;Jl(c[d>>2]|0);c[d>>2]=0;kg(41560,334,41812,0,41745);d=50}}else{z=0;B=11}}while(0);if((B|0)==11){y=c[i>>2]|0;k=c[k>>2]|0;k=(k|0)==1?65537:k;if(!(y>>>0<1024|(y&255|0)!=0|k>>>0<3|(k&1|0)==0)){c[s>>2]=0;c[t>>2]=0;c[u>>2]=0;c[v>>2]=0;c[w>>2]=0;c[x>>2]=0;a:do if(!z){e=y>>>1;f=Il(e)|0;Kl(f,e,2);g=e+-1|0;ok(f,g);a=e+-2|0;nk(f,a);if((lk(f)|0)!=(e|0))Ie(41524,41560,360,41566);c[u>>2]=f;h=Il(e)|0;i=e+-100|0;j=0;do{Jl(j);j=Il(e)|0;Kl(j,e,2);ok(j,g);nk(j,a);if((lk(j)|0)!=(e|0)){B=17;break}c[x>>2]=j;hk(h,f,j)}while((lk(h)|0)>>>0<=i>>>0);if((B|0)==17)Ie(41524,41560,360,41566);Jl(h);e=Il(101)|0;Kl(e,101,2);ok(e,100);if((lk(e)|0)!=101)Ie(41583,41560,375,41617);c[s>>2]=e;e=Il(101)|0;Kl(e,101,2);ok(e,100);if((lk(e)|0)!=101)Ie(41583,41560,375,41617);c[t>>2]=e;e=Il(101)|0;Kl(e,101,2);ok(e,100);if((lk(e)|0)!=101)Ie(41583,41560,375,41617);c[v>>2]=e;e=Il(101)|0;Kl(e,101,2);ok(e,100);if((lk(e)|0)==101){c[w>>2]=e;B=39;break}else Ie(41583,41560,375,41617)}else{d=n+4|0;e=d+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[n>>2]=41634;c[n+8>>2]=41638;c[n+16>>2]=41642;c[n+24>>2]=41645;c[n+32>>2]=41649;c[n+40>>2]=41653;c[d>>2]=s;c[n+12>>2]=t;c[n+20>>2]=u;c[n+28>>2]=v;c[n+36>>2]=w;c[n+44>>2]=x;e=0;d=41634;do{d=uf(z,d,0)|0;if(d|0){r=Af(d,1,5)|0;c[c[n+(e<<3)+4>>2]>>2]=r;sf(d)}e=e+1|0;d=c[n+(e<<3)>>2]|0}while((d|0)!=0);d=c[s>>2]|0;b:do if(d|0){e=1;do{if(!(c[c[n+(e<<3)+4>>2]>>2]|0))break b;e=e+1|0}while((c[n+(e<<3)>>2]|0)!=0);B=39;break a}while(0);Jl(d);d=1;do{Jl(c[c[n+(d<<3)+4>>2]>>2]|0);d=d+1|0}while((c[n+(d<<3)>>2]|0)!=0);q=0;r=0;p=0;o=0;d=128}while(0);if((B|0)==39){f=kl(k)|0;d=Ch(c[u>>2]|0,c[s>>2]|0,c[t>>2]|0,f,0,0)|0;e=Ch(c[x>>2]|0,c[v>>2]|0,c[w>>2]|0,f,0,0)|0;Jl(c[u>>2]|0);c[u>>2]=0;Jl(c[s>>2]|0);c[s>>2]=0;Jl(c[t>>2]|0);c[t>>2]=0;Jl(c[x>>2]|0);c[x>>2]=0;Jl(c[v>>2]|0);c[v>>2]=0;Jl(c[w>>2]|0);c[w>>2]=0;if((d|0)!=0&(e|0)!=0){q=d;r=e;p=f;o=1;d=128}else{Jl(d);Jl(e);Jl(f);q=d;r=e;p=f;o=0;d=21}}if(o){if((wk(q,r)|0)>0){Fl(q,r);e=1}else e=0;d=Hl(y)|0;Kk(d,q,r);f=y>>>1;j=Il(f)|0;f=Il(f)|0;g=Il(y)|0;gk(j,q,1);gk(f,r,1);Kk(g,j,f);i=Il(y)|0;if(!(Ek(i,p,g)|0))Ie(41656,41560,541,41690);Ek(i,j,f)|0;Jl(f);Bk(j,g,i);Jl(g);Fk(i,p,j)|0;Fk(j,q,r)|0;if(nf(1)|0){if(e|0)Oe(41704,A);Se(45379,q);Se(41725,r);Se(41729,d);Se(41733,p);Se(41737,i);Se(41741,j)}c[D>>2]=d;h=D+4|0;c[h>>2]=p;a=D+12|0;c[a>>2]=q;g=D+16|0;c[g>>2]=r;f=D+8|0;c[f>>2]=i;d=D+20|0;c[d>>2]=j;if(!(Oi(D,y+-64|0)|0))d=0;else{Jl(c[D>>2]|0);c[D>>2]=0;Jl(c[h>>2]|0);c[h>>2]=0;Jl(c[a>>2]|0);c[a>>2]=0;Jl(c[g>>2]|0);c[g>>2]=0;Jl(c[f>>2]|0);c[f>>2]=0;Jl(c[d>>2]|0);c[d>>2]=0;kg(41560,586,41690,0,41745);d=50}}else e=0}else{e=0;d=55}sf(z);if((e|0)!=0&(d|0)==0)d=tf(E,41783,0,1)|0;if(!d){h=D+4|0;a=D+8|0;g=D+12|0;f=D+16|0;d=D+20|0;e=D;B=86}}if((B|0)==86){w=c[e>>2]|0;x=c[h>>2]|0;y=c[a>>2]|0;z=c[g>>2]|0;A=c[f>>2]|0;B=c[d>>2]|0;d=c[E>>2]|0;c[C>>2]=w;c[C+4>>2]=x;c[C+8>>2]=w;c[C+12>>2]=x;c[C+16>>2]=y;c[C+20>>2]=z;c[C+24>>2]=A;c[C+28>>2]=B;c[C+32>>2]=d;d=Df(b,0,41879,C)|0}tl(c[D>>2]|0);tl(c[D+4>>2]|0);tl(c[D+12>>2]|0);tl(c[D+16>>2]|0);tl(c[D+8>>2]|0);tl(c[D+20>>2]|0);sf(c[E>>2]|0);E=d;l=F;return E|0}function Fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+64|0;if((l|0)>=(m|0))$(64);i=j+32|0;k=j;b=j+40|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;d=b+4|0;e=b+8|0;f=b+12|0;g=b+16|0;h=b+20|0;c[k>>2]=b;c[k+4>>2]=d;c[k+8>>2]=e;c[k+12>>2]=f;c[k+16>>2]=g;c[k+20>>2]=h;c[k+24>>2]=0;a=If(a,0,39064,k)|0;if(!a){k=ll(c[(c[f>>2]|0)+4>>2]<<1)|0;Kk(k,c[f>>2]|0,c[g>>2]|0);a=wk(k,c[b>>2]|0)|0;tl(k);a=(a|0)==0?0:7}Jl(c[b>>2]|0);Jl(c[d>>2]|0);Jl(c[e>>2]|0);Jl(c[f>>2]|0);Jl(c[g>>2]|0);Jl(c[h>>2]|0);if(!(nf(1)|0)){l=j;return a|0}c[i>>2]=Pn(a)|0;Oe(41480,i);l=j;return a|0}function Gi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+96|0;if((l|0)>=(m|0))$(96);o=p+40|0;g=p+32|0;i=p+24|0;h=p+8|0;j=p+48|0;k=p+44|0;n=p;c[k>>2]=0;e=n;c[e>>2]=0;c[e+4>>2]=0;e=uf(d,39075,1)|0;if(!e)e=0;else{f=Af(e,1,5)|0;sf(e);if(!f)e=0;else e=lk(f)|0;Jl(f)}Jh(j,0,e);e=Lh(b,k,j)|0;do if(!e){if(nf(1)|0)Se(41350,c[k>>2]|0);b=c[k>>2]|0;if(b|0?c[b+12>>2]&4|0:0){f=0;e=79;break}f=n+4|0;c[h>>2]=n;c[h+4>>2]=f;c[h+8>>2]=0;e=If(d,0,39061,h)|0;if(!e){if(nf(1)|0){Se(41367,c[n>>2]|0);Se(41384,c[f>>2]|0)}b=Hl(0)|0;e=c[k>>2]|0;if((b|0)==(e|0)){d=ll(c[b+4>>2]<<1)|0;Mk(d,b,c[f>>2]|0,c[n>>2]|0);Al(b,d)|0;tl(d)}else Mk(b,e,c[f>>2]|0,c[n>>2]|0);if(nf(1)|0)Se(41401,b);if(!(c[j+12>>2]&4)){c[g>>2]=b;f=b;e=Df(a,0,41438,g)|0;break}f=((lk(c[n>>2]|0)|0)+7|0)>>>3;e=Vk(h,0,b,f)|0;if(!e){e=c[h>>2]|0;c[i>>2]=f;c[i+4>>2]=e;e=Df(a,0,41418,i)|0;cf(c[h>>2]|0)}f=b}else f=0}else f=0;while(0);Jl(f);Jl(c[n>>2]|0);Jl(c[n+4>>2]|0);Jl(c[k>>2]|0);Kh(j);if(!(nf(1)|0)){l=p;return e|0}c[o>>2]=Pn(e)|0;Oe(41458,o);l=p;return e|0}function Hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+160|0;if((l|0)>=(m|0))$(160);v=w+64|0;k=w+56|0;p=w+48|0;o=w+40|0;j=w+8|0;g=w;q=w+112|0;r=w+108|0;s=w+104|0;t=w+80|0;u=w+72|0;n=w+68|0;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[u>>2]=0;c[n>>2]=0;e=uf(d,39075,1)|0;if(!e)e=0;else{f=Af(e,1,5)|0;sf(e);if(!f)e=0;else e=lk(f)|0;Jl(f)}Jh(q,1,e);e=Ih(b,7604,r,q)|0;a:do if(!e){e=c[r>>2]|0;c[g>>2]=s;c[g+4>>2]=0;e=If(e,0,39071,g)|0;if(!e){if(nf(1)|0)Se(41178,c[s>>2]|0);i=c[s>>2]|0;if(i|0?c[i+12>>2]&4|0:0){f=0;e=79;break}i=t+4|0;f=t+8|0;b=t+12|0;g=t+16|0;h=t+20|0;c[j>>2]=t;c[j+4>>2]=i;c[j+8>>2]=f;c[j+12>>2]=b;c[j+16>>2]=g;c[j+20>>2]=h;c[j+24>>2]=0;e=If(d,0,40995,j)|0;if(!e){if(nf(1)|0?(Se(41195,c[t>>2]|0),Se(41212,c[i>>2]|0),(gg()|0)==0):0){Se(41229,c[f>>2]|0);Se(41246,c[b>>2]|0);Se(41263,c[g>>2]|0);Se(41280,c[h>>2]|0)}kk(c[s>>2]|0);e=c[s>>2]|0;xk(e,e,c[t>>2]|0);e=q+4|0;f=Il(c[e>>2]|0)|0;b=q+12|0;if(!(c[b>>2]&1)){g=Il(c[e>>2]|0)|0;h=Il(c[e>>2]|0)|0;d=Il(c[e>>2]|0)|0;do{Kl(g,c[e>>2]|0,0);Gk(g,g,c[t>>2]|0)}while(!(Fk(h,g,c[t>>2]|0)|0));Mk(d,g,c[i>>2]|0,c[t>>2]|0);Lk(d,d,c[s>>2]|0,c[t>>2]|0);Ni(f,d,t);Jl(d);Lk(f,f,h,c[t>>2]|0);Jl(g);Jl(h)}else Ni(f,c[s>>2]|0,t);if(nf(1)|0)Se(41297,f);switch(c[q+8>>2]|0){case 1:{e=wi(u,n,c[e>>2]|0,f)|0;tl(f);if(e|0){f=0;break a}f=c[u>>2]|0;c[o>>2]=c[n>>2];c[o+4>>2]=f;f=0;e=Df(a,0,41314,o)|0;break a}case 3:{e=Bi(u,n,c[e>>2]|0,c[q+16>>2]|0,f,c[q+20>>2]|0,c[q+24>>2]|0)|0;tl(f);if(e|0){f=0;break a}f=c[u>>2]|0;c[p>>2]=c[n>>2];c[p+4>>2]=f;f=0;e=Df(a,0,41314,p)|0;break a}default:{e=c[b>>2]&8|0?41325:47780;c[k>>2]=f;e=Df(a,0,e,k)|0;break a}}}else f=0}else f=0}else f=0;while(0);cf(c[u>>2]|0);Jl(f);Jl(c[t>>2]|0);Jl(c[t+4>>2]|0);Jl(c[t+8>>2]|0);Jl(c[t+12>>2]|0);Jl(c[t+16>>2]|0);Jl(c[t+20>>2]|0);Jl(c[s>>2]|0);Jl(0);Jl(0);Jl(0);sf(c[r>>2]|0);Kh(q);if(!(nf(1)|0)){l=w;return e|0}c[v>>2]=Pn(e)|0;Oe(41328,v);l=w;return e|0}function Ii(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+128|0;if((l|0)>=(m|0))$(128);r=s+48|0;j=s+40|0;n=s+32|0;k=s;o=s+88|0;p=s+80|0;q=s+56|0;c[p>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;c[q+20>>2]=0;e=uf(d,39075,1)|0;if(!e)e=0;else{f=Af(e,1,5)|0;sf(e);if(!f)e=0;else e=lk(f)|0;Jl(f)}Jh(o,2,e);e=Lh(b,p,o)|0;do if(!e){if(nf(1)|0)Se(40979,c[p>>2]|0);i=c[p>>2]|0;if(i|0?c[i+12>>2]&4|0:0){f=0;e=79;break}f=q+4|0;b=q+8|0;g=q+12|0;h=q+16|0;i=q+20|0;c[k>>2]=q;c[k+4>>2]=f;c[k+8>>2]=b;c[k+12>>2]=g;c[k+16>>2]=h;c[k+20>>2]=i;c[k+24>>2]=0;e=If(d,0,40995,k)|0;if(!e){if(nf(1)|0?(Se(41005,c[q>>2]|0),Se(41021,c[f>>2]|0),(gg()|0)==0):0){Se(41037,c[b>>2]|0);Se(41053,c[g>>2]|0);Se(41069,c[h>>2]|0);Se(41085,c[i>>2]|0)}b=Hl(0)|0;Ni(b,c[p>>2]|0,q);if(nf(1)|0)Se(41101,b);if(!(c[o+12>>2]&4)){c[j>>2]=b;f=b;e=Df(a,0,41137,j)|0;break}f=((lk(c[q>>2]|0)|0)+7|0)>>>3;e=Vk(k,0,b,f)|0;if(!e){e=c[k>>2]|0;c[n>>2]=f;c[n+4>>2]=e;e=Df(a,0,41117,n)|0;cf(c[k>>2]|0)}f=b}else f=0}else f=0;while(0);Jl(f);Jl(c[q>>2]|0);Jl(c[q+4>>2]|0);Jl(c[q+8>>2]|0);Jl(c[q+12>>2]|0);Jl(c[q+16>>2]|0);Jl(c[q+20>>2]|0);Jl(c[p>>2]|0);Kh(o);if(!(nf(1)|0)){l=s;return e|0}c[r>>2]=Pn(e)|0;Oe(41157,r);l=s;return e|0}function Ji(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0;q=l;l=l+96|0;if((l|0)>=(m|0))$(96);p=q+32|0;h=q+16|0;g=q+8|0;i=q+48|0;j=q+44|0;k=q+40|0;n=q+36|0;o=q;c[j>>2]=0;c[k>>2]=0;c[n>>2]=0;e=o;c[e>>2]=0;c[e+4>>2]=0;e=uf(d,39075,1)|0;if(!e)e=0;else{f=Af(e,1,5)|0;sf(e);if(!f)e=0;else e=lk(f)|0;Jl(f)}Jh(i,3,e);f=Lh(b,n,i)|0;do if(!f){if(nf(1)|0)Se(40878,c[n>>2]|0);b=c[n>>2]|0;if(b|0?c[b+12>>2]&4|0:0){b=0;f=79;break}f=Hh(a,7604,j,0)|0;if(!f){f=c[j>>2]|0;c[g>>2]=k;c[g+4>>2]=0;f=If(f,0,39073,g)|0;if(!f){if(nf(1)|0)Se(40894,c[k>>2]|0);b=o+4|0;c[h>>2]=o;c[h+4>>2]=b;c[h+8>>2]=0;f=If(d,0,39061,h)|0;if(!f){if(nf(1)|0){Se(40910,c[o>>2]|0);Se(40926,c[b>>2]|0)}f=Hl(0)|0;e=c[k>>2]|0;if((f|0)==(e|0)){h=ll(c[f+4>>2]<<1)|0;Mk(h,f,c[b>>2]|0,c[o>>2]|0);Al(f,h)|0;tl(h)}else Mk(f,e,c[b>>2]|0,c[o>>2]|0);if(nf(1)|0)Se(40942,f);e=c[i+32>>2]|0;if(!e){h=(wk(f,c[n>>2]|0)|0)!=0;b=f;f=h?8:0;break}else{b=f;f=yb[e&7](i,f)|0;break}}else b=0}else b=0}else b=0}else b=0;while(0);Jl(b);Jl(c[o>>2]|0);Jl(c[o+4>>2]|0);Jl(c[n>>2]|0);Jl(c[k>>2]|0);sf(c[j>>2]|0);Kh(i);if(!(nf(1)|0)){l=q;return f|0}if(!f)e=47183;else e=Pn(f)|0;c[p>>2]=e;Oe(40958,p);l=q;return f|0}function Ki(a){a=a|0;var b=0;a=uf(a,39075,1)|0;if(!a){b=0;return b|0}b=Af(a,1,5)|0;sf(a);if(!b)a=0;else a=lk(b)|0;Jl(b);b=a;return b|0}function Li(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+32|0;if((l|0)>=(m|0))$(32);f=q;j=q+20|0;k=q+16|0;n=q+12|0;o=q+8|0;p=q+4|0;if((a|0)!=1){r=4;l=q;return r|0}c[o>>2]=0;c[p>>2]=0;b=Ff(o,0,39077,1029)|0;do if(!b){b=Ff(p,0,40107,316)|0;if(!b){b=Uh(c[o>>2]|0)|0;if(b|0){b=Pn(b)|0;a=40842;r=28;break}b=c[p>>2]|0;a=c[o>>2]|0;c[j>>2]=0;c[k>>2]=0;c[n>>2]=0;if((Ff(j,0,40424,75)|0)==0?(Ff(k,0,40500,75)|0)==0:0)if(!(Sh(n,c[j>>2]|0,a)|0))if(!(Th(c[n>>2]|0,c[j>>2]|0,b)|0)){b=((Th(c[n>>2]|0,c[k>>2]|0,b)|0)&65535|0)==8;b=b?0:40576}else b=40641;else b=40626;else b=40603;sf(c[n>>2]|0);sf(c[k>>2]|0);sf(c[j>>2]|0);if(!b){b=c[p>>2]|0;a=c[o>>2]|0;c[j>>2]=0;c[k>>2]=0;c[n>>2]=0;g=Hl(1e3)|0;Kl(g,1e3,0);c[f>>2]=g;if(!(Df(j,0,40655,f)|0))if(!(Ph(k,c[j>>2]|0,b)|0)){b=uf(c[k>>2]|0,40685,0)|0;if((((b|0)!=0?(h=uf(b,40693,0)|0,sf(b),(h|0)!=0):0)?(i=uf(h,39071,0)|0,sf(h),(i|0)!=0):0)?(e=Af(i,1,0)|0,sf(i),(e|0)!=0):0)if(wk(g,e)|0)if(!(Rh(n,c[k>>2]|0,a)|0)){b=uf(c[n>>2]|0,40697,0)|0;if(!b)a=Af(c[n>>2]|0,0,5)|0;else a=Af(b,1,5)|0;if(!a){f=b;b=40804;a=0}else{i=(wk(g,a)|0)==0;f=b;b=i?0:40703}}else{f=0;b=40789;a=0}else{f=0;b=40760;a=0}else{f=0;e=0;b=40727;a=0}}else{f=0;e=0;b=40712;a=0}else{f=0;e=0;b=40603;a=0}sf(f);Jl(a);sf(c[n>>2]|0);Jl(e);sf(c[k>>2]|0);sf(c[j>>2]|0);Jl(g);if(!b){sf(c[p>>2]|0);sf(c[o>>2]|0);b=0}else{a=40863;r=28}}else{a=40858;r=28}}else r=4}else r=4;while(0);if((r|0)==4){b=Pn(b)|0;a=40834;r=28}if((r|0)==28){sf(c[p>>2]|0);sf(c[o>>2]|0);if(!d)b=50;else{zb[d&1](40871,1,a,b);b=50}}r=b;l=q;return r|0}function Mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=f;b=uf(b,39075,1)|0;do if(b){d=xf(b,1,e)|0;if(!d){sf(b);b=68;break}else{lh(a,d,c[e>>2]|0);sf(b);b=0;break}}else b=68;while(0);l=f;return b|0}function Ni(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;kk(b);h=d+12|0;if((c[h>>2]|0?(i=d+16|0,c[i>>2]|0):0)?(j=d+20|0,c[j>>2]|0):0){e=nl((c[(c[d>>2]|0)+4>>2]|0)+1|0)|0;f=nl((c[(c[d>>2]|0)+4>>2]|0)+1|0)|0;g=nl((c[(c[d>>2]|0)+4>>2]|0)+1|0)|0;gk(g,c[h>>2]|0,1);d=d+8|0;xk(g,c[d>>2]|0,g);Mk(e,b,g,c[h>>2]|0);gk(g,c[i>>2]|0,1);xk(g,c[d>>2]|0,g);Mk(f,b,g,c[i>>2]|0);hk(g,f,e);if(c[g+8>>2]|0)fk(g,g,c[i>>2]|0);Lk(g,c[j>>2]|0,g,c[i>>2]|0);Kk(g,g,c[h>>2]|0);fk(a,e,g);tl(g);tl(e);tl(f);return}Mk(a,b,c[d+8>>2]|0,c[d>>2]|0);return}function Oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Hl(b)|0;g=Hl(b)|0;h=Hl(b)|0;i=Hl(b)|0;d=c[a>>2]|0;e=c[a+4>>2]|0;Kl(f,b,0);if((g|0)==(f|0)){j=ll(c[f+4>>2]<<1)|0;Mk(j,f,e,d);Al(f,j)|0;tl(j)}else Mk(g,f,e,d);if((wk(g,f)|0)!=0?(Ni(h,g,a),(wk(h,f)|0)==0):0){Kl(f,b,0);Ni(i,f,a);a=(h|0)==(i|0);if(a){j=ll(c[h+4>>2]<<1)|0;Mk(j,h,e,d);Al(h,j)|0;tl(j)}else Mk(h,i,e,d);if(!(wk(h,f)|0)){ek(i,i,1);if(a){j=ll(c[h+4>>2]<<1)|0;Mk(j,h,e,d);Al(h,j)|0;tl(j)}else Mk(h,i,e,d);a=((wk(h,f)|0)==0)<<31>>31}else a=-1}else a=-1;Jl(i);Jl(h);Jl(g);Jl(f);return a|0}function Pi(a,b){a=a|0;b=b|0;var c=0;gk(b,b,1);c=Bl(b)|0;a=(Ek(c,a,b)|0)==0&1;Jl(c);ek(b,b,1);return a|0}function Qi(a,b){a=a|0;b=b|0;c[a+160>>2]=1732584193;c[a+164>>2]=-271733879;c[a+168>>2]=-1732584194;c[a+172>>2]=271733878;c[a+176>>2]=-1009589776;b=a+128|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[a+148>>2]=64;c[a+152>>2]=32;return}function Ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Jm(b,0,0);h=b+128|0;f=c[h>>2]|0;i=f<<6;h=gr(f|0,c[h+4>>2]|0,26)|0;e=b+144|0;j=c[e>>2]|0;g=i+j|0;f=(g>>>0<i>>>0&1)+(h&536870848|f>>>26)|0;h=g<<3;i=f<<3|g>>>29;c[e>>2]=j+1;a[b+j>>0]=-128;d=c[e>>2]|0;if((j|0)<56){if((d|0)<56)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<56)}else{if((d|0)<64)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<64);Jm(b,0,0);d=b;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0))}a[b+56>>0]=f>>>21;a[b+57>>0]=f>>>13;a[b+58>>0]=f>>>5;a[b+59>>0]=i;a[b+60>>0]=g>>>21;a[b+61>>0]=g>>>13;a[b+62>>0]=g>>>5;a[b+63>>0]=h;Ui(b,b,1)|0;Te(104);j=c[b+160>>2]|0;a[b>>0]=j>>>24;a[b+1>>0]=j>>>16;a[b+2>>0]=j>>>8;a[b+3>>0]=j;j=c[b+164>>2]|0;a[b+4>>0]=j>>>24;a[b+5>>0]=j>>>16;a[b+6>>0]=j>>>8;a[b+7>>0]=j;j=c[b+168>>2]|0;a[b+8>>0]=j>>>24;a[b+9>>0]=j>>>16;a[b+10>>0]=j>>>8;a[b+11>>0]=j;j=c[b+172>>2]|0;a[b+12>>0]=j>>>24;a[b+13>>0]=j>>>16;a[b+14>>0]=j>>>8;a[b+15>>0]=j;j=c[b+176>>2]|0;a[b+16>>0]=j>>>24;a[b+17>>0]=j>>>16;a[b+18>>0]=j>>>8;a[b+19>>0]=j;return}function Si(a){a=a|0;return a|0}function Ti(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)!=2){c=5;return c|0}a=Im(2,0,42568,3,42031,20)|0;if(!a){if(!b){c=0;return c|0}a=Im(2,0,42234,56,42052,20)|0;if(!a){a=Im(2,1,0,0,42073,20)|0;if(!a){c=0;return c|0}else b=42857}else b=42845}else b=42832;if(!c){c=50;return c|0}zb[c&1](42873,2,b,a);c=50;return c|0}function Ui(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;k=a+160|0;l=a+164|0;m=a+168|0;n=a+172|0;j=a+176|0;a=c[m>>2]|0;f=c[n>>2]|0;g=c[l>>2]|0;h=c[j>>2]|0;i=c[k>>2]|0;while(1){z=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|(d[b+3>>0]|0);o=(i<<5|i>>>27)+1518500249+h+((f^a)&g^f)+z|0;r=g<<30|g>>>2;v=(d[b+5>>0]|0)<<16|(d[b+4>>0]|0)<<24|(d[b+6>>0]|0)<<8|(d[b+7>>0]|0);p=f+1518500249+((r^a)&i^a)+(o<<5|o>>>27)+v|0;s=i<<30|i>>>2;B=(d[b+9>>0]|0)<<16|(d[b+8>>0]|0)<<24|(d[b+10>>0]|0)<<8|(d[b+11>>0]|0);q=a+1518500249+(o&(r^s)^r)+(p<<5|p>>>27)+B|0;o=o<<30|o>>>2;G=(d[b+13>>0]|0)<<16|(d[b+12>>0]|0)<<24|(d[b+14>>0]|0)<<8|(d[b+15>>0]|0);r=r+1518500249+(p&(o^s)^s)+G+(q<<5|q>>>27)|0;p=p<<30|p>>>2;E=(d[b+17>>0]|0)<<16|(d[b+16>>0]|0)<<24|(d[b+18>>0]|0)<<8|(d[b+19>>0]|0);s=s+1518500249+(q&(p^o)^o)+E+(r<<5|r>>>27)|0;q=q<<30|q>>>2;C=(d[b+21>>0]|0)<<16|(d[b+20>>0]|0)<<24|(d[b+22>>0]|0)<<8|(d[b+23>>0]|0);o=o+1518500249+(r&(q^p)^p)+C+(s<<5|s>>>27)|0;r=r<<30|r>>>2;y=(d[b+25>>0]|0)<<16|(d[b+24>>0]|0)<<24|(d[b+26>>0]|0)<<8|(d[b+27>>0]|0);p=p+1518500249+(s&(r^q)^q)+y+(o<<5|o>>>27)|0;s=s<<30|s>>>2;u=(d[b+29>>0]|0)<<16|(d[b+28>>0]|0)<<24|(d[b+30>>0]|0)<<8|(d[b+31>>0]|0);q=q+1518500249+(o&(s^r)^r)+u+(p<<5|p>>>27)|0;o=o<<30|o>>>2;x=(d[b+33>>0]|0)<<16|(d[b+32>>0]|0)<<24|(d[b+34>>0]|0)<<8|(d[b+35>>0]|0);r=r+1518500249+(p&(o^s)^s)+x+(q<<5|q>>>27)|0;p=p<<30|p>>>2;t=(d[b+37>>0]|0)<<16|(d[b+36>>0]|0)<<24|(d[b+38>>0]|0)<<8|(d[b+39>>0]|0);s=s+1518500249+(q&(p^o)^o)+t+(r<<5|r>>>27)|0;q=q<<30|q>>>2;I=(d[b+41>>0]|0)<<16|(d[b+40>>0]|0)<<24|(d[b+42>>0]|0)<<8|(d[b+43>>0]|0);o=o+1518500249+(r&(q^p)^p)+I+(s<<5|s>>>27)|0;r=r<<30|r>>>2;H=(d[b+45>>0]|0)<<16|(d[b+44>>0]|0)<<24|(d[b+46>>0]|0)<<8|(d[b+47>>0]|0);p=p+1518500249+(s&(r^q)^q)+H+(o<<5|o>>>27)|0;s=s<<30|s>>>2;F=(d[b+49>>0]|0)<<16|(d[b+48>>0]|0)<<24|(d[b+50>>0]|0)<<8|(d[b+51>>0]|0);q=q+1518500249+(o&(s^r)^r)+F+(p<<5|p>>>27)|0;o=o<<30|o>>>2;D=(d[b+53>>0]|0)<<16|(d[b+52>>0]|0)<<24|(d[b+54>>0]|0)<<8|(d[b+55>>0]|0);r=r+1518500249+(p&(o^s)^s)+D+(q<<5|q>>>27)|0;p=p<<30|p>>>2;A=(d[b+57>>0]|0)<<16|(d[b+56>>0]|0)<<24|(d[b+58>>0]|0)<<8|(d[b+59>>0]|0);s=s+1518500249+(q&(p^o)^o)+A+(r<<5|r>>>27)|0;q=q<<30|q>>>2;w=(d[b+61>>0]|0)<<16|(d[b+60>>0]|0)<<24|(d[b+62>>0]|0)<<8|(d[b+63>>0]|0);o=o+1518500249+(r&(q^p)^p)+w+(s<<5|s>>>27)|0;r=r<<30|r>>>2;z=B^z^x^D;z=z<<1|z>>>31;p=p+1518500249+z+(s&(r^q)^q)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;v=G^v^t^A;v=v<<1|v>>>31;q=q+1518500249+v+(o&(s^r)^r)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;B=E^B^I^w;B=B<<1|B>>>31;r=r+1518500249+B+(p&(o^s)^s)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;G=C^G^H^z;G=G<<1|G>>>31;s=G+1518500249+s+(q&(p^o)^o)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;E=y^E^F^v;E=E<<1|E>>>31;o=E+1859775393+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;C=u^C^D^B;C=C<<1|C>>>31;p=C+1859775393+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;y=x^y^A^G;y=y<<1|y>>>31;q=y+1859775393+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;u=t^u^w^E;u=u<<1|u>>>31;r=u+1859775393+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;x=I^x^z^C;x=x<<1|x>>>31;s=x+1859775393+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;t=H^t^v^y;t=t<<1|t>>>31;o=t+1859775393+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;I=F^I^B^u;I=I<<1|I>>>31;p=I+1859775393+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;H=D^H^G^x;H=H<<1|H>>>31;q=H+1859775393+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;F=A^F^E^t;F=F<<1|F>>>31;r=F+1859775393+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;D=w^D^C^I;D=D<<1|D>>>31;s=D+1859775393+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;A=A^z^y^H;A=A<<1|A>>>31;o=A+1859775393+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;w=w^v^u^F;w=w<<1|w>>>31;p=w+1859775393+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;z=B^z^x^D;z=z<<1|z>>>31;q=z+1859775393+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;v=v^G^t^A;v=v<<1|v>>>31;r=v+1859775393+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;B=B^E^I^w;B=B<<1|B>>>31;s=B+1859775393+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;G=C^G^H^z;G=G<<1|G>>>31;o=G+1859775393+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;E=E^y^F^v;E=E<<1|E>>>31;p=E+1859775393+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;C=C^u^D^B;C=C<<1|C>>>31;q=C+1859775393+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;y=x^y^A^G;y=y<<1|y>>>31;r=y+1859775393+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;u=u^t^w^E;u=u<<1|u>>>31;s=u+1859775393+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;x=x^I^z^C;x=x<<1|x>>>31;o=x+-1894007588+o+((r|q)&p|r&q)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;t=H^t^v^y;t=t<<1|t>>>31;p=t+-1894007588+p+((s|r)&q|s&r)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;I=I^F^B^u;I=I<<1|I>>>31;q=I+-1894007588+q+((o|s)&r|o&s)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;H=H^D^G^x;H=H<<1|H>>>31;r=H+-1894007588+r+((p|o)&s|p&o)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;F=A^F^E^t;F=F<<1|F>>>31;s=F+-1894007588+s+((q|p)&o|q&p)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;D=D^w^C^I;D=D<<1|D>>>31;o=D+-1894007588+o+((r|q)&p|r&q)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;A=A^z^y^H;A=A<<1|A>>>31;p=A+-1894007588+p+((s|r)&q|s&r)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;w=v^w^u^F;w=w<<1|w>>>31;q=w+-1894007588+q+((o|s)&r|o&s)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;z=z^B^x^D;z=z<<1|z>>>31;r=z+-1894007588+r+((p|o)&s|p&o)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;v=v^G^t^A;v=v<<1|v>>>31;s=v+-1894007588+s+((q|p)&o|q&p)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;B=E^B^I^w;B=B<<1|B>>>31;o=B+-1894007588+o+((r|q)&p|r&q)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;G=G^C^H^z;G=G<<1|G>>>31;p=G+-1894007588+p+((s|r)&q|s&r)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;E=E^y^F^v;E=E<<1|E>>>31;q=E+-1894007588+q+((o|s)&r|o&s)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;C=u^C^D^B;C=C<<1|C>>>31;r=C+-1894007588+r+((p|o)&s|p&o)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;y=y^x^A^G;y=y<<1|y>>>31;s=y+-1894007588+s+((q|p)&o|q&p)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;u=u^t^w^E;u=u<<1|u>>>31;o=u+-1894007588+o+((r|q)&p|r&q)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;x=I^x^z^C;x=x<<1|x>>>31;p=x+-1894007588+p+((s|r)&q|s&r)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;t=t^H^v^y;t=t<<1|t>>>31;q=t+-1894007588+q+((o|s)&r|o&s)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;I=I^F^B^u;I=I<<1|I>>>31;r=I+-1894007588+r+((p|o)&s|p&o)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;H=D^H^G^x;H=H<<1|H>>>31;s=H+-1894007588+s+((q|p)&o|q&p)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;F=F^A^E^t;F=F<<1|F>>>31;o=F+-899497514+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;D=D^w^C^I;D=D<<1|D>>>31;p=D+-899497514+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;A=z^A^y^H;A=A<<1|A>>>31;q=A+-899497514+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;w=w^v^u^F;w=w<<1|w>>>31;r=w+-899497514+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;z=z^B^x^D;z=z<<1|z>>>31;s=z+-899497514+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;v=G^v^t^A;v=v<<1|v>>>31;o=v+-899497514+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;B=B^E^I^w;B=B<<1|B>>>31;p=B+-899497514+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;G=G^C^H^z;G=G<<1|G>>>31;q=G+-899497514+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;E=y^E^F^v;E=E<<1|E>>>31;r=E+-899497514+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;C=C^u^D^B;C=C<<1|C>>>31;s=C+-899497514+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;y=y^x^A^G;y=y<<1|y>>>31;o=y+-899497514+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;u=t^u^w^E;u=u<<1|u>>>31;p=u+-899497514+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;x=x^I^z^C;x=x<<1|x>>>31;q=x+-899497514+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;t=t^H^v^y;t=t<<1|t>>>31;r=t+-899497514+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;B=F^I^B^u;B=B<<1|B>>>31;s=B+-899497514+s+(p^o^q)+(r<<5|r>>>27)|0;q=q<<30|q>>>2;x=H^D^G^x;x=x<<1|x>>>31;o=x+-899497514+o+(q^p^r)+(s<<5|s>>>27)|0;r=r<<30|r>>>2;t=F^A^E^t;t=t<<1|t>>>31;p=t+-899497514+p+(r^q^s)+(o<<5|o>>>27)|0;s=s<<30|s>>>2;B=w^D^C^B;q=(B<<1|B>>>31)+-899497514+q+(s^r^o)+(p<<5|p>>>27)|0;o=o<<30|o>>>2;x=A^z^y^x;r=(x<<1|x>>>31)+-899497514+r+(o^s^p)+(q<<5|q>>>27)|0;p=p<<30|p>>>2;t=w^v^u^t;i=i+-899497514+(t<<1|t>>>31)+s+(p^o^q)+(r<<5|r>>>27)|0;c[k>>2]=i;g=r+(c[l>>2]|0)|0;c[l>>2]=g;a=(q<<30|q>>>2)+(c[m>>2]|0)|0;c[m>>2]=a;f=p+(c[n>>2]|0)|0;c[n>>2]=f;h=o+(c[j>>2]|0)|0;c[j>>2]=h;e=e+-1|0;if(!e)break;else b=b+64|0}return 104}function Vi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+192|0;if((l|0)>=(m|0))$(192);g=f;c[g+160>>2]=1732584193;c[g+164>>2]=-271733879;c[g+168>>2]=-1732584194;c[g+172>>2]=271733878;c[g+176>>2]=-1009589776;h=g+128|0;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[g+148>>2]=64;c[g+152>>2]=32;Jm(g,d,e);Ri(g);d=g;e=b+20|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));l=f;return}function Wi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=l;l=l+192|0;if((l|0)>=(m|0))$(192);f=g;c[f+160>>2]=1732584193;c[f+164>>2]=-271733879;c[f+168>>2]=-1732584194;c[f+172>>2]=271733878;c[f+176>>2]=-1009589776;h=f+128|0;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[f+148>>2]=64;c[f+152>>2]=32;if((e|0)<=0){Ri(f);d=b;e=d+20|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(e|0));l=g;return}while(1){Jm(f,(c[d+12>>2]|0)+(c[d+4>>2]|0)|0,c[d+8>>2]|0);if((e|0)>1){d=d+16|0;e=e+-1|0}else break}Ri(f);d=b;e=d+20|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(e|0));l=g;return}function Xi(a,b){a=a|0;b=b|0;c[a+160>>2]=-1056596264;c[a+164>>2]=914150663;c[a+168>>2]=812702999;c[a+172>>2]=-150054599;c[a+176>>2]=-4191439;c[a+180>>2]=1750603025;c[a+184>>2]=1694076839;c[a+188>>2]=-1090891868;b=a+128|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[a+148>>2]=64;c[a+152>>2]=33;return}function Yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;Jm(b,0,0);h=b+128|0;f=c[h>>2]|0;i=f<<6;h=gr(f|0,c[h+4>>2]|0,26)|0;e=b+144|0;j=c[e>>2]|0;g=i+j|0;f=(g>>>0<i>>>0&1)+(h&536870848|f>>>26)|0;h=g<<3;i=f<<3|g>>>29;c[e>>2]=j+1;a[b+j>>0]=-128;d=c[e>>2]|0;if((j|0)<56){if((d|0)<56)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<56)}else{if((d|0)<64)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<64);Jm(b,0,0);d=b;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0))}a[b+56>>0]=f>>>21;a[b+57>>0]=f>>>13;a[b+58>>0]=f>>>5;a[b+59>>0]=i;a[b+60>>0]=g>>>21;a[b+61>>0]=g>>>13;a[b+62>>0]=g>>>5;a[b+63>>0]=h;$i(b,b,1)|0;Te(328);j=c[b+160>>2]|0;a[b>>0]=j>>>24;a[b+1>>0]=j>>>16;a[b+2>>0]=j>>>8;a[b+3>>0]=j;j=c[b+164>>2]|0;a[b+4>>0]=j>>>24;a[b+5>>0]=j>>>16;a[b+6>>0]=j>>>8;a[b+7>>0]=j;j=c[b+168>>2]|0;a[b+8>>0]=j>>>24;a[b+9>>0]=j>>>16;a[b+10>>0]=j>>>8;a[b+11>>0]=j;j=c[b+172>>2]|0;a[b+12>>0]=j>>>24;a[b+13>>0]=j>>>16;a[b+14>>0]=j>>>8;a[b+15>>0]=j;j=c[b+176>>2]|0;a[b+16>>0]=j>>>24;a[b+17>>0]=j>>>16;a[b+18>>0]=j>>>8;a[b+19>>0]=j;j=c[b+180>>2]|0;a[b+20>>0]=j>>>24;a[b+21>>0]=j>>>16;a[b+22>>0]=j>>>8;a[b+23>>0]=j;j=c[b+184>>2]|0;a[b+24>>0]=j>>>24;a[b+25>>0]=j>>>16;a[b+26>>0]=j>>>8;a[b+27>>0]=j;j=c[b+188>>2]|0;a[b+28>>0]=j>>>24;a[b+29>>0]=j>>>16;a[b+30>>0]=j>>>8;a[b+31>>0]=j;return}function Zi(a){a=a|0;return a|0}function _i(a,b,c){a=a|0;b=b|0;c=c|0;switch(a|0){case 11:{a=Im(11,0,42568,3,42205,28)|0;if(!a){if(!b){c=0;return c|0}a=Im(11,0,42234,56,42291,28)|0;if(!a){a=Im(11,1,0,0,42320,28)|0;if(!a){c=0;return c|0}else b=42857}else b=42845}else b=42832;if(!c){c=50;return c|0}zb[c&1](42873,11,b,a);c=50;return c|0}case 8:{a=Im(8,0,42568,3,42349,32)|0;if(!a){if(!b){c=0;return c|0}a=Im(8,0,42234,56,42382,32)|0;if(!a){a=Im(8,1,0,0,42415,32)|0;if(!a){c=0;return c|0}else b=42857}else b=42845}else b=42832;if(!c){c=50;return c|0}zb[c&1](42873,8,b,a);c=50;return c|0}default:{c=5;return c|0}}return 0}function $i(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;z=l;l=l+256|0;if((l|0)>=(m|0))$(256);s=z;t=a+160|0;u=a+164|0;v=a+168|0;w=a+172|0;x=a+176|0;y=a+180|0;r=a+184|0;q=a+188|0;i=c[q>>2]|0;k=c[r>>2]|0;j=c[y>>2]|0;h=c[x>>2]|0;g=c[w>>2]|0;p=c[v>>2]|0;o=c[u>>2]|0;n=c[t>>2]|0;while(1){a=0;do{f=b+(a<<2)|0;c[s+(a<<2)>>2]=(d[f+1>>0]|0)<<16|(d[f>>0]|0)<<24|(d[f+2>>0]|0)<<8|(d[f+3>>0]|0);a=a+1|0}while((a|0)!=16);a=16;f=c[s>>2]|0;do{A=c[s+(a+-2<<2)>>2]|0;B=f;f=c[s+(a+-15<<2)>>2]|0;c[s+(a<<2)>>2]=(c[s+(a+-7<<2)>>2]|0)+B+((A>>>19|A<<13)^A>>>10^(A>>>17|A<<15))+((f>>>18|f<<14)^f>>>3^(f>>>7|f<<25));a=a+1|0}while((a|0)!=64);f=p;a=0;do{G=((j^k)&h^k)+i+(c[12216+(a<<2)>>2]|0)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))+(c[s+(a<<2)>>2]|0)|0;H=G+g|0;G=(f&(o|n)|o&n)+((n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10))+G|0;E=a|1;E=(c[12216+(E<<2)>>2]|0)+k+(c[s+(E<<2)>>2]|0)+(H&(h^j)^j)+((H>>>6|H<<26)^(H>>>11|H<<21)^(H>>>25|H<<7))|0;D=E+f|0;E=((G>>>2|G<<30)^(G>>>13|G<<19)^(G>>>22|G<<10))+((G|n)&o|G&n)+E|0;C=a|2;C=(c[12216+(C<<2)>>2]|0)+j+(c[s+(C<<2)>>2]|0)+(D&(H^h)^h)+((D>>>6|D<<26)^(D>>>11|D<<21)^(D>>>25|D<<7))|0;p=C+o|0;C=((E>>>2|E<<30)^(E>>>13|E<<19)^(E>>>22|E<<10))+((E|G)&n|E&G)+C|0;A=a|3;A=(c[12216+(A<<2)>>2]|0)+h+(c[s+(A<<2)>>2]|0)+(p&(D^H)^H)+((p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7))|0;B=A+n|0;A=((C>>>2|C<<30)^(C>>>13|C<<19)^(C>>>22|C<<10))+((C|E)&G|C&E)+A|0;F=a|4;F=(c[12216+(F<<2)>>2]|0)+H+(c[s+(F<<2)>>2]|0)+(B&(p^D)^D)+((B>>>6|B<<26)^(B>>>11|B<<21)^(B>>>25|B<<7))|0;i=F+G|0;g=((A>>>2|A<<30)^(A>>>13|A<<19)^(A>>>22|A<<10))+((A|C)&E|A&C)+F|0;F=a|5;D=(c[s+(F<<2)>>2]|0)+(c[12216+(F<<2)>>2]|0)+D+(i&(B^p)^p)+((i>>>6|i<<26)^(i>>>11|i<<21)^(i>>>25|i<<7))|0;k=D+E|0;f=((g>>>2|g<<30)^(g>>>13|g<<19)^(g>>>22|g<<10))+((g|A)&C|g&A)+D|0;D=a|6;p=(c[s+(D<<2)>>2]|0)+(c[12216+(D<<2)>>2]|0)+p+(k&(i^B)^B)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;j=p+C|0;o=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|g)&A|f&g)+p|0;p=a|7;B=(c[s+(p<<2)>>2]|0)+(c[12216+(p<<2)>>2]|0)+B+(j&(k^i)^i)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;h=B+A|0;n=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|f)&g|o&f)+B|0;a=a+8|0}while((a|0)<64);n=(c[t>>2]|0)+n|0;c[t>>2]=n;o=(c[u>>2]|0)+o|0;c[u>>2]=o;p=(c[v>>2]|0)+f|0;c[v>>2]=p;g=(c[w>>2]|0)+g|0;c[w>>2]=g;h=(c[x>>2]|0)+h|0;c[x>>2]=h;j=(c[y>>2]|0)+j|0;c[y>>2]=j;k=(c[r>>2]|0)+k|0;c[r>>2]=k;i=(c[q>>2]|0)+i|0;c[q>>2]=i;e=e+-1|0;if(!e)break;else b=b+64|0}l=z;return 328}function aj(a,b){a=a|0;b=b|0;c[a+160>>2]=1779033703;c[a+164>>2]=-1150833019;c[a+168>>2]=1013904242;c[a+172>>2]=-1521486534;c[a+176>>2]=1359893119;c[a+180>>2]=-1694144372;c[a+184>>2]=528734635;c[a+188>>2]=1541459225;b=a+128|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[a+148>>2]=64;c[a+152>>2]=33;return}function bj(a,b){a=a|0;b=b|0;b=a+160|0;c[b>>2]=-205731576;c[b+4>>2]=1779033703;b=a+168|0;c[b>>2]=-2067093701;c[b+4>>2]=-1150833019;b=a+176|0;c[b>>2]=-23791573;c[b+4>>2]=1013904242;b=a+184|0;c[b>>2]=1595750129;c[b+4>>2]=-1521486534;b=a+192|0;c[b>>2]=-1377402159;c[b+4>>2]=1359893119;b=a+200|0;c[b>>2]=725511199;c[b+4>>2]=-1694144372;b=a+208|0;c[b>>2]=-79577749;c[b+4>>2]=528734635;b=a+216|0;c[b>>2]=327033209;c[b+4>>2]=1541459225;b=a+128|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[a+148>>2]=128;c[a+152>>2]=34;return}function cj(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;Jm(b,0,0);i=b+128|0;e=c[i>>2]|0;i=c[i+4>>2]|0;j=b+136|0;h=c[j>>2]|0;j=c[j+4>>2]|0;m=mr(e|0,i|0,7)|0;d=D;j=mr(h|0,j|0,7)|0;h=D;i=gr(e|0,i|0,57)|0;h=h|D;e=b+144|0;l=c[e>>2]|0;f=_q(l|0,((l|0)<0)<<31>>31|0,m|0,d|0)|0;g=D;h=_q((g>>>0<d>>>0|(g|0)==(d|0)&f>>>0<m>>>0)&1|0,0,j|i|0,h|0)|0;i=D;j=mr(f|0,g|0,3)|0;m=mr(h|0,i|0,3)|0;d=D;k=gr(f|0,g|0,61)|0;k=m|k;c[e>>2]=l+1;a[b+l>>0]=-128;d=c[e>>2]|0;if((l|0)<112){if((d|0)<112)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<112)}else{if((d|0)<128)do{c[e>>2]=d+1;a[b+d>>0]=0;d=c[e>>2]|0}while((d|0)<128);Jm(b,0,0);d=b;e=d+112|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0))}m=gr(h|0,i|0,53)|0;a[b+112>>0]=m;m=gr(h|0,i|0,45)|0;a[b+113>>0]=m;m=gr(h|0,i|0,37)|0;a[b+114>>0]=m;m=gr(h|0,i|0,29)|0;a[b+115>>0]=m;m=gr(h|0,i|0,21)|0;a[b+116>>0]=m;m=gr(h|0,i|0,13)|0;a[b+117>>0]=m;m=gr(h|0,i|0,5)|0;a[b+118>>0]=m;a[b+119>>0]=k;m=gr(f|0,g|0,53)|0;a[b+120>>0]=m;m=gr(f|0,g|0,45)|0;a[b+121>>0]=m;m=gr(f|0,g|0,37)|0;a[b+122>>0]=m;m=gr(f|0,g|0,29)|0;a[b+123>>0]=m;m=gr(f|0,g|0,21)|0;a[b+124>>0]=m;m=gr(f|0,g|0,13)|0;a[b+125>>0]=m;m=gr(f|0,g|0,5)|0;a[b+126>>0]=m;a[b+127>>0]=j;fj(b,b,1)|0;Te(220);m=b+160|0;l=c[m>>2]|0;m=c[m+4>>2]|0;k=gr(l|0,m|0,56)|0;a[b>>0]=k;k=gr(l|0,m|0,48)|0;a[b+1>>0]=k;k=gr(l|0,m|0,40)|0;a[b+2>>0]=k;a[b+3>>0]=m;k=gr(l|0,m|0,24)|0;a[b+4>>0]=k;k=gr(l|0,m|0,16)|0;a[b+5>>0]=k;m=gr(l|0,m|0,8)|0;a[b+6>>0]=m;a[b+7>>0]=l;l=b+168|0;m=c[l>>2]|0;l=c[l+4>>2]|0;k=gr(m|0,l|0,56)|0;a[b+8>>0]=k;k=gr(m|0,l|0,48)|0;a[b+9>>0]=k;k=gr(m|0,l|0,40)|0;a[b+10>>0]=k;a[b+11>>0]=l;k=gr(m|0,l|0,24)|0;a[b+12>>0]=k;k=gr(m|0,l|0,16)|0;a[b+13>>0]=k;l=gr(m|0,l|0,8)|0;a[b+14>>0]=l;a[b+15>>0]=m;m=b+176|0;l=c[m>>2]|0;m=c[m+4>>2]|0;k=gr(l|0,m|0,56)|0;a[b+16>>0]=k;k=gr(l|0,m|0,48)|0;a[b+17>>0]=k;k=gr(l|0,m|0,40)|0;a[b+18>>0]=k;a[b+19>>0]=m;k=gr(l|0,m|0,24)|0;a[b+20>>0]=k;k=gr(l|0,m|0,16)|0;a[b+21>>0]=k;m=gr(l|0,m|0,8)|0;a[b+22>>0]=m;a[b+23>>0]=l;l=b+184|0;m=c[l>>2]|0;l=c[l+4>>2]|0;k=gr(m|0,l|0,56)|0;a[b+24>>0]=k;k=gr(m|0,l|0,48)|0;a[b+25>>0]=k;k=gr(m|0,l|0,40)|0;a[b+26>>0]=k;a[b+27>>0]=l;k=gr(m|0,l|0,24)|0;a[b+28>>0]=k;k=gr(m|0,l|0,16)|0;a[b+29>>0]=k;l=gr(m|0,l|0,8)|0;a[b+30>>0]=l;a[b+31>>0]=m;m=b+192|0;l=c[m>>2]|0;m=c[m+4>>2]|0;k=gr(l|0,m|0,56)|0;a[b+32>>0]=k;k=gr(l|0,m|0,48)|0;a[b+33>>0]=k;k=gr(l|0,m|0,40)|0;a[b+34>>0]=k;a[b+35>>0]=m;k=gr(l|0,m|0,24)|0;a[b+36>>0]=k;k=gr(l|0,m|0,16)|0;a[b+37>>0]=k;m=gr(l|0,m|0,8)|0;a[b+38>>0]=m;a[b+39>>0]=l;l=b+200|0;m=c[l>>2]|0;l=c[l+4>>2]|0;k=gr(m|0,l|0,56)|0;a[b+40>>0]=k;k=gr(m|0,l|0,48)|0;a[b+41>>0]=k;k=gr(m|0,l|0,40)|0;a[b+42>>0]=k;a[b+43>>0]=l;k=gr(m|0,l|0,24)|0;a[b+44>>0]=k;k=gr(m|0,l|0,16)|0;a[b+45>>0]=k;l=gr(m|0,l|0,8)|0;a[b+46>>0]=l;a[b+47>>0]=m;m=b+208|0;l=c[m>>2]|0;m=c[m+4>>2]|0;k=gr(l|0,m|0,56)|0;a[b+48>>0]=k;k=gr(l|0,m|0,48)|0;a[b+49>>0]=k;k=gr(l|0,m|0,40)|0;a[b+50>>0]=k;a[b+51>>0]=m;k=gr(l|0,m|0,24)|0;a[b+52>>0]=k;k=gr(l|0,m|0,16)|0;a[b+53>>0]=k;m=gr(l|0,m|0,8)|0;a[b+54>>0]=m;a[b+55>>0]=l;l=b+216|0;m=c[l>>2]|0;l=c[l+4>>2]|0;k=gr(m|0,l|0,56)|0;a[b+56>>0]=k;k=gr(m|0,l|0,48)|0;a[b+57>>0]=k;k=gr(m|0,l|0,40)|0;a[b+58>>0]=k;a[b+59>>0]=l;k=gr(m|0,l|0,24)|0;a[b+60>>0]=k;k=gr(m|0,l|0,16)|0;a[b+61>>0]=k;l=gr(m|0,l|0,8)|0;a[b+62>>0]=l;a[b+63>>0]=m;return}function dj(a){a=a|0;return a|0}function ej(a,b,c){a=a|0;b=b|0;c=c|0;switch(a|0){case 9:{a=Im(9,0,42568,3,42572,48)|0;if(!a){if(!b){c=0;return c|0}a=Im(9,0,42621,112,42734,48)|0;if(!a){a=Im(9,1,0,0,42783,48)|0;if(!a){c=0;return c|0}else b=42857}else b=42845}else b=42832;if(!c){c=50;return c|0}zb[c&1](42873,9,b,a);c=50;return c|0}case 10:{a=Im(10,0,42568,3,42880,64)|0;if(!a){if(!b){c=0;return c|0}a=Im(10,0,42621,112,42945,64)|0;if(!a){a=Im(10,1,0,0,43010,64)|0;if(!a){c=0;return c|0}else b=42857}else b=42845}else b=42832;if(!c){c=50;return c|0}zb[c&1](42873,10,b,a);c=50;return c|0}default:{c=5;return c|0}}return 0}function fj(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,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,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;Ba=l;l=l+128|0;if((l|0)>=(m|0))$(128);ua=Ba;va=a+160|0;wa=a+168|0;xa=a+176|0;ya=a+184|0;za=a+192|0;Aa=a+200|0;ta=a+208|0;da=a+216|0;ea=ua+112|0;fa=ua+72|0;ga=ua+8|0;ha=ua+120|0;ia=ua+80|0;ja=ua+16|0;ka=ua+88|0;la=ua+24|0;ma=ua+96|0;na=ua+32|0;oa=ua+104|0;pa=ua+40|0;qa=ua+48|0;ra=ua+56|0;sa=ua+64|0;q=va;t=wa;u=xa;w=ya;g=za;i=Aa;k=ta;o=da;n=c[o>>2]|0;o=c[o+4>>2]|0;j=c[k>>2]|0;k=c[k+4>>2]|0;h=c[i>>2]|0;i=c[i+4>>2]|0;f=c[g>>2]|0;g=c[g+4>>2]|0;v=c[w>>2]|0;w=c[w+4>>2]|0;s=c[u>>2]|0;u=c[u+4>>2]|0;r=c[t>>2]|0;t=c[t+4>>2]|0;p=c[q>>2]|0;q=c[q+4>>2]|0;while(1){a=0;do{aa=b+(a<<3)|0;W=mr(d[aa>>0]|0|0,0,56)|0;ba=D;V=mr(d[aa+1>>0]|0|0,0,48)|0;ba=D|ba;X=mr(d[aa+2>>0]|0|0,0,40)|0;ba=ba|D|(d[aa+3>>0]|0);Y=mr(d[aa+4>>0]|0|0,0,24)|0;ba=ba|D;Z=mr(d[aa+5>>0]|0|0,0,16)|0;ba=ba|D;_=mr(d[aa+6>>0]|0|0,0,8)|0;ca=ua+(a<<3)|0;c[ca>>2]=V|W|X|Y|Z|_|(d[aa+7>>0]|0);c[ca+4>>2]=ba|D;a=a+1|0}while((a|0)!=16);S=ua;U=ea;Y=fa;W=ga;x=ha;B=ia;z=ja;G=ka;E=la;K=ma;I=na;O=oa;M=pa;Q=qa;aa=ra;ca=sa;Z=0;_=c[aa>>2]|0;aa=c[aa+4>>2]|0;ba=c[ca>>2]|0;ca=c[ca+4>>2]|0;R=c[S>>2]|0;S=c[S+4>>2]|0;T=c[U>>2]|0;U=c[U+4>>2]|0;V=c[W>>2]|0;W=c[W+4>>2]|0;X=c[Y>>2]|0;Y=c[Y+4>>2]|0;a=c[x>>2]|0;x=c[x+4>>2]|0;y=c[z>>2]|0;z=c[z+4>>2]|0;A=c[B>>2]|0;B=c[B+4>>2]|0;C=c[E>>2]|0;E=c[E+4>>2]|0;F=c[G>>2]|0;G=c[G+4>>2]|0;H=c[I>>2]|0;I=c[I+4>>2]|0;J=c[K>>2]|0;K=c[K+4>>2]|0;L=c[M>>2]|0;M=c[M+4>>2]|0;N=c[O>>2]|0;O=c[O+4>>2]|0;P=c[Q>>2]|0;Q=c[Q+4>>2]|0;do{Ua=gr(f|0,g|0,14)|0;$a=D;ab=mr(f|0,g|0,50)|0;$a=D|$a;Ta=gr(f|0,g|0,18)|0;Va=D;Ga=mr(f|0,g|0,46)|0;Va=$a^(D|Va);$a=gr(f|0,g|0,41)|0;Na=D;Ra=mr(f|0,g|0,23)|0;Na=Va^(D|Na);Va=72+(Z<<3)|0;Fa=c[Va>>2]|0;Va=c[Va+4>>2]|0;Ya=_q(n|0,o|0,R|0,S|0)|0;Va=_q(Ya|0,D|0,Fa|0,Va|0)|0;Va=_q(Va|0,D|0,j&~f^f&h|0,k&~g^g&i|0)|0;Na=_q(Va|0,D|0,(ab|Ua)^(Ga|Ta)^(Ra|$a)|0,Na|0)|0;$a=D;Ra=gr(T|0,U|0,19)|0;Ta=D;Ga=mr(T|0,U|0,45)|0;Ta=D|Ta;Ua=gr(T|0,U|0,61)|0;ab=D;Va=mr(T|0,U|0,3)|0;ab=D|ab;Fa=gr(T|0,U|0,6)|0;Ta=ab^D^Ta;ab=gr(V|0,W|0,1)|0;Ya=D;Ha=mr(V|0,W|0,63)|0;Ya=D|Ya;cb=gr(V|0,W|0,8)|0;Qa=D;Ea=mr(V|0,W|0,56)|0;Qa=D|Qa;La=gr(V|0,W|0,7)|0;Ya=Qa^D^Ya;Qa=_q(R|0,S|0,X|0,Y|0)|0;Ya=_q(Qa|0,D|0,(Ea|cb)^La^(Ha|ab)|0,Ya|0)|0;R=_q(Ya|0,D|0,(Va|Ua)^Fa^(Ga|Ra)|0,Ta|0)|0;S=D;Ta=gr(p|0,q|0,28)|0;Ra=D;Ga=mr(p|0,q|0,36)|0;Ra=D|Ra;Fa=gr(p|0,q|0,34)|0;Ua=D;Va=mr(p|0,q|0,30)|0;Ua=Ra^(D|Ua);Ra=gr(p|0,q|0,39)|0;Ya=D;ab=mr(p|0,q|0,25)|0;Ya=_q((s^r)&p^s&r|0,(u^t)&q^u&t|0,(Ga|Ta)^(Va|Fa)^(ab|Ra)|0,Ua^(D|Ya)|0)|0;Ua=D;Ra=_q(Na|0,$a|0,v|0,w|0)|0;ab=D;$a=_q(Ya|0,Ua|0,Na|0,$a|0)|0;Na=D;Ua=gr(Ra|0,ab|0,14)|0;Ya=D;Fa=mr(Ra|0,ab|0,50)|0;Ya=D|Ya;Va=gr(Ra|0,ab|0,18)|0;Ta=D;Ga=mr(Ra|0,ab|0,46)|0;Ta=Ya^(D|Ta);Ya=gr(Ra|0,ab|0,41)|0;Ha=D;La=mr(Ra|0,ab|0,23)|0;Ha=Ta^(D|Ha);Ta=72+((Z|1)<<3)|0;cb=c[Ta>>2]|0;Ta=c[Ta+4>>2]|0;Ea=_q(j|0,k|0,V|0,W|0)|0;Ta=_q(Ea|0,D|0,cb|0,Ta|0)|0;Ta=_q(Ta|0,D|0,h&~Ra^Ra&f|0,i&~ab^ab&g|0)|0;Ha=_q(Ta|0,D|0,(Fa|Ua)^(Ga|Va)^(La|Ya)|0,Ha|0)|0;Ya=D;La=gr(a|0,x|0,19)|0;Va=D;Ga=mr(a|0,x|0,45)|0;Va=D|Va;Ua=gr(a|0,x|0,61)|0;Fa=D;Ta=mr(a|0,x|0,3)|0;Fa=D|Fa;cb=gr(a|0,x|0,6)|0;Va=Fa^D^Va;Fa=gr(y|0,z|0,1)|0;Ea=D;Qa=mr(y|0,z|0,63)|0;Ea=D|Ea;bb=gr(y|0,z|0,8)|0;Ia=D;_a=mr(y|0,z|0,56)|0;Ia=D|Ia;Wa=gr(y|0,z|0,7)|0;Ea=Ia^D^Ea;Ia=_q(V|0,W|0,A|0,B|0)|0;Ea=_q(Ia|0,D|0,(_a|bb)^Wa^(Qa|Fa)|0,Ea|0)|0;V=_q(Ea|0,D|0,(Ta|Ua)^cb^(Ga|La)|0,Va|0)|0;W=D;Va=gr($a|0,Na|0,28)|0;La=D;Ga=mr($a|0,Na|0,36)|0;La=D|La;cb=gr($a|0,Na|0,34)|0;Ua=D;Ta=mr($a|0,Na|0,30)|0;Ua=La^(D|Ua);La=gr($a|0,Na|0,39)|0;Ea=D;Fa=mr($a|0,Na|0,25)|0;Ea=_q((Ga|Va)^(Ta|cb)^(Fa|La)|0,Ua^(D|Ea)|0,$a&(r^p)^r&p|0,Na&(t^q)^t&q|0)|0;Ua=D;La=_q(Ha|0,Ya|0,s|0,u|0)|0;Fa=D;Ya=_q(Ea|0,Ua|0,Ha|0,Ya|0)|0;Ha=D;Ua=gr(La|0,Fa|0,14)|0;Ea=D;cb=mr(La|0,Fa|0,50)|0;Ea=D|Ea;Ta=gr(La|0,Fa|0,18)|0;Va=D;Ga=mr(La|0,Fa|0,46)|0;Va=Ea^(D|Va);Ea=gr(La|0,Fa|0,41)|0;Qa=D;Wa=mr(La|0,Fa|0,23)|0;Qa=Va^(D|Qa);Va=72+((Z|2)<<3)|0;bb=c[Va>>2]|0;Va=c[Va+4>>2]|0;_a=_q(h|0,i|0,y|0,z|0)|0;Va=_q(_a|0,D|0,bb|0,Va|0)|0;Va=_q(Va|0,D|0,f&~La^La&Ra|0,g&~Fa^Fa&ab|0)|0;Qa=_q(Va|0,D|0,(cb|Ua)^(Ga|Ta)^(Wa|Ea)|0,Qa|0)|0;Ea=D;Wa=gr(R|0,S|0,19)|0;Ta=D;Ga=mr(R|0,S|0,45)|0;Ta=D|Ta;Ua=gr(R|0,S|0,61)|0;cb=D;Va=mr(R|0,S|0,3)|0;cb=D|cb;bb=gr(R|0,S|0,6)|0;Ta=cb^D^Ta;cb=gr(C|0,E|0,1)|0;_a=D;Ia=mr(C|0,E|0,63)|0;_a=D|_a;Pa=gr(C|0,E|0,8)|0;Xa=D;Za=mr(C|0,E|0,56)|0;Xa=D|Xa;Sa=gr(C|0,E|0,7)|0;_a=Xa^D^_a;Xa=_q(y|0,z|0,F|0,G|0)|0;_a=_q(Xa|0,D|0,(Za|Pa)^Sa^(Ia|cb)|0,_a|0)|0;y=_q(_a|0,D|0,(Va|Ua)^bb^(Ga|Wa)|0,Ta|0)|0;z=D;Ta=gr(Ya|0,Ha|0,28)|0;Wa=D;Ga=mr(Ya|0,Ha|0,36)|0;Wa=D|Wa;bb=gr(Ya|0,Ha|0,34)|0;Ua=D;Va=mr(Ya|0,Ha|0,30)|0;Ua=Wa^(D|Ua);Wa=gr(Ya|0,Ha|0,39)|0;_a=D;cb=mr(Ya|0,Ha|0,25)|0;_a=_q((Ga|Ta)^(Va|bb)^(cb|Wa)|0,Ua^(D|_a)|0,Ya&($a^p)^$a&p|0,Ha&(Na^q)^Na&q|0)|0;Ua=D;Wa=_q(Qa|0,Ea|0,r|0,t|0)|0;cb=D;Ea=_q(_a|0,Ua|0,Qa|0,Ea|0)|0;Qa=D;Ua=gr(Wa|0,cb|0,14)|0;_a=D;bb=mr(Wa|0,cb|0,50)|0;_a=D|_a;Va=gr(Wa|0,cb|0,18)|0;Ta=D;Ga=mr(Wa|0,cb|0,46)|0;Ta=_a^(D|Ta);_a=gr(Wa|0,cb|0,41)|0;Ia=D;Sa=mr(Wa|0,cb|0,23)|0;Ia=Ta^(D|Ia);Ta=72+((Z|3)<<3)|0;Pa=c[Ta>>2]|0;Ta=c[Ta+4>>2]|0;Za=_q(f|0,g|0,C|0,E|0)|0;Ta=_q(Za|0,D|0,Pa|0,Ta|0)|0;Ta=_q(Ta|0,D|0,Ra&~Wa^Wa&La|0,ab&~cb^cb&Fa|0)|0;Ia=_q(Ta|0,D|0,(bb|Ua)^(Ga|Va)^(Sa|_a)|0,Ia|0)|0;_a=D;Sa=gr(V|0,W|0,19)|0;Va=D;Ga=mr(V|0,W|0,45)|0;Va=D|Va;Ua=gr(V|0,W|0,61)|0;bb=D;Ta=mr(V|0,W|0,3)|0;bb=D|bb;Pa=gr(V|0,W|0,6)|0;Va=bb^D^Va;bb=gr(H|0,I|0,1)|0;Za=D;Xa=mr(H|0,I|0,63)|0;Za=D|Za;Ca=gr(H|0,I|0,8)|0;Ja=D;Ka=mr(H|0,I|0,56)|0;Ja=D|Ja;Da=gr(H|0,I|0,7)|0;Za=Ja^D^Za;Ja=_q(C|0,E|0,J|0,K|0)|0;Za=_q(Ja|0,D|0,(Ka|Ca)^Da^(Xa|bb)|0,Za|0)|0;C=_q(Za|0,D|0,(Ta|Ua)^Pa^(Ga|Sa)|0,Va|0)|0;E=D;Va=gr(Ea|0,Qa|0,28)|0;Sa=D;Ga=mr(Ea|0,Qa|0,36)|0;Sa=D|Sa;Pa=gr(Ea|0,Qa|0,34)|0;Ua=D;Ta=mr(Ea|0,Qa|0,30)|0;Ua=Sa^(D|Ua);Sa=gr(Ea|0,Qa|0,39)|0;Za=D;bb=mr(Ea|0,Qa|0,25)|0;Za=_q((Ga|Va)^(Ta|Pa)^(bb|Sa)|0,Ua^(D|Za)|0,Ea&(Ya^$a)^Ya&$a|0,Qa&(Ha^Na)^Ha&Na|0)|0;Ua=D;Sa=_q(Ia|0,_a|0,p|0,q|0)|0;bb=D;_a=_q(Za|0,Ua|0,Ia|0,_a|0)|0;Ia=D;Ua=gr(Sa|0,bb|0,14)|0;Za=D;Pa=mr(Sa|0,bb|0,50)|0;Za=D|Za;Ta=gr(Sa|0,bb|0,18)|0;Va=D;Ga=mr(Sa|0,bb|0,46)|0;Va=Za^(D|Va);Za=gr(Sa|0,bb|0,41)|0;Xa=D;Da=mr(Sa|0,bb|0,23)|0;Xa=Va^(D|Xa);Va=72+((Z|4)<<3)|0;Va=_q(c[Va>>2]|0,c[Va+4>>2]|0,H|0,I|0)|0;ab=_q(Va|0,D|0,Ra|0,ab|0)|0;ab=_q(ab|0,D|0,La&~Sa^Sa&Wa|0,Fa&~bb^bb&cb|0)|0;Xa=_q(ab|0,D|0,(Pa|Ua)^(Ga|Ta)^(Da|Za)|0,Xa|0)|0;Za=D;Da=gr(y|0,z|0,19)|0;Ta=D;Ga=mr(y|0,z|0,45)|0;Ta=D|Ta;Ua=gr(y|0,z|0,61)|0;Pa=D;ab=mr(y|0,z|0,3)|0;Pa=D|Pa;Ra=gr(y|0,z|0,6)|0;Ta=Pa^D^Ta;Pa=gr(L|0,M|0,1)|0;Va=D;Ca=mr(L|0,M|0,63)|0;Va=D|Va;Ka=gr(L|0,M|0,8)|0;Ja=D;Ma=mr(L|0,M|0,56)|0;Ja=D|Ja;Oa=gr(L|0,M|0,7)|0;Va=Ja^D^Va;Ja=_q(H|0,I|0,N|0,O|0)|0;Va=_q(Ja|0,D|0,(Ma|Ka)^Oa^(Ca|Pa)|0,Va|0)|0;H=_q(Va|0,D|0,(ab|Ua)^Ra^(Ga|Da)|0,Ta|0)|0;I=D;Ta=gr(_a|0,Ia|0,28)|0;Da=D;Ga=mr(_a|0,Ia|0,36)|0;Da=D|Da;Ra=gr(_a|0,Ia|0,34)|0;Ua=D;ab=mr(_a|0,Ia|0,30)|0;Ua=Da^(D|Ua);Da=gr(_a|0,Ia|0,39)|0;Va=D;Pa=mr(_a|0,Ia|0,25)|0;Va=_q((Ga|Ta)^(ab|Ra)^(Pa|Da)|0,Ua^(D|Va)|0,_a&(Ea^Ya)^Ea&Ya|0,Ia&(Qa^Ha)^Qa&Ha|0)|0;Ua=D;Na=_q(Xa|0,Za|0,$a|0,Na|0)|0;$a=D;Za=_q(Va|0,Ua|0,Xa|0,Za|0)|0;Xa=D;Ua=gr(Na|0,$a|0,14)|0;Va=D;Da=mr(Na|0,$a|0,50)|0;Va=D|Va;Pa=gr(Na|0,$a|0,18)|0;Ra=D;ab=mr(Na|0,$a|0,46)|0;Ra=Va^(D|Ra);Va=gr(Na|0,$a|0,41)|0;Ta=D;Ga=mr(Na|0,$a|0,23)|0;Ta=Ra^(D|Ta);Ra=72+((Z|5)<<3)|0;Ra=_q(c[Ra>>2]|0,c[Ra+4>>2]|0,L|0,M|0)|0;Fa=_q(Ra|0,D|0,La|0,Fa|0)|0;Fa=_q(Fa|0,D|0,Wa&~Na^Na&Sa|0,cb&~$a^$a&bb|0)|0;Ta=_q(Fa|0,D|0,(Da|Ua)^(ab|Pa)^(Ga|Va)|0,Ta|0)|0;Va=D;Ga=gr(C|0,E|0,19)|0;Pa=D;ab=mr(C|0,E|0,45)|0;Pa=D|Pa;Ua=gr(C|0,E|0,61)|0;Da=D;Fa=mr(C|0,E|0,3)|0;Da=D|Da;La=gr(C|0,E|0,6)|0;Pa=Da^D^Pa;Da=gr(P|0,Q|0,1)|0;Ra=D;Ca=mr(P|0,Q|0,63)|0;Ra=D|Ra;Oa=gr(P|0,Q|0,8)|0;Ka=D;Ma=mr(P|0,Q|0,56)|0;Ka=D|Ka;Ja=gr(P|0,Q|0,7)|0;Ra=_q((Ma|Oa)^Ja^(Ca|Da)|0,Ka^D^Ra|0,L|0,M|0)|0;Ra=_q(Ra|0,D|0,T|0,U|0)|0;L=_q(Ra|0,D|0,(Fa|Ua)^La^(ab|Ga)|0,Pa|0)|0;M=D;Pa=gr(Za|0,Xa|0,28)|0;Ga=D;ab=mr(Za|0,Xa|0,36)|0;Ga=D|Ga;La=gr(Za|0,Xa|0,34)|0;Ua=D;Fa=mr(Za|0,Xa|0,30)|0;Ua=Ga^(D|Ua);Ga=gr(Za|0,Xa|0,39)|0;Ra=D;Ka=mr(Za|0,Xa|0,25)|0;Ra=_q((ab|Pa)^(Fa|La)^(Ka|Ga)|0,Ua^(D|Ra)|0,Za&(_a^Ea)^_a&Ea|0,Xa&(Ia^Qa)^Ia&Qa|0)|0;Ua=D;Ha=_q(Ta|0,Va|0,Ya|0,Ha|0)|0;Ya=D;Va=_q(Ra|0,Ua|0,Ta|0,Va|0)|0;Ta=D;Ua=gr(Ha|0,Ya|0,14)|0;Ra=D;Ga=mr(Ha|0,Ya|0,50)|0;Ra=D|Ra;Ka=gr(Ha|0,Ya|0,18)|0;La=D;Fa=mr(Ha|0,Ya|0,46)|0;La=Ra^(D|La);Ra=gr(Ha|0,Ya|0,41)|0;Pa=D;ab=mr(Ha|0,Ya|0,23)|0;Pa=La^(D|Pa);La=72+((Z|6)<<3)|0;La=_q(c[La>>2]|0,c[La+4>>2]|0,P|0,Q|0)|0;cb=_q(La|0,D|0,Wa|0,cb|0)|0;cb=_q(cb|0,D|0,Sa&~Ha^Ha&Na|0,bb&~Ya^Ya&$a|0)|0;Pa=_q(cb|0,D|0,(Ga|Ua)^(Fa|Ka)^(ab|Ra)|0,Pa|0)|0;Ra=D;ab=gr(H|0,I|0,19)|0;Ka=D;Fa=mr(H|0,I|0,45)|0;Ka=D|Ka;Ua=gr(H|0,I|0,61)|0;Ga=D;cb=mr(H|0,I|0,3)|0;Ga=D|Ga;Wa=gr(H|0,I|0,6)|0;Ka=Ga^D^Ka;Ga=gr(_|0,aa|0,1)|0;La=D;Da=mr(_|0,aa|0,63)|0;La=D|La;Ca=gr(_|0,aa|0,8)|0;Ja=D;Oa=mr(_|0,aa|0,56)|0;Ja=D|Ja;Ma=gr(_|0,aa|0,7)|0;La=_q((Oa|Ca)^Ma^(Da|Ga)|0,Ja^D^La|0,P|0,Q|0)|0;La=_q(La|0,D|0,a|0,x|0)|0;P=_q(La|0,D|0,(cb|Ua)^Wa^(Fa|ab)|0,Ka|0)|0;Q=D;Ka=gr(Va|0,Ta|0,28)|0;ab=D;Fa=mr(Va|0,Ta|0,36)|0;ab=D|ab;Wa=gr(Va|0,Ta|0,34)|0;Ua=D;cb=mr(Va|0,Ta|0,30)|0;Ua=ab^(D|Ua);ab=gr(Va|0,Ta|0,39)|0;La=D;Ja=mr(Va|0,Ta|0,25)|0;La=_q((Fa|Ka)^(cb|Wa)^(Ja|ab)|0,Ua^(D|La)|0,Va&(Za^_a)^Za&_a|0,Ta&(Xa^Ia)^Xa&Ia|0)|0;Ua=D;Qa=_q(Pa|0,Ra|0,Ea|0,Qa|0)|0;Ea=D;Ra=_q(La|0,Ua|0,Pa|0,Ra|0)|0;Pa=D;Ua=gr(Qa|0,Ea|0,14)|0;La=D;ab=mr(Qa|0,Ea|0,50)|0;La=D|La;Ja=gr(Qa|0,Ea|0,18)|0;Wa=D;cb=mr(Qa|0,Ea|0,46)|0;Wa=La^(D|Wa);La=gr(Qa|0,Ea|0,41)|0;Ka=D;Fa=mr(Qa|0,Ea|0,23)|0;Ka=Wa^(D|Ka);Wa=72+((Z|7)<<3)|0;Wa=_q(c[Wa>>2]|0,c[Wa+4>>2]|0,_|0,aa|0)|0;bb=_q(Wa|0,D|0,Sa|0,bb|0)|0;bb=_q(bb|0,D|0,Na&~Qa^Qa&Ha|0,$a&~Ea^Ea&Ya|0)|0;Ka=_q(bb|0,D|0,(ab|Ua)^(cb|Ja)^(Fa|La)|0,Ka|0)|0;La=D;Fa=gr(L|0,M|0,19)|0;Ja=D;cb=mr(L|0,M|0,45)|0;Ja=D|Ja;Ua=gr(L|0,M|0,61)|0;ab=D;bb=mr(L|0,M|0,3)|0;ab=D|ab;Sa=gr(L|0,M|0,6)|0;Ja=ab^D^Ja;ab=gr(ba|0,ca|0,1)|0;Wa=D;Ga=mr(ba|0,ca|0,63)|0;Wa=D|Wa;Da=gr(ba|0,ca|0,8)|0;Ma=D;Ca=mr(ba|0,ca|0,56)|0;Ma=D|Ma;Oa=gr(ba|0,ca|0,7)|0;Wa=_q((Ca|Da)^Oa^(Ga|ab)|0,Ma^D^Wa|0,_|0,aa|0)|0;Wa=_q(Wa|0,D|0,R|0,S|0)|0;_=_q(Wa|0,D|0,(bb|Ua)^Sa^(cb|Fa)|0,Ja|0)|0;aa=D;Ja=gr(Ra|0,Pa|0,28)|0;Fa=D;cb=mr(Ra|0,Pa|0,36)|0;Fa=D|Fa;Sa=gr(Ra|0,Pa|0,34)|0;Ua=D;bb=mr(Ra|0,Pa|0,30)|0;Ua=Fa^(D|Ua);Fa=gr(Ra|0,Pa|0,39)|0;Wa=D;Ma=mr(Ra|0,Pa|0,25)|0;Wa=_q((cb|Ja)^(bb|Sa)^(Ma|Fa)|0,Ua^(D|Wa)|0,Ra&(Va^Za)^Va&Za|0,Pa&(Ta^Xa)^Ta&Xa|0)|0;Ua=D;Ia=_q(Ka|0,La|0,_a|0,Ia|0)|0;_a=D;La=_q(Wa|0,Ua|0,Ka|0,La|0)|0;Ka=D;Ua=gr(Ia|0,_a|0,14)|0;Wa=D;Fa=mr(Ia|0,_a|0,50)|0;Wa=D|Wa;Ma=gr(Ia|0,_a|0,18)|0;Sa=D;bb=mr(Ia|0,_a|0,46)|0;Sa=Wa^(D|Sa);Wa=gr(Ia|0,_a|0,41)|0;Ja=D;cb=mr(Ia|0,_a|0,23)|0;Ja=Sa^(D|Ja);Sa=72+((Z|8)<<3)|0;Sa=_q(c[Sa>>2]|0,c[Sa+4>>2]|0,ba|0,ca|0)|0;$a=_q(Sa|0,D|0,Na|0,$a|0)|0;$a=_q($a|0,D|0,Ha&~Ia^Ia&Qa|0,Ya&~_a^_a&Ea|0)|0;Ja=_q($a|0,D|0,(Fa|Ua)^(bb|Ma)^(cb|Wa)|0,Ja|0)|0;Wa=D;cb=gr(P|0,Q|0,19)|0;Ma=D;bb=mr(P|0,Q|0,45)|0;Ma=D|Ma;Ua=gr(P|0,Q|0,61)|0;Fa=D;$a=mr(P|0,Q|0,3)|0;Fa=D|Fa;Na=gr(P|0,Q|0,6)|0;Ma=Fa^D^Ma;Fa=gr(X|0,Y|0,1)|0;Sa=D;ab=mr(X|0,Y|0,63)|0;Sa=D|Sa;Ga=gr(X|0,Y|0,8)|0;Oa=D;Da=mr(X|0,Y|0,56)|0;Oa=D|Oa;Ca=gr(X|0,Y|0,7)|0;Sa=Oa^D^Sa;Oa=_q(V|0,W|0,ba|0,ca|0)|0;Sa=_q(Oa|0,D|0,(Da|Ga)^Ca^(ab|Fa)|0,Sa|0)|0;ba=_q(Sa|0,D|0,($a|Ua)^Na^(bb|cb)|0,Ma|0)|0;ca=D;Ma=gr(La|0,Ka|0,28)|0;cb=D;bb=mr(La|0,Ka|0,36)|0;cb=D|cb;Na=gr(La|0,Ka|0,34)|0;Ua=D;$a=mr(La|0,Ka|0,30)|0;Ua=cb^(D|Ua);cb=gr(La|0,Ka|0,39)|0;Sa=D;Fa=mr(La|0,Ka|0,25)|0;Sa=_q((bb|Ma)^($a|Na)^(Fa|cb)|0,Ua^(D|Sa)|0,La&(Ra^Va)^Ra&Va|0,Ka&(Pa^Ta)^Pa&Ta|0)|0;Ua=D;Xa=_q(Ja|0,Wa|0,Za|0,Xa|0)|0;Za=D;Wa=_q(Sa|0,Ua|0,Ja|0,Wa|0)|0;Ja=D;Ua=gr(Xa|0,Za|0,14)|0;Sa=D;cb=mr(Xa|0,Za|0,50)|0;Sa=D|Sa;Fa=gr(Xa|0,Za|0,18)|0;Na=D;$a=mr(Xa|0,Za|0,46)|0;Na=Sa^(D|Na);Sa=gr(Xa|0,Za|0,41)|0;Ma=D;bb=mr(Xa|0,Za|0,23)|0;Ma=Na^(D|Ma);Na=72+((Z|9)<<3)|0;Na=_q(c[Na>>2]|0,c[Na+4>>2]|0,X|0,Y|0)|0;Ya=_q(Na|0,D|0,Ha|0,Ya|0)|0;Ya=_q(Ya|0,D|0,Qa&~Xa^Xa&Ia|0,Ea&~Za^Za&_a|0)|0;Ma=_q(Ya|0,D|0,(cb|Ua)^($a|Fa)^(bb|Sa)|0,Ma|0)|0;Sa=D;bb=gr(_|0,aa|0,19)|0;Fa=D;$a=mr(_|0,aa|0,45)|0;Fa=D|Fa;Ua=gr(_|0,aa|0,61)|0;cb=D;Ya=mr(_|0,aa|0,3)|0;cb=D|cb;Ha=gr(_|0,aa|0,6)|0;Fa=cb^D^Fa;cb=gr(A|0,B|0,1)|0;Na=D;ab=mr(A|0,B|0,63)|0;Na=D|Na;Ca=gr(A|0,B|0,8)|0;Ga=D;Da=mr(A|0,B|0,56)|0;Ga=D|Ga;Oa=gr(A|0,B|0,7)|0;Na=_q((Da|Ca)^Oa^(ab|cb)|0,Ga^D^Na|0,X|0,Y|0)|0;Na=_q(Na|0,D|0,y|0,z|0)|0;X=_q(Na|0,D|0,(Ya|Ua)^Ha^($a|bb)|0,Fa|0)|0;Y=D;Fa=gr(Wa|0,Ja|0,28)|0;bb=D;$a=mr(Wa|0,Ja|0,36)|0;bb=D|bb;Ha=gr(Wa|0,Ja|0,34)|0;Ua=D;Ya=mr(Wa|0,Ja|0,30)|0;Ua=bb^(D|Ua);bb=gr(Wa|0,Ja|0,39)|0;Na=D;Ga=mr(Wa|0,Ja|0,25)|0;Na=_q(($a|Fa)^(Ya|Ha)^(Ga|bb)|0,Ua^(D|Na)|0,Wa&(La^Ra)^La&Ra|0,Ja&(Ka^Pa)^Ka&Pa|0)|0;Ua=D;Ta=_q(Ma|0,Sa|0,Va|0,Ta|0)|0;Va=D;Sa=_q(Na|0,Ua|0,Ma|0,Sa|0)|0;Ma=D;Ua=gr(Ta|0,Va|0,14)|0;Na=D;bb=mr(Ta|0,Va|0,50)|0;Na=D|Na;Ga=gr(Ta|0,Va|0,18)|0;Ha=D;Ya=mr(Ta|0,Va|0,46)|0;Ha=Na^(D|Ha);Na=gr(Ta|0,Va|0,41)|0;Fa=D;$a=mr(Ta|0,Va|0,23)|0;Fa=Ha^(D|Fa);Ha=72+((Z|10)<<3)|0;Ha=_q(c[Ha>>2]|0,c[Ha+4>>2]|0,A|0,B|0)|0;Ea=_q(Ha|0,D|0,Qa|0,Ea|0)|0;Ea=_q(Ea|0,D|0,Ia&~Ta^Ta&Xa|0,_a&~Va^Va&Za|0)|0;Fa=_q(Ea|0,D|0,(bb|Ua)^(Ya|Ga)^($a|Na)|0,Fa|0)|0;Na=D;$a=gr(ba|0,ca|0,19)|0;Ga=D;Ya=mr(ba|0,ca|0,45)|0;Ga=D|Ga;Ua=gr(ba|0,ca|0,61)|0;bb=D;Ea=mr(ba|0,ca|0,3)|0;bb=D|bb;Qa=gr(ba|0,ca|0,6)|0;Ga=bb^D^Ga;bb=gr(F|0,G|0,1)|0;Ha=D;cb=mr(F|0,G|0,63)|0;Ha=D|Ha;ab=gr(F|0,G|0,8)|0;Oa=D;Ca=mr(F|0,G|0,56)|0;Oa=D|Oa;Da=gr(F|0,G|0,7)|0;Ha=_q((Ca|ab)^Da^(cb|bb)|0,Oa^D^Ha|0,A|0,B|0)|0;Ha=_q(Ha|0,D|0,C|0,E|0)|0;A=_q(Ha|0,D|0,(Ea|Ua)^Qa^(Ya|$a)|0,Ga|0)|0;B=D;Ga=gr(Sa|0,Ma|0,28)|0;$a=D;Ya=mr(Sa|0,Ma|0,36)|0;$a=D|$a;Qa=gr(Sa|0,Ma|0,34)|0;Ua=D;Ea=mr(Sa|0,Ma|0,30)|0;Ua=$a^(D|Ua);$a=gr(Sa|0,Ma|0,39)|0;Ha=D;Oa=mr(Sa|0,Ma|0,25)|0;Ha=_q((Ya|Ga)^(Ea|Qa)^(Oa|$a)|0,Ua^(D|Ha)|0,Sa&(Wa^La)^Wa&La|0,Ma&(Ja^Ka)^Ja&Ka|0)|0;Ua=D;Pa=_q(Fa|0,Na|0,Ra|0,Pa|0)|0;Ra=D;Na=_q(Ha|0,Ua|0,Fa|0,Na|0)|0;Fa=D;Ua=gr(Pa|0,Ra|0,14)|0;Ha=D;$a=mr(Pa|0,Ra|0,50)|0;Ha=D|Ha;Oa=gr(Pa|0,Ra|0,18)|0;Qa=D;Ea=mr(Pa|0,Ra|0,46)|0;Qa=Ha^(D|Qa);Ha=gr(Pa|0,Ra|0,41)|0;Ga=D;Ya=mr(Pa|0,Ra|0,23)|0;Ga=Qa^(D|Ga);Qa=72+((Z|11)<<3)|0;Qa=_q(c[Qa>>2]|0,c[Qa+4>>2]|0,F|0,G|0)|0;_a=_q(Qa|0,D|0,Ia|0,_a|0)|0;_a=_q(_a|0,D|0,Xa&~Pa^Pa&Ta|0,Za&~Ra^Ra&Va|0)|0;Ga=_q(_a|0,D|0,($a|Ua)^(Ea|Oa)^(Ya|Ha)|0,Ga|0)|0;Ha=D;Ya=gr(X|0,Y|0,19)|0;Oa=D;Ea=mr(X|0,Y|0,45)|0;Oa=D|Oa;Ua=gr(X|0,Y|0,61)|0;$a=D;_a=mr(X|0,Y|0,3)|0;$a=D|$a;Ia=gr(X|0,Y|0,6)|0;Oa=$a^D^Oa;$a=gr(J|0,K|0,1)|0;Qa=D;bb=mr(J|0,K|0,63)|0;Qa=D|Qa;cb=gr(J|0,K|0,8)|0;Da=D;ab=mr(J|0,K|0,56)|0;Da=D|Da;Ca=gr(J|0,K|0,7)|0;Qa=_q((ab|cb)^Ca^(bb|$a)|0,Da^D^Qa|0,F|0,G|0)|0;Qa=_q(Qa|0,D|0,H|0,I|0)|0;F=_q(Qa|0,D|0,(_a|Ua)^Ia^(Ea|Ya)|0,Oa|0)|0;G=D;Oa=gr(Na|0,Fa|0,28)|0;Ya=D;Ea=mr(Na|0,Fa|0,36)|0;Ya=D|Ya;Ia=gr(Na|0,Fa|0,34)|0;Ua=D;_a=mr(Na|0,Fa|0,30)|0;Ua=Ya^(D|Ua);Ya=gr(Na|0,Fa|0,39)|0;Qa=D;Da=mr(Na|0,Fa|0,25)|0;Qa=_q((Ea|Oa)^(_a|Ia)^(Da|Ya)|0,Ua^(D|Qa)|0,Na&(Sa^Wa)^Sa&Wa|0,Fa&(Ma^Ja)^Ma&Ja|0)|0;Ua=D;Ka=_q(Ga|0,Ha|0,La|0,Ka|0)|0;La=D;Ha=_q(Qa|0,Ua|0,Ga|0,Ha|0)|0;Ga=D;Ua=gr(Ka|0,La|0,14)|0;Qa=D;Ya=mr(Ka|0,La|0,50)|0;Qa=D|Qa;Da=gr(Ka|0,La|0,18)|0;Ia=D;_a=mr(Ka|0,La|0,46)|0;Ia=Qa^(D|Ia);Qa=gr(Ka|0,La|0,41)|0;Oa=D;Ea=mr(Ka|0,La|0,23)|0;Oa=Ia^(D|Oa);Ia=72+((Z|12)<<3)|0;Ia=_q(c[Ia>>2]|0,c[Ia+4>>2]|0,J|0,K|0)|0;Za=_q(Ia|0,D|0,Xa|0,Za|0)|0;Za=_q(Za|0,D|0,Ta&~Ka^Ka&Pa|0,Va&~La^La&Ra|0)|0;Oa=_q(Za|0,D|0,(Ya|Ua)^(_a|Da)^(Ea|Qa)|0,Oa|0)|0;Qa=D;Ea=gr(A|0,B|0,19)|0;Da=D;_a=mr(A|0,B|0,45)|0;Da=D|Da;Ua=gr(A|0,B|0,61)|0;Ya=D;Za=mr(A|0,B|0,3)|0;Ya=D|Ya;Xa=gr(A|0,B|0,6)|0;Da=Ya^D^Da;Ya=gr(N|0,O|0,1)|0;Ia=D;$a=mr(N|0,O|0,63)|0;Ia=D|Ia;bb=gr(N|0,O|0,8)|0;Ca=D;cb=mr(N|0,O|0,56)|0;Ca=D|Ca;ab=gr(N|0,O|0,7)|0;Ia=_q((cb|bb)^ab^($a|Ya)|0,Ca^D^Ia|0,J|0,K|0)|0;Ia=_q(Ia|0,D|0,L|0,M|0)|0;J=_q(Ia|0,D|0,(Za|Ua)^Xa^(_a|Ea)|0,Da|0)|0;K=D;Da=gr(Ha|0,Ga|0,28)|0;Ea=D;_a=mr(Ha|0,Ga|0,36)|0;Ea=D|Ea;Xa=gr(Ha|0,Ga|0,34)|0;Ua=D;Za=mr(Ha|0,Ga|0,30)|0;Ua=Ea^(D|Ua);Ea=gr(Ha|0,Ga|0,39)|0;Ia=D;Ca=mr(Ha|0,Ga|0,25)|0;Ia=_q((_a|Da)^(Za|Xa)^(Ca|Ea)|0,Ua^(D|Ia)|0,Ha&(Na^Sa)^Na&Sa|0,Ga&(Fa^Ma)^Fa&Ma|0)|0;Ua=D;n=_q(Oa|0,Qa|0,Wa|0,Ja|0)|0;o=D;v=_q(Ia|0,Ua|0,Oa|0,Qa|0)|0;w=D;Qa=gr(n|0,o|0,14)|0;Oa=D;Ua=mr(n|0,o|0,50)|0;Oa=D|Oa;Ia=gr(n|0,o|0,18)|0;Ja=D;Wa=mr(n|0,o|0,46)|0;Ja=Oa^(D|Ja);Oa=gr(n|0,o|0,41)|0;Ea=D;Ca=mr(n|0,o|0,23)|0;Ea=Ja^(D|Ea);Ja=72+((Z|13)<<3)|0;Ja=_q(c[Ja>>2]|0,c[Ja+4>>2]|0,N|0,O|0)|0;Va=_q(Ja|0,D|0,Ta|0,Va|0)|0;Va=_q(Va|0,D|0,Pa&~n^n&Ka|0,Ra&~o^o&La|0)|0;Ea=_q(Va|0,D|0,(Ua|Qa)^(Wa|Ia)^(Ca|Oa)|0,Ea|0)|0;Oa=D;Ca=gr(F|0,G|0,19)|0;Ia=D;Wa=mr(F|0,G|0,45)|0;Ia=D|Ia;Qa=gr(F|0,G|0,61)|0;Ua=D;Va=mr(F|0,G|0,3)|0;Ua=D|Ua;Ta=gr(F|0,G|0,6)|0;Ia=Ua^D^Ia;Ua=gr(T|0,U|0,1)|0;Ja=D;Xa=mr(T|0,U|0,63)|0;Ja=D|Ja;Za=gr(T|0,U|0,8)|0;Da=D;_a=mr(T|0,U|0,56)|0;Da=D|Da;Ya=gr(T|0,U|0,7)|0;Ja=_q((_a|Za)^Ya^(Xa|Ua)|0,Da^D^Ja|0,N|0,O|0)|0;Ja=_q(Ja|0,D|0,P|0,Q|0)|0;N=_q(Ja|0,D|0,(Va|Qa)^Ta^(Wa|Ca)|0,Ia|0)|0;O=D;Ia=gr(v|0,w|0,28)|0;Ca=D;Wa=mr(v|0,w|0,36)|0;Ca=D|Ca;Ta=gr(v|0,w|0,34)|0;Qa=D;Va=mr(v|0,w|0,30)|0;Qa=Ca^(D|Qa);Ca=gr(v|0,w|0,39)|0;Ja=D;Da=mr(v|0,w|0,25)|0;Ja=_q((Wa|Ia)^(Va|Ta)^(Da|Ca)|0,Qa^(D|Ja)|0,v&(Ha^Na)^Ha&Na|0,w&(Ga^Fa)^Ga&Fa|0)|0;Qa=D;j=_q(Ea|0,Oa|0,Sa|0,Ma|0)|0;k=D;s=_q(Ja|0,Qa|0,Ea|0,Oa|0)|0;u=D;Oa=gr(j|0,k|0,14)|0;Ea=D;Qa=mr(j|0,k|0,50)|0;Ea=D|Ea;Ja=gr(j|0,k|0,18)|0;Ma=D;Sa=mr(j|0,k|0,46)|0;Ma=Ea^(D|Ma);Ea=gr(j|0,k|0,41)|0;Ca=D;Da=mr(j|0,k|0,23)|0;Ca=Ma^(D|Ca);Ma=72+((Z|14)<<3)|0;Ma=_q(c[Ma>>2]|0,c[Ma+4>>2]|0,T|0,U|0)|0;Ra=_q(Ma|0,D|0,Pa|0,Ra|0)|0;Ra=_q(Ra|0,D|0,Ka&~j^j&n|0,La&~k^k&o|0)|0;Ca=_q(Ra|0,D|0,(Qa|Oa)^(Sa|Ja)^(Da|Ea)|0,Ca|0)|0;Ea=D;Da=gr(J|0,K|0,19)|0;Ja=D;Sa=mr(J|0,K|0,45)|0;Ja=D|Ja;Oa=gr(J|0,K|0,61)|0;Qa=D;Ra=mr(J|0,K|0,3)|0;Qa=D|Qa;Pa=gr(J|0,K|0,6)|0;Ja=Qa^D^Ja;Qa=gr(a|0,x|0,1)|0;Ma=D;Ta=mr(a|0,x|0,63)|0;Ma=D|Ma;Va=gr(a|0,x|0,8)|0;Ia=D;Wa=mr(a|0,x|0,56)|0;Ia=D|Ia;Ua=gr(a|0,x|0,7)|0;Ma=_q((Wa|Va)^Ua^(Ta|Qa)|0,Ia^D^Ma|0,T|0,U|0)|0;Ma=_q(Ma|0,D|0,_|0,aa|0)|0;T=_q(Ma|0,D|0,(Ra|Oa)^Pa^(Sa|Da)|0,Ja|0)|0;U=D;Ja=gr(s|0,u|0,28)|0;Da=D;Sa=mr(s|0,u|0,36)|0;Da=D|Da;Pa=gr(s|0,u|0,34)|0;Oa=D;Ra=mr(s|0,u|0,30)|0;Oa=Da^(D|Oa);Da=gr(s|0,u|0,39)|0;Ma=D;Ia=mr(s|0,u|0,25)|0;Ma=_q((Sa|Ja)^(Ra|Pa)^(Ia|Da)|0,Oa^(D|Ma)|0,s&(v^Ha)^v&Ha|0,u&(w^Ga)^w&Ga|0)|0;Oa=D;h=_q(Ca|0,Ea|0,Na|0,Fa|0)|0;i=D;r=_q(Ma|0,Oa|0,Ca|0,Ea|0)|0;t=D;Ea=gr(h|0,i|0,14)|0;Ca=D;Oa=mr(h|0,i|0,50)|0;Ca=D|Ca;Ma=gr(h|0,i|0,18)|0;Fa=D;Na=mr(h|0,i|0,46)|0;Fa=Ca^(D|Fa);Ca=gr(h|0,i|0,41)|0;Da=D;Ia=mr(h|0,i|0,23)|0;Da=Fa^(D|Da);Fa=72+((Z|15)<<3)|0;Fa=_q(c[Fa>>2]|0,c[Fa+4>>2]|0,a|0,x|0)|0;La=_q(Fa|0,D|0,Ka|0,La|0)|0;La=_q(La|0,D|0,n&~h^h&j|0,o&~i^i&k|0)|0;Da=_q(La|0,D|0,(Oa|Ea)^(Na|Ma)^(Ia|Ca)|0,Da|0)|0;Ca=D;Ia=gr(N|0,O|0,19)|0;Ma=D;Na=mr(N|0,O|0,45)|0;Ma=D|Ma;Ea=gr(N|0,O|0,61)|0;Oa=D;La=mr(N|0,O|0,3)|0;Oa=D|Oa;Ka=gr(N|0,O|0,6)|0;Ma=Oa^D^Ma;Oa=gr(R|0,S|0,1)|0;Fa=D;Pa=mr(R|0,S|0,63)|0;Fa=D|Fa;Ra=gr(R|0,S|0,8)|0;Ja=D;Sa=mr(R|0,S|0,56)|0;Ja=D|Ja;Qa=gr(R|0,S|0,7)|0;Fa=_q((Sa|Ra)^Qa^(Pa|Oa)|0,Ja^D^Fa|0,a|0,x|0)|0;Fa=_q(Fa|0,D|0,ba|0,ca|0)|0;a=_q(Fa|0,D|0,(La|Ea)^Ka^(Na|Ia)|0,Ma|0)|0;x=D;Ma=gr(r|0,t|0,28)|0;Ia=D;Na=mr(r|0,t|0,36)|0;Ia=D|Ia;Ka=gr(r|0,t|0,34)|0;Ea=D;La=mr(r|0,t|0,30)|0;Ea=Ia^(D|Ea);Ia=gr(r|0,t|0,39)|0;Fa=D;Ja=mr(r|0,t|0,25)|0;Fa=_q((Na|Ma)^(La|Ka)^(Ja|Ia)|0,Ea^(D|Fa)|0,r&(s^v)^s&v|0,t&(u^w)^u&w|0)|0;Ea=D;f=_q(Da|0,Ca|0,Ha|0,Ga|0)|0;g=D;p=_q(Fa|0,Ea|0,Da|0,Ca|0)|0;q=D;Z=Z+16|0}while((Z|0)<64);Za=ua;c[Za>>2]=R;c[Za+4>>2]=S;Za=ea;c[Za>>2]=T;c[Za+4>>2]=U;Za=fa;c[Za>>2]=X;c[Za+4>>2]=Y;Za=ga;c[Za>>2]=V;c[Za+4>>2]=W;Za=ha;c[Za>>2]=a;c[Za+4>>2]=x;Za=ia;c[Za>>2]=A;c[Za+4>>2]=B;Za=ja;c[Za>>2]=y;c[Za+4>>2]=z;Za=ka;c[Za>>2]=F;c[Za+4>>2]=G;Za=la;c[Za>>2]=C;c[Za+4>>2]=E;Za=ma;c[Za>>2]=J;c[Za+4>>2]=K;Za=na;c[Za>>2]=H;c[Za+4>>2]=I;Za=oa;c[Za>>2]=N;c[Za+4>>2]=O;Za=pa;c[Za>>2]=L;c[Za+4>>2]=M;Za=qa;c[Za>>2]=P;c[Za+4>>2]=Q;Za=ra;c[Za>>2]=_;c[Za+4>>2]=aa;Za=sa;c[Za>>2]=ba;c[Za+4>>2]=ca;Za=gr(f|0,g|0,14)|0;$a=D;_a=mr(f|0,g|0,50)|0;$a=D|$a;Xa=gr(f|0,g|0,18)|0;bb=D;ab=mr(f|0,g|0,46)|0;bb=$a^(D|bb);$a=gr(f|0,g|0,41)|0;cb=D;Ya=mr(f|0,g|0,23)|0;cb=bb^(D|cb);bb=_q(R|0,S|0,-366583396,-903397682)|0;n=_q(bb|0,D|0,n|0,o|0)|0;n=_q(n|0,D|0,j&~f^f&h|0,k&~g^g&i|0)|0;cb=_q(n|0,D|0,(_a|Za)^(ab|Xa)^(Ya|$a)|0,cb|0)|0;$a=D;n=gr(p|0,q|0,28)|0;Ya=D;Xa=mr(p|0,q|0,36)|0;Ya=D|Ya;ab=gr(p|0,q|0,34)|0;Za=D;o=mr(p|0,q|0,30)|0;Za=Ya^(D|Za);Ya=gr(p|0,q|0,39)|0;_a=D;bb=mr(p|0,q|0,25)|0;_a=_q((Xa|n)^(o|ab)^(bb|Ya)|0,Za^(D|_a)|0,p&(r^s)^r&s|0,q&(t^u)^t&u|0)|0;Za=D;Ya=_q(cb|0,$a|0,v|0,w|0)|0;bb=D;$a=_q(_a|0,Za|0,cb|0,$a|0)|0;cb=D;Za=gr(Ya|0,bb|0,14)|0;_a=D;ab=mr(Ya|0,bb|0,50)|0;_a=D|_a;w=gr(Ya|0,bb|0,18)|0;o=D;n=mr(Ya|0,bb|0,46)|0;o=_a^(D|o);_a=gr(Ya|0,bb|0,41)|0;v=D;Xa=mr(Ya|0,bb|0,23)|0;v=o^(D|v);o=_q(V|0,W|0,566280711,-779700025)|0;k=_q(o|0,D|0,j|0,k|0)|0;k=_q(k|0,D|0,h&~Ya^Ya&f|0,i&~bb^bb&g|0)|0;v=_q(k|0,D|0,(ab|Za)^(n|w)^(Xa|_a)|0,v|0)|0;_a=D;k=gr($a|0,cb|0,28)|0;Xa=D;w=mr($a|0,cb|0,36)|0;Xa=D|Xa;j=gr($a|0,cb|0,34)|0;n=D;Za=mr($a|0,cb|0,30)|0;n=Xa^(D|n);Xa=gr($a|0,cb|0,39)|0;ab=D;o=mr($a|0,cb|0,25)|0;ab=_q((w|k)^(Za|j)^(o|Xa)|0,n^(D|ab)|0,$a&(p^r)^p&r|0,cb&(q^t)^q&t|0)|0;n=D;Xa=_q(v|0,_a|0,s|0,u|0)|0;o=D;_a=_q(ab|0,n|0,v|0,_a|0)|0;v=D;n=gr(Xa|0,o|0,14)|0;ab=D;j=mr(Xa|0,o|0,50)|0;ab=D|ab;Za=gr(Xa|0,o|0,18)|0;k=D;u=mr(Xa|0,o|0,46)|0;k=ab^(D|k);ab=gr(Xa|0,o|0,41)|0;s=D;w=mr(Xa|0,o|0,23)|0;s=k^(D|s);k=_q(y|0,z|0,-840897762,-354779690)|0;i=_q(k|0,D|0,h|0,i|0)|0;i=_q(i|0,D|0,f&~Xa^Xa&Ya|0,g&~o^o&bb|0)|0;s=_q(i|0,D|0,(j|n)^(u|Za)^(w|ab)|0,s|0)|0;ab=D;w=gr(_a|0,v|0,28)|0;Za=D;u=mr(_a|0,v|0,36)|0;Za=D|Za;n=gr(_a|0,v|0,34)|0;j=D;i=mr(_a|0,v|0,30)|0;j=Za^(D|j);Za=gr(_a|0,v|0,39)|0;h=D;k=mr(_a|0,v|0,25)|0;h=_q((u|w)^(i|n)^(k|Za)|0,j^(D|h)|0,_a&($a^p)^$a&p|0,v&(cb^q)^cb&q|0)|0;j=D;Za=_q(s|0,ab|0,r|0,t|0)|0;k=D;ab=_q(h|0,j|0,s|0,ab|0)|0;s=D;j=gr(Za|0,k|0,14)|0;r=D;h=mr(Za|0,k|0,50)|0;r=D|r;n=gr(Za|0,k|0,18)|0;i=D;t=mr(Za|0,k|0,46)|0;i=r^(D|i);r=gr(Za|0,k|0,41)|0;w=D;u=mr(Za|0,k|0,23)|0;w=i^(D|w);i=_q(C|0,E|0,-294727304,-176337025)|0;g=_q(i|0,D|0,f|0,g|0)|0;g=_q(g|0,D|0,Ya&~Za^Za&Xa|0,bb&~k^k&o|0)|0;w=_q(g|0,D|0,(h|j)^(t|n)^(u|r)|0,w|0)|0;r=D;u=gr(ab|0,s|0,28)|0;n=D;t=mr(ab|0,s|0,36)|0;n=D|n;j=gr(ab|0,s|0,34)|0;g=D;h=mr(ab|0,s|0,30)|0;g=n^(D|g);n=gr(ab|0,s|0,39)|0;f=D;i=mr(ab|0,s|0,25)|0;f=_q((t|u)^(h|j)^(i|n)|0,g^(D|f)|0,ab&(_a^$a)^_a&$a|0,s&(v^cb)^v&cb|0)|0;g=D;n=_q(w|0,r|0,p|0,q|0)|0;i=D;r=_q(f|0,g|0,w|0,r|0)|0;w=D;g=gr(n|0,i|0,14)|0;p=D;f=mr(n|0,i|0,50)|0;p=D|p;j=gr(n|0,i|0,18)|0;h=D;q=mr(n|0,i|0,46)|0;h=p^(D|h);p=gr(n|0,i|0,41)|0;u=D;t=mr(n|0,i|0,23)|0;u=h^(D|u);h=_q(H|0,I|0,1914138554,116418474)|0;bb=_q(h|0,D|0,Ya|0,bb|0)|0;bb=_q(bb|0,D|0,Xa&~n^n&Za|0,o&~i^i&k|0)|0;u=_q(bb|0,D|0,(f|g)^(q|j)^(t|p)|0,u|0)|0;p=D;t=gr(r|0,w|0,28)|0;j=D;q=mr(r|0,w|0,36)|0;j=D|j;g=gr(r|0,w|0,34)|0;f=D;bb=mr(r|0,w|0,30)|0;f=j^(D|f);j=gr(r|0,w|0,39)|0;Ya=D;h=mr(r|0,w|0,25)|0;Ya=_q((q|t)^(bb|g)^(h|j)|0,f^(D|Ya)|0,r&(ab^_a)^ab&_a|0,w&(s^v)^s&v|0)|0;f=D;j=_q(u|0,p|0,$a|0,cb|0)|0;cb=D;p=_q(Ya|0,f|0,u|0,p|0)|0;u=D;f=gr(j|0,cb|0,14)|0;Ya=D;$a=mr(j|0,cb|0,50)|0;Ya=D|Ya;h=gr(j|0,cb|0,18)|0;g=D;bb=mr(j|0,cb|0,46)|0;g=Ya^(D|g);Ya=gr(j|0,cb|0,41)|0;t=D;q=mr(j|0,cb|0,23)|0;t=g^(D|t);g=_q(L|0,M|0,-1563912026,174292421)|0;o=_q(g|0,D|0,Xa|0,o|0)|0;o=_q(o|0,D|0,Za&~j^j&n|0,k&~cb^cb&i|0)|0;t=_q(o|0,D|0,($a|f)^(bb|h)^(q|Ya)|0,t|0)|0;Ya=D;q=gr(p|0,u|0,28)|0;h=D;bb=mr(p|0,u|0,36)|0;h=D|h;f=gr(p|0,u|0,34)|0;$a=D;o=mr(p|0,u|0,30)|0;$a=h^(D|$a);h=gr(p|0,u|0,39)|0;Xa=D;g=mr(p|0,u|0,25)|0;Xa=_q((bb|q)^(o|f)^(g|h)|0,$a^(D|Xa)|0,p&(r^ab)^r&ab|0,u&(w^s)^w&s|0)|0;$a=D;h=_q(t|0,Ya|0,_a|0,v|0)|0;v=D;Ya=_q(Xa|0,$a|0,t|0,Ya|0)|0;t=D;$a=gr(h|0,v|0,14)|0;Xa=D;_a=mr(h|0,v|0,50)|0;Xa=D|Xa;g=gr(h|0,v|0,18)|0;f=D;o=mr(h|0,v|0,46)|0;f=Xa^(D|f);Xa=gr(h|0,v|0,41)|0;q=D;bb=mr(h|0,v|0,23)|0;q=f^(D|q);f=_q(P|0,Q|0,-1090974290,289380356)|0;k=_q(f|0,D|0,Za|0,k|0)|0;k=_q(k|0,D|0,n&~h^h&j|0,i&~v^v&cb|0)|0;q=_q(k|0,D|0,(_a|$a)^(o|g)^(bb|Xa)|0,q|0)|0;Xa=D;bb=gr(Ya|0,t|0,28)|0;g=D;o=mr(Ya|0,t|0,36)|0;g=D|g;$a=gr(Ya|0,t|0,34)|0;_a=D;k=mr(Ya|0,t|0,30)|0;_a=g^(D|_a);g=gr(Ya|0,t|0,39)|0;Za=D;f=mr(Ya|0,t|0,25)|0;Za=_q((o|bb)^(k|$a)^(f|g)|0,_a^(D|Za)|0,Ya&(p^r)^p&r|0,t&(u^w)^u&w|0)|0;_a=D;g=_q(q|0,Xa|0,ab|0,s|0)|0;s=D;Xa=_q(Za|0,_a|0,q|0,Xa|0)|0;q=D;_a=gr(g|0,s|0,14)|0;Za=D;f=mr(g|0,s|0,50)|0;Za=D|Za;ab=gr(g|0,s|0,18)|0;$a=D;k=mr(g|0,s|0,46)|0;$a=Za^(D|$a);Za=gr(g|0,s|0,41)|0;bb=D;o=mr(g|0,s|0,23)|0;bb=$a^(D|bb);$a=_q(_|0,aa|0,320620315,460393269)|0;i=_q($a|0,D|0,n|0,i|0)|0;i=_q(i|0,D|0,j&~g^g&h|0,cb&~s^s&v|0)|0;bb=_q(i|0,D|0,(f|_a)^(k|ab)^(o|Za)|0,bb|0)|0;Za=D;o=gr(Xa|0,q|0,28)|0;ab=D;k=mr(Xa|0,q|0,36)|0;ab=D|ab;_a=gr(Xa|0,q|0,34)|0;f=D;i=mr(Xa|0,q|0,30)|0;f=ab^(D|f);ab=gr(Xa|0,q|0,39)|0;n=D;$a=mr(Xa|0,q|0,25)|0;n=_q((k|o)^(i|_a)^($a|ab)|0,f^(D|n)|0,Xa&(Ya^p)^Ya&p|0,q&(t^u)^t&u|0)|0;f=D;w=_q(bb|0,Za|0,r|0,w|0)|0;r=D;Za=_q(n|0,f|0,bb|0,Za|0)|0;bb=D;f=gr(w|0,r|0,14)|0;n=D;ab=mr(w|0,r|0,50)|0;n=D|n;$a=gr(w|0,r|0,18)|0;_a=D;i=mr(w|0,r|0,46)|0;_a=n^(D|_a);n=gr(w|0,r|0,41)|0;o=D;k=mr(w|0,r|0,23)|0;o=_a^(D|o);_a=_q(ba|0,ca|0,587496836,685471733)|0;cb=_q(_a|0,D|0,j|0,cb|0)|0;cb=_q(cb|0,D|0,h&~w^w&g|0,v&~r^r&s|0)|0;o=_q(cb|0,D|0,(ab|f)^(i|$a)^(k|n)|0,o|0)|0;n=D;k=gr(Za|0,bb|0,28)|0;$a=D;i=mr(Za|0,bb|0,36)|0;$a=D|$a;f=gr(Za|0,bb|0,34)|0;ab=D;cb=mr(Za|0,bb|0,30)|0;ab=$a^(D|ab);$a=gr(Za|0,bb|0,39)|0;j=D;_a=mr(Za|0,bb|0,25)|0;j=_q((i|k)^(cb|f)^(_a|$a)|0,ab^(D|j)|0,Za&(Xa^Ya)^Xa&Ya|0,bb&(q^t)^q&t|0)|0;ab=D;u=_q(o|0,n|0,p|0,u|0)|0;p=D;n=_q(j|0,ab|0,o|0,n|0)|0;o=D;ab=gr(u|0,p|0,14)|0;j=D;$a=mr(u|0,p|0,50)|0;j=D|j;_a=gr(u|0,p|0,18)|0;f=D;cb=mr(u|0,p|0,46)|0;f=j^(D|f);j=gr(u|0,p|0,41)|0;k=D;i=mr(u|0,p|0,23)|0;k=f^(D|k);f=_q(X|0,Y|0,1086792851,852142971)|0;v=_q(f|0,D|0,h|0,v|0)|0;v=_q(v|0,D|0,g&~u^u&w|0,s&~p^p&r|0)|0;k=_q(v|0,D|0,($a|ab)^(cb|_a)^(i|j)|0,k|0)|0;j=D;i=gr(n|0,o|0,28)|0;_a=D;cb=mr(n|0,o|0,36)|0;_a=D|_a;ab=gr(n|0,o|0,34)|0;$a=D;v=mr(n|0,o|0,30)|0;$a=_a^(D|$a);_a=gr(n|0,o|0,39)|0;h=D;f=mr(n|0,o|0,25)|0;h=_q((cb|i)^(v|ab)^(f|_a)|0,$a^(D|h)|0,n&(Za^Xa)^Za&Xa|0,o&(bb^q)^bb&q|0)|0;$a=D;t=_q(k|0,j|0,Ya|0,t|0)|0;Ya=D;j=_q(h|0,$a|0,k|0,j|0)|0;k=D;$a=gr(t|0,Ya|0,14)|0;h=D;_a=mr(t|0,Ya|0,50)|0;h=D|h;f=gr(t|0,Ya|0,18)|0;ab=D;v=mr(t|0,Ya|0,46)|0;ab=h^(D|ab);h=gr(t|0,Ya|0,41)|0;i=D;cb=mr(t|0,Ya|0,23)|0;i=ab^(D|i);ab=_q(A|0,B|0,365543100,1017036298)|0;s=_q(ab|0,D|0,g|0,s|0)|0;s=_q(s|0,D|0,w&~t^t&u|0,r&~Ya^Ya&p|0)|0;i=_q(s|0,D|0,(_a|$a)^(v|f)^(cb|h)|0,i|0)|0;h=D;cb=gr(j|0,k|0,28)|0;f=D;v=mr(j|0,k|0,36)|0;f=D|f;$a=gr(j|0,k|0,34)|0;_a=D;s=mr(j|0,k|0,30)|0;_a=f^(D|_a);f=gr(j|0,k|0,39)|0;g=D;ab=mr(j|0,k|0,25)|0;g=_q((v|cb)^(s|$a)^(ab|f)|0,_a^(D|g)|0,j&(n^Za)^n&Za|0,k&(o^bb)^o&bb|0)|0;_a=D;q=_q(i|0,h|0,Xa|0,q|0)|0;Xa=D;h=_q(g|0,_a|0,i|0,h|0)|0;i=D;_a=gr(q|0,Xa|0,14)|0;g=D;f=mr(q|0,Xa|0,50)|0;g=D|g;ab=gr(q|0,Xa|0,18)|0;$a=D;s=mr(q|0,Xa|0,46)|0;$a=g^(D|$a);g=gr(q|0,Xa|0,41)|0;cb=D;v=mr(q|0,Xa|0,23)|0;cb=$a^(D|cb);$a=_q(F|0,G|0,-1676669620,1126000580)|0;r=_q($a|0,D|0,w|0,r|0)|0;r=_q(r|0,D|0,u&~q^q&t|0,p&~Xa^Xa&Ya|0)|0;cb=_q(r|0,D|0,(f|_a)^(s|ab)^(v|g)|0,cb|0)|0;g=D;v=gr(h|0,i|0,28)|0;ab=D;s=mr(h|0,i|0,36)|0;ab=D|ab;_a=gr(h|0,i|0,34)|0;f=D;r=mr(h|0,i|0,30)|0;f=ab^(D|f);ab=gr(h|0,i|0,39)|0;w=D;$a=mr(h|0,i|0,25)|0;w=_q((s|v)^(r|_a)^($a|ab)|0,f^(D|w)|0,h&(j^n)^j&n|0,i&(k^o)^k&o|0)|0;f=D;bb=_q(cb|0,g|0,Za|0,bb|0)|0;Za=D;g=_q(w|0,f|0,cb|0,g|0)|0;cb=D;f=gr(bb|0,Za|0,14)|0;w=D;ab=mr(bb|0,Za|0,50)|0;w=D|w;$a=gr(bb|0,Za|0,18)|0;_a=D;r=mr(bb|0,Za|0,46)|0;_a=w^(D|_a);w=gr(bb|0,Za|0,41)|0;v=D;s=mr(bb|0,Za|0,23)|0;v=_a^(D|v);_a=_q(J|0,K|0,-885112138,1288033470)|0;p=_q(_a|0,D|0,u|0,p|0)|0;p=_q(p|0,D|0,t&~bb^bb&q|0,Ya&~Za^Za&Xa|0)|0;v=_q(p|0,D|0,(ab|f)^(r|$a)^(s|w)|0,v|0)|0;w=D;s=gr(g|0,cb|0,28)|0;$a=D;r=mr(g|0,cb|0,36)|0;$a=D|$a;f=gr(g|0,cb|0,34)|0;ab=D;p=mr(g|0,cb|0,30)|0;ab=$a^(D|ab);$a=gr(g|0,cb|0,39)|0;u=D;_a=mr(g|0,cb|0,25)|0;u=_q((r|s)^(p|f)^(_a|$a)|0,ab^(D|u)|0,g&(h^j)^h&j|0,cb&(i^k)^i&k|0)|0;ab=D;o=_q(v|0,w|0,n|0,o|0)|0;n=D;w=_q(u|0,ab|0,v|0,w|0)|0;v=D;ab=gr(o|0,n|0,14)|0;u=D;$a=mr(o|0,n|0,50)|0;u=D|u;_a=gr(o|0,n|0,18)|0;f=D;p=mr(o|0,n|0,46)|0;f=u^(D|f);u=gr(o|0,n|0,41)|0;s=D;r=mr(o|0,n|0,23)|0;s=f^(D|s);f=_q(N|0,O|0,-60457430,1501505948)|0;Ya=_q(f|0,D|0,t|0,Ya|0)|0;Ya=_q(Ya|0,D|0,q&~o^o&bb|0,Xa&~n^n&Za|0)|0;s=_q(Ya|0,D|0,($a|ab)^(p|_a)^(r|u)|0,s|0)|0;u=D;r=gr(w|0,v|0,28)|0;_a=D;p=mr(w|0,v|0,36)|0;_a=D|_a;ab=gr(w|0,v|0,34)|0;$a=D;Ya=mr(w|0,v|0,30)|0;$a=_a^(D|$a);_a=gr(w|0,v|0,39)|0;t=D;f=mr(w|0,v|0,25)|0;t=_q((p|r)^(Ya|ab)^(f|_a)|0,$a^(D|t)|0,w&(g^h)^g&h|0,v&(cb^i)^cb&i|0)|0;$a=D;k=_q(s|0,u|0,j|0,k|0)|0;j=D;u=_q(t|0,$a|0,s|0,u|0)|0;s=D;$a=gr(k|0,j|0,14)|0;t=D;_a=mr(k|0,j|0,50)|0;t=D|t;f=gr(k|0,j|0,18)|0;ab=D;Ya=mr(k|0,j|0,46)|0;ab=t^(D|ab);t=gr(k|0,j|0,41)|0;r=D;p=mr(k|0,j|0,23)|0;r=ab^(D|r);ab=_q(T|0,U|0,987167468,1607167915)|0;Xa=_q(ab|0,D|0,q|0,Xa|0)|0;Xa=_q(Xa|0,D|0,bb&~k^k&o|0,Za&~j^j&n|0)|0;r=_q(Xa|0,D|0,(_a|$a)^(Ya|f)^(p|t)|0,r|0)|0;t=D;p=gr(u|0,s|0,28)|0;f=D;Ya=mr(u|0,s|0,36)|0;f=D|f;$a=gr(u|0,s|0,34)|0;_a=D;Xa=mr(u|0,s|0,30)|0;_a=f^(D|_a);f=gr(u|0,s|0,39)|0;q=D;ab=mr(u|0,s|0,25)|0;q=_q((Ya|p)^(Xa|$a)^(ab|f)|0,_a^(D|q)|0,u&(w^g)^w&g|0,s&(v^cb)^v&cb|0)|0;_a=D;i=_q(r|0,t|0,h|0,i|0)|0;h=D;t=_q(q|0,_a|0,r|0,t|0)|0;r=D;_a=gr(i|0,h|0,14)|0;q=D;f=mr(i|0,h|0,50)|0;q=D|q;ab=gr(i|0,h|0,18)|0;$a=D;Xa=mr(i|0,h|0,46)|0;$a=q^(D|$a);q=gr(i|0,h|0,41)|0;p=D;Ya=mr(i|0,h|0,23)|0;p=$a^(D|p);$a=_q(a|0,x|0,1246189591,1816402316)|0;Za=_q($a|0,D|0,bb|0,Za|0)|0;Za=_q(Za|0,D|0,o&~i^i&k|0,n&~h^h&j|0)|0;p=_q(Za|0,D|0,(f|_a)^(Xa|ab)^(Ya|q)|0,p|0)|0;q=D;Ya=gr(t|0,r|0,28)|0;ab=D;Xa=mr(t|0,r|0,36)|0;ab=D|ab;_a=gr(t|0,r|0,34)|0;f=D;Za=mr(t|0,r|0,30)|0;f=ab^(D|f);ab=gr(t|0,r|0,39)|0;bb=D;$a=mr(t|0,r|0,25)|0;bb=_q((Xa|Ya)^(Za|_a)^($a|ab)|0,f^(D|bb)|0,t&(u^w)^u&w|0,r&(s^v)^s&v|0)|0;f=D;cb=_q(p|0,q|0,g|0,cb|0)|0;g=D;q=_q(bb|0,f|0,p|0,q|0)|0;p=va;p=_q(q|0,D|0,c[p>>2]|0,c[p+4>>2]|0)|0;q=D;f=va;c[f>>2]=p;c[f+4>>2]=q;f=wa;r=_q(c[f>>2]|0,c[f+4>>2]|0,t|0,r|0)|0;t=D;f=wa;c[f>>2]=r;c[f+4>>2]=t;f=xa;s=_q(c[f>>2]|0,c[f+4>>2]|0,u|0,s|0)|0;u=D;f=xa;c[f>>2]=s;c[f+4>>2]=u;f=ya;v=_q(c[f>>2]|0,c[f+4>>2]|0,w|0,v|0)|0;w=D;f=ya;c[f>>2]=v;c[f+4>>2]=w;f=za;f=_q(cb|0,g|0,c[f>>2]|0,c[f+4>>2]|0)|0;g=D;cb=za;c[cb>>2]=f;c[cb+4>>2]=g;cb=Aa;h=_q(c[cb>>2]|0,c[cb+4>>2]|0,i|0,h|0)|0;i=D;cb=Aa;c[cb>>2]=h;c[cb+4>>2]=i;cb=ta;j=_q(c[cb>>2]|0,c[cb+4>>2]|0,k|0,j|0)|0;k=D;cb=ta;c[cb>>2]=j;c[cb+4>>2]=k;cb=da;n=_q(c[cb>>2]|0,c[cb+4>>2]|0,o|0,n|0)|0;o=D;cb=da;c[cb>>2]=n;c[cb+4>>2]=o;e=e+-1|0;if(!e)break;else b=b+128|0}l=Ba;return 220}function gj(a,b){a=a|0;b=b|0;b=a+160|0;c[b>>2]=-1056596264;c[b+4>>2]=-876896931;b=a+168|0;c[b>>2]=914150663;c[b+4>>2]=1654270250;b=a+176|0;c[b>>2]=812702999;c[b+4>>2]=-1856437926;b=a+184|0;c[b>>2]=-150054599;c[b+4>>2]=355462360;b=a+192|0;c[b>>2]=-4191439;c[b+4>>2]=1731405415;b=a+200|0;c[b>>2]=1750603025;c[b+4>>2]=-1900787065;b=a+208|0;c[b>>2]=1694076839;c[b+4>>2]=-619958771;b=a+216|0;c[b>>2]=-1090891868;c[b+4>>2]=1203062813;b=a+128|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[a+148>>2]=128;c[a+152>>2]=34;return}function hj(a,b,c){a=a|0;b=b|0;c=c|0;c=kj(a,b,c)|0;Te(47);return c|0}
+function ij(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;i=((d[f+2>>0]|0)<<16|(d[f+3>>0]|0)<<24|(d[f+1>>0]|0)<<8|(d[f>>0]|0))^c[b+4096>>2];g=((d[f+6>>0]|0)<<16|(d[f+7>>0]|0)<<24|(d[f+5>>0]|0)<<8|(d[f+4>>0]|0))^c[b+4100>>2];h=((d[f+14>>0]|0)<<16|(d[f+15>>0]|0)<<24|(d[f+13>>0]|0)<<8|(d[f+12>>0]|0))^c[b+4108>>2];k=c[b+2048+((g>>>8&255)<<2)>>2]^c[b+1024+((g&255)<<2)>>2]^c[b+3072+((g>>>16&255)<<2)>>2]^c[b+(g>>>24<<2)>>2];j=k+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;f=((d[f+10>>0]|0)<<16|(d[f+11>>0]|0)<<24|(d[f+9>>0]|0)<<8|(d[f+8>>0]|0))^c[b+4104>>2]^j+(c[b+4128>>2]|0);l=f>>>1;m=l|f<<31;h=k+(c[b+4132>>2]|0)+j^(h<<1|h>>>31);j=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];f=j+(c[b+1024+((f>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((f>>>17&255)<<2)>>2]^c[b+3072+(m>>>24<<2)>>2])|0;i=f+(c[b+4136>>2]|0)^i;l=i>>>1;k=l|i<<31;f=j+(c[b+4140>>2]|0)+f^(g<<1|g>>>31);g=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];i=g+(c[b+1024+((i>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((i>>>17&255)<<2)>>2]^c[b+3072+(k>>>24<<2)>>2])|0;m=i+(c[b+4144>>2]|0)^m;l=m>>>1;j=l|m<<31;h=g+(c[b+4148>>2]|0)+i^(h<<1|h>>>31);i=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];m=i+(c[b+1024+((m>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((m>>>17&255)<<2)>>2]^c[b+3072+(j>>>24<<2)>>2])|0;k=m+(c[b+4152>>2]|0)^k;l=k>>>1;g=l|k<<31;f=i+(c[b+4156>>2]|0)+m^(f<<1|f>>>31);m=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];k=m+(c[b+1024+((k>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((k>>>17&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;j=k+(c[b+4160>>2]|0)^j;l=j>>>1;i=l|j<<31;h=m+(c[b+4164>>2]|0)+k^(h<<1|h>>>31);k=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((j>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((j>>>17&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;g=j+(c[b+4168>>2]|0)^g;l=g>>>1;m=l|g<<31;f=k+(c[b+4172>>2]|0)+j^(f<<1|f>>>31);j=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];g=j+(c[b+1024+((g>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((g>>>17&255)<<2)>>2]^c[b+3072+(m>>>24<<2)>>2])|0;i=g+(c[b+4176>>2]|0)^i;l=i>>>1;k=l|i<<31;h=j+(c[b+4180>>2]|0)+g^(h<<1|h>>>31);g=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];i=g+(c[b+1024+((i>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((i>>>17&255)<<2)>>2]^c[b+3072+(k>>>24<<2)>>2])|0;m=i+(c[b+4184>>2]|0)^m;l=m>>>1;j=l|m<<31;f=g+(c[b+4188>>2]|0)+i^(f<<1|f>>>31);i=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];m=i+(c[b+1024+((m>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((m>>>17&255)<<2)>>2]^c[b+3072+(j>>>24<<2)>>2])|0;k=m+(c[b+4192>>2]|0)^k;l=k>>>1;g=l|k<<31;h=i+(c[b+4196>>2]|0)+m^(h<<1|h>>>31);m=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];k=m+(c[b+1024+((k>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((k>>>17&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;j=k+(c[b+4200>>2]|0)^j;l=j>>>1;i=l|j<<31;f=m+(c[b+4204>>2]|0)+k^(f<<1|f>>>31);k=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];j=k+(c[b+1024+((j>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((j>>>17&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;g=j+(c[b+4208>>2]|0)^g;l=g>>>1;m=l|g<<31;h=k+(c[b+4212>>2]|0)+j^(h<<1|h>>>31);j=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];g=j+(c[b+1024+((g>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((g>>>17&255)<<2)>>2]^c[b+3072+(m>>>24<<2)>>2])|0;i=g+(c[b+4216>>2]|0)^i;l=i>>>1;k=l|i<<31;f=j+(c[b+4220>>2]|0)+g^(f<<1|f>>>31);g=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];i=g+(c[b+1024+((i>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((i>>>17&255)<<2)>>2]^c[b+3072+(k>>>24<<2)>>2])|0;m=i+(c[b+4224>>2]|0)^m;l=m>>>1;j=l|m<<31;h=g+(c[b+4228>>2]|0)+i^(h<<1|h>>>31);i=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];m=i+(c[b+1024+((m>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((m>>>17&255)<<2)>>2]^c[b+3072+(j>>>24<<2)>>2])|0;k=m+(c[b+4232>>2]|0)^k;l=k>>>1;g=l|k<<31;f=i+(c[b+4236>>2]|0)+m^(f<<1|f>>>31);m=c[b+2048+((f>>>8&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((f>>>16&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];k=m+(c[b+1024+((k>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((k>>>17&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;j=k+(c[b+4240>>2]|0)^j;l=j>>>1;i=l|j<<31;h=m+(c[b+4244>>2]|0)+k^(h<<1|h>>>31);k=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((j>>>9&255)<<2)>>2]^c[b+((l&255)<<2)>>2]^c[b+2048+((j>>>17&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;g=j+(c[b+4248>>2]|0)^g;f=k+(c[b+4252>>2]|0)+j^(f<<1|f>>>31);i=c[b+4112>>2]^i;a[e+3>>0]=i>>>24;a[e+2>>0]=i>>>16;a[e+1>>0]=i>>>8;a[e>>0]=i;h=c[b+4116>>2]^h;a[e+7>>0]=h>>>24;a[e+6>>0]=h>>>16;a[e+5>>0]=h>>>8;a[e+4>>0]=h;g=c[b+4120>>2]^(g>>>1|g<<31);a[e+11>>0]=g>>>24;a[e+10>>0]=g>>>16;a[e+9>>0]=g>>>8;a[e+8>>0]=g;f=f^c[b+4124>>2];a[e+15>>0]=f>>>24;a[e+14>>0]=f>>>16;a[e+13>>0]=f>>>8;a[e+12>>0]=f;return 36}function jj(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;g=((d[f+2>>0]|0)<<16|(d[f+3>>0]|0)<<24|(d[f+1>>0]|0)<<8|(d[f>>0]|0))^c[b+4112>>2];h=((d[f+6>>0]|0)<<16|(d[f+7>>0]|0)<<24|(d[f+5>>0]|0)<<8|(d[f+4>>0]|0))^c[b+4116>>2];i=((d[f+10>>0]|0)<<16|(d[f+11>>0]|0)<<24|(d[f+9>>0]|0)<<8|(d[f+8>>0]|0))^c[b+4120>>2];k=c[b+2048+((h>>>8&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((h>>>16&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;f=((d[f+14>>0]|0)<<16|(d[f+15>>0]|0)<<24|(d[f+13>>0]|0)<<8|(d[f+12>>0]|0))^c[b+4124>>2]^(c[b+4252>>2]|0)+k+j;k=f>>>1;l=k|f<<31;i=j+(c[b+4248>>2]|0)^(i<<1|i>>>31);f=c[b+2048+((f>>>9&255)<<2)>>2]^c[b+1024+((k&255)<<2)>>2]^c[b+3072+((f>>>17&255)<<2)>>2]^c[b+(l>>>24<<2)>>2];k=f+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;h=(c[b+4244>>2]|0)+f+k^h;f=h>>>1;j=f|h<<31;g=k+(c[b+4240>>2]|0)^(g<<1|g>>>31);h=c[b+2048+((h>>>9&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((h>>>17&255)<<2)>>2]^c[b+(j>>>24<<2)>>2];f=h+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;l=(c[b+4236>>2]|0)+h+f^l;h=l>>>1;k=h|l<<31;i=f+(c[b+4232>>2]|0)^(i<<1|i>>>31);l=c[b+2048+((l>>>9&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((l>>>17&255)<<2)>>2]^c[b+(k>>>24<<2)>>2];h=l+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;j=(c[b+4228>>2]|0)+l+h^j;l=j>>>1;f=l|j<<31;g=h+(c[b+4224>>2]|0)^(g<<1|g>>>31);j=c[b+2048+((j>>>9&255)<<2)>>2]^c[b+1024+((l&255)<<2)>>2]^c[b+3072+((j>>>17&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];l=j+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;k=(c[b+4220>>2]|0)+j+l^k;j=k>>>1;h=j|k<<31;i=l+(c[b+4216>>2]|0)^(i<<1|i>>>31);k=c[b+2048+((k>>>9&255)<<2)>>2]^c[b+1024+((j&255)<<2)>>2]^c[b+3072+((k>>>17&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;f=(c[b+4212>>2]|0)+k+j^f;k=f>>>1;l=k|f<<31;g=j+(c[b+4208>>2]|0)^(g<<1|g>>>31);f=c[b+2048+((f>>>9&255)<<2)>>2]^c[b+1024+((k&255)<<2)>>2]^c[b+3072+((f>>>17&255)<<2)>>2]^c[b+(l>>>24<<2)>>2];k=f+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;h=(c[b+4204>>2]|0)+f+k^h;f=h>>>1;j=f|h<<31;i=k+(c[b+4200>>2]|0)^(i<<1|i>>>31);h=c[b+2048+((h>>>9&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((h>>>17&255)<<2)>>2]^c[b+(j>>>24<<2)>>2];f=h+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;l=(c[b+4196>>2]|0)+h+f^l;h=l>>>1;k=h|l<<31;g=f+(c[b+4192>>2]|0)^(g<<1|g>>>31);l=c[b+2048+((l>>>9&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((l>>>17&255)<<2)>>2]^c[b+(k>>>24<<2)>>2];h=l+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;j=(c[b+4188>>2]|0)+l+h^j;l=j>>>1;f=l|j<<31;i=h+(c[b+4184>>2]|0)^(i<<1|i>>>31);j=c[b+2048+((j>>>9&255)<<2)>>2]^c[b+1024+((l&255)<<2)>>2]^c[b+3072+((j>>>17&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];l=j+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;k=(c[b+4180>>2]|0)+j+l^k;j=k>>>1;h=j|k<<31;g=l+(c[b+4176>>2]|0)^(g<<1|g>>>31);k=c[b+2048+((k>>>9&255)<<2)>>2]^c[b+1024+((j&255)<<2)>>2]^c[b+3072+((k>>>17&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;f=(c[b+4172>>2]|0)+k+j^f;k=f>>>1;l=k|f<<31;i=j+(c[b+4168>>2]|0)^(i<<1|i>>>31);f=c[b+2048+((f>>>9&255)<<2)>>2]^c[b+1024+((k&255)<<2)>>2]^c[b+3072+((f>>>17&255)<<2)>>2]^c[b+(l>>>24<<2)>>2];k=f+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;h=(c[b+4164>>2]|0)+f+k^h;f=h>>>1;j=f|h<<31;g=k+(c[b+4160>>2]|0)^(g<<1|g>>>31);h=c[b+2048+((h>>>9&255)<<2)>>2]^c[b+1024+((f&255)<<2)>>2]^c[b+3072+((h>>>17&255)<<2)>>2]^c[b+(j>>>24<<2)>>2];f=h+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;l=(c[b+4156>>2]|0)+h+f^l;h=l>>>1;k=h|l<<31;i=f+(c[b+4152>>2]|0)^(i<<1|i>>>31);l=c[b+2048+((l>>>9&255)<<2)>>2]^c[b+1024+((h&255)<<2)>>2]^c[b+3072+((l>>>17&255)<<2)>>2]^c[b+(k>>>24<<2)>>2];h=l+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;j=(c[b+4148>>2]|0)+l+h^j;l=j>>>1;f=l|j<<31;g=h+(c[b+4144>>2]|0)^(g<<1|g>>>31);j=c[b+2048+((j>>>9&255)<<2)>>2]^c[b+1024+((l&255)<<2)>>2]^c[b+3072+((j>>>17&255)<<2)>>2]^c[b+(f>>>24<<2)>>2];l=j+(c[b+1024+((g>>>8&255)<<2)>>2]^c[b+((g&255)<<2)>>2]^c[b+2048+((g>>>16&255)<<2)>>2]^c[b+3072+(g>>>24<<2)>>2])|0;k=(c[b+4140>>2]|0)+j+l^k;j=k>>>1;h=j|k<<31;i=l+(c[b+4136>>2]|0)^(i<<1|i>>>31);k=c[b+2048+((k>>>9&255)<<2)>>2]^c[b+1024+((j&255)<<2)>>2]^c[b+3072+((k>>>17&255)<<2)>>2]^c[b+(h>>>24<<2)>>2];j=k+(c[b+1024+((i>>>8&255)<<2)>>2]^c[b+((i&255)<<2)>>2]^c[b+2048+((i>>>16&255)<<2)>>2]^c[b+3072+(i>>>24<<2)>>2])|0;f=(c[b+4132>>2]|0)+k+j^f;g=j+(c[b+4128>>2]|0)^(g<<1|g>>>31);i=c[b+4096>>2]^i;a[e+3>>0]=i>>>24;a[e+2>>0]=i>>>16;a[e+1>>0]=i>>>8;a[e>>0]=i;h=c[b+4100>>2]^h;a[e+7>>0]=h>>>24;a[e+6>>0]=h>>>16;a[e+5>>0]=h>>>8;a[e+4>>0]=h;g=g^c[b+4104>>2];a[e+11>>0]=g>>>24;a[e+10>>0]=g>>>16;a[e+9>>0]=g>>>8;a[e+8>>0]=g;f=c[b+4108>>2]^(f>>>1|f<<31);a[e+15>>0]=f>>>24;a[e+14>>0]=f>>>16;a[e+13>>0]=f>>>8;a[e+12>>0]=f;return 36}function kj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;ea=l;l=l+4288|0;if((l|0)>=(m|0))$(4288);i=ea;g=ea+8|0;h=ea+4264|0;if((f+-16|16|0)!=16){e=44;l=ea;return e|0}do if(!(c[17618]|0)){c[17618]=1;kj(g,43199,16)|0;Te(47);ij(g,h,43215)|0;if(!(Tp(h,43231,16)|0)){jj(g,h,h)|0;if(!(Tp(h,43215,16)|0)){kj(g,43247,32)|0;Te(47);ij(g,h,43279)|0;if(!(Tp(h,43295,16)|0)){jj(g,h,h)|0;if(!(Tp(h,43279,16)|0)){g=ym(43191,13,14,8,4,16,4256)|0;if(!g){g=wm(43191,13,14,6,5,16,4256)|0;if(!g){g=xm(43191,13,14,7,5,16,4256)|0;c[17619]=g;if(!g)break}else j=9}else j=9}else{g=43311;j=9}}else{g=43347;j=9}}else{g=43383;j=9}}else{g=43419;j=9}if((j|0)==9)c[17619]=g;c[i>>2]=g;Le(43455,i);j=12}else j=12;while(0);if((j|0)==12?c[17619]|0:0){e=50;l=ea;return e|0}g=a[e>>0]|0;if(!(g<<24>>24)){h=0;i=0;j=0}else{j=d[43459+((g&255)+-1)>>0]|0;h=a[43714+(j+1)>>0]|0;i=a[43714+(j+45)>>0]|0;j=a[43714+j>>0]|0}da=e+1|0;g=a[da>>0]|0;if(!(g<<24>>24))k=i;else{ca=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(ca+138)>>0]^i;h=a[43714+(ca+68)>>0]^h;i=a[43714+(ca+164)>>0]^i;j=a[43714+(ca+45)>>0]^j}ca=e+2|0;g=a[ca>>0]|0;if(g<<24>>24){ba=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(ba+209)>>0]^k;h=a[43714+(ba+191)>>0]^h;i=a[43714+(ba+213)>>0]^i;j=a[43714+(ba+138)>>0]^j}ba=e+3|0;g=a[ba>>0]|0;if(g<<24>>24){aa=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(aa+153)>>0]^k;h=a[43714+(aa+61)>>0]^h;i=a[43714+(aa+127)>>0]^i;j=a[43714+(aa+209)>>0]^j}aa=e+4|0;g=a[aa>>0]|0;if(g<<24>>24){_=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(_+150)>>0]^k;h=a[43714+(_+102)>>0]^h;i=a[43714+(_+70)>>0]^i;j=a[43714+(_+153)>>0]^j}_=e+5|0;g=a[_>>0]|0;if(g<<24>>24){Z=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(Z+237)>>0]^k;h=a[43714+(Z+91)>>0]^h;i=a[43714+(Z+60)>>0]^i;j=a[43714+(Z+150)>>0]^j}Z=e+6|0;g=a[Z>>0]|0;if(g<<24>>24){Y=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(Y+224)>>0]^k;h=a[43714+(Y+79)>>0]^h;i=a[43714+(Y+55)>>0]^i;j=a[43714+(Y+237)>>0]^j}Y=e+7|0;g=a[Y>>0]|0;if(g<<24>>24){X=d[43459+((g&255)+-1)>>0]|0;k=a[43714+(X+23)>>0]^k;h=a[43714+(X+140)>>0]^h;i=a[43714+(X+208)>>0]^i;j=a[43714+(X+224)>>0]^j}X=e+8|0;g=a[X>>0]|0;if(!(g<<24>>24)){n=0;o=0;p=0}else{p=d[43459+((g&255)+-1)>>0]|0;n=a[43714+(p+1)>>0]|0;o=a[43714+(p+45)>>0]|0;p=a[43714+p>>0]|0}W=e+9|0;g=a[W>>0]|0;if(!(g<<24>>24))q=o;else{V=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(V+138)>>0]^o;n=a[43714+(V+68)>>0]^n;o=a[43714+(V+164)>>0]^o;p=a[43714+(V+45)>>0]^p}V=e+10|0;g=a[V>>0]|0;if(g<<24>>24){U=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(U+209)>>0]^q;n=a[43714+(U+191)>>0]^n;o=a[43714+(U+213)>>0]^o;p=a[43714+(U+138)>>0]^p}U=e+11|0;g=a[U>>0]|0;if(g<<24>>24){T=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(T+153)>>0]^q;n=a[43714+(T+61)>>0]^n;o=a[43714+(T+127)>>0]^o;p=a[43714+(T+209)>>0]^p}T=e+12|0;g=a[T>>0]|0;if(g<<24>>24){S=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(S+150)>>0]^q;n=a[43714+(S+102)>>0]^n;o=a[43714+(S+70)>>0]^o;p=a[43714+(S+153)>>0]^p}S=e+13|0;g=a[S>>0]|0;if(g<<24>>24){R=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(R+237)>>0]^q;n=a[43714+(R+91)>>0]^n;o=a[43714+(R+60)>>0]^o;p=a[43714+(R+150)>>0]^p}R=e+14|0;g=a[R>>0]|0;if(g<<24>>24){Q=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(Q+224)>>0]^q;n=a[43714+(Q+79)>>0]^n;o=a[43714+(Q+55)>>0]^o;p=a[43714+(Q+237)>>0]^p}Q=e+15|0;g=a[Q>>0]|0;if(g<<24>>24){P=d[43459+((g&255)+-1)>>0]|0;q=a[43714+(P+23)>>0]^q;n=a[43714+(P+140)>>0]^n;o=a[43714+(P+208)>>0]^o;p=a[43714+(P+224)>>0]^p}if((f|0)!=32){g=1;f=0;r=0;while(1){O=a[44206+f>>0]|0;c[b+(r<<2)>>2]=c[8012+(((a[44974+((O^j)&255)>>0]^p)&255)<<2)>>2];P=a[44206+g>>0]|0;c[b+1024+(r<<2)>>2]=c[9036+(((a[44974+((P^i)&255)>>0]^o)&255)<<2)>>2];c[b+2048+(r<<2)>>2]=c[10060+(((a[44718+((O^h)&255)>>0]^n)&255)<<2)>>2];c[b+3072+(r<<2)>>2]=c[11084+(((a[44718+((P^k)&255)>>0]^q)&255)<<2)>>2];r=r+1|0;if((r|0)==256)break;else{g=g+2|0;f=f+2|0}}P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^243)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^103)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^103)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^243)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^117)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^169)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^169)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^117)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4096>>2]=O;c[b+4100>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^244)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^232)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^232)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^244)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^198)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^179)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^179)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^198)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4104>>2]=O;c[b+4108>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^123)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^253)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^253)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^123)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^219)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^4)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^4)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^219)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4112>>2]=O;c[b+4116>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^200)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^118)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^118)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^200)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^251)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^163)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^163)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^251)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4120>>2]=O;c[b+4124>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^211)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^146)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^146)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^211)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^74)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^154)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^154)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^74)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4128>>2]=O;c[b+4132>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^107)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^120)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^120)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^107)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^230)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^128)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^128)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^230)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4136>>2]=O;c[b+4140>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^125)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^221)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^221)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^125)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^69)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^228)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^228)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^69)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4144>>2]=O;c[b+4148>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^75)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^56)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^56)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^75)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^232)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^209)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^209)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^232)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4152>>2]=O;c[b+4156>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^50)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^198)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^198)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^50)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^214)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^13)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^13)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^214)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4160>>2]=O;c[b+4164>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^253)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^152)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^152)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^253)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^216)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^53)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^53)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^216)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4168>>2]=O;c[b+4172>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^113)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^247)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^247)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^113)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^55)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^24)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^24)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^55)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4176>>2]=O;c[b+4180>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^225)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^108)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^108)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^225)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^241)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^236)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^236)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^241)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4184>>2]=O;c[b+4188>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^15)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^117)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^117)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^15)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^48)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^67)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^67)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^48)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4192>>2]=O;c[b+4196>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^27)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^38)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^38)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^27)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^248)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^55)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^55)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^248)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4200>>2]=O;c[b+4204>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^250)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^19)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^19)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^250)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^135)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^250)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^250)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^135)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4208>>2]=O;c[b+4212>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^63)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^72)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^72)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^63)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^6)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^148)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^148)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^6)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4216>>2]=O;c[b+4220>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^186)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^208)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^208)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^186)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^94)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^242)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^242)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^94)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4224>>2]=O;c[b+4228>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^91)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^48)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^48)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^91)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^174)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^139)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^139)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^174)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4232>>2]=O;c[b+4236>>2]=P<<9|P>>>23;P=c[9036+(((a[_>>0]^a[44974+(d[S>>0]|0)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^84)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^84)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+(d[Q>>0]|0)>>0])&255)<<2)>>2];P=P<<8|P>>>24;O=P+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^138)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^132)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^132)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^138)>>0])&255)<<2)>>2])|0;P=O+P|0;c[b+4240>>2]=O;c[b+4244>>2]=P<<9|P>>>23;aa=c[9036+(((a[_>>0]^a[44974+((d[S>>0]|0)^157)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((d[T>>0]|0)^35)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((d[R>>0]|0)^35)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((d[Q>>0]|0)^157)>>0])&255)<<2)>>2];aa=aa<<8|aa>>>24;da=aa+(c[9036+(((a[da>>0]^a[44974+((d[W>>0]|0)^188)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((d[X>>0]|0)^223)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((d[V>>0]|0)^223)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((d[U>>0]|0)^188)>>0])&255)<<2)>>2])|0;e=da+aa|0;c[b+4248>>2]=da;c[b+4252>>2]=e<<9|e>>>23;e=0;l=ea;return e|0}P=e+16|0;g=a[P>>0]|0;if(!(g<<24>>24)){f=0;r=0;s=0}else{s=d[43459+((g&255)+-1)>>0]|0;f=a[43714+(s+1)>>0]|0;r=a[43714+(s+45)>>0]|0;s=a[43714+s>>0]|0}O=e+17|0;g=a[O>>0]|0;if(!(g<<24>>24))t=r;else{N=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(N+138)>>0]^r;f=a[43714+(N+68)>>0]^f;r=a[43714+(N+164)>>0]^r;s=a[43714+(N+45)>>0]^s}N=e+18|0;g=a[N>>0]|0;if(g<<24>>24){M=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(M+209)>>0]^t;f=a[43714+(M+191)>>0]^f;r=a[43714+(M+213)>>0]^r;s=a[43714+(M+138)>>0]^s}M=e+19|0;g=a[M>>0]|0;if(g<<24>>24){L=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(L+153)>>0]^t;f=a[43714+(L+61)>>0]^f;r=a[43714+(L+127)>>0]^r;s=a[43714+(L+209)>>0]^s}L=e+20|0;g=a[L>>0]|0;if(g<<24>>24){K=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(K+150)>>0]^t;f=a[43714+(K+102)>>0]^f;r=a[43714+(K+70)>>0]^r;s=a[43714+(K+153)>>0]^s}K=e+21|0;g=a[K>>0]|0;if(g<<24>>24){J=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(J+237)>>0]^t;f=a[43714+(J+91)>>0]^f;r=a[43714+(J+60)>>0]^r;s=a[43714+(J+150)>>0]^s}J=e+22|0;g=a[J>>0]|0;if(g<<24>>24){I=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(I+224)>>0]^t;f=a[43714+(I+79)>>0]^f;r=a[43714+(I+55)>>0]^r;s=a[43714+(I+237)>>0]^s}I=e+23|0;g=a[I>>0]|0;if(g<<24>>24){H=d[43459+((g&255)+-1)>>0]|0;t=a[43714+(H+23)>>0]^t;f=a[43714+(H+140)>>0]^f;r=a[43714+(H+208)>>0]^r;s=a[43714+(H+224)>>0]^s}H=e+24|0;g=a[H>>0]|0;if(!(g<<24>>24)){u=0;v=0;w=0}else{w=d[43459+((g&255)+-1)>>0]|0;u=a[43714+(w+1)>>0]|0;v=a[43714+(w+45)>>0]|0;w=a[43714+w>>0]|0}G=e+25|0;g=a[G>>0]|0;if(!(g<<24>>24))x=v;else{F=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(F+138)>>0]^v;u=a[43714+(F+68)>>0]^u;v=a[43714+(F+164)>>0]^v;w=a[43714+(F+45)>>0]^w}F=e+26|0;g=a[F>>0]|0;if(g<<24>>24){E=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(E+209)>>0]^x;u=a[43714+(E+191)>>0]^u;v=a[43714+(E+213)>>0]^v;w=a[43714+(E+138)>>0]^w}E=e+27|0;g=a[E>>0]|0;if(g<<24>>24){D=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(D+153)>>0]^x;u=a[43714+(D+61)>>0]^u;v=a[43714+(D+127)>>0]^v;w=a[43714+(D+209)>>0]^w}D=e+28|0;g=a[D>>0]|0;if(g<<24>>24){C=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(C+150)>>0]^x;u=a[43714+(C+102)>>0]^u;v=a[43714+(C+70)>>0]^v;w=a[43714+(C+153)>>0]^w}C=e+29|0;g=a[C>>0]|0;if(g<<24>>24){B=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(B+237)>>0]^x;u=a[43714+(B+91)>>0]^u;v=a[43714+(B+60)>>0]^v;w=a[43714+(B+150)>>0]^w}B=e+30|0;g=a[B>>0]|0;if(g<<24>>24){A=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(A+224)>>0]^x;u=a[43714+(A+79)>>0]^u;v=a[43714+(A+55)>>0]^v;w=a[43714+(A+237)>>0]^w}A=e+31|0;g=a[A>>0]|0;if(g<<24>>24){z=d[43459+((g&255)+-1)>>0]|0;x=a[43714+(z+23)>>0]^x;u=a[43714+(z+140)>>0]^u;v=a[43714+(z+208)>>0]^v;w=a[43714+(z+224)>>0]^w}g=1;y=0;z=0;while(1){fa=a[44206+g>>0]|0;c[b+(z<<2)>>2]=c[8012+(((a[44974+((a[44974+((a[44718+((fa^j)&255)>>0]^p)&255)>>0]^s)&255)>>0]^w)&255)<<2)>>2];ga=a[44206+y>>0]|0;c[b+1024+(z<<2)>>2]=c[9036+(((a[44974+((a[44718+((a[44718+((ga^i)&255)>>0]^o)&255)>>0]^r)&255)>>0]^v)&255)<<2)>>2];c[b+2048+(z<<2)>>2]=c[10060+(((a[44718+((a[44974+((a[44974+((ga^h)&255)>>0]^n)&255)>>0]^f)&255)>>0]^u)&255)<<2)>>2];c[b+3072+(z<<2)>>2]=c[11084+(((a[44718+((a[44718+((a[44974+((fa^k)&255)>>0]^q)&255)>>0]^t)&255)>>0]^x)&255)<<2)>>2];z=z+1|0;if((z|0)==256)break;else{g=g+2|0;y=y+2|0}}ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^103)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^243)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^103)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^243)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^169)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^117)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^169)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^117)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4096>>2]=fa;c[b+4100>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^232)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^244)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^232)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^244)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^179)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^198)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^179)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^198)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4104>>2]=fa;c[b+4108>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^253)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^123)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^253)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^123)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^4)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^219)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^4)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^219)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4112>>2]=fa;c[b+4116>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^118)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^200)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^118)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^200)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^163)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^251)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^163)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^251)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4120>>2]=fa;c[b+4124>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^146)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^211)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^146)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^211)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^154)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^74)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^154)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^74)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4128>>2]=fa;c[b+4132>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^120)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^107)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^120)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^107)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^128)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^230)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^128)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^230)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4136>>2]=fa;c[b+4140>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^221)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^125)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^221)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^125)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^228)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^69)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^228)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^69)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4144>>2]=fa;c[b+4148>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^56)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^75)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^56)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^75)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^209)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^232)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^209)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^232)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4152>>2]=fa;c[b+4156>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^198)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^50)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^198)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^50)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^13)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^214)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^13)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^214)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4160>>2]=fa;c[b+4164>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^152)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^253)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^152)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^253)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^53)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^216)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^53)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^216)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4168>>2]=fa;c[b+4172>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^247)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^113)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^247)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^113)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^24)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^55)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^24)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^55)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4176>>2]=fa;c[b+4180>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^108)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^225)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^108)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^225)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^236)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^241)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^236)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^241)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4184>>2]=fa;c[b+4188>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^117)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^15)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^117)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^15)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^67)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^48)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^67)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^48)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4192>>2]=fa;c[b+4196>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^38)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^27)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^38)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^27)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^55)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^248)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^55)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^248)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4200>>2]=fa;c[b+4204>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^19)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^250)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^19)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^250)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^250)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^135)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^250)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^135)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4208>>2]=fa;c[b+4212>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^72)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^63)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^72)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^63)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^148)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^6)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^148)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^6)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4216>>2]=fa;c[b+4220>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^208)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^186)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^208)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^186)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^242)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^94)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^242)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^94)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4224>>2]=fa;c[b+4228>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^48)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^91)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^48)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^91)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^139)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^174)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^139)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^174)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4232>>2]=fa;c[b+4236>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^84)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+(d[D>>0]|0)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^84)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+(d[A>>0]|0)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^132)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^138)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^132)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^138)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4240>>2]=fa;c[b+4244>>2]=ga<<9|ga>>>23;ga=c[9036+(((a[_>>0]^a[44974+((a[S>>0]^a[44718+((a[K>>0]^a[44718+((d[C>>0]|0)^35)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[aa>>0]^a[44974+((a[T>>0]^a[44974+((a[L>>0]^a[44718+((d[D>>0]|0)^157)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[Z>>0]^a[44718+((a[R>>0]^a[44974+((a[J>>0]^a[44974+((d[B>>0]|0)^35)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[Y>>0]^a[44718+((a[Q>>0]^a[44718+((a[I>>0]^a[44974+((d[A>>0]|0)^157)>>0])&255)>>0])&255)>>0])&255)<<2)>>2];ga=ga<<8|ga>>>24;fa=ga+(c[9036+(((a[da>>0]^a[44974+((a[W>>0]^a[44718+((a[O>>0]^a[44718+((d[G>>0]|0)^223)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[8012+(((a[e>>0]^a[44974+((a[X>>0]^a[44974+((a[P>>0]^a[44718+((d[H>>0]|0)^188)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[10060+(((a[ca>>0]^a[44718+((a[V>>0]^a[44974+((a[N>>0]^a[44974+((d[F>>0]|0)^223)>>0])&255)>>0])&255)>>0])&255)<<2)>>2]^c[11084+(((a[ba>>0]^a[44718+((a[U>>0]^a[44718+((a[M>>0]^a[44974+((d[E>>0]|0)^188)>>0])&255)>>0])&255)>>0])&255)<<2)>>2])|0;ga=fa+ga|0;c[b+4248>>2]=fa;c[b+4252>>2]=ga<<9|ga>>>23;ga=0;l=ea;return ga|0}function lj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;F=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=F;if(!g)j=0;else{B=h+4|0;C=h+8|0;D=h+12|0;k=h+1|0;n=h+2|0;o=h+3|0;p=h+4|0;q=h+5|0;r=h+6|0;s=h+7|0;t=h+8|0;u=h+9|0;v=h+10|0;w=h+11|0;x=h+12|0;y=h+13|0;z=h+14|0;A=h+15|0;j=0;i=f;do{ij(b,h,d)|0;j=j>>>0<36?36:j;if(!((e|i)&3)){c[e>>2]=c[i>>2]^c[h>>2];c[e+4>>2]=c[i+4>>2]^c[B>>2];c[e+8>>2]=c[i+8>>2]^c[C>>2];c[e+12>>2]=c[i+12>>2]^c[D>>2]}else{a[e>>0]=a[i>>0]^a[h>>0];a[e+1>>0]=a[i+1>>0]^a[k>>0];a[e+2>>0]=a[i+2>>0]^a[n>>0];a[e+3>>0]=a[i+3>>0]^a[o>>0];a[e+4>>0]=a[i+4>>0]^a[p>>0];a[e+5>>0]=a[i+5>>0]^a[q>>0];a[e+6>>0]=a[i+6>>0]^a[r>>0];a[e+7>>0]=a[i+7>>0]^a[s>>0];a[e+8>>0]=a[i+8>>0]^a[t>>0];a[e+9>>0]=a[i+9>>0]^a[u>>0];a[e+10>>0]=a[i+10>>0]^a[v>>0];a[e+11>>0]=a[i+11>>0]^a[w>>0];a[e+12>>0]=a[i+12>>0]^a[x>>0];a[e+13>>0]=a[i+13>>0]^a[y>>0];a[e+14>>0]=a[i+14>>0]^a[z>>0];a[e+15>>0]=a[i+15>>0]^a[A>>0]}e=e+16|0;i=i+16|0;f=16;do{if((f|0)<=0)break;f=f+-1|0;H=d+f|0;G=(a[H>>0]|0)+1<<24>>24;a[H>>0]=G}while(!(G<<24>>24));g=g+-1|0}while((g|0)!=0)}if(h&4){e=16;do{a[h>>0]=0;h=h+1|0;e=e+-1|0}while((e|0)!=0&(h&7|0)!=0);if(e>>>0>=8)E=13}else{e=16;E=13}if((E|0)==13){g=e+-8|0;i=g&-8;b=i+8|0;f=h;while(1){H=f;c[H>>2]=0;c[H+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else f=f+8|0}e=g-i|0;h=h+b|0}if(!e){Te(j);l=F;return}while(1){a[h>>0]=0;e=e+-1|0;if(!e)break;else h=h+1|0}Te(j);l=F;return}function mj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;X=l;l=l+16|0;if((l|0)>=(m|0))$(16);h=X;if(!g)i=0;else{T=d;U=h+4|0;V=d+4|0;j=h+8|0;k=d+8|0;n=h+12|0;o=d+12|0;p=h+1|0;q=d+1|0;r=h+2|0;s=d+2|0;t=h+3|0;u=d+3|0;v=h+4|0;w=d+4|0;x=h+5|0;y=d+5|0;z=h+6|0;A=d+6|0;B=h+7|0;C=d+7|0;D=h+8|0;E=d+8|0;F=h+9|0;G=d+9|0;H=h+10|0;I=d+10|0;J=h+11|0;K=d+11|0;L=h+12|0;M=d+12|0;N=h+13|0;O=d+13|0;P=h+14|0;Q=d+14|0;R=h+15|0;S=d+15|0;i=0;while(1){jj(b,h,f)|0;i=i>>>0<36?36:i;if(!((f|T|e)&3)){Y=c[f>>2]|0;c[e>>2]=c[h>>2]^c[d>>2];c[d>>2]=Y;Y=c[f+4>>2]|0;c[e+4>>2]=c[U>>2]^c[V>>2];c[V>>2]=Y;Y=c[f+8>>2]|0;c[e+8>>2]=c[j>>2]^c[k>>2];c[k>>2]=Y;Y=c[f+12>>2]|0;c[e+12>>2]=c[n>>2]^c[o>>2];c[o>>2]=Y}else{Y=a[f>>0]|0;a[e>>0]=a[h>>0]^a[d>>0];a[d>>0]=Y;Y=a[f+1>>0]|0;a[e+1>>0]=a[p>>0]^a[q>>0];a[q>>0]=Y;Y=a[f+2>>0]|0;a[e+2>>0]=a[r>>0]^a[s>>0];a[s>>0]=Y;Y=a[f+3>>0]|0;a[e+3>>0]=a[t>>0]^a[u>>0];a[u>>0]=Y;Y=a[f+4>>0]|0;a[e+4>>0]=a[v>>0]^a[w>>0];a[w>>0]=Y;Y=a[f+5>>0]|0;a[e+5>>0]=a[x>>0]^a[y>>0];a[y>>0]=Y;Y=a[f+6>>0]|0;a[e+6>>0]=a[z>>0]^a[A>>0];a[A>>0]=Y;Y=a[f+7>>0]|0;a[e+7>>0]=a[B>>0]^a[C>>0];a[C>>0]=Y;Y=a[f+8>>0]|0;a[e+8>>0]=a[D>>0]^a[E>>0];a[E>>0]=Y;Y=a[f+9>>0]|0;a[e+9>>0]=a[F>>0]^a[G>>0];a[G>>0]=Y;Y=a[f+10>>0]|0;a[e+10>>0]=a[H>>0]^a[I>>0];a[I>>0]=Y;Y=a[f+11>>0]|0;a[e+11>>0]=a[J>>0]^a[K>>0];a[K>>0]=Y;Y=a[f+12>>0]|0;a[e+12>>0]=a[L>>0]^a[M>>0];a[M>>0]=Y;Y=a[f+13>>0]|0;a[e+13>>0]=a[N>>0]^a[O>>0];a[O>>0]=Y;Y=a[f+14>>0]|0;a[e+14>>0]=a[P>>0]^a[Q>>0];a[Q>>0]=Y;Y=a[f+15>>0]|0;a[e+15>>0]=a[R>>0]^a[S>>0];a[S>>0]=Y}g=g+-1|0;if(!g)break;else{e=e+16|0;f=f+16|0}}}if(h&4){e=16;do{a[h>>0]=0;h=h+1|0;e=e+-1|0}while((e|0)!=0&(h&7|0)!=0);if(e>>>0>=8)W=10}else{e=16;W=10}if((W|0)==10){f=e+-8|0;b=f&-8;d=b+8|0;g=h;while(1){Y=g;c[Y>>2]=0;c[Y+4>>2]=0;e=e+-8|0;if(e>>>0<=7)break;else g=g+8|0}e=f-b|0;h=h+d|0}if(!e){Te(i);l=X;return}while(1){a[h>>0]=0;e=e+-1|0;if(!e)break;else h=h+1|0}Te(i);l=X;return}function nj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if(!g){x=0;Te(x);return}u=d;v=d+4|0;w=d+8|0;x=d+12|0;i=d+1|0;j=d+2|0;k=d+3|0;l=d+5|0;m=d+6|0;n=d+7|0;o=d+9|0;p=d+10|0;q=d+11|0;r=d+13|0;s=d+14|0;t=d+15|0;h=g;g=0;while(1){ij(b,d,d)|0;g=g>>>0<36?36:g;if(!((e|u|f)&3)){y=c[f>>2]|0;c[e>>2]=c[d>>2]^y;c[d>>2]=y;y=c[f+4>>2]|0;c[e+4>>2]=c[v>>2]^y;c[v>>2]=y;y=c[f+8>>2]|0;c[e+8>>2]=c[w>>2]^y;c[w>>2]=y;y=c[f+12>>2]|0;c[e+12>>2]=c[x>>2]^y;c[x>>2]=y}else{y=a[f>>0]|0;a[e>>0]=a[d>>0]^y;a[d>>0]=y;y=a[f+1>>0]|0;a[e+1>>0]=a[i>>0]^y;a[i>>0]=y;y=a[f+2>>0]|0;a[e+2>>0]=a[j>>0]^y;a[j>>0]=y;y=a[f+3>>0]|0;a[e+3>>0]=a[k>>0]^y;a[k>>0]=y;y=a[f+4>>0]|0;a[e+4>>0]=a[v>>0]^y;a[v>>0]=y;y=a[f+5>>0]|0;a[e+5>>0]=a[l>>0]^y;a[l>>0]=y;y=a[f+6>>0]|0;a[e+6>>0]=a[m>>0]^y;a[m>>0]=y;y=a[f+7>>0]|0;a[e+7>>0]=a[n>>0]^y;a[n>>0]=y;y=a[f+8>>0]|0;a[e+8>>0]=a[w>>0]^y;a[w>>0]=y;y=a[f+9>>0]|0;a[e+9>>0]=a[o>>0]^y;a[o>>0]=y;y=a[f+10>>0]|0;a[e+10>>0]=a[p>>0]^y;a[p>>0]=y;y=a[f+11>>0]|0;a[e+11>>0]=a[q>>0]^y;a[q>>0]=y;y=a[f+12>>0]|0;a[e+12>>0]=a[x>>0]^y;a[x>>0]=y;y=a[f+13>>0]|0;a[e+13>>0]=a[r>>0]^y;a[r>>0]=y;y=a[f+14>>0]|0;a[e+14>>0]=a[s>>0]^y;a[s>>0]=y;y=a[f+15>>0]|0;a[e+15>>0]=a[t>>0]^y;a[t>>0]=y}h=h+-1|0;if(!h)break;else{f=f+16|0;e=e+16|0}}Te(g);return}function oj(a,b){a=a|0;b=b|0;c[17620]=a;c[17621]=b;return}function pj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[17620]|0;if(!f)return;qb[f&15](c[17621]|0,a,b,d,e);return}function qj(a){a=a|0;a:do switch(a|0){case 0:{c[17622]=1;break}case 1:{c[17623]=1;break}default:if(!(c[17622]|0))switch(a|0){case 2:{c[17624]=1;break a}case 3:{c[17625]=1;break a}default:break a}}while(0);return}function rj(a){a=a|0;if(gg()|0){en(a);return}if(c[17623]|0){Pm(a);return}if(c[17624]|0){en(a);return}if(!(c[17625]|0)){Pm(a);return}else{wn(a);return}}function sj(){if(gg()|0){fn();return}if(c[17623]|0){Rm();return}if(c[17624]|0){fn();return}if(!(c[17625]|0)){Rm();return}else{xn();return}}function tj(a){a=a|0;if((a|0)==0?(gg()|0)!=0:0)a=2;else if(!(c[17623]|0))if(!(c[17624]|0))a=(c[17625]|0)==0?1:3;else a=2;else a=1;return a|0}function uj(){if(!(gg()|0)){Sm();return}else return}function vj(){if(gg()|0)return;Tm();return}function wj(){if(gg()|0)return;Um();return}function xj(a){a=a|0;if(gg()|0)return;return}function yj(a){a=a|0;if(gg()|0){a=0;return a|0}a=Wm(a)|0;return a|0}function zj(){var a=0;if(!(gg()|0)){a=Xm()|0;return a|0}else{a=hn()|0;return a|0}return 0}function Aj(a,b){a=a|0;b=b|0;var c=0;c=gf(a)|0;Bj(c,a,b);return c|0}function Bj(a,b,d){a=a|0;b=b|0;d=d|0;if(gg()|0){jn(a,b,d);return}if(c[17623]|0){Zm(a,b,d);return}if(c[17624]|0){jn(a,b,d);return}if(!(c[17625]|0)){Zm(a,b,d);return}else{yn(a,b,d);return}}function Cj(a,b){a=a|0;b=b|0;var c=0;c=jf(a)|0;Bj(c,a,b);return c|0}function Dj(a,b,c){a=a|0;b=b|0;c=c|0;Bj(a,b,c);return}function Ej(a){a=a|0;if(gg()|0)return;if(c[17623]|0){bn(a);return}if(c[17625]|c[17624]|0)return;bn(a);return}function Fj(){if(gg()|0)return;if(c[17623]|0){cn();return}if(c[17625]|c[17624]|0)return;cn();return}function Gj(){if(gg()|0)return;if(c[17623]|0){dn();return}if(c[17625]|c[17624]|0)return;dn();return}function Hj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=h+8|0;f=h;e=h+12|0;if(gg()|0){rn(a,b);l=h;return}do if(!(gg()|0)){if(c[17623]|0){Pm(1);break}if(c[17624]|0){en(1);break}if(!(c[17625]|0)){Pm(1);break}else{wn(1);break}}else en(1);while(0);d=Vn(12172)|0;if(d|0){c[f>>2]=Pn(d)|0;Me(45241,f)}c[e>>2]=qq()|0;if(c[17626]|0){if((c[17627]|0)!=(c[e>>2]|0)){Bj(70532,8,0);c[17627]=c[e>>2]}}else{f=fb(0)|0;d=c[e>>2]|0;c[17627]=c[e>>2];c[17628]=d;c[17629]=f;Bj(70532,8,0);c[17626]=1}if(b|0)while(1){Vi(70512,70512,28);d=b>>>0>20?20:b;cr(a|0,70512,d|0)|0;b=b-d|0;if(!b)break;else a=a+d|0}b=Wn(12172)|0;if(!b){l=h;return}else{c[g>>2]=Pn(b)|0;Me(45286,g)}}function Ij(a){a=a|0;if(!(gg()|0)){a=0;return a|0}a=sn(a)|0;return a|0}function Jj(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;if(!(gg()|0)){h=60;return h|0}h=tn(a,b,c,d,e,f,g,h)|0;return h|0}function Kj(a,b,c){a=a|0;b=b|0;c=c|0;if(!(gg()|0)){c=60;return c|0}c=un(a,b,c)|0;return c|0}function Lj(a){a=a|0;if(!(gg()|0))return;vn(a);return}function Mj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+112|0;if((l|0)>=(m|0))$(112);g=j+8|0;f=j;h=j+12|0;if(!d){c[f>>2]=b;lp(h,99,45331,f)|0;Se(h,0);l=j;return}c[g>>2]=b;lp(h,99,45336,g)|0;g=(e|0)!=0;if(g){f=Hl(0)|0;b=Hl(0)|0;if(!(Nj(f,b,d,e)|0)){a[h+((Fo(h)|0)+-1)>>0]=120;Se(h,f);a[h+((Fo(h)|0)+-1)>>0]=121;Se(h,b)}else i=6}else{f=0;b=0;i=6}if((i|0)==6){Se(h,c[d>>2]|0);a[h+((Fo(h)|0)+-1)>>0]=89;Se(h,c[d+4>>2]|0);a[h+((Fo(h)|0)+-1)>>0]=90;Se(h,c[d+8>>2]|0);if(!g){l=j;return}}Jl(f);Jl(b);l=j;return}function Nj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0;n=l;l=l+32|0;if((l|0)>=(m|0))$(32);h=n+16|0;f=n+8|0;g=d+8|0;if(!(vk(c[g>>2]|0,0)|0)){b=-1;l=n;return b|0}switch(c[e>>2]|0){case 0:{k=Hl(0)|0;j=Hl(0)|0;f=c[g>>2]|0;i=e+16|0;if(!(Fk(k,f,c[i>>2]|0)|0)){Le(45341,n);Se(45375,f);Se(45379,c[i>>2]|0)}Kk(j,k,k);h=e+60|0;f=c[h>>2]|0;if(!f)Gk(j,j,c[i>>2]|0);else Jk(j,j,f);do if(a|0){Kk(a,c[d>>2]|0,j);f=c[h>>2]|0;if(!f){Gk(a,a,c[i>>2]|0);break}else{Jk(a,a,f);break}}while(0);if(b|0){g=Hl(0)|0;Kk(g,j,k);f=c[h>>2]|0;if(!f)Gk(g,g,c[i>>2]|0);else Jk(g,g,f);Kk(b,c[d+4>>2]|0,g);f=c[h>>2]|0;if(!f)Gk(b,b,c[i>>2]|0);else Jk(b,b,f);tl(g)}tl(j);tl(k);b=0;l=n;return b|0}case 1:{if(a|0)Al(a,c[d>>2]|0)|0;if(!b){b=0;l=n;return b|0}else{c[f>>2]=45432;c[f+4>>2]=45456;Me(45383,f)}break}case 2:{i=Hl(0)|0;f=c[g>>2]|0;g=e+16|0;if(!(Fk(i,f,c[g>>2]|0)|0)){Le(45341,h);Se(45375,f);Se(45379,c[g>>2]|0)}do if(a|0){Kk(a,c[d>>2]|0,i);f=c[e+60>>2]|0;if(!f){Gk(a,a,c[g>>2]|0);break}else{Jk(a,a,f);break}}while(0);do if(b|0){Kk(b,c[d+4>>2]|0,i);f=c[e+60>>2]|0;if(!f){Gk(b,b,c[g>>2]|0);break}else{Jk(b,b,f);break}}while(0);Jl(i);b=0;l=n;return b|0}default:{b=-1;l=n;return b|0}}return 0}function Oj(a){a=a|0;a=gf(12)|0;c[a>>2]=Hl(0)|0;c[a+4>>2]=Hl(0)|0;c[a+8>>2]=Hl(0)|0;return a|0}function Pj(a){a=a|0;c[a>>2]=Hl(0)|0;c[a+4>>2]=Hl(0)|0;c[a+8>>2]=Hl(0)|0;return}function Qj(a){a=a|0;var b=0;if(!a)return;tl(c[a>>2]|0);c[a>>2]=0;b=a+4|0;tl(c[b>>2]|0);c[b>>2]=0;b=a+8|0;tl(c[b>>2]|0);c[b>>2]=0;cf(a);return}function Rj(a){a=a|0;var b=0;tl(c[a>>2]|0);c[a>>2]=0;b=a+4|0;tl(c[b>>2]|0);c[b>>2]=0;a=a+8|0;tl(c[a>>2]|0);c[a>>2]=0;return}function Sj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if(!a){f=gf(12)|0;c[f>>2]=Hl(0)|0;c[f+4>>2]=Hl(0)|0;c[f+8>>2]=Hl(0)|0}else f=a;a=c[f>>2]|0;if(!b)rl(a);else Al(a,b)|0;a=c[f+4>>2]|0;if(!d)rl(a);else Al(a,d)|0;a=c[f+8>>2]|0;if(!e){rl(a);return f|0}else{Al(a,e)|0;return f|0}return 0}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if(!a){f=gf(12)|0;c[f>>2]=Hl(0)|0;c[f+4>>2]=Hl(0)|0;c[f+8>>2]=Hl(0)|0}else f=a;a=c[f>>2]|0;if(!b)rl(a);else Cl(a,b);a=c[f+4>>2]|0;if(!d)rl(a);else Cl(a,d);a=c[f+8>>2]|0;if(!e){rl(a);return f|0}else{Cl(a,e);return f|0}return 0}function Uj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=kf(1,108)|0;Vj(g,a,b,c,d,e,f);return g|0}function Vj(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;do if(!(c[17635]|0))if(!(Xa(45467)|0)){c[17635]=-1;break}else{c[17635]=1;break}while(0);c[b>>2]=d;c[b+4>>2]=e;c[b+8>>2]=f;if((e|0)==1)d=256;else d=lk(g)|0;c[b+12>>2]=d;e=b+16|0;c[e>>2]=yl(g)|0;c[b+20>>2]=yl(h)|0;c[b+24>>2]=yl(i)|0;if((c[17635]|0)>0)d=Hk(c[e>>2]|0,0)|0;else d=0;c[b+60>>2]=d;i=b+48|0;a[i>>0]=a[i>>0]&-4;c[b+64>>2]=Bl(c[e>>2]|0)|0;c[b+68>>2]=Bl(c[e>>2]|0)|0;c[b+72>>2]=Bl(c[e>>2]|0)|0;c[b+76>>2]=Bl(c[e>>2]|0)|0;c[b+80>>2]=Bl(c[e>>2]|0)|0;c[b+84>>2]=Bl(c[e>>2]|0)|0;c[b+88>>2]=Bl(c[e>>2]|0)|0;c[b+92>>2]=Bl(c[e>>2]|0)|0;c[b+96>>2]=Bl(c[e>>2]|0)|0;c[b+100>>2]=Bl(c[e>>2]|0)|0;c[b+104>>2]=Bl(c[e>>2]|0)|0;return}function Wj(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;c[a>>2]=0;if(!((f|0)!=0&(g|0)!=0)){i=32816;return i|0}i=rg(1,108,5)|0;if(!i){i=Sn()|0;return i|0}else{Vj(sg(i,1)|0,b,d,e,f,g,h);c[a>>2]=i;i=0;return i|0}return 0}function Xj(a){a=a|0;var b=0,d=0;Ik(c[a+60>>2]|0);tl(c[a+16>>2]|0);tl(c[a+20>>2]|0);tl(c[a+24>>2]|0);b=c[a+28>>2]|0;if(b|0){tl(c[b>>2]|0);c[b>>2]=0;d=b+4|0;tl(c[d>>2]|0);c[d>>2]=0;d=b+8|0;tl(c[d>>2]|0);c[d>>2]=0;cf(b)}tl(c[a+32>>2]|0);tl(c[a+36>>2]|0);b=c[a+40>>2]|0;if(b|0){tl(c[b>>2]|0);c[b>>2]=0;d=b+4|0;tl(c[d>>2]|0);c[d>>2]=0;d=b+8|0;tl(c[d>>2]|0);c[d>>2]=0;cf(b)}tl(c[a+44>>2]|0);tl(c[a+56>>2]|0);tl(c[a+64>>2]|0);tl(c[a+68>>2]|0);tl(c[a+72>>2]|0);tl(c[a+76>>2]|0);tl(c[a+80>>2]|0);tl(c[a+84>>2]|0);tl(c[a+88>>2]|0);tl(c[a+92>>2]|0);tl(c[a+96>>2]|0);tl(c[a+100>>2]|0);tl(c[a+104>>2]|0);return}function Yj(a){a=a|0;if(!a)return;Xj(a);cf(a);return}function Zj(a,b,c){a=a|0;b=b|0;c=c|0;return Kg(a,sg(b,1)|0,c)|0}function _j(a,b,c){a=a|0;b=b|0;c=c|0;return Lg(a,sg(b,1)|0)|0}function $j(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,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=r;switch(c[e>>2]|0){case 0:{n=d+4|0;if(vk(c[n>>2]|0,0)|0?(k=d+8|0,vk(c[k>>2]|0,0)|0):0){f=e+48|0;g=a[f>>0]|0;if(!(g&1)){a[f>>0]=g|1;f=e+16|0;q=Bl(c[f>>2]|0)|0;gk(q,c[f>>2]|0,3);f=e+52|0;c[f>>2]=(wk(c[e+20>>2]|0,q)|0)==0&1;tl(q)}else f=e+52|0;o=e+64|0;do if(!(c[f>>2]|0)){i=e+76|0;f=c[i>>2]|0;j=c[d>>2]|0;Kk(f,j,j);j=e+60|0;g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[i>>2]|0;Kk(f,f,Ml(3)|0);g=c[j>>2]|0;if(!g){h=e+16|0;Gk(f,f,c[h>>2]|0)}else{Jk(f,f,g);h=e+16|0}q=c[o>>2]|0;g=c[k>>2]|0;f=Ml(4)|0;Mk(q,g,f,c[h>>2]|0);f=c[o>>2]|0;Kk(f,f,c[e+20>>2]|0);g=c[j>>2]|0;if(!g)Gk(f,f,c[h>>2]|0);else Jk(f,f,g);f=c[i>>2]|0;fk(f,f,c[o>>2]|0);g=c[j>>2]|0;if(!g){Gk(f,f,c[h>>2]|0);break}else{Jk(f,f,g);break}}else{f=c[o>>2]|0;j=c[k>>2]|0;Kk(f,j,j);j=e+60|0;g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);i=e+76|0;hk(c[i>>2]|0,c[d>>2]|0,c[o>>2]|0);f=c[i>>2]|0;Kk(f,f,Ml(3)|0);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);h=e+68|0;f=c[h>>2]|0;fk(f,c[d>>2]|0,c[o>>2]|0);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);g=c[i>>2]|0;Kk(g,g,c[h>>2]|0);f=c[j>>2]|0;if(!f){Gk(g,g,c[e+16>>2]|0);break}else{Jk(g,g,f);break}}while(0);g=b+8|0;h=c[g>>2]|0;Kk(h,c[n>>2]|0,c[k>>2]|0);f=c[j>>2]|0;if(!f)Gk(h,h,c[e+16>>2]|0);else Jk(h,h,f);f=c[g>>2]|0;uk(f,f,1);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);h=e+68|0;g=c[h>>2]|0;f=c[n>>2]|0;Kk(g,f,f);f=c[j>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);n=e+80|0;g=c[n>>2]|0;Kk(g,c[h>>2]|0,c[d>>2]|0);f=c[j>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);f=c[n>>2]|0;Kk(f,f,Ml(4)|0);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[b>>2]|0;k=e+76|0;g=c[k>>2]|0;Kk(f,g,g);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[o>>2]|0;uk(f,c[n>>2]|0,1);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[b>>2]|0;hk(f,f,c[o>>2]|0);f=c[h>>2]|0;Kk(f,f,f);g=c[j>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);i=e+84|0;g=c[i>>2]|0;f=c[h>>2]|0;Kk(g,f,Ml(5)|0);f=c[j>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);h=b+4|0;hk(c[h>>2]|0,c[n>>2]|0,c[b>>2]|0);g=c[h>>2]|0;Kk(g,g,c[k>>2]|0);f=c[j>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);e=c[h>>2]|0;hk(e,e,c[i>>2]|0);l=r;return}El(c[b>>2]|0,1)|0;El(c[b+4>>2]|0,1)|0;El(c[b+8>>2]|0,0)|0;l=r;return}case 1:{c[f>>2]=45508;c[f+4>>2]=45456;Me(45482,f);break}case 2:{p=e+64|0;f=c[p>>2]|0;h=d+4|0;fk(f,c[d>>2]|0,c[h>>2]|0);q=e+60|0;g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[p>>2]|0;Kk(f,f,f);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);n=e+68|0;f=c[n>>2]|0;g=c[d>>2]|0;Kk(f,g,g);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);o=e+72|0;g=c[o>>2]|0;f=c[h>>2]|0;Kk(g,f,f);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);j=e+76|0;f=c[j>>2]|0;do if((c[e+4>>2]|0)!=1){Kk(f,c[e+20>>2]|0,c[n>>2]|0);g=c[q>>2]|0;if(!g){Gk(f,f,c[e+16>>2]|0);break}else{Jk(f,f,g);break}}else{Al(f,c[n>>2]|0)|0;k=c[j>>2]|0;zl(k,k)}while(0);k=e+80|0;f=c[k>>2]|0;fk(f,c[j>>2]|0,c[o>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);h=e+84|0;g=c[h>>2]|0;f=c[d+8>>2]|0;Kk(g,f,f);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);i=e+88|0;g=c[i>>2]|0;uk(g,c[h>>2]|0,1);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);f=c[i>>2]|0;hk(f,c[k>>2]|0,f);hk(c[b>>2]|0,c[p>>2]|0,c[n>>2]|0);f=c[b>>2]|0;hk(f,f,c[o>>2]|0);f=c[b>>2]|0;Kk(f,f,c[i>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=b+4|0;hk(c[f>>2]|0,c[j>>2]|0,c[o>>2]|0);f=c[f>>2]|0;Kk(f,f,c[k>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);g=c[b+8>>2]|0;Kk(g,c[k>>2]|0,c[i>>2]|0);f=c[q>>2]|0;if(!f){Gk(g,g,c[e+16>>2]|0);l=r;return}else{Jk(g,g,f);l=r;return}}default:{l=r;return}}}function ak(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=v+8|0;u=v;switch(c[f>>2]|0){case 0:{if(((wk(c[d>>2]|0,c[e>>2]|0)|0)==0?(wk(c[d+4>>2]|0,c[e+4>>2]|0)|0)==0:0)?(wk(c[d+8>>2]|0,c[e+8>>2]|0)|0)==0:0){$j(b,d,f);l=v;return}p=d+8|0;if(!(vk(c[p>>2]|0,0)|0)){Al(c[b>>2]|0,c[e>>2]|0)|0;Al(c[b+4>>2]|0,c[e+4>>2]|0)|0;Al(c[b+8>>2]|0,c[e+8>>2]|0)|0;l=v;return}q=e+8|0;if(!(vk(c[q>>2]|0,0)|0)){Al(c[b>>2]|0,c[d>>2]|0)|0;Al(c[b+4>>2]|0,c[d+4>>2]|0)|0;Al(c[b+8>>2]|0,c[p>>2]|0)|0;l=v;return}j=(vk(c[p>>2]|0,1)|0)==0;t=(vk(c[q>>2]|0,1)|0)==0;n=f+64|0;g=c[n>>2]|0;do if(!t){i=c[q>>2]|0;Kk(g,i,i);i=f+60|0;h=c[i>>2]|0;if(!h)Gk(g,g,c[f+16>>2]|0);else Jk(g,g,h);h=c[n>>2]|0;Kk(h,h,c[d>>2]|0);g=c[i>>2]|0;if(!g){Gk(h,h,c[f+16>>2]|0);break}else{Jk(h,h,g);break}}else Al(g,c[d>>2]|0)|0;while(0);k=f+68|0;h=c[k>>2]|0;do if(!j){i=c[p>>2]|0;Kk(h,i,i);i=f+60|0;g=c[i>>2]|0;if(!g)Gk(h,h,c[f+16>>2]|0);else Jk(h,h,g);g=c[k>>2]|0;Kk(g,g,c[e>>2]|0);h=c[i>>2]|0;if(!h){Gk(g,g,c[f+16>>2]|0);s=i;break}else{Jk(g,g,h);s=i;break}}else{Al(h,c[e>>2]|0)|0;s=f+60|0}while(0);r=f+72|0;hk(c[r>>2]|0,c[n>>2]|0,c[k>>2]|0);j=f+76|0;h=c[j>>2]|0;g=c[q>>2]|0;t=f+16|0;Mk(h,g,Ml(3)|0,c[t>>2]|0);g=c[j>>2]|0;Kk(g,g,c[d+4>>2]|0);h=c[s>>2]|0;if(!h)Gk(g,g,c[t>>2]|0);else Jk(g,g,h);i=f+80|0;g=c[i>>2]|0;h=c[p>>2]|0;Mk(g,h,Ml(3)|0,c[t>>2]|0);h=c[i>>2]|0;Kk(h,h,c[e+4>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);o=f+84|0;hk(c[o>>2]|0,c[j>>2]|0,c[i>>2]|0);if(!(vk(c[r>>2]|0,0)|0))if(!(vk(c[o>>2]|0,0)|0)){$j(b,d,f);l=v;return}else{El(c[b>>2]|0,1)|0;El(c[b+4>>2]|0,1)|0;El(c[b+8>>2]|0,0)|0;l=v;return}e=f+88|0;h=c[e>>2]|0;fk(h,c[n>>2]|0,c[k>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);d=f+92|0;h=c[d>>2]|0;fk(h,c[j>>2]|0,c[i>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);h=b+8|0;i=c[h>>2]|0;Kk(i,c[p>>2]|0,c[q>>2]|0);g=c[s>>2]|0;if(!g)Gk(i,i,c[t>>2]|0);else Jk(i,i,g);g=c[h>>2]|0;Kk(g,g,c[r>>2]|0);h=c[s>>2]|0;if(!h)Gk(g,g,c[t>>2]|0);else Jk(g,g,h);k=f+100|0;g=c[k>>2]|0;h=c[o>>2]|0;Kk(g,h,h);h=c[s>>2]|0;if(!h)Gk(g,g,c[t>>2]|0);else Jk(g,g,h);j=f+104|0;g=c[j>>2]|0;h=c[r>>2]|0;Kk(g,h,h);h=c[s>>2]|0;if(!h)Gk(g,g,c[t>>2]|0);else Jk(g,g,h);h=c[j>>2]|0;Kk(h,h,c[e>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);hk(c[b>>2]|0,c[k>>2]|0,c[j>>2]|0);g=c[k>>2]|0;uk(g,c[b>>2]|0,1);h=c[s>>2]|0;if(!h)Gk(g,g,c[t>>2]|0);else Jk(g,g,h);i=f+96|0;hk(c[i>>2]|0,c[j>>2]|0,c[k>>2]|0);h=c[i>>2]|0;Kk(h,h,c[o>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);g=c[k>>2]|0;h=c[r>>2]|0;Mk(g,h,Ml(3)|0,c[t>>2]|0);h=c[k>>2]|0;Kk(h,h,c[d>>2]|0);g=c[s>>2]|0;if(!g)Gk(h,h,c[t>>2]|0);else Jk(h,h,g);j=b+4|0;hk(c[j>>2]|0,c[i>>2]|0,c[k>>2]|0);j=c[j>>2]|0;g=f+48|0;h=a[g>>0]|0;do if(!(h&2)){a[g>>0]=h|2;g=f+56|0;h=c[g>>2]|0;if(!h){h=ll(0)|0;c[g>>2]=h}i=Ml(2)|0;if(Fk(h,i,c[t>>2]|0)|0)break;Le(45341,u);Se(45375,i);Se(45379,c[t>>2]|0)}else g=f+56|0;while(0);Kk(j,j,c[g>>2]|0);g=c[s>>2]|0;if(!g){Gk(j,j,c[t>>2]|0);l=v;return}else{Jk(j,j,g);l=v;return}}case 1:{c[g>>2]=45531;c[g+4>>2]=45456;Me(45482,g);break}case 2:{bk(b,d,e,f);l=v;return}default:{l=v;return}}}function bk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=e+64|0;g=c[p>>2]|0;Kk(g,c[b+8>>2]|0,c[d+8>>2]|0);q=e+60|0;f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);j=e+68|0;f=c[j>>2]|0;g=c[p>>2]|0;Kk(f,g,g);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);o=e+72|0;f=c[o>>2]|0;Kk(f,c[b>>2]|0,c[d>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);n=e+76|0;f=c[n>>2]|0;i=b+4|0;k=d+4|0;Kk(f,c[i>>2]|0,c[k>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);h=e+80|0;f=c[h>>2]|0;Kk(f,c[e+24>>2]|0,c[o>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);f=c[h>>2]|0;Kk(f,f,c[n>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);l=e+84|0;hk(c[l>>2]|0,c[j>>2]|0,c[h>>2]|0);m=e+88|0;g=c[m>>2]|0;fk(g,c[j>>2]|0,c[h>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);h=e+92|0;g=c[h>>2]|0;fk(g,c[b>>2]|0,c[i>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);g=c[a>>2]|0;fk(g,c[d>>2]|0,c[k>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);g=c[a>>2]|0;Kk(g,g,c[h>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);f=c[a>>2]|0;hk(f,f,c[o>>2]|0);f=c[a>>2]|0;hk(f,f,c[n>>2]|0);f=c[a>>2]|0;Kk(f,f,c[l>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);g=c[a>>2]|0;Kk(g,g,c[p>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);h=a+4|0;g=c[h>>2]|0;if((c[e+4>>2]|0)==1){Al(g,c[o>>2]|0)|0;o=c[h>>2]|0;zl(o,o);o=c[h>>2]|0;hk(o,c[n>>2]|0,o)}else{Kk(g,c[e+20>>2]|0,c[o>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);o=c[h>>2]|0;hk(o,c[n>>2]|0,o)}f=c[h>>2]|0;Kk(f,f,c[m>>2]|0);g=c[q>>2]|0;if(!g)Gk(f,f,c[e+16>>2]|0);else Jk(f,f,g);g=c[h>>2]|0;Kk(g,g,c[p>>2]|0);f=c[q>>2]|0;if(!f)Gk(g,g,c[e+16>>2]|0);else Jk(g,g,f);g=c[a+8>>2]|0;Kk(g,c[l>>2]|0,c[m>>2]|0);f=c[q>>2]|0;if(!f){Gk(g,g,c[e+16>>2]|0);return}else{Jk(g,g,f);return}}function ck(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;Q=l;l=l+96|0;if((l|0)>=(m|0))$(96);n=Q+24|0;k=Q+16|0;g=Q+8|0;N=Q;O=Q+76|0;P=Q+64|0;C=Q+52|0;o=Q+40|0;h=Q+28|0;switch(c[e>>2]|0){case 2:{f=lk(b)|0;El(c[a>>2]|0,0)|0;g=a+4|0;El(c[g>>2]|0,1)|0;h=a+8|0;El(c[h>>2]|0,1)|0;if(b|0?c[b+12>>2]&1|0:0){i=Hl(0)|0;c[o>>2]=i;j=Hl(0)|0;c[o+4>>2]=j;k=Hl(0)|0;c[o+8>>2]=k;f=f+-1|0;if((f|0)>-1)do{$j(a,a,e);ak(o,a,d,e);if(mk(b,f)|0){Al(c[a>>2]|0,i)|0;Al(c[g>>2]|0,j)|0;Al(c[h>>2]|0,k)|0}f=f+-1|0}while((f|0)>-1);tl(i);tl(j);tl(k);l=Q;return}f=f+-1|0;if((f|0)<=-1){l=Q;return}do{$j(a,a,e);if(mk(b,f)|0)ak(a,a,d,e);f=f+-1|0}while((f|0)>-1);l=Q;return}case 1:{t=lk(b)|0;x=Hl(0)|0;c[O>>2]=x;y=Hl(0)|0;z=O+4|0;c[z>>2]=y;A=Hl(0)|0;B=O+8|0;c[B>>2]=A;M=Hl(0)|0;C=Hl(0)|0;D=P+4|0;c[D>>2]=C;E=Hl(0)|0;F=P+8|0;c[F>>2]=E;G=Hl(0)|0;c[o>>2]=G;H=Hl(0)|0;c[o+4>>2]=H;I=Hl(0)|0;c[o+8>>2]=I;J=Hl(0)|0;c[h>>2]=J;K=Hl(0)|0;c[h+4>>2]=K;L=Hl(0)|0;c[h+8>>2]=L;El(x,1)|0;tl(M);M=yl(c[d>>2]|0)|0;c[P>>2]=M;El(E,1)|0;f=(((t<<1)+62|0)>>>5)+1|0;ql(x,f);ql(A,f);ql(M,f);ql(E,f);ql(G,f);ql(I,f);ql(J,f);ql(L,f);f=t+-1|0;if((f|0)>-1){u=e+60|0;v=e+16|0;w=e+20|0;r=P;s=O;p=h;while(1){q=mk(b,f)|0;Gl(c[s>>2]|0,c[r>>2]|0,q);n=s+8|0;i=r+8|0;Gl(c[n>>2]|0,c[i>>2]|0,q);k=c[d>>2]|0;g=c[p>>2]|0;fk(g,c[r>>2]|0,c[i>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[i>>2]|0;hk(g,c[r>>2]|0,g);g=c[o>>2]|0;fk(g,c[s>>2]|0,c[n>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[n>>2]|0;hk(g,c[s>>2]|0,g);g=c[r>>2]|0;Kk(g,c[n>>2]|0,c[p>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);h=c[i>>2]|0;Kk(h,c[o>>2]|0,h);g=c[u>>2]|0;if(!g)Gk(h,h,c[v>>2]|0);else Jk(h,h,g);g=c[s>>2]|0;h=c[o>>2]|0;Kk(g,h,h);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[n>>2]|0;Kk(g,g,g);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[p>>2]|0;fk(g,c[r>>2]|0,c[i>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[i>>2]|0;hk(g,c[r>>2]|0,g);g=c[o>>2]|0;Kk(g,c[s>>2]|0,c[n>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);g=c[n>>2]|0;hk(g,c[s>>2]|0,g);g=c[p>>2]|0;Kk(g,g,g);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);j=p+8|0;h=c[j>>2]|0;g=c[i>>2]|0;Kk(h,g,g);g=c[u>>2]|0;if(!g)Gk(h,h,c[v>>2]|0);else Jk(h,h,g);i=o+8|0;g=c[i>>2]|0;Kk(g,c[n>>2]|0,c[w>>2]|0);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);h=c[j>>2]|0;Kk(h,h,k);g=c[u>>2]|0;if(!g)Gk(h,h,c[v>>2]|0);else Jk(h,h,g);g=c[i>>2]|0;fk(g,c[s>>2]|0,g);h=c[u>>2]|0;if(!h)Gk(g,g,c[v>>2]|0);else Jk(g,g,h);h=c[i>>2]|0;Kk(h,h,c[n>>2]|0);g=c[u>>2]|0;if(!g)Gk(h,h,c[v>>2]|0);else Jk(h,h,g);Gl(c[o>>2]|0,c[p>>2]|0,q);Gl(c[i>>2]|0,c[j>>2]|0,q);f=f+-1|0;if((f|0)<=-1)break;else{n=p;q=s;p=r;s=o;r=n;o=q}}}rl(c[a+4>>2]|0);d=t&1;Gl(x,G,d);Gl(A,I,d);if(!(c[A+4>>2]|0)){El(c[a>>2]|0,1)|0;El(c[a+8>>2]|0,0)|0}else{h=Hl(0)|0;i=e+16|0;if(!(Fk(h,A,c[i>>2]|0)|0)){Le(45341,N);Se(45375,A);Se(45379,c[i>>2]|0)}g=c[a>>2]|0;Kk(g,x,h);f=c[e+60>>2]|0;if(!f)Gk(g,g,c[i>>2]|0);else Jk(g,g,f);El(c[a+8>>2]|0,1)|0;tl(h)}tl(x);c[O>>2]=0;tl(y);c[z>>2]=0;tl(A);c[B>>2]=0;tl(M);c[P>>2]=0;tl(C);c[D>>2]=0;tl(E);c[F>>2]=0;tl(G);tl(H);tl(I);tl(J);tl(K);tl(L);l=Q;return}default:{y=e+16|0;z=Bl(c[y>>2]|0)|0;A=Bl(c[y>>2]|0)|0;B=Bl(c[y>>2]|0)|0;x=yl(b)|0;o=yl(c[d+4>>2]|0)|0;f=x+8|0;if(c[f>>2]|0?(c[f>>2]=0,(Fk(o,o,c[y>>2]|0)|0)==0):0){Le(45341,g);Se(45375,o);Se(45379,c[y>>2]|0)}j=d+8|0;if(!(vk(c[j>>2]|0,1)|0)){Al(z,c[d>>2]|0)|0;Al(A,o)|0}else{h=Bl(c[y>>2]|0)|0;i=Bl(c[y>>2]|0)|0;g=c[j>>2]|0;Kk(h,g,g);g=e+60|0;f=c[g>>2]|0;if(!f)Gk(h,h,c[y>>2]|0);else Jk(h,h,f);Kk(i,c[j>>2]|0,h);f=c[g>>2]|0;if(!f)Gk(i,i,c[y>>2]|0);else Jk(i,i,f);if(!(Fk(h,h,c[y>>2]|0)|0)){Le(45341,k);Se(45375,h);Se(45379,c[y>>2]|0)}Kk(z,c[d>>2]|0,h);f=c[g>>2]|0;if(!f)Gk(z,z,c[y>>2]|0);else Jk(z,z,f);if(!(Fk(i,i,c[y>>2]|0)|0)){Le(45341,n);Se(45375,i);Se(45379,c[y>>2]|0)}Kk(A,o,i);f=c[g>>2]|0;if(!f)Gk(A,A,c[y>>2]|0);else Jk(A,A,f);tl(h);tl(i)}w=yl(Ml(1)|0)|0;Kk(B,x,Ml(3)|0);f=lk(B)|0;g=c[a>>2]|0;if(f>>>0<2){rl(g);rl(c[a+4>>2]|0);rl(c[a+8>>2]|0);f=0}else{Al(g,c[d>>2]|0)|0;Al(c[a+4>>2]|0,o)|0;Al(c[a+8>>2]|0,c[j>>2]|0)|0;f=f+-2|0}tl(o);c[O>>2]=z;g=O+4|0;c[g>>2]=A;h=O+8|0;c[h>>2]=w;i=Hl(0)|0;c[P>>2]=i;j=Hl(0)|0;k=P+4|0;c[k>>2]=j;n=Hl(0)|0;o=P+8|0;c[o>>2]=n;p=Hl(0)|0;c[C>>2]=p;q=Hl(0)|0;r=C+4|0;c[r>>2]=q;s=Hl(0)|0;t=C+8|0;c[t>>2]=s;if(f|0){u=a+4|0;v=a+8|0;do{$j(a,a,e);if((mk(B,f)|0)==1?(mk(x,f)|0)==0:0){Al(i,c[a>>2]|0)|0;Al(j,c[u>>2]|0)|0;Al(n,c[v>>2]|0)|0;ak(a,P,O,e)}if((mk(B,f)|0)==0?(mk(x,f)|0)==1:0){Al(i,c[a>>2]|0)|0;Al(j,c[u>>2]|0)|0;Al(n,c[v>>2]|0)|0;Al(p,z)|0;Al(q,A)|0;Al(s,w)|0;hk(q,c[y>>2]|0,q);ak(a,P,C,e)}f=f+-1|0}while((f|0)!=0)}tl(z);c[O>>2]=0;tl(A);c[g>>2]=0;tl(w);c[h>>2]=0;tl(i);c[P>>2]=0;tl(j);c[k>>2]=0;tl(n);c[o>>2]=0;tl(p);c[C>>2]=0;tl(q);c[r>>2]=0;tl(s);c[t>>2]=0;tl(B);tl(x);l=Q;return}}}function dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=Hl(0)|0;h=Hl(0)|0;i=Hl(0)|0;switch(c[b>>2]|0){case 0:{f=Hl(0)|0;if(Nj(g,h,a,b)|0){i=0;return i|0}Kk(h,h,h);e=b+60|0;a=c[e>>2]|0;if(!a){d=b+16|0;Gk(h,h,c[d>>2]|0)}else{Jk(h,h,a);d=b+16|0}Mk(f,g,Ml(3)|0,c[d>>2]|0);Kk(i,c[b+20>>2]|0,g);a=c[e>>2]|0;if(!a)Gk(i,i,c[d>>2]|0);else Jk(i,i,a);fk(i,i,c[b+24>>2]|0);a=c[e>>2]|0;if(!a)Gk(i,i,c[d>>2]|0);else Jk(i,i,a);fk(i,i,f);a=c[e>>2]|0;if(!a)Gk(i,i,c[d>>2]|0);else Jk(i,i,a);a=(wk(h,i)|0)==0&1;Jl(f);break}case 1:{if(Nj(g,0,a,b)|0){i=0;return i|0}Kk(i,c[b+20>>2]|0,Ml(4)|0);d=b+60|0;a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);fk(i,i,Ml(2)|0);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);Kk(i,i,g);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);Kk(h,g,g);a=c[d>>2]|0;if(!a)Gk(h,h,c[b+16>>2]|0);else Jk(h,h,a);fk(i,i,h);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);fk(i,i,Ml(1)|0);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);Kk(i,i,g);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);Kk(i,i,c[b+24>>2]|0);a=c[d>>2]|0;if(!a){a=b+16|0;Gk(i,i,c[a>>2]|0)}else{Jk(i,i,a);a=b+16|0}hk(h,c[a>>2]|0,Ml(1)|0);sk(h,h,1);Mk(i,i,h,c[a>>2]|0);a=vk(i,1)|0;break}case 2:{if(Nj(g,h,a,b)|0){i=0;return i|0}Kk(g,g,g);d=b+60|0;a=c[d>>2]|0;if(!a)Gk(g,g,c[b+16>>2]|0);else Jk(g,g,a);Kk(h,h,h);a=c[d>>2]|0;if(!a)Gk(h,h,c[b+16>>2]|0);else Jk(h,h,a);do if((c[b+4>>2]|0)!=1){Kk(i,c[b+20>>2]|0,g);a=c[d>>2]|0;if(!a){Gk(i,i,c[b+16>>2]|0);break}else{Jk(i,i,a);break}}else{Al(i,g)|0;zl(i,i)}while(0);fk(i,i,h);a=c[d>>2]|0;if(!a)Gk(i,i,c[b+16>>2]|0);else Jk(i,i,a);hk(i,i,Ml(1)|0);Kk(g,g,h);a=c[d>>2]|0;if(!a)Gk(g,g,c[b+16>>2]|0);else Jk(g,g,a);Kk(g,g,c[b+24>>2]|0);a=c[d>>2]|0;if(!a)Gk(g,g,c[b+16>>2]|0);else Jk(g,g,a);hk(i,i,g);a=(vk(i,0)|0)==0&1;break}default:a=0}Jl(i);Jl(g);Jl(h);i=a;return i|0}function ek(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=c[b+4>>2]|0;e=c[b+8>>2]|0;if((c[a>>2]|0)<=(o|0))ql(a,o+1|0);g=c[b+16>>2]|0;n=c[a+16>>2]|0;if(!o){c[n>>2]=d;m=(d|0)!=0&1;n=0;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}if(!e){f=g+4|0;k=c[g>>2]|0;j=k+d|0;e=n+4|0;c[n>>2]=j;a:do if(j>>>0<k>>>0){b=o;while(1){b=b+-1|0;if(!b){b=1;break a}g=f+4|0;k=(c[f>>2]|0)+1|0;d=e+4|0;c[e>>2]=k;if(!k){f=g;e=d}else{f=g;e=d;m=9;break}}}else{b=o;m=9}while(0);if((m|0)==9)if((e|0)!=(f|0)?(l=b+-1|0,(b|0)>1):0){b=0;do{c[e+(b<<2)>>2]=c[f+(b<<2)>>2];b=b+1|0}while((b|0)!=(l|0));b=0}else b=0;c[n+(o<<2)>>2]=b;m=b+o|0;n=0;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}b=c[g>>2]|0;if((o|0)==1&b>>>0<d>>>0){c[n>>2]=d-b;m=1;n=0;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}e=g+4|0;l=b-d|0;f=n+4|0;c[n>>2]=l;b:do if(l>>>0>b>>>0){b=o;while(1){b=b+-1|0;if(!b)break b;g=e+4|0;l=c[e>>2]|0;d=f+4|0;c[f>>2]=l+-1;if(!l){e=g;f=d}else{h=b;i=g;j=d;m=18;break}}}else{h=o;i=e;j=f;m=18}while(0);if(((m|0)==18?(j|0)!=(i|0):0)?(k=h+-1|0,(h|0)>1):0){b=0;do{c[j+(b<<2)>>2]=c[i+(b<<2)>>2];b=b+1|0}while((b|0)!=(k|0))}m=o-((c[n+(o+-1<<2)>>2]|0)==0&1)|0;n=1;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}function fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=c[b+4>>2]|0;h=c[d+4>>2]|0;if((e|0)<(h|0)){g=c[d+8>>2]|0;f=c[b+8>>2]|0;if((c[a>>2]|0)>(h|0)){p=g;i=e;e=h;g=b;b=d}else{ql(a,h+1|0);p=g;i=e;e=h;g=b;b=d}}else{g=c[b+8>>2]|0;f=c[d+8>>2]|0;if((c[a>>2]|0)>(e|0)){p=g;i=h;g=d}else{ql(a,e+1|0);p=g;i=h;g=d}}d=c[b+16>>2]|0;g=c[g+16>>2]|0;o=c[a+16>>2]|0;if(!i){if((e|0)>0)b=0;else{n=e;o=a+4|0;c[o>>2]=n;a=a+8|0;c[a>>2]=p;return}do{c[o+(b<<2)>>2]=c[d+(b<<2)>>2];b=b+1|0}while((b|0)!=(e|0));b=p;p=a+4|0;c[p>>2]=e;a=a+8|0;c[a>>2]=b;return}if((p|0)==(f|0)){b=Wk(o,d,g,i)|0;h=e-i|0;a:do if(h){k=o+(i<<2)|0;m=d+(i<<2)|0;g=m+4|0;m=c[m>>2]|0;l=m+b|0;f=k+4|0;c[k>>2]=l;if(l>>>0<m>>>0){b=h;while(1){b=b+-1|0;if(!b){b=1;break a}h=g+4|0;m=(c[g>>2]|0)+1|0;d=f+4|0;c[f>>2]=m;if(!m){g=h;f=d}else{g=h;f=d;break}}}else b=h;if((f|0)!=(g|0)?(n=b+-1|0,(b|0)>1):0){b=0;do{c[f+(b<<2)>>2]=c[g+(b<<2)>>2];b=b+1|0}while((b|0)!=(n|0));b=0}else b=0}while(0);c[o+(e<<2)>>2]=b;p=(p|0)!=0&1;n=b+e|0;o=a+4|0;c[o>>2]=n;a=a+8|0;c[a>>2]=p;return}if((e|0)!=(i|0)){b=hl(o,d,g,i)|0;h=e-i|0;b:do if(h){k=o+(i<<2)|0;n=d+(i<<2)|0;g=n+4|0;n=c[n>>2]|0;l=n-b|0;f=k+4|0;c[k>>2]=l;if(l>>>0>n>>>0){b=h;while(1){b=b+-1|0;if(!b)break b;h=g+4|0;n=c[g>>2]|0;d=f+4|0;c[f>>2]=n+-1;if(!n){g=h;f=d}else{g=h;f=d;break}}}else b=h;if((f|0)!=(g|0)?(m=b+-1|0,(b|0)>1):0){b=0;do{c[f+(b<<2)>>2]=c[g+(b<<2)>>2];b=b+1|0}while((b|0)!=(m|0))}}while(0);while(1){if((e|0)<=0){b=p;l=39;break}b=e+-1|0;if(!(c[o+(b<<2)>>2]|0))e=b;else{b=p;l=39;break}}if((l|0)==39){p=a+4|0;c[p>>2]=e;a=a+8|0;c[a>>2]=b;return}}else b=e;while(1){if((b|0)<=0)break;b=b+-1|0;j=c[d+(b<<2)>>2]|0;k=c[g+(b<<2)>>2]|0;if((j|0)!=(k|0)){l=22;break}}if((l|0)==22?j>>>0<=k>>>0:0){hl(o,g,d,e)|0;while(1){if((e|0)<=0)break;b=e+-1|0;if(!(c[o+(b<<2)>>2]|0))e=b;else break}p=(p|0)==0&1;n=e;o=a+4|0;c[o>>2]=n;a=a+8|0;c[a>>2]=p;return}hl(o,d,g,e)|0;while(1){if((e|0)<=0)break;b=e+-1|0;if(!(c[o+(b<<2)>>2]|0))e=b;else break}p=(p|0)!=0&1;n=e;o=a+4|0;c[o>>2]=n;a=a+8|0;c[a>>2]=p;return}function gk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=c[b+4>>2]|0;e=c[b+8>>2]|0;if((c[a>>2]|0)<=(o|0))ql(a,o+1|0);g=c[b+16>>2]|0;n=c[a+16>>2]|0;if(!o){c[n>>2]=d;m=(d|0)!=0&1;n=1;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}if(e|0){f=g+4|0;k=c[g>>2]|0;j=k+d|0;e=n+4|0;c[n>>2]=j;a:do if(j>>>0<k>>>0){b=o;while(1){b=b+-1|0;if(!b){b=1;break a}g=f+4|0;k=(c[f>>2]|0)+1|0;d=e+4|0;c[e>>2]=k;if(!k){f=g;e=d}else{f=g;e=d;m=9;break}}}else{b=o;m=9}while(0);if((m|0)==9)if((e|0)!=(f|0)?(l=b+-1|0,(b|0)>1):0){b=0;do{c[e+(b<<2)>>2]=c[f+(b<<2)>>2];b=b+1|0}while((b|0)!=(l|0));b=0}else b=0;c[n+(o<<2)>>2]=b;m=b+o|0;n=0;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}b=c[g>>2]|0;if((o|0)==1&b>>>0<d>>>0){c[n>>2]=d-b;m=1;n=1;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}e=g+4|0;l=b-d|0;f=n+4|0;c[n>>2]=l;b:do if(l>>>0>b>>>0){b=o;while(1){b=b+-1|0;if(!b)break b;g=e+4|0;l=c[e>>2]|0;d=f+4|0;c[f>>2]=l+-1;if(!l){e=g;f=d}else{h=b;i=g;j=d;m=18;break}}}else{h=o;i=e;j=f;m=18}while(0);if(((m|0)==18?(j|0)!=(i|0):0)?(k=h+-1|0,(h|0)>1):0){b=0;do{c[j+(b<<2)>>2]=c[i+(b<<2)>>2];b=b+1|0}while((b|0)!=(k|0))}m=o-((c[n+(o+-1<<2)>>2]|0)==0&1)|0;n=0;o=a+4|0;c[o>>2]=m;o=a+8|0;c[o>>2]=n;return}function hk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;d=yl(d)|0;e=d+8|0;c[e>>2]=(c[e>>2]|0)==0&1;fk(a,b,d);tl(d);return}function ik(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fk(a,b,c);Gk(a,a,d);return}function jk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;d=yl(d)|0;f=d+8|0;c[f>>2]=(c[f>>2]|0)==0&1;fk(a,b,d);tl(d);Gk(a,a,e);return}function kk(a){a=a|0;var b=0,d=0,e=0;if(a|0?c[a+12>>2]&4|0:0)return;e=a+4|0;d=c[e>>2]|0;if(!d)return;b=c[a+16>>2]|0;a=d;while(1){a=a+-1|0;if(c[b+(a<<2)>>2]|0){a=7;break}c[e>>2]=a;if(!a){a=7;break}}if((a|0)==7)return}function lk(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;if(a|0?c[a+12>>2]&4|0:0){h=c[a+8>>2]|0;return h|0}h=a+4|0;b=c[h>>2]|0;if(!b){h=0;return h|0}f=c[a+16>>2]|0;while(1){e=b+-1|0;if(c[f+(e<<2)>>2]|0)break;c[h>>2]=e;if(!e){b=0;g=11;break}else b=e}if((g|0)==11)return b|0;b=c[(c[a+16>>2]|0)+(b+-1<<2)>>2]|0;if(!b)b=32;else{g=b>>>0<65536?(b>>>0<256?0:8):b>>>0<16777216?16:24;b=32-g-(d[45555+(b>>>g)>>0]|0)|0}h=(c[h>>2]<<5)-b|0;return h|0}function mk(a,b){a=a|0;b=b|0;var d=0;d=b>>>5;if(d>>>0>=(c[a+4>>2]|0)>>>0){d=0;return d|0}d=(c[(c[a+16>>2]|0)+(d<<2)>>2]&1<<(b&31)|0)!=0&1;return d|0}function nk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(a|0?c[a+12>>2]&16|0:0){sl();return}g=b>>>5;e=b&31;f=a+4|0;b=c[f>>2]|0;if(g>>>0>=b>>>0){if(b>>>0<(c[a>>2]|0)>>>0){d=c[a+16>>2]|0;do{c[d+(b<<2)>>2]=0;b=b+1|0}while(b>>>0<(c[a>>2]|0)>>>0)}d=g+1|0;ql(a,d);c[f>>2]=d}g=(c[a+16>>2]|0)+(g<<2)|0;c[g>>2]=c[g>>2]|1<<e;return}function ok(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(a|0?c[a+12>>2]&16|0:0){sl();return}g=b>>>5;e=b&31;f=a+4|0;b=c[f>>2]|0;if(g>>>0>=b>>>0){if(b>>>0<(c[a>>2]|0)>>>0){d=c[a+16>>2]|0;do{c[d+(b<<2)>>2]=0;b=b+1|0}while(b>>>0<(c[a>>2]|0)>>>0)}d=g+1|0;ql(a,d);c[f>>2]=d}a=(c[a+16>>2]|0)+(g<<2)|0;d=c[a>>2]|1<<e;c[a>>2]=d;b=e+1|0;if(b>>>0<32){do{d=d&~(1<<b);b=b+1|0}while((b|0)!=32);c[a>>2]=d}c[f>>2]=g+1;return}function pk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(a|0?c[a+12>>2]&16|0:0){sl();return}e=b>>>5;f=a+4|0;if(e>>>0>=(c[f>>2]|0)>>>0)return;d=(c[a+16>>2]|0)+(e<<2)|0;a=b&31;b=c[d>>2]|0;do{b=b&~(1<<a);a=a+1|0}while((a|0)!=32);c[d>>2]=b;c[f>>2]=e+1;return}function qk(a,b){a=a|0;b=b|0;var d=0;if(a|0?c[a+12>>2]&16|0:0){sl();return}d=b>>>5;if(d>>>0>=(c[a+4>>2]|0)>>>0)return;d=(c[a+16>>2]|0)+(d<<2)|0;c[d>>2]=c[d>>2]&~(1<<(b&31));return}function rk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=c[a+16>>2]|0;f=a+4|0;d=c[f>>2]|0;if(a|0?c[a+12>>2]&16|0:0){sl();return}if(d>>>0<=b>>>0){c[f>>2]=0;return}a=d-b|0;if(!a)a=0;else{d=0;do{c[e+(d<<2)>>2]=c[e+(d+b<<2)>>2];d=d+1|0}while((d|0)!=(a|0))}c[e+(a<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)-b;return}function sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=d>>>5;i=d&31;if(a|0?c[a+12>>2]&16|0:0){sl();return}a:do if((a|0)==(b|0)){f=a+4|0;d=c[f>>2]|0;if(h>>>0>=d>>>0){c[f>>2]=0;return}if(h){e=c[a+16>>2]|0;d=0;do{c[e+(d<<2)>>2]=c[e+(d+h<<2)>>2];d=d+1|0}while(d>>>0<((c[f>>2]|0)-h|0)>>>0);c[e+(d<<2)>>2]=0;d=(c[f>>2]|0)-h|0;c[f>>2]=d}if((i|0)!=0&(d|0)!=0){h=c[a+16>>2]|0;gl(h,h,d,i)|0}}else{g=b+4|0;e=c[g>>2]|0;c[a+8>>2]=c[b+8>>2];d=(c[a>>2]|0)<(e|0);if(!h){if(d)ql(a,e);f=a+4|0;c[f>>2]=e;if(!e)break;if(i|0){gl(c[a+16>>2]|0,c[b+16>>2]|0,e,i)|0;break}e=c[b+16>>2]|0;b=c[a+16>>2]|0;d=0;while(1){c[b+(d<<2)>>2]=c[e+(d<<2)>>2];d=d+1|0;if(d>>>0>=(c[f>>2]|0)>>>0)break a}}if(d)ql(a,e);f=a+4|0;c[f>>2]=e;if(!(c[g>>2]|0))d=0;else{e=c[b+16>>2]|0;b=c[a+16>>2]|0;d=0;do{c[b+(d<<2)>>2]=c[e+(d<<2)>>2];d=d+1|0}while(d>>>0<(c[g>>2]|0)>>>0)}c[f>>2]=d;if(h>>>0>=d>>>0){c[f>>2]=0;return}e=c[a+16>>2]|0;d=0;do{c[e+(d<<2)>>2]=c[e+(d+h<<2)>>2];d=d+1|0}while(d>>>0<((c[f>>2]|0)-h|0)>>>0);c[e+(d<<2)>>2]=0;d=(c[f>>2]|0)-h|0;c[f>>2]=d;if((i|0)!=0&(d|0)!=0)gl(e,e,d,i)|0}while(0);d=c[f>>2]|0;if((d|0)<=0)return;b=c[a+16>>2]|0;while(1){e=d;d=d+-1|0;if(c[b+(d<<2)>>2]|0){d=36;break}c[f>>2]=d;if((e|0)<=1){d=36;break}}if((d|0)==36)return}function tk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;d=c[f>>2]|0;if(!((b|0)!=0&(d|0)!=0))return;e=d+b|0;if((c[a>>2]|0)>>>0<e>>>0)ql(a,e);a=c[a+16>>2]|0;if((d|0)>0)do{e=d;d=d+-1|0;c[a+(d+b<<2)>>2]=c[a+(d<<2)>>2]}while((e|0)>1);Yq(a|0,0,b<<2|0)|0;c[f>>2]=(c[f>>2]|0)+b;return}function uk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=d>>>5;j=d&31;if(a|0?c[a+12>>2]&16|0:0){sl();return}e=(a|0)!=(b|0);i=(d|0)!=0;if(!(e|i))return;if(e){g=c[b+4>>2]|0;h=c[b+8>>2]|0;d=k+1+g|0;if((c[a>>2]|0)>>>0<d>>>0)ql(a,d);e=c[a+16>>2]|0;f=c[b+16>>2]|0;if(g|0){d=0;do{c[e+(d<<2)>>2]=c[f+(d<<2)>>2];d=d+1|0}while((d|0)!=(g|0))}c[a+4>>2]=g;c[a+12>>2]=c[b+12>>2];c[a+8>>2]=h}do if(!((k|0)==0|(j|0)!=0)){g=a+4|0;d=c[g>>2]|0;if(d){e=d+k|0;if((c[a>>2]|0)>>>0<e>>>0)ql(a,e);e=c[a+16>>2]|0;if((d|0)>0)do{j=d;d=d+-1|0;c[e+(d+k<<2)>>2]=c[e+(d<<2)>>2]}while((j|0)>1);Yq(e|0,0,k<<2|0)|0;c[g>>2]=(c[g>>2]|0)+k}}else{if(!i){g=a+4|0;break}f=k+1|0;g=a+4|0;d=c[g>>2]|0;if(d|0){e=d+f|0;if((c[a>>2]|0)>>>0<e>>>0)ql(a,e);e=c[a+16>>2]|0;if((d|0)>0)do{b=d;d=d+-1|0;c[e+(b+k<<2)>>2]=c[e+(d<<2)>>2]}while((b|0)>1);Yq(e|0,0,f<<2|0)|0;c[g>>2]=(c[g>>2]|0)+f}sk(a,a,32-j|0)}while(0);d=c[g>>2]|0;if((d|0)<=0)return;f=c[a+16>>2]|0;while(1){e=d;d=d+-1|0;if(c[f+(d<<2)>>2]|0){d=31;break}c[g>>2]=d;if((e|0)<=1){d=31;break}}if((d|0)==31)return}function vk(a,b){a=a|0;b=b|0;var d=0;kk(a);d=c[a+4>>2]|0;if(!d){b=((b|0)!=0)<<31>>31;return b|0}if(c[a+8>>2]|0){b=-1;return b|0}if((d|0)!=1){b=1;return b|0}a=c[c[a+16>>2]>>2]|0;if(a>>>0>b>>>0){b=1;return b|0}b=(a>>>0<b>>>0)<<31>>31;return b|0}function wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=(a|0)!=0;if(e?(d=c[a+12>>2]|0,(d&4|0)!=0):0)j=7;else j=3;do if((j|0)==3){if(b|0?(f=c[b+12>>2]|0,f&4|0):0){if(!e){g=f;j=12;break}d=c[a+12>>2]|0;j=7;break}kk(a);kk(b);d=c[a+4>>2]|0;g=c[b+4>>2]|0;i=c[a+8>>2]|0;h=(i|0)==0;e=c[b+8>>2]|0;f=(e|0)==0;if(h)if(f)e=0;else{j=1;return j|0}else if(f){j=-1;return j|0}do if((d|0)!=(g|0)){e=(e|0)==0;if(h){if(!e)break;j=d-g|0;return j|0}else{if(e)break;j=g+d|0;return j|0}}while(0);if(!d){j=0;return j|0}h=c[a+16>>2]|0;g=c[b+16>>2]|0;do{if((d|0)<=0){d=0;j=31;break}d=d+-1|0;e=c[h+(d<<2)>>2]|0;f=c[g+(d<<2)>>2]|0}while((e|0)==(f|0));if((j|0)==31)return d|0;j=e>>>0<=f>>>0^(i|0)!=0?-1:1;return j|0}while(0);do if((j|0)==7){d=(d&4|0)==0;if(d){if(!((b|0)!=0&d))break;g=c[b+12>>2]|0;j=12;break}if(!b){j=-1;return j|0}if(!(c[b+12>>2]&4)){j=-1;return j|0}}while(0);if((j|0)==12?g&4|0:0){j=1;return j|0}d=c[a+8>>2]|0;e=c[b+8>>2]|0;if(!(d|e)){j=0;return j|0}if((d|0)<(e|0)){j=-1;return j|0}if((d|0)>(e|0)){j=1;return j|0}j=Tp(c[a+16>>2]|0,c[b+16>>2]|0,(d+7|0)/8|0)|0;return j|0}function xk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=c[d+8>>2]|0;if((a|0)==(d|0)){d=yl(d)|0;e=d}else e=0;yk(0,a,b,d);if((f|0)!=0^(c[b+8>>2]|0)!=0?c[a+4>>2]|0:0)fk(a,a,d);if(!e)return;tl(e);return}function yk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+48|0;if((l|0)>=(m|0))$(48);w=y+20|0;x=y;i=e+4|0;s=c[i>>2]|0;h=c[f+4>>2]|0;g=e+8|0;v=c[g>>2]|0;t=c[f+8>>2]^v;n=s+1|0;ql(b,n);j=n-h|0;if((j|0)<1){if((e|0)!=(b|0)?(c[b+4>>2]=c[i>>2],c[b+8>>2]=c[g>>2],(s|0)>0):0){i=c[e+16>>2]|0;h=c[b+16>>2]|0;g=0;do{c[h+(g<<2)>>2]=c[i+(g<<2)>>2];g=g+1|0}while((g|0)!=(s|0))}if(!a){l=y;return}c[a+4>>2]=0;c[a+8>>2]=0;l=y;return}r=(a|0)!=0;if(r)ql(a,j);e=c[e+16>>2]|0;k=c[f+16>>2]|0;u=c[b+16>>2]|0;if((h|0)==1){if(r){x=c[a+16>>2]|0;g=Zk(x,e,s,c[k>>2]|0)|0;c[a+4>>2]=j-((c[x+(j+-1<<2)>>2]|0)==0&1);c[a+8>>2]=t}else g=Xk(e,s,c[k>>2]|0)|0;c[u>>2]=g;c[b+4>>2]=(g|0)!=0&1;c[b+8>>2]=v;l=y;return}if(r){g=c[a+16>>2]|0;if((g|0)==(e|0)){c[x>>2]=s;i=ml(s,c[a+12>>2]&1)|0;c[w>>2]=i;if((s|0)>0){g=0;do{c[i+(g<<2)>>2]=c[e+(g<<2)>>2];g=g+1|0}while((g|0)!=(s|0));o=e;g=1}else{o=e;g=1}}else{i=e;o=g;g=0}}else{i=e;o=u+(h<<2)|0;g=0}q=c[k+(h+-1<<2)>>2]|0;p=q>>>0<65536?(q>>>0<256?0:8):q>>>0<16777216?16:24;p=32-(d[45555+(q>>>p)>>0]|0)-p|0;q=(p|0)!=0;if(q){c[x+(g<<2)>>2]=h;if(!f)e=0;else e=(c[f+12>>2]&1|0)!=0;j=ml(h,e&1)|0;e=g+1|0;c[w+(g<<2)>>2]=j;_k(j,k,h,p)|0;g=_k(u,i,s,p)|0;if(!g){i=s;g=e}else{c[u+(s<<2)>>2]=g;i=n;g=e}}else{if((k|0)==(u|0)|r&(k|0)==(o|0)){c[x+(g<<2)>>2]=h;if(!f)e=0;else e=(c[f+12>>2]&1|0)!=0;j=ml(h,e&1)|0;e=g+1|0;c[w+(g<<2)>>2]=j;if((h|0)>0){g=0;do{c[j+(g<<2)>>2]=c[k+(g<<2)>>2];g=g+1|0}while((g|0)!=(h|0));g=e}else g=e}else j=k;if((u|0)!=(i|0)&(s|0)>0){e=0;do{c[u+(e<<2)>>2]=c[i+(e<<2)>>2];e=e+1|0}while((e|0)!=(s|0));i=s}else i=s}e=Yk(o,0,u,i,j,h)|0;if(r){i=i-h|0;if(e){c[o+(i<<2)>>2]=e;i=i+1|0}c[a+4>>2]=i;c[a+8>>2]=t}while(1){if((h|0)<=0)break;i=h+-1|0;if(!(c[u+(i<<2)>>2]|0))h=i;else break}if(q&(h|0)!=0){gl(u,u,h,p)|0;h=h-((c[u+(h+-1<<2)>>2]|0)==0&1)|0}c[b+4>>2]=h;c[b+8>>2]=v;if(!g){l=y;return}do{g=g+-1|0;ol(c[w+(g<<2)>>2]|0,c[x+(g<<2)>>2]|0)}while((g|0)!=0);l=y;return}function zk(a,b,c){a=a|0;b=b|0;c=c|0;yk(0,a,b,c);return}function Ak(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Xk(c[b+16>>2]|0,c[b+4>>2]|0,d)|0;if(!e)b=0;else b=(c[b+8>>2]|0)==0?e:d-e|0;if(!a)return b|0;c[c[a+16>>2]>>2]=b;c[a+4>>2]=(b|0)!=0&1;return b|0}function Bk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=ll(c[a+4>>2]|0)|0;g=c[d+8>>2]|0;if((a|0)==(d|0)|(f|0)==(d|0)){d=yl(d)|0;e=d}else e=0;yk(a,f,b,d);if((g|0)!=(c[b+8>>2]|0)?c[f+4>>2]|0:0){gk(a,a,1);fk(f,f,d)}if(!e){tl(f);return}tl(e);tl(f);return}function Ck(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=c[b+4>>2]|0;g=d>>>5;e=h-g|0;if((h|0)<=(g|0)){c[a+4>>2]=0;return}if((c[a>>2]|0)<(e|0))ql(a,e);h=c[a+16>>2]|0;f=c[b+16>>2]|0;b=d&31;if(!b){if((e|0)>0){f=f+(g<<2)|0;b=0;do{c[h+(b<<2)>>2]=c[f+(b<<2)>>2];b=b+1|0}while((b|0)!=(e|0))}}else{gl(h,f+(g<<2)|0,e,b)|0;e=e-((c[h+(e+-1<<2)>>2]|0)==0&1)|0}c[a+4>>2]=e;return}function Dk(a,b){a=a|0;b=b|0;return (Xk(c[a+16>>2]|0,c[a+4>>2]|0,b)|0)==0|0}function Ek(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=yl(b)|0;b=yl(d)|0;c[e+8>>2]=0;c[b+8>>2]=0;if(vk(b,0)|0)do{xk(a,e,b);Al(e,b)|0;Al(b,a)|0}while((vk(b,0)|0)!=0);Al(a,e)|0;tl(e);tl(b);return (vk(a,1)|0)==0|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!(vk(b,0)|0)){a=0;return a|0}if(!(vk(d,1)|0)){a=0;return a|0}q=yl(b)|0;p=yl(d)|0;a:do if(!(mk(q,0)|0))do{if(mk(p,0)|0)break a;sk(q,q,1);sk(p,p,1)}while(!(mk(q,0)|0));while(0);l=mk(p,0)|0;k=kl(1)|0;l=(l|0)!=0;if(l)i=0;else i=kl(0)|0;m=yl(q)|0;n=yl(p)|0;if(l)j=0;else{j=ll(c[q+4>>2]|0)|0;hk(j,k,q)}o=yl(p)|0;if(!(mk(q,0)|0)){b=kl(1)|0;if(l)d=0;else d=kl(0)|0;f=yl(q)|0;g=17}else{b=kl(0)|0;if(l)d=0;else{d=kl(1)|0;c[d+8>>2]=1}h=yl(p)|0;f=h+8|0;c[f>>2]=(c[f>>2]|0)==0&1}while(1){if((g|0)==17){g=0;e=(mk(b,0)|0)!=0;if(l){if(e)fk(b,b,p);sk(b,b,1);sk(f,f,1);h=f;continue}if(!(!e?!(mk(d,0)|0):0)){fk(b,b,p);hk(d,d,q)}sk(b,b,1);sk(d,d,1);sk(f,f,1);h=f}if(!(mk(h,0)|0)){f=h;g=17;continue}e=h+8|0;if(!(c[e>>2]|0)){Al(k,b)|0;if(!l)Al(i,d)|0;Al(m,h)|0}else{hk(n,p,b);f=q+8|0;g=c[f>>2]|0;c[f>>2]=(g|0)==0&1;if(!l)hk(j,q,d);c[f>>2]=g;g=c[e>>2]|0;c[e>>2]=(g|0)==0&1;Al(o,h)|0;c[e>>2]=g}hk(b,k,n);if(!l)hk(d,i,j);hk(h,m,o);if(c[b+8>>2]|0?(fk(b,b,p),!l):0)hk(d,d,q);if(!(vk(h,0)|0))break;else{f=h;g=17}}Al(a,k)|0;tl(k);tl(n);tl(b);if(!l){tl(i);tl(j);tl(d)}tl(m);tl(o);tl(h);tl(q);tl(p);a=1;return a|0}function Gk(a,b,c){a=a|0;b=b|0;c=c|0;xk(a,b,c);return}function Hk(a,b){a=a|0;b=b|0;var d=0,e=0;kk(a);d=kf(1,28)|0;if(!b)c[d>>2]=a;else{c[d>>2]=yl(a)|0;c[d+4>>2]=1}b=c[a+4>>2]|0;c[d+8>>2]=b;e=ll(b+1|0)|0;El(e,1)|0;b=b<<1;tk(e,b);Bk(e,e,a);c[d+12>>2]=e;b=b|1;c[d+16>>2]=ll(b)|0;c[d+20>>2]=ll(b)|0;return d|0}function Ik(a){a=a|0;var b=0;if(!a)return;tl(c[a+12>>2]|0);tl(c[a+16>>2]|0);tl(c[a+20>>2]|0);b=c[a+24>>2]|0;if(b|0)tl(b);if(c[a+4>>2]|0)tl(c[a>>2]|0);cf(a);return}function Jk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c[d>>2]|0;i=c[d+8>>2]|0;e=c[d+12>>2]|0;g=c[d+16>>2]|0;f=c[d+20>>2]|0;kk(b);if((c[b+4>>2]|0)>(i<<1|0)){xk(a,b,l);return}j=b+8|0;k=c[j>>2]|0;c[j>>2]=0;Al(f,b)|0;rk(f,i+-1|0);Kk(f,f,e);h=i+1|0;rk(f,h);Al(g,b)|0;e=g+4|0;if((c[e>>2]|0)>(h|0))c[e>>2]=h;Kk(f,f,l);e=f+4|0;if((c[e>>2]|0)>(h|0))c[e>>2]=h;hk(a,g,f);if(c[a+8>>2]|0){b=d+24|0;e=c[b>>2]|0;if(!e){e=ll(i+2|0)|0;c[b>>2]=e;El(e,1)|0;tk(c[b>>2]|0,h);e=c[b>>2]|0}fk(a,a,e)}if((wk(a,l)|0)>-1)do hk(a,a,l);while((wk(a,l)|0)>-1);c[j>>2]=k;return}function Kk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=c[b+4>>2]|0;l=c[d+4>>2]|0;h=(k|0)<(l|0);p=h?b:d;i=h?d:b;m=h?l:k;g=c[i+12>>2]&1;l=h?k:l;k=c[i+16>>2]|0;h=c[p+12>>2]&1;f=c[p+16>>2]|0;p=c[i+8>>2]^c[p+8>>2];i=a+16|0;e=c[i>>2]|0;n=m+l|0;if((a|0)!=0?(c[a+12>>2]&1|0)!=0:0)o=7;else o=3;do if((o|0)==3){if(!(c[b+12>>2]&1)){if(!d){o=7;break}if(!(c[d+12>>2]&1)){o=7;break}}h=0;j=0;g=2;e=ml(n,1)|0;b=k}while(0);a:do if((o|0)==7){b=(e|0)==(k|0);if((c[a>>2]|0)<(n|0))if(b|(e|0)==(f|0)){h=0;j=0;g=1;e=ml(n,c[a+12>>2]&1)|0;b=k;break}else{ql(a,n);h=0;j=0;g=0;e=c[i>>2]|0;b=k;break}if(b){b=ml(m,g)|0;f=(k|0)==(f|0)?b:f;if((m|0)>0)e=0;else{h=m;j=b;g=0;e=k;break}while(1){c[b+(e<<2)>>2]=c[k+(e<<2)>>2];e=e+1|0;if((e|0)>=(m|0)){h=m;j=b;g=0;e=k;break a}}}if((e|0)==(f|0)){d=ml(l,h)|0;if((l|0)>0){e=0;do{c[d+(e<<2)>>2]=c[f+(e<<2)>>2];e=e+1|0}while((e|0)!=(l|0));h=l;j=d;g=0;e=f;b=k;f=d}else{h=l;j=d;g=0;e=f;b=k;f=d}}else{h=0;j=0;g=0;b=k}}while(0);if(!l)d=0;else d=n-((el(e,b,m,f,l)|0)==0&1)|0;switch(g&3){case 0:break;case 2:{b=ml(d,0)|0;if((d|0)>0){f=0;do{c[b+(f<<2)>>2]=c[e+(f<<2)>>2];f=f+1|0}while((f|0)!=(d|0))}ol(e,0);e=b;o=23;break}default:o=23}if((o|0)==23)pl(a,e,d);c[a+4>>2]=d;c[a+8>>2]=p;if(!j)return;ol(j,h);return}function Lk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Kk(a,b,c);zk(a,a,d);return}
+function op(e,f,g,i,k){e=e|0;f=f|0;g=g|0;i=i|0;k=k|0;var n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,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;la=l;l=l+624|0;if((l|0)>=(m|0))$(624);ha=la+24|0;ia=la+16|0;ja=la+588|0;Z=la+576|0;ka=la;U=la+536|0;O=la+8|0;P=la+528|0;Q=(e|0)!=0;R=U+40|0;T=R;U=U+39|0;V=O+4|0;W=ja;X=0-W|0;Y=Z+12|0;Z=Z+11|0;_=Y;aa=_-W|0;ba=-2-W|0;ca=_+2|0;da=ha+288|0;ea=ja+9|0;fa=ea;ga=ja+8|0;o=0;n=0;t=0;a:while(1){do if((n|0)>-1)if((o|0)>(2147483647-n|0)){c[(zo()|0)>>2]=75;n=-1;break}else{n=o+n|0;break}while(0);o=a[f>>0]|0;if(!(o<<24>>24)){N=243;break}else p=f;b:while(1){switch(o<<24>>24){case 37:{o=p;N=9;break b}case 0:{o=p;break b}default:{}}o=p+1|0;p=o;o=a[o>>0]|0}c:do if((N|0)==9)while(1){N=0;if((a[p+1>>0]|0)!=37)break c;o=o+1|0;p=p+2|0;if((a[p>>0]|0)==37)N=9;else break}while(0);o=o-f|0;if(Q?(c[e>>2]&32|0)==0:0)rp(f,o,e)|0;if(o|0){f=p;continue}s=p+1|0;q=a[s>>0]|0;o=(q<<24>>24)+-48|0;if(o>>>0<10){v=(a[p+2>>0]|0)==36;s=v?p+3|0:s;x=v?o:-1;v=v?1:t;o=a[s>>0]|0}else{x=-1;v=t;o=q}p=(o<<24>>24)+-32|0;d:do if(p>>>0<32){q=0;do{if(!(1<<p&75913))break d;q=1<<(o<<24>>24)+-32|q;s=s+1|0;o=a[s>>0]|0;p=(o<<24>>24)+-32|0}while(p>>>0<32)}else q=0;while(0);do if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10){t=0;do{t=(t*10|0)+p|0;s=s+1|0;o=a[s>>0]|0;p=(o<<24>>24)+-48|0}while(p>>>0<10);if((t|0)<0){n=-1;break a}else M=v}else{t=0;M=v}}else{u=s+1|0;o=a[u>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10?(a[s+2>>0]|0)==36:0){c[k+(p<<2)>>2]=10;o=c[i+((a[u>>0]|0)+-48<<3)>>2]|0;p=1;u=s+3|0}else{if(v|0){n=-1;break a}if(!Q){t=0;M=0;s=u;break}p=(c[g>>2]|0)+(4-1)&~(4-1);o=c[p>>2]|0;c[g>>2]=p+4;p=0}M=(o|0)<0;t=M?0-o|0:o;q=M?q|8192:q;M=p;s=u;o=a[u>>0]|0}while(0);e:do if(o<<24>>24==46){o=s+1|0;p=a[o>>0]|0;if(p<<24>>24!=42){s=(p<<24>>24)+-48|0;if(s>>>0<10)p=0;else{y=0;break}while(1){p=(p*10|0)+s|0;o=o+1|0;s=(a[o>>0]|0)+-48|0;if(s>>>0>=10){y=p;break e}}}o=s+2|0;p=(a[o>>0]|0)+-48|0;if(p>>>0<10?(a[s+3>>0]|0)==36:0){c[k+(p<<2)>>2]=10;y=c[i+((a[o>>0]|0)+-48<<3)>>2]|0;o=s+4|0;break}if(M|0){n=-1;break a}if(Q){L=(c[g>>2]|0)+(4-1)&~(4-1);y=c[L>>2]|0;c[g>>2]=L+4}else y=0}else{y=-1;o=s}while(0);v=0;while(1){p=(a[o>>0]|0)+-65|0;if(p>>>0>57){n=-1;break a}L=o+1|0;p=a[66502+(v*58|0)+p>>0]|0;s=p&255;if((s+-1|0)>>>0<8){v=s;o=L}else break}if(!(p<<24>>24)){n=-1;break}u=(x|0)>-1;do if(p<<24>>24==19)if(u){n=-1;break a}else N=51;else{if(u){c[k+(x<<2)>>2]=s;J=i+(x<<3)|0;K=c[J+4>>2]|0;N=ka;c[N>>2]=c[J>>2];c[N+4>>2]=K;N=51;break}if(!Q){n=0;break a}sp(ka,s,g)}while(0);if((N|0)==51?(N=0,!Q):0){o=0;t=M;f=L;continue}G=a[o>>0]|0;G=(v|0)!=0&(G&15|0)==3?G&-33:G;u=q&-65537;K=(q&8192|0)==0?q:u;f:do switch(G|0){case 110:switch((v&255)<<24>>24){case 0:{c[c[ka>>2]>>2]=n;o=0;t=M;f=L;continue a}case 1:{c[c[ka>>2]>>2]=n;o=0;t=M;f=L;continue a}case 2:{o=c[ka>>2]|0;c[o>>2]=n;c[o+4>>2]=((n|0)<0)<<31>>31;o=0;t=M;f=L;continue a}case 3:{b[c[ka>>2]>>1]=n;o=0;t=M;f=L;continue a}case 4:{a[c[ka>>2]>>0]=n;o=0;t=M;f=L;continue a}case 6:{c[c[ka>>2]>>2]=n;o=0;t=M;f=L;continue a}case 7:{o=c[ka>>2]|0;c[o>>2]=n;c[o+4>>2]=((n|0)<0)<<31>>31;o=0;t=M;f=L;continue a}default:{o=0;t=M;f=L;continue a}}case 112:{u=120;v=y>>>0>8?y:8;o=K|8;N=63;break}case 88:case 120:{u=G;v=y;o=K;N=63;break}case 111:{p=ka;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=R;else{f=R;do{f=f+-1|0;a[f>>0]=o&7|48;o=gr(o|0,p|0,3)|0;p=D}while(!((o|0)==0&(p|0)==0))}if(!(K&8)){p=0;q=66982;s=y;o=K;N=76}else{s=T-f|0;p=0;q=66982;s=(y|0)>(s|0)?y:s+1|0;o=K;N=76}break}case 105:case 100:{f=ka;o=c[f>>2]|0;f=c[f+4>>2]|0;if((f|0)<0){o=Xq(0,0,o|0,f|0)|0;f=D;p=ka;c[p>>2]=o;c[p+4>>2]=f;p=1;q=66982;N=75;break f}if(!(K&2048)){q=K&1;p=q;q=(q|0)==0?66982:66984;N=75}else{p=1;q=66983;N=75}break}case 117:{f=ka;p=0;q=66982;o=c[f>>2]|0;f=c[f+4>>2]|0;N=75;break}case 99:{a[U>>0]=c[ka>>2];f=U;x=0;v=66982;p=R;o=1;break}case 109:{o=dp(c[(zo()|0)>>2]|0)|0;N=81;break}case 115:{o=c[ka>>2]|0;o=o|0?o:66992;N=81;break}case 67:{c[O>>2]=c[ka>>2];c[V>>2]=0;c[ka>>2]=O;u=-1;p=O;N=85;break}case 83:{o=c[ka>>2]|0;if(!y){up(e,32,t,0,K);o=0;N=96}else{u=y;p=o;N=85}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{r=+h[ka>>3];c[ia>>2]=0;h[j>>3]=r;if((c[j+4>>2]|0)>=0){o=K&1;if(!(K&2048)){J=o;I=(o|0)==0?67e3:67005}else{J=1;I=67002}}else{r=-r;J=1;I=66999}h[j>>3]=r;H=c[j+4>>2]&2146435072;do if(H>>>0<2146435072|(H|0)==2146435072&0<0){w=+wp(r,ia)*2.0;f=w!=0.0;if(f)c[ia>>2]=(c[ia>>2]|0)+-1;A=G|32;if((A|0)==97){s=G&32;x=(s|0)==0?I:I+9|0;v=J|2;o=12-y|0;do if(!(y>>>0>11|(o|0)==0)){r=8.0;do{o=o+-1|0;r=r*16.0}while((o|0)!=0);if((a[x>>0]|0)==45){r=-(r+(-w-r));break}else{r=w+r-r;break}}else r=w;while(0);f=c[ia>>2]|0;o=(f|0)<0?0-f|0:f;o=tp(o,((o|0)<0)<<31>>31,Y)|0;if((o|0)==(Y|0)){a[Z>>0]=48;o=Z}a[o+-1>>0]=(f>>31&2)+43;u=o+-2|0;a[u>>0]=G+15;q=(y|0)<1;p=(K&8|0)==0;o=ja;do{J=~~r;f=o+1|0;a[o>>0]=d[66966+J>>0]|s;r=(r-+(J|0))*16.0;do if((f-W|0)==1){if(p&(q&r==0.0)){o=f;break}a[f>>0]=46;o=o+2|0}else o=f;while(0)}while(r!=0.0);q=u;p=(y|0)!=0&(ba+o|0)<(y|0)?ca+y-q|0:aa-q+o|0;s=p+v|0;up(e,32,t,s,K);if(!(c[e>>2]&32))rp(x,v,e)|0;up(e,48,t,s,K^65536);f=o-W|0;if(!(c[e>>2]&32))rp(ja,f,e)|0;o=_-q|0;up(e,48,p-(f+o)|0,0,0);if(!(c[e>>2]&32))rp(u,o,e)|0;up(e,32,t,s,K^8192);o=(s|0)<(t|0)?t:s;break}o=(y|0)<0?6:y;if(f){f=(c[ia>>2]|0)+-28|0;c[ia>>2]=f;r=w*268435456.0}else{r=w;f=c[ia>>2]|0}H=(f|0)<0?ha:da;p=H;do{F=~~r>>>0;c[p>>2]=F;p=p+4|0;r=(r-+(F>>>0))*1.0e9}while(r!=0.0);if((f|0)>0){q=H;u=p;while(1){s=(f|0)>29?29:f;f=u+-4|0;do if(f>>>0>=q>>>0){p=0;do{E=mr(c[f>>2]|0,0,s|0)|0;E=_q(E|0,D|0,p|0,0)|0;F=D;C=nr(E|0,F|0,1e9,0)|0;c[f>>2]=C;p=ir(E|0,F|0,1e9,0)|0;f=f+-4|0}while(f>>>0>=q>>>0);if(!p)break;q=q+-4|0;c[q>>2]=p}while(0);p=u;while(1){if(p>>>0<=q>>>0)break;f=p+-4|0;if(!(c[f>>2]|0))p=f;else break}f=(c[ia>>2]|0)-s|0;c[ia>>2]=f;if((f|0)>0)u=p;else break}}else q=H;if((f|0)<0){y=((o+25|0)/9|0)+1|0;z=(A|0)==102;do{x=0-f|0;x=(x|0)>9?9:x;do if(q>>>0<p>>>0){s=(1<<x)+-1|0;u=1e9>>>x;v=0;f=q;do{F=c[f>>2]|0;c[f>>2]=(F>>>x)+v;v=S(F&s,u)|0;f=f+4|0}while(f>>>0<p>>>0);f=(c[q>>2]|0)==0?q+4|0:q;if(!v){q=f;f=p;break}c[p>>2]=v;q=f;f=p+4|0}else{q=(c[q>>2]|0)==0?q+4|0:q;f=p}while(0);p=z?H:q;p=(f-p>>2|0)>(y|0)?p+(y<<2)|0:f;f=(c[ia>>2]|0)+x|0;c[ia>>2]=f}while((f|0)<0)}F=H;do if(q>>>0<p>>>0){f=(F-q>>2)*9|0;u=c[q>>2]|0;if(u>>>0<10)break;else s=10;do{s=s*10|0;f=f+1|0}while(u>>>0>=s>>>0)}else f=0;while(0);B=(A|0)==103;C=(o|0)!=0;s=o-((A|0)!=102?f:0)+((C&B)<<31>>31)|0;if((s|0)<(((p-F>>2)*9|0)+-9|0)){s=s+9216|0;v=H+4+(((s|0)/9|0)+-1024<<2)|0;s=((s|0)%9|0)+1|0;if((s|0)<9){u=10;do{u=u*10|0;s=s+1|0}while((s|0)!=9)}else u=10;y=c[v>>2]|0;z=(y>>>0)%(u>>>0)|0;s=(v+4|0)==(p|0);do if(s&(z|0)==0)s=v;else{w=(((y>>>0)/(u>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(u|0)/2|0;if(z>>>0<x>>>0)r=.5;else r=s&(z|0)==(x|0)?1.0:1.5;do if(J){if((a[I>>0]|0)!=45)break;r=-r;w=-w}while(0);s=y-z|0;c[v>>2]=s;if(!(w+r!=w)){s=v;break}E=s+u|0;c[v>>2]=E;if(E>>>0>999999999){s=v;while(1){f=s+-4|0;c[s>>2]=0;if(f>>>0<q>>>0){q=q+-4|0;c[q>>2]=0}E=(c[f>>2]|0)+1|0;c[f>>2]=E;if(E>>>0>999999999)s=f;else{v=f;break}}}f=(F-q>>2)*9|0;u=c[q>>2]|0;if(u>>>0<10){s=v;break}else s=10;do{s=s*10|0;f=f+1|0}while(u>>>0>=s>>>0);s=v}while(0);E=s+4|0;p=p>>>0>E>>>0?E:p}z=0-f|0;E=p;while(1){if(E>>>0<=q>>>0){A=0;break}p=E+-4|0;if(!(c[p>>2]|0))E=p;else{A=1;break}}do if(B){o=(C&1^1)+o|0;if((o|0)>(f|0)&(f|0)>-5){v=G+-1|0;o=o+-1-f|0}else{v=G+-2|0;o=o+-1|0}p=K&8;if(p|0){x=p;break}do if(A){u=c[E+-4>>2]|0;if(!u){s=9;break}if(!((u>>>0)%10|0)){s=0;p=10}else{s=0;break}do{p=p*10|0;s=s+1|0}while(!((u>>>0)%(p>>>0)|0|0))}else s=9;while(0);p=((E-F>>2)*9|0)+-9|0;if((v|32|0)==102){x=p-s|0;x=(x|0)<0?0:x;o=(o|0)<(x|0)?o:x;x=0;break}else{x=p+f-s|0;x=(x|0)<0?0:x;o=(o|0)<(x|0)?o:x;x=0;break}}else{v=G;x=K&8}while(0);y=o|x;s=(y|0)!=0&1;u=(v|32|0)==102;if(u){z=0;f=(f|0)>0?f:0}else{p=(f|0)<0?z:f;p=tp(p,((p|0)<0)<<31>>31,Y)|0;if((_-p|0)<2)do{p=p+-1|0;a[p>>0]=48}while((_-p|0)<2);a[p+-1>>0]=(f>>31&2)+43;f=p+-2|0;a[f>>0]=v;z=f;f=_-f|0}B=J+1+o+s+f|0;up(e,32,t,B,K);if(!(c[e>>2]&32))rp(I,J,e)|0;up(e,48,t,B,K^65536);do if(u){q=q>>>0>H>>>0?H:q;p=q;do{f=tp(c[p>>2]|0,0,ea)|0;do if((p|0)==(q|0)){if((f|0)!=(ea|0))break;a[ga>>0]=48;f=ga}else{if(f>>>0<=ja>>>0)break;Yq(ja|0,48,f-W|0)|0;do f=f+-1|0;while(f>>>0>ja>>>0)}while(0);if(!(c[e>>2]&32))rp(f,fa-f|0,e)|0;p=p+4|0}while(p>>>0<=H>>>0);do if(y|0){if(c[e>>2]&32|0)break;rp(67034,1,e)|0}while(0);if((o|0)>0&p>>>0<E>>>0)while(1){f=tp(c[p>>2]|0,0,ea)|0;if(f>>>0>ja>>>0){Yq(ja|0,48,f-W|0)|0;do f=f+-1|0;while(f>>>0>ja>>>0)}if(!(c[e>>2]&32))rp(f,(o|0)>9?9:o,e)|0;p=p+4|0;f=o+-9|0;if(!((o|0)>9&p>>>0<E>>>0)){o=f;break}else o=f}up(e,48,o+9|0,9,0)}else{v=A?E:q+4|0;if((o|0)>-1){u=(x|0)==0;s=q;do{f=tp(c[s>>2]|0,0,ea)|0;if((f|0)==(ea|0)){a[ga>>0]=48;f=ga}do if((s|0)==(q|0)){p=f+1|0;if(!(c[e>>2]&32))rp(f,1,e)|0;if(u&(o|0)<1){f=p;break}if(c[e>>2]&32|0){f=p;break}rp(67034,1,e)|0;f=p}else{if(f>>>0<=ja>>>0)break;Yq(ja|0,48,f+X|0)|0;do f=f+-1|0;while(f>>>0>ja>>>0)}while(0);p=fa-f|0;if(!(c[e>>2]&32))rp(f,(o|0)>(p|0)?p:o,e)|0;o=o-p|0;s=s+4|0}while(s>>>0<v>>>0&(o|0)>-1)}up(e,48,o+18|0,18,0);if(c[e>>2]&32|0)break;rp(z,_-z|0,e)|0}while(0);up(e,32,t,B,K^8192);o=(B|0)<(t|0)?t:B}else{f=(G&32|0)!=0;p=J+3|0;up(e,32,t,p,u);o=c[e>>2]|0;if(!(o&32)){rp(I,J,e)|0;o=c[e>>2]|0}if(!(o&32))rp(r!=r|0.0!=0.0?(f?67026:67030):f?67018:67022,3,e)|0;up(e,32,t,p,K^8192);o=(p|0)<(t|0)?t:p}while(0);t=M;f=L;continue a}default:{x=0;v=66982;p=R;o=y;u=K}}while(0);g:do if((N|0)==63){q=ka;p=c[q>>2]|0;q=c[q+4>>2]|0;s=u&32;if((p|0)==0&(q|0)==0){f=R;p=0;q=0}else{f=R;do{f=f+-1|0;a[f>>0]=d[66966+(p&15)>>0]|s;p=gr(p|0,q|0,4)|0;q=D}while(!((p|0)==0&(q|0)==0));q=ka;p=c[q>>2]|0;q=c[q+4>>2]|0}q=(o&8|0)==0|(p|0)==0&(q|0)==0;p=q?0:2;q=q?66982:66982+(u>>4)|0;s=v;N=76}else if((N|0)==75){f=tp(o,f,R)|0;s=y;o=K;N=76}else if((N|0)==81){N=0;K=No(o,0,y)|0;J=(K|0)==0;f=o;x=0;v=66982;p=J?o+y|0:K;o=J?y:K-o|0}else if((N|0)==85){N=0;s=p;o=0;f=0;while(1){q=c[s>>2]|0;if(!q)break;f=vp(P,q)|0;if((f|0)<0|f>>>0>(u-o|0)>>>0)break;o=f+o|0;if(u>>>0>o>>>0)s=s+4|0;else break}if((f|0)<0){n=-1;break a}up(e,32,t,o,K);if(!o){o=0;N=96}else{q=0;while(1){f=c[p>>2]|0;if(!f){N=96;break g}f=vp(P,f)|0;q=f+q|0;if((q|0)>(o|0)){N=96;break g}if(!(c[e>>2]&32))rp(P,f,e)|0;if(q>>>0>=o>>>0){N=96;break}else p=p+4|0}}}while(0);if((N|0)==96){N=0;up(e,32,t,o,K^8192);o=(t|0)>(o|0)?t:o;t=M;f=L;continue}if((N|0)==76){N=0;u=(s|0)>-1?o&-65537:o;o=ka;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){o=(o&1^1)+(T-f)|0;x=p;v=q;p=R;o=(s|0)>(o|0)?s:o}else{f=R;x=p;v=q;p=R;o=0}}s=p-f|0;p=(o|0)<(s|0)?s:o;q=p+x|0;o=(t|0)<(q|0)?q:t;up(e,32,o,q,u);if(!(c[e>>2]&32))rp(v,x,e)|0;up(e,48,o,q,u^65536);up(e,48,p,s,0);if(!(c[e>>2]&32))rp(f,s,e)|0;up(e,32,o,q,u^8192);t=M;f=L}h:do if((N|0)==243)if(!e)if(!t)n=0;else{n=1;while(1){o=c[k+(n<<2)>>2]|0;if(!o)break;sp(i+(n<<3)|0,o,g);n=n+1|0;if((n|0)>=10){n=1;break h}}while(1){if(c[k+(n<<2)>>2]|0){n=-1;break h}n=n+1|0;if((n|0)>=10){n=1;break}}}while(0);l=la;return n|0}function pp(a){a=a|0;return 0}function qp(a){a=a|0;return}function rp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(zp(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0<d>>>0){f=pb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=pb[c[e+36>>2]&63](e,b,i)|0;if(f>>>0<i>>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);cr(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function sp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function tp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=nr(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=b;b=ir(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=D}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function up(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;i=l;l=l+256|0;if((l|0)>=(m|0))$(256);h=i;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;Yq(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){d=d-e|0;do{if(g){rp(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=d&255;else break}else if(!g)break;rp(h,f,a)|0}while(0);l=i;return}function vp(a,b){a=a|0;b=b|0;if(!a)a=0;else a=yp(a,b,0)|0;return a|0}function wp(a,b){a=+a;b=b|0;return +(+xp(a,b))}function xp(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=gr(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+xp(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function yp(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(Ao()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(zo()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(zo()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function zp(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function Ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;cr(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Bp(a){a=a|0;var b=0;b=(cp(a)|0)==0;return (b?a:a&95)|0}function Cp(a){a=a|0;return (_o(a)|0)!=(a|0)|0}function Dp(a){a=a|0;if(a>>>0>=255)if((a+-57344|0)>>>0<8185|(a>>>0<8232|(a+-8234|0)>>>0<47062))a=1;else return ((a+-65532|0)>>>0>1048579|(a&65534|0)==65534)&1^1|0;else a=(a+1&127)>>>0>32&1;return a|0}function Ep(a,b){a=a|0;b=b|0;do switch(b|0){case 1:{a=Fp(a)|0;break}case 2:{a=bp(a)|0;break}case 3:{a=Wo(a)|0;break}case 4:{a=Gp(a)|0;break}case 5:{a=Hp(a)|0;break}case 6:{a=Ip(a)|0;break}case 7:{a=Cp(a)|0;break}case 8:{a=Dp(a)|0;break}case 9:{a=Jp(a)|0;break}case 10:{a=hp(a)|0;break}case 11:{a=Kp(a)|0;break}case 12:{a=Lp(a)|0;break}default:a=0}while(0);return a|0}function Fp(a){a=a|0;if(!(Hp(a)|0))a=(bp(a)|0)!=0;else a=1;return a&1|0}function Gp(a){a=a|0;if((a&-2|0)==8232|(a>>>0<32|(a+-127|0)>>>0<33))a=1;else a=(a+-65529|0)>>>0<3;return a&1|0}function Hp(a){a=a|0;return (a+-48|0)>>>0<10|0}function Ip(a){a=a|0;if(!(hp(a)|0))a=(Dp(a)|0)!=0;else a=0;return a&1|0}function Jp(a){a=a|0;if(a>>>0<131072)a=(d[67036+((d[67036+(a>>>8)>>0]|0)<<5|a>>>3&31)>>0]|0)>>>(a&7)&1;else a=0;return a|0}function Kp(a){a=a|0;return ($o(a)|0)!=(a|0)|0}function Lp(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function Mp(a,b){a=a|0;b=b|0;Np(a,b)|0;return a|0}function Np(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function Op(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b>>0]|0;a:do if(!(e<<24>>24))e=0;else{g=e&255;while(1){f=a[c>>0]|0;if(!(f<<24>>24))break a;if(e<<24>>24!=f<<24>>24?(g=Yo(g)|0,(g|0)!=(Yo(f&255)|0)):0)break a;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){e=0;break}else g=e&255}}while(0);g=Yo(e&255)|0;return g-(Yo(d[c>>0]|0)|0)|0}function Pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e;c[f>>2]=d;d=Qp(a,b,f)|0;l=e;return d|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;return mp(a,2147483647,b,c)|0}function Rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e;c[f>>2]=d;d=np(a,b,f)|0;l=e;return d|0}function Sp(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;if((c[f+76>>2]|0)>-1)m=pp(f)|0;else m=0;g=e+-1|0;if((e|0)<2){n=f+74|0;l=a[n>>0]|0;a[n>>0]=l+255|l;if(m|0)qp(f);if(!g)a[b>>0]=0;else b=0}else{a:do if(g){k=f+4|0;l=f+8|0;e=b;while(1){h=c[k>>2]|0;o=h;p=(c[l>>2]|0)-o|0;i=No(h,10,p)|0;j=(i|0)==0;i=j?p:1-o+i|0;i=i>>>0<g>>>0?i:g;cr(e|0,h|0,i|0)|0;h=(c[k>>2]|0)+i|0;c[k>>2]=h;e=e+i|0;i=g-i|0;if(!(j&(i|0)!=0)){n=17;break a}if(h>>>0>=(c[l>>2]|0)>>>0){g=So(f)|0;if((g|0)<0)break;else j=g}else{c[k>>2]=h+1;j=d[h>>0]|0}g=i+-1|0;h=e+1|0;a[e>>0]=j;if(!((g|0)!=0&(j&255|0)!=10)){e=h;n=17;break a}else e=h}if((e|0)!=(b|0)?(c[f>>2]&16|0)!=0:0)n=17;else b=0}else{e=b;n=17}while(0);if((n|0)==17)if(!b)b=0;else a[e>>0]=0;if(m)qp(f)}return b|0}function Tp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function Up(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);d=b;c[d>>2]=Co(a)|0;a=cb(6,d|0)|0;a=yo((a|0)==-4?0:a)|0;l=b;return a|0}function Vp(a,b,c){a=a|0;b=b|0;c=c|0;Wp(a,b,c)|0;return a|0}function Wp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);Yq(b|0,0,e|0)|0;return b|0}function Xp(a){a=a|0;return er(a|0)|0}function Yp(a){a=a|0;return er(a|0)|0}function Zp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+16|0;if((l|0)>=(m|0))$(16);g=j;a:do if(!e)b=0;else{do if(f|0){i=(b|0)==0?g:b;b=a[e>>0]|0;if(b<<24>>24>-1){c[i>>2]=b&255;b=b<<24>>24!=0&1;break a}h=(c[c[(Ao()|0)+188>>2]>>2]|0)==0;b=a[e>>0]|0;if(h){c[i>>2]=b<<24>>24&57343;b=1;break a}b=(b&255)+-194|0;if(b>>>0<=50){g=e+1|0;h=c[15868+(b<<2)>>2]|0;if(f>>>0<4?h&-2147483648>>>((f*6|0)+-6|0)|0:0)break;b=d[g>>0]|0;f=b>>>3;if((f+-16|f+(h>>26))>>>0<=7){b=b+-128|h<<6;if((b|0)>=0){c[i>>2]=b;b=2;break a}g=(d[e+2>>0]|0)+-128|0;if(g>>>0<=63){g=g|b<<6;if((g|0)>=0){c[i>>2]=g;b=3;break a}b=(d[e+3>>0]|0)+-128|0;if(b>>>0<=63){c[i>>2]=b|g<<6;b=4;break a}}}}}while(0);c[(zo()|0)>>2]=84;b=-1}while(0);l=j;return b|0}function _p(b){b=b|0;var c=0,d=0,e=0;d=(Ko(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(Ko(b,120)|0)==0;d=e?d:d|128;b=(Ko(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function $p(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=hq(a)|0;break}d=(pp(a)|0)==0;b=hq(a)|0;if(!d)qp(a)}else{if(!(c[3934]|0))b=0;else b=$p(c[3934]|0)|0;a=c[(dq()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=pp(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=hq(a)|0|b;if(d|0)qp(a);a=c[a+56>>2]|0}while((a|0)!=0);eq()}while(0);return b|0}function aq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;if((l|0)>=(m|0))$(48);h=i+32|0;g=i+16|0;e=i;if(No(70204,a[d>>0]|0,4)|0){f=_p(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=yo(db(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;wa(221,g|0)|0}b=fq(e,d)|0;if(!b){c[h>>2]=e;cb(6,h|0)|0;b=0}}else b=0}else{c[(zo()|0)>>2]=22;b=0}l=i;return b|0}function bq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=pp(a)|0;else f=0;cq(a);g=(c[a>>2]&1|0)!=0;if(!g){e=dq()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;eq()}b=$p(a)|0;b=tb[c[a+12>>2]&15](a)|0|b;d=c[a+92>>2]|0;if(d|0)Pq(d);if(g){if(f|0)qp(a)}else Pq(a);return b|0}function cq(a){a=a|0;var b=0,d=0;do if(c[a+68>>2]|0){b=c[a+116>>2]|0;d=b;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;if(!a){c[(Ao()|0)+232>>2]=d;break}else{c[a+116>>2]=d;break}}while(0);return}function dq(){bb(70840);return 70848}function eq(){_a(70840);return}function fq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0;p=l;l=l+64|0;if((l|0)>=(m|0))$(64);o=p+40|0;j=p+24|0;i=p+16|0;f=p;k=p+56|0;e=a[d>>0]|0;if(No(70204,e<<24>>24,4)|0){n=Oq(1156)|0;if(!n)e=0;else{g=n;h=g+124|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));if(!(Ko(d,43)|0))c[n>>2]=e<<24>>24==114?8:4;if(Ko(d,101)|0){c[f>>2]=b;c[f+4>>2]=2;c[f+8>>2]=1;wa(221,f|0)|0;e=a[d>>0]|0}if(e<<24>>24==97){c[i>>2]=b;c[i+4>>2]=3;e=wa(221,i|0)|0;if(!(e&1024)){c[j>>2]=b;c[j+4>>2]=4;c[j+8>>2]=e|1024;wa(221,j|0)|0}d=c[n>>2]|128;c[n>>2]=d}else d=c[n>>2]|0;c[n+60>>2]=b;c[n+44>>2]=n+132;c[n+48>>2]=1024;e=n+75|0;a[e>>0]=-1;if((d&8|0)==0?(c[o>>2]=b,c[o+4>>2]=21523,c[o+8>>2]=k,(Za(54,o|0)|0)==0):0)a[e>>0]=10;c[n+32>>2]=35;c[n+36>>2]=25;c[n+40>>2]=24;c[n+12>>2]=10;if(!(c[17695]|0))c[n+76>>2]=-1;e=gq(n)|0}}else{c[(zo()|0)>>2]=22;e=0}l=p;return e|0}function gq(a){a=a|0;var b=0,d=0;b=dq()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;eq();return a|0}function hq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(pb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0<g>>>0)pb[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function iq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=S(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(pp(e)|0)==0;a=rp(a,f,e)|0;if(!g)qp(e)}else a=rp(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function jq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+192|0;if((l|0)>=(m|0))$(192);i=t+152|0;h=t+136|0;s=t+120|0;r=t+104|0;q=t+96|0;n=t+80|0;k=t+64|0;f=t+48|0;o=t+32|0;g=t+16|0;e=t;u=t+176|0;j=t+168|0;c[u>>2]=d;d=(c[u>>2]|0)+(4-1)&~(4-1);p=c[d>>2]|0;c[u>>2]=d+4;p=(b|0)==4?p|32768:p;a:do switch(b|0){case 14:{c[e>>2]=a;c[e+4>>2]=14;c[e+8>>2]=p;d=yo(wa(221,e|0)|0)|0;break}case 9:{c[g>>2]=a;c[g+4>>2]=16;c[g+8>>2]=j;d=wa(221,g|0)|0;switch(d|0){case -22:{c[o>>2]=a;c[o+4>>2]=9;c[o+8>>2]=p;d=wa(221,o|0)|0;break}case 0:{d=c[j+4>>2]|0;d=(c[j>>2]|0)==2?0-d|0:d;break}default:d=yo(d)|0}break}case 1030:{c[f>>2]=a;c[f+4>>2]=1030;c[f+8>>2]=p;d=wa(221,f|0)|0;if((d|0)!=-22){if((d|0)>-1){c[k>>2]=d;c[k+4>>2]=2;c[k+8>>2]=1;wa(221,k|0)|0}d=yo(d)|0;break a}c[n>>2]=a;c[n+4>>2]=1030;c[n+8>>2]=0;d=wa(221,n|0)|0;if((d|0)==-22){c[r>>2]=a;c[r+4>>2]=0;c[r+8>>2]=p;d=wa(221,r|0)|0;if((d|0)>-1){c[s>>2]=d;c[s+4>>2]=2;c[s+8>>2]=1;wa(221,s|0)|0}d=yo(d)|0;break a}else{if((d|0)>-1){c[q>>2]=d;cb(6,q|0)|0}d=yo(-22)|0;break a}}case 15:case 16:case 12:case 13:{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=p;d=yo(wa(221,h|0)|0)|0;break}default:{c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=p;d=yo(wa(221,i|0)|0)|0}}while(0);l=t;return d|0}function kq(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(pp(a)|0)==0;a=(c[a>>2]|0)>>>4&1}else a=(c[a>>2]|0)>>>4&1;return a|0}function lq(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=b;e=70208;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=c;d=14;while(1){d=d+1|0;if(e>>>0<10)break;else e=(e>>>0)/10|0}a[b+d>>0]=0;while(1){d=d+-1|0;a[b+d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}}return}function mq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;if((l|0)>=(m|0))$(48);f=g+40|0;e=g+8|0;d=g;c[d>>2]=a;c[d+4>>2]=b;d=Ka(197,d|0)|0;if((d|0)==-9?(c[e>>2]=a,c[e+4>>2]=1,(wa(221,e|0)|0)>=0):0){lq(e,a);c[f>>2]=e;c[f+4>>2]=b;b=yo(La(195,f|0)|0)|0}else b=yo(d)|0;l=g;return b|0}function nq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+32|0;if((l|0)>=(m|0))$(32);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=yo(lb(142,h|0)|0)|0;l=g;return f|0}function oq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=yo(eb(4,f|0)|0)|0;l=e;return d|0}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;d=yo(ab(3,f|0)|0)|0;l=e;return d|0}function qq(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=Ba(20,a|0)|0;l=a;return b|0}function rq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+32|0;if((l|0)>=(m|0))$(32);g=f;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=e;c[g+12>>2]=a;a=g+16|0;c[a>>2]=-1;tq(6,g);a=c[a>>2]|0;if(a)if((a|0)>0){c[(zo()|0)>>2]=a;a=-1}else a=-1;else a=0;l=f;return a|0}function sq(a){a=a|0;a=a+16|0;if((c[a>>2]|0)<=0)c[a>>2]=1;return}function tq(a,b){a=a|0;b=b|0;rb[a&7](b);return}function uq(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=Na(199,a|0)|0;l=a;return b|0}function vq(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;c[e>>2]=a;c[e+4>>2]=b;b=yo(Ya(33,e|0)|0)|0;l=d;return b|0}function wq(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=hb(201,a|0)|0;l=a;return b|0}function xq(a){a=a|0;return rq(213,a,0,0)|0}function yq(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);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=yo(Ma(194,e|0)|0)|0;l=d;return b|0}function zq(){var a=0,b=0;a=l;l=l+16|0;if((l|0)>=(m|0))$(16);b=ya(64,a|0)|0;l=a;return b|0}function Aq(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;j=l;l=l+32|0;if((l|0)>=(m|0))$(32);i=j;h=((g|0)<0)<<31>>31;do if((g&4095|0)==0&(h&-4096|0)==0){if(b>>>0>2147483646){c[(zo()|0)>>2]=12;a=-1;break}if(e&16|0)Vo();h=gr(g|0,h|0,12)|0;c[i>>2]=a;c[i+4>>2]=b;c[i+8>>2]=d;c[i+12>>2]=e;c[i+16>>2]=f;c[i+20>>2]=h;a=yo(Ja(192,i|0)|0)|0}else{c[(zo()|0)>>2]=22;a=-1}while(0);l=j;return a|0}function Bq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;if((l|0)>=(m|0))$(48);g=h+16|0;f=h;e=h+32|0;if(!(b&4194368))e=0;else{c[e>>2]=d;i=(c[e>>2]|0)+(4-1)&~(4-1);d=c[i>>2]|0;c[e>>2]=i+4;e=d}c[f>>2]=a;c[f+4>>2]=b|32768;c[f+8>>2]=e;e=db(5,f|0)|0;if(!((b&524288|0)==0|(e|0)<0)){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;wa(221,g|0)|0}i=yo(e)|0;l=h;return i|0}function Cq(a){a=a|0;bb(70852);Dq(a);_a(70852);return}function Dq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=c[4071]|0;if(!f)c[c[4072]>>2]=a;else{c[4073]=(f|0)==31|(f|0)==7?3:1;c[17715]=0;if((f|0)>0){b=c[4072]|0;e=0;d=0;do{g=kr(a|0,d|0,1284865837,1481765933)|0;a=_q(g|0,D|0,1,0)|0;d=D;c[b+(e<<2)>>2]=d;e=e+1|0}while((e|0)<(f|0))}else b=c[4072]|0;c[b>>2]=c[b>>2]|1}return}function Eq(){var a=0,b=0,d=0,e=0,f=0;bb(70852);a=c[4071]|0;if(!a){b=c[4072]|0;a=(S(c[b>>2]|0,1103515245)|0)+12345&2147483647;c[b>>2]=a}else{d=c[17715]|0;b=c[4072]|0;e=c[4073]|0;f=b+(e<<2)|0;b=(c[f>>2]|0)+(c[b+(d<<2)>>2]|0)|0;c[f>>2]=b;e=e+1|0;c[4073]=(e|0)==(a|0)?0:e;d=d+1|0;c[17715]=(d|0)==(a|0)?0:d;a=b>>>1}_a(70852);return a|0}function Fq(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;while(1){e=a[b>>0]|0;c=e<<24>>24;f=b+1|0;if(!(Lo(c)|0))break;else b=f}switch(c|0){case 45:{b=1;g=5;break}case 43:{b=0;g=5;break}default:{h=0;d=b;b=e}}if((g|0)==5){h=b;d=f;b=a[f>>0]|0}c=(b<<24>>24)+-48|0;if(c>>>0<10){b=0;do{d=d+1|0;b=(b*10|0)-c|0;c=(a[d>>0]|0)+-48|0}while(c>>>0<10)}else b=0;return (h|0?b:0-b|0)|0}function Gq(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;c[e>>2]=a;c[e+4>>2]=b;b=yo(Wa(77,e|0)|0)|0;l=d;return b|0}function Hq(a,b){a=a|0;b=b|0;if(!a)b=Qq(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}return b|0}function Iq(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(b|0)do{Pq(c[b>>2]|0);d=b;b=c[b+4>>2]|0;Pq(d)}while((b|0)!=0);Pq(a);return}function Jq(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;h=a+16|0;a:do if(!(c[h>>2]|0)){k=a+12|0;g=c[k>>2]|0;do if(g>>>0<f>>>0){if(b|0)if(!d){c[h>>2]=1;b=0;break a}else{i=a+8|0;c[i>>2]=d;c[k>>2]=1024;h=d;b=d;g=1024;break}g=f<<3;g=g>>>0>1024?g:1024;i=Oq(8)|0;if(!i){c[h>>2]=1;b=0;break a}b=Oq(g)|0;c[i>>2]=b;j=b;if(!b){Pq(i);c[h>>2]=1;b=0;break a}c[i+4>>2]=0;d=a+4|0;h=c[d>>2]|0;if(h|0)c[h+4>>2]=i;if(!(c[a>>2]|0))c[a>>2]=i;c[d>>2]=i;i=a+8|0;c[i>>2]=j;c[k>>2]=g;h=j}else{i=a+8|0;b=c[i>>2]|0;h=b}while(0);d=h+f&3;d=((d|0)==0?0:4-d|0)+f|0;c[i>>2]=b+d;c[k>>2]=g-d;if(e)Yq(b|0,0,d|0)|0}else b=0;while(0);return b|0}function Kq(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,n=0,o=0,p=0,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,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=l;l=l+16|0;if((l|0)>=(m|0))$(16);U=Z;X=c[a+4>>2]|0;Y=X+56|0;W=(c[Y>>2]&8|0)==0?d:0;R=X+40|0;a=c[R>>2]|0;if((a|0)>0&(W|0)!=0){a=Oq(a<<2)|0;if(!a)a=12;else{V=a;T=3}}else{V=0;T=3}if((T|0)==3){if(!(c[X+60>>2]|0)){c[U>>2]=0;i=f&1;Q=f&2;h=c[Y>>2]&4;if(!V)O=0;else O=c[R>>2]|0;P=O<<2;g=c[X+52>>2]|0;f=g<<3;d=f+8|0;a=P+12+f+(d+(S(P,g)|0)<<1)|0;R=Oq(a)|0;if(!R){a=12;d=0}else{Yq(R|0,0,a|0)|0;a=R+P|0;j=a&3;j=a+((j|0)==0?0:4-j|0)|0;a=j+d|0;k=a&3;k=a+((k|0)==0?0:4-k|0)|0;a=k+d|0;N=a&3;N=a+((N|0)==0?0:4-N|0)|0;a=N+f|0;d=a&3;if((g|0)>0){a=a+((d|0)==0?0:4-d|0)|0;d=0;while(1){c[k+(d<<3)+4>>2]=a;a=a+P|0;c[j+(d<<3)+4>>2]=a;d=d+1|0;if((d|0)==(g|0)){a=0;break}else a=a+P|0}do{c[N+(a<<3)>>2]=-1;a=a+1|0}while((a|0)!=(g|0))}a=Zp(U,b,4)|0;if((a|0)<1)if((a|0)<0){a=1;d=0}else{a=1;T=201}else T=201;a:do if((T|0)==201){M=X+8|0;F=(h|0)!=0;G=(O|0)>0;H=X+12|0;I=X+44|0;J=X+32|0;K=X+36|0;L=(O|0)==0;E=(i|0)==0;D=(O|0)<1;g=0;w=b+a|0;v=0;h=0;d=-1;f=j;B=R;z=j;x=k;while(1){if((d|0)<0){i=c[M>>2]|0;j=i+8|0;b:do if(c[j>>2]|0){q=(v|0)!=0;r=(g|0)==95;s=(v|0)==0;u=F&(g|0)==10;t=E&(v|0)<1;while(1){c:while(1){p=i+12|0;if((c[N+(c[p>>2]<<3)>>2]|0)>=(v|0))break;o=i+20|0;k=c[o>>2]|0;if(!k){T=236;break}d:do if(u|(t|(k&1|0)==0)){if(k&2|0?(b=c[U>>2]|0,!((b|Q|0)==0|F&(b|0)==10)):0)break;do if(k&16|0){if(r)break d;if(Fp(g)|0)break d;k=c[U>>2]|0;if((k|0)==95)break;if(!(Fp(k)|0))break d}while(0);k=c[o>>2]|0;if(k&32){if(r){k=c[U>>2]|0;if((k|0)==95)break}else{b=(Fp(g)|0)==0;k=c[U>>2]|0;if(b|(k|0)==95)break}if(Fp(k)|0)break;k=c[o>>2]|0}n=c[U>>2]|0;do if((n|0)!=0&(q&(k&64|0)!=0)){if(r)k=1;else{k=(Fp(g)|0)!=0;n=c[U>>2]|0}if((n|0)==95)if(k)break d;else break;else if(k^(Fp(n)|0)!=0)break;else break d}while(0);if(!(c[o>>2]&128)){T=236;break c}k=c[U>>2]|0;if(s|(k|0)==0)break;if(r)n=1;else{n=(Fp(g)|0)!=0;k=c[U>>2]|0}if((k|0)==95)if(n){T=236;break c}else break;else if(n^(Fp(k)|0)!=0)break;else{T=236;break c}}while(0);j=i+40|0;if(!(c[j>>2]|0))break b;else i=i+32|0}if((T|0)==236){T=0;c[f>>2]=c[j>>2];if(G)Yq(c[f+4>>2]|0,-1,P|0)|0;j=c[i+16>>2]|0;do if(j|0){k=c[j>>2]|0;if((k|0)<=-1)break;n=f+4|0;do{if((k|0)<(O|0))c[(c[n>>2]|0)+(k<<2)>>2]=v;j=j+4|0;k=c[j>>2]|0}while((k|0)>-1)}while(0);j=(c[f>>2]|0)!=(c[H>>2]|0);if(D|j){h=j?h:1;d=j?d:v;j=f+4|0}else{j=f+4|0;h=c[j>>2]|0;d=0;do{c[V+(d<<2)>>2]=c[h+(d<<2)>>2];d=d+1|0}while((d|0)!=(O|0));h=1;d=v}b=c[p>>2]|0;c[N+(b<<3)>>2]=v;c[N+(b<<3)+4>>2]=j;f=f+8|0}j=i+40|0;if(!(c[j>>2]|0))break;else i=i+32|0}}while(0);c[f>>2]=0;f=c[U>>2]|0;if(!f)break;else g=f}else{if(L)break;g=c[U>>2]|0;if(!((f|0)!=(z|0)&(g|0)!=0))break}C=v+a|0;a=Zp(U,w,4)|0;if((a|0)<1)if((a|0)<0){a=1;d=0;break a}else a=1;A=w+a|0;if((h|0)!=0&(c[I>>2]|0)!=0){if(!(c[z>>2]|0))f=x;else{p=c[K>>2]|0;q=c[p>>2]|0;r=(q|0)>-1;o=z;f=x;do{n=o+4|0;e:do if(r){i=0;k=q;do{j=c[p+((i|1)<<2)>>2]|0;if((k|0)>=(O|0))break e;h=c[n>>2]|0;if((c[h+(j<<2)>>2]|0)==(c[V+(j<<2)>>2]|0)?(c[h+(k<<2)>>2]|0)<(c[V+(k<<2)>>2]|0):0)break e;i=i+2|0;k=c[p+(i<<2)>>2]|0}while((k|0)>-1);i=n;T=265}else{i=n;h=c[n>>2]|0;T=265}while(0);if((T|0)==265){T=0;c[f>>2]=c[o>>2];y=f+4|0;b=c[y>>2]|0;c[y>>2]=h;c[i>>2]=b;f=f+8|0}o=o+8|0}while((c[o>>2]|0)!=0)}c[f>>2]=0;y=z;h=0}else{y=x;x=z}i=c[x>>2]|0;if(!i){i=B;f=y}else{s=(C|0)!=0;t=(g|0)==95;u=(C|0)==0;w=F&(g|0)==10;v=E&(C|0)<1;r=x;j=B;f=y;while(1){k=i+8|0;if(c[k>>2]|0){q=r+4|0;p=j;o=k;while(1){f:do if((c[i>>2]|0)>>>0>g>>>0)j=p;else{if((c[i+4>>2]|0)>>>0<g>>>0){j=p;break}n=i+20|0;j=c[n>>2]|0;do if(j|0){if(!(w|(v|(j&1|0)==0))){j=p;break f}if(j&2|0?(b=c[U>>2]|0,!((b|Q|0)==0|F&(b|0)==10)):0){j=p;break f}do if(j&16|0){if(t){j=p;break f}if(Fp(g)|0){j=p;break f}j=c[U>>2]|0;if((j|0)==95)break;if(!(Fp(j)|0)){j=p;break f}}while(0);j=c[n>>2]|0;if(j&32){if(t){j=c[U>>2]|0;if((j|0)==95){j=p;break f}}else{b=(Fp(g)|0)==0;j=c[U>>2]|0;if(b|(j|0)==95){j=p;break f}}if(Fp(j)|0){j=p;break f}j=c[n>>2]|0}k=c[U>>2]|0;do if((k|0)!=0&(s&(j&64|0)!=0)){if(t)j=1;else{j=(Fp(g)|0)!=0;k=c[U>>2]|0}if((k|0)==95)if(j){j=p;break f}else break;else if(j^(Fp(k)|0)!=0)break;else{j=p;break f}}while(0);do if(c[n>>2]&128|0){j=c[U>>2]|0;if(u|(j|0)==0){j=p;break f}if(t)k=1;else{k=(Fp(g)|0)!=0;j=c[U>>2]|0}if((j|0)==95)if(k)break;else{j=p;break f}else if(k^(Fp(j)|0)!=0){j=p;break f}else break}while(0);j=c[n>>2]|0;do if(j&4){if(c[Y>>2]&2|0)break;if(!(Ep(g,c[i+24>>2]|0)|0)){j=p;break f}j=c[n>>2]|0}while(0);do if(j&4|0){if(!(c[Y>>2]&2))break;b=$o(g)|0;j=i+24|0;if(Ep(b,c[j>>2]|0)|0)break;b=_o(g)|0;if(!(Ep(b,c[j>>2]|0)|0)){j=p;break f}}while(0);if(!(c[n>>2]&8))break;if(Nq(c[i+28>>2]|0,g,c[Y>>2]&2)|0){j=p;break f}}while(0);if(G){k=c[q>>2]|0;j=0;do{c[p+(j<<2)>>2]=c[k+(j<<2)>>2];j=j+1|0}while((j|0)!=(O|0))}j=c[i+16>>2]|0;do if(j|0){k=c[j>>2]|0;if((k|0)<=-1)break;do{if((k|0)<(O|0))c[p+(k<<2)>>2]=C;j=j+4|0;k=c[j>>2]|0}while((k|0)>-1)}while(0);j=c[i+12>>2]|0;k=N+(j<<3)|0;if((c[k>>2]|0)>=(C|0)){j=c[N+(j<<3)+4>>2]|0;k=c[j>>2]|0;if(!(Lq(O,c[J>>2]|0,p,k)|0)){j=p;break}c[j>>2]=p;if((c[o>>2]|0)!=(c[H>>2]|0)){j=k;break}if(G)d=0;else{h=1;j=k;d=C;break}while(1){c[V+(d<<2)>>2]=c[p+(d<<2)>>2];d=d+1|0;if((d|0)==(O|0)){h=1;j=k;d=C;break f}}}b=c[o>>2]|0;c[f>>2]=b;B=f+4|0;n=c[B>>2]|0;c[B>>2]=p;c[k>>2]=C;c[N+(j<<3)+4>>2]=B;do if((b|0)==(c[H>>2]|0)){if((d|0)==-1)if(G)d=0;else{d=C;h=1;break}else{if(!G)break;if((c[p>>2]|0)>(c[V>>2]|0))break;else d=0}do{c[V+(d<<2)>>2]=c[p+(d<<2)>>2];d=d+1|0}while((d|0)<(O|0));d=C;h=1}while(0);j=n;f=f+8|0}while(0);o=i+40|0;if(!(c[o>>2]|0))break;else{i=i+32|0;p=j}}}r=r+8|0;i=c[r>>2]|0;if(!i){i=j;break}}}c[f>>2]=0;w=A;v=C;B=i;z=y}a=d>>>31}while(0);Pq(R)}}else{c[U>>2]=0;i=f&1;P=f&2;d=c[Y>>2]&4;Q=Hq(0,0)|0;g:do if(Q){j=Jq(Q,0,0,0,32)|0;if(!j){Iq(Q);d=0;a=12;break}c[j+24>>2]=0;c[j+28>>2]=0;k=c[R>>2]|0;if(k){f=Oq(k<<2)|0;if(!f){d=0;h=0;g=0;a=12}else T=9}else{f=0;T=9}h:do if((T|0)==9){a=c[X+28>>2]|0;if(a){h=Oq(a<<3)|0;if(!h){d=0;g=0;a=12;break}}else h=0;O=X+52|0;a=c[O>>2]|0;if(a){g=Oq(a<<2)|0;if(!g){d=0;a=12;break}}else g=0;J=X+8|0;K=X+12|0;L=(V|0)==0;M=(V|0)!=0;N=X+32|0;F=(d|0)!=0;G=(f|0)==0;H=(h|0)==0;I=(g|0)==0;E=(i|0)==0;o=b;n=1;i=-1;s=-1;a=k;i:while(1){if((a|0)>0){d=0;do{c[f+(d<<2)>>2]=-1;if(!L){c[V+(d<<2)>>2]=-1;a=c[R>>2]|0}d=d+1|0}while((d|0)<(a|0))}a=c[O>>2]|0;if((a|0)>0)Yq(g|0,0,a<<2|0)|0;k=c[U>>2]|0;D=n+i|0;a=Zp(U,o,4)|0;if((a|0)<1)if((a|0)<0){d=0;a=1;break h}else a=1;B=o+a|0;C=c[U>>2]|0;d=c[J>>2]|0;i=d+8|0;if(c[i>>2]|0){t=(D|0)!=0;u=(k|0)==95;v=(D|0)==0;x=F&(k|0)==10;w=E&(D|0)<1;r=d;d=0;q=0;p=i;while(1){o=r+20|0;i=c[o>>2]|0;j:do if(i){if(!(x|(w|(i&1|0)==0))){n=q;break}if(i&2|0?(A=c[U>>2]|0,!((A|P|0)==0|F&(A|0)==10)):0){n=q;break}do if(i&16|0){if(u){n=q;break j}if(Fp(k)|0){n=q;break j}i=c[U>>2]|0;if((i|0)==95)break;if(!(Fp(i)|0)){n=q;break j}}while(0);i=c[o>>2]|0;if(i&32){if(u){i=c[U>>2]|0;if((i|0)==95){n=q;break}}else{A=(Fp(k)|0)==0;i=c[U>>2]|0;if(A|(i|0)==95){n=q;break}}if(Fp(i)|0){n=q;break}i=c[o>>2]|0}n=c[U>>2]|0;do if((n|0)!=0&(t&(i&64|0)!=0)){if(u)i=1;else{i=(Fp(k)|0)!=0;n=c[U>>2]|0}if((n|0)==95)if(i){n=q;break j}else break;else if(i^(Fp(n)|0)!=0)break;else{n=q;break j}}while(0);if(!(c[o>>2]&128)){T=52;break}i=c[U>>2]|0;if(v|(i|0)==0){n=q;break}if(u)n=1;else{n=(Fp(k)|0)!=0;i=c[U>>2]|0}if((i|0)==95)if(n){T=52;break}else{n=q;break}else if(n^(Fp(i)|0)!=0){n=q;break}else{T=52;break}}else T=52;while(0);do if((T|0)==52){T=0;if(!q){d=c[r+16>>2]|0;n=c[p>>2]|0;break}n=j+28|0;i=c[n>>2]|0;if(!i){i=Jq(Q,0,0,0,32)|0;if(!i){T=56;break i}c[i+24>>2]=j;c[i+28>>2]=0;A=Jq(Q,0,0,0,c[R>>2]<<2)|0;c[i+20>>2]=A;if(!A){T=63;break i}c[n>>2]=i;j=i}else j=i;c[j>>2]=D;c[j+4>>2]=B;c[j+8>>2]=c[p>>2];c[j+12>>2]=c[r+12>>2];c[j+16>>2]=c[U>>2];if((c[R>>2]|0)>0){n=c[j+20>>2]|0;i=0;do{c[n+(i<<2)>>2]=c[f+(i<<2)>>2];i=i+1|0}while((i|0)<(c[R>>2]|0))}i=c[r+16>>2]|0;if(!i){n=q;break}n=c[i>>2]|0;if((n|0)<=-1){n=q;break}o=c[j+20>>2]|0;do{i=i+4|0;c[o+(n<<2)>>2]=D;n=c[i>>2]|0}while((n|0)>-1);n=q}while(0);p=r+40|0;if(!(c[p>>2]|0))break;else{r=r+32|0;q=n}}if(d){i=c[d>>2]|0;if((i|0)>-1)do{c[f+(i<<2)>>2]=D;d=d+4|0;i=c[d>>2]|0}while((i|0)>-1)}else d=0;if(!n){i=D;q=0;n=B;T=174}else{o=k;p=D;t=B;A=s;z=n;T=82}}else{i=D;q=0;n=B;d=0;T=174}k:while(1){l:do if((T|0)==82){T=0;if((z|0)==(c[K>>2]|0)){if((A|0)>=(p|0)){if(!(M&(A|0)==(p|0))){s=A;k=o;i=p;q=z;n=t;T=174;continue k}if(!(Lq(c[R>>2]|0,c[N>>2]|0,f,V)|0)){s=A;k=o;i=A;q=z;n=t;T=174;continue k}}if(L){s=p;k=o;i=p;q=z;n=t;T=174;continue k}if((c[R>>2]|0)>0)i=0;else{s=p;k=o;i=p;q=z;n=t;T=174;continue k}while(1){c[V+(i<<2)>>2]=c[f+(i<<2)>>2];i=i+1|0;if((i|0)>=(c[R>>2]|0)){s=p;k=o;i=p;q=z;n=t;T=174;continue k}}}r=z+8|0;do if(!(c[r>>2]|0))T=98;else{if(!(c[z+20>>2]&256)){T=98;break}k=c[z+24>>2]|0;Mq(k+1|0,h,c[Y>>2]&-9,X,f,p);y=c[h+(k<<3)>>2]|0;k=(c[h+(k<<3)+4>>2]|0)-y|0;do if(!(Jo(b+y|0,t+-1|0,k)|0)){y=(k|0)==0;i=y&1;n=g+(c[z+12>>2]<<2)|0;if(y?c[n>>2]|0:0){k=o;i=p;n=t;o=25;break}c[n>>2]=i;i=k+-1|0;n=t+i|0;k=c[U>>2]|0;i=p+a+i|0;a=Zp(U,n,4)|0;if((a|0)<1)if((a|0)<0){o=2;break}else a=1;n=n+a|0;o=0}else{k=o;i=p;n=t;o=25}while(0);switch(o&31){case 25:{s=A;q=z;T=174;continue k}case 0:{y=i;break}default:{s=A;q=z;break l}}}while(0);if((T|0)==98){T=0;k=c[U>>2]|0;if(!k){s=A;k=o;i=p;q=z;n=t;T=174;continue k}i=p+a|0;a=Zp(U,t,4)|0;if((a|0)<1)if((a|0)<0){s=A;o=2;q=z;n=t;break}else a=1;y=i;n=t+a|0}if(!(c[r>>2]|0)){s=A;i=y;q=z;T=174;continue k}t=(y|0)!=0;u=(k|0)==95;v=(y|0)==0;x=F&(k|0)==10;w=E&(y|0)<1;q=0;s=z;m:while(1){n:do if((c[s>>2]|0)>>>0<=k>>>0){if((c[s+4>>2]|0)>>>0<k>>>0)break;p=s+20|0;i=c[p>>2]|0;do if(i|0){if(!(x|(w|(i&1|0)==0)))break n;if(i&2|0?(T=c[U>>2]|0,!((T|P|0)==0|F&(T|0)==10)):0)break n;do if(i&16|0){if(u)break n;if(Fp(k)|0)break n;i=c[U>>2]|0;if((i|0)==95)break;if(!(Fp(i)|0))break n}while(0);i=c[p>>2]|0;if(i&32){if(u){i=c[U>>2]|0;if((i|0)==95)break n}else{T=(Fp(k)|0)==0;i=c[U>>2]|0;if(T|(i|0)==95)break n}if(Fp(i)|0)break n;i=c[p>>2]|0}o=c[U>>2]|0;do if((o|0)!=0&(t&(i&64|0)!=0)){if(u)i=1;else{i=(Fp(k)|0)!=0;o=c[U>>2]|0}if((o|0)==95)if(i)break n;else break;else if(i^(Fp(o)|0)!=0)break;else break n}while(0);do if(c[p>>2]&128|0){i=c[U>>2]|0;if(v|(i|0)==0)break n;if(u)o=1;else{o=(Fp(k)|0)!=0;i=c[U>>2]|0}if((i|0)==95)if(o)break;else break n;else if(o^(Fp(i)|0)!=0)break n;else break}while(0);i=c[p>>2]|0;do if(i&4){if(c[Y>>2]&2|0)break;if(!(Ep(k,c[s+24>>2]|0)|0))break n;i=c[p>>2]|0}while(0);do if(i&4|0){if(!(c[Y>>2]&2))break;T=$o(k)|0;i=s+24|0;if(Ep(T,c[i>>2]|0)|0)break;T=_o(k)|0;if(!(Ep(T,c[i>>2]|0)|0))break n}while(0);if(!(c[p>>2]&8))break;if(Nq(c[s+28>>2]|0,k,c[Y>>2]&2)|0)break n}while(0);if(!q){q=c[r>>2]|0;d=c[s+16>>2]|0;break}o=j+28|0;i=c[o>>2]|0;if(!i){i=Jq(Q,0,0,0,32)|0;if(!i){T=148;break m}c[i+24>>2]=j;c[i+28>>2]=0;T=Jq(Q,0,0,0,c[R>>2]<<2)|0;c[i+20>>2]=T;if(!T){T=155;break m}c[o>>2]=i;j=i}else j=i;c[j>>2]=y;c[j+4>>2]=n;c[j+8>>2]=c[r>>2];c[j+12>>2]=c[s+12>>2];c[j+16>>2]=c[U>>2];if((c[R>>2]|0)>0){o=c[j+20>>2]|0;i=0;do{c[o+(i<<2)>>2]=c[f+(i<<2)>>2];i=i+1|0}while((i|0)<(c[R>>2]|0))}i=c[s+16>>2]|0;if(!i)break;o=c[i>>2]|0;if((o|0)<=-1)break;p=c[j+20>>2]|0;do{c[p+(o<<2)>>2]=y;i=i+4|0;o=c[i>>2]|0}while((o|0)>-1)}while(0);r=s+40|0;if(!(c[r>>2]|0)){T=170;break}else s=s+32|0}if((T|0)==148){T=0;Iq(Q);if(!G)Pq(f);if(!H)Pq(h);if(I){s=A;i=y;o=1;q=z;break}Pq(g);s=A;i=y;o=1;q=z;break}else if((T|0)==155){T=0;Iq(Q);if(!G)Pq(f);if(!H)Pq(h);if(I){s=A;i=y;o=1;q=z;break}Pq(g);s=A;i=y;o=1;q=z;break}else if((T|0)==170){T=0;if(!q){s=A;i=y;q=z;T=174;continue k}if(!d){d=0;s=A;i=y;o=0;break}i=c[d>>2]|0;if((i|0)<=-1){s=A;i=y;o=0;break}do{d=d+4|0;c[f+(i<<2)>>2]=y;i=c[d>>2]|0}while((i|0)>-1);s=A;i=y;o=0}}else if((T|0)==174){T=0;o=c[j+24>>2]|0;if(!o){if((s|0)>-1|(c[U>>2]|0)==0){o=27;break}c[U>>2]=C;o=3;n=B;break}q=c[j+8>>2]|0;if(c[q+20>>2]&256|0)c[g+(c[j+12>>2]<<2)>>2]=0;p=c[j>>2]|0;r=c[j+4>>2]|0;c[U>>2]=c[j+16>>2];n=c[R>>2]|0;if((n|0)<=0){j=o;i=p;o=0;n=r;break}j=c[j+20>>2]|0;i=0;do{c[f+(i<<2)>>2]=c[j+(i<<2)>>2];i=i+1|0}while((i|0)!=(n|0));j=o;i=p;o=0;n=r}while(0);switch(o|0){case 2:{d=0;a=1;break h}case 27:{T=184;break i}case 0:{o=k;p=i;t=n;A=s;z=q;T=82;break}case 3:break k;default:{d=0;a=12;break g}}}o=n;n=a;i=D;a=c[R>>2]|0}if((T|0)==56){Iq(Q);if(!G)Pq(f);if(!H)Pq(h);if(I){d=0;a=12;break g}Pq(g);d=0;a=12;break g}else if((T|0)==63){Iq(Q);if(!G)Pq(f);if(!H)Pq(h);if(I){d=0;a=12;break g}Pq(g);d=0;a=12;break g}else if((T|0)==184){d=s;a=s>>>31;break}}while(0);Iq(Q);if(f|0)Pq(f);if(h|0)Pq(h);if(g)Pq(g)}else{d=0;a=12}while(0)}if(!a)Mq(W,e,c[Y>>2]|0,X,V,d);if(V)Pq(V)}l=Z;return a|0}function Lq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if((a|0)>0){f=0;while(1){h=c[d+(f<<2)>>2]|0;g=c[e+(f<<2)>>2]|0;if(!(c[b+(f<<2)>>2]|0)){if((h|0)<(g|0)){f=1;break a}if((h|0)>(g|0)){f=0;break a}}else{if((h|0)>(g|0)){f=1;break a}if((h|0)<(g|0)){f=0;break a}}f=f+1|0;if((f|0)>=(a|0)){f=0;break}}}else f=0;while(0);return f|0}function Mq(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;if((d&8|0)==0&(g|0)>-1){n=c[e+16>>2]|0;l=e+28|0;d=c[l>>2]|0;m=(a|0)!=0;if(m&(d|0)!=0){k=e+48|0;j=0;do{d=c[n+(j*12|0)>>2]|0;if((d|0)==(c[k>>2]|0))i=g;else i=c[f+(d<<2)>>2]|0;h=b+(j<<3)|0;c[h>>2]=i;d=c[n+(j*12|0)+4>>2]|0;if((d|0)==(c[k>>2]|0))e=g;else e=c[f+(d<<2)>>2]|0;d=b+(j<<3)+4|0;c[d>>2]=e;if((i|0)==-1|(e|0)==-1){c[d>>2]=-1;c[h>>2]=-1}j=j+1|0;d=c[l>>2]|0}while(j>>>0<a>>>0&j>>>0<d>>>0);f=d}else f=d;if(m&(f|0)!=0){d=0;do{i=b+(d<<3)+4|0;j=c[n+(d*12|0)+8>>2]|0;if(j|0?(o=c[j>>2]|0,(o|0)>-1):0){k=b+(d<<3)|0;h=0;l=o;e=c[k>>2]|0;do{if(!((e|0)>=(c[b+(l<<3)>>2]|0)?(c[i>>2]|0)<=(c[b+(l<<3)+4>>2]|0):0)){c[i>>2]=-1;c[k>>2]=-1;e=-1}h=h+1|0;l=c[j+(h<<2)>>2]|0}while((l|0)>-1)}d=d+1|0}while(d>>>0<a>>>0&d>>>0<f>>>0)}else d=0}else d=0;if(d>>>0<a>>>0)Yq(b+(d<<3)|0,-1,a-d<<3|0)|0;return}function Nq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;a:do if(!e)d=0;else{f=(d|0)==0;d=e;while(1){if(f){if(Ep(b,d)|0){d=1;break a}}else{e=_o(b)|0;if(Ep(e,c[a>>2]|0)|0){d=1;break a}e=$o(b)|0;if(Ep(e,c[a>>2]|0)|0){d=1;break a}}a=a+4|0;d=c[a>>2]|0;if(!d){d=0;break}}}while(0);return d|0}function Oq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,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;M=l;l=l+16|0;if((l|0)>=(m|0))$(16);q=M;do if(a>>>0<245){p=a>>>0<11?16:a+11&-8;a=p>>>3;u=c[17716]|0;d=u>>>a;if(d&3|0){a=(d&1^1)+a|0;d=70904+(a<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[17720]|0)>>>0)za();b=h+12|0;if((c[b>>2]|0)==(f|0)){c[b>>2]=d;c[e>>2]=h;break}else za()}else c[17716]=u&~(1<<a);while(0);L=a<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>>2]=c[L>>2]|1;L=g;l=M;return L|0}t=c[17718]|0;if(p>>>0>t>>>0){if(d|0){i=2<<a;a=d<<a&(i|0-i);a=(a&0-a)+-1|0;i=a>>>12&16;a=a>>>i;e=a>>>5&8;a=a>>>e;g=a>>>2&4;a=a>>>g;d=a>>>1&2;a=a>>>d;b=a>>>1&1;b=(e|i|g|d|b)+(a>>>b)|0;a=70904+(b<<1<<2)|0;d=a+8|0;g=c[d>>2]|0;i=g+8|0;e=c[i>>2]|0;do if((a|0)!=(e|0)){if(e>>>0<(c[17720]|0)>>>0)za();f=e+12|0;if((c[f>>2]|0)==(g|0)){c[f>>2]=a;c[d>>2]=e;j=u;break}else za()}else{j=u&~(1<<b);c[17716]=j}while(0);h=(b<<3)-p|0;c[g+4>>2]=p|3;e=g+p|0;c[e+4>>2]=h|1;c[e+h>>2]=h;if(t|0){f=c[17721]|0;b=t>>>3;d=70904+(b<<1<<2)|0;b=1<<b;if(j&b){b=d+8|0;a=c[b>>2]|0;if(a>>>0<(c[17720]|0)>>>0)za();else{k=a;n=b}}else{c[17716]=j|b;k=d;n=d+8|0}c[n>>2]=f;c[k+12>>2]=f;c[f+8>>2]=k;c[f+12>>2]=d}c[17718]=h;c[17721]=e;L=i;l=M;return L|0}k=c[17717]|0;if(k){a=(k&0-k)+-1|0;K=a>>>12&16;a=a>>>K;J=a>>>5&8;a=a>>>J;L=a>>>2&4;a=a>>>L;i=a>>>1&2;a=a>>>i;j=a>>>1&1;j=c[71168+((J|K|L|i|j)+(a>>>j)<<2)>>2]|0;a=j;i=j;j=(c[j+4>>2]&-8)-p|0;while(1){b=c[a+16>>2]|0;if(!b){b=c[a+20>>2]|0;if(!b)break}L=(c[b+4>>2]&-8)-p|0;K=L>>>0<j>>>0;a=b;i=K?b:i;j=K?L:j}f=c[17720]|0;if(i>>>0<f>>>0)za();h=i+p|0;if(i>>>0>=h>>>0)za();g=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){o=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0<f>>>0)za();else{c[a>>2]=0;o=b;break}}else{e=c[i+8>>2]|0;if(e>>>0<f>>>0)za();b=e+12|0;if((c[b>>2]|0)!=(i|0))za();a=d+8|0;if((c[a>>2]|0)==(i|0)){c[b>>2]=d;c[a>>2]=e;o=d;break}else za()}while(0);do if(g|0){b=c[i+28>>2]|0;a=71168+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=o;if(!o){c[17717]=k&~(1<<b);break}}else{if(g>>>0<(c[17720]|0)>>>0)za();b=g+16|0;if((c[b>>2]|0)==(i|0))c[b>>2]=o;else c[g+20>>2]=o;if(!o)break}a=c[17720]|0;if(o>>>0<a>>>0)za();c[o+24>>2]=g;b=c[i+16>>2]|0;do if(b|0)if(b>>>0<a>>>0)za();else{c[o+16>>2]=b;c[b+24>>2]=o;break}while(0);b=c[i+20>>2]|0;if(b|0)if(b>>>0<(c[17720]|0)>>>0)za();else{c[o+20>>2]=b;c[b+24>>2]=o;break}}while(0);if(j>>>0<16){L=j+p|0;c[i+4>>2]=L|3;L=i+L+4|0;c[L>>2]=c[L>>2]|1}else{c[i+4>>2]=p|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(t|0){e=c[17721]|0;b=t>>>3;d=70904+(b<<1<<2)|0;b=1<<b;if(u&b){b=d+8|0;a=c[b>>2]|0;if(a>>>0<(c[17720]|0)>>>0)za();else{r=a;s=b}}else{c[17716]=u|b;r=d;s=d+8|0}c[s>>2]=e;c[r+12>>2]=e;c[e+8>>2]=r;c[e+12>>2]=d}c[17718]=j;c[17721]=h}L=i+8|0;l=M;return L|0}}}else if(a>>>0<=4294967231){a=a+11|0;p=a&-8;k=c[17717]|0;if(k){e=0-p|0;a=a>>>8;if(a)if(p>>>0>16777215)j=31;else{s=(a+1048320|0)>>>16&8;E=a<<s;r=(E+520192|0)>>>16&4;E=E<<r;j=(E+245760|0)>>>16&2;j=14-(r|s|j)+(E<<j>>>15)|0;j=p>>>(j+7|0)&1|j<<1}else j=0;a=c[71168+(j<<2)>>2]|0;a:do if(!a){d=0;f=0;E=86}else{f=0;i=a;h=p<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){a=(c[i+4>>2]&-8)-p|0;if(a>>>0<e>>>0)if(!a){a=i;e=0;d=i;E=90;break a}else{f=i;e=a}a=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;d=(a|0)==0|(a|0)==(i|0)?d:a;a=(i|0)==0;if(a){E=86;break}else h=h<<(a&1^1)}}while(0);if((E|0)==86){if((d|0)==0&(f|0)==0){a=2<<j;a=k&(a|0-a);if(!a)break;s=(a&0-a)+-1|0;n=s>>>12&16;s=s>>>n;j=s>>>5&8;s=s>>>j;o=s>>>2&4;s=s>>>o;r=s>>>1&2;s=s>>>r;d=s>>>1&1;d=c[71168+((j|n|o|r|d)+(s>>>d)<<2)>>2]|0}if(!d){j=f;i=e}else{a=f;E=90}}if((E|0)==90)while(1){E=0;s=(c[d+4>>2]&-8)-p|0;f=s>>>0<e>>>0;e=f?s:e;a=f?d:a;f=c[d+16>>2]|0;if(f|0){d=f;E=90;continue}d=c[d+20>>2]|0;if(!d){j=a;i=e;break}else E=90}if((j|0)!=0?i>>>0<((c[17718]|0)-p|0)>>>0:0){f=c[17720]|0;if(j>>>0<f>>>0)za();h=j+p|0;if(j>>>0>=h>>>0)za();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){t=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}if(a>>>0<f>>>0)za();else{c[a>>2]=0;t=b;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)za();b=e+12|0;if((c[b>>2]|0)!=(j|0))za();a=d+8|0;if((c[a>>2]|0)==(j|0)){c[b>>2]=d;c[a>>2]=e;t=d;break}else za()}while(0);do if(g){b=c[j+28>>2]|0;a=71168+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=t;if(!t){u=k&~(1<<b);c[17717]=u;break}}else{if(g>>>0<(c[17720]|0)>>>0)za();b=g+16|0;if((c[b>>2]|0)==(j|0))c[b>>2]=t;else c[g+20>>2]=t;if(!t){u=k;break}}a=c[17720]|0;if(t>>>0<a>>>0)za();c[t+24>>2]=g;b=c[j+16>>2]|0;do if(b|0)if(b>>>0<a>>>0)za();else{c[t+16>>2]=b;c[b+24>>2]=t;break}while(0);b=c[j+20>>2]|0;if(b)if(b>>>0<(c[17720]|0)>>>0)za();else{c[t+20>>2]=b;c[b+24>>2]=t;u=k;break}else u=k}else u=k;while(0);do if(i>>>0>=16){c[j+4>>2]=p|3;c[h+4>>2]=i|1;c[h+i>>2]=i;b=i>>>3;if(i>>>0<256){d=70904+(b<<1<<2)|0;a=c[17716]|0;b=1<<b;if(a&b){b=d+8|0;a=c[b>>2]|0;if(a>>>0<(c[17720]|0)>>>0)za();else{C=a;D=b}}else{c[17716]=a|b;C=d;D=d+8|0}c[D>>2]=h;c[C+12>>2]=h;c[h+8>>2]=C;c[h+12>>2]=d;break}b=i>>>8;if(b)if(i>>>0>16777215)b=31;else{K=(b+1048320|0)>>>16&8;L=b<<K;J=(L+520192|0)>>>16&4;L=L<<J;b=(L+245760|0)>>>16&2;b=14-(J|K|b)+(L<<b>>>15)|0;b=i>>>(b+7|0)&1|b<<1}else b=0;d=71168+(b<<2)|0;c[h+28>>2]=b;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<<b;if(!(u&a)){c[17717]=u|a;c[d>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}a=i<<((b|0)==31?0:25-(b>>>1)|0);e=c[d>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(i|0)){E=148;break}d=e+16+(a>>>31<<2)|0;b=c[d>>2]|0;if(!b){E=145;break}else{a=a<<1;e=b}}if((E|0)==145)if(d>>>0<(c[17720]|0)>>>0)za();else{c[d>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){b=e+8|0;a=c[b>>2]|0;L=c[17720]|0;if(a>>>0>=L>>>0&e>>>0>=L>>>0){c[a+12>>2]=h;c[b>>2]=h;c[h+8>>2]=a;c[h+12>>2]=e;c[h+24>>2]=0;break}else za()}}else{L=i+p|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;l=M;return L|0}}}else p=-1;while(0);d=c[17718]|0;if(d>>>0>=p>>>0){b=d-p|0;a=c[17721]|0;if(b>>>0>15){L=a+p|0;c[17721]=L;c[17718]=b;c[L+4>>2]=b|1;c[L+b>>2]=b;c[a+4>>2]=p|3}else{c[17718]=0;c[17721]=0;c[a+4>>2]=d|3;L=a+d+4|0;c[L>>2]=c[L>>2]|1}L=a+8|0;l=M;return L|0}i=c[17719]|0;if(i>>>0>p>>>0){J=i-p|0;c[17719]=J;L=c[17722]|0;K=L+p|0;c[17722]=K;c[K+4>>2]=J|1;c[L+4>>2]=p|3;L=L+8|0;l=M;return L|0}if(!(c[17834]|0)){c[17836]=4096;c[17835]=4096;c[17837]=-1;c[17838]=-1;c[17839]=0;c[17827]=0;a=q&-16^1431655768;c[q>>2]=a;c[17834]=a;a=4096}else a=c[17836]|0;j=p+48|0;k=p+47|0;h=a+k|0;f=0-a|0;n=h&f;if(n>>>0<=p>>>0){L=0;l=M;return L|0}a=c[17826]|0;if(a|0?(C=c[17824]|0,D=C+n|0,D>>>0<=C>>>0|D>>>0>a>>>0):0){L=0;l=M;return L|0}b:do if(!(c[17827]&4)){d=c[17722]|0;c:do if(d){e=71312;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(v=e+4|0,(a+(c[v>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){E=172;break c}else e=a}d=h-i&f;if(d>>>0<2147483647){a=lr(d|0)|0;if((a|0)==((c[e>>2]|0)+(c[v>>2]|0)|0)){if((a|0)!=(-1|0)){h=d;g=a;E=190;break b}}else{b=d;E=180}}}else E=172;while(0);do if(((E|0)==172?(g=lr(0)|0,(g|0)!=(-1|0)):0)?(b=g,w=c[17835]|0,x=w+-1|0,b=((x&b|0)==0?0:(x+b&0-w)-b|0)+n|0,w=c[17824]|0,x=b+w|0,b>>>0>p>>>0&b>>>0<2147483647):0){D=c[17826]|0;if(D|0?x>>>0<=w>>>0|x>>>0>D>>>0:0)break;a=lr(b|0)|0;if((a|0)==(g|0)){h=b;E=190;break b}else E=180}while(0);d:do if((E|0)==180){d=0-b|0;do if(j>>>0>b>>>0&(b>>>0<2147483647&(a|0)!=(-1|0))?(y=c[17836]|0,y=k-b+y&0-y,y>>>0<2147483647):0)if((lr(y|0)|0)==(-1|0)){lr(d|0)|0;break d}else{b=y+b|0;break}while(0);if((a|0)!=(-1|0)){h=b;g=a;E=190;break b}}while(0);c[17827]=c[17827]|4;E=187}else E=187;while(0);if((((E|0)==187?n>>>0<2147483647:0)?(B=lr(n|0)|0,z=lr(0)|0,B>>>0<z>>>0&((B|0)!=(-1|0)&(z|0)!=(-1|0))):0)?(A=z-B|0,A>>>0>(p+40|0)>>>0):0){h=A;g=B;E=190}if((E|0)==190){b=(c[17824]|0)+h|0;c[17824]=b;if(b>>>0>(c[17825]|0)>>>0)c[17825]=b;k=c[17722]|0;do if(k){b=71312;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){E=200;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((E|0)==200?(c[b+12>>2]&8|0)==0:0)?k>>>0<g>>>0&k>>>0>=a>>>0:0){c[d>>2]=e+h;L=k+8|0;L=(L&7|0)==0?0:0-L&7;K=k+L|0;L=h-L+(c[17719]|0)|0;c[17722]=K;c[17719]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[17723]=c[17838];break}b=c[17720]|0;if(g>>>0<b>>>0){c[17720]=g;i=g}else i=b;a=g+h|0;b=71312;while(1){if((c[b>>2]|0)==(a|0)){E=208;break}b=c[b+8>>2]|0;if(!b){a=71312;break}}if((E|0)==208)if(!(c[b+12>>2]&8)){c[b>>2]=g;o=b+4|0;c[o>>2]=(c[o>>2]|0)+h;o=g+8|0;o=g+((o&7|0)==0?0:0-o&7)|0;b=a+8|0;b=a+((b&7|0)==0?0:0-b&7)|0;n=o+p|0;j=b-o-p|0;c[o+4>>2]=p|3;do if((b|0)!=(k|0)){if((b|0)==(c[17721]|0)){L=(c[17718]|0)+j|0;c[17718]=L;c[17721]=n;c[n+4>>2]=L|1;c[n+L>>2]=L;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;f=a>>>3;e:do if(a>>>0>=256){g=c[b+24>>2]|0;e=c[b+12>>2]|0;do if((e|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){J=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}if(d>>>0<i>>>0)za();else{c[d>>2]=0;J=a;break}}else{f=c[b+8>>2]|0;if(f>>>0<i>>>0)za();a=f+12|0;if((c[a>>2]|0)!=(b|0))za();d=e+8|0;if((c[d>>2]|0)==(b|0)){c[a>>2]=e;c[d>>2]=f;J=e;break}else za()}while(0);if(!g)break;a=c[b+28>>2]|0;d=71168+(a<<2)|0;do if((b|0)!=(c[d>>2]|0)){if(g>>>0<(c[17720]|0)>>>0)za();a=g+16|0;if((c[a>>2]|0)==(b|0))c[a>>2]=J;else c[g+20>>2]=J;if(!J)break e}else{c[d>>2]=J;if(J|0)break;c[17717]=c[17717]&~(1<<a);break e}while(0);e=c[17720]|0;if(J>>>0<e>>>0)za();c[J+24>>2]=g;a=b+16|0;d=c[a>>2]|0;do if(d|0)if(d>>>0<e>>>0)za();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);a=c[a+4>>2]|0;if(!a)break;if(a>>>0<(c[17720]|0)>>>0)za();else{c[J+20>>2]=a;c[a+24>>2]=J;break}}else{d=c[b+8>>2]|0;e=c[b+12>>2]|0;a=70904+(f<<1<<2)|0;do if((d|0)!=(a|0)){if(d>>>0<i>>>0)za();if((c[d+12>>2]|0)==(b|0))break;za()}while(0);if((e|0)==(d|0)){c[17716]=c[17716]&~(1<<f);break}do if((e|0)==(a|0))G=e+8|0;else{if(e>>>0<i>>>0)za();a=e+8|0;if((c[a>>2]|0)==(b|0)){G=a;break}za()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);b=b+h|0;f=h+j|0}else f=j;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[n+4>>2]=f|1;c[n+f>>2]=f;b=f>>>3;if(f>>>0<256){d=70904+(b<<1<<2)|0;a=c[17716]|0;b=1<<b;do if(!(a&b)){c[17716]=a|b;K=d;L=d+8|0}else{b=d+8|0;a=c[b>>2]|0;if(a>>>0>=(c[17720]|0)>>>0){K=a;L=b;break}za()}while(0);c[L>>2]=n;c[K+12>>2]=n;c[n+8>>2]=K;c[n+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}K=(b+1048320|0)>>>16&8;L=b<<K;J=(L+520192|0)>>>16&4;L=L<<J;b=(L+245760|0)>>>16&2;b=14-(J|K|b)+(L<<b>>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=71168+(b<<2)|0;c[n+28>>2]=b;a=n+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[17717]|0;d=1<<b;if(!(a&d)){c[17717]=a|d;c[e>>2]=n;c[n+24>>2]=e;c[n+12>>2]=n;c[n+8>>2]=n;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(f|0)){E=278;break}d=e+16+(a>>>31<<2)|0;b=c[d>>2]|0;if(!b){E=275;break}else{a=a<<1;e=b}}if((E|0)==275)if(d>>>0<(c[17720]|0)>>>0)za();else{c[d>>2]=n;c[n+24>>2]=e;c[n+12>>2]=n;c[n+8>>2]=n;break}else if((E|0)==278){b=e+8|0;a=c[b>>2]|0;L=c[17720]|0;if(a>>>0>=L>>>0&e>>>0>=L>>>0){c[a+12>>2]=n;c[b>>2]=n;c[n+8>>2]=a;c[n+12>>2]=e;c[n+24>>2]=0;break}else za()}}else{L=(c[17719]|0)+j|0;c[17719]=L;c[17722]=n;c[n+4>>2]=L|1}while(0);L=o+8|0;l=M;return L|0}else a=71312;while(1){b=c[a>>2]|0;if(b>>>0<=k>>>0?(F=b+(c[a+4>>2]|0)|0,F>>>0>k>>>0):0)break;a=c[a+8>>2]|0}f=F+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=k+16|0;a=a>>>0<f>>>0?k:a;b=a+8|0;d=g+8|0;d=(d&7|0)==0?0:0-d&7;L=g+d|0;d=h+-40-d|0;c[17722]=L;c[17719]=d;c[L+4>>2]=d|1;c[L+d+4>>2]=40;c[17723]=c[17838];d=a+4|0;c[d>>2]=27;c[b>>2]=c[17828];c[b+4>>2]=c[17829];c[b+8>>2]=c[17830];c[b+12>>2]=c[17831];c[17828]=g;c[17829]=h;c[17831]=0;c[17830]=b;b=a+24|0;do{b=b+4|0;c[b>>2]=7}while((b+4|0)>>>0<F>>>0);if((a|0)!=(k|0)){g=a-k|0;c[d>>2]=c[d>>2]&-2;c[k+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=70904+(b<<1<<2)|0;a=c[17716]|0;b=1<<b;if(a&b){b=d+8|0;a=c[b>>2]|0;if(a>>>0<(c[17720]|0)>>>0)za();else{H=a;I=b}}else{c[17716]=a|b;H=d;I=d+8|0}c[I>>2]=k;c[H+12>>2]=k;c[k+8>>2]=H;c[k+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{K=(b+1048320|0)>>>16&8;L=b<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=71168+(d<<2)|0;c[k+28>>2]=d;c[k+20>>2]=0;c[f>>2]=0;b=c[17717]|0;a=1<<d;if(!(b&a)){c[17717]=b|a;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(g|0)){E=304;break}d=e+16+(a>>>31<<2)|0;b=c[d>>2]|0;if(!b){E=301;break}else{a=a<<1;e=b}}if((E|0)==301)if(d>>>0<(c[17720]|0)>>>0)za();else{c[d>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((E|0)==304){b=e+8|0;a=c[b>>2]|0;L=c[17720]|0;if(a>>>0>=L>>>0&e>>>0>=L>>>0){c[a+12>>2]=k;c[b>>2]=k;c[k+8>>2]=a;c[k+12>>2]=e;c[k+24>>2]=0;break}else za()}}}else{L=c[17720]|0;if((L|0)==0|g>>>0<L>>>0)c[17720]=g;c[17828]=g;c[17829]=h;c[17831]=0;c[17725]=c[17834];c[17724]=-1;b=0;do{L=70904+(b<<1<<2)|0;c[L+12>>2]=L;c[L+8>>2]=L;b=b+1|0}while((b|0)!=32);L=g+8|0;L=(L&7|0)==0?0:0-L&7;K=g+L|0;L=h+-40-L|0;c[17722]=K;c[17719]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[17723]=c[17838]}while(0);b=c[17719]|0;if(b>>>0>p>>>0){J=b-p|0;c[17719]=J;L=c[17722]|0;K=L+p|0;c[17722]=K;c[K+4>>2]=J|1;c[L+4>>2]=p|3;L=L+8|0;l=M;return L|0}}c[(zo()|0)>>2]=12;L=0;l=M;return L|0}function Pq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;d=a+-8|0;h=c[17720]|0;if(d>>>0<h>>>0)za();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)za();e=a&-8;n=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h>>>0)za();if((k|0)==(c[17721]|0)){a=n+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;f=j;break}c[17718]=j;c[a>>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=70904+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<h>>>0)za();if((c[b+12>>2]|0)!=(k|0))za()}if((d|0)==(b|0)){c[17716]=c[17716]&~(1<<e);q=k;f=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)za();a=d+8|0;if((c[a>>2]|0)==(k|0))g=a;else za()}else g=d+8|0;c[b+12>>2]=d;c[g>>2]=b;q=k;f=j;break}g=c[k+24>>2]|0;d=c[k+12>>2]|0;do if((d|0)==(k|0)){d=k+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){i=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<h>>>0)za();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0<h>>>0)za();a=e+12|0;if((c[a>>2]|0)!=(k|0))za();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>>2]=d;c[b>>2]=e;i=d;break}else za()}while(0);if(g){a=c[k+28>>2]|0;b=71168+(a<<2)|0;if((k|0)==(c[b>>2]|0)){c[b>>2]=i;if(!i){c[17717]=c[17717]&~(1<<a);q=k;f=j;break}}else{if(g>>>0<(c[17720]|0)>>>0)za();a=g+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[g+20>>2]=i;if(!i){q=k;f=j;break}}d=c[17720]|0;if(i>>>0<d>>>0)za();c[i+24>>2]=g;a=k+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)za();else{c[i+16>>2]=b;c[b+24>>2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[17720]|0)>>>0)za();else{c[i+20>>2]=a;c[a+24>>2]=i;q=k;f=j;break}else{q=k;f=j}}else{q=k;f=j}}else{q=d;f=e}while(0);if(q>>>0>=n>>>0)za();a=n+4|0;b=c[a>>2]|0;if(!(b&1))za();if(!(b&2)){if((n|0)==(c[17722]|0)){p=(c[17719]|0)+f|0;c[17719]=p;c[17722]=q;c[q+4>>2]=p|1;if((q|0)!=(c[17721]|0))return;c[17721]=0;c[17718]=0;return}if((n|0)==(c[17721]|0)){p=(c[17718]|0)+f|0;c[17718]=p;c[17721]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}f=(b&-8)+f|0;e=b>>>3;do if(b>>>0>=256){g=c[n+24>>2]|0;a=c[n+12>>2]|0;do if((a|0)==(n|0)){d=n+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){m=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[17720]|0)>>>0)za();else{c[b>>2]=0;m=a;break}}else{b=c[n+8>>2]|0;if(b>>>0<(c[17720]|0)>>>0)za();d=b+12|0;if((c[d>>2]|0)!=(n|0))za();e=a+8|0;if((c[e>>2]|0)==(n|0)){c[d>>2]=a;c[e>>2]=b;m=a;break}else za()}while(0);if(g|0){a=c[n+28>>2]|0;b=71168+(a<<2)|0;if((n|0)==(c[b>>2]|0)){c[b>>2]=m;if(!m){c[17717]=c[17717]&~(1<<a);break}}else{if(g>>>0<(c[17720]|0)>>>0)za();a=g+16|0;if((c[a>>2]|0)==(n|0))c[a>>2]=m;else c[g+20>>2]=m;if(!m)break}d=c[17720]|0;if(m>>>0<d>>>0)za();c[m+24>>2]=g;a=n+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)za();else{c[m+16>>2]=b;c[b+24>>2]=m;break}while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[17720]|0)>>>0)za();else{c[m+20>>2]=a;c[a+24>>2]=m;break}}}else{b=c[n+8>>2]|0;d=c[n+12>>2]|0;a=70904+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(c[17720]|0)>>>0)za();if((c[b+12>>2]|0)!=(n|0))za()}if((d|0)==(b|0)){c[17716]=c[17716]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[17720]|0)>>>0)za();a=d+8|0;if((c[a>>2]|0)==(n|0))l=a;else za()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0);c[q+4>>2]=f|1;c[q+f>>2]=f;if((q|0)==(c[17721]|0)){c[17718]=f;return}}else{c[a>>2]=b&-2;c[q+4>>2]=f|1;c[q+f>>2]=f}a=f>>>3;if(f>>>0<256){d=70904+(a<<1<<2)|0;b=c[17716]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[17720]|0)>>>0)za();else{o=b;p=a}}else{c[17716]=b|a;o=d;p=d+8|0}c[p>>2]=q;c[o+12>>2]=q;c[q+8>>2]=o;c[q+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;a=(p+245760|0)>>>16&2;a=14-(n|o|a)+(p<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=71168+(a<<2)|0;c[q+28>>2]=a;c[q+20>>2]=0;c[q+16>>2]=0;b=c[17717]|0;d=1<<a;do if(b&d){b=f<<((a|0)==31?0:25-(a>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(f|0)){a=130;break}d=e+16+(b>>>31<<2)|0;a=c[d>>2]|0;if(!a){a=127;break}else{b=b<<1;e=a}}if((a|0)==127)if(d>>>0<(c[17720]|0)>>>0)za();else{c[d>>2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((a|0)==130){a=e+8|0;b=c[a>>2]|0;p=c[17720]|0;if(b>>>0>=p>>>0&e>>>0>=p>>>0){c[b+12>>2]=q;c[a>>2]=q;c[q+8>>2]=b;c[q+12>>2]=e;c[q+24>>2]=0;break}else za()}}else{c[17717]=b|d;c[e>>2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[17724]|0)+-1|0;c[17724]=q;if(!q)a=71320;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[17724]=-1;return}function Qq(a,b){a=a|0;b=b|0;var d=0;if(a){d=S(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=Oq(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;Yq(a|0,0,d|0)|0;return a|0}function Rq(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=Oq(b)|0;return b|0}if(b>>>0>4294967231){c[(zo()|0)>>2]=12;b=0;return b|0}d=Sq(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=Oq(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;cr(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Pq(a);b=d;return b|0}function Sq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d|0;i=c[17720]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k>>>0))za();f=c[k+4>>2]|0;if(!(f&1))za();if(!e){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[17836]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;o=m+d+4|0;c[o>>2]=c[o>>2]|1;Tq(m,d);return a|0}if((k|0)==(c[17722]|0)){d=(c[17719]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[17722]=l;c[17719]=m;return a|0}if((k|0)==(c[17721]|0)){e=(c[17718]|0)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;o=m+4|0;c[o>>2]=c[o>>2]&-2}else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[17718]=d;c[17721]=e;return a|0}if(f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>>>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){f=k+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){j=0;break}else e=f}while(1){f=d+20|0;g=c[f>>2]|0;if(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>0)za();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)za();d=g+12|0;if((c[d>>2]|0)!=(k|0))za();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=f;break}else za()}while(0);if(h|0){d=c[k+28>>2]|0;e=71168+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>>2]=j;if(!j){c[17717]=c[17717]&~(1<<d);break}}else{if(h>>>0<(c[17720]|0)>>>0)za();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[17720]|0;if(j>>>0<f>>>0)za();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>>0<f>>>0)za();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[17720]|0)>>>0)za();else{c[j+20>>2]=d;c[d+24>>2]=j;break}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=70904+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>>0<i>>>0)za();if((c[e+12>>2]|0)!=(k|0))za()}if((f|0)==(e|0)){c[17716]=c[17716]&~(1<<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)za();d=f+8|0;if((c[d>>2]|0)==(k|0))h=d;else za()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2]=l|o&1|2;o=a+l+4|0;c[o>>2]=c[o>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|3;o=l+m+4|0;c[o>>2]=c[o>>2]|1;Tq(l,m);return a|0}return 0}function Tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){g=c[a>>2]|0;if(!(d&3))return;l=a+(0-g)|0;k=g+b|0;i=c[17720]|0;if(l>>>0<i>>>0)za();if((l|0)==(c[17721]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;f=k;break}c[17718]=k;c[a>>2]=d&-2;c[l+4>>2]=k|1;c[l+k>>2]=k;return}e=g>>>3;if(g>>>0<256){d=c[l+8>>2]|0;b=c[l+12>>2]|0;a=70904+(e<<1<<2)|0;if((d|0)!=(a|0)){if(d>>>0<i>>>0)za();if((c[d+12>>2]|0)!=(l|0))za()}if((b|0)==(d|0)){c[17716]=c[17716]&~(1<<e);r=l;f=k;break}if((b|0)!=(a|0)){if(b>>>0<i>>>0)za();a=b+8|0;if((c[a>>2]|0)==(l|0))h=a;else za()}else h=b+8|0;c[d+12>>2]=b;c[h>>2]=d;r=l;f=k;break}g=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){b=l+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){j=0;break}else d=b}while(1){b=a+20|0;e=c[b>>2]|0;if(e|0){a=e;d=b;continue}b=a+16|0;e=c[b>>2]|0;if(!e)break;else{a=e;d=b}}if(d>>>0<i>>>0)za();else{c[d>>2]=0;j=a;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)za();a=e+12|0;if((c[a>>2]|0)!=(l|0))za();d=b+8|0;if((c[d>>2]|0)==(l|0)){c[a>>2]=b;c[d>>2]=e;j=b;break}else za()}while(0);if(g){a=c[l+28>>2]|0;d=71168+(a<<2)|0;if((l|0)==(c[d>>2]|0)){c[d>>2]=j;if(!j){c[17717]=c[17717]&~(1<<a);r=l;f=k;break}}else{if(g>>>0<(c[17720]|0)>>>0)za();a=g+16|0;if((c[a>>2]|0)==(l|0))c[a>>2]=j;else c[g+20>>2]=j;if(!j){r=l;f=k;break}}b=c[17720]|0;if(j>>>0<b>>>0)za();c[j+24>>2]=g;a=l+16|0;d=c[a>>2]|0;do if(d|0)if(d>>>0<b>>>0)za();else{c[j+16>>2]=d;c[d+24>>2]=j;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[17720]|0)>>>0)za();else{c[j+20>>2]=a;c[a+24>>2]=j;r=l;f=k;break}else{r=l;f=k}}else{r=l;f=k}}else{r=a;f=b}while(0);h=c[17720]|0;if(o>>>0<h>>>0)za();a=o+4|0;d=c[a>>2]|0;if(!(d&2)){if((o|0)==(c[17722]|0)){q=(c[17719]|0)+f|0;c[17719]=q;c[17722]=r;c[r+4>>2]=q|1;if((r|0)!=(c[17721]|0))return;c[17721]=0;c[17718]=0;return}if((o|0)==(c[17721]|0)){q=(c[17718]|0)+f|0;c[17718]=q;c[17721]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}f=(d&-8)+f|0;e=d>>>3;do if(d>>>0>=256){g=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){b=o+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}else d=b}while(1){b=a+20|0;e=c[b>>2]|0;if(e|0){a=e;d=b;continue}b=a+16|0;e=c[b>>2]|0;if(!e)break;else{a=e;d=b}}if(d>>>0<h>>>0)za();else{c[d>>2]=0;n=a;break}}else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)za();a=e+12|0;if((c[a>>2]|0)!=(o|0))za();d=b+8|0;if((c[d>>2]|0)==(o|0)){c[a>>2]=b;c[d>>2]=e;n=b;break}else za()}while(0);if(g|0){a=c[o+28>>2]|0;d=71168+(a<<2)|0;if((o|0)==(c[d>>2]|0)){c[d>>2]=n;if(!n){c[17717]=c[17717]&~(1<<a);break}}else{if(g>>>0<(c[17720]|0)>>>0)za();a=g+16|0;if((c[a>>2]|0)==(o|0))c[a>>2]=n;else c[g+20>>2]=n;if(!n)break}b=c[17720]|0;if(n>>>0<b>>>0)za();c[n+24>>2]=g;a=o+16|0;d=c[a>>2]|0;do if(d|0)if(d>>>0<b>>>0)za();else{c[n+16>>2]=d;c[d+24>>2]=n;break}while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[17720]|0)>>>0)za();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}}else{d=c[o+8>>2]|0;b=c[o+12>>2]|0;a=70904+(e<<1<<2)|0;if((d|0)!=(a|0)){if(d>>>0<h>>>0)za();if((c[d+12>>2]|0)!=(o|0))za()}if((b|0)==(d|0)){c[17716]=c[17716]&~(1<<e);break}if((b|0)!=(a|0)){if(b>>>0<h>>>0)za();a=b+8|0;if((c[a>>2]|0)==(o|0))m=a;else za()}else m=b+8|0;c[d+12>>2]=b;c[m>>2]=d}while(0);c[r+4>>2]=f|1;c[r+f>>2]=f;if((r|0)==(c[17721]|0)){c[17718]=f;return}}else{c[a>>2]=d&-2;c[r+4>>2]=f|1;c[r+f>>2]=f}a=f>>>3;if(f>>>0<256){b=70904+(a<<1<<2)|0;d=c[17716]|0;a=1<<a;if(d&a){a=b+8|0;d=c[a>>2]|0;if(d>>>0<(c[17720]|0)>>>0)za();else{p=d;q=a}}else{c[17716]=d|a;p=b;q=b+8|0}c[q>>2]=r;c[p+12>>2]=r;c[r+8>>2]=p;c[r+12>>2]=b;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{p=(a+1048320|0)>>>16&8;q=a<<p;o=(q+520192|0)>>>16&4;q=q<<o;a=(q+245760|0)>>>16&2;a=14-(o|p|a)+(q<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=71168+(a<<2)|0;c[r+28>>2]=a;c[r+20>>2]=0;c[r+16>>2]=0;d=c[17717]|0;b=1<<a;if(!(d&b)){c[17717]=d|b;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>>2]=r;return}d=f<<((a|0)==31?0:25-(a>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(f|0)){a=127;break}b=e+16+(d>>>31<<2)|0;a=c[b>>2]|0;if(!a){a=124;break}else{d=d<<1;e=a}}if((a|0)==124){if(b>>>0<(c[17720]|0)>>>0)za();c[b>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((a|0)==127){a=e+8|0;d=c[a>>2]|0;q=c[17720]|0;if(!(d>>>0>=q>>>0&e>>>0>=q>>>0))za();c[d+12>>2]=r;c[a>>2]=r;c[r+8>>2]=d;c[r+12>>2]=e;c[r+24>>2]=0;return}}function Uq(a,b){a=a|0;b=b|0;if(a>>>0<9){b=Oq(b)|0;return b|0}else{b=Vq(a,b)|0;return b|0}return 0}function Vq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;a=a>>>0<16?16:a;if(a+-1&a){d=16;while(1)if(d>>>0<a>>>0)d=d<<1;else{a=d;break}}if((-64-a|0)>>>0<=b>>>0){c[(zo()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=Oq(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(d&a+-1){i=(d+a+-1&0-a)+-8|0;e=f;a=(i-e|0)>>>0>15?i:i+a|0;e=a-e|0;d=d+-4|0;i=c[d>>2]|0;b=(i&-8)-e|0;if(!(i&3)){c[a>>2]=(c[f>>2]|0)+e;c[a+4>>2]=b;break}else{i=a+4|0;c[i>>2]=b|c[i>>2]&1|2;b=a+b+4|0;c[b>>2]=c[b>>2]|1;c[d>>2]=e|c[d>>2]&1|2;c[i>>2]=c[i>>2]|1;Tq(f,e);break}}else a=f;while(0);d=a+4|0;b=c[d>>2]|0;if(b&3|0?(h=b&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;h=a+g|0;c[d>>2]=g|b&1|2;c[h+4>>2]=i|3;g=h+i+4|0;c[g>>2]=c[g>>2]|1;Tq(h,i)}i=a+8|0;return i|0}function Wq(){}function Xq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (D=d,a-c>>>0|0)|0}function Yq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function Zq(a){a=a|0;return 0}function _q(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (D=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function $q(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function ar(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (D=n,f)|0}else{if(!g){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (D=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(V(i|0)|0)-(V(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (D=n,f)|0}g=h-1|0;if(g&h|0){i=(V(h|0)|0)+33-(V(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (D=o,p)|0}else{p=$q(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (D=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (D=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (D=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>(($q(i|0)|0)>>>0);return (D=o,p)|0}g=(V(i|0)|0)-(V(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (D=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (D=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=_q(m|0,l|0,-1,-1)|0;d=D;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Xq(k|0,d|0,e|0,n|0)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Xq(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=D;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (D=o,p)|0}function br(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=Xq(j^a|0,i^b|0,j|0,i|0)|0;g=D;a=f^j;b=e^i;return Xq((ar(h,g,Xq(f^c|0,e^d|0,f|0,e|0)|0,D,0)|0)^a|0,D^b|0,a|0,b|0)|0}function cr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Sa(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function dr(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 cr(b,c,d)|0;return b|0}function er(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function fr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}D=(b|0)<0?-1:0;return b>>c-32|0}function gr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}D=0;return b>>>c-32|0}function hr(a){a=a|0;return 0}function ir(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ar(a,b,c,d,0)|0}function jr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=S(e,f)|0;d=a>>>16;a=(c>>>16)+(S(e,d)|0)|0;e=b>>>16;b=S(e,f)|0;return (D=(a>>>16)+(S(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function kr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=jr(e,f)|0;a=D;return (D=(S(b,f)|0)+(S(d,e)|0)+a|a&0,c|0|0)|0}function lr(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){_()|0;Ia(12);return -1}c[i>>2]=a;if((a|0)>(Z()|0)?(Y()|0)==0:0){Ia(12);c[i>>2]=b;return -1}return b|0}function mr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}D=a<<c-32;return 0}function nr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;ar(a,b,d,e,f)|0;l=g;return (D=c[f+4>>2]|0,c[f>>2]|0)|0}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,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=Xq(h^a|0,g^b|0,h|0,g|0)|0;b=D;ar(a,b,Xq(k^d|0,j^e|0,k|0,j|0)|0,D,i)|0;e=Xq(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=D;l=f;return (D=d,e)|0}function pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb[a&63](b|0,c|0,d|0)|0}function qr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;qb[a&15](b|0,c|0,d|0,e|0,f|0)}function rr(a,b){a=a|0;b=b|0;rb[a&7](b|0)}function sr(a,b,c){a=a|0;b=b|0;c=c|0;sb[a&7](b|0,c|0)}function tr(a,b){a=a|0;b=b|0;return tb[a&15](b|0)|0}function ur(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ub[a&7](b|0,c|0,d|0)}function vr(a){a=a|0;vb[a&3]()}function wr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return wb[a&3](b|0,c|0,d|0,e|0)|0}function xr(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;xb[a&1](b|0,c|0,d|0,e|0,f|0,g|0)}function yr(a,b,c){a=a|0;b=b|0;c=c|0;return yb[a&7](b|0,c|0)|0}function zr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;zb[a&1](b|0,c|0,d|0,e|0)}function Ar(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function Br(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(1)}function Cr(a){a=a|0;ca(2)}function Dr(a,b){a=a|0;b=b|0;da(3)}function Er(a){a=a|0;ea(4);return 0}function Fr(a,b,c){a=a|0;b=b|0;c=c|0;fa(5)}function Gr(){ga(6)}function Hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ha(7);return 0}function Ir(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ia(8)}function Jr(a,b){a=a|0;b=b|0;ja(9);return 0}function Kr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(10)}
+
+// EMSCRIPTEN_END_FUNCS
+var pb=[Ar,Yh,Zh,_h,$h,Gi,Hi,Ii,Ji,Li,Ti,_i,ej,hj,ij,jj,Bm,Cm,Dm,Em,Gm,Gg,Nm,wo,xo,Bo,Ap,Ke,Rp,gi,hi,ri,Ui,$i,fj,Do,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar,Ar];var qb=[Br,ki,fi,ei,di,mi,mj,nj,lj,Br,Br,Br,Br,Br,Br,Br];var rb=[Cr,pi,Ri,Yi,cj,Xj,sq,Cr];var sb=[Dr,oi,Qi,Xi,aj,bj,gj,Mm];var tb=[Er,qi,Fi,Ki,Si,Zi,dj,Am,Fm,Jg,vo,Er,Er,Er,Er,Er];var ub=[Fr,Jm,ni,$m,qn,zn,to,Fr];var vb=[Gr,ii,ji,eo];var wb=[Hr,Om,jm,Dn];var xb=[Ir,li];var yb=[Jr,Ei,Mi,zm,Hm,Mh,Pi,Jr];var zb=[Kr,og];return{_GNUNET_CRYPTO_rsa_signature_encode:$c,_GNUNET_CRYPTO_rsa_private_key_free:Tc,_GNUNET_CRYPTO_rsa_verify:kd,_bitshift64Shl:mr,_GNUNET_CRYPTO_hash_context_start:yc,_bitshift64Lshr:gr,_TALER_setup_fresh_coin:uo,_GNUNET_STRINGS_string_to_data:od,_GNUNET_CRYPTO_rsa_private_key_get_public:Wc,_memset:Yq,_GNUNET_CRYPTO_eddsa_verify:tc,_TALER_amount_normalize:po,_GNUNET_CRYPTO_hash_context_finish:Ac,_GNUNET_CRYPTO_symmetric_encrypt:dc,_TALER_WR_get_fraction:Nb,_GNUNET_CRYPTO_hash_context_read:zc,_TALER_amount_cmp:oo,_GNUNET_CRYPTO_rsa_blind:ad,_TALER_WR_get_currency:Ob,_GNUNET_CRYPTO_random_block:Rc,_fflush:$p,_GNUNET_CRYPTO_hash_create_random:xc,_GNUNET_CRYPTO_rsa_unblind:jd,_bitshift64Ashr:fr,_TALER_WRALL_get_amount:Lb,_sbrk:lr,_GNUNET_CRYPTO_eddsa_key_create:qc,_TALER_WRALL_eddsa_public_key_from_private:Hb,_llvm_bswap_i32:er,___muldi3:kr,_GNUNET_CRYPTO_ecc_ecdh:uc,_memalign:Uq,_GNUNET_CRYPTO_rsa_private_key_decode:Vc,_GNUNET_CRYPTO_symmetric_decrypt:gc,_GNUNET_CRYPTO_rsa_signature_free:hd,___divdi3:br,_TALER_amount_ntoh:mo,_llvm_cttz_i32:$q,_GNUNET_CRYPTO_ecdhe_key_create:nc,_TALER_amount_subtract:qo,___udivmoddi4:ar,_GNUNET_CRYPTO_rsa_private_key_create:Sc,_i64Add:_q,_GNUNET_CRYPTO_ecdhe_key_get_public:lc,_TALER_WRALL_purpose_create:Kb,_GNUNET_CRYPTO_ecdh_eddsa:vc,_pthread_mutex_unlock:hr,_GNUNET_CRYPTO_rsa_public_key_free:Yc,_GNUNET_CRYPTO_kdf:Hc,_emscripten_get_global_libc:Eo,_GNUNET_CRYPTO_eddsa_sign:rc,_TALER_amount_hton:lo,_i64Subtract:Xq,_pthread_mutex_lock:Zq,_GNUNET_CRYPTO_rsa_private_key_encode:Uc,_GNUNET_CRYPTO_eddsa_key_get_public:jc,___udivdi3:ir,_TALER_amount_add:ro,___errno_location:zo,___muldsi3:jr,_TALER_WR_get_value:Mb,_TALER_WRALL_ecdhe_public_key_from_private:Jb,_free:Pq,_GNUNET_STRINGS_data_to_string_alloc:nd,_GNUNET_CRYPTO_hash_context_abort:Bc,_memmove:dr,_malloc:Oq,_memcpy:cr,_TALER_amount_get_zero:no,_GNUNET_CRYPTO_hkdf:Fc,_GNUNET_CRYPTO_rsa_public_key_decode:_c,_GNUNET_CRYPTO_ecdsa_key_create:pc,_TALER_WRALL_ecdsa_public_key_from_private:Ib,_GNUNET_CRYPTO_rsa_public_key_encode:Zc,___remdi3:or,_GNUNET_CRYPTO_hash:wc,_GNUNET_CRYPTO_rsa_signature_decode:id,___uremdi3:nr,_GNUNET_util_cl_init:Tb,_GNUNET_CRYPTO_random_init:Mc,_gpg_err_init:On,_TALER_gcrypt_init:so,runPostSets:Wq,stackAlloc:Ab,stackSave:Bb,stackRestore:Cb,establishStackSpace:Db,setTempRet0:Fb,getTempRet0:Gb,setThrew:Eb,stackAlloc:Ab,stackSave:Bb,stackRestore:Cb,establishStackSpace:Db,setThrew:Eb,setTempRet0:Fb,getTempRet0:Gb,dynCall_iiii:pr,dynCall_viiiii:qr,dynCall_vi:rr,dynCall_vii:sr,dynCall_ii:tr,dynCall_viii:ur,dynCall_v:vr,dynCall_iiiii:wr,dynCall_viiiiii:xr,dynCall_iii:yr,dynCall_viiii:zr}})
+
+
+// EMSCRIPTEN_END_ASM
+(Module.asmGlobalArg,Module.asmLibraryArg,buffer);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__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__sbrk=asm["_sbrk"];asm["_sbrk"]=(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__sbrk.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__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____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_ecdh_eddsa=asm["_GNUNET_CRYPTO_ecdh_eddsa"];asm["_GNUNET_CRYPTO_ecdh_eddsa"]=(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_ecdh_eddsa.apply(null,arguments)});var real__emscripten_get_global_libc=asm["_emscripten_get_global_libc"];asm["_emscripten_get_global_libc"]=(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__emscripten_get_global_libc.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_stackSave=asm["stackSave"];asm["stackSave"]=(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_stackSave.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__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__memalign=asm["_memalign"];asm["_memalign"]=(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__memalign.apply(null,arguments)});var real__GNUNET_CRYPTO_ecdsa_key_create=asm["_GNUNET_CRYPTO_ecdsa_key_create"];asm["_GNUNET_CRYPTO_ecdsa_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_ecdsa_key_create.apply(null,arguments)});var real__GNUNET_CRYPTO_hash_context_start=asm["_GNUNET_CRYPTO_hash_context_start"];asm["_GNUNET_CRYPTO_hash_context_start"]=(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_context_start.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__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_setThrew=asm["setThrew"];asm["setThrew"]=(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_setThrew.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__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__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__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_stackAlloc=asm["stackAlloc"];asm["stackAlloc"]=(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_stackAlloc.apply(null,arguments)});var real__GNUNET_CRYPTO_kdf=asm["_GNUNET_CRYPTO_kdf"];asm["_GNUNET_CRYPTO_kdf"]=(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_kdf.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_getTempRet0=asm["getTempRet0"];asm["getTempRet0"]=(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_getTempRet0.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_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_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__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__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__TALER_gcrypt_init=asm["_TALER_gcrypt_init"];asm["_TALER_gcrypt_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__TALER_gcrypt_init.apply(null,arguments)});var real_establishStackSpace=asm["establishStackSpace"];asm["establishStackSpace"]=(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_establishStackSpace.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_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__TALER_WRALL_ecdsa_public_key_from_private=asm["_TALER_WRALL_ecdsa_public_key_from_private"];asm["_TALER_WRALL_ecdsa_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_ecdsa_public_key_from_private.apply(null,arguments)});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__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_hash_context_finish=asm["_GNUNET_CRYPTO_hash_context_finish"];asm["_GNUNET_CRYPTO_hash_context_finish"]=(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_context_finish.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_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_random_block=asm["_GNUNET_CRYPTO_random_block"];asm["_GNUNET_CRYPTO_random_block"]=(function(){assert(runtimeInitialized,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)");assert(!runtimeExited,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)");return real__GNUNET_CRYPTO_random_block.apply(null,arguments)});var real__TALER_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_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_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__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_setTempRet0=asm["setTempRet0"];asm["setTempRet0"]=(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_setTempRet0.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_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__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____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____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__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__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__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__TALER_setup_fresh_coin=asm["_TALER_setup_fresh_coin"];asm["_TALER_setup_fresh_coin"]=(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_setup_fresh_coin.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____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__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__GNUNET_CRYPTO_hash_context_read=asm["_GNUNET_CRYPTO_hash_context_read"];asm["_GNUNET_CRYPTO_hash_context_read"]=(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_context_read.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__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__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____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__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____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_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_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__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__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__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_stackRestore=asm["stackRestore"];asm["stackRestore"]=(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_stackRestore.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____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_WRALL_ecdhe_public_key_from_private=asm["_TALER_WRALL_ecdhe_public_key_from_private"];asm["_TALER_WRALL_ecdhe_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_ecdhe_public_key_from_private.apply(null,arguments)});var real__GNUNET_CRYPTO_hash_context_abort=asm["_GNUNET_CRYPTO_hash_context_abort"];asm["_GNUNET_CRYPTO_hash_context_abort"]=(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_context_abort.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_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_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_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_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 _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _GNUNET_CRYPTO_eddsa_key_create=Module["_GNUNET_CRYPTO_eddsa_key_create"]=asm["_GNUNET_CRYPTO_eddsa_key_create"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _GNUNET_CRYPTO_rsa_private_key_decode=Module["_GNUNET_CRYPTO_rsa_private_key_decode"]=asm["_GNUNET_CRYPTO_rsa_private_key_decode"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var _GNUNET_CRYPTO_ecdh_eddsa=Module["_GNUNET_CRYPTO_ecdh_eddsa"]=asm["_GNUNET_CRYPTO_ecdh_eddsa"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var _TALER_amount_hton=Module["_TALER_amount_hton"]=asm["_TALER_amount_hton"];var stackSave=Module["stackSave"]=asm["stackSave"];var _gpg_err_init=Module["_gpg_err_init"]=asm["_gpg_err_init"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _memalign=Module["_memalign"]=asm["_memalign"];var _GNUNET_CRYPTO_ecdsa_key_create=Module["_GNUNET_CRYPTO_ecdsa_key_create"]=asm["_GNUNET_CRYPTO_ecdsa_key_create"];var _GNUNET_CRYPTO_hash_context_start=Module["_GNUNET_CRYPTO_hash_context_start"]=asm["_GNUNET_CRYPTO_hash_context_start"];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 _GNUNET_CRYPTO_eddsa_verify=Module["_GNUNET_CRYPTO_eddsa_verify"]=asm["_GNUNET_CRYPTO_eddsa_verify"];var setThrew=Module["setThrew"]=asm["setThrew"];var _GNUNET_CRYPTO_symmetric_encrypt=Module["_GNUNET_CRYPTO_symmetric_encrypt"]=asm["_GNUNET_CRYPTO_symmetric_encrypt"];var _TALER_WR_get_fraction=Module["_TALER_WR_get_fraction"]=asm["_TALER_WR_get_fraction"];var _TALER_amount_cmp=Module["_TALER_amount_cmp"]=asm["_TALER_amount_cmp"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var _GNUNET_CRYPTO_kdf=Module["_GNUNET_CRYPTO_kdf"]=asm["_GNUNET_CRYPTO_kdf"];var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var _TALER_amount_ntoh=Module["_TALER_amount_ntoh"]=asm["_TALER_amount_ntoh"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var _GNUNET_CRYPTO_rsa_public_key_free=Module["_GNUNET_CRYPTO_rsa_public_key_free"]=asm["_GNUNET_CRYPTO_rsa_public_key_free"];var _GNUNET_CRYPTO_hkdf=Module["_GNUNET_CRYPTO_hkdf"]=asm["_GNUNET_CRYPTO_hkdf"];var _GNUNET_CRYPTO_eddsa_key_get_public=Module["_GNUNET_CRYPTO_eddsa_key_get_public"]=asm["_GNUNET_CRYPTO_eddsa_key_get_public"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _GNUNET_CRYPTO_rsa_private_key_create=Module["_GNUNET_CRYPTO_rsa_private_key_create"]=asm["_GNUNET_CRYPTO_rsa_private_key_create"];var _TALER_gcrypt_init=Module["_TALER_gcrypt_init"]=asm["_TALER_gcrypt_init"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _pthread_mutex_lock=Module["_pthread_mutex_lock"]=asm["_pthread_mutex_lock"];var _GNUNET_CRYPTO_rsa_public_key_decode=Module["_GNUNET_CRYPTO_rsa_public_key_decode"]=asm["_GNUNET_CRYPTO_rsa_public_key_decode"];var _TALER_WRALL_ecdsa_public_key_from_private=Module["_TALER_WRALL_ecdsa_public_key_from_private"]=asm["_TALER_WRALL_ecdsa_public_key_from_private"];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 _GNUNET_STRINGS_string_to_data=Module["_GNUNET_STRINGS_string_to_data"]=asm["_GNUNET_STRINGS_string_to_data"];var _memset=Module["_memset"]=asm["_memset"];var _GNUNET_CRYPTO_hash_context_finish=Module["_GNUNET_CRYPTO_hash_context_finish"]=asm["_GNUNET_CRYPTO_hash_context_finish"];var _GNUNET_CRYPTO_rsa_unblind=Module["_GNUNET_CRYPTO_rsa_unblind"]=asm["_GNUNET_CRYPTO_rsa_unblind"];var _TALER_WR_get_currency=Module["_TALER_WR_get_currency"]=asm["_TALER_WR_get_currency"];var _GNUNET_CRYPTO_random_block=Module["_GNUNET_CRYPTO_random_block"]=asm["_GNUNET_CRYPTO_random_block"];var _TALER_WRALL_get_amount=Module["_TALER_WRALL_get_amount"]=asm["_TALER_WRALL_get_amount"];var _GNUNET_CRYPTO_rsa_private_key_encode=Module["_GNUNET_CRYPTO_rsa_private_key_encode"]=asm["_GNUNET_CRYPTO_rsa_private_key_encode"];var _GNUNET_CRYPTO_symmetric_decrypt=Module["_GNUNET_CRYPTO_symmetric_decrypt"]=asm["_GNUNET_CRYPTO_symmetric_decrypt"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _TALER_WR_get_value=Module["_TALER_WR_get_value"]=asm["_TALER_WR_get_value"];var _GNUNET_CRYPTO_ecdhe_key_get_public=Module["_GNUNET_CRYPTO_ecdhe_key_get_public"]=asm["_GNUNET_CRYPTO_ecdhe_key_get_public"];var _GNUNET_util_cl_init=Module["_GNUNET_util_cl_init"]=asm["_GNUNET_util_cl_init"];var ___remdi3=Module["___remdi3"]=asm["___remdi3"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _GNUNET_CRYPTO_rsa_blind=Module["_GNUNET_CRYPTO_rsa_blind"]=asm["_GNUNET_CRYPTO_rsa_blind"];var _GNUNET_STRINGS_data_to_string_alloc=Module["_GNUNET_STRINGS_data_to_string_alloc"]=asm["_GNUNET_STRINGS_data_to_string_alloc"];var _malloc=Module["_malloc"]=asm["_malloc"];var _GNUNET_CRYPTO_rsa_signature_decode=Module["_GNUNET_CRYPTO_rsa_signature_decode"]=asm["_GNUNET_CRYPTO_rsa_signature_decode"];var _TALER_setup_fresh_coin=Module["_TALER_setup_fresh_coin"]=asm["_TALER_setup_fresh_coin"];var _GNUNET_CRYPTO_ecdhe_key_create=Module["_GNUNET_CRYPTO_ecdhe_key_create"]=asm["_GNUNET_CRYPTO_ecdhe_key_create"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _TALER_amount_normalize=Module["_TALER_amount_normalize"]=asm["_TALER_amount_normalize"];var _GNUNET_CRYPTO_hash_context_read=Module["_GNUNET_CRYPTO_hash_context_read"]=asm["_GNUNET_CRYPTO_hash_context_read"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];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 _TALER_WRALL_eddsa_public_key_from_private=Module["_TALER_WRALL_eddsa_public_key_from_private"]=asm["_TALER_WRALL_eddsa_public_key_from_private"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _GNUNET_CRYPTO_ecc_ecdh=Module["_GNUNET_CRYPTO_ecc_ecdh"]=asm["_GNUNET_CRYPTO_ecc_ecdh"];var _TALER_amount_add=Module["_TALER_amount_add"]=asm["_TALER_amount_add"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _GNUNET_CRYPTO_rsa_signature_free=Module["_GNUNET_CRYPTO_rsa_signature_free"]=asm["_GNUNET_CRYPTO_rsa_signature_free"];var _TALER_amount_subtract=Module["_TALER_amount_subtract"]=asm["_TALER_amount_subtract"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _TALER_WRALL_purpose_create=Module["_TALER_WRALL_purpose_create"]=asm["_TALER_WRALL_purpose_create"];var _pthread_mutex_unlock=Module["_pthread_mutex_unlock"]=asm["_pthread_mutex_unlock"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var _GNUNET_CRYPTO_eddsa_sign=Module["_GNUNET_CRYPTO_eddsa_sign"]=asm["_GNUNET_CRYPTO_eddsa_sign"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var _TALER_WRALL_ecdhe_public_key_from_private=Module["_TALER_WRALL_ecdhe_public_key_from_private"]=asm["_TALER_WRALL_ecdhe_public_key_from_private"];var _GNUNET_CRYPTO_hash_context_abort=Module["_GNUNET_CRYPTO_hash_context_abort"]=asm["_GNUNET_CRYPTO_hash_context_abort"];var _memmove=Module["_memmove"]=asm["_memmove"];var _GNUNET_CRYPTO_random_init=Module["_GNUNET_CRYPTO_random_init"]=asm["_GNUNET_CRYPTO_random_init"];var _TALER_amount_get_zero=Module["_TALER_amount_get_zero"]=asm["_TALER_amount_get_zero"];var _GNUNET_CRYPTO_rsa_public_key_encode=Module["_GNUNET_CRYPTO_rsa_public_key_encode"]=asm["_GNUNET_CRYPTO_rsa_public_key_encode"];var _GNUNET_CRYPTO_hash=Module["_GNUNET_CRYPTO_hash"]=asm["_GNUNET_CRYPTO_hash"];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=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;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()
+
+
+
+