Mercurial > hg > ugly-duckling
view src/assets/extractors/NNLSChroma.js @ 332:6ada6ca40baf
Update PYin build
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Wed, 17 May 2017 16:38:30 +0100 |
parents | 53ea6406d601 |
children |
line wrap: on
line source
(function (factory) { if (typeof module === 'object' && typeof module.exports === 'object') { factory(module.exports); } else if (typeof define === 'function' && define.amd) { define(["exports"], factory); } })(function (exports) { "use strict"; exports.createLibrary = function(Module) { Module = Module || {}; var Module;if(!Module)Module=(typeof NNLSChromaModule!=="undefined"?NNLSChromaModule: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){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){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;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){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){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){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;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;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){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 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 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"]||1e8;var WASM_PAGE_SIZE=64*1024;var totalMemory=WASM_PAGE_SIZE;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(TOTAL_MEMORY)}}updateGlobalBufferViews();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(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){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){HEAP8.set(array,buffer)}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+47808;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_nnls_chroma_cpp()})},{func:(function(){__GLOBAL__sub_I_PluginLoader_cpp()})},{func:(function(){__GLOBAL__sub_I_PluginSummarisingAdapter_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,76,0,0,0,0,0,0,0,152,1,0,0,55,0,0,0,56,0,0,0,180,255,255,255,180,255,255,255,152,1,0,0,57,0,0,0,58,0,0,0,0,0,0,0,0,0,0,0,92,80,0,0,126,84,0,0,132,80,0,0,76,84,0,0,64,0,0,0,0,0,0,0,132,80,0,0,169,84,0,0,64,0,0,0,0,0,0,0,132,80,0,0,216,84,0,0,64,0,0,0,0,0,0,0,92,80,0,0,48,85,0,0,132,80,0,0,5,85,0,0,120,0,0,0,0,0,0,0,132,80,0,0,83,85,0,0,120,0,0,0,0,0,0,0,132,80,0,0,126,85,0,0,72,0,0,0,0,0,0,0,132,80,0,0,172,85,0,0,88,0,0,0,0,0,0,0,132,80,0,0,215,85,0,0,104,0,0,0,0,0,0,0,132,80,0,0,111,93,0,0,224,0,0,0,0,0,0,0,92,80,0,0,155,93,0,0,132,80,0,0,192,93,0,0,80,26,0,0,0,0,0,0,132,80,0,0,84,99,0,0,120,1,0,0,0,0,0,0,44,81,0,0,153,97,0,0,0,0,0,0,1,0,0,0,32,1,0,0,0,0,0,0,92,80,0,0,194,97,0,0,44,81,0,0,7,98,0,0,0,0,0,0,2,0,0,0,80,1,0,0,2,0,0,0,112,1,0,0,3,244,255,255,92,80,0,0,244,97,0,0,44,81,0,0,140,98,0,0,0,0,0,0,2,0,0,0,136,21,0,0,2,0,0,0,72,1,0,0,2,16,0,0,92,80,0,0,101,98,0,0,132,80,0,0,222,99,0,0,248,20,0,0,0,0,0,0,132,80,0,0,37,100,0,0,248,0,0,0,0,0,0,0,44,81,0,0,163,100,0,0,0,0,0,0,2,0,0,0,184,1,0,0,0,8,0,0,8,21,0,0,2,0,0,0,92,80,0,0,43,101,0,0,132,80,0,0,197,101,0,0,152,1,0,0,0,0,0,0,132,80,0,0,38,102,0,0,248,20,0,0,0,0,0,0,132,80,0,0,104,102,0,0,56,21,0,0,0,0,0,0,44,81,0,0,205,103,0,0,0,0,0,0,1,0,0,0,88,2,0,0,0,0,0,0,44,81,0,0,200,102,0,0,0,0,0,0,2,0,0,0,40,2,0,0,2,0,0,0,112,1,0,0,3,244,255,255,44,81,0,0,35,103,0,0,0,0,0,0,2,0,0,0,72,2,0,0,2,0,0,0,72,1,0,0,2,12,0,0,132,80,0,0,107,103,0,0,16,27,0,0,0,0,0,0,92,80,0,0,12,104,0,0,132,80,0,0,50,104,0,0,112,2,0,0,0,0,0,0,132,80,0,0,137,104,0,0,248,20,0,0,0,0,0,0,132,80,0,0,4,105,0,0,144,2,0,0,0,0,0,0,92,80,0,0,75,105,0,0,132,80,0,0,108,105,0,0,248,20,0,0,0,0,0,0,132,80,0,0,155,105,0,0,104,21,0,0,0,0,0,0,132,80,0,0,86,106,0,0,200,2,0,0,0,0,0,0,132,80,0,0,96,106,0,0,216,2,0,0,0,0,0,0,92,80,0,0,124,106,0,0,132,80,0,0,218,111,0,0,184,2,0,0,0,0,0,0,132,80,0,0,227,118,0,0,184,2,0,0,0,0,0,0,132,80,0,0,185,121,0,0,184,2,0,0,0,0,0,0,132,80,0,0,77,124,0,0,104,3,0,0,0,0,0,0,132,80,0,0,227,121,0,0,48,3,0,0,0,0,0,0,92,80,0,0,252,121,0,0,92,80,0,0,240,123,0,0,132,80,0,0,127,124,0,0,104,3,0,0,0,0,0,0,132,80,0,0,78,126,0,0,104,3,0,0,0,0,0,0,92,80,0,0,55,126,0,0,132,80,0,0,130,126,0,0,32,3,0,0,0,0,0,0,92,80,0,0,232,127,0,0,132,80,0,0,224,126,0,0,144,3,0,0,0,0,0,0,132,80,0,0,247,126,0,0,120,3,0,0,0,0,0,0,132,80,0,0,27,127,0,0,80,26,0,0,0,0,0,0,132,80,0,0,106,127,0,0,192,3,0,0,0,0,0,0,132,80,0,0,125,127,0,0,120,3,0,0,0,0,0,0,132,80,0,0,162,127,0,0,80,26,0,0,0,0,0,0,132,80,0,0,78,128,0,0,240,3,0,0,0,0,0,0,132,80,0,0,252,127,0,0,120,3,0,0,0,0,0,0,132,80,0,0,42,129,0,0,16,4,0,0,0,0,0,0,132,80,0,0,98,128,0,0,120,3,0,0,0,0,0,0,132,80,0,0,70,129,0,0,48,4,0,0,0,0,0,0,132,80,0,0,92,129,0,0,120,3,0,0,0,0,0,0,132,80,0,0,128,129,0,0,80,26,0,0,0,0,0,0,132,80,0,0,204,129,0,0,96,4,0,0,0,0,0,0,132,80,0,0,222,129,0,0,120,3,0,0,0,0,0,0,132,80,0,0,2,130,0,0,80,26,0,0,0,0,0,0,132,80,0,0,71,130,0,0,144,4,0,0,0,0,0,0,132,80,0,0,93,130,0,0,120,3,0,0,0,0,0,0,132,80,0,0,192,130,0,0,80,26,0,0,0,0,0,0,132,80,0,0,9,131,0,0,80,26,0,0,0,0,0,0,132,80,0,0,80,131,0,0,80,26,0,0,0,0,0,0,93,61,127,102,158,160,230,63,0,0,0,0,0,136,57,61,68,23,117,250,82,176,230,63,0,0,0,0,0,0,216,60,254,217,11,117,18,192,230,63,0,0,0,0,0,120,40,189,191,118,212,221,220,207,230,63,0,0,0,0,0,192,30,61,41,26,101,60,178,223,230,63,0,0,0,0,0,0,216,188,227,58,89,152,146,239,230,63,0,0,0,0,0,0,188,188,134,147,81,249,125,255,230,63,0,0,0,0,0,216,47,189,163,45,244,102,116,15,231,63,0,0,0,0,0,136,44,189,195,95,236,232,117,31,231,63,0,0,0,0,0,192,19,61,5,207,234,134,130,47,231,63,0,0,0,0,0,48,56,189,82,129,165,72,154,63,231,63,0,0,0,0,0,192,0,189,252,204,215,53,189,79,231,63,0,0,0,0,0,136,47,61,241,103,66,86,235,95,231,63,0,0,0,0,0,224,3,61,72,109,171,177,36,112,231,63,0,0,0,0,0,208,39,189,56,93,222,79,105,128,231,63,0,0,0,0,0,0,221,188,0,29,172,56,185,144,231,63,0,0,0,0,0,0,227,60,120,1,235,115,20,161,231,63,0,0,0,0,0,0,237,188,96,208,118,9,123,177,231,63,0,0,0,0,0,64,32,61,51,193,48,1,237,193,231,63,0,0,0,0,0,0,160,60,54,134,255,98,106,210,231,63,0,0,0,0,0,144,38,189,59,78,207,54,243,226,231,63,0,0,0,0,0,224,2,189,232,195,145,132,135,243,231,63,0,0,0,0,0,88,36,189,78,27,62,84,39,4,232,63,0,0,0,0,0,0,51,61,26,7,209,173,210,20,232,63,0,0,0,0,0,0,15,61,126,205,76,153,137,37,232,63,0,0,0,0,0,192,33,189,208,66,185,30,76,54,232,63,0,0,0,0,0,208,41,61,181,202,35,70,26,71,232,63,0,0,0,0,0,16,71,61,188,91,159,23,244,87,232,63,0,0,0,0,0,96,34,61,175,145,68,155,217,104,232,63,0,0,0,0,0,196,50,189,149,163,49,217,202,121,232,63,0,0,0,0,0,0,35,189,184,101,138,217,199,138,232,63,0,0,0,0,0,128,42,189,0,88,120,164,208,155,232,63,0,0,0,0,0,0,237,188,35,162,42,66,229,172,232,63,0,0,0,0,0,40,51,61,250,25,214,186,5,190,232,63,0,0,0,0,0,180,66,61,131,67,181,22,50,207,232,63,0,0,0,0,0,208,46,189,76,102,8,94,106,224,232,63,0,0,0,0,0,80,32,189,7,120,21,153,174,241,232,63,0,0,0,0,0,40,40,61,14,44,40,208,254,2,233,63,0,0,0,0,0,176,28,189,150,255,145,11,91,20,233,63,0,0,0,0,0,224,5,189,249,47,170,83,195,37,233,63,0,0,0,0,0,64,245,60,74,198,205,176,55,55,233,63,0,0,0,0,0,32,23,61,174,152,95,43,184,72,233,63,0,0,0,0,0,0,9,189,203,82,200,203,68,90,233,63,0,0,0,0,0,104,37,61,33,111,118,154,221,107,233,63,0,0,0,0,0,208,54,189,42,78,222,159,130,125,233,63,0,0,0,0,0,0,1,189,163,35,122,228,51,143,233,63,0,0,0,0,0,0,45,61,4,6,202,112,241,160,233,63,0,0,0,0,0,164,56,189,137,255,83,77,187,178,233,63,0,0,0,0,0,92,53,61,91,241,163,130,145,196,233,63,0,0,0,0,0,184,38,61,197,184,75,25,116,214,233,63,0,0,0,0,0,0,236,188,142,35,227,25,99,232,233,63,0,0,0,0,0,208,23,61,2,243,7,141,94,250,233,63,0,0,0,0,0,64,22,61,77,229,93,123,102,12,234,63,0,0,0,0,0,0,245,188,246,184,142,237,122,30,234,63,0,0,0,0,0,224,9,61,39,46,74,236,155,48,234,63,0,0,0,0,0,216,42,61,93,10,70,128,201,66,234,63,0,0,0,0,0,240,26,189,155,37,62,178,3,85,234,63,0,0,0,0,0,96,11,61,19,98,244,138,74,103,234,63,0,0,0,0,0,136,56,61,167,179,48,19,158,121,234,63,0,0,0,0,0,32,17,61,141,46,193,83,254,139,234,63,0,0,0,0,0,192,6,61,210,252,121,85,107,158,234,63,0,0,0,0,0,184,41,189,184,111,53,33,229,176,234,63,0,0,0,0,0,112,43,61,129,243,211,191,107,195,234,63,0,0,0,0,0,0,217,60,128,39,60,58,255,213,234,63,0,0,0,0,0,0,228,60,163,210,90,153,159,232,234,63,0,0,0,0,0,144,44,189,103,243,34,230,76,251,234,63,0,0,0,0,0,80,22,61,144,183,141,41,7,14,235,63,0,0,0,0,0,212,47,61,169,137,154,108,206,32,235,63,0,0,0,0,0,112,18,61,75,26,79,184,162,51,235,63,0,0,0,0,0,71,77,61,231,71,183,21,132,70,235,63,0,0,0,0,0,56,56,189,58,89,229,141,114,89,235,63,0,0,0,0,0,0,152,60,106,197,241,41,110,108,235,63,0,0,0,0,0,208,10,61,80,94,251,242,118,127,235,63,0,0,0,0,0,128,222,60,178,73,39,242,140,146,235,63,0,0,0,0,0,192,4,189,3,6,161,48,176,165,235,63,0,0,0,0,0,112,13,189,102,111,154,183,224,184,235,63,0,0,0,0,0,144,13,61,255,193,75,144,30,204,235,63,0,0,0,0,0,160,2,61,111,161,243,195,105,223,235,63,0,0,0,0,0,120,31,189,184,29,215,91,194,242,235,63,0,0,0,0,0,160,16,189,233,178,65,97,40,6,236,63,0,0,0,0,0,64,17,189,224,82,133,221,155,25,236,63,0,0,0,0,0,224,11,61,238,100,250,217,28,45,236,63,0,0,0,0,0,64,9,189,47,208,255,95,171,64,236,63,0,0,0,0,0,208,14,189,21,253,250,120,71,84,236,63,0,0,0,0,0,102,57,61,203,208,87,46,241,103,236,63,0,0,0,0,0,16,26,189,182,193,136,137,168,123,236,63,0,0,0,0,128,69,88,189,51,231,6,148,109,143,236,63,0,0,0,0,0,72,26,189,223,196,81,87,64,163,236,63,0,0,0,0,0,0,203,60,148,144,239,220,32,183,236,63,0,0,0,0,0,64,1,61,137,22,109,46,15,203,236,63,0,0,0,0,0,32,240,60,18,196,93,85,11,223,236,63,0,0,0,0,0,96,243,60,59,171,91,91,21,243,236,63,0,0,0,0,0,144,6,189,188,137,7,74,45,7,237,63,0,0,0,0,0,160,9,61,250,200,8,43,83,27,237,63,0,0,0,0,0,224,21,189,133,138,13,8,135,47,237,63,0,0,0,0,0,40,29,61,3,162,202,234,200,67,237,63,0,0,0,0,0,160,1,61,145,164,251,220,24,88,237,63,0,0,0,0,0,0,223,60,161,230,98,232,118,108,237,63,0,0,0,0,0,160,3,189,78,131,201,22,227,128,237,63,0,0,0,0,0,216,12,189,144,96,255,113,93,149,237,63,0,0,0,0,0,192,244,60,174,50,219,3,230,169,237,63,0,0,0,0,0,144,255,60,37,131,58,214,124,190,237,63,0,0,0,0,0,128,233,60,69,180,1,243,33,211,237,63,0,0,0,0,0,32,245,188,191,5,28,100,213,231,237,63,0,0,0,0,0,112,29,189,236,154,123,51,151,252,237,63,0,0,0,0,0,20,22,189,94,125,25,107,103,17,238,63,0,0,0,0,0,72,11,61,231,163,245,20,70,38,238,63,0,0,0,0,0,206,64,61,92,238,22,59,51,59,238,63,0,0,0,0,0,104,12,61,180,63,139,231,46,80,238,63,0,0,0,0,0,48,9,189,104,109,103,36,57,101,238,63,0,0,0,0,0,0,229,188,68,76,199,251,81,122,238,63,0,0,0,0,0,248,7,189,38,183,205,119,121,143,238,63,0,0,0,0,0,112,243,188,232,144,164,162,175,164,238,63,0,0,0,0,0,208,229,60,228,202,124,134,244,185,238,63,0,0,0,0,0,26,22,61,13,104,142,45,72,207,238,63,0,0,0,0,0,80,245,60,20,133,24,162,170,228,238,63,0,0,0,0,0,64,198,60,19,90,97,238,27,250,238,63,0,0,0,0,0,128,238,188,6,65,182,28,156,15,239,63,0,0,0,0,0,136,250,188,99,185,107,55,43,37,239,63,0,0,0,0,0,144,44,189,117,114,221,72,201,58,239,63,0,0,0,0,0,0,170,60,36,69,110,91,118,80,239,63,0,0,0,0,0,240,244,188,253,68,136,121,50,102,239,63,0,0,0,0,0,128,202,60,56,190,156,173,253,123,239,63,0,0,0,0,0,188,250,60,130,60,36,2,216,145,239,63,0,0,0,0,0,96,212,188,142,144,158,129,193,167,239,63,0,0,0,0,0,12,11,189,17,213,146,54,186,189,239,63,0,0,0,0,0,224,192,188,148,113,143,43,194,211,239,63,0,0,0,0,128,222,16,189,238,35,42,107,217,233,239,63,0,0,0,0,0,67,238,60,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,0,190,188,90,250,26,11,240,63,0,0,0,0,0,64,179,188,3,51,251,169,61,22,240,63,0,0,0,0,0,23,18,189,130,2,59,20,104,33,240,63,0,0,0,0,0,64,186,60,108,128,119,62,154,44,240,63,0,0,0,0,0,152,239,60,202,187,17,46,212,55,240,63,0,0,0,0,0,64,199,188,137,127,110,232,21,67,240,63,0,0,0,0,0,48,216,60,103,84,246,114,95,78,240,63,0,0,0,0,0,63,26,189,90,133,21,211,176,89,240,63,0,0,0,0,0,132,2,189,149,31,60,14,10,101,240,63,0,0,0,0,0,96,241,60,26,247,221,41,107,112,240,63,0,0,0,0,0,36,21,61,45,168,114,43,212,123,240,63,0,0,0,0,0,160,233,188,208,155,117,24,69,135,240,63,0,0,0,0,0,64,230,60,200,7,102,246,189,146,240,63,0,0,0,0,0,120,0,189,131,243,198,202,62,158,240,63,0,0,0,0,0,0,152,188,48,57,31,155,199,169,240,63,0,0,0,0,0,160,255,60,252,136,249,108,88,181,240,63,0,0,0,0,0,200,250,188,138,108,228,69,241,192,240,63,0,0,0,0,0,192,217,60,22,72,114,43,146,204,240,63,0,0,0,0,0,32,5,61,216,93,57,35,59,216,240,63,0,0,0,0,0,208,250,188,243,209,211,50,236,227,240,63,0,0,0,0,0,172,27,61,166,169,223,95,165,239,240,63,0,0,0,0,0,232,4,189,240,210,254,175,102,251,240,63,0,0,0,0,0,48,13,189,75,35,215,40,48,7,241,63,0,0,0,0,0,80,241,60,91,91,18,208,1,19,241,63,0,0,0,0,0,0,236,60,249,42,94,171,219,30,241,63,0,0,0,0,0,188,22,61,213,49,108,192,189,42,241,63,0,0,0,0,0,64,232,60,125,4,242,20,168,54,241,63,0,0,0,0,0,208,14,189,233,45,169,174,154,66,241,63,0,0,0,0,0,224,232,60,56,49,79,147,149,78,241,63,0,0,0,0,0,64,235,60,113,142,165,200,152,90,241,63,0,0,0,0,0,48,5,61,223,195,113,84,164,102,241,63,0,0,0,0,0,56,3,61,17,82,125,60,184,114,241,63,0,0,0,0,0,212,40,61,159,187,149,134,212,126,241,63,0,0,0,0,0,208,5,189,147,141,140,56,249,138,241,63,0,0,0,0,0,136,28,189,102,93,55,88,38,151,241,63,0,0,0,0,0,240,17,61,167,203,111,235,91,163,241,63,0,0,0,0,0,72,16,61,227,135,19,248,153,175,241,63,0,0,0,0,0,57,71,189,84,93,4,132,224,187,241,63,0,0,0,0,0,228,36,61,67,28,40,149,47,200,241,63,0,0,0,0,0,32,10,189,178,185,104,49,135,212,241,63,0,0,0,0,0,128,227,60,49,64,180,94,231,224,241,63,0,0,0,0,0,192,234,60,56,217,252,34,80,237,241,63,0,0,0,0,0,144,1,61,247,205,56,132,193,249,241,63,0,0,0,0,0,120,27,189,143,141,98,136,59,6,242,63,0,0,0,0,0,148,45,61,30,168,120,53,190,18,242,63,0,0,0,0,0,0,216,60,65,221,125,145,73,31,242,63,0,0,0,0,0,52,43,61,35,19,121,162,221,43,242,63,0,0,0,0,0,248,25,61,231,97,117,110,122,56,242,63,0,0,0,0,0,200,25,189,39,20,130,251,31,69,242,63,0,0,0,0,0,48,2,61,2,166,178,79,206,81,242,63,0,0,0,0,0,72,19,189,176,206,30,113,133,94,242,63,0,0,0,0,0,112,18,61,22,125,226,101,69,107,242,63,0,0,0,0,0,208,17,61,15,224,29,52,14,120,242,63,0,0,0,0,0,238,49,61,62,99,245,225,223,132,242,63,0,0,0,0,0,192,20,189,48,187,145,117,186,145,242,63,0,0,0,0,0,216,19,189,9,223,31,245,157,158,242,63,0,0,0,0,0,176,8,61,155,14,209,102,138,171,242,63,0,0,0,0,0,124,34,189,58,218,218,208,127,184,242,63,0,0,0,0,0,52,42,61,249,26,119,57,126,197,242,63,0,0,0,0,0,128,16,189,217,2,228,166,133,210,242,63,0,0,0,0,0,208,14,189,121,21,100,31,150,223,242,63,0,0,0,0,0,32,244,188,207,46,62,169,175,236,242,63,0,0,0,0,0,152,36,189,34,136,189,74,210,249,242,63,0,0,0,0,0,48,22,189,37,182,49,10,254,6,243,63,0,0,0,0,0,54,50,189,11,165,238,237,50,20,243,63,0,0,0,0,128,223,112,189,184,215,76,252,112,33,243,63,0,0,0,0,0,72,34,189,162,233,168,59,184,46,243,63,0,0,0,0,0,152,37,189,102,23,100,178,8,60,243,63,0,0,0,0,0,208,30,61,39,250,227,102,98,73,243,63,0,0,0,0,0,0,220,188,15,159,146,95,197,86,243,63,0,0,0,0,0,216,48,189,185,136,222,162,49,100,243,63,0,0,0,0,0,200,34,61,57,170,58,55,167,113,243,63,0,0,0,0,0,96,32,61,254,116,30,35,38,127,243,63,0,0,0,0,0,96,22,189,56,216,5,109,174,140,243,63,0,0,0,0,0,224,10,189,195,62,113,27,64,154,243,63,0,0,0,0,0,114,68,189,32,160,229,52,219,167,243,63,0,0,0,0,0,32,8,61,149,110,236,191,127,181,243,63,0,0,0,0,0,128,62,61,242,168,19,195,45,195,243,63,0,0,0,0,0,128,239,60,34,225,237,68,229,208,243,63,0,0,0,0,0,160,23,189,187,52,18,76,166,222,243,63,0,0,0,0,0,48,38,61,204,78,28,223,112,236,243,63,0,0,0,0,0,166,72,189,140,126,172,4,69,250,243,63,0,0,0,0,0,220,60,189,187,160,103,195,34,8,244,63,0,0,0,0,0,184,37,61,149,46,247,33,10,22,244,63,0,0,0,0,0,192,30,61,70,70,9,39,251,35,244,63,0,0,0,0,0,96,19,189,32,169,80,217,245,49,244,63,0,0,0,0,0,152,35,61,235,185,132,63,250,63,244,63,0,0,0,0,0,0,250,60,25,137,97,96,8,78,244,63,0,0,0,0,0,192,246,188,1,210,167,66,32,92,244,63,0,0,0,0,0,192,11,189,22,0,29,237,65,106,244,63,0,0,0,0,0,128,18,189,38,51,139,102,109,120,244,63,0,0,0,0,0,224,48,61,0,60,193,181,162,134,244,63,0,0,0,0,0,64,45,189,4,175,146,225,225,148,244,63,0,0,0,0,0,32,12,61,114,211,215,240,42,163,244,63,0,0,0,0,0,80,30,189,1,184,109,234,125,177,244,63,0,0,0,0,0,128,7,61,225,41,54,213,218,191,244,63,0,0,0,0,0,128,19,189,50,193,23,184,65,206,244,63,0,0,0,0,0,128,0,61,219,221,253,153,178,220,244,63,0,0,0,0,0,112,44,61,150,171,216,129,45,235,244,63,0,0,0,0,0,224,28,189,2,45,157,118,178,249,244,63,0,0,0,0,0,32,25,61,193,49,69,127,65,8,245,63,0,0,0,0,0,192,8,189,42,102,207,162,218,22,245,63,0,0,0,0,0,0,250,188,234,81,63,232,125,37,245,63,0,0,0,0,0,8,74,61,218,78,157,86,43,52,245,63,0,0,0,0,0,216,38,189,26,172,246,244,226,66,245,63,0,0,0,0,0,68,50,189,219,148,93,202,164,81,245,63,0,0,0,0,0,60,72,61,107,17,233,221,112,96,245,63,0,0,0,0,0,176,36,61,222,41,181,54,71,111,245,63,0,0,0,0,0,90,65,61,14,196,226,219,39,126,245,63,0,0,0,0,0,224,41,189,111,199,151,212,18,141,245,63,0,0,0,0,0,8,35,189,76,11,255,39,8,156,245,63,0,0,0,0,0,236,77,61,39,84,72,221,7,171,245,63,0,0,0,0,0,0,196,188,244,122,168,251,17,186,245,63,0,0,0,0,0,8,48,61,11,70,89,138,38,201,245,63,0,0,0,0,0,200,38,189,63,142,153,144,69,216,245,63,0,0,0,0,0,154,70,61,225,32,173,21,111,231,245,63,0,0,0,0,0,64,27,189,202,235,220,32,163,246,245,63,0,0,0,0,0,112,23,61,184,220,118,185,225,5,246,63,0,0,0,0,0,248,38,61,21,247,205,230,42,21,246,63,0,0,0,0,0,0,1,61,49,85,58,176,126,36,246,63,0,0,0,0,0,208,21,189,181,41,25,29,221,51,246,63,0,0,0,0,0,208,18,189,19,195,204,52,70,67,246,63,0,0,0,0,0,128,234,188,250,142,188,254,185,82,246,63,0,0,0,0,0,96,40,189,151,51,85,130,56,98,246,63,0,0,0,0,0,254,113,61,142,50,8,199,193,113,246,63,0,0,0,0,0,32,55,189,126,169,76,212,85,129,246,63,0,0,0,0,0,128,230,60,113,148,158,177,244,144,246,63,0,0,0,0,0,120,41,189,132,80,0,0,63,145,0,0,224,20,0,0,0,0,0,0,92,80,0,0,45,145,0,0,132,80,0,0,105,145,0,0,224,20,0,0,0,0,0,0,92,80,0,0,147,145,0,0,92,80,0,0,196,145,0,0,44,81,0,0,245,145,0,0,0,0,0,0,1,0,0,0,208,20,0,0,3,244,255,255,44,81,0,0,36,146,0,0,0,0,0,0,1,0,0,0,232,20,0,0,3,244,255,255,44,81,0,0,83,146,0,0,0,0,0,0,1,0,0,0,208,20,0,0,3,244,255,255,44,81,0,0,130,146,0,0,0,0,0,0,1,0,0,0,232,20,0,0,3,244,255,255,44,81,0,0,177,146,0,0,3,0,0,0,2,0,0,0,8,21,0,0,2,0,0,0,56,21,0,0,2,8,0,0,132,80,0,0,225,146,0,0,112,26,0,0,0,0,0,0,132,80,0,0,40,147,0,0,128,26,0,0,0,0,0,0,132,80,0,0,70,147,0,0,0,21,0,0,0,0,0,0,132,80,0,0,95,147,0,0,248,20,0,0,0,0,0,0,132,80,0,0,158,147,0,0,0,21,0,0,0,0,0,0,132,80,0,0,182,147,0,0,248,20,0,0,0,0,0,0,132,80,0,0,206,147,0,0,248,21,0,0,0,0,0,0,132,80,0,0,226,147,0,0,72,26,0,0,0,0,0,0,132,80,0,0,248,147,0,0,248,21,0,0,0,0,0,0,44,81,0,0,50,148,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,56,22,0,0,0,0,0,0,44,81,0,0,118,148,0,0,0,0,0,0,1,0,0,0,80,22,0,0,0,0,0,0,92,80,0,0,140,148,0,0,44,81,0,0,165,148,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,120,22,0,0,0,0,0,0,44,81,0,0,233,148,0,0,0,0,0,0,1,0,0,0,80,22,0,0,0,0,0,0,44,81,0,0,18,149,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,176,22,0,0,0,0,0,0,44,81,0,0,86,149,0,0,0,0,0,0,1,0,0,0,200,22,0,0,0,0,0,0,92,80,0,0,108,149,0,0,44,81,0,0,133,149,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,240,22,0,0,0,0,0,0,44,81,0,0,201,149,0,0,0,0,0,0,1,0,0,0,200,22,0,0,0,0,0,0,44,81,0,0,31,151,0,0,0,0,0,0,3,0,0,0,248,21,0,0,2,0,0,0,48,23,0,0,2,0,0,0,56,23,0,0,0,8,0,0,92,80,0,0,134,151,0,0,92,80,0,0,100,151,0,0,44,81,0,0,153,151,0,0,0,0,0,0,3,0,0,0,248,21,0,0,2,0,0,0,48,23,0,0,2,0,0,0,104,23,0,0,0,8,0,0,92,80,0,0,222,151,0,0,44,81,0,0,0,152,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,144,23,0,0,0,8,0,0,92,80,0,0,69,152,0,0,44,81,0,0,90,152,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,144,23,0,0,0,8,0,0,44,81,0,0,159,152,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,216,23,0,0,2,0,0,0,92,80,0,0,187,152,0,0,44,81,0,0,208,152,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,216,23,0,0,2,0,0,0,44,81,0,0,236,152,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,216,23,0,0,2,0,0,0,44,81,0,0,8,153,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,216,23,0,0,2,0,0,0,44,81,0,0,51,153,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,96,24,0,0,0,0,0,0,92,80,0,0,121,153,0,0,44,81,0,0,157,153,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,136,24,0,0,0,0,0,0,92,80,0,0,227,153,0,0,44,81,0,0,2,154,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,176,24,0,0,0,0,0,0,92,80,0,0,72,154,0,0,44,81,0,0,97,154,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,216,24,0,0,0,0,0,0,92,80,0,0,167,154,0,0,44,81,0,0,192,154,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,0,25,0,0,2,0,0,0,92,80,0,0,213,154,0,0,44,81,0,0,108,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,0,25,0,0,2,0,0,0,132,80,0,0,237,154,0,0,56,25,0,0,0,0,0,0,44,81,0,0,16,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,88,25,0,0,2,0,0,0,92,80,0,0,51,155,0,0,132,80,0,0,74,155,0,0,56,25,0,0,0,0,0,0,44,81,0,0,129,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,88,25,0,0,2,0,0,0,44,81,0,0,163,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,88,25,0,0,2,0,0,0,44,81,0,0,197,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,88,25,0,0,2,0,0,0,132,80,0,0,232,155,0,0,248,21,0,0,0,0,0,0,44,81,0,0,254,155,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,0,26,0,0,2,0,0,0,92,80,0,0,16,156,0,0,44,81,0,0,37,156,0,0,0,0,0,0,2,0,0,0,248,21,0,0,2,0,0,0,0,26,0,0,2,0,0,0,132,80,0,0,66,156,0,0,248,21,0,0,0,0,0,0,132,80,0,0,87,156,0,0,248,21,0,0,0,0,0,0,92,80,0,0,180,156,0,0,44,81,0,0,205,156,0,0,0,0,0,0,1,0,0,0,72,26,0,0,0,0,0,0,92,80,0,0,223,157,0,0,132,80,0,0,248,157,0,0,240,26,0,0,0,0,0,0,132,80,0,0,15,158,0,0,104,26,0,0,0,0,0,0,92,80,0,0,186,158,0,0,132,80,0,0,26,159,0,0,168,26,0,0,0,0,0,0,132,80,0,0,199,158,0,0,184,26,0,0,0,0,0,0,92,80,0,0,232,158,0,0,132,80,0,0,245,158,0,0,152,26,0,0,0,0,0,0,132,80,0,0,11,160,0,0,144,26,0,0,0,0,0,0,132,80,0,0,24,160,0,0,144,26,0,0,0,0,0,0,132,80,0,0,40,160,0,0,144,26,0,0,0,0,0,0,132,80,0,0,58,160,0,0,224,26,0,0,0,0,0,0,132,80,0,0,89,160,0,0,144,26,0,0,0,0,0,0,132,80,0,0,137,160,0,0,168,26,0,0,0,0,0,0,132,80,0,0,101,160,0,0,32,27,0,0,0,0,0,0,132,80,0,0,171,160,0,0,168,26,0,0,0,0,0,0,16,81,0,0,211,160,0,0,132,80,0,0,213,160,0,0,152,26,0,0,0,0,0,0,0,0,0,0,72,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,88,0,0,0,3,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,104,0,0,0,5,0,0,0,6,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,144,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,160,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,176,0,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,192,0,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,232,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,5,0,0,0,8,0,0,0,0,0,0,0,208,0,0,0,9,0,0,0,10,0,0,0,6,0,0,0,8,0,0,0,112,0,0,0,0,0,0,0,168,2,0,0,11,0,0,0,12,0,0,0,104,0,0,0,248,255,255,255,168,2,0,0,13,0,0,0,14,0,0,0,144,255,255,255,144,255,255,255,168,2,0,0,15,0,0,0,16,0,0,0,112,0,0,0,0,0,0,0,8,21,0,0,17,0,0,0,18,0,0,0,144,255,255,255,144,255,255,255,8,21,0,0,19,0,0,0,20,0,0,0,120,28,0,0,224,41,0,0,180,28,0,0,200,28,0,0,28,42,0,0,48,42,0,0,8,42,0,0,244,41,0,0,160,28,0,0,140,28,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,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,63,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,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,63,0,0,0,0,0,0,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,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,118,110,0,0,191,186,0,0,123,110,0,0,48,148,0,0,125,110,0,0,128,110,0,0,191,186,0,0,133,110,0,0,191,186,0,0,137,110,0,0,140,110,0,0,174,102,0,0,120,110,0,0,191,186,0,0,48,148,0,0,177,102,0,0,128,110,0,0,130,110,0,0,191,186,0,0,135,110,0,0,191,186,0,0,140,110,0,0,142,110,0,0,118,110,0,0,123,110,0,0,191,186,0,0,125,110,0,0,128,110,0,0,180,102,0,0,133,110,0,0,191,186,0,0,137,110,0,0,191,186,0,0,174,102,0,0,118,110,0,0,183,102,0,0,48,148,0,0,191,186,0,0,128,110,0,0,130,110,0,0,133,110,0,0,135,110,0,0,191,186,0,0,140,110,0,0,191,186,0,0,118,110,0,0,120,110,0,0,123,110,0,0,125,110,0,0,191,186,0,0,180,102,0,0,133,110,0,0,186,102,0,0,137,110,0,0,191,186,0,0,174,102,0,0,191,186,0,0,183,102,0,0,123,110,0,0,189,102,0,0,128,110,0,0,191,186,0,0,133,110,0,0,135,110,0,0,137,110,0,0,140,110,0,0,191,186,0,0,118,110,0,0,191,186,0,0,123,110,0,0,48,148,0,0,125,110,0,0,130,110,0,0,191,186,0,0,135,110,0,0,192,102,0,0,140,110,0,0,142,110,0,0,191,186,0,0,120,110,0,0,191,186,0,0,48,148,0,0,177,102,0,0,128,110,0,0,133,110,0,0,191,186,0,0,137,110,0,0,140,110,0,0,174,102,0,0,118,110,0,0,191,186,0,0,123,110,0,0,191,186,0,0,125,110,0,0,128,110,0,0,180,102,0,0,135,110,0,0,191,186,0,0,140,110,0,0,142,110,0,0,118,110,0,0,120,110,0,0,191,186,0,0,48,148,0,0,191,186,0,0,128,110,0,0,130,110,0,0,133,110,0,0,137,110,0,0,191,186,0,0,174,102,0,0,118,110,0,0,183,102,0,0,123,110,0,0,191,186,0,0,125,110,0,0,191,186,0,0,180,102,0,0,133,110,0,0,186,102,0,0,140,110,0,0,191,186,0,0,118,110,0,0,120,110,0,0,123,110,0,0,48,148,0,0,191,186,0,0,128,110,0,0,191,186,0,0,133,110,0,0,135,110,0,0,137,110,0,0,142,110,0,0,191,186,0,0,120,110,0,0,195,102,0,0,48,148,0,0,177,102,0,0,191,186,0,0,130,110,0,0,191,186,0,0,135,110,0,0,192,102,0,0,140,110,0,0,198,102,0,0,191,186,0,0,25,97,0,0,27,97,0,0,30,97,0,0,32,97,0,0,191,186,0,0,34,97,0,0,191,186,0,0,69,96,0,0,36,97,0,0,71,96,0,0,56,0,0,0,0,0,0,0,56,21,0,0,21,0,0,0,22,0,0,0,200,255,255,255,200,255,255,255,56,21,0,0,23,0,0,0,24,0,0,0,56,0,0,0,0,0,0,0,224,1,0,0,25,0,0,0,26,0,0,0,200,255,255,255,200,255,255,255,224,1,0,0,27,0,0,0,28,0,0,0,0,0,0,0,208,1,0,0,29,0,0,0,30,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,3,0,0,0,8,0,0,0,92,38,0,0,52,38,0,0,72,38,0,0,112,38,0,0,84,40,0,0,28,0,0,0,140,40,0,0,160,40,0,0,48,0,0,0,104,40,0,0,0,0,0,0,136,1,0,0,31,0,0,0,32,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,5,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,9,0,0,0,3,0,0,0,10,0,0,0,9,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,33,0,0,0,34,0,0,0,0,0,0,0,248,0,0,0,35,0,0,0,36,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,5,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,9,0,0,0,3,0,0,0,10,0,0,0,9,0,0,0,10,0,0,0,7,0,0,0,11,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,33,0,0,0,34,0,0,0,0,0,0,0,80,1,0,0,37,0,0,0,38,0,0,0,11,0,0,0,240,255,255,255,80,1,0,0,39,0,0,0,40,0,0,0,0,0,0,0,72,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,112,1,0,0,1,0,0,0,1,0,0,0,41,0,0,0,42,0,0,0,36,0,0,0,0,0,0,0,40,1,0,0,43,0,0,0,44],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([11,0,0,0,12,0,0,0,45,0,0,0,240,255,255,255,40,1,0,0,46,0,0,0,47,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,40,1,0,0,13,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,76,0,0,0,0,0,0,0,192,1,0,0,51,0,0,0,52,0,0,0,180,255,255,255,180,255,255,255,192,1,0,0,53,0,0,0,54,0,0,0,28,0,0,0,140,40,0,0,160,40,0,0,48,0,0,0,76,0,0,0,0,0,0,0,8,21,0,0,17,0,0,0,18,0,0,0,180,255,255,255,180,255,255,255,8,21,0,0,19,0,0,0,20,0,0,0,0,0,0,0,72,2,0,0,59,0,0,0,60,0,0,0,14,0,0,0,0,0,0,0,40,2,0,0,61,0,0,0,62,0,0,0,14,0,0,0,244,255,255,255,40,2,0,0,63,0,0,0,64,0,0,0,32,0,0,0,0,0,0,0,8,2,0,0,65,0,0,0,66,0,0,0,14,0,0,0,15,0,0,0,67,0,0,0,244,255,255,255,8,2,0,0,68,0,0,0,69,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,8,2,0,0,16,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,0,0,0,0,96,2,0,0,73,0,0,0,74,0,0,0,7,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,17,0,0,0,4,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,128,2,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,13,0,0,0,18,0,0,0,0,0,0,0,152,2,0,0,79,0,0,0,80,0,0,0,12,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,19,0,0,0,2,0,0,0,2,0,0,0,20,0,0,0,4,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,112,0,0,0,0,0,0,0,104,21,0,0,81,0,0,0,82,0,0,0,104,0,0,0,248,255,255,255,104,21,0,0,83,0,0,0,84,0,0,0,144,255,255,255,144,255,255,255,104,21,0,0,85,0,0,0,86,0,0,0,104,0,0,0,0,0,0,0,56,21,0,0,21,0,0,0,22,0,0,0,152,255,255,255,152,255,255,255,56,21,0,0,23,0,0,0,24,0,0,0,0,0,0,0,184,2,0,0,87,0,0,0,88,0,0,0,21,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,1,0,0,0,89,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,224,2,0,0,90,0,0,0,91,0,0,0,21,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,2,0,0,0,92,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,254,109,0,0,8,110,0,0,18,110,0,0,28,110,0,0,38,110,0,0,48,110,0,0,58,110,0,0,68,110,0,0,78,110,0,0,88,110,0,0,98,110,0,0,108,110,0,0,118,110,0,0,120,110,0,0,123,110,0,0,48,148,0,0,125,110,0,0,128,110,0,0,130,110,0,0,133,110,0,0,135,110,0,0,137,110,0,0,140,110,0,0,142,110,0,0,0,0,0,0,240,2,0,0,93,0,0,0,94,0,0,0,21,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,28,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,3,0,0,0,95,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,29,0,0,0,6,0,0,0,30,0,0,0,52,128,183,57,145,11,78,59,191,209,14,60,46,145,139,60,228,217,229,60,139,225,42,61,151,84,109,61,98,244,156,61,118,23,200,61,48,214,247,61,52,246,21,62,79,7,50,62,211,246,79,62,128,153,111,62,32,97,136,62,174,160,153,62,197,114,171,62,249,189,189,62,18,104,208,62,84,86,227,62,122,109,246,62,67,201,4,63,214,84,14,63,247,203,23,63,4,33,33,63,157,70,42,63,169,47,51,63,112,207,59,63,160,25,68,63,75,2,76,63,44,126,83,63,115,130,90,63,58,5,97,63,17,253,102,63,116,97,108,63,183,42,113,63,231,81,117,63,49,209,120,63,119,163,123,63,185,196,125,63,244,49,127,63,16,233,127,63,16,233,127,63,244,49,127,63,185,196,125,63,119,163,123,63,49,209,120,63,231,81,117,63,183,42,113,63,116,97,108,63,17,253,102,63,58,5,97,63,115,130,90,63,44,126,83,63,75,2,76,63,160,25,68,63,112,207,59,63,169,47,51,63,157,70,42,63,4,33,33,63,247,203,23,63,214,84,14,63,67,201,4,63,122,109,246,62,84,86,227,62,18,104,208,62,249,189,189,62,197,114,171,62,174,160,153,62,32,97,136,62,128,153,111,62,211,246,79,62,79,7,50,62,52,246,21,62,48,214,247,61,118,23,200,61,98,244,156,61,151,84,109,61,139,225,42,61,228,217,229,60,46,145,139,60,191,209,14,60,145,11,78,59,52,128,183,57,202,221,231,58,170,211,129,60,77,158,50,61,33,147,172,61,56,243,11,62,12,32,76,62,40,128,138,62,74,66,178,62,185,54,220,62,3,151,3,63,182,248,24,63,202,165,45,63,162,8,65,63,255,148,82,63,255,203,97,63,121,63,110,63,112,149,119,63,101,138,125,63,23,243,127,63,73,190,126,63,144,244,121,63,153,184,113,63,246,69,102,63,124,239,87,63,235,28,71,63,229,71,52,63,169,248,31,63,39,194,10,63,179,123,234,62,174,14,192,62,55,112,151,62,84,140,99,62,15,66,32,62,83,208,205,61,108,118,100,61,244,109,193,60,173,219,160,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,96,0,0,0,97,0,0,0,21,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,34,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,4,0,0,0,98,0,0,0,23,0,0,0,24,0,0,0,28,0,0,0,26,0,0,0,27,0,0,0,35,0,0,0,7,0,0,0,36,0,0,0,0,0,0,0,16,3,0,0,99,0,0,0,100,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,2,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,5,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,47,0,0,0,8,0,0,0,48,0,0,0,0,0,0,0,56,3,0,0,102,0,0,0,103,0,0,0,0,0,0,0,64,3,0,0,104,0,0,0,105,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,6,0,0,0,106,0,0,0,31,0,0,0,36,0,0,0,37,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,9,0,0,0,51,0,0,0,0,0,0,0,80,3,0,0,107,0,0,0,108,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,7,0,0,0,109,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,10,0,0,0,51,0,0,0,0,0,0,0,96,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,104,3,0,0,112,0,0,0,113,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,8,0,0,0,106,0,0,0,31,0,0,0,36,0,0,0,37,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,11,0,0,0,51,0,0,0,0,0,0,0,208,3,0,0,114,0,0,0,115,0,0,0,116,0,0,0,5,0,0,0,117,0,0,0,0,0,0,0,176,3,0,0,41,0,0,0,16,0,0,0,17,0,0,0,52,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,119,0,0,0,0,0,0,0,160,3,0,0,120,0,0,0,121,0,0,0,122,0,0,0,5,0,0,0,123,0,0,0,0,0,0,0,128,3,0,0,47,0,0,0,20,0,0,0,21,0,0,0,53,0,0,0,1,0,0,0,42,0,0,0,48,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,124,0,0,0,0,0,0,0,224,3,0,0,49,0,0,0,22,0,0,0,23,0,0,0,54,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,50,0,0,0,24,0,0,0,46,0,0,0,19,0,0,0,125,0,0,0,126,0,0,0,0,0,0,0,240,3,0,0,49,0,0,0,22,0,0,0,23,0,0,0,54,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,125,0,0,0,127,0,0,0,0,0,0,0,0,4,0,0,51,0,0,0,25,0,0,0,26,0,0,0,55,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,52,0,0,0,27,0,0,0,128,0,0,0,129,0,0,0,0,0,0,0,16,4,0,0,51,0,0,0,25,0,0,0,26,0,0,0,55,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,128,0,0,0,130,0,0,0,0,0,0,0,64,4,0,0,131,0,0,0,132,0,0,0,133,0,0,0,5,0,0,0,134,0,0,0,0,0,0,0,32,4,0,0,53,0,0,0,28,0,0,0,29,0,0,0,56,0,0,0,2,0,0,0,54,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,135,0,0,0,0,0,0,0,112,4,0,0,136,0,0,0,137,0,0,0,138,0,0,0,5,0,0,0,139,0,0,0,0,0,0,0,80,4,0,0,55,0,0,0,30,0,0,0,31,0,0,0,57,0,0,0,3,0,0,0,56,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,140,0,0,0,0,0,0,0,160,4,0,0,141,0,0,0,142,0,0,0,143,0,0,0,5,0,0,0,144,0,0,0,0,0,0,0,144,4,0,0,57,0,0,0,32,0,0,0,33,0,0,0,58,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,145,0,0,0,146,0,0,0,0,0,0,0,128,4,0,0,57,0,0,0,32,0,0,0,33,0,0,0,58,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,58,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,145,0,0,0,147,0,0,0,0,0,0,0,176,4,0,0,148,0,0,0,149,0,0,0,150,0,0,0,5,0,0,0,151,0,0,0,0,0,0,0,192,4,0,0,152,0,0,0,153,0,0,0,154,0,0,0,5,0,0,0,155,0,0,0,1,0,0,0,2,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,244,52,0,0,5,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,174,178,0,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,104,53,0,0,5,0,0,0,0,0,0,0,0,0,0,0,59,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,7,0,0,0,182,178,0,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,104,53,0,0,224,53,0,0,9,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,7,0,0,0,190,182,0,0,0,4,0,0,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,95,112,137,0,255,9,47,15,236,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,82,0,0,244,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,20,0,0,156,0,0,0,157,0,0,0,0,0,0,0,224,20,0,0,158,0,0,0,159,0,0,0,0,0,0,0,248,20,0,0,73,0,0,0,160,0,0,0,7,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,17,0,0,0,4,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,0,21,0,0,161,0,0,0,162,0,0,0,59,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,60,0,0,0,61,0,0,0,12,0,0,0,62,0,0,0,63,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,8,0,0,0,0,0,0,0,8,21,0,0,17,0,0,0,18,0,0,0,248,255,255,255,248,255,255,255,8,21,0,0,19,0,0,0,20,0,0,0,8,0,0,0,0,0,0,0,32,21,0,0,163,0,0,0,164,0,0,0,248,255,255,255,248,255,255,255,32,21,0,0,165,0,0,0,166,0,0,0,4,0,0,0,0,0,0,0,56,21,0,0,21,0,0,0,22,0,0,0,252,255,255,255,252,255,255,255,56,21,0,0,23,0,0,0,24,0,0,0,4,0,0,0,0,0,0,0,80,21,0,0,167,0,0,0,168,0,0,0,252,255,255,255,252,255,255,255,80,21,0,0,169,0,0,0,170,0,0,0,0,0,0,0,136,21,0,0,171,0,0,0,172,0,0,0,11,0,0,0,0,0,0,0,152,21,0,0,173,0,0,0,174,0,0,0,64,0,0,0,9,0,0,0,14,0,0,0,15,0,0,0,10,0,0,0,0,0,0,0,168,21,0,0,161,0,0,0,175,0,0,0,60,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,65,0,0,0,61,0,0,0,12,0,0,0,62,0,0,0,63,0,0,0,34,0,0,0,16,0,0,0,36,0,0,0,0,0,0,0,184,21,0,0,73,0,0,0,176,0,0,0,61,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,66,0,0,0,2,0,0,0,2,0,0,0,17,0,0,0,4,0,0,0,11,0,0,0,17,0,0,0,37,0,0,0,0,0,0,0,200,21,0,0,161,0,0,0,177,0,0,0,62,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,60,0,0,0,61,0,0,0,12,0,0,0,67,0,0,0,68,0,0,0,38,0,0,0,13,0,0,0,35,0,0,0,0,0,0,0,216,21,0,0,73,0,0,0,178,0,0,0,63,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,69,0,0,0,70,0,0,0,39,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,232,21,0,0,179,0,0,0,180,0,0,0,181,0,0,0,1,0,0,0,14,0,0,0,18,0,0,0,0,0,0,0,8,22,0,0,182,0,0,0,183,0,0,0,181,0,0,0,2,0,0,0,15,0,0,0,19,0,0,0,0,0,0,0,24,22,0,0,184,0,0,0,185,0,0,0,181,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,88,22,0,0,186,0,0,0,187,0,0,0,181,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,144,22,0,0,188,0,0,0,189,0,0,0,181,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,208,22,0,0,190,0,0,0,191,0,0,0,181,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,8,23,0,0,192,0,0,0,193,0,0,0,181,0,0,0,71,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,8,23,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,0,0,0,0,64,23,0,0,194,0,0,0,195,0,0,0,181,0,0,0,79,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,64,23,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,112,23,0,0,196,0,0,0,197,0,0,0,181,0,0,0,1,0,0,0,0,0,0,0,152,23,0,0,198,0,0,0,199,0,0,0,181,0,0,0,2,0,0,0,0,0,0,0,184,23,0,0,200,0,0,0,201,0,0,0,181,0,0,0,87,0,0,0,88,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,89,0,0,0,68,0,0,0,69,0,0,0,0,0,0,0,224,23,0,0,202,0,0,0,203,0,0,0,181,0,0,0,90,0,0,0,91,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,92,0,0,0,74,0,0,0,75,0,0,0,0,0,0,0,0,24,0,0,204,0,0,0,205,0,0,0,181,0,0,0,93,0,0,0,94,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,95,0,0,0,80,0,0,0,81,0,0,0,0,0,0,0,32,24,0,0,206,0,0,0,207,0,0,0,181,0,0,0,96,0,0,0,97,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,98,0,0,0,86,0,0,0,87,0,0,0,0,0,0,0,64,24,0,0,208,0,0,0,209,0,0,0,181,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,104,24,0,0,210,0,0,0,211,0,0,0,181,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,144,24,0,0,212,0,0,0,213,0,0,0,181,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,184,24,0,0,214,0,0,0,215,0,0,0,181,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,224,24,0,0,216,0,0,0,217,0,0,0,181,0,0,0,20,0,0,0,7,0,0,0,88,0,0,0,0,0,0,0,8,25,0,0,218,0,0,0,219,0,0,0,181,0,0,0,21,0,0,0,8,0,0,0,89,0,0,0,0,0,0,0,96,25,0,0,220,0,0,0,221,0,0,0,181,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,40,25,0,0,220,0,0,0,222,0,0,0,181,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,144,25,0,0,223,0,0,0,224,0,0,0,181,0,0,0,5,0,0,0,6,0,0,0,13,0,0,0,102,0,0,0,103,0,0,0,14,0,0,0,104,0,0,0,0,0,0,0,208,25,0,0,225,0,0,0,226,0,0,0,181,0,0,0,0,0,0,0,224,25,0,0,227,0,0,0,228,0,0,0,181,0,0,0,40,0,0,0,22,0,0,0,41,0,0,0,23,0,0,0,42,0,0,0,9,0,0,0,24,0,0,0,15,0,0,0,0,0,0,0,40,26,0,0,229,0,0,0,230,0,0,0,181,0,0,0,105,0,0,0,106,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,0,0,0,0,56,26,0,0,231,0,0,0,232,0,0,0,181,0,0,0,107,0,0,0,108,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,248,21,0,0,220,0,0,0,233,0,0,0,181,0,0,0,0,0,0,0,8,26,0,0,220,0,0,0,234,0,0,0,181,0,0,0,25,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,43,0,0,0,26,0,0,0,44,0,0,0,27,0,0,0,45,0,0,0,13,0,0,0,28,0,0,0,16,0,0,0,0,0,0,0,112,25,0,0,220,0,0,0,235,0,0,0,181,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,109,0,0,0,110,0,0,0,18,0,0,0,111,0,0,0,0,0,0,0,176,25,0,0,220,0,0,0,236,0,0,0,181,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,112,0,0,0,113,0,0,0,20,0,0,0,114],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([56,25,0,0,220,0,0,0,237,0,0,0,181,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,112,26,0,0,238,0,0,0,239,0,0,0,11,0,0,0,2,0,0,0,177,158,0,0,0,0,0,0,152,26,0,0,240,0,0,0,241,0,0,0,242,0,0,0,243,0,0,0,29,0,0,0,9,0,0,0,1,0,0,0,16,0,0,0,0,0,0,0,192,26,0,0,240,0,0,0,244,0,0,0,242,0,0,0,243,0,0,0,29,0,0,0,10,0,0,0,2,0,0,0,17,0,0,0,0,0,0,0,208,26,0,0,245,0,0,0,246,0,0,0,115,0,0,0,0,0,0,0,224,26,0,0,247,0,0,0,248,0,0,0,116,0,0,0,0,0,0,0,240,26,0,0,249,0,0,0,250,0,0,0,11,0,0,0,0,0,0,0,0,27,0,0,247,0,0,0,251,0,0,0,116,0,0,0,0,0,0,0,16,27,0,0,59,0,0,0,252,0,0,0,117,0,0,0,0,0,0,0,64,27,0,0,240,0,0,0,253,0,0,0,242,0,0,0,243,0,0,0,30,0,0,0,0,0,0,0,88,27,0,0,240,0,0,0,254,0,0,0,242,0,0,0,243,0,0,0,29,0,0,0,11,0,0,0,3,0,0,0,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,49,48,78,78,76,83,67,104,114,111,109,97,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,50,49,80,105,112,101,114,65,100,97,112,116,101,114,73,110,116,101,114,102,97,99,101,69,0,58,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,56,67,104,111,114,100,105,110,111,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,54,84,117,110,105,110,103,69,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,54,67,111,117,110,116,105,110,103,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,49,56,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,54,65,115,115,105,103,110,101,100,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,49,48,78,78,76,83,67,104,114,111,109,97,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,56,67,104,111,114,100,105,110,111,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,54,84,117,110,105,110,103,69,69,0,105,110,118,97,108,105,100,32,106,115,111,110,58,32,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,97,116,32,116,111,112,32,108,101,118,101,108,0,109,97,112,58,58,97,116,58,32,32,107,101,121,32,110,111,116,32,102,111,117,110,100,0,102,97,105,108,101,100,32,116,111,32,99,111,110,115,116,114,117,99,116,32,112,108,117,103,105,110,32,119,105,116,104,32,107,101,121,32,0,110,111,32,97,100,97,112,116,101,114,32,102,111,114,32,112,108,117,103,105,110,32,107,101,121,32,0,99,111,110,102,105,103,117,114,97,116,105,111,110,32,102,97,105,108,101,100,32,40,119,114,111,110,103,32,99,104,97,110,110,101,108,32,99,111,117,110,116,44,32,115,116,101,112,32,115,105,122,101,44,32,98,108,111,99,107,32,115,105,122,101,63,41,0,117,110,107,110,111,119,110,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,112,108,117,103,105,110,32,104,97,115,32,110,111,116,32,98,101,101,110,32,99,111,110,102,105,103,117,114,101,100,0,104,97,110,100,108,101,0,102,101,97,116,117,114,101,115,0,109,101,116,104,111,100,0,112,114,111,99,101,115,115,0,114,101,115,117,108,116,0,105,100,0,102,101,97,116,117,114,101,86,97,108,117,101,115,0,108,97,98,101,108,0,116,105,109,101,115,116,97,109,112,0,100,117,114,97,116,105,111,110,0,110,0,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,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,48,49,50,51,52,53,54,55,56,57,43,47,0,115,116,97,114,116,95,98,105,116,32,43,32,98,105,116,115,95,99,111,117,110,116,32,60,32,49,54,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,112,105,112,101,114,45,118,97,109,112,45,106,115,47,46,46,47,112,105,112,101,114,45,118,97,109,112,45,99,112,112,47,101,120,116,47,98,97,115,101,45,110,47,105,110,99,108,117,100,101,47,98,97,115,101,110,46,104,112,112,0,101,120,116,114,97,99,116,95,111,118,101,114,108,97,112,112,105,110,103,95,98,105,116,115,0,106,115,111,110,114,112,99,0,50,46,48,0,108,105,115,116,0,108,111,97,100,0,99,111,110,102,105,103,117,114,101,0,102,105,110,105,115,104,0,105,110,118,97,108,105,100,0,99,111,100,101,0,109,101,115,115,97,103,101,0,101,114,114,111,114,32,105,110,32,0,32,114,101,113,117,101,115,116,58,32,0,101,114,114,111,114,0,117,110,107,110,111,119,110,32,111,114,32,105,110,118,97,108,105,100,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,112,108,117,103,105,110,32,104,97,115,32,97,108,114,101,97,100,121,32,98,101,101,110,32,99,111,110,102,105,103,117,114,101,100,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,115,32,115,117,112,112,108,105,101,100,0,119,114,111,110,103,32,98,108,111,99,107,32,115,105,122,101,32,115,117,112,112,108,105,101,100,0,105,110,118,97,108,105,100,32,114,101,113,117,101,115,116,0,112,97,114,97,109,115,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,109,101,116,104,111,100,0,101,120,112,101,99,116,101,100,32,118,97,108,117,101,32,34,0,34,32,102,111,114,32,116,121,112,101,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,115,0,110,117,109,98,101,114,32,111,114,32,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,105,100,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,106,115,111,110,114,112,99,0,117,110,101,120,112,101,99,116,101,100,32,102,105,101,108,100,32,34,0,34,32,105,110,32,114,112,99,32,114,101,113,117,101,115,116,32,111,98,106,101,99,116,0,112,114,111,99,101,115,115,73,110,112,117,116,0,109,97,108,102,111,114,109,101,100,32,112,114,111,99,101,115,115,32,114,101,113,117,101,115,116,58,32,0,105,110,112,117,116,66,117,102,102,101,114,115,0,101,120,112,101,99,116,101,100,32,97,114,114,97,121,115,32,111,114,32,115,116,114,105,110,103,115,32,105,110,32,105,110,112,117,116,66,117,102,102,101,114,115,32,97,114,114,97,121,0,105,110,118,97,108,105,100,32,86,97,109,112,58,58,82,101,97,108,84,105,109,101,32,111,98,106,101,99,116,32,0,70,97,105,108,101,100,32,116,111,32,99,111,110,102,105,103,117,114,101,32,112,108,117,103,105,110,0,111,117,116,112,117,116,76,105,115,116,0,115,116,101,112,83,105,122,101,0,98,108,111,99,107,83,105,122,101,0,102,114,97,109,105,110,103,0,98,97,115,105,99,0,99,111,110,102,105,103,117,114,101,100,0,117,110,105,116,0,79,110,101,83,97,109,112,108,101,80,101,114,83,116,101,112,0,70,105,120,101,100,83,97,109,112,108,101,82,97,116,101,0,86,97,114,105,97,98,108,101,83,97,109,112,108,101,82,97,116,101,0,115,97,109,112,108,101,84,121,112,101,0,115,97,109,112,108,101,82,97,116,101,0,104,97,115,68,117,114,97,116,105,111,110,0,98,105,110,67,111,117,110,116,0,98,105,110,78,97,109,101,115,0,101,120,116,101,110,116,115,0,113,117,97,110,116,105,122,101,83,116,101,112,0,109,105,110,0,109,97,120,0,105,100,101,110,116,105,102,105,101,114,0,110,97,109,101,0,100,101,115,99,114,105,112,116,105,111,110,0,99,111,110,102,105,103,117,114,97,116,105,111,110,0,109,97,108,102,111,114,109,101,100,32,99,111,110,102,105,103,117,114,97,116,105,111,110,32,114,101,113,117,101,115,116,58,32,0,99,104,97,110,110,101,108,67,111,117,110,116,0,109,97,108,102,111,114,109,101,100,32,112,108,117,103,105,110,32,99,111,110,102,105,103,117,114,97,116,105,111,110,58,32,0,109,97,108,102,111,114,109,101,100,32,102,114,97,109,105,110,103,58,32,0,112,97,114,97,109,101,116,101,114,86,97,108,117,101,115,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,118,97,108,117,101,115,0,110,117,109,98,101,114,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,118,97,108,117,101,0,99,117,114,114,101,110,116,80,114,111,103,114,97,109,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,114,111,103,114,97,109,32,110,97,109,101,0,70,97,105,108,101,100,32,116,111,32,108,111,97,100,32,112,108,117,103,105,110,0,115,116,97,116,105,99,68,97,116,97,0,100,101,102,97,117,108,116,67,111,110,102,105,103,117,114,97,116,105,111,110,0,107,101,121,0,109,97,107,101,114,0,114,105,103,104,116,115,0,118,101,114,115,105,111,110,0,99,97,116,101,103,111,114,121,0,109,105,110,67,104,97,110,110,101,108,67,111,117,110,116,0,109,97,120,67,104,97,110,110,101,108,67,111,117,110,116,0,112,97,114,97,109,101,116,101,114,115,0,112,114,111,103,114,97,109,115,0,105,110,112,117,116,68,111,109,97,105,110,0,84,105,109,101,68,111,109,97,105,110,0,70,114,101,113,117,101,110,99,121,68,111,109,97,105,110,0,98,97,115,105,99,79,117,116,112,117,116,73,110,102,111,0,100,101,102,97,117,108,116,86,97,108,117,101,0,118,97,108,117,101,78,97,109,101,115,0,69,82,82,79,82,58,32,68,117,112,108,105,99,97,116,101,32,112,108,117,103,105,110,32,104,97,110,100,108,101,32,0,32,102,111,114,32,112,108,117,103,105,110,32,0,32,40,97,108,114,101,97,100,121,32,117,115,101,100,32,102,111,114,32,112,108,117,103,105,110,32,0,68,117,112,108,105,99,97,116,101,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,55,68,101,102,97,117,108,116,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,48,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,49,48,112,105,112,101,114,95,118,97,109,112,50,55,68,101,102,97,117,108,116,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,105,110,112,117,116,83,97,109,112,108,101,82,97,116,101,0,109,97,108,102,111,114,109,101,100,32,108,111,97,100,32,114,101,113,117,101,115,116,58,32,0,97,100,97,112,116,101,114,70,108,97,103,115,0,97,114,114,97,121,32,101,120,112,101,99,116,101,100,32,102,111,114,32,97,100,97,112,116,101,114,32,102,108,97,103,115,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,97,100,97,112,116,101,114,32,102,108,97,103,0,65,100,97,112,116,73,110,112,117,116,68,111,109,97,105,110,0,65,100,97,112,116,67,104,97,110,110,101,108,67,111,117,110,116,0,65,100,97,112,116,66,117,102,102,101,114,83,105,122,101,0,65,100,97,112,116,65,108,108,83,97,102,101,0,65,100,97,112,116,65,108,108,0,105,110,118,97,108,105,100,32,97,100,97,112,116,101,114,32,102,108,97,103,32,115,116,114,105,110,103,58,32,0,97,118,97,105,108,97,98,108,101,0,102,114,111,109,0,97,114,114,97,121,32,101,120,112,101,99,116,101,100,32,102,111,114,32,102,114,111,109,32,102,105,101,108,100,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,101,108,101,109,101,110,116,32,105,110,32,102,114,111,109,32,97,114,114,97,121,0,117,110,107,110,111,119,110,32,111,114,32,117,110,101,120,112,101,99,116,101,100,32,114,101,113,117,101,115,116,47,114,101,115,112,111,110,115,101,32,116,121,112,101,32,34,0,34,0,108,101,110,75,101,114,110,101,108,32,37,32,50,32,33,61,32,48,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,110,110,108,115,45,99,104,114,111,109,97,47,99,104,114,111,109,97,109,101,116,104,111,100,115,46,99,112,112,0,83,112,101,99,105,97,108,67,111,110,118,111,108,117,116,105,111,110,0,44,59,32,0,61,0,99,104,111,114,100,46,100,105,99,116,0,86,65,77,80,95,80,65,84,72,0,36,72,79,77,69,47,118,97,109,112,58,36,72,79,77,69,47,46,118,97,109,112,58,47,117,115,114,47,108,111,99,97,108,47,108,105,98,47,118,97,109,112,58,47,117,115,114,47,108,105,98,47,118,97,109,112,0,72,79,77,69,0,36,72,79,77,69,0,47,0,114,0,109,0,109,55,98,53,0,54,0,55,0,109,97,106,55,0,109,55,0,109,54,0,100,105,109,0,97,117,103,0,58,109,105,110,0,58,104,100,105,109,55,0,58,109,97,106,54,0,58,55,0,58,109,97,106,55,0,58,109,105,110,55,0,58,109,105,110,54,0,58,100,105,109,0,58,97,117,103,0,35,0,118,97,108,105,100,95,0,46,46,47,46,46,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,116,111,107,101,110,95,105,116,101,114,97,116,111,114,46,104,112,112,0,100,101,114,101,102,101,114,101,110,99,101,0,73,78,70,73,78,73,84,89,0,105,110,99,114,101,109,101,110,116,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,62,32,0,50,0,98,51,0,51,0,52,0,53,0,98,55,0,105,110,105,116,105,97,108,105,122,101,100,95,0,46,46,47,46,46,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,105,111,115,116,114,101,97,109,115,47,100,101,116,97,105,108,47,111,112,116,105,111,110,97,108,46,104,112,112,0,111,112,101,114,97,116,111,114,42,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,48,98,97,115,105,99,95,102,105,108,101,73,99,69,69,0,110,111,32,119,114,105,116,101,32,97,99,99,101,115,115,0,78,53,98,111,111,115,116,57,101,120,99,101,112,116,105,111,110,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,105,109,112,108,73,78,83,48,95,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,69,69,69,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,98,97,115,101,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,69,69,0,112,120,32,33,61,32,48,0,46,46,47,46,46,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,115,109,97,114,116,95,112,116,114,47,115,104,97,114,101,100,95,112,116,114,46,104,112,112,0,111,112,101,114,97,116,111,114,45,62,0,112,117,116,98,97,99,107,32,98,117,102,102,101,114,32,102,117,108,108,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,56,105,110,100,105,114,101,99,116,95,115,116,114,101,97,109,98,117,102,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,48,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,54,108,105,110,107,101,100,95,115,116,114,101,97,109,98,117,102,73,99,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,51,115,116,114,101,97,109,95,98,117,102,102,101,114,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,52,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,48,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,49,115,116,114,101,97,109,95,98,97,115,101,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,53,95,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,83,55,95,69,69,69,69,0,78,53,98,111,111,115,116,49,54,98,97,115,101,95,102,114,111,109,95,109,101,109,98,101,114,73,78,83,95,57,105,111,115,116,114,101,97,109,115,49,51,115,116,114,101,97,109,95,98,117,102,102,101,114,73,78,83,49,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,49,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,76,105,48,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,115,116,114,101,97,109,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,52,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,71,35,0,68,98,0,68,35,0,65,35,0,69,35,0,66,35,0,71,98,0,67,98,0,49,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,105,109,112,108,73,78,83,48,95,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,95,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,69,69,69,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,95,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,69,69,0,78,53,98,111,111,115,116,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,0,98,97,100,32,108,101,120,105,99,97,108,32,99,97,115,116,58,32,115,111,117,114,99,101,32,116,121,112,101,32,118,97,108,117,101,32,99,111,117,108,100,32,110,111,116,32,98,101,32,105,110,116,101,114,112,114,101,116,101,100,32,97,115,32,116,97,114,103,101,116,0,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,50,49,95,95,98,97,115,105,99,95,115,116,114,105,110,103,95,99,111,109,109,111,110,73,76,98,49,69,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,55,98,97,115,105,99,95,117,110,108,111,99,107,101,100,98,117,102,73,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,50,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,99,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,54,98,97,115,105,99,95,112,111,105,110,116,101,114,98,117,102,73,99,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,50,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,97,108,114,101,97,100,121,32,111,112,101,110,0,112,32,61,61,32,48,32,124,124,32,112,32,33,61,32,112,120,0,114,101,115,101,116,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,55,115,112,95,99,111,117,110,116,101,100,95,105,109,112,108,95,112,73,78,83,95,57,105,111,115,116,114,101,97,109,115,49,48,98,97,115,105,99,95,102,105,108,101,73,99,69,52,105,109,112,108,69,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,53,115,112,95,99,111,117,110,116,101,100,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,102,105,108,101,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,102,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,99,104,114,111,109,97,110,111,114,109,97,108,105,122,101,0,112,114,101,115,101,116,0,99,104,114,111,109,97,32,110,111,114,109,97,108,105,122,97,116,105,111,110,0,72,111,119,32,115,104,97,108,108,32,116,104,101,32,99,104,114,111,109,97,32,118,101,99,116,111,114,32,98,101,32,110,111,114,109,97,108,105,122,101,100,63,0,110,111,110,101,0,109,97,120,105,109,117,109,32,110,111,114,109,0,76,49,32,110,111,114,109,0,76,50,32,110,111,114,109,0,71,80,76,0,77,97,116,116,104,105,97,115,32,77,97,117,99,104,0,56,78,78,76,83,66,97,115,101,0,78,49,49,95,86,97,109,112,80,108,117,103,105,110,52,86,97,109,112,54,80,108,117,103,105,110,69,0,78,49,49,95,86,97,109,112,80,108,117,103,105,110,52,86,97,109,112,49,48,80,108,117,103,105,110,66,97,115,101,69,0,108,111,103,102,114,101,113,115,112,101,99,0,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,0,65,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,32,40,99,111,110,115,116,97,110,116,32,81,41,32,116,104,97,116,32,105,115,32,111,98,116,97,105,110,101,100,32,98,121,32,99,111,115,105,110,101,32,102,105,108,116,101,114,32,109,97,112,112,105,110,103,46,0,116,117,110,101,100,108,111,103,102,114,101,113,115,112,101,99,0,84,117,110,101,100,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,0,65,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,32,40,99,111,110,115,116,97,110,116,32,81,41,32,116,104,97,116,32,105,115,32,111,98,116,97,105,110,101,100,32,98,121,32,99,111,115,105,110,101,32,102,105,108,116,101,114,32,109,97,112,112,105,110,103,44,32,116,104,101,110,32,105,116,115,32,116,117,110,101,100,32,117,115,105,110,103,32,116,104,101,32,101,115,116,105,109,97,116,101,100,32,116,117,110,105,110,103,32,102,114,101,113,117,101,110,99,121,46,0,115,101,109,105,116,111,110,101,115,112,101,99,116,114,117,109,0,83,101,109,105,116,111,110,101,32,83,112,101,99,116,114,117,109,0,65,32,115,101,109,105,116,111,110,101,45,115,112,97,99,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,32,100,101,114,105,118,101,100,32,102,114,111,109,32,116,104,101,32,116,104,105,114,100,45,111,102,45,97,45,115,101,109,105,116,111,110,101,45,115,112,97,99,101,100,32,116,117,110,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,46,0,99,104,114,111,109,97,0,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,99,104,114,111,109,97,103,114,97,109,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,44,32,119,105,116,104,32,97,110,32,101,109,112,104,97,115,105,115,32,111,110,32,116,104,101,32,109,101,100,105,117,109,32,110,111,116,101,32,114,97,110,103,101,46,0,98,97,115,115,99,104,114,111,109,97,0,66,97,115,115,32,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,98,97,115,115,32,99,104,114,111,109,97,103,114,97,109,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,44,32,119,105,116,104,32,97,110,32,101,109,112,104,97,115,105,115,32,111,110,32,116,104,101,32,98,97,115,115,32,110,111,116,101,32,114,97,110,103,101,46,0,98,111,116,104,99,104,114,111,109,97,0,67,104,114,111,109,97,103,114,97,109,32,97,110,100,32,66,97,115,115,32,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,99,104,114,111,109,97,103,114,97,109,32,97,110,100,32,98,97,115,115,32,99,104,114,111,109,97,103,114,97,109,32,40,115,116,97,99,107,101,100,32,111,110,32,116,111,112,32,111,102,32,101,97,99,104,32,111,116,104,101,114,41,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,46,0,65,32,32,40,98,97,115,115,41,0,66,98,32,40,98,97,115,115,41,0,66,32,32,40,98,97,115,115,41,0,67,32,32,40,98,97,115,115,41,0,67,35,32,40,98,97,115,115,41,0,68,32,32,40,98,97,115,115,41,0,69,98,32,40,98,97,115,115,41,0,69,32,32,40,98,97,115,115,41,0,70,32,32,40,98,97,115,115,41,0,70,35,32,40,98,97,115,115,41,0,71,32,32,40,98,97,115,115,41,0,65,98,32,40,98,97,115,115,41,0,65,0,66,98,0,66,0,67,35,0,68,0,69,98,0,69,0,70,0,70,35,0,71,0,65,98,0,84,104,105,115,32,112,108,117,103,105,110,32,112,114,111,118,105,100,101,115,32,97,32,110,117,109,98,101,114,32,111,102,32,102,101,97,116,117,114,101,115,32,100,101,114,105,118,101,100,32,102,114,111,109,32,97,32,68,70,84,45,98,97,115,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,97,109,112,108,105,116,117,100,101,32,115,112,101,99,116,114,117,109,58,32,115,111,109,101,32,118,97,114,105,97,110,116,115,32,111,102,32,116,104,101,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,44,32,105,110,99,108,117,100,105,110,103,32,97,32,115,101,109,105,116,111,110,101,32,115,112,101,99,116,114,117,109,32,100,101,114,105,118,101,100,32,102,114,111,109,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,117,115,105,110,103,32,116,104,101,32,78,78,76,83,32,97,108,103,111,114,105,116,104,109,59,32,97,110,100,32,98,97,115,101,100,32,111,110,32,116,104,105,115,32,115,101,109,105,116,111,110,101,32,115,112,101,99,116,114,117,109,44,32,100,105,102,102,101,114,101,110,116,32,99,104,114,111,109,97,32,102,101,97,116,117,114,101,115,46,0,78,78,76,83,32,67,104,114,111,109,97,0,110,110,108,115,45,99,104,114,111,109,97,0,49,48,78,78,76,83,67,104,114,111,109,97,0,101,115,116,105,109,97,116,101,100,32,116,117,110,105,110,103,58,32,37,48,46,49,102,32,72,122,0,69,82,82,79,82,58,32,110,101,103,97,116,105,118,101,32,118,97,108,117,101,32,105,110,32,108,111,103,102,114,101,113,32,115,112,101,99,116,114,117,109,0,87,65,82,78,73,78,71,58,32,105,110,116,101,114,105,109,32,99,104,114,111,109,97,32,99,111,110,116,97,105,110,115,32,101,120,116,114,101,109,101,32,99,104,111,114,100,32,118,97,108,117,101,32,0,44,32,99,108,105,112,112,105,110,103,32,116,104,105,115,32,97,110,100,32,97,110,121,32,111,116,104,101,114,115,32,116,104,97,116,32,97,112,112,101,97,114,0,78,0,115,105,109,112,108,101,99,104,111,114,100,0,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,69,115,116,105,109,97,116,101,100,32,99,104,111,114,100,32,116,105,109,101,115,32,97,110,100,32,108,97,98,101,108,115,46,0,99,104,111,114,100,110,111,116,101,115,0,78,111,116,101,32,82,101,112,114,101,115,101,110,116,97,116,105,111,110,32,111,102,32,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,65,32,115,105,109,112,108,101,32,114,101,112,114,101,115,101,110,116,97,116,105,111,110,32,111,102,32,116,104,101,32,101,115,116,105,109,97,116,101,100,32,99,104,111,114,100,32,119,105,116,104,32,98,97,115,115,32,110,111,116,101,32,40,105,102,32,97,112,112,108,105,99,97,98,108,101,41,32,97,110,100,32,99,104,111,114,100,32,110,111,116,101,115,46,0,77,73,68,73,32,117,110,105,116,115,0,104,97,114,109,111,110,105,99,99,104,97,110,103,101,0,72,97,114,109,111,110,105,99,32,67,104,97,110,103,101,32,86,97,108,117,101,0,65,110,32,105,110,100,105,99,97,116,105,111,110,32,111,102,32,116,104,101,32,108,105,107,101,108,105,104,111,111,100,32,111,102,32,104,97,114,109,111,110,105,99,32,99,104,97,110,103,101,46,32,68,101,112,101,110,100,115,32,111,110,32,116,104,101,32,99,104,111,114,100,32,100,105,99,116,105,111,110,97,114,121,46,32,67,97,108,99,117,108,97,116,105,111,110,32,105,115,32,100,105,102,102,101,114,101,110,116,32,100,101,112,101,110,100,105,110,103,32,111,110,32,119,104,101,116,104,101,114,32,116,104,101,32,86,105,116,101,114,98,105,32,97,108,103,111,114,105,116,104,109,32,105,115,32,117,115,101,100,32,102,111,114,32,99,104,111,114,100,32,101,115,116,105,109,97,116,105,111,110,44,32,111,114,32,116,104,101,32,115,105,109,112,108,101,32,99,104,111,114,100,32,101,115,116,105,109,97,116,101,46,0,108,111,103,108,105,107,101,108,105,104,111,111,100,0,76,111,103,45,76,105,107,101,108,105,104,111,111,100,32,111,102,32,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,76,111,103,97,114,105,116,104,109,32,111,102,32,116,104,101,32,108,105,107,101,108,105,104,111,111,100,32,118,97,108,117,101,32,111,102,32,116,104,101,32,115,105,109,112,108,101,32,99,104,111,114,100,32,101,115,116,105,109,97,116,101,46,0,117,115,101,78,78,76,83,0,117,115,101,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,40,78,78,76,83,41,0,84,111,103,103,108,101,115,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,40,78,78,76,83,41,46,0,116,117,110,105,110,103,109,111,100,101,0,116,117,110,105,110,103,32,109,111,100,101,0,84,117,110,105,110,103,32,99,97,110,32,98,101,32,112,101,114,102,111,114,109,101,100,32,108,111,99,97,108,108,121,32,111,114,32,111,110,32,116,104,101,32,119,104,111,108,101,32,101,120,116,114,97,99,116,105,111,110,32,115,101,103,109,101,110,116,46,32,76,111,99,97,108,32,116,117,110,105,110,103,32,105,115,32,111,110,108,121,32,97,100,118,105,115,97,98,108,101,32,119,104,101,110,32,116,104,101,32,116,117,110,105,110,103,32,105,115,32,108,105,107,101,108,121,32,116,111,32,99,104,97,110,103,101,32,111,118,101,114,32,116,104,101,32,97,117,100,105,111,44,32,102,111,114,32,101,120,97,109,112,108,101,32,105,110,32,112,111,100,99,97,115,116,115,44,32,111,114,32,105,110,32,97,32,99,97,112,112,101,108,108,97,32,115,105,110,103,105,110,103,46,0,103,108,111,98,97,108,32,116,117,110,105,110,103,0,108,111,99,97,108,32,116,117,110,105,110,103,0,119,104,105,116,101,110,105,110,103,0,115,112,101,99,116,114,97,108,32,119,104,105,116,101,110,105,110,103,0,83,112,101,99,116,114,97,108,32,119,104,105,116,101,110,105,110,103,58,32,110,111,32,119,104,105,116,101,110,105,110,103,32,45,32,48,59,32,119,104,105,116,101,110,105,110,103,32,45,32,49,46,0,115,0,115,112,101,99,116,114,97,108,32,115,104,97,112,101,0,68,101,116,101,114,109,105,110,101,115,32,104,111,119,32,105,110,100,105,118,105,100,117,97,108,32,110,111,116,101,115,32,105,110,32,116,104,101,32,110,111,116,101,32,100,105,99,116,105,111,110,97,114,121,32,108,111,111,107,58,32,104,105,103,104,101,114,32,118,97,108,117,101,115,32,109,101,97,110,32,109,111,114,101,32,100,111,109,105,110,97,110,116,32,104,105,103,104,101,114,32,104,97,114,109,111,110,105,99,115,46,0,98,111,111,115,116,110,0,98,111,111,115,116,32,78,0,66,111,111,115,116,32,108,105,107,101,108,105,104,111,111,100,32,111,102,32,116,104,101,32,78,32,40,110,111,32,99,104,111,114,100,41,32,108,97,98,101,108,46,0,117,115,101,104,97,114,116,101,115,121,110,116,97,120,0,117,115,101,32,72,97,114,116,101,32,115,121,110,116,97,120,0,85,115,101,32,116,104,101,32,99,104,111,114,100,32,115,121,110,116,97,120,32,112,114,111,112,111,115,101,100,32,98,121,32,72,97,114,116,101,0,110,111,0,121,101,115,0,67,104,111,114,100,105,110,111,32,112,114,111,118,105,100,101,115,32,97,32,115,105,109,112,108,101,32,99,104,111,114,100,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,98,97,115,101,100,32,111,110,32,78,78,76,83,32,67,104,114,111,109,97,32,40,97,115,32,105,110,32,116,104,101,32,78,78,76,83,32,67,104,114,111,109,97,32,112,108,117,103,105,110,41,46,32,67,104,111,114,100,32,112,114,111,102,105,108,101,115,32,103,105,118,101,110,32,98,121,32,116,104,101,32,117,115,101,114,32,105,110,32,116,104,101,32,102,105,108,101,32,99,104,111,114,100,46,100,105,99,116,32,97,114,101,32,117,115,101,100,32,116,111,32,99,97,108,99,117,108,97,116,101,32,102,114,97,109,101,45,119,105,115,101,32,99,104,111,114,100,32,115,105,109,105,108,97,114,105,116,105,101,115,46,32,65,32,115,105,109,112,108,101,32,40,110,111,110,45,115,116,97,116,101,45,111,102,45,116,104,101,45,97,114,116,33,41,32,97,108,103,111,114,105,116,104,109,32,115,109,111,111,116,104,115,32,116,104,101,115,101,32,116,111,32,112,114,111,118,105,100,101,32,97,32,99,104,111,114,100,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,117,115,105,110,103,32,97,32,115,116,97,110,100,97,114,100,32,72,77,77,47,86,105,116,101,114,98,105,32,97,112,112,114,111,97,99,104,46,0,67,104,111,114,100,105,110,111,0,99,104,111,114,100,105,110,111,0,56,67,104,111,114,100,105,110,111,0,37,48,46,49,102,32,72,122,0,116,117,110,105,110,103,0,84,117,110,105,110,103,0,82,101,116,117,114,110,115,32,97,32,115,105,110,103,108,101,32,108,97,98,101,108,32,40,97,116,32,116,105,109,101,32,48,32,115,101,99,111,110,100,115,41,32,99,111,110,116,97,105,110,105,110,103,32,97,110,32,101,115,116,105,109,97,116,101,32,111,102,32,116,104,101,32,99,111,110,99,101,114,116,32,112,105,116,99,104,32,105,110,32,72,122,46,0,72,122,0,108,111,99,97,108,116,117,110,105,110,103,0,76,111,99,97,108,32,84,117,110,105,110,103,0,82,101,116,117,114,110,115,32,97,32,116,117,110,105,110,103,32,101,115,116,105,109,97,116,101,32,97,116,32,101,118,101,114,121,32,97,110,97,108,121,115,105,115,32,102,114,97,109,101,44,32,97,110,32,97,118,101,114,97,103,101,32,111,102,32,116,104,101,32,40,114,101,99,101,110,116,41,32,112,114,101,118,105,111,117,115,32,102,114,97,109,101,45,119,105,115,101,32,101,115,116,105,109,97,116,101,115,32,111,102,32,116,104,101,32,99,111,110,99,101,114,116,32,112,105,116,99,104,32,105,110,32,72,122,46,0,114,111,108,108,111,110],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20484);allocate([0,98,97,115,115,32,110,111,105,115,101,32,116,104,114,101,115,104,111,108,100,0,67,111,110,115,105,100,101,114,32,116,104,101,32,99,117,109,117,108,97,116,105,118,101,32,101,110,101,114,103,121,32,115,112,101,99,116,114,117,109,32,40,102,114,111,109,32,108,111,119,32,116,111,32,104,105,103,104,32,102,114,101,113,117,101,110,99,105,101,115,41,46,32,65,108,108,32,98,105,110,115,32,98,101,108,111,119,32,116,104,101,32,102,105,114,115,116,32,98,105,110,32,119,104,111,115,101,32,99,117,109,117,108,97,116,105,118,101,32,101,110,101,114,103,121,32,101,120,99,101,101,100,115,32,116,104,101,32,113,117,97,110,116,105,108,101,32,91,98,97,115,115,32,110,111,105,115,101,32,116,104,114,101,115,104,111,108,100,93,32,120,32,91,116,111,116,97,108,32,101,110,101,114,103,121,93,32,119,105,108,108,32,98,101,32,115,101,116,32,116,111,32,48,46,32,65,32,116,104,114,101,115,104,111,108,100,32,118,97,108,117,101,32,111,102,32,48,32,109,101,97,110,115,32,116,104,97,116,32,110,111,32,98,105,110,115,32,119,105,108,108,32,98,101,32,99,104,97,110,103,101,100,46,0,37,0,84,104,101,32,116,117,110,105,110,103,32,112,108,117,103,105,110,32,99,97,110,32,101,115,116,105,109,97,116,101,32,116,104,101,32,108,111,99,97,108,32,97,110,100,32,103,108,111,98,97,108,32,116,117,110,105,110,103,32,111,102,32,112,105,101,99,101,46,32,84,104,101,32,115,97,109,101,32,116,117,110,105,110,103,32,109,101,116,104,111,100,32,105,115,32,117,115,101,100,32,102,111,114,32,116,104,101,32,78,78,76,83,32,67,104,114,111,109,97,32,97,110,100,32,67,104,111,114,100,105,110,111,32,112,108,117,103,105,110,115,46,0,54,84,117,110,105,110,103,0,69,82,82,79,82,58,32,109,97,116,114,105,120,32,115,105,122,101,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,54,80,108,117,103,105,110,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,49,48,80,108,117,103,105,110,66,97,115,101,69,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,112,114,111,99,101,115,115,58,32,69,82,82,79,82,58,32,80,108,117,103,105,110,32,104,97,115,32,110,111,116,32,98,101,101,110,32,105,110,105,116,105,97,108,105,115,101,100,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,73,109,112,108,58,58,112,114,111,99,101,115,115,58,32,0,66,117,102,102,101,114,32,111,118,101,114,102,108,111,119,58,32,119,114,111,116,101,32,0,32,111,102,32,0,32,105,110,112,117,116,32,115,97,109,112,108,101,115,32,40,102,111,114,32,112,108,117,103,105,110,32,115,116,101,112,32,115,105,122,101,32,0,44,32,98,108,111,99,107,32,115,105,122,101,32,0,41,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,105,110,112,117,116,32,115,116,101,112,83,105,122,101,32,109,117,115,116,32,98,101,32,101,113,117,97,108,32,116,111,32,98,108,111,99,107,83,105,122,101,32,102,111,114,32,116,104,105,115,32,97,100,97,112,116,101,114,32,40,115,116,101,112,83,105,122,101,32,61,32,0,44,32,98,108,111,99,107,83,105,122,101,32,61,32,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,87,65,82,78,73,78,71,58,32,115,116,101,112,32,115,105,122,101,32,0,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,98,108,111,99,107,32,115,105,122,101,32,0,58,32,99,97,110,110,111,116,32,104,97,110,100,108,101,32,116,104,105,115,32,105,110,32,97,100,97,112,116,101,114,59,32,97,100,106,117,115,116,105,110,103,32,98,108,111,99,107,32,115,105,122,101,32,116,111,32,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,50,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,52,73,109,112,108,49,48,82,105,110,103,66,117,102,102,101,114,69,0,70,101,97,116,117,114,101,32,69,120,116,114,97,99,116,105,111,110,32,80,108,117,103,105,110,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,50,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,48,80,108,117,103,105,110,67,104,97,110,110,101,108,65,100,97,112,116,101,114,69,0,107,105,115,115,32,102,102,116,32,117,115,97,103,101,32,101,114,114,111,114,58,32,105,109,112,114,111,112,101,114,32,97,108,108,111,99,10,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,98,108,111,99,107,115,105,122,101,32,60,32,50,32,110,111,116,0,115,117,112,112,111,114,116,101,100,44,32,105,110,99,114,101,97,115,105,110,103,32,102,114,111,109,32,0,32,116,111,32,50,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,111,100,100,32,98,108,111,99,107,115,105,122,101,32,110,111,116,0,32,116,111,32,0,69,82,82,79,82,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,98,108,111,99,107,115,105,122,101,32,60,32,50,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,69,82,82,79,82,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,111,100,100,32,98,108,111,99,107,115,105,122,101,32,0,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,82,101,97,108,32,70,70,84,32,111,112,116,105,109,105,122,97,116,105,111,110,32,109,117,115,116,32,98,101,32,101,118,101,110,46,10,0,78,57,95,86,97,109,112,72,111,115,116,54,87,105,110,100,111,119,73,100,69,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,52,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,49,51,80,108,117,103,105,110,87,114,97,112,112,101,114,69,0,69,82,82,79,82,58,32,78,97,78,47,73,110,102,32,112,97,115,115,101,100,32,116,111,32,86,97,109,112,58,58,82,101,97,108,84,105,109,101,58,58,102,114,111,109,83,101,99,111,110,100,115,0,78,54,106,115,111,110,49,49,49,49,74,115,111,110,66,111,111,108,101,97,110,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,50,69,98,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,49,74,115,111,110,66,111,111,108,101,97,110,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,110,117,108,108,0,78,54,106,115,111,110,49,49,56,74,115,111,110,78,117,108,108,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,48,69,68,110,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,56,74,115,111,110,78,117,108,108,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,54,106,115,111,110,49,49,57,74,115,111,110,86,97,108,117,101,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,52,69,78,83,116,51,95,95,50,54,118,101,99,116,111,114,73,83,49,95,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,83,49,95,69,69,69,69,69,69,0,91,0,44,32,0,93,0,78,54,106,115,111,110,49,49,57,74,115,111,110,65,114,114,97,121,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,53,69,78,83,116,51,95,95,50,51,109,97,112,73,78,83,51,95,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,51,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,83,49,95,78,83,51,95,52,108,101,115,115,73,83,65,95,69,69,78,83,56,95,73,78,83,51,95,52,112,97,105,114,73,75,83,65,95,83,49,95,69,69,69,69,69,69,69,69,0,123,0,125,0,92,92,0,92,34,0,92,98,0,92,102,0,92,110,0,92,114,0,92,116,0,92,117,37,48,52,120,0,92,117,50,48,50,56,0,92,117,50,48,50,57,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,79,98,106,101,99,116,69,0,37,46,49,55,103,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,68,111,117,98,108,101,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,49,69,100,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,68,111,117,98,108,101,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,37,100,0,78,54,106,115,111,110,49,49,55,74,115,111,110,73,110,116,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,49,69,105,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,55,74,115,111,110,73,110,116,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,83,116,114,105,110,103,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,51,69,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,51,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,83,116,114,105,110,103,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,57,74,115,111,110,65,114,114,97,121,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,79,98,106,101,99,116,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,39,37,99,39,32,40,37,100,41,0,40,37,100,41,0,117,110,101,120,112,101,99,116,101,100,32,116,114,97,105,108,105,110,103,32,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,115,105,100,101,32,99,111,109,109,101,110,116,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,115,105,100,101,32,105,110,108,105,110,101,32,99,111,109,109,101,110,116,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,115,105,100,101,32,109,117,108,116,105,45,108,105,110,101,32,99,111,109,109,101,110,116,0,109,97,108,102,111,114,109,101,100,32,99,111,109,109,101,110,116,0,101,120,99,101,101,100,101,100,32,109,97,120,105,109,117,109,32,110,101,115,116,105,110,103,32,100,101,112,116,104,0,101,120,112,101,99,116,101,100,32,39,34,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,58,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,44,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,44,39,32,105,110,32,108,105,115,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,118,97,108,117,101,44,32,103,111,116,32,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,32,115,116,114,105,110,103,0,117,110,101,115,99,97,112,101,100,32,0,32,105,110,32,115,116,114,105,110,103,0,98,97,100,32,92,117,32,101,115,99,97,112,101,58,32,0,105,110,118,97,108,105,100,32,101,115,99,97,112,101,32,99,104,97,114,97,99,116,101,114,32,0,105,32,33,61,32,48,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,112,105,112,101,114,45,118,97,109,112,45,99,112,112,47,101,120,116,47,106,115,111,110,49,49,47,106,115,111,110,49,49,46,99,112,112,0,101,120,112,101,99,116,0,112,97,114,115,101,32,101,114,114,111,114,58,32,101,120,112,101,99,116,101,100,32,0,44,32,103,111,116,32,0,108,101,97,100,105,110,103,32,48,115,32,110,111,116,32,112,101,114,109,105,116,116,101,100,32,105,110,32,110,117,109,98,101,114,115,0,105,110,118,97,108,105,100,32,0,32,105,110,32,110,117,109,98,101,114,0,97,116,32,108,101,97,115,116,32,111,110,101,32,100,105,103,105,116,32,114,101,113,117,105,114,101,100,32,105,110,32,102,114,97,99,116,105,111,110,97,108,32,112,97,114,116,0,97,116,32,108,101,97,115,116,32,111,110,101,32,100,105,103,105,116,32,114,101,113,117,105,114,101,100,32,105,110,32,101,120,112,111,110,101,110,116,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,0,101,120,112,101,99,116,101,100,32,74,83,79,78,32,111,98,106,101,99,116,44,32,103,111,116,32,0,98,97,100,32,116,121,112,101,32,102,111,114,32,0,32,105,110,32,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,78,65,78,0,46,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,105,110,102,105,110,105,116,121,0,110,97,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,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,114,119,97,0,80,79,83,73,88,0,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,52,98,97,115,105,99,95,105,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,105,111,115,116,114,101,97,109,0,78,83,116,51,95,95,50,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,119,69,69,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,37,112,0,67,0,78,83,116,51,95,95,50,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,37,112,0,0,0,0,76,0,108,108,0,37,0,0,0,0,0,108,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,37,72,58,37,77,58,37,83,0,37,109,47,37,100,47,37,121,0,37,73,58,37,77,58,37,83,32,37,112,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,65,77,0,80,77,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,37,72,58,37,77,58,37,83,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,50,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,48,49,50,51,52,53,54,55,56,57,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,37,46,48,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,50,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,119,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,50,49,48,99,116,121,112,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,119,69,69,0,102,97,108,115,101,0,116,114,117,101,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,119,69,69,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,78,83,116,51,95,95,50,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,50,49,57,95,95,115,104,97,114,101,100,95,119,101,97,107,95,99,111,117,110,116,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,111,117,116,95,111,102,95,114,97,110,103,101,34,0,95,95,116,104,114,111,119,95,111,117,116,95,111,102,95,114,97,110,103,101,0,33,34,97,108,108,111,99,97,116,111,114,60,84,62,58,58,97,108,108,111,99,97,116,101,58,58,98,97,100,95,97,108,108,111,99,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,109,101,109,111,114,121,0,97,108,108,111,99,97,116,101,0,78,83,116,51,95,95,50,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,50,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,50,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,83,116,57,101,120,99,101,112,116,105,111,110,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,83],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30724);allocate([116,57,98,97,100,95,97,108,108,111,99,0,83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,49,50,111,117,116,95,111,102,95,114,97,110,103,101,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,51,95,95,102,117,110,100,97,109,101,110,116,97,108,95,116,121,112,101,95,105,110,102,111,69,0,102,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40964);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___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()}Module["_roundf"]=_roundf;function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm["setTempRet0"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm["setTempRet0"](0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i<typeArray.length;i++){if(typeArray[i]&&Module["___cxa_can_catch"](typeArray[i],throwntype,thrown)){thrown=HEAP32[thrown>>2];info.adjusted=thrown;return(asm["setTempRet0"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}Module["_memset"]=_memset;Module["_pthread_mutex_lock"]=_pthread_mutex_lock;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)}),"%w":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()}),"%W":(function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"}),"%y":(function(date){return(date.tm_year+1900).toString().substring(2)}),"%Y":(function(date){return date.tm_year+1900}),"%z":(function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}Module["_i64Add"]=_i64Add;var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var _llvm_pow_f32=Math_pow;function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}function _malloc(bytes){var ptr=Runtime.dynamicAlloc(bytes+8);return ptr+8&4294967288}Module["_malloc"]=_malloc;function ___cxa_allocate_exception(size){return _malloc(size)}var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;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){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]};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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Module["dynCall_vi"](routine,arg)}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_pthread_cond_broadcast"]=_pthread_cond_broadcast;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 _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var 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["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;var _llvm_pow_f64=Math_pow;Module["_sbrk"]=_sbrk;Module["_bitshift64Shl"]=_bitshift64Shl;Module["_memmove"]=_memmove;function ___gxx_personality_v0(){}Module["___uremdi3"]=___uremdi3;function _pthread_cond_wait(){return 0}Module["_pthread_mutex_unlock"]=_pthread_mutex_unlock;Module["_pthread_self"]=_pthread_self;function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_round"]=_round;function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___dso_handle=STATICTOP;STATICTOP+=16;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___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;function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viid(index,a1,a2,a3){try{Module["dynCall_viid"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_dii(index,a1,a2){try{return Module["dynCall_dii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iid(index,a1,a2){try{return Module["dynCall_iid"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiid(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiid"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viid":invoke_viid,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiii":invoke_viiiii,"invoke_dii":invoke_dii,"invoke_di":invoke_di,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_iid":invoke_iid,"invoke_iiiiiid":invoke_iiiiiid,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiii":invoke_iiiii,"invoke_viiii":invoke_viiii,"invoke_iii":invoke_iii,"invoke_iiiiid":invoke_iiiiid,"invoke_iiiiii":invoke_iiiiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"_strftime":_strftime,"_pthread_cond_wait":_pthread_cond_wait,"_llvm_pow_f64":_llvm_pow_f64,"_pthread_key_create":_pthread_key_create,"_abort":_abort,"_pthread_cleanup_push":_pthread_cleanup_push,"___gxx_personality_v0":___gxx_personality_v0,"___assert_fail":___assert_fail,"___cxa_allocate_exception":___cxa_allocate_exception,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"___buildEnvironment":___buildEnvironment,"__addDays":__addDays,"_strftime_l":_strftime_l,"___setErrNo":___setErrNo,"_llvm_pow_f32":_llvm_pow_f32,"___cxa_begin_catch":___cxa_begin_catch,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___resumeException":___resumeException,"___cxa_find_matching_catch":___cxa_find_matching_catch,"__exit":__exit,"_pthread_getspecific":_pthread_getspecific,"__arraySum":__arraySum,"___syscall221":___syscall221,"_pthread_once":_pthread_once,"_getenv":_getenv,"___syscall54":___syscall54,"___unlock":___unlock,"__isLeapYear":__isLeapYear,"_pthread_setspecific":_pthread_setspecific,"___cxa_atexit":___cxa_atexit,"___cxa_throw":___cxa_throw,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"___cxa_pure_virtual":___cxa_pure_virtual,"_atexit":_atexit,"___syscall140":___syscall140,"_exit":_exit,"___syscall145":___syscall145,"___syscall146":___syscall146,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8,"___dso_handle":___dso_handle};// EMSCRIPTEN_START_ASM var asm=(function(global,env,buffer) { "use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.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=env.___dso_handle|0;var p=0;var q=0;var r=0;var s=0;var t=global.NaN,u=global.Infinity;var v=0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0,D=0.0;var E=0;var F=global.Math.floor;var G=global.Math.abs;var H=global.Math.sqrt;var I=global.Math.pow;var J=global.Math.cos;var K=global.Math.sin;var L=global.Math.tan;var M=global.Math.acos;var N=global.Math.asin;var O=global.Math.atan;var P=global.Math.atan2;var Q=global.Math.exp;var R=global.Math.log;var S=global.Math.ceil;var T=global.Math.imul;var U=global.Math.min;var V=global.Math.max;var W=global.Math.clz32;var X=env.abort;var Y=env.assert;var Z=env.enlargeMemory;var _=env.getTotalMemory;var $=env.abortOnCannotGrowMemory;var aa=env.invoke_iiiiiiii;var ba=env.invoke_iiii;var ca=env.invoke_viid;var da=env.invoke_viiiiii;var ea=env.invoke_viiiii;var fa=env.invoke_dii;var ga=env.invoke_di;var ha=env.invoke_vi;var ia=env.invoke_vii;var ja=env.invoke_iiiiiii;var ka=env.invoke_ii;var la=env.invoke_iid;var ma=env.invoke_iiiiiid;var na=env.invoke_viii;var oa=env.invoke_v;var pa=env.invoke_iiiiiiiii;var qa=env.invoke_iiiii;var ra=env.invoke_viiii;var sa=env.invoke_iii;var ta=env.invoke_iiiiid;var ua=env.invoke_iiiiii;var va=env._pthread_cleanup_pop;var wa=env._strftime;var xa=env._pthread_cond_wait;var ya=env._llvm_pow_f64;var za=env._pthread_key_create;var Aa=env._abort;var Ba=env._pthread_cleanup_push;var Ca=env.___gxx_personality_v0;var Da=env.___assert_fail;var Ea=env.___cxa_allocate_exception;var Fa=env.__ZSt18uncaught_exceptionv;var Ga=env.___buildEnvironment;var Ha=env.__addDays;var Ia=env._strftime_l;var Ja=env.___setErrNo;var Ka=env._llvm_pow_f32;var La=env.___cxa_begin_catch;var Ma=env._emscripten_memcpy_big;var Na=env.___resumeException;var Oa=env.___cxa_find_matching_catch;var Pa=env.__exit;var Qa=env._pthread_getspecific;var Ra=env.__arraySum;var Sa=env.___syscall221;var Ta=env._pthread_once;var Ua=env._getenv;var Va=env.___syscall54;var Wa=env.___unlock;var Xa=env.__isLeapYear;var Ya=env._pthread_setspecific;var Za=env.___cxa_atexit;var _a=env.___cxa_throw;var $a=env.___lock;var ab=env.___syscall6;var bb=env.___syscall5;var cb=env.___cxa_pure_virtual;var db=env._atexit;var eb=env.___syscall140;var fb=env._exit;var gb=env.___syscall145;var hb=env.___syscall146;var ib=0.0; // EMSCRIPTEN_START_FUNCS function $i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+16|0;g=f+12|0;h=f;if((d|0)!=(e|0)){i=fe(xq(fe(xq(fe(43100,31462,107)|0,d)|0,31570,14)|0,e)|0,31460,1)|0;c[g>>2]=iq(i+(c[(c[i>>2]|0)+-12>>2]|0)|0)|0;e=Hr(g,43804)|0;j=Bb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Oy(g);Aq(i,j)|0;nq(i)|0;k=0;l=f;return k|0}i=a+28|0;c[i>>2]=b;c[a+4>>2]=d;b=a+8|0;c[b>>2]=d;d=a+20|0;c[d>>2]=0;j=a+24|0;c[j>>2]=0;e=c[a+12>>2]|0;if(!e)m=0;else{c[d>>2]=e;m=e}e=c[a+16>>2]|0;if(!e)n=0;else{c[j>>2]=e;n=e}if(!(m|n)){n=c[a>>2]|0;c[d>>2]=tb[c[(c[n>>2]|0)+80>>2]&127](n)|0;n=c[a>>2]|0;c[j>>2]=tb[c[(c[n>>2]|0)+76>>2]&127](n)|0}n=c[a>>2]|0;m=(tb[c[(c[n>>2]|0)+72>>2]&127](n)|0)==1;n=c[j>>2]|0;e=c[d>>2]|0;o=(e|0)==0;do if(!n)if(o){c[j>>2]=1024;if(m){c[d>>2]=512;p=1024;break}else{c[d>>2]=1024;p=1024;break}}else if(m){q=e<<1;c[j>>2]=q;r=q;s=21;break}else{c[j>>2]=e;p=e;break}else if(o)if(m){c[d>>2]=n>>>1;p=n;break}else{c[d>>2]=n;p=n;break}else{r=n;s=21}while(0);if((s|0)==21)if(e>>>0>r>>>0){s=e<<(m&1);m=fe(43100,31585,55)|0;e=fe(xq(m,c[d>>2]|0)|0,31641,28)|0;m=xq(fe(xq(e,c[j>>2]|0)|0,31670,57)|0,s)|0;c[g>>2]=iq(m+(c[(c[m>>2]|0)+-12>>2]|0)|0)|0;e=Hr(g,43804)|0;n=Bb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Oy(g);Aq(m,n)|0;nq(m)|0;c[j>>2]=s;p=s}else p=r;r=c[i>>2]|0;s=a+44|0;c[s>>2]=az(r>>>0>1073741823?-1:r<<2)|0;if(!r){t=0;u=p}else{m=a+36|0;n=a+40|0;e=a+32|0;o=0;q=r;r=p;while(1){p=$y(20)|0;v=c[b>>2]|0;c[p>>2]=12144;w=r+1+v|0;c[p+4>>2]=az(w>>>0>1073741823?-1:w<<2)|0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=w;c[g>>2]=p;w=c[m>>2]|0;if(w>>>0<(c[n>>2]|0)>>>0){c[w>>2]=p;c[m>>2]=(c[m>>2]|0)+4;x=r;y=q}else{aj(e,g);x=c[j>>2]|0;y=c[i>>2]|0}p=az(x>>>0>1073741823?-1:x<<2)|0;c[(c[s>>2]|0)+(o<<2)>>2]=p;o=o+1|0;if(o>>>0>=y>>>0){t=y;u=x;break}else{q=y;r=x}}}x=c[a>>2]|0;if(!(zb[c[(c[x>>2]|0)+64>>2]&15](x,t,c[d>>2]|0,u)|0)){k=0;l=f;return k|0}u=c[a+60>>2]|0;d=a+64|0;t=c[d>>2]|0;if((t|0)!=(u|0)){x=t;do{t=x+-100|0;c[d>>2]=t;r=x+-44|0;y=c[r>>2]|0;if(y|0){q=x+-40|0;o=c[q>>2]|0;if((o|0)==(y|0))z=y;else{s=o;do{o=s+-12|0;c[q>>2]=o;oz(o);s=c[q>>2]|0}while((s|0)!=(y|0));z=c[r>>2]|0}bz(z)}oz(x+-64|0);oz(x+-76|0);oz(x+-88|0);oz(t);x=c[d>>2]|0}while((x|0)!=(u|0))}Xi(h,a);Zb(h);k=1;l=f;return k|0}function aj(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823)Vx(a);h=a+8|0;i=(c[h>>2]|0)-f|0;j=i>>1;k=i>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=e-f>>2;do if(k)if(k>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{l=$y(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=e-f|0;e=g+(0-(b>>2)<<2)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+4;c[h>>2]=l+(k<<2);if(!f)return;bz(f);return}function bj(a){a=a|0;var b=0;c[a>>2]=12144;b=c[a+4>>2]|0;if(!b)return;cz(b);return}function cj(a){a=a|0;var b=0;c[a>>2]=12144;b=c[a+4>>2]|0;if(!b){bz(a);return}cz(b);bz(a);return}function dj(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,m=0,n=0,o=0;d=l;l=l+32|0;e=d+12|0;f=d;g=c[a>>2]|0;h=c[(c[g>>2]|0)+56>>2]|0;kz(e,b);rb[h&127](g,e);oz(e);e=c[a+60>>2]|0;g=a+64|0;h=c[g>>2]|0;if((h|0)==(e|0)){Xi(f,a);Zb(f);l=d;return}else i=h;do{h=i+-100|0;c[g>>2]=h;b=i+-44|0;j=c[b>>2]|0;if(j|0){k=i+-40|0;m=c[k>>2]|0;if((m|0)==(j|0))n=j;else{o=m;do{m=o+-12|0;c[k>>2]=m;oz(m);o=c[k>>2]|0}while((o|0)!=(j|0));n=c[b>>2]|0}bz(n)}oz(i+-64|0);oz(i+-76|0);oz(i+-88|0);oz(h);i=c[g>>2]|0}while((i|0)!=(e|0));Xi(f,a);Zb(f);l=d;return}function ej(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+32|0;f=e+12|0;g=e;h=c[a>>2]|0;i=c[(c[h>>2]|0)+44>>2]|0;kz(f,b);lb[i&3](h,f,d);oz(f);f=c[a+60>>2]|0;h=a+64|0;i=c[h>>2]|0;if((i|0)==(f|0)){Xi(g,a);Zb(g);l=e;return}else j=i;do{i=j+-100|0;c[h>>2]=i;b=j+-44|0;k=c[b>>2]|0;if(k|0){m=j+-40|0;n=c[m>>2]|0;if((n|0)==(k|0))o=k;else{p=n;do{n=p+-12|0;c[m>>2]=n;oz(n);p=c[m>>2]|0}while((p|0)!=(k|0));o=c[b>>2]|0}bz(o)}oz(j+-64|0);oz(j+-76|0);oz(j+-88|0);oz(i);j=c[h>>2]|0}while((j|0)!=(f|0));Xi(g,a);Zb(g);l=e;return}function fj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+28|0;if(!(c[b>>2]|0))d=a+44|0;else{e=a+32|0;f=a+44|0;g=0;do{h=c[(c[e>>2]|0)+(g<<2)>>2]|0;if(h|0)qb[c[(c[h>>2]|0)+4>>2]&511](h);h=c[(c[f>>2]|0)+(g<<2)>>2]|0;if(h|0)cz(h);g=g+1|0}while(g>>>0<(c[b>>2]|0)>>>0);d=f}f=c[d>>2]|0;if(f|0)cz(f);_i(a+84|0,c[a+88>>2]|0);gj(a+72|0,c[a+76>>2]|0);Zb(a+60|0);f=c[a+32>>2]|0;if(!f)return;d=a+36|0;a=c[d>>2]|0;if((a|0)!=(f|0))c[d>>2]=a+(~((a+-4-f|0)>>>2)<<2);bz(f);return}function gj(a,b){a=a|0;b=b|0;if(!b)return;else{gj(a,c[b>>2]|0);gj(a,c[b+4>>2]|0);bz(b);return}}function hj(a,b){a=a|0;b=b|0;var d=0;mk(a,b);c[a>>2]=12032;d=$y(96)|0;ij(d,b,+g[a+4>>2]);c[a+12>>2]=d;return}function ij(b,d,e){b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,j=0;f=l;l=l+16|0;h=f;c[b>>2]=d;d=b+48|0;i=b+4|0;j=i+44|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));g[d>>2]=e;c[b+52>>2]=0;a[b+56>>0]=1;c[b+60>>2]=0;c[b+64>>2]=0;c[b+68>>2]=0;c[b+76>>2]=0;c[b+80>>2]=0;c[b+72>>2]=b+76;c[b+88>>2]=0;c[b+92>>2]=0;c[b+84>>2]=b+88;Xi(h,b);Zb(h);l=f;return}function jj(a){a=a|0;var b=0;c[a>>2]=12160;b=c[a+12>>2]|0;if(b|0){pj(b);bz(b)}Pj(a);return}function kj(a){a=a|0;var b=0;c[a>>2]=12160;b=c[a+12>>2]|0;if(b|0){pj(b);bz(b)}Pj(a);bz(a);return}function lj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return oj(c[a+12>>2]|0,b,d,e)|0}function mj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+12>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];nj(a,h,d,g);l=f;return}function nj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;f=l;l=l+32|0;h=f+24|0;i=f+16|0;j=f+8|0;k=f;m=c[b+8>>2]|0;n=c[b+12>>2]|0;if(m>>>0<n>>>0){switch(m|0){case 1:{if(n|0){o=b+24|0;p=0;do{c[(c[o>>2]|0)+(p<<2)>>2]=c[d>>2];p=p+1|0}while(p>>>0<n>>>0)}break}case 0:{q=0;r=7;break}default:{p=b+24|0;o=0;do{c[(c[p>>2]|0)+(o<<2)>>2]=c[d+(o<<2)>>2];o=o+1|0}while(o>>>0<m>>>0);q=m;r=7}}if((r|0)==7?q>>>0<n>>>0:0){o=b+16|0;p=b+24|0;s=q;do{c[(c[p>>2]|0)+(s<<2)>>2]=c[(c[o>>2]|0)+(s-m<<2)>>2];s=s+1|0}while(s>>>0<n>>>0)}s=c[b>>2]|0;o=c[(c[s>>2]|0)+96>>2]|0;p=c[b+24>>2]|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];Ab[o&31](a,s,p,h);l=f;return}if(m>>>0<=n>>>0){h=c[b>>2]|0;p=c[(c[h>>2]|0)+96>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];Ab[p&31](a,h,d,k);l=f;return}if((n|0)!=1){n=c[b>>2]|0;k=c[(c[n>>2]|0)+96>>2]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];Ab[k&31](a,n,d,j);l=f;return}j=c[b+4>>2]|0;n=(j|0)==0;if(!n){k=c[d>>2]|0;h=c[c[b+16>>2]>>2]|0;p=0;do{c[h+(p<<2)>>2]=c[k+(p<<2)>>2];p=p+1|0}while(p>>>0<j>>>0)}if(m>>>0>1)if(n)r=24;else{p=c[c[b+16>>2]>>2]|0;k=1;do{h=c[d+(k<<2)>>2]|0;s=0;do{o=p+(s<<2)|0;g[o>>2]=+g[h+(s<<2)>>2]+ +g[o>>2];s=s+1|0}while(s>>>0<j>>>0);k=k+1|0}while(k>>>0<m>>>0);r=23}else r=23;if((r|0)==23)if(n)r=24;else{t=+(m>>>0);m=c[b+16>>2]|0;n=c[m>>2]|0;k=0;do{p=n+(k<<2)|0;g[p>>2]=+g[p>>2]/t;k=k+1|0}while(k>>>0<j>>>0);u=m}if((r|0)==24)u=c[b+16>>2]|0;r=c[b>>2]|0;b=c[(c[r>>2]|0)+96>>2]|0;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];Ab[b&31](a,r,u,i);l=f;return}function oj(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,r=0,s=0;c[a+4>>2]=e;f=c[a>>2]|0;g=tb[c[(c[f>>2]|0)+84>>2]&127](f)|0;f=c[a>>2]|0;h=tb[c[(c[f>>2]|0)+88>>2]&127](f)|0;c[a+8>>2]=b;if(g>>>0<=b>>>0){if(h>>>0>=b>>>0){c[a+12>>2]=b;i=b;j=c[a>>2]|0;k=c[j>>2]|0;l=k+64|0;m=c[l>>2]|0;n=zb[m&15](j,i,d,e)|0;return n|0}if((h|0)==1){f=az(4)|0;c[a+16>>2]=f;c[f>>2]=az(e>>>0>1073741823?-1:e<<2)|0}c[a+12>>2]=h;i=h;j=c[a>>2]|0;k=c[j>>2]|0;l=k+64|0;m=c[l>>2]|0;n=zb[m&15](j,i,d,e)|0;return n|0}c[a+24>>2]=az(g>>>0>1073741823?-1:g<<2)|0;do if(b>>>0>1?(h=g-b|0,f=az(h>>>0>1073741823?-1:h<<2)|0,h=a+16|0,c[h>>2]=f,g|0):0){o=e>>>0>1073741823?-1:e<<2;if(!e){c[f>>2]=az(o)|0;if((g|0)==1)break;else p=1;do{q=c[h>>2]|0;c[q+(p<<2)>>2]=az(o)|0;p=p+1|0}while((p|0)!=(g|0))}else{q=e<<2;c[f>>2]=az(o)|0;eB(c[c[h>>2]>>2]|0,0,q|0)|0;if((g|0)==1)break;else r=1;do{s=c[h>>2]|0;c[s+(r<<2)>>2]=az(o)|0;eB(c[(c[h>>2]|0)+(r<<2)>>2]|0,0,q|0)|0;r=r+1|0}while((r|0)!=(g|0))}}while(0);c[a+12>>2]=g;i=g;j=c[a>>2]|0;k=c[j>>2]|0;l=k+64|0;m=c[l>>2]|0;n=zb[m&15](j,i,d,e)|0;return n|0}function pj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=a+16|0;d=c[b>>2]|0;if(d|0){e=a+8|0;f=c[e>>2]|0;g=a+12|0;h=c[g>>2]|0;a:do if(f>>>0>h>>>0){i=c[d>>2]|0;if(i|0)cz(i)}else if((h|0)!=(f|0)){i=0;j=d;k=f;l=h;while(1){m=c[j+(i<<2)>>2]|0;if(!m){n=k;o=l}else{cz(m);n=c[e>>2]|0;o=c[g>>2]|0}m=i+1|0;if(m>>>0>=(o-n|0)>>>0)break a;i=m;j=c[b>>2]|0;k=n;l=o}}while(0);o=c[b>>2]|0;if(o|0)cz(o);c[b>>2]=0}b=a+20|0;o=c[b>>2]|0;if(o|0){n=a+8|0;g=c[n>>2]|0;if(g){e=0;h=o;f=g;while(1){g=c[h+(e<<2)>>2]|0;if(!g){p=h;q=f}else{cz(g);p=c[b>>2]|0;q=c[n>>2]|0}e=e+1|0;if(e>>>0>=q>>>0)break;else{h=p;f=q}}if(p|0){r=p;s=19}}else{r=o;s=19}if((s|0)==19)cz(r);c[b>>2]=0}b=a+24|0;a=c[b>>2]|0;if(!a)return;cz(a);c[b>>2]=0;return}function qj(a,b){a=a|0;b=b|0;var d=0;mk(a,b);c[a>>2]=12160;d=$y(28)|0;c[d>>2]=b;b=d+4|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;c[a+12>>2]=d;return}function rj(a){a=a|0;var b=0;c[a>>2]=12272;b=c[a+12>>2]|0;if(b|0){Jj(b);bz(b)}Pj(a);return}function sj(a){a=a|0;var b=0;c[a>>2]=12272;b=c[a+12>>2]|0;if(b|0){Jj(b);bz(b)}Pj(a);bz(a);return}function tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return Ej(c[a+12>>2]|0,b,d,e)|0}function uj(a){a=a|0;var b=0;b=c[a+12>>2]|0;c[b+40>>2]=0;a=c[b>>2]|0;qb[c[(c[a>>2]|0)+68>>2]&511](a);return}function vj(a){a=a|0;return 0}function wj(a){a=a|0;var b=0,d=0,e=0;b=c[a+12>>2]|0;a=c[b>>2]|0;d=tb[c[(c[a>>2]|0)+76>>2]&127](a)|0;a=c[b>>2]|0;if((tb[c[(c[a>>2]|0)+72>>2]&127](a)|0)!=1){e=d;return e|0}if(!d){e=1024;return e|0}e=Dj(0,d)|0;return e|0}function xj(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+12>>2]|0;a=c[b>>2]|0;d=tb[c[(c[a>>2]|0)+80>>2]&127](a)|0;if(d|0){e=d;return e|0}d=c[b>>2]|0;if((tb[c[(c[d>>2]|0)+72>>2]&127](d)|0)!=1){e=0;return e|0}d=c[b>>2]|0;a=tb[c[(c[d>>2]|0)+76>>2]&127](d)|0;d=c[b>>2]|0;if((tb[c[(c[d>>2]|0)+72>>2]&127](d)|0)==1)if(!a)f=1024;else f=Dj(0,a)|0;else f=a;e=f>>>1;return e|0}function yj(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,m=0;f=l;l=l+32|0;g=f+16|0;h=f+8|0;i=f;j=c[b+12>>2]|0;b=c[e>>2]|0;k=c[e+4>>2]|0;e=c[j>>2]|0;if(!(tb[c[(c[e>>2]|0)+72>>2]&127](e)|0)){e=c[j>>2]|0;m=c[(c[e>>2]|0)+96>>2]|0;c[g>>2]=b;c[g+4>>2]=k;Ab[m&31](a,e,d,g);l=f;return}switch(c[j+36>>2]|0){case 2:case 0:{c[h>>2]=b;c[h+4>>2]=k;zj(a,j,d,h);l=f;return}default:{c[i>>2]=b;c[i+4>>2]=k;Aj(a,j,d,i);l=f;return}}}function zj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,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;f=l;l=l+32|0;i=f+16|0;j=f+8|0;k=f;m=b+4|0;n=+g[m>>2];if(n>0.0)o=~~+dB(+n)>>>0;else o=1;p=b+36|0;if(!(c[p>>2]|0)){q=c[b>>2]|0;do if(tb[c[(c[q>>2]|0)+72>>2]&127](q)|0)if(((c[p>>2]|0)+-1|0)>>>0<2){r=c[10528]|0;c[j>>2]=r;s=c[10529]|0;c[j+4>>2]=s;t=r;u=s;break}else{qk(j,(c[b+16>>2]|0)/2|0,~~(+g[m>>2]+.5));t=c[j>>2]|0;u=c[j+4>>2]|0;break}else{s=c[10528]|0;c[j>>2]=s;r=c[10529]|0;c[j+4>>2]=r;t=s;u=r}while(0);m=e+4|0;nk(i,t+(c[e>>2]|0)|0,u+(c[m>>2]|0)|0);c[e>>2]=c[i>>2];c[m>>2]=c[i+4>>2];nk(i,0,1);u=pk(e,o)|0;t=i+4|0;nk(j,(c[i>>2]|0)+(c[e>>2]|0)|0,(c[t>>2]|0)+(c[m>>2]|0)|0);if((u|0)<(pk(j,o)|0)){nk(j,(c[i>>2]|0)+(c[e>>2]|0)|0,(c[t>>2]|0)+(c[m>>2]|0)|0);c[e>>2]=c[j>>2];c[m>>2]=c[j+4>>2]}}j=b+8|0;if((c[j>>2]|0)<=0){v=b+20|0;w=c[b>>2]|0;x=c[w>>2]|0;y=x+96|0;z=c[y>>2]|0;A=c[v>>2]|0;B=c[e>>2]|0;c[k>>2]=B;C=k+4|0;D=e+4|0;E=c[D>>2]|0;c[C>>2]=E;Ab[z&31](a,w,A,k);l=f;return}m=b+32|0;t=b+24|0;i=b+16|0;o=b+48|0;u=b+52|0;p=b+20|0;q=0;do{r=c[m>>2]|0;s=c[d+(q<<2)>>2]|0;F=c[t>>2]|0;G=c[r+8>>2]|0;if(G|0){H=c[r+12>>2]|0;r=0;do{h[F+(r<<3)>>3]=+g[s+(r<<2)>>2]*+h[H+(r<<3)>>3];r=r+1|0}while((r|0)!=(G|0))}G=c[i>>2]|0;if((G|0)>1){r=G>>>1;G=0;do{H=F+(G<<3)|0;n=+h[H>>3];s=F+(r+G<<3)|0;h[H>>3]=+h[s>>3];h[s>>3]=n;G=G+1|0}while((G|0)<(r|0))}Bj(c[o>>2]|0,F,c[u>>2]|0);r=c[i>>2]|0;if((r|0)>=-1){G=c[u>>2]|0;s=c[(c[p>>2]|0)+(q<<2)>>2]|0;H=(r|0)/2|0;r=0;while(1){I=r<<1;g[s+(I<<2)>>2]=+h[G+(r<<4)>>3];g[s+((I|1)<<2)>>2]=+h[G+(r<<4)+8>>3];if((r|0)<(H|0))r=r+1|0;else break}}q=q+1|0}while((q|0)<(c[j>>2]|0));v=p;w=c[b>>2]|0;x=c[w>>2]|0;y=x+96|0;z=c[y>>2]|0;A=c[v>>2]|0;B=c[e>>2]|0;c[k>>2]=B;C=k+4|0;D=e+4|0;E=c[D>>2]|0;c[C>>2]=E;Ab[z&31](a,w,A,k);l=f;return}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,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,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;f=l;l=l+16|0;i=f;j=b+40|0;do if(!(c[j>>2]|0)){k=b+44|0;m=b+8|0;n=c[m>>2]|0;if(!(c[k>>2]|0)){o=az(n>>>0>1073741823?-1:n<<2)|0;c[k>>2]=o;if((n|0)<=0){p=m;break}q=c[b+16>>2]|0;r=((q|0)/2|0)+q|0;q=r>>>0>1073741823?-1:r<<2;c[o>>2]=az(q)|0;if((n|0)!=1){o=1;do{r=c[k>>2]|0;c[r+(o<<2)>>2]=az(q)|0;o=o+1|0}while((o|0)<(n|0))}}if(((n|0)>0?(o=b+16|0,q=c[o>>2]|0,(((q|0)/2|0)+q|0)>0):0)?(r=((q|0)/2|0)+q|0,eB(c[c[k>>2]>>2]|0,0,((r|0)>1?r:1)<<2|0)|0,(n|0)>1):0){r=1;do{q=c[o>>2]|0;s=((q|0)/2|0)+q|0;eB(c[(c[k>>2]|0)+(r<<2)>>2]|0,0,((s|0)>1?s:1)<<2|0)|0;r=r+1|0}while((r|0)<(n|0));p=m}else p=m}else p=b+8|0;while(0);n=c[p>>2]|0;r=(n|0)>0;if(r){k=c[b+12>>2]|0;o=c[b+16>>2]|0;s=(o|0)/2|0;q=s+o|0;t=b+44|0;if((k|0)<(q|0)){u=c[t>>2]|0;v=(o|0)>0;w=0;do{x=c[u+(w<<2)>>2]|0;y=k;do{c[x+(y-k<<2)>>2]=c[x+(y<<2)>>2];y=y+1|0}while((y|0)<(q|0));if(v){y=c[d+(w<<2)>>2]|0;m=0;do{c[x+(s+m<<2)>>2]=c[y+(m<<2)>>2];m=m+1|0}while((m|0)<(o|0))}w=w+1|0}while((w|0)<(n|0))}else{w=(o|0)>0;v=0;do{if(w){q=c[d+(v<<2)>>2]|0;k=c[(c[t>>2]|0)+(v<<2)>>2]|0;u=0;do{c[k+(s+u<<2)>>2]=c[q+(u<<2)>>2];u=u+1|0}while((u|0)<(o|0))}v=v+1|0}while((v|0)<(n|0))}if(r){r=b+32|0;n=b+44|0;v=b+24|0;o=b+16|0;s=b+48|0;t=b+52|0;d=b+20|0;w=0;do{u=c[r>>2]|0;q=c[(c[n>>2]|0)+(w<<2)>>2]|0;k=c[v>>2]|0;m=c[u+8>>2]|0;if(m|0){y=c[u+12>>2]|0;u=0;do{h[k+(u<<3)>>3]=+g[q+(u<<2)>>2]*+h[y+(u<<3)>>3];u=u+1|0}while((u|0)!=(m|0))}m=c[o>>2]|0;if((m|0)>1){u=m>>>1;m=0;do{y=k+(m<<3)|0;z=+h[y>>3];q=k+(u+m<<3)|0;h[y>>3]=+h[q>>3];h[q>>3]=z;m=m+1|0}while((m|0)<(u|0))}Bj(c[s>>2]|0,k,c[t>>2]|0);u=c[o>>2]|0;if((u|0)>=-1){m=c[t>>2]|0;q=c[(c[d>>2]|0)+(w<<2)>>2]|0;y=(u|0)/2|0;u=0;while(1){x=u<<1;g[q+(x<<2)>>2]=+h[m+(u<<4)>>3];g[q+((x|1)<<2)>>2]=+h[m+(u<<4)+8>>3];if((u|0)<(y|0))u=u+1|0;else break}}w=w+1|0}while((w|0)<(c[p>>2]|0));A=d;B=c[j>>2]|0;C=B+1|0;c[j>>2]=C;D=c[b>>2]|0;E=c[D>>2]|0;F=E+96|0;G=c[F>>2]|0;H=c[A>>2]|0;I=c[e>>2]|0;c[i>>2]=I;J=i+4|0;K=e+4|0;L=c[K>>2]|0;c[J>>2]=L;Ab[G&31](a,D,H,i);l=f;return}}A=b+20|0;B=c[j>>2]|0;C=B+1|0;c[j>>2]=C;D=c[b>>2]|0;E=c[D>>2]|0;F=E+96|0;G=c[F>>2]|0;H=c[A>>2]|0;I=c[e>>2]|0;c[i>>2]=I;J=i+4|0;K=e+4|0;L=c[K>>2]|0;c[J>>2]=L;Ab[G&31](a,D,H,i);l=f;return}function Bj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0;e=c[a>>2]|0;if(c[e+4>>2]|0){Po(31919,37,1,c[3388]|0)|0;fb(1)}f=c[e>>2]|0;g=a+4|0;i=c[g>>2]|0;if((b|0)==(i|0)){j=Vo(f<<4)|0;Cj(j,b,1,1,e+8|0,e);jB(b|0,j|0,c[e>>2]<<4|0)|0;Wo(j)}else Cj(i,b,1,1,e+8|0,e);e=c[g>>2]|0;k=+h[e>>3];l=+h[e+8>>3];h[d>>3]=k+l;h[d+(f<<4)>>3]=k-l;h[d+8>>3]=0.0;h[d+(f<<4)+8>>3]=0.0;g=(f|0)/2|0;if((f|0)<2)return;b=c[a+8>>2]|0;a=1;while(1){l=+h[e+(a<<4)>>3];k=+h[e+(a<<4)+8>>3];i=f-a|0;m=+h[e+(i<<4)>>3];n=+h[e+(i<<4)+8>>3];o=l+m;p=k-n;q=l-m;m=k+n;j=a+-1|0;n=+h[b+(j<<4)>>3];k=+h[b+(j<<4)+8>>3];l=q*n-m*k;r=m*n+q*k;h[d+(a<<4)>>3]=(o+l)*.5;h[d+(a<<4)+8>>3]=(p+r)*.5;h[d+(i<<4)>>3]=(o-l)*.5;h[d+(i<<4)+8>>3]=(r-p)*.5;if((a|0)<(g|0))a=a+1|0;else break}return}function Cj(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 i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0,R=0,S=0;i=c[f>>2]|0;j=f+8|0;k=c[f+4>>2]|0;f=a+((T(k,i)|0)<<4)|0;if((k|0)==1){l=T(e,d)|0;m=a;n=b;while(1){h[m>>3]=+h[n>>3];h[m+8>>3]=+h[n+8>>3];m=m+16|0;if((m|0)==(f|0))break;else n=n+(l<<4)|0}}else{l=T(i,d)|0;n=T(e,d)|0;m=a;o=b;while(1){Cj(m,o,l,e,j,g);m=m+(k<<4)|0;if((m|0)==(f|0))break;else o=o+(n<<4)|0}}switch(i|0){case 2:{n=a;o=k;f=g+264|0;m=a+(k<<4)|0;while(1){p=+h[m>>3];q=+h[f>>3];j=m+8|0;r=+h[j>>3];s=+h[f+8>>3];t=p*q-r*s;u=q*r+p*s;h[m>>3]=+h[n>>3]-t;e=n+8|0;h[j>>3]=+h[e>>3]-u;h[n>>3]=t+ +h[n>>3];h[e>>3]=u+ +h[e>>3];o=o+-1|0;if(!o)break;else{n=n+16|0;f=f+(d<<4)|0;m=m+16|0}}return}case 3:{m=k<<1;u=+h[g+264+((T(k,d)|0)<<4)+8>>3];f=g+264|0;n=d<<1;o=a;e=k;j=f;l=f;while(1){f=o+(k<<4)|0;t=+h[f>>3];s=+h[j>>3];b=o+(k<<4)+8|0;p=+h[b>>3];r=+h[j+8>>3];q=t*s-p*r;v=s*p+t*r;w=o+(m<<4)|0;r=+h[w>>3];t=+h[l>>3];x=o+(m<<4)+8|0;p=+h[x>>3];s=+h[l+8>>3];y=r*t-p*s;z=t*p+r*s;s=q+y;r=v+z;h[f>>3]=+h[o>>3]-s*.5;A=o+8|0;h[b>>3]=+h[A>>3]-r*.5;p=u*(q-y);y=u*(v-z);h[o>>3]=s+ +h[o>>3];h[A>>3]=r+ +h[A>>3];h[w>>3]=y+ +h[f>>3];h[x>>3]=+h[b>>3]-p;h[f>>3]=+h[f>>3]-y;h[b>>3]=p+ +h[b>>3];e=e+-1|0;if(!e)break;else{o=o+16|0;j=j+(d<<4)|0;l=l+(n<<4)|0}}return}case 4:{n=k<<1;l=k*3|0;j=g+264|0;o=d<<1;e=d*3|0;if(!(c[g+4>>2]|0)){m=a;b=j;f=k;x=j;w=j;while(1){A=m+(k<<4)|0;u=+h[A>>3];p=+h[b>>3];B=m+(k<<4)+8|0;y=+h[B>>3];r=+h[b+8>>3];s=u*p-y*r;z=p*y+u*r;C=m+(n<<4)|0;r=+h[C>>3];u=+h[x>>3];D=m+(n<<4)+8|0;y=+h[D>>3];p=+h[x+8>>3];v=r*u-y*p;q=u*y+r*p;E=m+(l<<4)|0;p=+h[E>>3];r=+h[w>>3];F=m+(l<<4)+8|0;y=+h[F>>3];u=+h[w+8>>3];t=p*r-y*u;G=r*y+p*u;u=+h[m>>3];p=u-v;H=m+8|0;y=+h[H>>3];r=y-q;I=v+u;h[m>>3]=I;u=q+y;h[H>>3]=u;y=s+t;q=z+G;v=s-t;t=z-G;h[C>>3]=I-y;h[D>>3]=u-q;h[m>>3]=y+ +h[m>>3];h[H>>3]=q+ +h[H>>3];h[A>>3]=p+t;h[B>>3]=r-v;h[E>>3]=p-t;h[F>>3]=r+v;f=f+-1|0;if(!f)break;else{m=m+16|0;b=b+(d<<4)|0;x=x+(o<<4)|0;w=w+(e<<4)|0}}return}else{w=a;x=j;b=k;m=j;f=j;while(1){j=w+(k<<4)|0;v=+h[j>>3];r=+h[x>>3];F=w+(k<<4)+8|0;t=+h[F>>3];p=+h[x+8>>3];q=v*r-t*p;y=r*t+v*p;E=w+(n<<4)|0;p=+h[E>>3];v=+h[m>>3];B=w+(n<<4)+8|0;t=+h[B>>3];r=+h[m+8>>3];u=p*v-t*r;I=v*t+p*r;A=w+(l<<4)|0;r=+h[A>>3];p=+h[f>>3];H=w+(l<<4)+8|0;t=+h[H>>3];v=+h[f+8>>3];G=r*p-t*v;z=p*t+r*v;v=+h[w>>3];r=v-u;D=w+8|0;t=+h[D>>3];p=t-I;s=u+v;h[w>>3]=s;v=I+t;h[D>>3]=v;t=q+G;I=y+z;u=q-G;G=y-z;h[E>>3]=s-t;h[B>>3]=v-I;h[w>>3]=t+ +h[w>>3];h[D>>3]=I+ +h[D>>3];h[j>>3]=r-G;h[F>>3]=p+u;h[A>>3]=r+G;h[H>>3]=p-u;b=b+-1|0;if(!b)break;else{w=w+16|0;x=x+(d<<4)|0;m=m+(o<<4)|0;f=f+(e<<4)|0}}return}break}case 5:{e=T(k,d)|0;u=+h[g+264+(e<<4)>>3];p=+h[g+264+(e<<4)+8>>3];e=T(k,d<<1)|0;G=+h[g+264+(e<<4)>>3];r=+h[g+264+(e<<4)+8>>3];if((k|0)<=0)return;e=d*3|0;f=a+(k<<4)|0;o=a+(k<<1<<4)|0;m=a+(k*3<<4)|0;x=a+(k<<2<<4)|0;w=0;b=a;while(1){I=+h[b>>3];l=b+8|0;t=+h[l>>3];v=+h[f>>3];n=T(w,d)|0;s=+h[g+264+(n<<4)>>3];H=f+8|0;z=+h[H>>3];y=+h[g+264+(n<<4)+8>>3];q=v*s-z*y;J=s*z+v*y;y=+h[o>>3];n=T(w<<1,d)|0;v=+h[g+264+(n<<4)>>3];A=o+8|0;z=+h[A>>3];s=+h[g+264+(n<<4)+8>>3];K=y*v-z*s;L=v*z+y*s;s=+h[m>>3];n=T(e,w)|0;y=+h[g+264+(n<<4)>>3];F=m+8|0;z=+h[F>>3];v=+h[g+264+(n<<4)+8>>3];M=s*y-z*v;N=y*z+s*v;v=+h[x>>3];n=T(w<<2,d)|0;s=+h[g+264+(n<<4)>>3];j=x+8|0;z=+h[j>>3];y=+h[g+264+(n<<4)+8>>3];O=v*s-z*y;P=s*z+v*y;y=q+O;v=J+P;z=q-O;O=J-P;P=K+M;J=L+N;q=K-M;M=L-N;h[b>>3]=I+(P+y);h[l>>3]=t+(J+v);N=G*P+(I+u*y);L=G*J+(t+u*v);K=r*M+p*O;s=-(p*z)-r*q;h[f>>3]=N-K;h[H>>3]=L-s;h[x>>3]=K+N;h[j>>3]=s+L;L=u*P+(I+G*y);y=u*J+(t+G*v);v=p*M-r*O;O=r*z-p*q;h[o>>3]=v+L;h[A>>3]=O+y;h[m>>3]=L-v;h[F>>3]=y-O;w=w+1|0;if((w|0)==(k|0))break;else{f=f+16|0;o=o+16|0;m=m+16|0;x=x+16|0;b=b+16|0}}return}default:{b=c[g>>2]|0;x=Vo(i<<4)|0;a:do if((k|0)>0&(i|0)>0){if((i|0)==1){m=0;while(1){o=a+(m<<4)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];o=a+(m<<4)|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[o+12>>2]=c[x+12>>2];m=m+1|0;if((m|0)==(k|0))break a}}else Q=0;do{m=Q;o=0;while(1){f=x+(o<<4)|0;w=a+(m<<4)|0;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];o=o+1|0;if((o|0)==(i|0)){R=Q;S=0;break}else m=m+k|0}while(1){m=a+(R<<4)|0;c[m>>2]=c[x>>2];c[m+4>>2]=c[x+4>>2];c[m+8>>2]=c[x+8>>2];c[m+12>>2]=c[x+12>>2];o=T(R,d)|0;w=a+(R<<4)+8|0;f=1;e=0;p=+h[m>>3];r=+h[w>>3];do{F=e+o|0;e=F-((F|0)<(b|0)?0:b)|0;G=+h[x+(f<<4)>>3];u=+h[g+264+(e<<4)>>3];O=+h[x+(f<<4)+8>>3];y=+h[g+264+(e<<4)+8>>3];p=p+(G*u-O*y);h[m>>3]=p;r=r+(u*O+G*y);h[w>>3]=r;f=f+1|0}while((f|0)!=(i|0));S=S+1|0;if((S|0)==(i|0))break;else R=R+k|0}Q=Q+1|0}while((Q|0)!=(k|0))}while(0);Wo(x);return}}}function Dj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;a=l;l=l+16|0;d=a;if(b>>>0<2){e=fe(43100,31957,64)|0;c[d>>2]=iq(e+(c[(c[e>>2]|0)+-12>>2]|0)|0)|0;f=Hr(d,43804)|0;g=Bb[c[(c[f>>2]|0)+28>>2]&63](f,10)|0;Oy(d);Aq(e,g)|0;nq(e)|0;g=fe(xq(fe(e,32022,27)|0,b)|0,32050,5)|0;c[d>>2]=iq(g+(c[(c[g>>2]|0)+-12>>2]|0)|0)|0;e=Hr(d,43804)|0;f=Bb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Oy(d);Aq(g,f)|0;nq(g)|0;h=2;l=a;return h|0}if(!(b&1)){h=b;l=a;return h|0}g=fe(43100,32056,64)|0;c[d>>2]=iq(g+(c[(c[g>>2]|0)+-12>>2]|0)|0)|0;f=Hr(d,43804)|0;e=Bb[c[(c[f>>2]|0)+28>>2]&63](f,10)|0;Oy(d);Aq(g,e)|0;nq(g)|0;e=b+1|0;f=xq(fe(xq(fe(g,32022,27)|0,b)|0,32121,4)|0,e)|0;c[d>>2]=iq(f+(c[(c[f>>2]|0)+-12>>2]|0)|0)|0;b=Hr(d,43804)|0;g=Bb[c[(c[b>>2]|0)+28>>2]&63](b,10)|0;Oy(d);Aq(f,g)|0;nq(f)|0;h=e;l=a;return h|0}function Ej(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,m=0,n=0,o=0,p=0,q=0;f=l;l=l+16|0;g=f;h=c[a>>2]|0;if(!(tb[c[(c[h>>2]|0)+72>>2]&127](h)|0)){c[a+12>>2]=d;c[a+16>>2]=e;c[a+8>>2]=b;h=c[a>>2]|0;i=zb[c[(c[h>>2]|0)+64>>2]&15](h,b,d,e)|0;l=f;return i|0}if(e>>>0<2){h=fe(43100,32126,72)|0;c[g>>2]=iq(h+(c[(c[h>>2]|0)+-12>>2]|0)|0)|0;j=Hr(g,43804)|0;k=Bb[c[(c[j>>2]|0)+28>>2]&63](j,10)|0;Oy(g);Aq(h,k)|0;nq(h)|0;i=0;l=f;return i|0}if(e&1|0){h=fe(xq(fe(43100,32199,59)|0,e)|0,32259,14)|0;c[g>>2]=iq(h+(c[(c[h>>2]|0)+-12>>2]|0)|0)|0;k=Hr(g,43804)|0;j=Bb[c[(c[k>>2]|0)+28>>2]&63](k,10)|0;Oy(g);Aq(h,j)|0;nq(h)|0;i=0;l=f;return i|0}h=a+8|0;j=c[h>>2]|0;g=a+20|0;if((j|0)>0){k=0;m=j;j=c[g>>2]|0;while(1){n=c[j+(k<<2)>>2]|0;if(!n){o=j;p=m}else{cz(n);o=c[g>>2]|0;p=c[h>>2]|0}k=k+1|0;if((k|0)>=(p|0))break;else{m=p;j=o}}if(o|0)cz(o);o=c[a+24>>2]|0;if(o|0)cz(o);o=a+48|0;j=c[o>>2]|0;if(j|0){Wo(j);c[o>>2]=0;o=a+52|0;j=c[o>>2]|0;if(j|0)cz(j);c[o>>2]=0}o=c[a+32>>2]|0;if(o|0)qb[c[(c[o>>2]|0)+4>>2]&511](o)}c[a+12>>2]=d;o=a+16|0;c[o>>2]=e;c[h>>2]=b;h=az(b>>>0>1073741823?-1:b<<2)|0;c[g>>2]=h;if((b|0)>0?(j=e+2|0,p=j>>>0>1073741823?-1:j<<2,c[h>>2]=az(p)|0,(b|0)!=1):0){h=1;do{j=c[g>>2]|0;c[j+(h<<2)>>2]=az(p)|0;h=h+1|0}while((h|0)<(b|0))}c[a+24>>2]=az(e>>>0>536870911?-1:e<<3)|0;h=$y(24)|0;p=c[a+28>>2]|0;switch(p|0){case 4:case 3:case 2:case 1:case 0:{q=p;break}case 7:{q=5;break}case 8:{q=6;break}default:q=3}c[h>>2]=12384;c[h+4>>2]=q;c[h+8>>2]=e;Fj(h);c[a+32>>2]=h;c[a+48>>2]=Gj(c[o>>2]|0,0,0,0)|0;h=c[o>>2]|0;o=((h|0)/2|0)+1|0;c[a+52>>2]=az(o>>>0>268435455?-1:o<<4)|0;c[a+40>>2]=0;o=c[a>>2]|0;i=zb[c[(c[o>>2]|0)+64>>2]&15](o,b,d,h)|0;l=f;return i|0}function Fj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0.0;b=c[a+8>>2]|0;d=az(b>>>0>536870911?-1:b<<3)|0;e=(b|0)>0;if(e){f=0;do{h[d+(f<<3)>>3]=1.0;f=f+1|0}while((f|0)!=(b|0))}switch(c[a+4>>2]|0){case 0:{if(e){f=0;do{g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*.5;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 1:{f=(b|0)/2|0;if((b|0)>1){j=+(f|0);g=0;do{k=+(g|0)/j;l=d+(g<<3)|0;h[l>>3]=k*+h[l>>3];l=d+(g+f<<3)|0;h[l>>3]=(1.0-k)*+h[l>>3];g=g+1|0}while((g|0)<(f|0))}break}case 2:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.54-+J(+(k*6.283185307179586/j))*.46+ +J(+(k*12.566370614359172/j))*0.0-+J(+(k*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 3:{if(e){j=+(b|0);f=0;do{m=+(f|0);k=.5-+J(+(m*6.283185307179586/j))*.5+ +J(+(m*12.566370614359172/j))*0.0-+J(+(m*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*k;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 4:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.42-+J(+(k*6.283185307179586/j))*.5+ +J(+(k*12.566370614359172/j))*.08-+J(+(k*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 5:{if(e){j=+(b|0);f=0;do{m=+(f|0);k=.3635819-+J(+(m*6.283185307179586/j))*.4891775+ +J(+(m*12.566370614359172/j))*.1365995-+J(+(m*18.84955592153876/j))*.0106411;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*k;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 6:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.35875-+J(+(k*6.283185307179586/j))*.48829+ +J(+(k*12.566370614359172/j))*.14128-+J(+(k*18.84955592153876/j))*.01168;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}default:{}}if((i|0)==24){c[a+12>>2]=d;i=a+16|0;h[i>>3]=0.0;n=0.0;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}c[a+12>>2]=d;i=a+16|0;h[i>>3]=0.0;if(e){r=0;s=0.0}else{n=0.0;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}do{s=+h[d+(r<<3)>>3]+s;r=r+1|0}while((r|0)!=(b|0));h[i>>3]=s;n=s;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}function Gj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0,p=0,q=0;if(a&1|0){Po(32274,36,1,c[3388]|0)|0;f=0;return f|0}g=a>>1;a=g<<4;i=a+264|0;j=a+276+(((g*3|0)/2|0)<<4)|0;if(e){a=(c[e>>2]|0)>>>0<j>>>0;c[e>>2]=j;if(a){f=0;return f|0}else k=d}else k=Vo(j)|0;if(!k){f=0;return f|0}j=k+12|0;c[k>>2]=j;d=j+i|0;c[k+4>>2]=d;i=k+8|0;c[i>>2]=d+(g<<4);c[j>>2]=g;d=k+16|0;c[d>>2]=b;l=+(g|0);a:do if((g|0)>0){a=0;e=b;while(1){m=+(a|0)*-6.283185307179586/l;n=(e|0)==0?m:-m;h[j+264+(a<<4)>>3]=+J(+n);h[j+264+(a<<4)+8>>3]=+K(+n);o=a+1|0;if((o|0)==(g|0))break a;a=o;e=c[d>>2]|0}}while(0);n=+F(+(+H(+l)));d=g;j=4;e=k+20|0;while(1){b:do if(!((d|0)%(j|0)|0))p=j;else{a=j;while(1){switch(a|0){case 4:{q=2;break}case 2:{q=3;break}default:q=a+2|0}o=+(q|0)>n?d:q;if(!((d|0)%(o|0)|0)){p=o;break b}else a=o}}while(0);d=(d|0)/(p|0)|0;c[e>>2]=p;c[e+4>>2]=d;if((d|0)<=1)break;else{j=p;e=e+8|0}}e=(g|0)/2|0;if((g|0)<=1){f=k;return f|0}n=+(g|0);g=c[i>>2]|0;if(!b){b=0;do{i=b;b=b+1|0;l=(+(b|0)/n+.5)*-3.141592653589793;h[g+(i<<4)>>3]=+J(+l);h[g+(i<<4)+8>>3]=+K(+l)}while((b|0)<(e|0));f=k;return f|0}else{b=0;do{i=b;b=b+1|0;l=(+(b|0)/n+.5)*-3.141592653589793;h[g+(i<<4)>>3]=+J(+l);h[g+(i<<4)+8>>3]=+K(+-l)}while((b|0)<(e|0));f=k;return f|0}return 0}function Hj(a){a=a|0;var b=0;c[a>>2]=12384;b=c[a+12>>2]|0;if(!b)return;cz(b);return}function Ij(a){a=a|0;var b=0;c[a>>2]=12384;b=c[a+12>>2]|0;if(!b){bz(a);return}cz(b);bz(a);return}function Jj(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;b=a+44|0;d=c[b>>2]|0;e=a+8|0;do if(d|0){f=c[e>>2]|0;if((f|0)>0){g=0;h=f;f=d;while(1){i=c[f+(g<<2)>>2]|0;if(!i){j=f;k=h}else{cz(i);j=c[b>>2]|0;k=c[e>>2]|0}g=g+1|0;if((g|0)>=(k|0))break;else{h=k;f=j}}if(!j)break;else l=j}else l=d;cz(l)}while(0);l=c[e>>2]|0;if((l|0)<=0)return;d=a+20|0;j=0;k=c[d>>2]|0;b=l;while(1){l=c[k+(j<<2)>>2]|0;if(!l){m=k;n=b}else{cz(l);m=c[d>>2]|0;n=c[e>>2]|0}j=j+1|0;if((j|0)>=(n|0))break;else{k=m;b=n}}if(m|0)cz(m);m=c[a+24>>2]|0;if(m|0)cz(m);m=a+48|0;n=c[m>>2]|0;if(n|0){Wo(n);c[m>>2]=0;m=a+52|0;n=c[m>>2]|0;if(n|0)cz(n);c[m>>2]=0}m=c[a+32>>2]|0;if(!m)return;qb[c[(c[m>>2]|0)+4>>2]&511](m);return}function Kj(a,b){a=a|0;b=b|0;var d=0,e=0;mk(a,b);c[a>>2]=12272;d=$y(56)|0;e=c[a+4>>2]|0;c[d>>2]=b;c[d+4>>2]=e;e=d+8|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[d+28>>2]=3;e=d+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[a+12>>2]=d;return}function Lj(a,b){a=a|0;b=b|0;var d=0;d=c[b+12>>2]|0;b=c[d>>2]|0;if(!(tb[c[(c[b>>2]|0)+72>>2]&127](b)|0)){c[a>>2]=c[10528];c[a+4>>2]=c[10529];return}if(((c[d+36>>2]|0)+-1|0)>>>0<2){c[a>>2]=c[10528];c[a+4>>2]=c[10529];return}else{qk(a,(c[d+16>>2]|0)/2|0,~~(+g[d+4>>2]+.5));return}}function Mj(){c[10525]=0;Za(260,42100,o|0)|0;return}function Nj(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;qb[c[(c[b>>2]|0)+4>>2]&511](b);return}function Oj(){nk(42104,-2147483648,-2147483648);return}function Pj(a){a=a|0;var b=0;c[a>>2]=12400;b=c[a+8>>2]|0;if(!b)return;qb[c[(c[b>>2]|0)+4>>2]&511](b);return}function Qj(a){a=a|0;var b=0;c[a>>2]=12400;b=c[a+8>>2]|0;if(!b){bz(a);return}qb[c[(c[b>>2]|0)+4>>2]&511](b);bz(a);return}function Rj(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+8>>2]&127](b)|0}function Sj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+12>>2]&127](a,d);return}function Tj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+16>>2]&127](a,d);return}function Uj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+20>>2]&127](a,d);return}function Vj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+24>>2]&127](a,d);return}function Wj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+28>>2]&127](a,d);return}function Xj(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+32>>2]&127](b)|0}function Yj(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+36>>2]&127](a,d);return}function Zj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=l;l=l+16|0;e=d;f=c[a+8>>2]|0;a=c[(c[f>>2]|0)+40>>2]|0;kz(e,b);g=+ob[a&3](f,e);oz(e);l=d;return +g}function _j(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[a+8>>2]|0;a=c[(c[g>>2]|0)+44>>2]|0;kz(f,b);lb[a&3](g,f,d);oz(f);l=e;return}function $j(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+48>>2]&127](a,d);return}function ak(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+52>>2]&127](a,d);return}function bk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a+8>>2]|0;a=c[(c[f>>2]|0)+56>>2]|0;kz(e,b);rb[a&127](f,e);oz(e);l=d;return}function ck(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+8>>2]|0;return zb[c[(c[f>>2]|0)+64>>2]&15](f,b,d,e)|0}function dk(a){a=a|0;var b=0;b=c[a+8>>2]|0;qb[c[(c[b>>2]|0)+68>>2]&511](b);return}function ek(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+72>>2]&127](b)|0}function fk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+76>>2]&127](b)|0}function gk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+80>>2]&127](b)|0}function hk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+84>>2]&127](b)|0}function ik(a){a=a|0;var b=0;b=c[a+8>>2]|0;return tb[c[(c[b>>2]|0)+88>>2]&127](b)|0}function jk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+92>>2]&127](a,d);return}function kk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+8>>2]|0;b=c[(c[h>>2]|0)+96>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Ab[b&31](a,h,d,g);l=f;return}function lk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;rb[c[(c[d>>2]|0)+100>>2]&127](a,d);return}function mk(a,b){a=a|0;b=b|0;c[a+4>>2]=c[b+4>>2];c[a>>2]=12400;c[a+8>>2]=b;return}function nk(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,r=0,s=0;c[a>>2]=b;e=a+4|0;c[e>>2]=d;if(!b){if((d|0)<-999999999){f=((-1e9-d|0)>>>0)/1e9|0;g=(T(f,1e9)|0)+d+1e9|0;h=~f;c[e>>2]=g;c[a>>2]=h;i=h;j=g}else{i=0;j=d}if((j|0)<=999999999)return;g=j+-1e9|0;j=(g>>>0)/1e9|0;c[e>>2]=g+(T(j,-1e9)|0);c[a>>2]=i+j+1;return}if((b|0)<0){if((d|0)<-999999999){j=((-1e9-d|0)>>>0)/1e9|0;i=(T(j,1e9)|0)+d+1e9|0;g=b+-1-j|0;c[e>>2]=i;c[a>>2]=g;k=i;l=g}else{k=d;l=b}if((k|0)>0){m=l;n=k}else return;while(1){if((m|0)>=0){o=17;break}k=n;n=n+-1e9|0;c[e>>2]=n;m=m+1|0;c[a>>2]=m;if((k|0)<=1e9){o=17;break}}if((o|0)==17)return}else{if((d|0)>999999999){m=d+-1e9|0;n=(m>>>0)/1e9|0;k=m+(T(n,-1e9)|0)|0;m=n+b+1|0;c[e>>2]=k;c[a>>2]=m;p=k;q=m}else{p=d;q=b}if((p|0)<0){r=q;s=p}else return;while(1){if((r|0)<=0){o=17;break}p=s;s=s+1e9|0;c[e>>2]=s;r=r+-1|0;c[a>>2]=r;if((p|0)>=-1e9){o=17;break}}if((o|0)==17)return}}function ok(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+16|0;e=d+8|0;f=d;if(b!=b|0.0!=0.0){g=fe(43100,32427,52)|0;c[e>>2]=iq(g+(c[(c[g>>2]|0)+-12>>2]|0)|0)|0;h=Hr(e,43804)|0;i=Bb[c[(c[h>>2]|0)+28>>2]&63](h,10)|0;Oy(e);Aq(g,i)|0;nq(g)|0;c[a>>2]=0;c[a+4>>2]=0;l=d;return}if(!(b>=0.0)){ok(f,-b);nk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=d;return}else{f=~~b;nk(a,f,~~((b-+(f|0))*1.0e9+.5));l=d;return}}function pk(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;g=(f|0)==0;if(g){h=c[a+4>>2]|0;if((h|0)<0)i=h;else{j=h;k=15}}else{h=c[a+4>>2]|0;if((f|0)<0)i=h;else{j=h;k=15}}if((k|0)==15){m=~~(+(b>>>0)*(+(f|0)+ +(j|0)/1.0e9)+.5);l=d;return m|0}j=0-f|0;k=0-i|0;c[e>>2]=j;h=e+4|0;c[h>>2]=k;a:do if(g){if((i|0)>999999999){a=((i+-1e9|0)>>>0)/1e9|0;n=(T(a,1e9)|0)-i+1e9|0;c[h>>2]=n;c[e>>2]=~a;o=0-a|0;p=n}else{o=1;p=k}if((p|0)>999999999){n=p+-1e9|0;a=(n>>>0)/1e9|0;c[h>>2]=(T(a,-1e9)|0)+n;c[e>>2]=o+a}}else{if((i|0)<-999999999){a=-1e9-i|0;n=(a>>>0)/1e9|0;q=(T(n,-1e9)|0)+a|0;a=n-f+1|0;c[h>>2]=q;c[e>>2]=a;r=q;s=a}else{r=k;s=j}if((r|0)<0){a=s;q=r;do{if((a|0)<=0)break a;n=q;q=q+1e9|0;c[h>>2]=q;a=a+-1|0;c[e>>2]=a}while((n|0)<-1e9)}}while(0);m=0-(pk(e,b)|0)|0;l=d;return m|0}function qk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;if((b|0)<0){qk(f,0-b|0,d);nk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=e;return}else{f=(b|0)/(d|0)|0;nk(a,f,~~(+(b-(T(f,d)|0)|0)/+(d>>>0)*1.0e9+.5));l=e;return}}function rk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;c[a>>2]=b;e=a+4|0;c[e>>2]=d;if(!b){if((d|0)<-999999999){f=((-1e9-d|0)>>>0)/1e9|0;g=(T(f,1e9)|0)+d+1e9|0;h=~f;c[e>>2]=g;c[a>>2]=h;i=h;j=g}else{i=0;j=d}if((j|0)<=999999999)return;g=j+-1e9|0;j=(g>>>0)/1e9|0;c[e>>2]=g+(T(j,-1e9)|0);c[a>>2]=i+j+1;return}if((b|0)<0){if((d|0)<-999999999){j=((-1e9-d|0)>>>0)/1e9|0;i=(T(j,1e9)|0)+d+1e9|0;g=b+-1-j|0;c[e>>2]=i;c[a>>2]=g;k=i;l=g}else{k=d;l=b}if((k|0)>0){m=l;n=k}else return;while(1){if((m|0)>=0){o=17;break}k=n;n=n+-1e9|0;c[e>>2]=n;m=m+1|0;c[a>>2]=m;if((k|0)<=1e9){o=17;break}}if((o|0)==17)return}else{if((d|0)>999999999){m=d+-1e9|0;n=(m>>>0)/1e9|0;k=m+(T(n,-1e9)|0)|0;m=n+b+1|0;c[e>>2]=k;c[a>>2]=m;p=k;q=m}else{p=d;q=b}if((p|0)<0){r=q;s=p}else return;while(1){if((r|0)<=0){o=17;break}p=s;s=s+1e9|0;c[e>>2]=s;r=r+-1|0;c[a>>2]=r;if((p|0)>=-1e9){o=17;break}}if((o|0)==17)return}}function sk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;if((b|0)<0){sk(f,0-b|0,d);rk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=e;return}else{f=(b|0)/(d|0)|0;rk(a,f,~~(+(b-(T(f,d)|0)|0)/+(d>>>0)*1.0e9+.5));l=e;return}}function tk(a){a=a|0;return 0.0}function uk(a){a=a|0;return 0}function vk(a){a=a|0;return 0}function wk(b){b=b|0;if(a[41224]|0)return 42152;if(!(WA(41224)|0))return 42152;Ek(42128);Za(261,42128,o|0)|0;return 42152}function xk(b){b=b|0;if(a[41224]|0)return 42164;if(!(WA(41224)|0))return 42164;Ek(42128);Za(261,42128,o|0)|0;return 42164}function yk(b,c){b=b|0;c=c|0;if(a[41216]|0)return 42120;if(!(WA(41216)|0))return 42120;Ck(42120);Za(262,42120,o|0)|0;return 42120}function zk(b){b=b|0;if(a[41224]|0)return 42176;if(!(WA(41224)|0))return 42176;Ek(42128);Za(261,42128,o|0)|0;return 42176}function Ak(b,c){b=b|0;c=c|0;if(a[41216]|0)return 42120;if(!(WA(41216)|0))return 42120;Ck(42120);Za(262,42120,o|0)|0;return 42120}function Bk(a){a=a|0;return}function Ck(b){b=b|0;var d=0;if((a[41224]|0)==0?WA(41224)|0:0){Ek(42128);Za(261,42128,o|0)|0}c[b>>2]=c[10532];d=c[10533]|0;c[b+4>>2]=d;if(!d)return;Xy(d);return}function Dk(a){a=a|0;var b=0;b=c[a+4>>2]|0;if(!b)return;Yy(b);return}function Ek(b){b=b|0;var d=0,e=0;d=$y(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=12512;e=d+12|0;c[d+16>>2]=0;c[e>>2]=12540;c[b>>2]=e;c[b+4>>2]=d;d=$y(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=12604;e=d+12|0;a[d+16>>0]=1;c[e>>2]=12632;c[b+8>>2]=e;c[b+12>>2]=d;d=$y(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=12604;e=d+12|0;a[d+16>>0]=0;c[e>>2]=12632;c[b+16>>2]=e;c[b+20>>2]=d;d=b+24|0;c[b+52>>2]=0;c[b+56>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[b+48>>2]=b+52;return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;dd(a+48|0,c[a+52>>2]|0);b=a+36|0;d=c[b>>2]|0;if(d|0){e=a+40|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{Yy(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}bz(g)}oz(a+24|0);g=c[a+20>>2]|0;if(g|0)Yy(g);g=c[a+12>>2]|0;if(g|0)Yy(g);g=c[a+4>>2]|0;if(!g)return;Yy(g);return}function Gk(a){a=a|0;return 2}function Hk(b,c){b=b|0;c=c|0;return (a[b+4>>0]|0)==(a[c+4>>0]|0)|0}function Ik(a,b){a=a|0;b=b|0;return (d[a+4>>0]|0)<(d[b+4>>0]|0)|0}function Jk(b,c){b=b|0;c=c|0;yz(c,a[b+4>>0]|0?39997:39991)|0;return}function Kk(b){b=b|0;return (a[b+4>>0]|0)!=0|0}function Lk(a){a=a|0;bz(a);return}function Mk(a){a=a|0;Ty(a);return}function Nk(a){a=a|0;Ty(a);bz(a);return}function Ok(a){a=a|0;return}function Pk(a){a=a|0;bz(a);return}function Qk(a){a=a|0;return 0}function Rk(a,b){a=a|0;b=b|0;return (c[a+4>>2]|0)==(c[b+4>>2]|0)|0}function Sk(a,b){a=a|0;b=b|0;return (c[a+4>>2]|0)>>>0<(c[b+4>>2]|0)>>>0|0}function Tk(a,b){a=a|0;b=b|0;yz(b,32613)|0;return}function Uk(a){a=a|0;bz(a);return}function Vk(a){a=a|0;Ty(a);return}function Wk(a){a=a|0;Ty(a);bz(a);return}function Xk(a){a=a|0;return}function Yk(a){a=a|0;bz(a);return}function Zk(a){a=a|0;return 4}function _k(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+8>>2]|0;e=c[a+4>>2]|0;a=c[b+4>>2]|0;f=e;g=d;if((d-e|0)!=((c[b+8>>2]|0)-a|0)){h=0;return h|0}if((f|0)==(g|0)){h=1;return h|0}b=f;f=a;while(1){a=c[b>>2]|0;e=tb[c[c[a>>2]>>2]&127](a)|0;a=c[f>>2]|0;if((e|0)!=(tb[c[c[a>>2]>>2]&127](a)|0)){h=0;i=7;break}a=c[b>>2]|0;if(!(Bb[c[(c[a>>2]|0)+4>>2]&63](a,c[f>>2]|0)|0)){h=0;i=7;break}b=b+8|0;if((b|0)==(g|0)){h=1;i=7;break}else f=f+8|0}if((i|0)==7)return h|0;return 0}function $k(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,m=0,n=0,o=0,p=0;d=l;l=l+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;i=d+16|0;j=d+12|0;k=d+8|0;m=d+4|0;n=c[a+8>>2]|0;o=c[b+4>>2]|0;p=c[b+8>>2]|0;c[i>>2]=c[a+4>>2];c[j>>2]=n;c[k>>2]=o;c[m>>2]=p;c[h>>2]=c[i>>2];c[g>>2]=c[j>>2];c[f>>2]=c[k>>2];c[e>>2]=c[m>>2];m=gl(h,g,f,e,d)|0;l=d;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;yz(b,32839)|0;d=c[a+4>>2]|0;e=c[a+8>>2]|0;if((d|0)==(e|0)){yz(b,32844)|0;return}else{f=1;g=d}while(1){if(!f)yz(b,32841)|0;d=c[g>>2]|0;rb[c[(c[d>>2]|0)+12>>2]&127](d,b);g=g+8|0;if((g|0)==(e|0))break;else f=0}yz(b,32844)|0;return}function bl(a){a=a|0;return a+4|0}function cl(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+4>>2]|0;if((c[b+8>>2]|0)-e>>3>>>0>d>>>0){f=e+(d<<3)|0;return f|0}if(a[41216]|0){f=42120;return f|0}if(!(WA(41216)|0)){f=42120;return f|0}Ck(42120);Za(262,42120,o|0)|0;f=42120;return f|0}function dl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=12760;b=a+4|0;d=c[b>>2]|0;if(!d)return;e=a+8|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;while(1){a=g+-8|0;c[e>>2]=a;h=c[g+-4>>2]|0;if(!h)i=a;else{Yy(h);i=c[e>>2]|0}if((i|0)==(d|0))break;else g=i}f=c[b>>2]|0}bz(f);return}function el(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=12760;b=a+4|0;d=c[b>>2]|0;if(!d){bz(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{Yy(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}bz(g);bz(a);return}function fl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=12760;b=a+4|0;d=c[b>>2]|0;if(!d){bz(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{Yy(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}bz(g);bz(a);return}function gl(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;f=c[d>>2]|0;g=c[e>>2]|0;if((f|0)==(g|0)){h=0;return h|0}e=c[b>>2]|0;b=f;f=c[a>>2]|0;while(1){if((f|0)==(e|0)){h=1;i=11;break}j=c[f>>2]|0;k=tb[c[c[j>>2]>>2]&127](j)|0;j=c[b>>2]|0;l=(k|0)==(tb[c[c[j>>2]>>2]&127](j)|0);j=c[f>>2]|0;if(l){if(Bb[c[(c[j>>2]|0)+8>>2]&63](j,c[b>>2]|0)|0){h=1;i=11;break}}else{l=tb[c[c[j>>2]>>2]&127](j)|0;j=c[b>>2]|0;if((l|0)<(tb[c[c[j>>2]>>2]&127](j)|0)){h=1;i=11;break}}j=c[b>>2]|0;l=tb[c[c[j>>2]>>2]&127](j)|0;j=c[f>>2]|0;k=(l|0)==(tb[c[c[j>>2]>>2]&127](j)|0);j=c[b>>2]|0;if(k){if(Bb[c[(c[j>>2]|0)+8>>2]&63](j,c[f>>2]|0)|0){h=0;i=11;break}}else{k=tb[c[c[j>>2]>>2]&127](j)|0;j=c[f>>2]|0;if((k|0)<(tb[c[c[j>>2]>>2]&127](j)|0)){h=0;i=11;break}}f=f+8|0;c[a>>2]=f;b=b+8|0;c[d>>2]=b;if((b|0)==(g|0)){h=0;i=11;break}}if((i|0)==11)return h|0;return 0}function hl(a){a=a|0;return 5}function il(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((c[b+12>>2]|0)!=(c[d+12>>2]|0)){e=0;return e|0}f=c[b+4>>2]|0;g=b+8|0;b=c[d+4>>2]|0;if((f|0)==(g|0)){e=1;return e|0}d=f;h=b;i=f;f=b;a:while(1){b=d+16|0;j=h+16|0;k=a[b+11>>0]|0;l=k<<24>>24<0;m=k&255;k=l?c[d+20>>2]|0:m;n=a[j+11>>0]|0;o=n<<24>>24<0;if((k|0)!=((o?c[h+20>>2]|0:n&255)|0)){e=0;p=21;break}n=c[b>>2]|0;q=l?n:b;r=o?c[j>>2]|0:j;j=(k|0)==0;b:do if(l){if(!j?Xn(q,r,k)|0:0){e=0;p=21;break a}}else if(!j){if((n&255)<<24>>24==(a[r>>0]|0)){s=m;t=r;u=b}else{e=0;p=21;break a}while(1){s=s+-1|0;u=u+1|0;if(!s)break b;t=t+1|0;if((a[u>>0]|0)!=(a[t>>0]|0)){e=0;p=21;break a}}}while(0);b=d+28|0;r=c[b>>2]|0;m=tb[c[c[r>>2]>>2]&127](r)|0;r=h+28|0;n=c[r>>2]|0;if((m|0)!=(tb[c[c[n>>2]>>2]&127](n)|0)){e=0;p=21;break}n=c[b>>2]|0;if(!(Bb[c[(c[n>>2]|0)+4>>2]&63](n,c[r>>2]|0)|0)){e=0;p=21;break}r=c[i+4>>2]|0;if(!r){n=i;while(1){b=c[n+8>>2]|0;if((c[b>>2]|0)==(n|0)){v=b;break}else n=b}}else{n=r;while(1){b=c[n>>2]|0;if(!b){v=n;break}else n=b}}n=c[f+4>>2]|0;if(!n){r=f;while(1){b=c[r+8>>2]|0;if((c[b>>2]|0)==(r|0)){w=b;break}else r=b}}else{r=n;while(1){b=c[r>>2]|0;if(!b){w=r;break}else r=b}}if((v|0)==(g|0)){e=1;p=21;break}else{d=v;h=w;i=v;f=w}}if((p|0)==21)return e|0;return 0}function jl(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,m=0,n=0;d=l;l=l+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;i=d+16|0;j=d+12|0;k=d+8|0;m=d+4|0;n=c[b+4>>2]|0;c[i>>2]=c[a+4>>2];c[j>>2]=a+8;c[k>>2]=n;c[m>>2]=b+8;c[h>>2]=c[i>>2];c[g>>2]=c[j>>2];c[f>>2]=c[k>>2];c[e>>2]=c[m>>2];m=sl(h,g,f,e,d)|0;l=d;return m|0}function kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;yz(b,33020)|0;d=c[a+4>>2]|0;e=a+8|0;if((d|0)==(e|0)){yz(b,33022)|0;return}a=1;f=d;while(1){if(!a)yz(b,32841)|0;rl(f+16|0,b);yz(b,40486)|0;d=c[f+28>>2]|0;rb[c[(c[d>>2]|0)+12>>2]&127](d,b);d=c[f+4>>2]|0;if(!d){g=f;while(1){h=c[g+8>>2]|0;if((c[h>>2]|0)==(g|0)){i=h;break}else g=h}}else{g=d;while(1){h=c[g>>2]|0;if(!h){i=g;break}else g=h}}if((i|0)==(e|0))break;else{a=0;f=i}}yz(b,33022)|0;return}function ll(a){a=a|0;return a+4|0}function ml(b,c){b=b|0;c=c|0;var d=0,e=0;d=ql(b+4|0,c)|0;if((d|0)!=(b+8|0)){e=d+28|0;return e|0}if(a[41216]|0){e=42120;return e|0}if(!(WA(41216)|0)){e=42120;return e|0}Ck(42120);Za(262,42120,o|0)|0;e=42120;return e|0}function nl(a){a=a|0;c[a>>2]=12888;dd(a+4|0,c[a+8>>2]|0);return}function ol(a){a=a|0;c[a>>2]=12888;dd(a+4|0,c[a+8>>2]|0);bz(a);return}function pl(a){a=a|0;c[a>>2]=12888;dd(a+4|0,c[a+8>>2]|0);bz(a);return}function ql(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=b+4|0;b=c[e>>2]|0;do if(b|0){f=a[d+11>>0]|0;g=f<<24>>24<0;h=g?c[d+4>>2]|0:f&255;f=g?c[d>>2]|0:d;g=e;i=b;a:while(1){j=i;while(1){k=j+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[j+20>>2]|0:l&255;l=h>>>0<n>>>0?h:n;if((l|0)!=0?(o=Xn(m?c[k>>2]|0:k,f,l)|0,(o|0)!=0):0){if((o|0)>=0)break}else p=6;if((p|0)==6?(p=0,n>>>0>=h>>>0):0)break;n=c[j+4>>2]|0;if(!n){q=g;break a}else j=n}i=c[j>>2]|0;if(!i){q=j;break}else g=j}if((q|0)!=(e|0)){g=q+16|0;i=a[g+11>>0]|0;n=i<<24>>24<0;o=n?c[q+20>>2]|0:i&255;i=o>>>0<h>>>0?o:h;if(i|0?(l=Xn(f,n?c[g>>2]|0:g,i)|0,l|0):0){if((l|0)<0)break;else r=q;return r|0}if(h>>>0>=o>>>0){r=q;return r|0}}}while(0);r=e;return r|0}function rl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e;g=e+8|0;zz(d,34);h=b+11|0;i=a[h>>0]|0;j=b+4|0;if(!((i<<24>>24<0?c[j>>2]|0:i&255)|0)){zz(d,34);l=e;return}k=0;m=i;do{i=m<<24>>24<0?c[b>>2]|0:b;n=a[i+k>>0]|0;a:do switch(n<<24>>24){case 92:{yz(d,33024)|0;o=k;break}case 34:{yz(d,33027)|0;o=k;break}case 8:{yz(d,33030)|0;o=k;break}case 12:{yz(d,33033)|0;o=k;break}case 10:{yz(d,33036)|0;o=k;break}case 13:{yz(d,33039)|0;o=k;break}case 9:{yz(d,33042)|0;o=k;break}default:{if((n&255)<32){c[f>>2]=n<<24>>24;Vn(g,8,33045,f)|0;yz(d,g)|0;o=k;break a}if(n<<24>>24==-30?(a[i+(k+1)>>0]|0)==-128:0){p=k+2|0;if((a[i+p>>0]|0)==-88){yz(d,33052)|0;o=p;break a}p=k+2|0;if((a[i+p>>0]|0)==-87){yz(d,33059)|0;o=p;break a}}zz(d,n);o=k}}while(0);k=o+1|0;m=a[h>>0]|0}while(k>>>0<(m<<24>>24<0?c[j>>2]|0:m&255)>>>0);zz(d,34);l=e;return}function sl(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;g=c[e>>2]|0;h=c[f>>2]|0;if((g|0)==(h|0)){i=0;return i|0}f=c[b>>2]|0;j=c[d>>2]|0;d=g;k=f;l=g;m=g;g=f;a:while(1){if((g|0)==(j|0)){i=1;n=33;break}f=g+16|0;o=d+16|0;p=a[f+11>>0]|0;q=p<<24>>24<0;r=q?c[g+20>>2]|0:p&255;p=a[o+11>>0]|0;s=p<<24>>24<0;t=s?c[d+20>>2]|0:p&255;p=t>>>0<r>>>0;u=p?t:r;if((u|0)!=0?(v=Xn(q?c[f>>2]|0:f,s?c[o>>2]|0:o,u)|0,(v|0)!=0):0){if((v|0)<0){i=1;n=33;break}}else n=6;if((n|0)==6?(n=0,r>>>0<t>>>0):0){i=1;n=33;break}v=r>>>0<t>>>0?r:t;if((v|0)!=0?(t=Xn(s?c[o>>2]|0:o,q?c[f>>2]|0:f,v)|0,(t|0)!=0):0){if((t|0)>=0)n=12}else n=10;if((n|0)==10?(n=0,!p):0)n=12;do if((n|0)==12){n=0;p=g+28|0;t=c[p>>2]|0;v=tb[c[c[t>>2]>>2]&127](t)|0;t=d+28|0;f=c[t>>2]|0;q=(v|0)==(tb[c[c[f>>2]>>2]&127](f)|0);f=c[p>>2]|0;if(q)if(Bb[c[(c[f>>2]|0)+8>>2]&63](f,c[t>>2]|0)|0){i=1;n=33;break a}else break;else{q=tb[c[c[f>>2]>>2]&127](f)|0;f=c[t>>2]|0;if((q|0)<(tb[c[c[f>>2]>>2]&127](f)|0)){i=1;n=33;break a}else break}}while(0);f=m+16|0;q=g+16|0;t=a[f+11>>0]|0;p=t<<24>>24<0;v=p?c[m+20>>2]|0:t&255;t=a[q+11>>0]|0;o=t<<24>>24<0;s=o?c[g+20>>2]|0:t&255;t=s>>>0<v>>>0;r=t?s:v;if((r|0)!=0?(u=Xn(p?c[f>>2]|0:f,o?c[q>>2]|0:q,r)|0,(u|0)!=0):0){if((u|0)<0){i=0;n=33;break}}else n=17;if((n|0)==17?(n=0,v>>>0<s>>>0):0){i=0;n=33;break}u=v>>>0<s>>>0?v:s;if((u|0)!=0?(s=Xn(o?c[q>>2]|0:q,p?c[f>>2]|0:f,u)|0,(s|0)!=0):0){if((s|0)>=0)n=23}else n=21;if((n|0)==21?(n=0,!t):0)n=23;do if((n|0)==23){n=0;t=m+28|0;s=c[t>>2]|0;u=tb[c[c[s>>2]>>2]&127](s)|0;s=g+28|0;f=c[s>>2]|0;p=(u|0)==(tb[c[c[f>>2]>>2]&127](f)|0);f=c[t>>2]|0;if(p)if(Bb[c[(c[f>>2]|0)+8>>2]&63](f,c[s>>2]|0)|0){i=0;n=33;break a}else break;else{p=tb[c[c[f>>2]>>2]&127](f)|0;f=c[s>>2]|0;if((p|0)<(tb[c[c[f>>2]>>2]&127](f)|0)){i=0;n=33;break a}else break}}while(0);f=c[k+4>>2]|0;if(!f){p=k;while(1){s=c[p+8>>2]|0;if((c[s>>2]|0)==(p|0)){w=s;break}else p=s}}else{p=f;while(1){s=c[p>>2]|0;if(!s){w=p;break}else p=s}}c[b>>2]=w;p=c[l+4>>2]|0;if(!p){f=l;while(1){s=c[f+8>>2]|0;if((c[s>>2]|0)==(f|0)){x=s;break}else f=s}}else{f=p;while(1){s=c[f>>2]|0;if(!s){x=f;break}else f=s}}c[e>>2]=x;if((x|0)==(h|0)){i=0;n=33;break}else{d=x;k=w;l=x;m=x;g=w}}if((n|0)==33)return i|0;return 0}function tl(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;rb[c[(c[d>>2]|0)+12>>2]&127](d,b);return}function ul(a,b){a=a|0;b=+b;var d=0,e=0;d=$y(32)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=12952;e=d+16|0;h[d+24>>3]=b;c[e>>2]=12980;c[a>>2]=e;c[a+4>>2]=d;return}function vl(a){a=a|0;return 1}function wl(a,b){a=a|0;b=b|0;var d=0.0;d=+h[a+8>>3];return d==+pb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function xl(a,b){a=a|0;b=b|0;var d=0.0;d=+h[a+8>>3];return d<+pb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function yl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=l;l=l+48|0;e=d;f=d+8|0;g=+h[a+8>>3];h[j>>3]=g;a=c[j+4>>2]&2146435072;if(a>>>0<2146435072|(a|0)==2146435072&0<0){h[e>>3]=g;Vn(f,32,33088,e)|0;yz(b,f)|0;l=d;return}else{yz(b,32613)|0;l=d;return}}function zl(a){a=a|0;return +(+h[a+8>>3])}function Al(a){a=a|0;return ~~+h[a+8>>3]|0}function Bl(a){a=a|0;bz(a);return}function Cl(a){a=a|0;Ty(a);return}function Dl(a){a=a|0;Ty(a);bz(a);return}function El(a){a=a|0;return}function Fl(a){a=a|0;bz(a);return}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0;d=$y(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13044;e=d+12|0;c[d+16>>2]=b;c[e>>2]=13072;c[a>>2]=e;c[a+4>>2]=d;return}function Hl(a){a=a|0;return 1}function Il(a,b){a=a|0;b=b|0;var d=0.0;d=+(c[a+4>>2]|0);return d==+pb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Jl(a,b){a=a|0;b=b|0;var d=0.0;d=+(c[a+4>>2]|0);return d<+pb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Kl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+48|0;e=d;f=d+8|0;c[e>>2]=c[a+4>>2];Vn(f,32,33225,e)|0;yz(b,f)|0;l=d;return}function Ll(a){a=a|0;return +(+(c[a+4>>2]|0))}function Ml(a){a=a|0;return c[a+4>>2]|0}function Nl(a){a=a|0;bz(a);return}function Ol(a){a=a|0;Ty(a);return}function Pl(a){a=a|0;Ty(a);bz(a);return}function Ql(a){a=a|0;return}function Rl(a){a=a|0;bz(a);return}function Sl(b,d){b=b|0;d=d|0;var e=0;if((a[41224]|0)==0?WA(41224)|0:0){Ek(42128);Za(261,42128,o|0)|0}e=d?42136:42144;c[b>>2]=c[e>>2];d=c[e+4>>2]|0;c[b+4>>2]=d;if(!d)return;Xy(d);return}function Tl(a,b){a=a|0;b=b|0;var d=0,e=0;d=$y(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13136;e=d+12|0;c[e>>2]=13164;kz(d+16|0,b);c[e>>2]=13228;c[a>>2]=e;c[a+4>>2]=d;return}function Ul(a){a=a|0;return 3}function Vl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=b+4|0;f=d+4|0;g=a[e+11>>0]|0;h=g<<24>>24<0;i=g&255;g=h?c[b+8>>2]|0:i;b=a[f+11>>0]|0;j=b<<24>>24<0;if((g|0)!=((j?c[d+8>>2]|0:b&255)|0)){k=0;return k|0}b=c[e>>2]|0;d=h?b:e;l=j?c[f>>2]|0:f;f=(g|0)==0;if(h){if(f){k=1;return k|0}k=(Xn(d,l,g)|0)==0;return k|0}if(f){k=1;return k|0}if((b&255)<<24>>24==(a[l>>0]|0)){m=i;n=l;o=e}else{k=0;return k|0}while(1){m=m+-1|0;o=o+1|0;if(!m){k=1;p=9;break}n=n+1|0;if((a[o>>0]|0)!=(a[n>>0]|0)){k=0;p=9;break}}if((p|0)==9)return k|0;return 0}function Wl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=b+4|0;f=d+4|0;g=a[e+11>>0]|0;h=g<<24>>24<0;i=h?c[b+8>>2]|0:g&255;g=a[f+11>>0]|0;b=g<<24>>24<0;j=b?c[d+8>>2]|0:g&255;g=j>>>0<i>>>0;d=g?j:i;if(d|0?(k=Xn(h?c[e>>2]|0:e,b?c[f>>2]|0:f,d)|0,k|0):0){l=k;m=(l|0)<0;return m|0}l=i>>>0<j>>>0?-1:g&1;m=(l|0)<0;return m|0}function Xl(a,b){a=a|0;b=b|0;rl(a+4|0,b);return}function Yl(a){a=a|0;return a+4|0}function Zl(a){a=a|0;c[a>>2]=13164;oz(a+4|0);return}function _l(a){a=a|0;c[a>>2]=13164;oz(a+4|0);bz(a);return}function $l(a){a=a|0;c[a>>2]=13164;oz(a+4|0);bz(a);return}function am(a){a=a|0;c[a>>2]=13136;c[a+12>>2]=13164;oz(a+16|0);Ty(a);return}function bm(a){a=a|0;c[a>>2]=13136;c[a+12>>2]=13164;oz(a+16|0);Ty(a);bz(a);return}function cm(a){a=a|0;c[a+12>>2]=13164;oz(a+16|0);return}function dm(a){a=a|0;bz(a);return}function em(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=$y(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13136;e=d+12|0;f=d+16|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[e>>2]=13228;c[a>>2]=e;c[a+4>>2]=d;return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+16|0;e=d;f=$y(28)|0;c[f+4>>2]=0;c[f+8>>2]=0;c[f>>2]=13136;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,b,kn(b)|0);b=f+12|0;g=f+16|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[b>>2]=13228;oz(e);c[a>>2]=b;c[a+4>>2]=f;l=d;return}function gm(a,b){a=a|0;b=b|0;var d=0,e=0;d=$y(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13292;e=d+12|0;c[e>>2]=12760;hm(d+16|0,b);c[e>>2]=12696;c[a>>2]=e;c[a+4>>2]=d;return}function hm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>3;if(!g)return;if(g>>>0>536870911)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<3);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{c[g>>2]=c[e>>2];h=c[e+4>>2]|0;c[g+4>>2]=h;if(h|0)Xy(h);e=e+8|0;g=(c[d>>2]|0)+8|0;c[d>>2]=g}while((e|0)!=(b|0));return}function im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=13292;c[a+12>>2]=12760;b=a+16|0;d=c[b>>2]|0;if(!d){Ty(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{Yy(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}bz(g);Ty(a);return}function jm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=13292;c[a+12>>2]=12760;b=a+16|0;d=c[b>>2]|0;if(!d){Ty(a);bz(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{Yy(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}bz(g);Ty(a);bz(a);return}function km(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a+12>>2]=12760;b=a+16|0;d=c[b>>2]|0;if(!d)return;e=a+20|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;while(1){a=g+-8|0;c[e>>2]=a;h=c[g+-4>>2]|0;if(!h)i=a;else{Yy(h);i=c[e>>2]|0}if((i|0)==(d|0))break;else g=i}f=c[b>>2]|0}bz(f);return}function lm(a){a=a|0;bz(a);return}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=$y(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13292;e=d+12|0;c[d+16>>2]=c[b>>2];f=b+4|0;c[d+20>>2]=c[f>>2];g=b+8|0;c[d+24>>2]=c[g>>2];c[g>>2]=0;c[f>>2]=0;c[b>>2]=0;c[e>>2]=12696;c[a>>2]=e;c[a+4>>2]=d;return}function nm(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;om(e,b);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];l=d;return}function om(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,m=0,n=0,o=0,p=0,q=0,r=0;d=l;l=l+16|0;e=d+4|0;f=d;g=$y(28)|0;c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=13320;h=g+12|0;c[h>>2]=12888;i=g+16|0;j=g+20|0;c[j>>2]=0;c[g+24>>2]=0;c[i>>2]=j;k=c[b>>2]|0;m=b+4|0;if((k|0)==(m|0)){c[h>>2]=12824;n=a+4|0;c[a>>2]=h;c[n>>2]=g;l=d;return}b=j;j=k;o=k;while(1){k=j+16|0;c[f>>2]=b;c[e>>2]=c[f>>2];jd(i,e,k,k)|0;k=c[o+4>>2]|0;if(!k){p=o;while(1){q=c[p+8>>2]|0;if((c[q>>2]|0)==(p|0)){r=q;break}else p=q}}else{p=k;while(1){q=c[p>>2]|0;if(!q){r=p;break}else p=q}}if((r|0)==(m|0))break;else{j=r;o=r}}c[h>>2]=12824;n=a+4|0;c[a>>2]=h;c[n>>2]=g;l=d;return}function pm(a){a=a|0;c[a>>2]=13320;c[a+12>>2]=12888;dd(a+16|0,c[a+20>>2]|0);Ty(a);return}function qm(a){a=a|0;c[a>>2]=13320;c[a+12>>2]=12888;dd(a+16|0,c[a+20>>2]|0);Ty(a);bz(a);return}function rm(a){a=a|0;c[a+12>>2]=12888;dd(a+16|0,c[a+20>>2]|0);return}function sm(a){a=a|0;bz(a);return}function tm(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;d=$y(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=13320;e=d+12|0;c[e>>2]=12888;f=d+16|0;c[f>>2]=c[b>>2];g=d+20|0;h=c[b+4>>2]|0;c[g>>2]=h;i=b+8|0;j=c[i>>2]|0;c[d+24>>2]=j;if(!j){c[f>>2]=g;c[e>>2]=12824;k=e;l=d;c[a>>2]=k;m=a+4|0;c[m>>2]=l;return}else{c[h+8>>2]=g;g=b+4|0;c[b>>2]=g;c[g>>2]=0;c[i>>2]=0;c[e>>2]=12824;k=e;l=d;c[a>>2]=k;m=a+4|0;c[m>>2]=l;return}}function um(a){a=a|0;var b=0;b=c[a>>2]|0;return tb[c[c[b>>2]>>2]&127](b)|0}function vm(a){a=a|0;var b=0;b=c[a>>2]|0;return +(+pb[c[(c[b>>2]|0)+16>>2]&3](b))}function wm(a){a=a|0;var b=0;b=c[a>>2]|0;return tb[c[(c[b>>2]|0)+20>>2]&127](b)|0}function xm(a){a=a|0;var b=0;b=c[a>>2]|0;return tb[c[(c[b>>2]|0)+28>>2]&127](b)|0}function ym(a){a=a|0;var b=0;b=c[a>>2]|0;return tb[c[(c[b>>2]|0)+32>>2]&127](b)|0}function zm(a){a=a|0;var b=0;b=c[a>>2]|0;return tb[c[(c[b>>2]|0)+40>>2]&127](b)|0}function Am(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;return Bb[c[(c[d>>2]|0)+44>>2]&63](d,b)|0}function Bm(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=l;l=l+80|0;h=g+8|0;i=g;j=g+68|0;k=g+48|0;m=g+40|0;n=g+24|0;o=g+12|0;c[k>>2]=d;p=k+4|0;c[p>>2]=0;q=k+8|0;c[q>>2]=e;e=k+12|0;a[e>>0]=0;r=k+16|0;c[r>>2]=f;Cm(m,k,0);f=c[k>>2]|0;s=c[p>>2]|0;a:do if((a[f+11>>0]|0)<0){t=c[f>>2]|0;u=s;while(1){switch(a[t+u>>0]|0){case 9:case 10:case 13:case 32:break;default:{v=u;break a}}w=u+1|0;c[p>>2]=w;u=w}}else{u=s;while(1){switch(a[f+u>>0]|0){case 9:case 10:case 13:case 32:break;default:{v=u;break a}}t=u+1|0;c[p>>2]=t;u=t}}while(0);if((c[r>>2]|0)==1)while(1){r=Dm(k)|0;f=c[k>>2]|0;s=c[p>>2]|0;b:do if((a[f+11>>0]|0)<0){u=c[f>>2]|0;t=s;while(1){switch(a[u+t>>0]|0){case 9:case 10:case 13:case 32:break;default:{x=t;break b}}w=t+1|0;c[p>>2]=w;t=w}}else{t=s;while(1){switch(a[f+t>>0]|0){case 9:case 10:case 13:case 32:break;default:{x=t;break b}}u=t+1|0;c[p>>2]=u;t=u}}while(0);if(!r){y=x;break}}else y=v;v=a[d+11>>0]|0;x=v<<24>>24<0;if((y|0)==((x?c[d+4>>2]|0:v&255)|0)){c[b>>2]=c[m>>2];v=m+4|0;c[b+4>>2]=c[v>>2];c[m>>2]=0;c[v>>2]=0;l=g;return}v=a[(x?c[d>>2]|0:d)+y>>0]|0;y=v<<24>>24;if((v&255)>31&v<<24>>24>-1){c[i>>2]=y;c[i+4>>2]=y;Vn(j,12,33689,i)|0}else{c[h>>2]=y;Vn(j,12,33699,h)|0};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;lz(o,j,kn(j)|0);h=Bz(o,0,33704)|0;c[n>>2]=c[h>>2];c[n+4>>2]=c[h+4>>2];c[n+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(j);if(!(a[e>>0]|0)){h=c[q>>2]|0;q=h+11|0;if((a[q>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[q>>0]=0}sz(h,0);c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];c[h+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0}a[e>>0]=1;c[b>>2]=c[j>>2];e=c[j+4>>2]|0;c[b+4>>2]=e;if(e|0){Xy(e);Yy(e)}oz(n);oz(o);o=c[m+4>>2]|0;if(!o){l=g;return}Yy(o);l=g;return}function Cm(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,m=0,n=0,p=0,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;f=l;l=l+176|0;g=f+72|0;h=f+64|0;i=f+56|0;j=f+48|0;k=f+40|0;m=f+32|0;n=f+24|0;p=f+16|0;q=f+8|0;r=f;s=f+152|0;t=f+144|0;u=f+136|0;v=f+128|0;w=f+112|0;x=f+100|0;y=f+88|0;z=f+76|0;if((e|0)>200){c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;lz(s,33878,30);Em(b,d,s);oz(s);l=f;return}A=Fm(d)|0;B=d+12|0;if(a[B>>0]|0){Ck(b);l=f;return}if(A<<24>>24==45|(A+-48&255)<10){C=d+4|0;c[C>>2]=(c[C>>2]|0)+-1;Gm(b,d);l=f;return}switch(A<<24>>24){case 116:{c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;lz(s,39997,4);if((a[41224]|0)==0?WA(41224)|0:0){Ek(42128);Za(261,42128,o|0)|0}c[t>>2]=c[10534];C=t+4|0;D=c[10535]|0;c[C>>2]=D;if(D|0)Xy(D);Hm(b,d,s,t);t=c[C>>2]|0;if(t|0)Yy(t);oz(s);l=f;return}case 102:{c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;lz(s,39991,5);if((a[41224]|0)==0?WA(41224)|0:0){Ek(42128);Za(261,42128,o|0)|0}c[u>>2]=c[10536];t=u+4|0;C=c[10537]|0;c[t>>2]=C;if(C|0)Xy(C);Hm(b,d,s,u);u=c[t>>2]|0;if(u|0)Yy(u);oz(s);l=f;return}case 110:{c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;lz(s,32613,4);Ck(v);Hm(b,d,s,v);u=c[v+4>>2]|0;if(u|0)Yy(u);oz(s);l=f;return}case 34:{Im(s,d);u=$y(28)|0;c[u+4>>2]=0;c[u+8>>2]=0;c[u>>2]=13136;v=u+12|0;t=u+16|0;c[t>>2]=c[s>>2];c[t+4>>2]=c[s+4>>2];c[t+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[v>>2]=13228;c[b>>2]=v;c[b+4>>2]=u;oz(s);l=f;return}case 123:{u=w+4|0;c[u>>2]=0;v=w+8|0;c[v>>2]=0;t=w+4|0;c[w>>2]=t;C=Fm(d)|0;a:do switch(C<<24>>24){case 125:{D=$y(28)|0;c[D+4>>2]=0;c[D+8>>2]=0;c[D>>2]=13320;E=D+12|0;c[E>>2]=12888;F=D+16|0;c[F>>2]=c[w>>2];G=D+20|0;H=c[w+4>>2]|0;c[G>>2]=H;I=c[v>>2]|0;c[D+24>>2]=I;if(!I)c[F>>2]=G;else{c[H+8>>2]=G;c[w>>2]=t;c[t>>2]=0;c[v>>2]=0}c[E>>2]=12824;c[b>>2]=E;c[b+4>>2]=D;break}case 34:{D=e+1|0;E=s+4|0;b:while(1){Im(x,d);if(a[B>>0]|0){J=39;break}K=Fm(d)|0;if(K<<24>>24!=58){J=41;break}G=ad(w,s,x)|0;H=c[G>>2]|0;if(!H){F=$y(36)|0;I=F+16|0;c[I>>2]=c[x>>2];c[I+4>>2]=c[x+4>>2];c[I+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Ck(F+28|0);I=c[s>>2]|0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=I;c[G>>2]=F;I=c[c[w>>2]>>2]|0;if(!I)L=F;else{c[w>>2]=I;L=c[G>>2]|0}ic(c[u>>2]|0,L);c[v>>2]=(c[v>>2]|0)+1;M=F}else M=H;Cm(s,d,D);H=c[s>>2]|0;F=c[E>>2]|0;c[s>>2]=0;c[E>>2]=0;c[M+28>>2]=H;H=M+32|0;G=c[H>>2]|0;c[H>>2]=F;if(G|0?(Yy(G),G=c[E>>2]|0,G|0):0)Yy(G);if(a[B>>0]|0){J=53;break}N=Fm(d)|0;switch(N<<24>>24){case 125:{J=61;break b;break}case 44:break;default:{J=55;break b}}G=Fm(d)|0;oz(x);if(G<<24>>24!=34){O=G;J=34;break a}}if((J|0)==39)Ck(b);else if((J|0)==41){E=K<<24>>24;if((K&255)>31&K<<24>>24>-1){c[p>>2]=E;c[p+4>>2]=E;Vn(s,12,33689,p)|0}else{c[n>>2]=E;Vn(s,12,33699,n)|0};c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;lz(z,s,kn(s)|0);E=Bz(z,0,33938)|0;c[y>>2]=c[E>>2];c[y+4>>2]=c[E+4>>2];c[y+8>>2]=c[E+8>>2];c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;Em(b,d,y);oz(y);oz(z)}else if((J|0)==53)Ck(b);else if((J|0)==55){E=N<<24>>24;if((N&255)>31&N<<24>>24>-1){c[m>>2]=E;c[m+4>>2]=E;Vn(s,12,33689,m)|0}else{c[k>>2]=E;Vn(s,12,33699,k)|0};c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;lz(z,s,kn(s)|0);E=Bz(z,0,33967)|0;c[y>>2]=c[E>>2];c[y+4>>2]=c[E+4>>2];c[y+8>>2]=c[E+8>>2];c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;Em(b,d,y);oz(y);oz(z)}else if((J|0)==61){oz(x);E=$y(28)|0;c[E+4>>2]=0;c[E+8>>2]=0;c[E>>2]=13320;D=E+12|0;c[D>>2]=12888;G=E+16|0;c[G>>2]=c[w>>2];F=E+20|0;H=c[w+4>>2]|0;c[F>>2]=H;I=c[v>>2]|0;c[E+24>>2]=I;if(!I)c[G>>2]=F;else{c[H+8>>2]=F;c[w>>2]=t;c[t>>2]=0;c[v>>2]=0}c[D>>2]=12824;c[b>>2]=D;c[b+4>>2]=E;break a}oz(x);break}default:{O=C;J=34}}while(0);if((J|0)==34){C=O<<24>>24;if((O&255)>31&O<<24>>24>-1){c[r>>2]=C;c[r+4>>2]=C;Vn(s,12,33689,r)|0}else{c[q>>2]=C;Vn(s,12,33699,q)|0};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;lz(y,s,kn(s)|0);q=Bz(y,0,33909)|0;c[x>>2]=c[q>>2];c[x+4>>2]=c[q+4>>2];c[x+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;Em(b,d,x);oz(x);oz(y)}dd(w,c[t>>2]|0);l=f;return}case 91:{c[w>>2]=0;t=w+4|0;c[t>>2]=0;c[w+8>>2]=0;do if((Fm(d)|0)<<24>>24!=93){q=d+4|0;C=e+1|0;r=w+8|0;O=s+4|0;c:while(1){c[q>>2]=(c[q>>2]|0)+-1;Cm(s,d,C);v=c[t>>2]|0;if(v>>>0>=(c[r>>2]|0)>>>0){fd(w,s);z=c[O>>2]|0;if(z|0)Yy(z)}else{c[v>>2]=c[s>>2];c[v+4>>2]=c[O>>2];c[s>>2]=0;c[O>>2]=0;c[t>>2]=v+8}if(a[B>>0]|0){J=74;break}P=Fm(d)|0;switch(P<<24>>24){case 93:{J=81;break c;break}case 44:break;default:{J=76;break c}}Fm(d)|0}if((J|0)==74){Ck(b);break}else if((J|0)==76){O=P<<24>>24;if((P&255)>31&P<<24>>24>-1){c[j>>2]=O;c[j+4>>2]=O;Vn(s,12,33689,j)|0}else{c[i>>2]=O;Vn(s,12,33699,i)|0};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;lz(y,s,kn(s)|0);O=Bz(y,0,33996)|0;c[x>>2]=c[O>>2];c[x+4>>2]=c[O+4>>2];c[x+8>>2]=c[O+8>>2];c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;Em(b,d,x);oz(x);oz(y);break}else if((J|0)==81){O=$y(28)|0;c[O+4>>2]=0;c[O+8>>2]=0;c[O>>2]=13292;C=O+12|0;c[O+16>>2]=c[w>>2];c[O+20>>2]=c[t>>2];c[O+24>>2]=c[r>>2];c[r>>2]=0;c[t>>2]=0;c[w>>2]=0;c[C>>2]=12696;c[b>>2]=C;c[b+4>>2]=O;break}}else{O=$y(28)|0;c[O+4>>2]=0;c[O+8>>2]=0;c[O>>2]=13292;C=O+12|0;c[O+16>>2]=c[w>>2];c[O+20>>2]=c[t>>2];q=w+8|0;c[O+24>>2]=c[q>>2];c[q>>2]=0;c[t>>2]=0;c[w>>2]=0;c[C>>2]=12696;c[b>>2]=C;c[b+4>>2]=O}while(0);J=c[w>>2]|0;if(J|0){y=c[t>>2]|0;if((y|0)==(J|0))Q=J;else{i=y;while(1){y=i+-8|0;c[t>>2]=y;j=c[i+-4>>2]|0;if(!j)R=y;else{Yy(j);R=c[t>>2]|0}if((R|0)==(J|0))break;else i=R}Q=c[w>>2]|0}bz(Q)}l=f;return}default:{Q=A<<24>>24;if((A&255)>31&A<<24>>24>-1){c[h>>2]=Q;c[h+4>>2]=Q;Vn(s,12,33689,h)|0}else{c[g>>2]=Q;Vn(s,12,33699,g)|0};c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;lz(x,s,kn(s)|0);s=Bz(x,0,34023)|0;c[w>>2]=c[s>>2];c[w+4>>2]=c[s+4>>2];c[w+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Em(b,d,w);oz(w);oz(x);l=f;return}}}function Dm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=l;l=l+16|0;e=d;f=c[b>>2]|0;g=b+4|0;h=c[g>>2]|0;i=a[f+11>>0]|0;j=i<<24>>24<0;if(j)k=c[f>>2]|0;else k=f;if((a[k+h>>0]|0)!=47){m=0;l=d;return m|0}k=h+1|0;c[g>>2]=k;if(j)n=c[f+4>>2]|0;else n=i&255;if((k|0)==(n|0)){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33725,38);n=b+12|0;if(!(a[n>>0]|0)){o=c[b+8>>2]|0;p=o+11|0;if((a[p>>0]|0)<0){a[c[o>>2]>>0]=0;c[o+4>>2]=0}else{a[o>>0]=0;a[p>>0]=0}sz(o,0);c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[n>>0]=1;oz(e);m=0;l=d;return m|0}if(j)q=c[f>>2]|0;else q=f;if((a[q+k>>0]|0)==47){q=h+2|0;c[g>>2]=q;if(j)r=c[f+4>>2]|0;else r=i&255;if((q|0)==(r|0)){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33764,45);r=b+12|0;if(!(a[r>>0]|0)){n=c[b+8>>2]|0;o=n+11|0;if((a[o>>0]|0)<0){a[c[n>>2]>>0]=0;c[n+4>>2]=0}else{a[n>>0]=0;a[o>>0]=0}sz(n,0);c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[r>>0]=1;oz(e);m=0;l=d;return m|0}r=f+4|0;n=i&255;o=q;do{if(j)s=c[f>>2]|0;else s=f;if((a[s+o>>0]|0)==10){m=1;t=88;break}o=o+1|0;c[g>>2]=o;if(j)u=c[r>>2]|0;else u=n}while((o|0)!=(u|0));if((t|0)==88){l=d;return m|0};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33764,45);u=b+12|0;if(!(a[u>>0]|0)){o=c[b+8>>2]|0;n=o+11|0;if((a[n>>0]|0)<0){a[c[o>>2]>>0]=0;c[o+4>>2]=0}else{a[o>>0]=0;a[n>>0]=0}sz(o,0);c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[u>>0]=1;oz(e);m=0;l=d;return m|0}if(j)v=c[f>>2]|0;else v=f;if((a[v+k>>0]|0)!=42){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33860,17);k=b+12|0;if(!(a[k>>0]|0)){v=c[b+8>>2]|0;u=v+11|0;if((a[u>>0]|0)<0){a[c[v>>2]>>0]=0;c[v+4>>2]=0}else{a[v>>0]=0;a[u>>0]=0}sz(v,0);c[v>>2]=c[e>>2];c[v+4>>2]=c[e+4>>2];c[v+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[k>>0]=1;oz(e);m=0;l=d;return m|0}k=h+2|0;c[g>>2]=k;if(j)w=c[f+4>>2]|0;else w=i&255;if(k>>>0>(w+-2|0)>>>0){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33810,49);w=b+12|0;if(!(a[w>>0]|0)){h=c[b+8>>2]|0;v=h+11|0;if((a[v>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[v>>0]=0}sz(h,0);c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[w>>0]=1;oz(e);m=0;l=d;return m|0}w=f+4|0;h=i&255;v=k;while(1){if(j)x=c[f>>2]|0;else x=f;k=v+1|0;if((a[x+v>>0]|0)==42){if(j)y=c[f>>2]|0;else y=f;if((a[y+k>>0]|0)==47)break}c[g>>2]=k;if(j)z=c[w>>2]|0;else z=h;if(k>>>0>(z+-2|0)>>>0){t=66;break}else v=k}if((t|0)==66){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33810,49);t=b+12|0;if(!(a[t>>0]|0)){z=c[b+8>>2]|0;h=z+11|0;if((a[h>>0]|0)<0){a[c[z>>2]>>0]=0;c[z+4>>2]=0}else{a[z>>0]=0;a[h>>0]=0}sz(z,0);c[z>>2]=c[e>>2];c[z+4>>2]=c[e+4>>2];c[z+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[t>>0]=1;oz(e);m=0;l=d;return m|0}t=v+2|0;c[g>>2]=t;if(j)A=c[f+4>>2]|0;else A=i&255;if((t|0)!=(A|0)){m=1;l=d;return m|0};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,33810,49);A=b+12|0;if(!(a[A>>0]|0)){t=c[b+8>>2]|0;b=t+11|0;if((a[b>>0]|0)<0){a[c[t>>2]>>0]=0;c[t+4>>2]=0}else{a[t>>0]=0;a[b>>0]=0}sz(t,0);c[t>>2]=c[e>>2];c[t+4>>2]=c[e+4>>2];c[t+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[A>>0]=1;oz(e);m=0;l=d;return m|0}function Em(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;g=f;Ck(g);h=d+12|0;if(!(a[h>>0]|0)){i=c[d+8>>2]|0;d=i+11|0;if((a[d>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0}else{a[i>>0]=0;a[d>>0]=0}sz(i,0);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;c[b>>2]=c[g>>2];h=c[g+4>>2]|0;c[b+4>>2]=h;if(!h){l=f;return}Xy(h);Yy(h);l=f;return}function Fm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=l;l=l+16|0;e=d;f=b+4|0;g=c[b>>2]|0;h=c[f>>2]|0;i=a[g+11>>0]|0;a:do if(i<<24>>24<0){j=c[g>>2]|0;k=h;while(1){switch(a[j+k>>0]|0){case 9:case 10:case 13:case 32:break;default:{m=k;break a}}n=k+1|0;c[f>>2]=n;k=n}}else{k=h;while(1){switch(a[g+k>>0]|0){case 9:case 10:case 13:case 32:break;default:{m=k;break a}}j=k+1|0;c[f>>2]=j;k=j}}while(0);if((c[b+16>>2]|0)==1)while(1){h=Dm(b)|0;k=c[b>>2]|0;j=c[f>>2]|0;n=a[k+11>>0]|0;b:do if(n<<24>>24<0){o=c[k>>2]|0;p=j;while(1){switch(a[o+p>>0]|0){case 9:case 10:case 13:case 32:break;default:{q=p;break b}}r=p+1|0;c[f>>2]=r;p=r}}else{p=j;while(1){switch(a[k+p>>0]|0){case 9:case 10:case 13:case 32:break;default:{q=p;break b}}o=p+1|0;c[f>>2]=o;p=o}}while(0);if(!h){s=n;t=k;u=q;break}}else{s=i;t=g;u=m}m=s<<24>>24<0;if(m)v=c[t+4>>2]|0;else v=s&255;if((u|0)!=(v|0)){c[f>>2]=u+1;if(m)w=c[t>>2]|0;else w=t;x=a[w+u>>0]|0;l=d;return x|0};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,34384,23);u=b+12|0;if(!(a[u>>0]|0)){w=c[b+8>>2]|0;b=w+11|0;if((a[b>>0]|0)<0){a[c[w>>2]>>0]=0;c[w+4>>2]=0}else{a[w>>0]=0;a[b>>0]=0}sz(w,0);c[w>>2]=c[e>>2];c[w+4>>2]=c[e+4>>2];c[w+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[u>>0]=1;oz(e);x=0;l=d;return x|0}function Gm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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.0;e=l;l=l+64|0;f=e+8|0;g=e;i=e+48|0;j=e+36|0;k=e+24|0;m=e+12|0;n=d+4|0;o=c[n>>2]|0;p=c[d>>2]|0;q=(a[p+11>>0]|0)<0;if(q)r=c[p>>2]|0;else r=p;if((a[r+o>>0]|0)==45){r=o+1|0;c[n>>2]=r;s=r}else s=o;if(q)t=c[p>>2]|0;else t=p;a:do if((a[t+s>>0]|0)==48){r=s+1|0;c[n>>2]=r;if(q)u=c[p>>2]|0;else u=p;if(((a[u+r>>0]|0)+-48&255)<10){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,34241,35);Em(b,d,i);oz(i);l=e;return}else v=r}else{if(q)w=c[p>>2]|0;else w=p;if(((a[w+s>>0]|0)+-49&255)<9){r=s;while(1){x=r+1|0;c[n>>2]=x;if(q)y=c[p>>2]|0;else y=p;if(((a[y+x>>0]|0)+-48&255)<10)r=x;else{v=x;break a}}}if(q)z=c[p>>2]|0;else z=p;r=a[z+s>>0]|0;x=r<<24>>24;if((r&255)>31&r<<24>>24>-1){c[g>>2]=x;c[g+4>>2]=x;Vn(i,12,33689,g)|0}else{c[f>>2]=x;Vn(i,12,33699,f)|0};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,i,kn(i)|0);x=Bz(m,0,34277)|0;c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;x=yz(k,34286)|0;c[j>>2]=c[x>>2];c[j+4>>2]=c[x+4>>2];c[j+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Em(b,d,j);oz(j);oz(k);oz(m);l=e;return}while(0);if(q)A=c[p>>2]|0;else A=p;if((a[A+v>>0]|0)!=46){if(q)B=c[p>>2]|0;else B=p;if((a[B+v>>0]|0)!=101){if(q)C=c[p>>2]|0;else C=p;if((v-o|0)>>>0<10?(a[C+v>>0]|0)!=69:0){if(q)D=c[p>>2]|0;else D=p;C=mn(D+o|0)|0;D=$y(20)|0;c[D+4>>2]=0;c[D+8>>2]=0;c[D>>2]=13044;B=D+12|0;c[D+16>>2]=C;c[B>>2]=13072;c[b>>2]=B;c[b+4>>2]=D;l=e;return}}}if(q)E=c[p>>2]|0;else E=p;b:do if((a[E+v>>0]|0)==46){D=v+1|0;c[n>>2]=D;if(q)F=c[p>>2]|0;else F=p;if(((a[F+D>>0]|0)+-48&255)>=10){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,34297,46);Em(b,d,i);oz(i);l=e;return}B=D;while(1){if(q)G=c[p>>2]|0;else G=p;if(((a[G+B>>0]|0)+-48&255)>=10){H=B;break b}D=B+1|0;c[n>>2]=D;B=D}}else H=v;while(0);if(q)I=c[p>>2]|0;else I=p;if((a[I+H>>0]|0)!=101){if(q)J=c[p>>2]|0;else J=p;if((a[J+H>>0]|0)==69)K=68}else K=68;c:do if((K|0)==68){J=H+1|0;c[n>>2]=J;if(q)L=c[p>>2]|0;else L=p;if((a[L+J>>0]|0)!=43){if(q)M=c[p>>2]|0;else M=p;if((a[M+J>>0]|0)!=45)N=J;else K=76}else K=76;if((K|0)==76){J=H+2|0;c[n>>2]=J;N=J}if(q)O=c[p>>2]|0;else O=p;if(((a[O+N>>0]|0)+-48&255)>=10){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,34344,39);Em(b,d,i);oz(i);l=e;return}J=N;while(1){if(q)P=c[p>>2]|0;else P=p;if(((a[P+J>>0]|0)+-48&255)>=10)break c;I=J+1|0;c[n>>2]=I;J=I}}while(0);if(q)Q=c[p>>2]|0;else Q=p;R=+Dn(Q+o|0,0);o=$y(32)|0;c[o+4>>2]=0;c[o+8>>2]=0;c[o>>2]=12952;Q=o+16|0;h[o+24>>3]=R;c[Q>>2]=12980;c[b>>2]=Q;c[b+4>>2]=o;l=e;return}function Hm(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=l;l=l+48|0;h=g+36|0;i=g+24|0;j=g+12|0;k=g;m=d+4|0;n=c[m>>2]|0;if(!n)Da(34142,34149,621,34204);o=n+-1|0;c[m>>2]=o;n=e+11|0;p=a[n>>0]|0;q=p<<24>>24<0;r=e+4|0;s=q?c[r>>2]|0:p&255;if(!(Fz(c[d>>2]|0,o,s,q?c[e>>2]|0:e,s)|0)){s=a[n>>0]|0;c[m>>2]=(c[m>>2]|0)+(s<<24>>24<0?c[r>>2]|0:s&255);c[b>>2]=c[f>>2];s=f+4|0;c[b+4>>2]=c[s>>2];c[f>>2]=0;c[s>>2]=0;l=g;return}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;s=a[n>>0]|0;f=s<<24>>24<0?c[r>>2]|0:s&255;Gz(j,34211,22,f+22|0);xz(j,(a[n>>0]|0)<0?c[e>>2]|0:e,f)|0;f=yz(j,34234)|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=c[d>>2]|0;e=a[n>>0]|0;nz(k,f,c[m>>2]|0,e<<24>>24<0?c[r>>2]|0:e&255,f);f=a[k+11>>0]|0;e=f<<24>>24<0;r=xz(i,e?c[k>>2]|0:k,e?c[k+4>>2]|0:f&255)|0;c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Em(b,d,h);oz(h);oz(k);oz(i);oz(j);l=g;return}}function Im(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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+80|0;f=e+16|0;g=e+8|0;h=e;i=e+68|0;j=e+56|0;k=e+44|0;m=e+32|0;n=e+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=d+4|0;p=i+11|0;q=i+4|0;r=-1;a:while(1){s=c[o>>2]|0;t=c[d>>2]|0;u=a[t+11>>0]|0;v=u<<24>>24<0;if(v)w=c[t+4>>2]|0;else w=u&255;if((s|0)==(w|0)){x=6;break}y=s+1|0;c[o>>2]=y;if(v)z=c[t>>2]|0;else z=t;A=a[z+s>>0]|0;if(A<<24>>24==34){x=16;break}if((A&255)<32){x=18;break}if(A<<24>>24!=92){Jm(d,r,j);zz(j,A);r=-1;continue}if(v)B=c[t+4>>2]|0;else B=u&255;if((y|0)==(B|0)){x=30;break}u=s+2|0;c[o>>2]=u;if(v)C=c[t>>2]|0;else C=t;D=a[C+y>>0]|0;if(D<<24>>24!=117){Jm(d,r,j);switch(D<<24>>24){case 98:{zz(j,8);r=-1;continue a;break}case 102:{zz(j,12);r=-1;continue a;break}case 110:{zz(j,10);r=-1;continue a;break}case 114:{zz(j,13);r=-1;continue a;break}case 116:{zz(j,9);r=-1;continue a;break}case 47:case 92:case 34:{zz(j,D);r=-1;continue a;break}default:{x=66;break a}}}nz(i,t,u,4,t);t=a[p>>0]|0;u=t<<24>>24<0;E=u?c[q>>2]|0:t&255;if(E>>>0<4){x=43;break}t=u?c[i>>2]|0:i;u=a[t>>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:{x=49;break a}}u=a[t+1>>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:{x=49;break a}}u=a[t+2>>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:{x=49;break a}}u=a[t+3>>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:{x=49;break a}}u=Sn(t,0,16)|0;if((r&-1024|0)==55296&(u&-1024|0)==56320){Jm(d,(u+-56320|(r<<10)+-56623104)+65536|0,j);F=-1}else{Jm(d,r,j);F=u}c[o>>2]=(c[o>>2]|0)+4;oz(i);r=F}if((x|0)==6){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,34044,33);F=d+12|0;if(!(a[F>>0]|0)){o=c[d+8>>2]|0;q=o+11|0;if((a[q>>0]|0)<0){a[c[o>>2]>>0]=0;c[o+4>>2]=0}else{a[o>>0]=0;a[q>>0]=0}sz(o,0);c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0}a[F>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(i);oz(j);l=e;return}else if((x|0)==16){Jm(d,r,j);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;oz(j);l=e;return}else if((x|0)==18){c[h>>2]=A<<24>>24;Vn(i,12,33699,h)|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,i,kn(i)|0);h=Bz(n,0,34078)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;h=yz(m,34089)|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;h=d+12|0;if(!(a[h>>0]|0)){A=c[d+8>>2]|0;r=A+11|0;if((a[r>>0]|0)<0){a[c[A>>2]>>0]=0;c[A+4>>2]=0}else{a[A>>0]=0;a[r>>0]=0}sz(A,0);c[A>>2]=c[k>>2];c[A+4>>2]=c[k+4>>2];c[A+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[h>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(k);oz(m);oz(n);oz(j);l=e;return}else if((x|0)==30){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,34044,33);n=d+12|0;if(!(a[n>>0]|0)){h=c[d+8>>2]|0;A=h+11|0;if((a[A>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[A>>0]=0}sz(h,0);c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0}a[n>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(i);oz(j);l=e;return}else if((x|0)==43){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Gz(k,34100,15,E+15|0);xz(k,(a[p>>0]|0)<0?c[i>>2]|0:i,E)|0;n=d+12|0;if(!(a[n>>0]|0)){h=c[d+8>>2]|0;A=h+11|0;if((a[A>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[A>>0]=0}sz(h,0);c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[n>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(k)}else if((x|0)==49){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Gz(k,34100,15,E+15|0);xz(k,(a[p>>0]|0)<0?c[i>>2]|0:i,E)|0;E=d+12|0;if(!(a[E>>0]|0)){p=c[d+8>>2]|0;n=p+11|0;if((a[n>>0]|0)<0){a[c[p>>2]>>0]=0;c[p+4>>2]=0}else{a[p>>0]=0;a[n>>0]=0}sz(p,0);c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[E>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(k)}else if((x|0)==66){x=D<<24>>24;if((D&255)>31&D<<24>>24>-1){c[g>>2]=x;c[g+4>>2]=x;Vn(i,12,33689,g)|0}else{c[f>>2]=x;Vn(i,12,33699,f)|0};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,i,kn(i)|0);f=Bz(m,0,34116)|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=d+12|0;if(!(a[f>>0]|0)){x=c[d+8>>2]|0;d=x+11|0;if((a[d>>0]|0)<0){a[c[x>>2]>>0]=0;c[x+4>>2]=0}else{a[x>>0]=0;a[d>>0]=0}sz(x,0);c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];c[x+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[f>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,47807,0);oz(k);oz(m);oz(j);l=e;return}oz(i);oz(j);l=e;return}function Jm(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)<0)return;if((b|0)<128){zz(c,b&255);return}if((b|0)<2048){zz(c,(b>>>6|192)&255);zz(c,(b&63|128)&255);return}if((b|0)<65536){zz(c,(b>>>12|224)&255);zz(c,(b>>>6&63|128)&255);zz(c,(b&63|128)&255);return}else{zz(c,(b>>>18|240)&255);zz(c,(b>>>12&63|128)&255);zz(c,(b>>>6&63|128)&255);zz(c,(b&63|128)&255);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,m=0,n=0,o=0,p=0;f=l;l=l+48|0;g=f+36|0;h=f+24|0;i=f+12|0;j=f;k=c[b>>2]|0;if((tb[c[c[k>>2]>>2]&127](k)|0)!=5){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=c[b>>2]|0;rb[c[(c[k>>2]|0)+12>>2]&127](k,h);k=Bz(h,0,34408)|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;k=e+11|0;if((a[k>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0;sz(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(h);l=f;return 0}else{a[e>>0]=0;a[k>>0]=0;sz(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(h);l=f;return 0}}k=c[d>>2]|0;m=c[d+4>>2]|0;d=k+(m<<4)|0;if(!m){n=1;l=f;return n|0}else o=k;while(1){k=c[b>>2]|0;m=c[(Bb[c[(c[k>>2]|0)+44>>2]&63](k,o)|0)>>2]|0;k=tb[c[c[m>>2]>>2]&127](m)|0;if((k|0)!=(c[o+12>>2]|0))break;k=o+16|0;if((k|0)==(d|0)){n=1;p=13;break}else o=k}if((p|0)==13){l=f;return n|0};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;p=o+11|0;d=a[p>>0]|0;k=d<<24>>24<0?c[o+4>>2]|0:d&255;Gz(i,34435,13,k+13|0);xz(i,(a[p>>0]|0)<0?c[o>>2]|0:o,k)|0;k=yz(i,34449)|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;k=c[b>>2]|0;rb[c[(c[k>>2]|0)+12>>2]&127](k,j);k=a[j+11>>0]|0;b=k<<24>>24<0;o=xz(h,b?c[j>>2]|0:j,b?c[j+4>>2]|0:k&255)|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;o=e+11|0;if((a[o>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[o>>0]=0}sz(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(j);oz(h);oz(i);n=0;l=f;return n|0}function Lm(a,b,d,e,f,h,i,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0;n=c[h>>2]|0;h=f+(~n<<2)|0;f=j+-4|0;j=c[b>>2]|0;if((j|0)<1)return 0;b=c[d>>2]|0;if((b|0)<=(j|0)|(b|0)>(e|0))return 0;d=h+((T(j,n)|0)+1<<2)|0;o=+g[d>>2];p=o>=0.0?o:-o;if((a|0)==2)if(!(p<=0.0))q=o;else return 0;else{r=p;a=b;while(1){p=+g[h+((T(a,n)|0)+1<<2)>>2];s=p>=0.0?p:-p;r=s>=r?s:r;if((a|0)>=(e|0))break;else a=a+1|0}s=r;if(r<=0.0)return 0;p=1.0/r;r=p*o;t=r*r;a=b;while(1){r=p*+g[h+((T(a,n)|0)+1<<2)>>2];t=t+r*r;if((a|0)>=(e|0))break;else a=a+1|0}p=s*+H(+t);t=!(o<=0.0)?-p:p;g[i>>2]=o-t;g[d>>2]=t;q=t}d=c[m>>2]|0;if((d|0)<1)return 0;t=+g[i>>2];o=t*q;if(o>=0.0)return 0;q=1.0/o;m=c[l>>2]|0;l=c[k>>2]|0;k=T(b-j|0,l)|0;a=1-m+(T(l,j+-1|0)|0)|0;j=1;o=t;while(1){u=m+a|0;v=u+k|0;w=f+(u<<2)|0;t=+g[w>>2];x=v;y=b;p=t*o;while(1){p=p+ +g[f+(x<<2)>>2]*+g[h+((T(y,n)|0)+1<<2)>>2];if((y|0)>=(e|0))break;else{x=l+x|0;y=y+1|0}}if(p!=0.0){s=q*p;g[w>>2]=t+s*o;y=v;x=b;while(1){r=s*+g[h+((T(x,n)|0)+1<<2)>>2];z=f+(y<<2)|0;g[z>>2]=+g[z>>2]+r;if((x|0)<(e|0)){y=l+y|0;x=x+1|0}else break}}if((j|0)==(d|0))break;a=u;j=j+1|0;o=+g[i>>2]}return 0}function Mm(a,b,d,e,f,h,i,j,k,m,n){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,I=0,J=0,K=0.0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0,S=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0.0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0.0,ta=0,ua=0.0,va=0,wa=0.0,xa=0.0,ya=0.0,za=0.0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0.0;o=l;l=l+32|0;p=o+20|0;q=o+24|0;r=o+16|0;s=o+8|0;t=o+4|0;u=o;c[p>>2]=b;v=a+(~b<<2)|0;a=f+-4|0;f=h+-4|0;h=j+-4|0;w=k+-4|0;x=m+-4|0;c[n>>2]=1;if((d|0)<1|(e|0)<1){c[n>>2]=2;l=o;return 0}m=e*3|0;c[q>>2]=e;y=1;while(1){g[f+(y<<2)>>2]=0.0;c[x+(y<<2)>>2]=y;if((y|0)<(e|0))y=y+1|0;else break}c[r>>2]=0;c[u>>2]=1;a:do if((e|0)>0&(d|0)>0){y=d+1|0;z=1;A=0;B=0;C=0;D=1;E=0;b:while(1){c[q>>2]=e;F=(z|0)>(e|0);c:do if(!F){if((D|0)>(d|0)){G=z;while(1){g[h+(c[x+(G<<2)>>2]<<2)>>2]=0.0;if((G|0)<(e|0))G=G+1|0;else break c}}else I=z;while(1){G=c[x+(I<<2)>>2]|0;J=T(G,b)|0;K=0.0;L=D;while(1){K=K+ +g[v+(L+J<<2)>>2]*+g[a+(L<<2)>>2];if((L|0)>=(d|0))break;else L=L+1|0}g[h+(G<<2)>>2]=K;if((I|0)<(e|0))I=I+1|0;else break}}while(0);L=(E|0)==0;J=D+1|0;M=w+(D<<2)|0;N=(E|0)<1;c[q>>2]=e;if(F){O=D;break a}else P=B;while(1){Q=0.0;R=z;S=P;while(1){U=+g[h+(c[x+(R<<2)>>2]<<2)>>2];V=U>Q;Q=V?U:Q;S=V?R:S;if((R|0)>=(e|0))break;else R=R+1|0}if(Q<=0.0){O=D;break a}W=x+(S<<2)|0;X=c[W>>2]|0;Y=T(X,b)|0;R=v+(D+Y<<2)|0;V=c[R>>2]|0;c[q>>2]=J;Z=v+(Y+1<<2)|0;Lm(c[3335]|0,u,q,d,Z,13340,t,s,13340,13340,42188)|0;if(!L?(c[q>>2]=E,!N):0){U=0.0;_=1;while(1){$=+g[v+(_+Y<<2)>>2];aa=U+$*$;if((_|0)<(E|0)){U=aa;_=_+1|0}else{ba=aa;break}}}else ba=0.0;U=+H(+ba);Q=+g[R>>2];if(U+(Q>=0.0?Q:-Q)*.01-U>0.0){c[q>>2]=d;_=1;while(1){c[w+(_<<2)>>2]=c[a+(_<<2)>>2];if((_|0)<(d|0))_=_+1|0;else break}c[q>>2]=J;Lm(c[3336]|0,u,q,d,Z,13340,t,k,13340,13340,13340)|0;if(+g[M>>2]/+g[R>>2]>0.0)break}c[R>>2]=V;g[h+(X<<2)>>2]=0.0;c[q>>2]=e;if(F){O=D;break a}else P=S}c[q>>2]=d;F=1;while(1){c[a+(F<<2)>>2]=c[w+(F<<2)>>2];if((F|0)<(d|0))F=F+1|0;else break}F=x+(z<<2)|0;c[W>>2]=c[F>>2];c[F>>2]=X;F=z+1|0;c[r>>2]=D;c[u>>2]=J;if((z|0)<(e|0)){c[q>>2]=e;M=F;while(1){N=c[x+(M<<2)>>2]|0;Lm(c[3336]|0,r,u,d,Z,13340,t,v+((T(N,b)|0)+1<<2)|0,13340,p,13340)|0;if((M|0)<(e|0))M=M+1|0;else{ca=N;break}}}else ca=A;if((D|0)!=(d|0)?(c[q>>2]=d,(D|0)<(d|0)):0)eB(v+(Y+J<<2)|0,0,y-J<<2|0)|0;g[h+(X<<2)>>2]=0.0;M=C;N=F;L=ca;da=J;ea=D;d:while(1){fa=(ea|0)<1;if(fa)ga=L;else{_=ea+1|0;ha=1;ia=L;ja=_;while(1){ka=1-ha+ea|0;if(!((ha|0)==1|(ka|0)<1)){la=T(ia,b)|0;ma=w+(ka+1<<2)|0;na=1;do{oa=w+(na<<2)|0;g[oa>>2]=+g[oa>>2]-+g[v+(na+la<<2)>>2]*+g[ma>>2];na=na+1|0}while((na|0)!=(ja|0))}na=c[x+(ka<<2)>>2]|0;K=+g[v+((T(na,b)|0)+ka<<2)>>2];ma=w+(ka<<2)|0;g[ma>>2]=+g[ma>>2]/K;ha=ha+1|0;if((ha|0)==(_|0)){ga=na;break}else{ia=na;ja=ja+-1|0}}}pa=M+1|0;if((M|0)>=(m|0))break b;if(fa){qa=37;break}else{ra=1;sa=2.0;ta=ga}while(1){K=+g[w+(ra<<2)>>2];if(K<=0.0?(U=+g[f+(c[x+(ra<<2)>>2]<<2)>>2],Q=-U/(K-U),sa>Q):0){ua=Q;va=ra}else{ua=sa;va=ta}if((ra|0)==(ea|0))break;else{ra=ra+1|0;sa=ua;ta=va}}if(ua==2.0){qa=43;break}if(!fa){ja=1;while(1){ia=f+(c[x+(ja<<2)>>2]<<2)|0;Q=+g[ia>>2];g[ia>>2]=Q+ua*(+g[w+(ja<<2)>>2]-Q);if((ja|0)==(ea|0))break;else ja=ja+1|0}}ja=N;ia=c[x+(va<<2)>>2]|0;_=va;ha=ea;e:while(1){g[f+(ia<<2)>>2]=0.0;if((_|0)<(ha|0)){V=_;do{R=V;V=V+1|0;na=c[x+(V<<2)>>2]|0;c[x+(R<<2)>>2]=na;ma=T(na,b)|0;la=v+(ma+R<<2)|0;G=v+(ma+V<<2)|0;Q=+g[la>>2];ma=Q>=0.0;U=ma?Q:-Q;K=+g[G>>2];oa=K>=0.0;aa=oa?K:-K;do if(!(U>aa))if(K!=0.0){$=Q/K;wa=+H(+($*$+1.0));xa=1.0/wa;ya=xa>=0.0?xa:-xa;xa=oa?ya:-ya;g[la>>2]=aa*wa;za=xa;Aa=$*xa;break}else{g[la>>2]=0.0;za=1.0;Aa=0.0;break}else{xa=K/Q;$=+H(+(xa*xa+1.0));wa=1.0/$;ya=wa>=0.0?wa:-wa;wa=ma?ya:-ya;g[la>>2]=U*$;za=xa*wa;Aa=wa}while(0);g[G>>2]=0.0;la=1;while(1){if((la|0)!=(na|0)){ma=T(la,b)|0;oa=v+(ma+R<<2)|0;U=+g[oa>>2];Ba=v+(ma+V<<2)|0;g[oa>>2]=Aa*U+za*+g[Ba>>2];g[Ba>>2]=Aa*+g[Ba>>2]-za*U}if((la|0)==(e|0))break;else la=la+1|0}la=a+(R<<2)|0;U=+g[la>>2];na=a+(V<<2)|0;Q=+g[na>>2];g[la>>2]=Aa*U+za*Q;g[na>>2]=Aa*Q-za*U}while((V|0)!=(ha|0))}Ca=ha+-1|0;Da=ja+-1|0;c[x+(Da<<2)>>2]=ia;if((ha|0)<2){Ea=1;break}else Fa=1;while(1){V=c[x+(Fa<<2)>>2]|0;if(+g[f+(V<<2)>>2]<=0.0){ja=Da;ia=V;_=Fa;ha=Ca;continue e}V=Fa+1|0;if((Fa|0)<(Ca|0))Fa=V;else{Ea=V;break e}}}c[r>>2]=Ca;c[u>>2]=ha;_=1;while(1){c[w+(_<<2)>>2]=c[a+(_<<2)>>2];ia=_+1|0;if((ia|0)==(y|0)){M=pa;N=Da;L=Ea;da=ha;ea=Ca;continue d}else _=ia}}if((qa|0)==37){qa=0;c[q>>2]=ea;Ga=ga}else if((qa|0)==43){qa=0;c[q>>2]=ea;if(fa)Ga=va;else{L=1;while(1){c[f+(c[x+(L<<2)>>2]<<2)>>2]=c[w+(L<<2)>>2];if((L|0)<(ea|0))L=L+1|0;else{Ga=va;break}}}}if((N|0)<=(e|0)&(ea|0)<(d|0)){z=N;A=Ga;B=S;C=pa;D=da;E=ea}else{O=da;break a}}c[q>>2]=ea;c[n>>2]=3;O=da}else O=1;while(0);if((O|0)>(d|0)){c[q>>2]=e;eB(j|0,0,((e|0)>1?e:1)<<2|0)|0;Ha=0.0}else{c[q>>2]=d;za=0.0;q=O;while(1){Aa=+g[a+(q<<2)>>2];ua=za+Aa*Aa;if((q|0)<(d|0)){za=ua;q=q+1|0}else{Ha=ua;break}}}g[i>>2]=+H(+Ha);l=o;return 0}function Nm(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=c[a+60>>2];a=Qm(ab(6,d|0)|0)|0;l=b;return a|0}function Om(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=l;l=l+48|0;f=e+16|0;g=e;h=e+32|0;i=a+28|0;j=c[i>>2]|0;c[h>>2]=j;k=a+20|0;m=(c[k>>2]|0)-j|0;c[h+4>>2]=m;c[h+8>>2]=b;c[h+12>>2]=d;b=a+60|0;j=a+44|0;n=2;o=m+d|0;m=h;while(1){if(!(c[10548]|0)){c[f>>2]=c[b>>2];c[f+4>>2]=m;c[f+8>>2]=n;p=Qm(hb(146,f|0)|0)|0}else{Ba(263,a|0);c[g>>2]=c[b>>2];c[g+4>>2]=m;c[g+8>>2]=n;h=Qm(hb(146,g|0)|0)|0;va(0);p=h}if((o|0)==(p|0)){q=6;break}if((p|0)<0){q=8;break}h=o-p|0;r=c[m+4>>2]|0;if(p>>>0<=r>>>0)if((n|0)==2){c[i>>2]=(c[i>>2]|0)+p;s=p;t=2;u=m;v=r}else{s=p;t=n;u=m;v=r}else{w=c[j>>2]|0;c[i>>2]=w;c[k>>2]=w;s=p-r|0;t=n+-1|0;u=m+8|0;v=c[m+12>>2]|0}c[u>>2]=(c[u>>2]|0)+s;c[u+4>>2]=v-s;n=t;o=h;m=u}if((q|0)==6){u=c[j>>2]|0;c[a+16>>2]=u+(c[a+48>>2]|0);j=u;c[i>>2]=j;c[k>>2]=j;x=d}else if((q|0)==8){c[a+16>>2]=0;c[i>>2]=0;c[k>>2]=0;c[a>>2]=c[a>>2]|32;if((n|0)==2)x=0;else x=d-(c[m+4>>2]|0)|0}l=e;return x|0}function Pm(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;f=e;g=e+20|0;c[f>>2]=c[a+60>>2];c[f+4>>2]=0;c[f+8>>2]=b;c[f+12>>2]=g;c[f+16>>2]=d;if((Qm(eb(140,f|0)|0)|0)<0){c[g>>2]=-1;h=-1}else h=c[g>>2]|0;l=e;return h|0}function Qm(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(Rm()|0)>>2]=0-a;b=-1}else b=a;return b|0}function Rm(){var a=0;if(!(c[10548]|0))a=42236;else a=c[(uB()|0)+64>>2]|0;return a|0}function Sm(a){a=a|0;if(!(c[a+68>>2]|0))Tm(a);return}function Tm(a){a=a|0;return}function Um(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+80|0;g=f;c[b+36>>2]=6;if((c[b>>2]&64|0)==0?(c[g>>2]=c[b+60>>2],c[g+4>>2]=21505,c[g+8>>2]=f+12,Va(54,g|0)|0):0)a[b+75>>0]=-1;g=Om(b,d,e)|0;l=f;return g|0}function Vm(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,m=0,n=0,o=0,p=0;f=l;l=l+48|0;g=f+16|0;h=f;i=f+32|0;c[i>>2]=d;j=i+4|0;k=b+48|0;m=c[k>>2]|0;c[j>>2]=e-((m|0)!=0&1);n=b+44|0;c[i+8>>2]=c[n>>2];c[i+12>>2]=m;if(!(c[10548]|0)){c[g>>2]=c[b+60>>2];c[g+4>>2]=i;c[g+8>>2]=2;o=Qm(gb(145,g|0)|0)|0}else{Ba(264,b|0);c[h>>2]=c[b+60>>2];c[h+4>>2]=i;c[h+8>>2]=2;i=Qm(gb(145,h|0)|0)|0;va(0);o=i}if((o|0)>=1){i=c[j>>2]|0;if(o>>>0>i>>>0){j=c[n>>2]|0;n=b+4|0;c[n>>2]=j;h=j;c[b+8>>2]=h+(o-i);if(!(c[k>>2]|0))p=e;else{c[n>>2]=h+1;a[d+(e+-1)>>0]=a[h>>0]|0;p=e}}else p=o}else{c[b>>2]=c[b>>2]|o&48^16;c[b+8>>2]=0;c[b+4>>2]=0;p=o}l=f;return p|0}function Wm(a){a=a|0;if(!(c[a+68>>2]|0))Tm(a);return}function Xm(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0,i=0.0,k=0.0,l=0.0;h[j>>3]=a;b=c[j+4>>2]|0;d=b&2147483647;do if(d>>>0>1083174911){e=(b|0)>-1|(b|0)==-1&(c[j>>2]|0)>>>0>4294967295;if(e&d>>>0>1083179007){f=a*8988465674311579538646525.0e283;break}if(d>>>0<=2146435071)if(!(a<=-1075.0)|e){g=9;break}else{f=0.0;break}else{f=-1.0/a;break}}else if(d>>>0<1016070144)f=a+1.0;else g=9;while(0);if((g|0)==9){i=a+26388279066624.0;h[j>>3]=i;g=(c[j>>2]|0)+128|0;d=g<<1&510;k=+h[1232+(d<<3)>>3];l=a-(i+-26388279066624.0)-+h[1232+((d|1)<<3)>>3];f=+Ym(k+k*l*(l*(l*(l*(l*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(g&-256|0)/256|0)}return +f}function Ym(a,b){a=+a;b=b|0;var d=0.0,e=0,f=0,g=0.0,i=0;if((b|0)>1023){d=a*8988465674311579538646525.0e283;e=b+-1023|0;f=b+-2046|0;if((e|0)>1023){g=d*8988465674311579538646525.0e283;i=(f|0)>1023?1023:f}else{g=d;i=e}}else if((b|0)<-1022){d=a*2.2250738585072014e-308;e=b+1022|0;f=b+2044|0;if((e|0)<-1022){g=d*2.2250738585072014e-308;i=(f|0)<-1022?-1022:f}else{g=d;i=e}}else{g=a;i=b}b=qB(i+1023|0,0,52)|0;i=E;c[j>>2]=b;c[j+4>>2]=i;return +(g*+h[j>>3])}function Zm(a){a=+a;var b=0,d=0,e=0.0,f=0.0;b=(g[j>>2]=a,c[j>>2]|0);if((b&2130706432)>>>0<=1249902592){d=(b|0)<0;e=d?a+-8388608.0+8388608.0:a+8388608.0+-8388608.0;if(e==0.0)f=d?-0.0:0.0;else f=e}else f=a;return +f}function _m(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0,i=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){f=-1.0/(a*a);break}if(e){f=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;g=c[j+4>>2]|0;i=-1077;k=g;l=c[j>>2]|0;m=g;n=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)f=0.0;else{i=-1023;k=d;l=b;m=d;n=9}else f=a;while(0);if((n|0)==9){n=k+614242|0;c[j>>2]=l;c[j+4>>2]=(n&1048575)+1072079006;a=+h[j>>3]+-1.0;o=a*(a*.5);p=a/(a+2.0);q=p*p;r=q*q;h[j>>3]=a-o;l=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=l;s=+h[j>>3];t=a-s-o+p*(o+(r*(r*(r*.15313837699209373+.22222198432149784)+.3999999999940942)+q*(r*(r*(r*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));r=s*1.4426950407214463;q=+(i+(n>>>20)|0);o=q+r;f=o+(r+(q-o)+(t*1.4426950407214463+(s+t)*1.6751713164886512e-10))}return +f}function $m(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,k=0,l=0.0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=hB(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){g=+$m(a*18446744073709551616.0,b);i=g;k=(c[b>>2]|0)+-64|0}else{i=a;k=0}c[b>>2]=k;l=i;break}case 2047:{l=a;break}default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;l=+h[j>>3]}}return +l}function an(a,b){a=+a;b=+b;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;h[j>>3]=b;f=c[j+4>>2]&-2147483648|e&2147483647;c[j>>2]=d;c[j+4>>2]=f;return +(+h[j>>3])}function bn(a,b){a=+a;b=b|0;return +(+Ym(a,b))}function cn(a,b){a=+a;b=b|0;return +(+$m(a,b))}function dn(a,b){a=+a;b=+b;return +(+en(a,b))}function en(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=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.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;h[j>>3]=b;f=c[j>>2]|0;g=c[j+4>>2]|0;i=hB(d|0,e|0,52)|0;k=i&2047;i=hB(f|0,g|0,52)|0;l=i&2047;i=e&-2147483648;m=qB(f|0,g|0,1)|0;n=E;a:do if(!((m|0)==0&(n|0)==0)?(o=g&2147483647,!(o>>>0>2146435072|(o|0)==2146435072&f>>>0>0|(k|0)==2047)):0){o=qB(d|0,e|0,1)|0;p=E;if(!(p>>>0>n>>>0|(p|0)==(n|0)&o>>>0>m>>>0))return +((o|0)==(m|0)&(p|0)==(n|0)?a*0.0:a);if(!k){p=qB(d|0,e|0,12)|0;o=E;if((o|0)>-1|(o|0)==-1&p>>>0>4294967295){q=0;r=p;p=o;while(1){o=q+-1|0;r=qB(r|0,p|0,1)|0;p=E;if(!((p|0)>-1|(p|0)==-1&r>>>0>4294967295)){s=o;break}else q=o}}else s=0;q=qB(d|0,e|0,1-s|0)|0;t=s;u=q;v=E}else{t=k;u=d;v=e&1048575|1048576}if(!l){q=qB(f|0,g|0,12)|0;r=E;if((r|0)>-1|(r|0)==-1&q>>>0>4294967295){p=0;o=q;q=r;while(1){r=p+-1|0;o=qB(o|0,q|0,1)|0;q=E;if(!((q|0)>-1|(q|0)==-1&o>>>0>4294967295)){w=r;break}else p=r}}else w=0;p=qB(f|0,g|0,1-w|0)|0;x=w;y=p;z=E}else{x=l;y=f;z=g&1048575|1048576}p=cB(u|0,v|0,y|0,z|0)|0;o=E;q=(o|0)>-1|(o|0)==-1&p>>>0>4294967295;b:do if((t|0)>(x|0)){r=t;A=q;B=u;C=v;D=p;F=o;while(1){if(A)if((D|0)==0&(F|0)==0)break;else{G=D;H=F}else{G=B;H=C}I=qB(G|0,H|0,1)|0;J=E;K=r+-1|0;L=cB(I|0,J|0,y|0,z|0)|0;M=E;N=(M|0)>-1|(M|0)==-1&L>>>0>4294967295;if((K|0)>(x|0)){r=K;A=N;B=I;C=J;D=L;F=M}else{O=K;P=N;Q=L;R=M;S=I;T=J;break b}}U=a*0.0;break a}else{O=t;P=q;Q=p;R=o;S=u;T=v}while(0);if(P)if((Q|0)==0&(R|0)==0){U=a*0.0;break}else{V=R;W=Q}else{V=T;W=S}if(V>>>0<1048576|(V|0)==1048576&W>>>0<0){o=O;p=W;q=V;while(1){F=qB(p|0,q|0,1)|0;D=E;C=o+-1|0;if(D>>>0<1048576|(D|0)==1048576&F>>>0<0){o=C;p=F;q=D}else{X=C;Y=F;Z=D;break}}}else{X=O;Y=W;Z=V}if((X|0)>0){q=gB(Y|0,Z|0,0,-1048576)|0;p=E;o=qB(X|0,0,52)|0;_=p|E;$=q|o}else{o=hB(Y|0,Z|0,1-X|0)|0;_=E;$=o}c[j>>2]=$;c[j+4>>2]=_|i;U=+h[j>>3]}else aa=3;while(0);if((aa|0)==3){ba=a*b;U=ba/ba}return +U}function fn(a){a=+a;return ~~+Zm(a)|0}function gn(a,b){a=+a;b=+b;return +(+an(a,b))}function hn(a){a=+a;var b=0,d=0,e=0.0,f=0,h=0,i=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0;b=(g[j>>2]=a,c[j>>2]|0);d=(b|0)<0;do if(b>>>0<8388608|d){if(!(b&2147483647)){e=-1.0/(a*a);break}if(d){e=(a-a)/0.0;break}else{f=-152;h=(g[j>>2]=a*33554432.0,c[j>>2]|0);i=9;break}}else if(b>>>0<=2139095039)if((b|0)==1065353216)e=0.0;else{f=-127;h=b;i=9}else e=a;while(0);if((i|0)==9){i=h+4913933|0;a=(c[j>>2]=(i&8388607)+1060439283,+g[j>>2])+-1.0;k=a/(a+2.0);l=k*k;m=l*l;n=a*(a*.5);o=(c[j>>2]=(g[j>>2]=a-n,c[j>>2]|0)&-4096,+g[j>>2]);p=a-o-n+k*(n+(l*(m*.2849878668785095+.6666666269302368)+m*(m*.24279078841209412+.40000972151756287)));e=+(f+(i>>>23)|0)+(o*1.44287109375+(p*1.44287109375-(o+p)*1.7605285393074155e-04))}return +e}function jn(a){a=a|0;var b=0,c=0,d=0;b=(kn(a)|0)+1|0;c=Vo(b)|0;if(!c)d=0;else{jB(c|0,a|0,b|0)|0;d=c}return d|0}function kn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=b;a:do if(!(d&3)){e=b;f=4}else{g=b;h=d;while(1){if(!(a[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){e=j;f=4;break}else g=j}}while(0);if((f|0)==4){f=e;while(1){k=c[f>>2]|0;if(!((k&-2139062144^-2139062144)&k+-16843009))f=f+4|0;else break}if(!((k&255)<<24>>24))l=f;else{k=f;while(1){f=k+1|0;if(!(a[f>>0]|0)){l=f;break}else k=f}}i=l}return i-d|0}function ln(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=on(a,b,f)|0;l=e;return d|0}function mn(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=b;while(1){d=a[c>>0]|0;e=d<<24>>24;f=c+1|0;if(!(nn(e)|0))break;else c=f}switch(e|0){case 45:{g=1;h=5;break}case 43:{g=0;h=5;break}default:{i=0;j=c;k=d}}if((h|0)==5){i=g;j=f;k=a[f>>0]|0}f=(k<<24>>24)+-48|0;if(f>>>0<10){k=0;g=j;j=f;while(1){g=g+1|0;f=(k*10|0)-j|0;j=(a[g>>0]|0)+-48|0;if(j>>>0>=10){l=f;break}else k=f}}else l=0;return (i|0?l:0-l|0)|0}function nn(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function on(a,b,c){a=a|0;b=b|0;c=c|0;return pn(a,2147483647,b,c)|0}function pn(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,m=0,n=0,o=0,p=0,q=0;g=l;l=l+128|0;h=g+112|0;i=g;j=i;k=13904;m=j+112|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(m|0));if((d+-1|0)>>>0>2147483646)if(!d){n=h;o=1;p=4}else{c[(Rm()|0)>>2]=75;q=-1}else{n=b;o=d;p=4}if((p|0)==4){p=-2-n|0;d=o>>>0>p>>>0?p:o;c[i+48>>2]=d;o=i+20|0;c[o>>2]=n;c[i+44>>2]=n;p=n+d|0;n=i+16|0;c[n>>2]=p;c[i+28>>2]=p;p=qn(i,e,f)|0;if(!d)q=p;else{d=c[o>>2]|0;a[d+(((d|0)==(c[n>>2]|0))<<31>>31)>>0]=0;q=p}}l=g;return q|0}function qn(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=l;l=l+224|0;g=f+120|0;h=f+80|0;i=f;j=f+136|0;k=h;m=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));c[g>>2]=c[e>>2];if((rn(0,d,g,i,h)|0)<0)n=-1;else{if((c[b+76>>2]|0)>-1)o=sn(b)|0;else o=0;e=c[b>>2]|0;k=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){m=b+44|0;p=c[m>>2]|0;c[m>>2]=j;q=b+28|0;c[q>>2]=j;r=b+20|0;c[r>>2]=j;c[e>>2]=80;s=b+16|0;c[s>>2]=j+80;j=rn(b,d,g,i,h)|0;if(!p)t=j;else{kb[c[b+36>>2]&31](b,0,0)|0;u=(c[r>>2]|0)==0?-1:j;c[m>>2]=p;c[e>>2]=0;c[s>>2]=0;c[q>>2]=0;c[r>>2]=0;t=u}}else t=rn(b,d,g,i,h)|0;h=c[b>>2]|0;c[b>>2]=h|k;if(o|0)Tm(b);n=(h&32|0)==0?t:-1}l=f;return n|0}function rn(e,f,g,i,k){e=e|0;f=f|0;g=g|0;i=i|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0.0,ab=0.0,bb=0,cb=0,db=0,eb=0,fb=0.0,gb=0,hb=0.0,ib=0,jb=0,kb=0,lb=0.0,mb=0,nb=0,ob=0,pb=0,qb=0.0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0.0,Pb=0.0,Qb=0.0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0;m=l;l=l+624|0;n=m+24|0;o=m+16|0;p=m+588|0;q=m+576|0;r=m;s=m+536|0;t=m+8|0;u=m+528|0;v=(e|0)!=0;w=s+40|0;x=w;y=s+39|0;s=t+4|0;z=p;A=0-z|0;B=q+12|0;C=q+11|0;q=B;D=q-z|0;F=-2-z|0;G=q+2|0;H=n+288|0;I=p+9|0;J=I;K=p+8|0;L=0;M=0;N=0;O=f;a:while(1){do if((M|0)>-1)if((L|0)>(2147483647-M|0)){c[(Rm()|0)>>2]=75;P=-1;break}else{P=L+M|0;break}else P=M;while(0);f=a[O>>0]|0;if(!(f<<24>>24)){Q=243;break}else{R=O;S=f}b:while(1){switch(S<<24>>24){case 37:{U=R;V=R;Q=9;break b;break}case 0:{W=R;X=R;break b;break}default:{}}f=R+1|0;R=f;S=a[f>>0]|0}c:do if((Q|0)==9)while(1){Q=0;if((a[V+1>>0]|0)!=37){W=U;X=V;break c}f=U+1|0;Y=V+2|0;if((a[Y>>0]|0)==37){U=f;V=Y;Q=9}else{W=f;X=Y;break}}while(0);Y=W-O|0;if(v?(c[e>>2]&32|0)==0:0)tn(O,Y,e)|0;if(Y|0){L=Y;M=P;O=X;continue}Y=X+1|0;f=a[Y>>0]|0;Z=(f<<24>>24)+-48|0;if(Z>>>0<10){_=(a[X+2>>0]|0)==36;$=_?X+3|0:Y;aa=_?Z:-1;ba=_?1:N;ca=a[$>>0]|0;da=$}else{aa=-1;ba=N;ca=f;da=Y}Y=(ca<<24>>24)+-32|0;d:do if(Y>>>0<32){f=0;$=Y;_=ca;Z=da;while(1){if(!(1<<$&75913)){ea=f;fa=_;ga=Z;break d}ha=1<<(_<<24>>24)+-32|f;ia=Z+1|0;ja=a[ia>>0]|0;$=(ja<<24>>24)+-32|0;if($>>>0>=32){ea=ha;fa=ja;ga=ia;break}else{f=ha;_=ja;Z=ia}}}else{ea=0;fa=ca;ga=da}while(0);do if(fa<<24>>24!=42){Y=(fa<<24>>24)+-48|0;if(Y>>>0<10){Z=0;_=ga;f=Y;do{Z=(Z*10|0)+f|0;_=_+1|0;ka=a[_>>0]|0;f=(ka<<24>>24)+-48|0}while(f>>>0<10);if((Z|0)<0){la=-1;break a}else{ma=Z;na=ea;oa=ba;pa=_;qa=ka}}else{ma=0;na=ea;oa=ba;pa=ga;qa=fa}}else{f=ga+1|0;Y=a[f>>0]|0;$=(Y<<24>>24)+-48|0;if($>>>0<10?(a[ga+2>>0]|0)==36:0){c[k+($<<2)>>2]=10;ra=c[i+((a[f>>0]|0)+-48<<3)>>2]|0;sa=1;ta=ga+3|0}else{if(ba|0){la=-1;break a}if(!v){ma=0;na=ea;oa=0;pa=f;qa=Y;break}Y=(c[g>>2]|0)+(4-1)&~(4-1);$=c[Y>>2]|0;c[g>>2]=Y+4;ra=$;sa=0;ta=f}f=(ra|0)<0;ma=f?0-ra|0:ra;na=f?ea|8192:ea;oa=sa;pa=ta;qa=a[ta>>0]|0}while(0);e:do if(qa<<24>>24==46){f=pa+1|0;$=a[f>>0]|0;if($<<24>>24!=42){Y=($<<24>>24)+-48|0;if(Y>>>0<10){ua=0;va=f;wa=Y}else{xa=0;ya=f;break}while(1){f=(ua*10|0)+wa|0;Y=va+1|0;wa=(a[Y>>0]|0)+-48|0;if(wa>>>0>=10){xa=f;ya=Y;break e}else{ua=f;va=Y}}}_=pa+2|0;Z=(a[_>>0]|0)+-48|0;if(Z>>>0<10?(a[pa+3>>0]|0)==36:0){c[k+(Z<<2)>>2]=10;xa=c[i+((a[_>>0]|0)+-48<<3)>>2]|0;ya=pa+4|0;break}if(oa|0){la=-1;break a}if(v){Z=(c[g>>2]|0)+(4-1)&~(4-1);Y=c[Z>>2]|0;c[g>>2]=Z+4;xa=Y;ya=_}else{xa=0;ya=_}}else{xa=-1;ya=pa}while(0);_=0;Y=ya;while(1){Z=(a[Y>>0]|0)+-65|0;if(Z>>>0>57){la=-1;break a}za=Y+1|0;Aa=a[34454+(_*58|0)+Z>>0]|0;Ba=Aa&255;if((Ba+-1|0)>>>0<8){_=Ba;Y=za}else break}if(!(Aa<<24>>24)){la=-1;break}Z=(aa|0)>-1;do if(Aa<<24>>24==19)if(Z){la=-1;break a}else Q=51;else{if(Z){c[k+(aa<<2)>>2]=Ba;f=i+(aa<<3)|0;$=c[f+4>>2]|0;ia=r;c[ia>>2]=c[f>>2];c[ia+4>>2]=$;Q=51;break}if(!v){la=0;break a}un(r,Ba,g)}while(0);if((Q|0)==51?(Q=0,!v):0){L=0;M=P;N=oa;O=za;continue}Z=a[Y>>0]|0;$=(_|0)!=0&(Z&15|0)==3?Z&-33:Z;Z=na&-65537;ia=(na&8192|0)==0?na:Z;f:do switch($|0){case 110:{switch((_&255)<<24>>24){case 0:{c[c[r>>2]>>2]=P;L=0;M=P;N=oa;O=za;continue a;break}case 1:{c[c[r>>2]>>2]=P;L=0;M=P;N=oa;O=za;continue a;break}case 2:{f=c[r>>2]|0;c[f>>2]=P;c[f+4>>2]=((P|0)<0)<<31>>31;L=0;M=P;N=oa;O=za;continue a;break}case 3:{b[c[r>>2]>>1]=P;L=0;M=P;N=oa;O=za;continue a;break}case 4:{a[c[r>>2]>>0]=P;L=0;M=P;N=oa;O=za;continue a;break}case 6:{c[c[r>>2]>>2]=P;L=0;M=P;N=oa;O=za;continue a;break}case 7:{f=c[r>>2]|0;c[f>>2]=P;c[f+4>>2]=((P|0)<0)<<31>>31;L=0;M=P;N=oa;O=za;continue a;break}default:{L=0;M=P;N=oa;O=za;continue a}}break}case 112:{Ca=120;Da=xa>>>0>8?xa:8;Ea=ia|8;Q=63;break}case 88:case 120:{Ca=$;Da=xa;Ea=ia;Q=63;break}case 111:{f=r;ja=c[f>>2]|0;ha=c[f+4>>2]|0;if((ja|0)==0&(ha|0)==0)Fa=w;else{f=w;Ga=ja;ja=ha;while(1){ha=f+-1|0;a[ha>>0]=Ga&7|48;Ga=hB(Ga|0,ja|0,3)|0;ja=E;if((Ga|0)==0&(ja|0)==0){Fa=ha;break}else f=ha}}if(!(ia&8)){Ha=Fa;Ia=0;Ja=34934;Ka=xa;La=ia;Q=76}else{f=x-Fa|0;Ha=Fa;Ia=0;Ja=34934;Ka=(xa|0)>(f|0)?xa:f+1|0;La=ia;Q=76}break}case 105:case 100:{f=r;ja=c[f>>2]|0;Ga=c[f+4>>2]|0;if((Ga|0)<0){f=cB(0,0,ja|0,Ga|0)|0;ha=E;Ma=r;c[Ma>>2]=f;c[Ma+4>>2]=ha;Na=1;Oa=34934;Pa=f;Qa=ha;Q=75;break f}if(!(ia&2048)){ha=ia&1;Na=ha;Oa=(ha|0)==0?34934:34936;Pa=ja;Qa=Ga;Q=75}else{Na=1;Oa=34935;Pa=ja;Qa=Ga;Q=75}break}case 117:{Ga=r;Na=0;Oa=34934;Pa=c[Ga>>2]|0;Qa=c[Ga+4>>2]|0;Q=75;break}case 99:{a[y>>0]=c[r>>2];Ra=y;Sa=0;Ta=34934;Ua=w;Va=1;Wa=Z;break}case 109:{Xa=wn(c[(Rm()|0)>>2]|0)|0;Q=81;break}case 115:{Ga=c[r>>2]|0;Xa=Ga|0?Ga:34944;Q=81;break}case 67:{c[t>>2]=c[r>>2];c[s>>2]=0;c[r>>2]=t;Ya=-1;Za=t;Q=85;break}case 83:{Ga=c[r>>2]|0;if(!xa){yn(e,32,ma,0,ia);_a=0;Q=96}else{Ya=xa;Za=Ga;Q=85}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{$a=+h[r>>3];c[o>>2]=0;h[j>>3]=$a;if((c[j+4>>2]|0)>=0){Ga=ia&1;if(!(ia&2048)){ab=$a;bb=Ga;cb=(Ga|0)==0?34952:34957}else{ab=$a;bb=1;cb=34954}}else{ab=-$a;bb=1;cb=34951}h[j>>3]=ab;Ga=c[j+4>>2]&2146435072;do if(Ga>>>0<2146435072|(Ga|0)==2146435072&0<0){$a=+cn(ab,o)*2.0;ja=$a!=0.0;if(ja)c[o>>2]=(c[o>>2]|0)+-1;ha=$|32;if((ha|0)==97){f=$&32;Ma=(f|0)==0?cb:cb+9|0;db=bb|2;eb=12-xa|0;do if(!(xa>>>0>11|(eb|0)==0)){fb=8.0;gb=eb;do{gb=gb+-1|0;fb=fb*16.0}while((gb|0)!=0);if((a[Ma>>0]|0)==45){hb=-(fb+(-$a-fb));break}else{hb=$a+fb-fb;break}}else hb=$a;while(0);eb=c[o>>2]|0;gb=(eb|0)<0?0-eb|0:eb;ib=vn(gb,((gb|0)<0)<<31>>31,B)|0;if((ib|0)==(B|0)){a[C>>0]=48;jb=C}else jb=ib;a[jb+-1>>0]=(eb>>31&2)+43;eb=jb+-2|0;a[eb>>0]=$+15;ib=(xa|0)<1;gb=(ia&8|0)==0;kb=p;lb=hb;while(1){mb=~~lb;nb=kb+1|0;a[kb>>0]=d[34918+mb>>0]|f;lb=(lb-+(mb|0))*16.0;do if((nb-z|0)==1){if(gb&(ib&lb==0.0)){ob=nb;break}a[nb>>0]=46;ob=kb+2|0}else ob=nb;while(0);if(!(lb!=0.0))break;else kb=ob}kb=ob;ib=eb;gb=(xa|0)!=0&(F+kb|0)<(xa|0)?G+xa-ib|0:D-ib+kb|0;f=gb+db|0;yn(e,32,ma,f,ia);if(!(c[e>>2]&32))tn(Ma,db,e)|0;yn(e,48,ma,f,ia^65536);nb=kb-z|0;if(!(c[e>>2]&32))tn(p,nb,e)|0;kb=q-ib|0;yn(e,48,gb-(nb+kb)|0,0,0);if(!(c[e>>2]&32))tn(eb,kb,e)|0;yn(e,32,ma,f,ia^8192);pb=(f|0)<(ma|0)?ma:f;break}f=(xa|0)<0?6:xa;if(ja){kb=(c[o>>2]|0)+-28|0;c[o>>2]=kb;qb=$a*268435456.0;rb=kb}else{qb=$a;rb=c[o>>2]|0}kb=(rb|0)<0?n:H;nb=kb;lb=qb;do{gb=~~lb>>>0;c[nb>>2]=gb;nb=nb+4|0;lb=(lb-+(gb>>>0))*1.0e9}while(lb!=0.0);if((rb|0)>0){ja=kb;eb=nb;db=rb;while(1){Ma=(db|0)>29?29:db;gb=eb+-4|0;do if(gb>>>0<ja>>>0)sb=ja;else{ib=gb;mb=0;do{tb=qB(c[ib>>2]|0,0,Ma|0)|0;ub=gB(tb|0,E|0,mb|0,0)|0;tb=E;vb=sB(ub|0,tb|0,1e9,0)|0;c[ib>>2]=vb;mb=mB(ub|0,tb|0,1e9,0)|0;ib=ib+-4|0}while(ib>>>0>=ja>>>0);if(!mb){sb=ja;break}ib=ja+-4|0;c[ib>>2]=mb;sb=ib}while(0);gb=eb;while(1){if(gb>>>0<=sb>>>0)break;ib=gb+-4|0;if(!(c[ib>>2]|0))gb=ib;else break}ib=(c[o>>2]|0)-Ma|0;c[o>>2]=ib;if((ib|0)>0){ja=sb;eb=gb;db=ib}else{wb=sb;xb=gb;yb=ib;break}}}else{wb=kb;xb=nb;yb=rb}if((yb|0)<0){db=((f+25|0)/9|0)+1|0;eb=(ha|0)==102;ja=wb;ib=xb;tb=yb;while(1){ub=0-tb|0;vb=(ub|0)>9?9:ub;do if(ja>>>0<ib>>>0){ub=(1<<vb)+-1|0;zb=1e9>>>vb;Ab=0;Bb=ja;do{Cb=c[Bb>>2]|0;c[Bb>>2]=(Cb>>>vb)+Ab;Ab=T(Cb&ub,zb)|0;Bb=Bb+4|0}while(Bb>>>0<ib>>>0);Bb=(c[ja>>2]|0)==0?ja+4|0:ja;if(!Ab){Db=Bb;Eb=ib;break}c[ib>>2]=Ab;Db=Bb;Eb=ib+4|0}else{Db=(c[ja>>2]|0)==0?ja+4|0:ja;Eb=ib}while(0);gb=eb?kb:Db;Ma=(Eb-gb>>2|0)>(db|0)?gb+(db<<2)|0:Eb;tb=(c[o>>2]|0)+vb|0;c[o>>2]=tb;if((tb|0)>=0){Fb=Db;Gb=Ma;break}else{ja=Db;ib=Ma}}}else{Fb=wb;Gb=xb}ib=kb;do if(Fb>>>0<Gb>>>0){ja=(ib-Fb>>2)*9|0;tb=c[Fb>>2]|0;if(tb>>>0<10){Hb=ja;break}else{Ib=ja;Jb=10}while(1){Jb=Jb*10|0;ja=Ib+1|0;if(tb>>>0<Jb>>>0){Hb=ja;break}else Ib=ja}}else Hb=0;while(0);tb=(ha|0)==103;vb=(f|0)!=0;ja=f-((ha|0)!=102?Hb:0)+((vb&tb)<<31>>31)|0;if((ja|0)<(((Gb-ib>>2)*9|0)+-9|0)){db=ja+9216|0;ja=kb+4+(((db|0)/9|0)+-1024<<2)|0;eb=((db|0)%9|0)+1|0;if((eb|0)<9){db=eb;eb=10;while(1){nb=eb*10|0;db=db+1|0;if((db|0)==9){Kb=nb;break}else eb=nb}}else Kb=10;eb=c[ja>>2]|0;db=(eb>>>0)%(Kb>>>0)|0;ha=(ja+4|0)==(Gb|0);do if(ha&(db|0)==0){Lb=ja;Mb=Hb;Nb=Fb}else{lb=(((eb>>>0)/(Kb>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;nb=(Kb|0)/2|0;if(db>>>0<nb>>>0)Ob=.5;else Ob=ha&(db|0)==(nb|0)?1.0:1.5;do if(!bb){Pb=Ob;Qb=lb}else{if((a[cb>>0]|0)!=45){Pb=Ob;Qb=lb;break}Pb=-Ob;Qb=-lb}while(0);nb=eb-db|0;c[ja>>2]=nb;if(!(Qb+Pb!=Qb)){Lb=ja;Mb=Hb;Nb=Fb;break}Ma=nb+Kb|0;c[ja>>2]=Ma;if(Ma>>>0>999999999){Ma=ja;nb=Fb;while(1){gb=Ma+-4|0;c[Ma>>2]=0;if(gb>>>0<nb>>>0){Bb=nb+-4|0;c[Bb>>2]=0;Rb=Bb}else Rb=nb;Bb=(c[gb>>2]|0)+1|0;c[gb>>2]=Bb;if(Bb>>>0>999999999){Ma=gb;nb=Rb}else{Sb=gb;Tb=Rb;break}}}else{Sb=ja;Tb=Fb}nb=(ib-Tb>>2)*9|0;Ma=c[Tb>>2]|0;if(Ma>>>0<10){Lb=Sb;Mb=nb;Nb=Tb;break}else{Ub=nb;Vb=10}while(1){Vb=Vb*10|0;nb=Ub+1|0;if(Ma>>>0<Vb>>>0){Lb=Sb;Mb=nb;Nb=Tb;break}else Ub=nb}}while(0);ja=Lb+4|0;Wb=Mb;Xb=Gb>>>0>ja>>>0?ja:Gb;Yb=Nb}else{Wb=Hb;Xb=Gb;Yb=Fb}ja=0-Wb|0;db=Xb;while(1){if(db>>>0<=Yb>>>0){Zb=0;break}eb=db+-4|0;if(!(c[eb>>2]|0))db=eb;else{Zb=1;break}}do if(tb){eb=(vb&1^1)+f|0;if((eb|0)>(Wb|0)&(Wb|0)>-5){_b=$+-1|0;$b=eb+-1-Wb|0}else{_b=$+-2|0;$b=eb+-1|0}eb=ia&8;if(eb|0){ac=_b;bc=$b;cc=eb;break}do if(Zb){eb=c[db+-4>>2]|0;if(!eb){dc=9;break}if(!((eb>>>0)%10|0)){ec=0;fc=10}else{dc=0;break}while(1){fc=fc*10|0;ha=ec+1|0;if((eb>>>0)%(fc>>>0)|0|0){dc=ha;break}else ec=ha}}else dc=9;while(0);eb=((db-ib>>2)*9|0)+-9|0;if((_b|32|0)==102){Ab=eb-dc|0;ha=(Ab|0)<0?0:Ab;ac=_b;bc=($b|0)<(ha|0)?$b:ha;cc=0;break}else{ha=eb+Wb-dc|0;eb=(ha|0)<0?0:ha;ac=_b;bc=($b|0)<(eb|0)?$b:eb;cc=0;break}}else{ac=$;bc=f;cc=ia&8}while(0);f=bc|cc;ib=(f|0)!=0&1;vb=(ac|32|0)==102;if(vb){gc=0;hc=(Wb|0)>0?Wb:0}else{tb=(Wb|0)<0?ja:Wb;eb=vn(tb,((tb|0)<0)<<31>>31,B)|0;if((q-eb|0)<2){tb=eb;while(1){ha=tb+-1|0;a[ha>>0]=48;if((q-ha|0)<2)tb=ha;else{ic=ha;break}}}else ic=eb;a[ic+-1>>0]=(Wb>>31&2)+43;tb=ic+-2|0;a[tb>>0]=ac;gc=tb;hc=q-tb|0}tb=bb+1+bc+ib+hc|0;yn(e,32,ma,tb,ia);if(!(c[e>>2]&32))tn(cb,bb,e)|0;yn(e,48,ma,tb,ia^65536);do if(vb){ja=Yb>>>0>kb>>>0?kb:Yb;ha=ja;do{Ab=vn(c[ha>>2]|0,0,I)|0;do if((ha|0)==(ja|0)){if((Ab|0)!=(I|0)){jc=Ab;break}a[K>>0]=48;jc=K}else{if(Ab>>>0<=p>>>0){jc=Ab;break}eB(p|0,48,Ab-z|0)|0;Ma=Ab;while(1){nb=Ma+-1|0;if(nb>>>0>p>>>0)Ma=nb;else{jc=nb;break}}}while(0);if(!(c[e>>2]&32))tn(jc,J-jc|0,e)|0;ha=ha+4|0}while(ha>>>0<=kb>>>0);do if(f|0){if(c[e>>2]&32|0)break;tn(34982,1,e)|0}while(0);if((bc|0)>0&ha>>>0<db>>>0){ja=bc;Ab=ha;while(1){Ma=vn(c[Ab>>2]|0,0,I)|0;if(Ma>>>0>p>>>0){eB(p|0,48,Ma-z|0)|0;nb=Ma;while(1){gb=nb+-1|0;if(gb>>>0>p>>>0)nb=gb;else{kc=gb;break}}}else kc=Ma;if(!(c[e>>2]&32))tn(kc,(ja|0)>9?9:ja,e)|0;Ab=Ab+4|0;nb=ja+-9|0;if(!((ja|0)>9&Ab>>>0<db>>>0)){lc=nb;break}else ja=nb}}else lc=bc;yn(e,48,lc+9|0,9,0)}else{ja=Zb?db:Yb+4|0;if((bc|0)>-1){Ab=(cc|0)==0;ha=bc;nb=Yb;while(1){gb=vn(c[nb>>2]|0,0,I)|0;if((gb|0)==(I|0)){a[K>>0]=48;mc=K}else mc=gb;do if((nb|0)==(Yb|0)){gb=mc+1|0;if(!(c[e>>2]&32))tn(mc,1,e)|0;if(Ab&(ha|0)<1){nc=gb;break}if(c[e>>2]&32|0){nc=gb;break}tn(34982,1,e)|0;nc=gb}else{if(mc>>>0<=p>>>0){nc=mc;break}eB(p|0,48,mc+A|0)|0;gb=mc;while(1){Bb=gb+-1|0;if(Bb>>>0>p>>>0)gb=Bb;else{nc=Bb;break}}}while(0);Ma=J-nc|0;if(!(c[e>>2]&32))tn(nc,(ha|0)>(Ma|0)?Ma:ha,e)|0;gb=ha-Ma|0;nb=nb+4|0;if(!(nb>>>0<ja>>>0&(gb|0)>-1)){oc=gb;break}else ha=gb}}else oc=bc;yn(e,48,oc+18|0,18,0);if(c[e>>2]&32|0)break;tn(gc,q-gc|0,e)|0}while(0);yn(e,32,ma,tb,ia^8192);pb=(tb|0)<(ma|0)?ma:tb}else{db=($&32|0)!=0;f=ab!=ab|0.0!=0.0;kb=f?0:bb;vb=kb+3|0;yn(e,32,ma,vb,Z);ib=c[e>>2]|0;if(!(ib&32)){tn(cb,kb,e)|0;pc=c[e>>2]|0}else pc=ib;if(!(pc&32))tn(f?(db?36885:34978):db?34970:34974,3,e)|0;yn(e,32,ma,vb,ia^8192);pb=(vb|0)<(ma|0)?ma:vb}while(0);L=pb;M=P;N=oa;O=za;continue a;break}default:{Ra=O;Sa=0;Ta=34934;Ua=w;Va=xa;Wa=ia}}while(0);g:do if((Q|0)==63){Q=0;$=r;_=c[$>>2]|0;Y=c[$+4>>2]|0;$=Ca&32;if((_|0)==0&(Y|0)==0){qc=w;rc=0;sc=0}else{Ga=w;vb=_;_=Y;do{Ga=Ga+-1|0;a[Ga>>0]=d[34918+(vb&15)>>0]|$;vb=hB(vb|0,_|0,4)|0;_=E}while(!((vb|0)==0&(_|0)==0));_=r;qc=Ga;rc=c[_>>2]|0;sc=c[_+4>>2]|0}_=(Ea&8|0)==0|(rc|0)==0&(sc|0)==0;Ha=qc;Ia=_?0:2;Ja=_?34934:34934+(Ca>>4)|0;Ka=Da;La=Ea;Q=76}else if((Q|0)==75){Q=0;Ha=vn(Pa,Qa,w)|0;Ia=Na;Ja=Oa;Ka=xa;La=ia;Q=76}else if((Q|0)==81){Q=0;_=xn(Xa,0,xa)|0;vb=(_|0)==0;Ra=Xa;Sa=0;Ta=34934;Ua=vb?Xa+xa|0:_;Va=vb?xa:_-Xa|0;Wa=Z}else if((Q|0)==85){Q=0;_=Za;vb=0;$=0;while(1){Y=c[_>>2]|0;if(!Y){tc=vb;uc=$;break}db=zn(u,Y)|0;if((db|0)<0|db>>>0>(Ya-vb|0)>>>0){tc=vb;uc=db;break}Y=db+vb|0;if(Ya>>>0>Y>>>0){_=_+4|0;vb=Y;$=db}else{tc=Y;uc=db;break}}if((uc|0)<0){la=-1;break a}yn(e,32,ma,tc,ia);if(!tc){_a=0;Q=96}else{$=Za;vb=0;while(1){_=c[$>>2]|0;if(!_){_a=tc;Q=96;break g}Ga=zn(u,_)|0;vb=Ga+vb|0;if((vb|0)>(tc|0)){_a=tc;Q=96;break g}if(!(c[e>>2]&32))tn(u,Ga,e)|0;if(vb>>>0>=tc>>>0){_a=tc;Q=96;break}else $=$+4|0}}}while(0);if((Q|0)==96){Q=0;yn(e,32,ma,_a,ia^8192);L=(ma|0)>(_a|0)?ma:_a;M=P;N=oa;O=za;continue}if((Q|0)==76){Q=0;Z=(Ka|0)>-1?La&-65537:La;$=r;vb=(c[$>>2]|0)!=0|(c[$+4>>2]|0)!=0;if((Ka|0)!=0|vb){$=(vb&1^1)+(x-Ha)|0;Ra=Ha;Sa=Ia;Ta=Ja;Ua=w;Va=(Ka|0)>($|0)?Ka:$;Wa=Z}else{Ra=w;Sa=Ia;Ta=Ja;Ua=w;Va=0;Wa=Z}}Z=Ua-Ra|0;$=(Va|0)<(Z|0)?Z:Va;vb=$+Sa|0;Ga=(ma|0)<(vb|0)?vb:ma;yn(e,32,Ga,vb,Wa);if(!(c[e>>2]&32))tn(Ta,Sa,e)|0;yn(e,48,Ga,vb,Wa^65536);yn(e,48,$,Z,0);if(!(c[e>>2]&32))tn(Ra,Z,e)|0;yn(e,32,Ga,vb,Wa^8192);L=Ga;M=P;N=oa;O=za}h:do if((Q|0)==243)if(!e)if(!N)la=0;else{za=1;while(1){O=c[k+(za<<2)>>2]|0;if(!O){vc=za;break}un(i+(za<<3)|0,O,g);za=za+1|0;if((za|0)>=10){la=1;break h}}while(1){if(c[k+(vc<<2)>>2]|0){la=-1;break h}vc=vc+1|0;if((vc|0)>=10){la=1;break}}}else la=P;while(0);l=m;return la|0}function sn(a){a=a|0;return 0}function tn(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;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Bn(e)|0)){h=c[f>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=e+20|0;f=c[g>>2]|0;k=f;if((h-f|0)>>>0<d>>>0){j=kb[c[e+36>>2]&31](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){l=d;m=b;n=0;o=k;break b}p=f+-1|0;if((a[b+p>>0]|0)==10)break;else f=p}if((kb[c[e+36>>2]&31](e,b,f)|0)>>>0<f>>>0){j=f;break a}l=d-f|0;m=b+f|0;n=f;o=c[g>>2]|0}else{l=d;m=b;n=0;o=k}while(0);jB(o|0,m|0,l|0)|0;c[g>>2]=(c[g>>2]|0)+l;j=n+l|0}while(0);return j|0}function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f;break a;break}case 10:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a;break}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=f;c[e+4>>2]=0;break a;break}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);f=e;g=c[f>>2]|0;i=c[f+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=g;c[e+4>>2]=i;break a;break}case 13:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&65535)<<16>>16;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 14:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&65535;c[i+4>>2]=0;break a;break}case 15:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&255)<<24>>24;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 16:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&255;c[i+4>>2]=0;break a;break}case 17:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}case 18:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}default:break a}while(0);while(0);return}function vn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){e=d;f=b;g=c;while(1){c=sB(f|0,g|0,10,0)|0;e=e+-1|0;a[e>>0]=c|48;c=f;f=mB(f|0,g|0,10,0)|0;if(!(g>>>0>9|(g|0)==9&c>>>0>4294967295))break;else g=E}h=f;i=e}else{h=b;i=d}if(!h)j=i;else{d=h;h=i;while(1){i=h+-1|0;a[i>>0]=(d>>>0)%10|0|48;if(d>>>0<10){j=i;break}else{d=(d>>>0)/10|0;h=i}}}return j|0}function wn(b){b=b|0;var c=0,e=0,f=0,g=0,h=0,i=0;c=0;while(1){if((d[34984+c>>0]|0)==(b|0)){e=2;break}f=c+1|0;if((f|0)==87){g=35072;h=87;e=5;break}else c=f}if((e|0)==2)if(!c)i=35072;else{g=35072;h=c;e=5}if((e|0)==5)while(1){e=0;c=g;do{b=c;c=c+1|0}while((a[b>>0]|0)!=0);h=h+-1|0;if(!h){i=c;break}else{g=c;e=5}}return i|0}function xn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=d&255;g=(e|0)!=0;a:do if(g&(b&3|0)!=0){h=d&255;i=b;j=e;while(1){if((a[i>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=i+1|0;o=j+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=n;j=o}else{q=n;r=o;s=p;m=5;break}}}else{q=b;r=e;s=g;m=5}while(0);if((m|0)==5)if(s){k=q;l=r;m=6}else{t=q;u=0}b:do if((m|0)==6){q=d&255;if((a[k>>0]|0)==q<<24>>24){t=k;u=l}else{r=T(f,16843009)|0;c:do if(l>>>0>3){s=k;g=l;while(1){e=c[s>>2]^r;if((e&-2139062144^-2139062144)&e+-16843009|0)break;e=s+4|0;b=g+-4|0;if(b>>>0>3){s=e;g=b}else{v=e;w=b;m=11;break c}}x=s;y=g}else{v=k;w=l;m=11}while(0);if((m|0)==11)if(!w){t=v;u=0;break}else{x=v;y=w}while(1){if((a[x>>0]|0)==q<<24>>24){t=x;u=y;break b}r=x+1|0;y=y+-1|0;if(!y){t=r;u=0;break}else x=r}}}while(0);return (u|0?t:0)|0}function yn(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,m=0,n=0,o=0,p=0,q=0;g=l;l=l+256|0;h=g;do if((d|0)>(e|0)&(f&73728|0)==0){i=d-e|0;eB(h|0,b|0,(i>>>0>256?256:i)|0)|0;j=c[a>>2]|0;k=(j&32|0)==0;if(i>>>0>255){m=d-e|0;n=i;o=j;j=k;while(1){if(j){tn(h,256,a)|0;p=c[a>>2]|0}else p=o;n=n+-256|0;j=(p&32|0)==0;if(n>>>0<=255)break;else o=p}if(j)q=m&255;else break}else if(k)q=i;else break;tn(h,q,a)|0}while(0);l=g;return}function zn(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=An(a,b,0)|0;return c|0}function An(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;do if(b){if(d>>>0<128){a[b>>0]=d;f=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;f=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;f=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;f=4;break}else{c[(Rm()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function Bn(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=c[b>>2]|0;if(!(e&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);f=0}else{c[b>>2]=e|32;f=-1}return f|0}function Cn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+20|0;f=c[e>>2]|0;g=(c[a+16>>2]|0)-f|0;a=g>>>0>d>>>0?d:g;jB(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Dn(a,b){a=a|0;b=b|0;return +(+En(a,b,1))}function En(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;e=l;l=l+112|0;f=e;g=f;h=g+112|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));g=f+4|0;c[g>>2]=a;h=f+8|0;c[h>>2]=-1;c[f+44>>2]=a;c[f+76>>2]=-1;Fn(f,0);i=+Gn(f,d,1);d=(c[g>>2]|0)-(c[h>>2]|0)+(c[f+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;l=e;return +i}function Fn(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 Gn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0.0,Q=0.0,R=0,S=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0.0,da=0.0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0.0,la=0,ma=0.0,na=0.0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0.0,za=0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0.0,Ia=0,Ja=0.0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0.0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0.0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0.0,yc=0.0,zc=0.0,Ac=0.0,Bc=0.0,Cc=0.0,Dc=0.0,Ec=0.0,Fc=0,Gc=0,Hc=0.0,Ic=0;g=l;l=l+512|0;h=g;switch(e|0){case 0:{i=-149;j=24;k=4;break}case 1:{i=-1074;j=53;k=4;break}case 2:{i=-1074;j=53;k=4;break}default:m=0.0}a:do if((k|0)==4){e=b+4|0;n=b+100|0;do{o=c[e>>2]|0;if(o>>>0<(c[n>>2]|0)>>>0){c[e>>2]=o+1;p=d[o>>0]|0}else p=Hn(b)|0}while((nn(p)|0)!=0);b:do switch(p|0){case 43:case 45:{o=1-(((p|0)==45&1)<<1)|0;q=c[e>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[e>>2]=q+1;r=d[q>>0]|0;s=o;break b}else{r=Hn(b)|0;s=o;break b}break}default:{r=p;s=1}}while(0);o=0;q=r;while(1){if((q|32|0)!=(a[36876+o>>0]|0)){v=o;w=q;break}do if(o>>>0<7){x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;y=d[x>>0]|0;break}else{y=Hn(b)|0;break}}else y=q;while(0);x=o+1|0;if(x>>>0<8){o=x;q=y}else{v=x;w=y;break}}c:do switch(v|0){case 8:break;case 3:{k=23;break}default:{q=(f|0)!=0;if(q&v>>>0>3)if((v|0)==8)break c;else{k=23;break c}d:do if(!v){o=0;x=w;while(1){if((x|32|0)!=(a[36885+o>>0]|0)){z=o;A=x;break d}do if(o>>>0<2){B=c[e>>2]|0;if(B>>>0<(c[n>>2]|0)>>>0){c[e>>2]=B+1;C=d[B>>0]|0;break}else{C=Hn(b)|0;break}}else C=x;while(0);B=o+1|0;if(B>>>0<3){o=B;x=C}else{z=B;A=C;break}}}else{z=v;A=w}while(0);switch(z|0){case 3:{x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;D=d[x>>0]|0}else D=Hn(b)|0;if((D|0)==40)F=1;else{if(!(c[n>>2]|0)){m=t;break a}c[e>>2]=(c[e>>2]|0)+-1;m=t;break a}while(1){x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;H=d[x>>0]|0}else H=Hn(b)|0;if(!((H+-48|0)>>>0<10|(H+-65|0)>>>0<26)?!((H|0)==95|(H+-97|0)>>>0<26):0)break;F=F+1|0}if((H|0)==41){m=t;break a}x=(c[n>>2]|0)==0;if(!x)c[e>>2]=(c[e>>2]|0)+-1;if(!q){c[(Rm()|0)>>2]=22;Fn(b,0);m=0.0;break a}if(!F){m=t;break a}else I=F;while(1){I=I+-1|0;if(!x)c[e>>2]=(c[e>>2]|0)+-1;if(!I){m=t;break a}}break}case 0:{do if((A|0)==48){x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;J=d[x>>0]|0}else J=Hn(b)|0;if((J|32|0)!=120){if(!(c[n>>2]|0)){K=48;break}c[e>>2]=(c[e>>2]|0)+-1;K=48;break}x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;L=d[x>>0]|0;M=0}else{L=Hn(b)|0;M=0}e:while(1){switch(L|0){case 46:{k=74;break e;break}case 48:break;default:{N=0;O=0;P=1.0;Q=0.0;R=0;S=L;U=M;V=0;W=0;X=0;Y=0;break e}}x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;L=d[x>>0]|0;M=1;continue}else{L=Hn(b)|0;M=1;continue}}if((k|0)==74){x=c[e>>2]|0;if(x>>>0<(c[n>>2]|0)>>>0){c[e>>2]=x+1;Z=d[x>>0]|0}else Z=Hn(b)|0;if((Z|0)==48){x=0;q=0;while(1){o=c[e>>2]|0;if(o>>>0<(c[n>>2]|0)>>>0){c[e>>2]=o+1;_=d[o>>0]|0}else _=Hn(b)|0;o=gB(x|0,q|0,-1,-1)|0;B=E;if((_|0)==48){x=o;q=B}else{N=1;O=0;P=1.0;Q=0.0;R=0;S=_;U=1;V=0;W=0;X=o;Y=B;break}}}else{N=1;O=0;P=1.0;Q=0.0;R=0;S=Z;U=M;V=0;W=0;X=0;Y=0}}while(1){q=S+-48|0;x=S|32;if(q>>>0>=10){B=(S|0)==46;if(!(B|(x+-97|0)>>>0<6)){$=S;break}if(B)if(!N){aa=1;ba=O;ca=P;da=Q;ea=R;fa=U;ga=W;ha=V;ia=W;ja=V}else{$=46;break}else k=86}else k=86;if((k|0)==86){k=0;B=(S|0)>57?x+-87|0:q;do if(!((V|0)<0|(V|0)==0&W>>>0<8)){if((V|0)<0|(V|0)==0&W>>>0<14){ka=P*.0625;la=O;ma=ka;na=Q+ka*+(B|0);oa=R;break}if((O|0)!=0|(B|0)==0){la=O;ma=P;na=Q;oa=R}else{la=1;ma=P;na=Q+P*.5;oa=R}}else{la=O;ma=P;na=Q;oa=B+(R<<4)|0}while(0);B=gB(W|0,V|0,1,0)|0;aa=N;ba=la;ca=ma;da=na;ea=oa;fa=1;ga=X;ha=Y;ia=B;ja=E}B=c[e>>2]|0;if(B>>>0<(c[n>>2]|0)>>>0){c[e>>2]=B+1;N=aa;O=ba;P=ca;Q=da;R=ea;S=d[B>>0]|0;U=fa;V=ja;W=ia;X=ga;Y=ha;continue}else{N=aa;O=ba;P=ca;Q=da;R=ea;S=Hn(b)|0;U=fa;V=ja;W=ia;X=ga;Y=ha;continue}}if(!U){B=(c[n>>2]|0)==0;if(!B)c[e>>2]=(c[e>>2]|0)+-1;if(f){if(!B?(B=c[e>>2]|0,c[e>>2]=B+-1,N|0):0)c[e>>2]=B+-2}else Fn(b,0);m=+(s|0)*0.0;break a}B=(N|0)==0;q=B?W:X;x=B?V:Y;if((V|0)<0|(V|0)==0&W>>>0<8){B=R;o=W;pa=V;while(1){qa=B<<4;o=gB(o|0,pa|0,1,0)|0;pa=E;if(!((pa|0)<0|(pa|0)==0&o>>>0<8)){ra=qa;break}else B=qa}}else ra=R;if(($|32|0)==112){B=In(b,f)|0;o=E;if((B|0)==0&(o|0)==-2147483648){if(!f){Fn(b,0);m=0.0;break a}if(!(c[n>>2]|0)){sa=0;ta=0}else{c[e>>2]=(c[e>>2]|0)+-1;sa=0;ta=0}}else{sa=B;ta=o}}else if(!(c[n>>2]|0)){sa=0;ta=0}else{c[e>>2]=(c[e>>2]|0)+-1;sa=0;ta=0}o=qB(q|0,x|0,2)|0;B=gB(o|0,E|0,-32,-1)|0;o=gB(B|0,E|0,sa|0,ta|0)|0;B=E;if(!ra){m=+(s|0)*0.0;break a}if((B|0)>0|(B|0)==0&o>>>0>(0-i|0)>>>0){c[(Rm()|0)>>2]=34;m=+(s|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}pa=i+-106|0;qa=((pa|0)<0)<<31>>31;if((B|0)<(qa|0)|(B|0)==(qa|0)&o>>>0<pa>>>0){c[(Rm()|0)>>2]=34;m=+(s|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((ra|0)>-1){ka=Q;pa=ra;qa=o;ua=B;while(1){va=!(ka>=.5);wa=va&1|pa<<1;xa=wa^1;ya=ka+(va?ka:ka+-1.0);va=gB(qa|0,ua|0,-1,-1)|0;za=E;if((wa|0)>-1){ka=ya;pa=xa;qa=va;ua=za}else{Aa=ya;Ba=xa;Ca=va;Da=za;break}}}else{Aa=Q;Ba=ra;Ca=o;Da=B}ua=cB(32,0,i|0,((i|0)<0)<<31>>31|0)|0;qa=gB(Ca|0,Da|0,ua|0,E|0)|0;ua=E;if(0>(ua|0)|0==(ua|0)&j>>>0>qa>>>0)if((qa|0)<0){Ea=0;Fa=84;k=127}else{Ga=qa;k=125}else{Ga=j;k=125}if((k|0)==125)if((Ga|0)<53){Ea=Ga;Fa=84-Ga|0;k=127}else{Ha=0.0;Ia=Ga;Ja=+(s|0)}if((k|0)==127){ka=+(s|0);Ha=+gn(+Ym(1.0,Fa),ka);Ia=Ea;Ja=ka}qa=(Ba&1|0)==0&(Aa!=0.0&(Ia|0)<32);ka=Ja*(qa?0.0:Aa)+(Ha+Ja*+(((qa&1)+Ba|0)>>>0))-Ha;if(!(ka!=0.0))c[(Rm()|0)>>2]=34;m=+bn(ka,Ca);break a}else K=A;while(0);qa=i+j|0;ua=0-qa|0;pa=K;x=0;f:while(1){switch(pa|0){case 46:{k=138;break f;break}case 48:break;default:{Ka=0;La=pa;Ma=x;Na=0;Oa=0;break f}}q=c[e>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[e>>2]=q+1;pa=d[q>>0]|0;x=1;continue}else{pa=Hn(b)|0;x=1;continue}}if((k|0)==138){pa=c[e>>2]|0;if(pa>>>0<(c[n>>2]|0)>>>0){c[e>>2]=pa+1;Pa=d[pa>>0]|0}else Pa=Hn(b)|0;if((Pa|0)==48){pa=0;q=0;while(1){za=gB(pa|0,q|0,-1,-1)|0;va=E;xa=c[e>>2]|0;if(xa>>>0<(c[n>>2]|0)>>>0){c[e>>2]=xa+1;Qa=d[xa>>0]|0}else Qa=Hn(b)|0;if((Qa|0)==48){pa=za;q=va}else{Ka=1;La=Qa;Ma=1;Na=za;Oa=va;break}}}else{Ka=1;La=Pa;Ma=x;Na=0;Oa=0}}c[h>>2]=0;q=La+-48|0;pa=(La|0)==46;g:do if(pa|q>>>0<10){va=h+496|0;za=0;xa=0;wa=0;Ra=Ka;Sa=Ma;Ta=La;Ua=0;Va=0;Wa=pa;Xa=q;Ya=Na;Za=Oa;h:while(1){do if(Wa)if(!Ra){_a=za;$a=xa;ab=1;bb=wa;cb=Sa;db=Ua;eb=Va;fb=Ua;gb=Va}else break h;else{hb=gB(Ua|0,Va|0,1,0)|0;ib=E;jb=(Ta|0)!=48;if((xa|0)>=125){if(!jb){_a=za;$a=xa;ab=Ra;bb=wa;cb=Sa;db=Ya;eb=Za;fb=hb;gb=ib;break}c[va>>2]=c[va>>2]|1;_a=za;$a=xa;ab=Ra;bb=wa;cb=Sa;db=Ya;eb=Za;fb=hb;gb=ib;break}kb=h+(xa<<2)|0;if(!za)lb=Xa;else lb=Ta+-48+((c[kb>>2]|0)*10|0)|0;c[kb>>2]=lb;kb=za+1|0;mb=(kb|0)==9;_a=mb?0:kb;$a=(mb&1)+xa|0;ab=Ra;bb=jb?hb:wa;cb=1;db=Ya;eb=Za;fb=hb;gb=ib}while(0);ib=c[e>>2]|0;if(ib>>>0<(c[n>>2]|0)>>>0){c[e>>2]=ib+1;nb=d[ib>>0]|0}else nb=Hn(b)|0;Xa=nb+-48|0;Wa=(nb|0)==46;if(!(Wa|Xa>>>0<10)){ob=_a;pb=$a;qb=bb;rb=ab;sb=nb;tb=cb;ub=db;vb=fb;wb=eb;xb=gb;k=161;break g}else{za=_a;xa=$a;wa=bb;Ra=ab;Sa=cb;Ta=nb;Ua=fb;Va=gb;Ya=db;Za=eb}}yb=za;zb=xa;Ab=wa;Bb=Ua;Cb=Va;Db=Ya;Eb=Za;Fb=(Sa|0)!=0;k=169}else{ob=0;pb=0;qb=0;rb=Ka;sb=La;tb=Ma;ub=Na;vb=0;wb=Oa;xb=0;k=161}while(0);do if((k|0)==161){q=(rb|0)==0;pa=q?vb:ub;x=q?xb:wb;q=(tb|0)!=0;if(!(q&(sb|32|0)==101))if((sb|0)>-1){yb=ob;zb=pb;Ab=qb;Bb=vb;Cb=xb;Db=pa;Eb=x;Fb=q;k=169;break}else{Gb=ob;Hb=pb;Ib=qb;Jb=vb;Kb=xb;Lb=q;Mb=pa;Nb=x;k=171;break}q=In(b,f)|0;Ta=E;if((q|0)==0&(Ta|0)==-2147483648){if(!f){Fn(b,0);Ob=0.0;break}if(!(c[n>>2]|0)){Pb=0;Qb=0}else{c[e>>2]=(c[e>>2]|0)+-1;Pb=0;Qb=0}}else{Pb=q;Qb=Ta}Ta=gB(Pb|0,Qb|0,pa|0,x|0)|0;Rb=ob;Sb=pb;Tb=qb;Ub=Ta;Vb=vb;Wb=E;Xb=xb;k=173}while(0);if((k|0)==169)if(c[n>>2]|0){c[e>>2]=(c[e>>2]|0)+-1;if(Fb){Rb=yb;Sb=zb;Tb=Ab;Ub=Db;Vb=Bb;Wb=Eb;Xb=Cb;k=173}else k=172}else{Gb=yb;Hb=zb;Ib=Ab;Jb=Bb;Kb=Cb;Lb=Fb;Mb=Db;Nb=Eb;k=171}if((k|0)==171)if(Lb){Rb=Gb;Sb=Hb;Tb=Ib;Ub=Mb;Vb=Jb;Wb=Nb;Xb=Kb;k=173}else k=172;do if((k|0)==172){c[(Rm()|0)>>2]=22;Fn(b,0);Ob=0.0}else if((k|0)==173){Ta=c[h>>2]|0;if(!Ta){Ob=+(s|0)*0.0;break}if(((Xb|0)<0|(Xb|0)==0&Vb>>>0<10)&((Ub|0)==(Vb|0)&(Wb|0)==(Xb|0))?j>>>0>30|(Ta>>>j|0)==0:0){Ob=+(s|0)*+(Ta>>>0);break}Ta=(i|0)/-2|0;x=((Ta|0)<0)<<31>>31;if((Wb|0)>(x|0)|(Wb|0)==(x|0)&Ub>>>0>Ta>>>0){c[(Rm()|0)>>2]=34;Ob=+(s|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}Ta=i+-106|0;x=((Ta|0)<0)<<31>>31;if((Wb|0)<(x|0)|(Wb|0)==(x|0)&Ub>>>0<Ta>>>0){c[(Rm()|0)>>2]=34;Ob=+(s|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(!Rb)Yb=Sb;else{if((Rb|0)<9){Ta=h+(Sb<<2)|0;x=Rb;pa=c[Ta>>2]|0;do{pa=pa*10|0;x=x+1|0}while((x|0)!=9);c[Ta>>2]=pa}Yb=Sb+1|0}if((Tb|0)<9?(Tb|0)<=(Ub|0)&(Ub|0)<18:0){if((Ub|0)==9){Ob=+(s|0)*+((c[h>>2]|0)>>>0);break}if((Ub|0)<9){Ob=+(s|0)*+((c[h>>2]|0)>>>0)/+(c[14016+(8-Ub<<2)>>2]|0);break}x=j+27+(T(Ub,-3)|0)|0;Sa=c[h>>2]|0;if((x|0)>30|(Sa>>>x|0)==0){Ob=+(s|0)*+(Sa>>>0)*+(c[14016+(Ub+-10<<2)>>2]|0);break}}Sa=(Ub|0)%9|0;if(!Sa){Zb=0;_b=Yb;$b=0;ac=Ub}else{x=(Ub|0)>-1?Sa:Sa+9|0;Sa=c[14016+(8-x<<2)>>2]|0;if(Yb){Za=1e9/(Sa|0)|0;Ya=0;Va=0;Ua=Ub;wa=0;do{xa=h+(wa<<2)|0;za=c[xa>>2]|0;q=((za>>>0)/(Sa>>>0)|0)+Ya|0;c[xa>>2]=q;Ya=T((za>>>0)%(Sa>>>0)|0,Za)|0;za=(wa|0)==(Va|0)&(q|0)==0;Ua=za?Ua+-9|0:Ua;Va=za?Va+1&127:Va;wa=wa+1|0}while((wa|0)!=(Yb|0));if(!Ya){bc=Va;cc=Yb;dc=Ua}else{c[h+(Yb<<2)>>2]=Ya;bc=Va;cc=Yb+1|0;dc=Ua}}else{bc=0;cc=0;dc=Ub}Zb=0;_b=cc;$b=bc;ac=9-x+dc|0}i:while(1){wa=(ac|0)<18;Za=(ac|0)==18;Sa=h+($b<<2)|0;pa=Zb;Ta=_b;while(1){if(!wa){if(!Za){ec=pa;fc=$b;gc=ac;hc=Ta;break i}if((c[Sa>>2]|0)>>>0>=9007199){ec=pa;fc=$b;gc=18;hc=Ta;break i}}za=0;ic=Ta;q=Ta+127|0;while(1){xa=q&127;Ra=h+(xa<<2)|0;Xa=qB(c[Ra>>2]|0,0,29)|0;Wa=gB(Xa|0,E|0,za|0,0)|0;Xa=E;if(Xa>>>0>0|(Xa|0)==0&Wa>>>0>1e9){va=mB(Wa|0,Xa|0,1e9,0)|0;B=sB(Wa|0,Xa|0,1e9,0)|0;jc=va;kc=B}else{jc=0;kc=Wa}c[Ra>>2]=kc;Ra=(xa|0)==($b|0);ic=(xa|0)!=(ic+127&127|0)|Ra?ic:(kc|0)==0?xa:ic;if(Ra)break;else{za=jc;q=xa+-1|0}}pa=pa+-29|0;if(jc|0)break;else Ta=ic}Ta=$b+127&127;Sa=ic+127&127;Za=h+((ic+126&127)<<2)|0;if((Ta|0)==(ic|0)){c[Za>>2]=c[Za>>2]|c[h+(Sa<<2)>>2];lc=Sa}else lc=ic;c[h+(Ta<<2)>>2]=jc;Zb=pa;_b=lc;$b=Ta;ac=ac+9|0}j:while(1){x=hc+1&127;Ua=h+((hc+127&127)<<2)|0;Va=ec;Ya=fc;Ta=gc;while(1){Sa=(Ta|0)==18;Za=(Ta|0)>27?9:1;mc=Va;nc=Ya;while(1){wa=0;while(1){q=wa+nc&127;if((q|0)==(hc|0)){oc=2;k=220;break}za=c[h+(q<<2)>>2]|0;q=c[14048+(wa<<2)>>2]|0;if(za>>>0<q>>>0){oc=2;k=220;break}if(za>>>0>q>>>0)break;q=wa+1|0;if((q|0)<2)wa=q;else{oc=q;k=220;break}}if((k|0)==220?(k=0,Sa&(oc|0)==2):0){pc=0.0;qc=0;rc=hc;break j}sc=mc+Za|0;if((nc|0)==(hc|0)){mc=sc;nc=hc}else break}Sa=(1<<Za)+-1|0;wa=1e9>>>Za;tc=0;uc=nc;vc=Ta;q=nc;do{za=h+(q<<2)|0;xa=c[za>>2]|0;Ra=(xa>>>Za)+tc|0;c[za>>2]=Ra;tc=T(xa&Sa,wa)|0;xa=(q|0)==(uc|0)&(Ra|0)==0;vc=xa?vc+-9|0:vc;uc=xa?uc+1&127:uc;q=q+1&127}while((q|0)!=(hc|0));if(!tc){Va=sc;Ya=uc;Ta=vc;continue}if((x|0)!=(uc|0))break;c[Ua>>2]=c[Ua>>2]|1;Va=sc;Ya=uc;Ta=vc}c[h+(hc<<2)>>2]=tc;ec=sc;fc=uc;gc=vc;hc=x}while(1){Ta=qc+nc&127;Ya=rc+1&127;if((Ta|0)==(rc|0)){c[h+(Ya+-1<<2)>>2]=0;wc=Ya}else wc=rc;pc=pc*1.0e9+ +((c[h+(Ta<<2)>>2]|0)>>>0);qc=qc+1|0;if((qc|0)==2)break;else rc=wc}ka=+(s|0);ya=ka*pc;Ta=mc+53|0;Ya=Ta-i|0;Va=(Ya|0)<(j|0);Ua=Va&1;pa=Va?((Ya|0)<0?0:Ya):j;if((pa|0)<53){xc=+gn(+Ym(1.0,105-pa|0),ya);yc=+dn(ya,+Ym(1.0,53-pa|0));zc=xc;Ac=yc;Bc=xc+(ya-yc)}else{zc=0.0;Ac=0.0;Bc=ya}q=nc+2&127;do if((q|0)!=(wc|0)){wa=c[h+(q<<2)>>2]|0;do if(wa>>>0>=5e8){if((wa|0)!=5e8){Cc=ka*.75+Ac;break}if((nc+3&127|0)==(wc|0)){Cc=ka*.5+Ac;break}else{Cc=ka*.75+Ac;break}}else{if((wa|0)==0?(nc+3&127|0)==(wc|0):0){Cc=Ac;break}Cc=ka*.25+Ac}while(0);if((53-pa|0)>1){if(+dn(Cc,1.0)!=0.0){Dc=Cc;break}Dc=Cc+1.0}else Dc=Cc}else Dc=Ac;while(0);ka=Bc+Dc-zc;do if((Ta&2147483647|0)>(-2-qa|0)){if(!(+G(+ka)>=9007199254740992.0)){Ec=ka;Fc=Ua;Gc=mc}else{Ec=ka*.5;Fc=Va&(pa|0)==(Ya|0)?0:Ua;Gc=mc+1|0}if((Gc+50|0)<=(ua|0)?!(Dc!=0.0&(Fc|0)!=0):0){Hc=Ec;Ic=Gc;break}c[(Rm()|0)>>2]=34;Hc=Ec;Ic=Gc}else{Hc=ka;Ic=mc}while(0);Ob=+bn(Hc,Ic)}while(0);m=Ob;break a;break}default:{if(c[n>>2]|0)c[e>>2]=(c[e>>2]|0)+-1;c[(Rm()|0)>>2]=22;Fn(b,0);m=0.0;break a}}}}while(0);if((k|0)==23){ua=(c[n>>2]|0)==0;if(!ua)c[e>>2]=(c[e>>2]|0)+-1;if((f|0)!=0&v>>>0>3){qa=v;do{if(!ua)c[e>>2]=(c[e>>2]|0)+-1;qa=qa+-1|0}while(qa>>>0>3)}}m=+(s|0)*u}while(0);l=g;return +m} function Bs(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;zs(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;uz(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=w;w=c[d>>2]|0;a:while(1){if(w){z=c[w+12>>2]|0;if((z|0)==(c[w+16>>2]|0))A=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else A=c[z>>2]|0;if((A|0)==-1){c[d>>2]=0;B=0;C=1}else{B=w;C=0}}else{B=0;C=1}z=c[e>>2]|0;do if(z){D=c[z+12>>2]|0;if((D|0)==(c[z+16>>2]|0))E=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else E=c[D>>2]|0;if((E|0)!=-1)if(C){F=z;break}else{G=y;H=z;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=y;H=0;break}else F=0}z=a[f>>0]|0;D=z<<24>>24<0?c[x>>2]|0:z&255;if((c[p>>2]|0)==(y+D|0)){uz(o,D<<1,0);if((a[f>>0]|0)<0)J=(c[v>>2]&2147483647)+-1|0;else J=10;uz(o,J,0);z=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=z+D;K=z}else K=y;z=B+12|0;D=c[z>>2]|0;L=B+16|0;if((D|0)==(c[L>>2]|0))M=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else M=c[D>>2]|0;if(As(M,t,u,K,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){G=K;H=F;break}D=c[z>>2]|0;if((D|0)==(c[L>>2]|0)){tb[c[(c[B>>2]|0)+40>>2]&127](B)|0;y=K;w=B;continue}else{c[z>>2]=D+4;y=K;w=B;continue}}w=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((w<<24>>24<0?c[n+4>>2]|0:w&255)|0)==0)?(w=c[r>>2]|0,(w-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=w+4;c[w>>2]=t}h[i>>3]=+Ur(G,c[p>>2]|0,g);Sr(n,q,c[r>>2]|0,g);if(B){r=c[B+12>>2]|0;if((r|0)==(c[B+16>>2]|0))N=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else N=c[r>>2]|0;if((N|0)==-1){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=tb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=c[N>>2]|0;if((P|0)!=-1)if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(o);oz(n);l=b;return g|0}function Cs(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;zs(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;uz(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=w;w=c[d>>2]|0;a:while(1){if(w){z=c[w+12>>2]|0;if((z|0)==(c[w+16>>2]|0))A=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else A=c[z>>2]|0;if((A|0)==-1){c[d>>2]=0;B=0;C=1}else{B=w;C=0}}else{B=0;C=1}z=c[e>>2]|0;do if(z){D=c[z+12>>2]|0;if((D|0)==(c[z+16>>2]|0))E=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else E=c[D>>2]|0;if((E|0)!=-1)if(C){F=z;break}else{G=y;H=z;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=y;H=0;break}else F=0}z=a[f>>0]|0;D=z<<24>>24<0?c[x>>2]|0:z&255;if((c[p>>2]|0)==(y+D|0)){uz(o,D<<1,0);if((a[f>>0]|0)<0)J=(c[v>>2]&2147483647)+-1|0;else J=10;uz(o,J,0);z=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=z+D;K=z}else K=y;z=B+12|0;D=c[z>>2]|0;L=B+16|0;if((D|0)==(c[L>>2]|0))M=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else M=c[D>>2]|0;if(As(M,t,u,K,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){G=K;H=F;break}D=c[z>>2]|0;if((D|0)==(c[L>>2]|0)){tb[c[(c[B>>2]|0)+40>>2]&127](B)|0;y=K;w=B;continue}else{c[z>>2]=D+4;y=K;w=B;continue}}w=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((w<<24>>24<0?c[n+4>>2]|0:w&255)|0)==0)?(w=c[r>>2]|0,(w-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=w+4;c[w>>2]=t}g[i>>2]=+Wr(G,c[p>>2]|0,h);Sr(n,q,c[r>>2]|0,h);if(B){r=c[B+12>>2]|0;if((r|0)==(c[B+16>>2]|0))N=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else N=c[r>>2]|0;if((N|0)==-1){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=tb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=c[N>>2]|0;if((P|0)!=-1)if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;oz(o);oz(n);l=b;return h|0}function Ds(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=Yr(f)|0;Es(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;uz(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=t;t=c[d>>2]|0;a:while(1){if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=t;z=0}}else{y=0;z=1}w=c[e>>2]|0;do if(w){A=c[w+12>>2]|0;if((A|0)==(c[w+16>>2]|0))B=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=c[A>>2]|0;if((B|0)!=-1)if(z){C=w;break}else{D=v;F=w;break a}else{c[e>>2]=0;G=19;break}}else G=19;while(0);if((G|0)==19){G=0;if(z){D=v;F=0;break}else C=0}w=a[f>>0]|0;A=w<<24>>24<0?c[u>>2]|0:w&255;if((c[n>>2]|0)==(v+A|0)){uz(m,A<<1,0);if((a[f>>0]|0)<0)H=(c[s>>2]&2147483647)+-1|0;else H=10;uz(m,H,0);w=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=w+A;I=w}else I=v;w=y+12|0;A=c[w>>2]|0;J=y+16|0;if((A|0)==(c[J>>2]|0))K=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=c[A>>2]|0;if(xs(K,r,I,n,q,c[j>>2]|0,k,o,p,i)|0){D=I;F=C;break}A=c[w>>2]|0;if((A|0)==(c[J>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=I;t=y;continue}else{c[w>>2]=A+4;v=I;t=y;continue}}t=a[k+11>>0]|0;if((t<<24>>24<0?c[k+4>>2]|0:t&255)|0?(t=c[p>>2]|0,(t-o|0)<160):0){I=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=I}I=_r(D,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=I;c[r+4>>2]=E;Sr(k,o,c[p>>2]|0,g);if(y){p=c[y+12>>2]|0;if((p|0)==(c[y+16>>2]|0))L=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else L=c[p>>2]|0;if((L|0)==-1){c[d>>2]=0;M=1}else M=0}else M=1;do if(F){L=c[F+12>>2]|0;if((L|0)==(c[F+16>>2]|0))N=tb[c[(c[F>>2]|0)+36>>2]&127](F)|0;else N=c[L>>2]|0;if((N|0)!=-1)if(M)break;else{G=49;break}else{c[e>>2]=0;G=47;break}}else G=47;while(0);if((G|0)==47?M:0)G=49;if((G|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function Es(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=iq(b)|0;c[g>>2]=h;b=Hr(g,43836)|0;zb[c[(c[b>>2]|0)+48>>2]&15](b,37900,37926,d)|0;d=Hr(g,43844)|0;c[e>>2]=tb[c[(c[d>>2]|0)+16>>2]&127](d)|0;rb[c[(c[d>>2]|0)+20>>2]&127](a,d);Wy(h)|0;l=f;return}function Fs(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,m=0,n=0,o=0,p=0,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;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=Yr(f)|0;Es(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;uz(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=t;t=c[d>>2]|0;a:while(1){if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=t;z=0}}else{y=0;z=1}w=c[e>>2]|0;do if(w){A=c[w+12>>2]|0;if((A|0)==(c[w+16>>2]|0))B=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=c[A>>2]|0;if((B|0)!=-1)if(z){C=w;break}else{D=v;E=w;break a}else{c[e>>2]=0;F=19;break}}else F=19;while(0);if((F|0)==19){F=0;if(z){D=v;E=0;break}else C=0}w=a[f>>0]|0;A=w<<24>>24<0?c[u>>2]|0:w&255;if((c[n>>2]|0)==(v+A|0)){uz(m,A<<1,0);if((a[f>>0]|0)<0)G=(c[s>>2]&2147483647)+-1|0;else G=10;uz(m,G,0);w=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=w+A;H=w}else H=v;w=y+12|0;A=c[w>>2]|0;I=y+16|0;if((A|0)==(c[I>>2]|0))J=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=c[A>>2]|0;if(xs(J,r,H,n,q,c[j>>2]|0,k,o,p,i)|0){D=H;E=C;break}A=c[w>>2]|0;if((A|0)==(c[I>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=H;t=y;continue}else{c[w>>2]=A+4;v=H;t=y;continue}}t=a[k+11>>0]|0;if((t<<24>>24<0?c[k+4>>2]|0:t&255)|0?(t=c[p>>2]|0,(t-o|0)<160):0){H=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=H}c[h>>2]=as(D,c[n>>2]|0,g,r)|0;Sr(k,o,c[p>>2]|0,g);if(y){p=c[y+12>>2]|0;if((p|0)==(c[y+16>>2]|0))K=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=c[p>>2]|0;if((K|0)==-1){c[d>>2]=0;L=1}else L=0}else L=1;do if(E){K=c[E+12>>2]|0;if((K|0)==(c[E+16>>2]|0))M=tb[c[(c[E>>2]|0)+36>>2]&127](E)|0;else M=c[K>>2]|0;if((M|0)!=-1)if(L)break;else{F=49;break}else{c[e>>2]=0;F=47;break}}else F=47;while(0);if((F|0)==47?L:0)F=49;if((F|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function Gs(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,m=0,n=0,o=0,p=0,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;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=Yr(f)|0;Es(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;uz(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=t;t=c[d>>2]|0;a:while(1){if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=t;z=0}}else{y=0;z=1}w=c[e>>2]|0;do if(w){A=c[w+12>>2]|0;if((A|0)==(c[w+16>>2]|0))B=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=c[A>>2]|0;if((B|0)!=-1)if(z){C=w;break}else{D=v;E=w;break a}else{c[e>>2]=0;F=19;break}}else F=19;while(0);if((F|0)==19){F=0;if(z){D=v;E=0;break}else C=0}w=a[f>>0]|0;A=w<<24>>24<0?c[u>>2]|0:w&255;if((c[n>>2]|0)==(v+A|0)){uz(m,A<<1,0);if((a[f>>0]|0)<0)G=(c[s>>2]&2147483647)+-1|0;else G=10;uz(m,G,0);w=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=w+A;H=w}else H=v;w=y+12|0;A=c[w>>2]|0;I=y+16|0;if((A|0)==(c[I>>2]|0))J=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=c[A>>2]|0;if(xs(J,r,H,n,q,c[j>>2]|0,k,o,p,i)|0){D=H;E=C;break}A=c[w>>2]|0;if((A|0)==(c[I>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=H;t=y;continue}else{c[w>>2]=A+4;v=H;t=y;continue}}t=a[k+11>>0]|0;if((t<<24>>24<0?c[k+4>>2]|0:t&255)|0?(t=c[p>>2]|0,(t-o|0)<160):0){H=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=H}c[h>>2]=cs(D,c[n>>2]|0,g,r)|0;Sr(k,o,c[p>>2]|0,g);if(y){p=c[y+12>>2]|0;if((p|0)==(c[y+16>>2]|0))K=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=c[p>>2]|0;if((K|0)==-1){c[d>>2]=0;L=1}else L=0}else L=1;do if(E){K=c[E+12>>2]|0;if((K|0)==(c[E+16>>2]|0))M=tb[c[(c[E>>2]|0)+36>>2]&127](E)|0;else M=c[K>>2]|0;if((M|0)!=-1)if(L)break;else{F=49;break}else{c[e>>2]=0;F=47;break}}else F=47;while(0);if((F|0)==47?L:0)F=49;if((F|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function Hs(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;d=l;l=l+304|0;j=d+200|0;k=d+196|0;m=d+184|0;n=d+172|0;o=d+168|0;p=d+8|0;q=d+4|0;r=d;s=Yr(g)|0;Es(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u){x=c[u+12>>2]|0;if((x|0)==(c[u+16>>2]|0))y=tb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else y=c[x>>2]|0;if((y|0)==-1){c[e>>2]=0;z=0;A=1}else{z=u;A=0}}else{z=0;A=1}x=c[f>>2]|0;do if(x){B=c[x+12>>2]|0;if((B|0)==(c[x+16>>2]|0))C=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else C=c[B>>2]|0;if((C|0)!=-1)if(A){D=x;break}else{E=w;F=x;break a}else{c[f>>2]=0;G=19;break}}else G=19;while(0);if((G|0)==19){G=0;if(A){E=w;F=0;break}else D=0}x=a[g>>0]|0;B=x<<24>>24<0?c[v>>2]|0:x&255;if((c[o>>2]|0)==(w+B|0)){uz(n,B<<1,0);if((a[g>>0]|0)<0)H=(c[t>>2]&2147483647)+-1|0;else H=10;uz(n,H,0);x=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=x+B;I=x}else I=w;x=z+12|0;B=c[x>>2]|0;J=z+16|0;if((B|0)==(c[J>>2]|0))K=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else K=c[B>>2]|0;if(xs(K,s,I,o,r,c[k>>2]|0,m,p,q,j)|0){E=I;F=D;break}B=c[x>>2]|0;if((B|0)==(c[J>>2]|0)){tb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=I;u=z;continue}else{c[x>>2]=B+4;w=I;u=z;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){I=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=I}b[i>>1]=es(E,c[o>>2]|0,h,s)|0;Sr(m,p,c[q>>2]|0,h);if(z){q=c[z+12>>2]|0;if((q|0)==(c[z+16>>2]|0))L=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=c[q>>2]|0;if((L|0)==-1){c[e>>2]=0;M=1}else M=0}else M=1;do if(F){L=c[F+12>>2]|0;if((L|0)==(c[F+16>>2]|0))N=tb[c[(c[F>>2]|0)+36>>2]&127](F)|0;else N=c[L>>2]|0;if((N|0)!=-1)if(M)break;else{G=49;break}else{c[f>>2]=0;G=47;break}}else G=47;while(0);if((G|0)==47?M:0)G=49;if((G|0)==49)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=d;return h|0}function Is(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=Yr(f)|0;Es(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;uz(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=t;t=c[d>>2]|0;a:while(1){if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=t;z=0}}else{y=0;z=1}w=c[e>>2]|0;do if(w){A=c[w+12>>2]|0;if((A|0)==(c[w+16>>2]|0))B=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=c[A>>2]|0;if((B|0)!=-1)if(z){C=w;break}else{D=v;F=w;break a}else{c[e>>2]=0;G=19;break}}else G=19;while(0);if((G|0)==19){G=0;if(z){D=v;F=0;break}else C=0}w=a[f>>0]|0;A=w<<24>>24<0?c[u>>2]|0:w&255;if((c[n>>2]|0)==(v+A|0)){uz(m,A<<1,0);if((a[f>>0]|0)<0)H=(c[s>>2]&2147483647)+-1|0;else H=10;uz(m,H,0);w=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=w+A;I=w}else I=v;w=y+12|0;A=c[w>>2]|0;J=y+16|0;if((A|0)==(c[J>>2]|0))K=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=c[A>>2]|0;if(xs(K,r,I,n,q,c[j>>2]|0,k,o,p,i)|0){D=I;F=C;break}A=c[w>>2]|0;if((A|0)==(c[J>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=I;t=y;continue}else{c[w>>2]=A+4;v=I;t=y;continue}}t=a[k+11>>0]|0;if((t<<24>>24<0?c[k+4>>2]|0:t&255)|0?(t=c[p>>2]|0,(t-o|0)<160):0){I=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=I}I=gs(D,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=I;c[r+4>>2]=E;Sr(k,o,c[p>>2]|0,g);if(y){p=c[y+12>>2]|0;if((p|0)==(c[y+16>>2]|0))L=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else L=c[p>>2]|0;if((L|0)==-1){c[d>>2]=0;M=1}else M=0}else M=1;do if(F){L=c[F+12>>2]|0;if((L|0)==(c[F+16>>2]|0))N=tb[c[(c[F>>2]|0)+36>>2]&127](F)|0;else N=c[L>>2]|0;if((N|0)!=-1)if(M)break;else{G=49;break}else{c[e>>2]=0;G=47;break}}else G=47;while(0);if((G|0)==47?M:0)G=49;if((G|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function Js(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,m=0,n=0,o=0,p=0,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;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=Yr(f)|0;Es(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;uz(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=t;t=c[d>>2]|0;a:while(1){if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=t;z=0}}else{y=0;z=1}w=c[e>>2]|0;do if(w){A=c[w+12>>2]|0;if((A|0)==(c[w+16>>2]|0))B=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=c[A>>2]|0;if((B|0)!=-1)if(z){C=w;break}else{D=v;E=w;break a}else{c[e>>2]=0;F=19;break}}else F=19;while(0);if((F|0)==19){F=0;if(z){D=v;E=0;break}else C=0}w=a[f>>0]|0;A=w<<24>>24<0?c[u>>2]|0:w&255;if((c[n>>2]|0)==(v+A|0)){uz(m,A<<1,0);if((a[f>>0]|0)<0)G=(c[s>>2]&2147483647)+-1|0;else G=10;uz(m,G,0);w=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=w+A;H=w}else H=v;w=y+12|0;A=c[w>>2]|0;I=y+16|0;if((A|0)==(c[I>>2]|0))J=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=c[A>>2]|0;if(xs(J,r,H,n,q,c[j>>2]|0,k,o,p,i)|0){D=H;E=C;break}A=c[w>>2]|0;if((A|0)==(c[I>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=H;t=y;continue}else{c[w>>2]=A+4;v=H;t=y;continue}}t=a[k+11>>0]|0;if((t<<24>>24<0?c[k+4>>2]|0:t&255)|0?(t=c[p>>2]|0,(t-o|0)<160):0){H=c[q>>2]|0;c[p>>2]=t+4;c[t>>2]=H}c[h>>2]=is(D,c[n>>2]|0,g,r)|0;Sr(k,o,c[p>>2]|0,g);if(y){p=c[y+12>>2]|0;if((p|0)==(c[y+16>>2]|0))K=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=c[p>>2]|0;if((K|0)==-1){c[d>>2]=0;L=1}else L=0}else L=1;do if(E){K=c[E+12>>2]|0;if((K|0)==(c[E+16>>2]|0))M=tb[c[(c[E>>2]|0)+36>>2]&127](E)|0;else M=c[K>>2]|0;if((M|0)!=-1)if(L)break;else{F=49;break}else{c[e>>2]=0;F=47;break}}else F=47;while(0);if((F|0)==47?L:0)F=49;if((F|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function Ks(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,m=0,n=0,o=0,p=0,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;j=l;l=l+112|0;k=j;m=(f-e|0)/12|0;if(m>>>0>100){n=Vo(m)|0;if(!n){o=0;p=0}else{o=n;p=n}}else{o=k;p=0}k=0;n=m;m=e;q=o;while(1){if((m|0)==(f|0))break;r=a[m+8+3>>0]|0;if(r<<24>>24<0)s=c[m+4>>2]|0;else s=r&255;if(!s){a[q>>0]=2;t=k+1|0;u=n+-1|0}else{a[q>>0]=1;t=k;u=n}k=t;n=u;m=m+12|0;q=q+1|0}q=0;m=k;k=n;a:while(1){n=c[b>>2]|0;do if(n){u=c[n+12>>2]|0;if((u|0)==(c[n+16>>2]|0))v=tb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else v=c[u>>2]|0;if((v|0)==-1){c[b>>2]=0;w=1;break}else{w=(c[b>>2]|0)==0;break}}else w=1;while(0);n=c[d>>2]|0;if(n){u=c[n+12>>2]|0;if((u|0)==(c[n+16>>2]|0))x=tb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else x=c[u>>2]|0;if((x|0)==-1){c[d>>2]=0;y=0;z=1}else{y=n;z=0}}else{y=0;z=1}A=c[b>>2]|0;if(!((k|0)!=0&(w^z)))break;n=c[A+12>>2]|0;if((n|0)==(c[A+16>>2]|0))B=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else B=c[n>>2]|0;if(i)C=B;else C=Bb[c[(c[g>>2]|0)+28>>2]&63](g,B)|0;n=q+1|0;u=e;t=0;s=o;r=m;D=k;while(1){if((u|0)==(f|0))break;do if((a[s>>0]|0)==1){E=u+8+3|0;if((a[E>>0]|0)<0)F=c[u>>2]|0;else F=u;G=c[F+(q<<2)>>2]|0;if(i)H=G;else H=Bb[c[(c[g>>2]|0)+28>>2]&63](g,G)|0;if((C|0)!=(H|0)){a[s>>0]=0;I=t;J=r;K=D+-1|0;break}G=a[E>>0]|0;if(G<<24>>24<0)L=c[u+4>>2]|0;else L=G&255;if((L|0)==(n|0)){a[s>>0]=2;I=1;J=r+1|0;K=D+-1|0}else{I=1;J=r;K=D}}else{I=t;J=r;K=D}while(0);u=u+12|0;t=I;s=s+1|0;r=J;D=K}if(!t){q=n;m=r;k=D;continue}s=c[b>>2]|0;u=s+12|0;G=c[u>>2]|0;if((G|0)==(c[s+16>>2]|0))tb[c[(c[s>>2]|0)+40>>2]&127](s)|0;else c[u>>2]=G+4;if((r+D|0)>>>0>1){M=e;N=o;O=r}else{q=n;m=r;k=D;continue}while(1){if((M|0)==(f|0)){q=n;m=O;k=D;continue a}if((a[N>>0]|0)==2){G=a[M+8+3>>0]|0;if(G<<24>>24<0)P=c[M+4>>2]|0;else P=G&255;if((P|0)!=(n|0)){a[N>>0]=0;Q=O+-1|0}else Q=O}else Q=O;M=M+12|0;N=N+1|0;O=Q}}do if(A){Q=c[A+12>>2]|0;if((Q|0)==(c[A+16>>2]|0))R=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else R=c[Q>>2]|0;if((R|0)==-1){c[b>>2]=0;S=1;break}else{S=(c[b>>2]|0)==0;break}}else S=1;while(0);do if(y){b=c[y+12>>2]|0;if((b|0)==(c[y+16>>2]|0))T=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else T=c[b>>2]|0;if((T|0)!=-1)if(S){U=e;V=o;break}else{W=77;break}else{c[d>>2]=0;W=41;break}}else W=41;while(0);if((W|0)==41)if(S)W=77;else{U=e;V=o}if((W|0)==77){c[h>>2]=c[h>>2]|2;U=e;V=o}while(1){if((U|0)==(f|0)){W=81;break}if((a[V>>0]|0)==2){X=U;break}U=U+12|0;V=V+1|0}if((W|0)==81){c[h>>2]=c[h>>2]|4;X=f}Wo(p);l=j;return X|0}function Ls(a){a=a|0;return}function Ms(a){a=a|0;bz(a);return}function Ns(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,m=0,n=0,o=0,p=0,q=0,r=0;h=l;l=l+16|0;i=h+4|0;j=h;if(!(c[e+4>>2]&1)){k=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];m=Db[k&31](b,i,e,f,g&1)|0}else{f=iq(e)|0;c[i>>2]=f;e=Hr(i,43820)|0;Wy(f)|0;f=c[e>>2]|0;if(g)rb[c[f+24>>2]&127](i,e);else rb[c[f+28>>2]&127](i,e);e=i+11|0;f=a[e>>0]|0;if(f<<24>>24<0){n=f;o=c[i>>2]|0;p=8}else{q=i;r=f}while(1){if((p|0)==8){p=0;q=o;r=n}f=r<<24>>24<0;if((q|0)==((f?c[i>>2]|0:i)+(f?c[i+4>>2]|0:r&255)|0))break;f=a[q>>0]|0;g=c[d>>2]|0;do if(g|0){b=g+24|0;k=c[b>>2]|0;if((k|0)!=(c[g+28>>2]|0)){c[b>>2]=k+1;a[k>>0]=f;break}if((Bb[c[(c[g>>2]|0)+52>>2]&63](g,f&255)|0)==-1)c[d>>2]=0}while(0);n=a[e>>0]|0;o=q+1|0;p=8}p=c[d>>2]|0;oz(i);m=p}l=h;return m|0}function Os(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,m=0,n=0,o=0,p=0;b=l;l=l+64|0;h=b;i=b+52|0;j=b+39|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[38154]|0;a[i+1>>0]=a[38155]|0;a[i+2>>0]=a[38156]|0;a[i+3>>0]=a[38157]|0;a[i+4>>0]=a[38158]|0;a[i+5>>0]=a[38159]|0;_s(i+1|0,38160,1,c[e+4>>2]|0);p=Jr()|0;c[h>>2]=g;g=j+(Vs(j,13,p,i,h)|0)|0;i=Ws(j,g,e)|0;c[h>>2]=iq(e)|0;$s(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=qe(h,k,d,m,e,f)|0;l=b;return o|0}function Ps(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,m=0,n=0,o=0,p=0,q=0;a=l;l=l+96|0;h=a+8|0;i=a;j=a+71|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;_s(i+1|0,38151,1,c[d+4>>2]|0);p=Jr()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(Vs(j,23,p,i,h)|0)|0;i=Ws(j,g,d)|0;c[h>>2]=iq(d)|0;$s(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=qe(h,k,b,m,d,e)|0;l=a;return o|0}function Qs(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,m=0,n=0,o=0,p=0;b=l;l=l+64|0;h=b;i=b+52|0;j=b+40|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[38154]|0;a[i+1>>0]=a[38155]|0;a[i+2>>0]=a[38156]|0;a[i+3>>0]=a[38157]|0;a[i+4>>0]=a[38158]|0;a[i+5>>0]=a[38159]|0;_s(i+1|0,38160,0,c[e+4>>2]|0);p=Jr()|0;c[h>>2]=g;g=j+(Vs(j,12,p,i,h)|0)|0;i=Ws(j,g,e)|0;c[h>>2]=iq(e)|0;$s(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=qe(h,k,d,m,e,f)|0;l=b;return o|0}function Rs(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,m=0,n=0,o=0,p=0,q=0;a=l;l=l+96|0;h=a+8|0;i=a;j=a+71|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;_s(i+1|0,38151,0,c[d+4>>2]|0);p=Jr()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(Vs(j,23,p,i,h)|0)|0;i=Ws(j,g,d)|0;c[h>>2]=iq(d)|0;$s(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=qe(h,k,b,m,d,e)|0;l=a;return o|0}function Ss(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;a=l;l=l+176|0;g=a+72|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+134|0;p=a+68|0;q=a+76|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=Xs(n+1|0,47807,c[d+4>>2]|0)|0;c[p>>2]=o;v=Jr()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=Vs(o,30,v,n,m)|0}else{h[k>>3]=f;w=Vs(o,30,v,n,k)|0}if((w|0)>29){k=Jr()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=Ys(p,k,n,j)|0}else{h[i>>3]=f;x=Ys(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=Ws(A,w,d)|0;if((A|0)!=(o|0)){x=Vo(y<<1)|0;if(!x){B=0;C=0;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}c[g>>2]=iq(d)|0;Zs(D,i,w,B,r,s,g);Wy(c[g>>2]|0)|0;c[t>>2]=c[b>>2];b=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=qe(g,B,b,r,d,e)|0;Wo(C);Wo(z);l=a;return t|0}function Ts(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;a=l;l=l+176|0;g=a+72|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+134|0;p=a+68|0;q=a+76|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=Xs(n+1|0,38149,c[d+4>>2]|0)|0;c[p>>2]=o;v=Jr()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=Vs(o,30,v,n,m)|0}else{h[k>>3]=f;w=Vs(o,30,v,n,k)|0}if((w|0)>29){k=Jr()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=Ys(p,k,n,j)|0}else{h[i>>3]=f;x=Ys(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=Ws(A,w,d)|0;if((A|0)!=(o|0)){x=Vo(y<<1)|0;if(!x){B=0;C=0;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}c[g>>2]=iq(d)|0;Zs(D,i,w,B,r,s,g);Wy(c[g>>2]|0)|0;c[t>>2]=c[b>>2];b=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=qe(g,B,b,r,d,e)|0;Wo(C);Wo(z);l=a;return t|0}function Us(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,m=0,n=0,o=0,p=0;b=l;l=l+80|0;h=b;i=b+68|0;j=b+48|0;k=b+8|0;m=b+4|0;a[i>>0]=a[38143]|0;a[i+1>>0]=a[38144]|0;a[i+2>>0]=a[38145]|0;a[i+3>>0]=a[38146]|0;a[i+4>>0]=a[38147]|0;a[i+5>>0]=a[38148]|0;n=Jr()|0;c[h>>2]=g;g=Vs(j,20,n,i,h)|0;i=j+g|0;n=Ws(j,i,e)|0;o=iq(e)|0;c[h>>2]=o;p=Hr(h,43804)|0;Wy(o)|0;zb[c[(c[p>>2]|0)+32>>2]&15](p,j,i,k)|0;p=k+g|0;c[m>>2]=c[d>>2];c[h>>2]=c[m>>2];m=qe(h,k,(n|0)==(i|0)?p:k+(n-j)|0,p,e,f)|0;l=b;return m|0}function Vs(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+16|0;h=g;c[h>>2]=f;f=Ao(d)|0;d=pn(a,b,e,h)|0;if(f|0)Ao(f)|0;l=g;return d|0}function Ws(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do switch((c[e+4>>2]&176)<<24>>24){case 16:{f=a[b>>0]|0;switch(f<<24>>24){case 43:case 45:{g=b+1|0;break a;break}default:{}}if((d-b|0)>1&f<<24>>24==48){switch(a[b+1>>0]|0){case 88:case 120:break;default:{h=7;break a}}g=b+2|0}else h=7;break}case 32:{g=d;break}default:h=7}while(0);if((h|0)==7)g=b;return g|0}function Xs(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(!(d&2048))e=b;else{a[b>>0]=43;e=b+1|0}if(!(d&1024))f=e;else{a[e>>0]=35;f=e+1|0}e=d&260;b=d>>>14;d=(e|0)==260;if(d){g=0;h=f}else{a[f>>0]=46;a[f+1>>0]=42;g=1;h=f+2|0}f=c;c=h;while(1){h=a[f>>0]|0;if(!(h<<24>>24))break;a[c>>0]=h;f=f+1|0;c=c+1|0}a:do switch(e&511){case 4:{if(!(b&1)){a[c>>0]=102;break a}else{a[c>>0]=70;break a}break}case 256:{if(!(b&1)){a[c>>0]=101;break a}else{a[c>>0]=69;break a}break}default:{f=(b&1|0)!=0;if(d)if(f){a[c>>0]=65;break a}else{a[c>>0]=97;break a}else if(f){a[c>>0]=71;break a}else{a[c>>0]=103;break a}}}while(0);return g|0}function Ys(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;g=f;c[g>>2]=e;e=Ao(b)|0;b=Oo(a,d,g)|0;if(e|0)Ao(e)|0;l=f;return b|0}function Zs(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,m=0,n=0,o=0,p=0,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;j=l;l=l+16|0;k=j;m=Hr(i,43804)|0;n=Hr(i,43820)|0;rb[c[(c[n>>2]|0)+20>>2]&127](k,n);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{o=Bb[c[(c[m>>2]|0)+28>>2]&63](m,i)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=o;p=b+1|0;break}default:p=b}o=e;a:do if((o-p|0)>1?(a[p>>0]|0)==48:0){i=p+1|0;switch(a[i>>0]|0){case 88:case 120:break;default:{q=p;r=10;break a}}s=Bb[c[(c[m>>2]|0)+28>>2]&63](m,48)|0;t=c[h>>2]|0;c[h>>2]=t+1;a[t>>0]=s;s=p+2|0;t=Bb[c[(c[m>>2]|0)+28>>2]&63](m,a[i>>0]|0)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=t;t=s;while(1){if(t>>>0>=e>>>0){u=s;v=t;break a}i=a[t>>0]|0;if(!(Go(i,Jr()|0)|0)){u=s;v=t;break a}t=t+1|0}}else{q=p;r=10}while(0);b:do if((r|0)==10)while(1){r=0;if(q>>>0>=e>>>0){u=p;v=q;break b}t=a[q>>0]|0;if(!(Bo(t,Jr()|0)|0)){u=p;v=q;break b}q=q+1|0;r=10}while(0);q=k+11|0;p=a[q>>0]|0;t=k+4|0;c:do if((p<<24>>24<0?c[t>>2]|0:p&255)|0){d:do if((u|0)!=(v|0)){s=v;i=u;while(1){w=s+-1|0;if(i>>>0>=w>>>0)break d;x=a[i>>0]|0;a[i>>0]=a[w>>0]|0;a[w>>0]=x;s=w;i=i+1|0}}while(0);i=tb[c[(c[n>>2]|0)+16>>2]&127](n)|0;s=u;w=0;x=0;while(1){if(s>>>0>=v>>>0)break;y=a[((a[q>>0]|0)<0?c[k>>2]|0:k)+x>>0]|0;if(y<<24>>24>0&(w|0)==(y<<24>>24|0)){y=c[h>>2]|0;c[h>>2]=y+1;a[y>>0]=i;y=a[q>>0]|0;z=(x>>>0<((y<<24>>24<0?c[t>>2]|0:y&255)+-1|0)>>>0&1)+x|0;A=0}else{z=x;A=w}y=Bb[c[(c[m>>2]|0)+28>>2]&63](m,a[s>>0]|0)|0;B=c[h>>2]|0;c[h>>2]=B+1;a[B>>0]=y;s=s+1|0;w=A+1|0;x=z}x=f+(u-b)|0;w=c[h>>2]|0;if((x|0)==(w|0))C=m;else{s=w;w=x;while(1){x=s+-1|0;if(w>>>0>=x>>>0){C=m;break c}i=a[w>>0]|0;a[w>>0]=a[x>>0]|0;a[x>>0]=i;s=x;w=w+1|0}}}else{zb[c[(c[m>>2]|0)+32>>2]&15](m,u,v,c[h>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(v-u);C=m}while(0);u=v;while(1){if(u>>>0>=e>>>0){D=u;break}v=a[u>>0]|0;if(v<<24>>24==46){r=29;break}z=Bb[c[(c[C>>2]|0)+28>>2]&63](m,v)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=z;u=u+1|0}if((r|0)==29){r=tb[c[(c[n>>2]|0)+12>>2]&127](n)|0;n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=r;D=u+1|0}zb[c[(c[m>>2]|0)+32>>2]&15](m,D,e,c[h>>2]|0)|0;m=(c[h>>2]|0)+(o-D)|0;c[h>>2]=m;c[g>>2]=(d|0)==(e|0)?m:f+(d-b)|0;oz(k);l=j;return}function _s(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!(e&2048))f=b;else{a[b>>0]=43;f=b+1|0}if(!(e&512)){g=c;h=f}else{a[f>>0]=35;g=c;h=f+1|0}while(1){f=a[g>>0]|0;if(!(f<<24>>24))break;a[h>>0]=f;g=g+1|0;h=h+1|0}a:do switch(e&74){case 64:{a[h>>0]=111;break}case 8:{if(!(e&16384)){a[h>>0]=120;break a}else{a[h>>0]=88;break a}break}default:if(d){a[h>>0]=100;break a}else{a[h>>0]=117;break a}}while(0);return}function $s(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;j=l;l=l+16|0;k=j;m=Hr(i,43804)|0;n=Hr(i,43820)|0;rb[c[(c[n>>2]|0)+20>>2]&127](k,n);i=k+11|0;o=a[i>>0]|0;p=k+4|0;if((o<<24>>24<0?c[p>>2]|0:o&255)|0){c[h>>2]=f;o=a[b>>0]|0;switch(o<<24>>24){case 43:case 45:{q=Bb[c[(c[m>>2]|0)+28>>2]&63](m,o)|0;o=c[h>>2]|0;c[h>>2]=o+1;a[o>>0]=q;r=b+1|0;break}default:r=b}a:do if((e-r|0)>1?(a[r>>0]|0)==48:0){q=r+1|0;switch(a[q>>0]|0){case 88:case 120:break;default:{s=r;break a}}o=Bb[c[(c[m>>2]|0)+28>>2]&63](m,48)|0;t=c[h>>2]|0;c[h>>2]=t+1;a[t>>0]=o;o=Bb[c[(c[m>>2]|0)+28>>2]&63](m,a[q>>0]|0)|0;q=c[h>>2]|0;c[h>>2]=q+1;a[q>>0]=o;s=r+2|0}else s=r;while(0);b:do if((s|0)!=(e|0)){r=e;o=s;while(1){q=r+-1|0;if(o>>>0>=q>>>0)break b;t=a[o>>0]|0;a[o>>0]=a[q>>0]|0;a[q>>0]=t;r=q;o=o+1|0}}while(0);o=tb[c[(c[n>>2]|0)+16>>2]&127](n)|0;n=s;r=0;q=0;while(1){if(n>>>0>=e>>>0)break;t=a[((a[i>>0]|0)<0?c[k>>2]|0:k)+r>>0]|0;if(t<<24>>24!=0&(q|0)==(t<<24>>24|0)){t=c[h>>2]|0;c[h>>2]=t+1;a[t>>0]=o;t=a[i>>0]|0;u=(r>>>0<((t<<24>>24<0?c[p>>2]|0:t&255)+-1|0)>>>0&1)+r|0;v=0}else{u=r;v=q}t=Bb[c[(c[m>>2]|0)+28>>2]&63](m,a[n>>0]|0)|0;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=t;n=n+1|0;r=u;q=v+1|0}v=b;q=f+(s-v)|0;s=c[h>>2]|0;if((q|0)==(s|0)){x=v;y=q}else{u=s;s=q;while(1){q=u+-1|0;if(s>>>0>=q>>>0)break;r=a[s>>0]|0;a[s>>0]=a[q>>0]|0;a[q>>0]=r;u=q;s=s+1|0}x=v;y=c[h>>2]|0}}else{zb[c[(c[m>>2]|0)+32>>2]&15](m,b,e,f)|0;m=b;b=f+(e-m)|0;c[h>>2]=b;x=m;y=b}c[g>>2]=(d|0)==(e|0)?y:f+(d-x)|0;oz(k);l=j;return}function at(a){a=a|0;return}function bt(a){a=a|0;bz(a);return}function ct(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,m=0,n=0,o=0,p=0,q=0;h=l;l=l+16|0;i=h+4|0;j=h;if(!(c[e+4>>2]&1)){k=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];m=Db[k&31](b,i,e,f,g&1)|0}else{f=iq(e)|0;c[i>>2]=f;e=Hr(i,43844)|0;Wy(f)|0;f=c[e>>2]|0;if(g)rb[c[f+24>>2]&127](i,e);else rb[c[f+28>>2]&127](i,e);e=i+8+3|0;f=a[e>>0]|0;g=c[i>>2]|0;b=i+4|0;k=f<<24>>24<0?g:i;j=f;f=g;while(1){g=j<<24>>24<0;if((k|0)==((g?f:i)+((g?c[b>>2]|0:j&255)<<2)|0))break;g=c[k>>2]|0;n=c[d>>2]|0;if(n|0){o=n+24|0;p=c[o>>2]|0;if((p|0)==(c[n+28>>2]|0))q=Bb[c[(c[n>>2]|0)+52>>2]&63](n,g)|0;else{c[o>>2]=p+4;c[p>>2]=g;q=g}if((q|0)==-1)c[d>>2]=0}k=k+4|0;j=a[e>>0]|0;f=c[i>>2]|0}f=c[d>>2]|0;Kz(i);m=f}l=h;return m|0}function dt(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,m=0,n=0,o=0,p=0;b=l;l=l+128|0;h=b;i=b+122|0;j=b+108|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[38154]|0;a[i+1>>0]=a[38155]|0;a[i+2>>0]=a[38156]|0;a[i+3>>0]=a[38157]|0;a[i+4>>0]=a[38158]|0;a[i+5>>0]=a[38159]|0;_s(i+1|0,38160,1,c[e+4>>2]|0);p=Jr()|0;c[h>>2]=g;g=j+(Vs(j,13,p,i,h)|0)|0;i=Ws(j,g,e)|0;c[h>>2]=iq(e)|0;mt(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=kt(h,k,d,m,e,f)|0;l=b;return o|0}function et(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,m=0,n=0,o=0,p=0,q=0;a=l;l=l+224|0;h=a+8|0;i=a;j=a+200|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;_s(i+1|0,38151,1,c[d+4>>2]|0);p=Jr()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(Vs(j,23,p,i,h)|0)|0;i=Ws(j,g,d)|0;c[h>>2]=iq(d)|0;mt(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=kt(h,k,b,m,d,e)|0;l=a;return o|0}function ft(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,m=0,n=0,o=0,p=0;b=l;l=l+128|0;h=b;i=b+112|0;j=b+100|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[38154]|0;a[i+1>>0]=a[38155]|0;a[i+2>>0]=a[38156]|0;a[i+3>>0]=a[38157]|0;a[i+4>>0]=a[38158]|0;a[i+5>>0]=a[38159]|0;_s(i+1|0,38160,0,c[e+4>>2]|0);p=Jr()|0;c[h>>2]=g;g=j+(Vs(j,12,p,i,h)|0)|0;i=Ws(j,g,e)|0;c[h>>2]=iq(e)|0;mt(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=kt(h,k,d,m,e,f)|0;l=b;return o|0}function gt(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,m=0,n=0,o=0,p=0,q=0;a=l;l=l+224|0;h=a+8|0;i=a;j=a+200|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;_s(i+1|0,38151,0,c[d+4>>2]|0);p=Jr()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(Vs(j,23,p,i,h)|0)|0;i=Ws(j,g,d)|0;c[h>>2]=iq(d)|0;mt(j,i,g,k,m,n,h);Wy(c[h>>2]|0)|0;c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=kt(h,k,b,m,d,e)|0;l=a;return o|0}function ht(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;a=l;l=l+336|0;g=a+300|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+304|0;p=a+296|0;q=a+68|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=Xs(n+1|0,47807,c[d+4>>2]|0)|0;c[p>>2]=o;v=Jr()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=Vs(o,30,v,n,m)|0}else{h[k>>3]=f;w=Vs(o,30,v,n,k)|0}if((w|0)>29){k=Jr()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=Ys(p,k,n,j)|0}else{h[i>>3]=f;x=Ys(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=Ws(A,w,d)|0;if((A|0)!=(o|0)){x=Vo(y<<3)|0;if(!x){B=x;C=x;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}c[g>>2]=iq(d)|0;lt(D,i,w,B,r,s,g);Wy(c[g>>2]|0)|0;c[t>>2]=c[b>>2];w=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=kt(g,B,w,r,d,e)|0;c[b>>2]=t;if(C|0)Wo(C);Wo(z);l=a;return t|0}function it(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;a=l;l=l+336|0;g=a+300|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+304|0;p=a+296|0;q=a+68|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=Xs(n+1|0,38149,c[d+4>>2]|0)|0;c[p>>2]=o;v=Jr()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=Vs(o,30,v,n,m)|0}else{h[k>>3]=f;w=Vs(o,30,v,n,k)|0}if((w|0)>29){k=Jr()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=Ys(p,k,n,j)|0}else{h[i>>3]=f;x=Ys(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=Ws(A,w,d)|0;if((A|0)!=(o|0)){x=Vo(y<<3)|0;if(!x){B=x;C=x;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}c[g>>2]=iq(d)|0;lt(D,i,w,B,r,s,g);Wy(c[g>>2]|0)|0;c[t>>2]=c[b>>2];w=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=kt(g,B,w,r,d,e)|0;c[b>>2]=t;if(C|0)Wo(C);Wo(z);l=a;return t|0}function jt(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,m=0,n=0,o=0,p=0;b=l;l=l+192|0;h=b;i=b+176|0;j=b+156|0;k=b+4|0;m=b+152|0;a[i>>0]=a[38143]|0;a[i+1>>0]=a[38144]|0;a[i+2>>0]=a[38145]|0;a[i+3>>0]=a[38146]|0;a[i+4>>0]=a[38147]|0;a[i+5>>0]=a[38148]|0;n=Jr()|0;c[h>>2]=g;g=Vs(j,20,n,i,h)|0;i=j+g|0;n=Ws(j,i,e)|0;o=iq(e)|0;c[h>>2]=o;p=Hr(h,43836)|0;Wy(o)|0;zb[c[(c[p>>2]|0)+48>>2]&15](p,j,i,k)|0;p=k+(g<<2)|0;c[m>>2]=c[d>>2];c[h>>2]=c[m>>2];m=kt(h,k,(n|0)==(i|0)?p:k+(n-j<<2)|0,p,e,f)|0;l=b;return m|0}function kt(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;j=i;k=c[b>>2]|0;a:do if(!k)m=0;else{n=f;o=d;p=n-o>>2;q=g+12|0;r=c[q>>2]|0;s=(r|0)>(p|0)?r-p|0:0;p=e;r=p-o|0;o=r>>2;if((r|0)>0?(kb[c[(c[k>>2]|0)+48>>2]&31](k,d,o)|0)!=(o|0):0){c[b>>2]=0;m=0;break}do if((s|0)>0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Iz(j,s,h);if((kb[c[(c[k>>2]|0)+48>>2]&31](k,(a[j+8+3>>0]|0)<0?c[j>>2]|0:j,s)|0)==(s|0)){Kz(j);break}else{c[b>>2]=0;Kz(j);m=0;break a}}while(0);s=n-p|0;o=s>>2;if((s|0)>0?(kb[c[(c[k>>2]|0)+48>>2]&31](k,e,o)|0)!=(o|0):0){c[b>>2]=0;m=0;break}c[q>>2]=0;m=k}while(0);l=i;return m|0}function lt(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,m=0,n=0,o=0,p=0,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;j=l;l=l+16|0;k=j;m=Hr(i,43836)|0;n=Hr(i,43844)|0;rb[c[(c[n>>2]|0)+20>>2]&127](k,n);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{o=Bb[c[(c[m>>2]|0)+44>>2]&63](m,i)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=o;p=b+1|0;break}default:p=b}o=e;a:do if((o-p|0)>1?(a[p>>0]|0)==48:0){i=p+1|0;switch(a[i>>0]|0){case 88:case 120:break;default:{q=p;r=10;break a}}s=Bb[c[(c[m>>2]|0)+44>>2]&63](m,48)|0;t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=s;s=p+2|0;t=Bb[c[(c[m>>2]|0)+44>>2]&63](m,a[i>>0]|0)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=t;t=s;while(1){if(t>>>0>=e>>>0){u=s;v=t;break a}i=a[t>>0]|0;if(!(Go(i,Jr()|0)|0)){u=s;v=t;break a}t=t+1|0}}else{q=p;r=10}while(0);b:do if((r|0)==10)while(1){r=0;if(q>>>0>=e>>>0){u=p;v=q;break b}t=a[q>>0]|0;if(!(Bo(t,Jr()|0)|0)){u=p;v=q;break b}q=q+1|0;r=10}while(0);q=k+11|0;p=a[q>>0]|0;t=k+4|0;c:do if((p<<24>>24<0?c[t>>2]|0:p&255)|0){d:do if((u|0)!=(v|0)){s=v;i=u;while(1){w=s+-1|0;if(i>>>0>=w>>>0)break d;x=a[i>>0]|0;a[i>>0]=a[w>>0]|0;a[w>>0]=x;s=w;i=i+1|0}}while(0);i=tb[c[(c[n>>2]|0)+16>>2]&127](n)|0;s=u;w=0;x=0;while(1){if(s>>>0>=v>>>0)break;y=a[q>>0]|0;z=y<<24>>24<0;A=a[(z?c[k>>2]|0:k)+w>>0]|0;if(A<<24>>24>0&(x|0)==(A<<24>>24|0)){A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=i;B=(w>>>0<((z?c[t>>2]|0:y&255)+-1|0)>>>0&1)+w|0;C=0}else{B=w;C=x}y=Bb[c[(c[m>>2]|0)+44>>2]&63](m,a[s>>0]|0)|0;z=c[h>>2]|0;c[h>>2]=z+4;c[z>>2]=y;s=s+1|0;w=B;x=C+1|0}x=f+(u-b<<2)|0;w=c[h>>2]|0;if((x|0)==(w|0)){D=m;E=x}else{s=w;i=x;while(1){x=s+-4|0;if(i>>>0>=x>>>0){D=m;E=w;break c}y=c[i>>2]|0;c[i>>2]=c[x>>2];c[x>>2]=y;s=x;i=i+4|0}}}else{zb[c[(c[m>>2]|0)+48>>2]&15](m,u,v,c[h>>2]|0)|0;i=(c[h>>2]|0)+(v-u<<2)|0;c[h>>2]=i;D=m;E=i}while(0);u=v;v=E;while(1){if(u>>>0>=e>>>0){F=u;G=v;break}E=a[u>>0]|0;if(E<<24>>24==46){r=29;break}C=Bb[c[(c[D>>2]|0)+44>>2]&63](m,E)|0;E=c[h>>2]|0;B=E+4|0;c[h>>2]=B;c[E>>2]=C;u=u+1|0;v=B}if((r|0)==29){r=tb[c[(c[n>>2]|0)+12>>2]&127](n)|0;n=c[h>>2]|0;v=n+4|0;c[h>>2]=v;c[n>>2]=r;F=u+1|0;G=v}zb[c[(c[m>>2]|0)+48>>2]&15](m,F,e,G)|0;G=(c[h>>2]|0)+(o-F<<2)|0;c[h>>2]=G;c[g>>2]=(d|0)==(e|0)?G:f+(d-b<<2)|0;oz(k);l=j;return}function mt(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,m=0,n=0,o=0,p=0,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;j=l;l=l+16|0;k=j;m=Hr(i,43836)|0;n=Hr(i,43844)|0;rb[c[(c[n>>2]|0)+20>>2]&127](k,n);i=k+11|0;o=a[i>>0]|0;p=k+4|0;a:do if((o<<24>>24<0?c[p>>2]|0:o&255)|0){c[h>>2]=f;q=a[b>>0]|0;switch(q<<24>>24){case 43:case 45:{r=Bb[c[(c[m>>2]|0)+44>>2]&63](m,q)|0;q=c[h>>2]|0;c[h>>2]=q+4;c[q>>2]=r;s=b+1|0;break}default:s=b}b:do if((e-s|0)>1?(a[s>>0]|0)==48:0){r=s+1|0;switch(a[r>>0]|0){case 88:case 120:break;default:{t=s;break b}}q=Bb[c[(c[m>>2]|0)+44>>2]&63](m,48)|0;u=c[h>>2]|0;c[h>>2]=u+4;c[u>>2]=q;q=Bb[c[(c[m>>2]|0)+44>>2]&63](m,a[r>>0]|0)|0;r=c[h>>2]|0;c[h>>2]=r+4;c[r>>2]=q;t=s+2|0}else t=s;while(0);c:do if((t|0)!=(e|0)){q=e;r=t;while(1){u=q+-1|0;if(r>>>0>=u>>>0)break c;v=a[r>>0]|0;a[r>>0]=a[u>>0]|0;a[u>>0]=v;q=u;r=r+1|0}}while(0);r=tb[c[(c[n>>2]|0)+16>>2]&127](n)|0;q=t;u=0;v=0;while(1){if(q>>>0>=e>>>0)break;w=a[i>>0]|0;x=w<<24>>24<0;y=a[(x?c[k>>2]|0:k)+u>>0]|0;if(y<<24>>24!=0&(v|0)==(y<<24>>24|0)){y=c[h>>2]|0;c[h>>2]=y+4;c[y>>2]=r;z=(u>>>0<((x?c[p>>2]|0:w&255)+-1|0)>>>0&1)+u|0;A=0}else{z=u;A=v}w=Bb[c[(c[m>>2]|0)+44>>2]&63](m,a[q>>0]|0)|0;x=c[h>>2]|0;c[h>>2]=x+4;c[x>>2]=w;q=q+1|0;u=z;v=A+1|0}v=b;u=f+(t-v<<2)|0;q=c[h>>2]|0;if((u|0)==(q|0)){B=v;C=u}else{r=q;w=u;while(1){u=r+-4|0;if(w>>>0>=u>>>0){B=v;C=q;break a}x=c[w>>2]|0;c[w>>2]=c[u>>2];c[u>>2]=x;r=u;w=w+4|0}}}else{zb[c[(c[m>>2]|0)+48>>2]&15](m,b,e,f)|0;w=b;r=f+(e-w<<2)|0;c[h>>2]=r;B=w;C=r}while(0);c[g>>2]=(d|0)==(e|0)?C:f+(d-B<<2)|0;oz(k);l=j;return}function nt(a){a=a|0;return}function ot(a){a=a|0;bz(a);return}function pt(a){a=a|0;return 2}function qt(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=It(a,j,i,e,f,g,38679,38687)|0;l=h;return m|0}function rt(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,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;o=b+8|0;p=tb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[m>>2]=c[d>>2];c[n>>2]=c[e>>2];e=a[p+11>>0]|0;d=e<<24>>24<0;o=d?c[p>>2]|0:p;q=o+(d?c[p+4>>2]|0:e&255)|0;c[k>>2]=c[m>>2];c[j>>2]=c[n>>2];n=It(b,k,j,f,g,h,o,q)|0;l=i;return n|0}function st(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43804)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Gt(a,g+24|0,b,i,f,e);l=h;return c[b>>2]|0}function tt(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43804)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Ht(a,g+16|0,b,i,f,e);l=h;return c[b>>2]|0}function ut(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43804)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Tt(a,g+20|0,b,i,f,e);l=h;return c[b>>2]|0}function vt(b,d,e,f,g,h,i,j){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,m=0,n=0,o=0,p=0,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;j=l;l=l+144|0;k=j+128|0;m=j+112|0;n=j+124|0;o=j+120|0;p=j+116|0;q=j+108|0;r=j+104|0;s=j+100|0;t=j+96|0;u=j+92|0;v=j+88|0;w=j+84|0;x=j+80|0;y=j+76|0;z=j+72|0;A=j+68|0;B=j+64|0;C=j+60|0;D=j+56|0;E=j+52|0;F=j+48|0;G=j+44|0;H=j+40|0;I=j+36|0;J=j+32|0;K=j+28|0;L=j+24|0;M=j+20|0;N=j+16|0;O=j+12|0;P=j+8|0;Q=j+4|0;R=j;c[g>>2]=0;S=iq(f)|0;c[k>>2]=S;T=Hr(k,43804)|0;Wy(S)|0;do switch(i<<24>>24|0){case 65:case 97:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];Gt(b,h+24|0,d,k,g,T);U=26;break}case 104:case 66:case 98:{c[o>>2]=c[e>>2];c[k>>2]=c[o>>2];Ht(b,h+16|0,d,k,g,T);U=26;break}case 99:{S=b+8|0;V=tb[c[(c[S>>2]|0)+12>>2]&127](S)|0;c[p>>2]=c[d>>2];c[q>>2]=c[e>>2];S=a[V+11>>0]|0;W=S<<24>>24<0;X=W?c[V>>2]|0:V;Y=X+(W?c[V+4>>2]|0:S&255)|0;c[m>>2]=c[p>>2];c[k>>2]=c[q>>2];c[d>>2]=It(b,m,k,f,g,h,X,Y)|0;U=26;break}case 101:case 100:{c[r>>2]=c[e>>2];c[k>>2]=c[r>>2];Jt(b,h+12|0,d,k,g,T);U=26;break}case 68:{c[s>>2]=c[d>>2];c[t>>2]=c[e>>2];c[m>>2]=c[s>>2];c[k>>2]=c[t>>2];c[d>>2]=It(b,m,k,f,g,h,38639,38647)|0;U=26;break}case 70:{c[u>>2]=c[d>>2];c[v>>2]=c[e>>2];c[m>>2]=c[u>>2];c[k>>2]=c[v>>2];c[d>>2]=It(b,m,k,f,g,h,38647,38655)|0;U=26;break}case 72:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];Kt(b,h+8|0,d,k,g,T);U=26;break}case 73:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];Lt(b,h+8|0,d,k,g,T);U=26;break}case 106:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];Mt(b,h+28|0,d,k,g,T);U=26;break}case 109:{c[z>>2]=c[e>>2];c[k>>2]=c[z>>2];Nt(b,h+16|0,d,k,g,T);U=26;break}case 77:{c[A>>2]=c[e>>2];c[k>>2]=c[A>>2];Ot(b,h+4|0,d,k,g,T);U=26;break}case 116:case 110:{c[B>>2]=c[e>>2];c[k>>2]=c[B>>2];Pt(b,d,k,g,T);U=26;break}case 112:{c[C>>2]=c[e>>2];c[k>>2]=c[C>>2];Qt(b,h+8|0,d,k,g,T);U=26;break}case 114:{c[D>>2]=c[d>>2];c[E>>2]=c[e>>2];c[m>>2]=c[D>>2];c[k>>2]=c[E>>2];c[d>>2]=It(b,m,k,f,g,h,38655,38666)|0;U=26;break}case 82:{c[F>>2]=c[d>>2];c[G>>2]=c[e>>2];c[m>>2]=c[F>>2];c[k>>2]=c[G>>2];c[d>>2]=It(b,m,k,f,g,h,38666,38671)|0;U=26;break}case 83:{c[H>>2]=c[e>>2];c[k>>2]=c[H>>2];Rt(b,h,d,k,g,T);U=26;break}case 84:{c[I>>2]=c[d>>2];c[J>>2]=c[e>>2];c[m>>2]=c[I>>2];c[k>>2]=c[J>>2];c[d>>2]=It(b,m,k,f,g,h,38671,38679)|0;U=26;break}case 119:{c[K>>2]=c[e>>2];c[k>>2]=c[K>>2];St(b,h+24|0,d,k,g,T);U=26;break}case 120:{Y=c[(c[b>>2]|0)+20>>2]|0;c[L>>2]=c[d>>2];c[M>>2]=c[e>>2];c[m>>2]=c[L>>2];c[k>>2]=c[M>>2];Z=sb[Y&63](b,m,k,f,g,h)|0;break}case 88:{Y=b+8|0;X=tb[c[(c[Y>>2]|0)+24>>2]&127](Y)|0;c[N>>2]=c[d>>2];c[O>>2]=c[e>>2];Y=a[X+11>>0]|0;S=Y<<24>>24<0;V=S?c[X>>2]|0:X;W=V+(S?c[X+4>>2]|0:Y&255)|0;c[m>>2]=c[N>>2];c[k>>2]=c[O>>2];c[d>>2]=It(b,m,k,f,g,h,V,W)|0;U=26;break}case 121:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];Tt(b,h+20|0,d,k,g,T);U=26;break}case 89:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];Ut(b,h+20|0,d,k,g,T);U=26;break}case 37:{c[R>>2]=c[e>>2];c[k>>2]=c[R>>2];Vt(b,d,k,g,T);U=26;break}default:{c[g>>2]=c[g>>2]|4;U=26}}while(0);if((U|0)==26)Z=c[d>>2]|0;l=j;return Z|0}function wt(b){b=b|0;var d=0;if((a[41312]|0)==0?WA(41312)|0:0){if((a[41320]|0)==0?WA(41320)|0:0){b=44508;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=44676);Za(268,0,o|0)|0}tz(44508,38554)|0;tz(44520,38561)|0;tz(44532,38568)|0;tz(44544,38576)|0;tz(44556,38586)|0;tz(44568,38595)|0;tz(44580,38602)|0;tz(44592,38611)|0;tz(44604,38615)|0;tz(44616,38619)|0;tz(44628,38623)|0;tz(44640,38627)|0;tz(44652,38631)|0;tz(44664,38635)|0;c[11169]=44508}return c[11169]|0}function xt(b){b=b|0;var d=0;if((a[41296]|0)==0?WA(41296)|0:0){if((a[41304]|0)==0?WA(41304)|0:0){b=44216;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=44504);Za(269,0,o|0)|0}tz(44216,38424)|0;tz(44228,38432)|0;tz(44240,38441)|0;tz(44252,38447)|0;tz(44264,38453)|0;tz(44276,38457)|0;tz(44288,38462)|0;tz(44300,38467)|0;tz(44312,38474)|0;tz(44324,38484)|0;tz(44336,38492)|0;tz(44348,38501)|0;tz(44360,38510)|0;tz(44372,38514)|0;tz(44384,38518)|0;tz(44396,38522)|0;tz(44408,38453)|0;tz(44420,38526)|0;tz(44432,38530)|0;tz(44444,38534)|0;tz(44456,38538)|0;tz(44468,38542)|0;tz(44480,38546)|0;tz(44492,38550)|0;c[11126]=44216}return c[11126]|0}function yt(b){b=b|0;var d=0;if((a[41280]|0)==0?WA(41280)|0:0){if((a[41288]|0)==0?WA(41288)|0:0){b=43924;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=44212);Za(270,0,o|0)|0}tz(43924,38418)|0;tz(43936,38421)|0;c[11053]=43924}return c[11053]|0}function zt(b){b=b|0;if((a[41272]|0)==0?WA(41272)|0:0){c[10978]=0;c[10979]=0;c[10980]=0;lz(43912,38397,20);Za(255,43912,o|0)|0}return 43912}function At(b){b=b|0;if((a[41264]|0)==0?WA(41264)|0:0){c[10975]=0;c[10976]=0;c[10977]=0;lz(43900,38385,11);Za(255,43900,o|0)|0}return 43900}function Bt(b){b=b|0;if((a[41256]|0)==0?WA(41256)|0:0){c[10972]=0;c[10973]=0;c[10974]=0;lz(43888,38376,8);Za(255,43888,o|0)|0}return 43888}function Ct(b){b=b|0;if((a[41248]|0)==0?WA(41248)|0:0){c[10969]=0;c[10970]=0;c[10971]=0;lz(43876,38367,8);Za(255,43876,o|0)|0}return 43876}function Dt(a){a=a|0;a=44212;do{a=a+-12|0;oz(a)}while((a|0)!=43924);return}function Et(a){a=a|0;a=44504;do{a=a+-12|0;oz(a)}while((a|0)!=44216);return}function Ft(a){a=a|0;a=44676;do{a=a+-12|0;oz(a)}while((a|0)!=44508);return}function Gt(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;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=tb[c[c[k>>2]>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(js(d,i,a,a+168|0,g,f,0)|0)-a|0;if((j|0)<168)c[b>>2]=((j|0)/12|0|0)%7|0;l=h;return}function Ht(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;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=tb[c[(c[k>>2]|0)+4>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(js(d,i,a,a+288|0,g,f,0)|0)-a|0;if((j|0)<288)c[b>>2]=((j|0)/12|0|0)%12|0;l=h;return}function It(e,f,g,h,i,j,k,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;n=l;l=l+16|0;o=n+12|0;p=n+8|0;q=n+4|0;r=n;s=iq(h)|0;c[o>>2]=s;t=Hr(o,43804)|0;Wy(s)|0;c[i>>2]=0;s=t+8|0;u=k;k=0;a:while(1){v=(u|0)!=(m|0);w=k;while(1){x=c[f>>2]|0;if(!(v&(w|0)==0)){y=x;break a}z=x;if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;A=0;B=0}else{A=x;B=z}else{A=0;B=z}z=(A|0)==0;x=c[g>>2]|0;C=x;do if(x){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[g>>2]=0;D=0;E=13;break}if(z){F=x;G=C}else{E=14;break a}}else{D=C;E=13}while(0);if((E|0)==13){E=0;if(z){E=14;break a}else{F=0;G=D}}if((kb[c[(c[t>>2]|0)+36>>2]&31](t,a[u>>0]|0,0)|0)<<24>>24==37){E=16;break}C=a[u>>0]|0;if(C<<24>>24>-1?(H=c[s>>2]|0,b[H+(C<<24>>24<<1)>>1]&8192):0){I=u;E=25;break}J=A+12|0;C=c[J>>2]|0;K=A+16|0;if((C|0)==(c[K>>2]|0))L=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else L=d[C>>0]|0;C=Bb[c[(c[t>>2]|0)+12>>2]&63](t,L&255)|0;if(C<<24>>24==(Bb[c[(c[t>>2]|0)+12>>2]&63](t,a[u>>0]|0)|0)<<24>>24){E=52;break}c[i>>2]=4;w=4}b:do if((E|0)==16){E=0;w=u+1|0;if((w|0)==(m|0)){E=17;break a}v=kb[c[(c[t>>2]|0)+36>>2]&31](t,a[w>>0]|0,0)|0;switch(v<<24>>24){case 48:case 69:{C=u+2|0;if((C|0)==(m|0)){E=22;break a}M=v;N=kb[c[(c[t>>2]|0)+36>>2]&31](t,a[C>>0]|0,0)|0;O=w;break}default:{M=0;N=v;O=u}}v=c[(c[e>>2]|0)+36>>2]|0;c[q>>2]=B;c[r>>2]=G;c[p>>2]=c[q>>2];c[o>>2]=c[r>>2];c[f>>2]=yb[v&15](e,p,o,h,i,j,N,M)|0;P=O+2|0}else if((E|0)==25){while(1){E=0;v=I+1|0;if((v|0)==(m|0)){Q=m;break}w=a[v>>0]|0;if(w<<24>>24<=-1){Q=v;break}if(!(b[H+(w<<24>>24<<1)>>1]&8192)){Q=v;break}else{I=v;E=25}}z=A;v=F;w=F;while(1){if(z)if((c[z+12>>2]|0)==(c[z+16>>2]|0)?(tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1:0){c[f>>2]=0;R=0}else R=z;else R=0;C=(R|0)==0;do if(w){if((c[w+12>>2]|0)!=(c[w+16>>2]|0))if(C){S=v;T=w;break}else{P=Q;break b}if((tb[c[(c[w>>2]|0)+36>>2]&127](w)|0)!=-1)if(C^(v|0)==0){S=v;T=v;break}else{P=Q;break b}else{c[g>>2]=0;U=0;E=38;break}}else{U=v;E=38}while(0);if((E|0)==38){E=0;if(C){P=Q;break b}else{S=U;T=0}}x=R+12|0;V=c[x>>2]|0;W=R+16|0;if((V|0)==(c[W>>2]|0))X=tb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else X=d[V>>0]|0;if((X&255)<<24>>24<=-1){P=Q;break b}if(!(b[(c[s>>2]|0)+(X<<24>>24<<1)>>1]&8192)){P=Q;break b}V=c[x>>2]|0;if((V|0)==(c[W>>2]|0)){tb[c[(c[R>>2]|0)+40>>2]&127](R)|0;z=R;v=S;w=T;continue}else{c[x>>2]=V+1;z=R;v=S;w=T;continue}}}else if((E|0)==52){E=0;w=c[J>>2]|0;if((w|0)==(c[K>>2]|0))tb[c[(c[A>>2]|0)+40>>2]&127](A)|0;else c[J>>2]=w+1;P=u+1|0}while(0);u=P;k=c[i>>2]|0}if((E|0)==14){c[i>>2]=4;y=A}else if((E|0)==17){c[i>>2]=4;y=A}else if((E|0)==22){c[i>>2]=4;y=A}if(y)if((c[y+12>>2]|0)==(c[y+16>>2]|0)?(tb[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1:0){c[f>>2]=0;Y=0}else Y=y;else Y=0;y=(Y|0)==0;f=c[g>>2]|0;do if(f){if((c[f+12>>2]|0)==(c[f+16>>2]|0)?(tb[c[(c[f>>2]|0)+36>>2]&127](f)|0)==-1:0){c[g>>2]=0;E=67;break}if(!y)E=68}else E=67;while(0);if((E|0)==67?y:0)E=68;if((E|0)==68)c[i>>2]=c[i>>2]|2;l=n;return Y|0}function Jt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Kt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<24&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Lt(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Mt(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,3)|0;g=c[f>>2]|0;if((i|0)<366&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Nt(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<13&(g&4|0)==0)c[b>>2]=i+-1;else c[f>>2]=g|4;l=a;return}function Ot(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<60&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Pt(a,e,f,g,h){a=a|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;a=h+8|0;a:while(1){h=c[e>>2]|0;do if(h)if((c[h+12>>2]|0)==(c[h+16>>2]|0))if((tb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;i=0;break}else{i=c[e>>2]|0;break}else i=h;else i=0;while(0);h=(i|0)==0;j=c[f>>2]|0;do if(j){if((c[j+12>>2]|0)!=(c[j+16>>2]|0))if(h){k=j;break}else{l=j;break a}if((tb[c[(c[j>>2]|0)+36>>2]&127](j)|0)!=-1)if(h){k=j;break}else{l=j;break a}else{c[f>>2]=0;m=12;break}}else m=12;while(0);if((m|0)==12){m=0;if(h){l=0;break}else k=0}j=c[e>>2]|0;n=c[j+12>>2]|0;if((n|0)==(c[j+16>>2]|0))o=tb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else o=d[n>>0]|0;if((o&255)<<24>>24<=-1){l=k;break}if(!(b[(c[a>>2]|0)+(o<<24>>24<<1)>>1]&8192)){l=k;break}n=c[e>>2]|0;j=n+12|0;p=c[j>>2]|0;if((p|0)==(c[n+16>>2]|0)){tb[c[(c[n>>2]|0)+40>>2]&127](n)|0;continue}else{c[j>>2]=p+1;continue}}k=c[e>>2]|0;do if(k)if((c[k+12>>2]|0)==(c[k+16>>2]|0))if((tb[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1){c[e>>2]=0;q=0;break}else{q=c[e>>2]|0;break}else q=k;else q=0;while(0);k=(q|0)==0;do if(l){if((c[l+12>>2]|0)==(c[l+16>>2]|0)?(tb[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1:0){c[f>>2]=0;m=32;break}if(!k)m=33}else m=32;while(0);if((m|0)==32?k:0)m=33;if((m|0)==33)c[g>>2]=c[g>>2]|2;return}function Qt(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,m=0,n=0,o=0,p=0;i=l;l=l+16|0;j=i+4|0;k=i;m=b+8|0;b=tb[c[(c[m>>2]|0)+8>>2]&127](m)|0;m=a[b+11>>0]|0;if(m<<24>>24<0)n=c[b+4>>2]|0;else n=m&255;m=a[b+12+11>>0]|0;if(m<<24>>24<0)o=c[b+16>>2]|0;else o=m&255;do if((n|0)!=(0-o|0)){c[k>>2]=c[f>>2];c[j>>2]=c[k>>2];m=(js(e,j,b,b+24|0,h,g,0)|0)-b|0;p=c[d>>2]|0;if((p|0)==12&(m|0)==0){c[d>>2]=0;break}if((p|0)<12&(m|0)==12)c[d>>2]=p+12}else c[g>>2]=c[g>>2]|4;while(0);l=i;return}function Rt(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<61&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function St(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,1)|0;g=c[f>>2]|0;if((i|0)<7&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Tt(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,4)|0;if(!(c[f>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;c[b>>2]=j+-1900}l=a;return}function Ut(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Wt(d,h,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=i+-1900;l=a;return}function Vt(a,b,e,f,g){a=a|0;b=b|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;a=c[b>>2]|0;do if(a)if((c[a+12>>2]|0)==(c[a+16>>2]|0))if((tb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){c[b>>2]=0;h=0;break}else{h=c[b>>2]|0;break}else h=a;else h=0;while(0);a=(h|0)==0;h=c[e>>2]|0;do if(h){if((c[h+12>>2]|0)==(c[h+16>>2]|0)?(tb[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1:0){c[e>>2]=0;i=11;break}if(a){j=h;i=13}else i=12}else i=11;while(0);if((i|0)==11)if(a)i=12;else{j=0;i=13}a:do if((i|0)==12)c[f>>2]=c[f>>2]|6;else if((i|0)==13){a=c[b>>2]|0;h=c[a+12>>2]|0;if((h|0)==(c[a+16>>2]|0))k=tb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else k=d[h>>0]|0;if((kb[c[(c[g>>2]|0)+36>>2]&31](g,k&255,0)|0)<<24>>24!=37){c[f>>2]=c[f>>2]|4;break}h=c[b>>2]|0;a=h+12|0;l=c[a>>2]|0;if((l|0)==(c[h+16>>2]|0)){tb[c[(c[h>>2]|0)+40>>2]&127](h)|0;m=c[b>>2]|0;if(!m)n=0;else{o=m;i=21}}else{c[a>>2]=l+1;o=h;i=21}do if((i|0)==21)if((c[o+12>>2]|0)==(c[o+16>>2]|0))if((tb[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1){c[b>>2]=0;n=0;break}else{n=c[b>>2]|0;break}else n=o;while(0);h=(n|0)==0;do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0)?(tb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1:0){c[e>>2]=0;i=30;break}if(h)break a}else i=30;while(0);if((i|0)==30?!h:0)break;c[f>>2]=c[f>>2]|2}while(0);return}function Wt(a,e,f,g,h){a=a|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[a>>2]|0;do if(i)if((c[i+12>>2]|0)==(c[i+16>>2]|0))if((tb[c[(c[i>>2]|0)+36>>2]&127](i)|0)==-1){c[a>>2]=0;j=0;break}else{j=c[a>>2]|0;break}else j=i;else j=0;while(0);i=(j|0)==0;j=c[e>>2]|0;do if(j){if((c[j+12>>2]|0)==(c[j+16>>2]|0)?(tb[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1:0){c[e>>2]=0;k=11;break}if(i){l=j;k=13}else k=12}else k=11;while(0);if((k|0)==11)if(i)k=12;else{l=0;k=13}a:do if((k|0)==12){c[f>>2]=c[f>>2]|6;m=0}else if((k|0)==13){i=c[a>>2]|0;j=c[i+12>>2]|0;if((j|0)==(c[i+16>>2]|0))n=tb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else n=d[j>>0]|0;j=n&255;if(j<<24>>24>-1?(i=g+8|0,b[(c[i>>2]|0)+(n<<24>>24<<1)>>1]&2048):0){o=(kb[c[(c[g>>2]|0)+36>>2]&31](g,j,0)|0)<<24>>24;j=c[a>>2]|0;p=j+12|0;q=c[p>>2]|0;if((q|0)==(c[j+16>>2]|0)){tb[c[(c[j>>2]|0)+40>>2]&127](j)|0;r=o;s=h;t=l;u=l}else{c[p>>2]=q+1;r=o;s=h;t=l;u=l}while(1){v=r+-48|0;o=s+-1|0;q=c[a>>2]|0;do if(q)if((c[q+12>>2]|0)==(c[q+16>>2]|0))if((tb[c[(c[q>>2]|0)+36>>2]&127](q)|0)==-1){c[a>>2]=0;w=0;break}else{w=c[a>>2]|0;break}else w=q;else w=0;while(0);q=(w|0)==0;if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0))if((tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1){c[e>>2]=0;x=0;y=0}else{x=t;y=t}else{x=t;y=u}else{x=t;y=0}z=c[a>>2]|0;if(!((s|0)>1&(q^(y|0)==0)))break;q=c[z+12>>2]|0;if((q|0)==(c[z+16>>2]|0))A=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else A=d[q>>0]|0;q=A&255;if(q<<24>>24<=-1){m=v;break a}if(!(b[(c[i>>2]|0)+(A<<24>>24<<1)>>1]&2048)){m=v;break a}p=((kb[c[(c[g>>2]|0)+36>>2]&31](g,q,0)|0)<<24>>24)+(v*10|0)|0;q=c[a>>2]|0;j=q+12|0;B=c[j>>2]|0;if((B|0)==(c[q+16>>2]|0)){tb[c[(c[q>>2]|0)+40>>2]&127](q)|0;r=p;s=o;t=x;u=y;continue}else{c[j>>2]=B+1;r=p;s=o;t=x;u=y;continue}}do if(z)if((c[z+12>>2]|0)==(c[z+16>>2]|0))if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[a>>2]=0;C=0;break}else{C=c[a>>2]|0;break}else C=z;else C=0;while(0);i=(C|0)==0;do if(x){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;k=50;break}if(i){m=v;break a}}else k=50;while(0);if((k|0)==50?!i:0){m=v;break}c[f>>2]=c[f>>2]|2;m=v;break}c[f>>2]=c[f>>2]|4;m=0}while(0);return m|0}function Xt(a){a=a|0;return}function Yt(a){a=a|0;bz(a);return}function Zt(a){a=a|0;return 2}function _t(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=qu(a,j,i,e,f,g,19484,19516)|0;l=h;return m|0}function $t(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,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;o=b+8|0;p=tb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[m>>2]=c[d>>2];c[n>>2]=c[e>>2];e=a[p+8+3>>0]|0;d=e<<24>>24<0;o=d?c[p>>2]|0:p;q=o+((d?c[p+4>>2]|0:e&255)<<2)|0;c[k>>2]=c[m>>2];c[j>>2]=c[n>>2];n=qu(b,k,j,f,g,h,o,q)|0;l=i;return n|0}function au(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43836)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];ou(a,g+24|0,b,i,f,e);l=h;return c[b>>2]|0}function bu(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43836)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];pu(a,g+16|0,b,i,f,e);l=h;return c[b>>2]|0}function cu(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;h=l;l=l+16|0;i=h+4|0;j=h;k=iq(e)|0;c[i>>2]=k;e=Hr(i,43836)|0;Wy(k)|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Bu(a,g+20|0,b,i,f,e);l=h;return c[b>>2]|0}function du(b,d,e,f,g,h,i,j){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,m=0,n=0,o=0,p=0,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;j=l;l=l+144|0;k=j+128|0;m=j+112|0;n=j+124|0;o=j+120|0;p=j+116|0;q=j+108|0;r=j+104|0;s=j+100|0;t=j+96|0;u=j+92|0;v=j+88|0;w=j+84|0;x=j+80|0;y=j+76|0;z=j+72|0;A=j+68|0;B=j+64|0;C=j+60|0;D=j+56|0;E=j+52|0;F=j+48|0;G=j+44|0;H=j+40|0;I=j+36|0;J=j+32|0;K=j+28|0;L=j+24|0;M=j+20|0;N=j+16|0;O=j+12|0;P=j+8|0;Q=j+4|0;R=j;c[g>>2]=0;S=iq(f)|0;c[k>>2]=S;T=Hr(k,43836)|0;Wy(S)|0;do switch(i<<24>>24|0){case 65:case 97:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];ou(b,h+24|0,d,k,g,T);U=26;break}case 104:case 66:case 98:{c[o>>2]=c[e>>2];c[k>>2]=c[o>>2];pu(b,h+16|0,d,k,g,T);U=26;break}case 99:{S=b+8|0;V=tb[c[(c[S>>2]|0)+12>>2]&127](S)|0;c[p>>2]=c[d>>2];c[q>>2]=c[e>>2];S=a[V+8+3>>0]|0;W=S<<24>>24<0;X=W?c[V>>2]|0:V;Y=X+((W?c[V+4>>2]|0:S&255)<<2)|0;c[m>>2]=c[p>>2];c[k>>2]=c[q>>2];c[d>>2]=qu(b,m,k,f,g,h,X,Y)|0;U=26;break}case 101:case 100:{c[r>>2]=c[e>>2];c[k>>2]=c[r>>2];ru(b,h+12|0,d,k,g,T);U=26;break}case 68:{c[s>>2]=c[d>>2];c[t>>2]=c[e>>2];c[m>>2]=c[s>>2];c[k>>2]=c[t>>2];c[d>>2]=qu(b,m,k,f,g,h,19324,19356)|0;U=26;break}case 70:{c[u>>2]=c[d>>2];c[v>>2]=c[e>>2];c[m>>2]=c[u>>2];c[k>>2]=c[v>>2];c[d>>2]=qu(b,m,k,f,g,h,19356,19388)|0;U=26;break}case 72:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];su(b,h+8|0,d,k,g,T);U=26;break}case 73:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];tu(b,h+8|0,d,k,g,T);U=26;break}case 106:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];uu(b,h+28|0,d,k,g,T);U=26;break}case 109:{c[z>>2]=c[e>>2];c[k>>2]=c[z>>2];vu(b,h+16|0,d,k,g,T);U=26;break}case 77:{c[A>>2]=c[e>>2];c[k>>2]=c[A>>2];wu(b,h+4|0,d,k,g,T);U=26;break}case 116:case 110:{c[B>>2]=c[e>>2];c[k>>2]=c[B>>2];xu(b,d,k,g,T);U=26;break}case 112:{c[C>>2]=c[e>>2];c[k>>2]=c[C>>2];yu(b,h+8|0,d,k,g,T);U=26;break}case 114:{c[D>>2]=c[d>>2];c[E>>2]=c[e>>2];c[m>>2]=c[D>>2];c[k>>2]=c[E>>2];c[d>>2]=qu(b,m,k,f,g,h,19388,19432)|0;U=26;break}case 82:{c[F>>2]=c[d>>2];c[G>>2]=c[e>>2];c[m>>2]=c[F>>2];c[k>>2]=c[G>>2];c[d>>2]=qu(b,m,k,f,g,h,19432,19452)|0;U=26;break}case 83:{c[H>>2]=c[e>>2];c[k>>2]=c[H>>2];zu(b,h,d,k,g,T);U=26;break}case 84:{c[I>>2]=c[d>>2];c[J>>2]=c[e>>2];c[m>>2]=c[I>>2];c[k>>2]=c[J>>2];c[d>>2]=qu(b,m,k,f,g,h,19452,19484)|0;U=26;break}case 119:{c[K>>2]=c[e>>2];c[k>>2]=c[K>>2];Au(b,h+24|0,d,k,g,T);U=26;break}case 120:{Y=c[(c[b>>2]|0)+20>>2]|0;c[L>>2]=c[d>>2];c[M>>2]=c[e>>2];c[m>>2]=c[L>>2];c[k>>2]=c[M>>2];Z=sb[Y&63](b,m,k,f,g,h)|0;break}case 88:{Y=b+8|0;X=tb[c[(c[Y>>2]|0)+24>>2]&127](Y)|0;c[N>>2]=c[d>>2];c[O>>2]=c[e>>2];Y=a[X+8+3>>0]|0;S=Y<<24>>24<0;V=S?c[X>>2]|0:X;W=V+((S?c[X+4>>2]|0:Y&255)<<2)|0;c[m>>2]=c[N>>2];c[k>>2]=c[O>>2];c[d>>2]=qu(b,m,k,f,g,h,V,W)|0;U=26;break}case 121:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];Bu(b,h+20|0,d,k,g,T);U=26;break}case 89:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];Cu(b,h+20|0,d,k,g,T);U=26;break}case 37:{c[R>>2]=c[e>>2];c[k>>2]=c[R>>2];Du(b,d,k,g,T);U=26;break}default:{c[g>>2]=c[g>>2]|4;U=26}}while(0);if((U|0)==26)Z=c[d>>2]|0;l=j;return Z|0}function eu(b){b=b|0;var d=0;if((a[41392]|0)==0?WA(41392)|0:0){if((a[41400]|0)==0?WA(41400)|0:0){b=45320;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=45488);Za(271,0,o|0)|0}Pz(45320,18984)|0;Pz(45332,19012)|0;Pz(45344,19040)|0;Pz(45356,19072)|0;Pz(45368,19112)|0;Pz(45380,19148)|0;Pz(45392,19176)|0;Pz(45404,19212)|0;Pz(45416,19228)|0;Pz(45428,19244)|0;Pz(45440,19260)|0;Pz(45452,19276)|0;Pz(45464,19292)|0;Pz(45476,19308)|0;c[11372]=45320}return c[11372]|0}function fu(b){b=b|0;var d=0;if((a[41376]|0)==0?WA(41376)|0:0){if((a[41384]|0)==0?WA(41384)|0:0){b=45028;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=45316);Za(272,0,o|0)|0}Pz(45028,18464)|0;Pz(45040,18496)|0;Pz(45052,18532)|0;Pz(45064,18556)|0;Pz(45076,18580)|0;Pz(45088,18596)|0;Pz(45100,18616)|0;Pz(45112,18636)|0;Pz(45124,18664)|0;Pz(45136,18704)|0;Pz(45148,18736)|0;Pz(45160,18772)|0;Pz(45172,18808)|0;Pz(45184,18824)|0;Pz(45196,18840)|0;Pz(45208,18856)|0;Pz(45220,18580)|0;Pz(45232,18872)|0;Pz(45244,18888)|0;Pz(45256,18904)|0;Pz(45268,18920)|0;Pz(45280,18936)|0;Pz(45292,18952)|0;Pz(45304,18968)|0;c[11329]=45028}return c[11329]|0}function gu(b){b=b|0;var d=0;if((a[41360]|0)==0?WA(41360)|0:0){if((a[41368]|0)==0?WA(41368)|0:0){b=44736;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=45024);Za(273,0,o|0)|0}Pz(44736,18440)|0;Pz(44748,18452)|0;c[11256]=44736}return c[11256]|0}function hu(b){b=b|0;if((a[41352]|0)==0?WA(41352)|0:0){c[11181]=0;c[11182]=0;c[11183]=0;Hz(44724,18356,Nn(18356)|0);Za(274,44724,o|0)|0}return 44724}function iu(b){b=b|0;if((a[41344]|0)==0?WA(41344)|0:0){c[11178]=0;c[11179]=0;c[11180]=0;Hz(44712,18308,Nn(18308)|0);Za(274,44712,o|0)|0}return 44712}function ju(b){b=b|0;if((a[41336]|0)==0?WA(41336)|0:0){c[11175]=0;c[11176]=0;c[11177]=0;Hz(44700,18272,Nn(18272)|0);Za(274,44700,o|0)|0}return 44700}function ku(b){b=b|0;if((a[41328]|0)==0?WA(41328)|0:0){c[11172]=0;c[11173]=0;c[11174]=0;Hz(44688,18236,Nn(18236)|0);Za(274,44688,o|0)|0}return 44688}function lu(a){a=a|0;a=45024;do{a=a+-12|0;Kz(a)}while((a|0)!=44736);return}function mu(a){a=a|0;a=45316;do{a=a+-12|0;Kz(a)}while((a|0)!=45028);return}function nu(a){a=a|0;a=45488;do{a=a+-12|0;Kz(a)}while((a|0)!=45320);return}function ou(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;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=tb[c[c[k>>2]>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(Ks(d,i,a,a+168|0,g,f,0)|0)-a|0;if((j|0)<168)c[b>>2]=((j|0)/12|0|0)%7|0;l=h;return}function pu(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;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=tb[c[(c[k>>2]|0)+4>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(Ks(d,i,a,a+288|0,g,f,0)|0)-a|0;if((j|0)<288)c[b>>2]=((j|0)/12|0|0)%12|0;l=h;return}function qu(a,b,d,e,f,g,h,i){a=a|0;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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;p=iq(e)|0;c[k>>2]=p;q=Hr(k,43836)|0;Wy(p)|0;c[f>>2]=0;p=h;h=0;a:while(1){r=(p|0)!=(i|0);s=h;while(1){t=c[b>>2]|0;if(!(r&(s|0)==0)){u=t;break a}v=t;if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=c[w>>2]|0;if((x|0)==-1){c[b>>2]=0;y=0;z=1;A=0}else{y=t;z=0;A=v}}else{y=0;z=1;A=v}v=c[d>>2]|0;t=v;do if(v){w=c[v+12>>2]|0;if((w|0)==(c[v+16>>2]|0))B=tb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else B=c[w>>2]|0;if((B|0)!=-1)if(z){C=v;D=t;break}else{E=18;break a}else{c[d>>2]=0;F=0;E=16;break}}else{F=t;E=16}while(0);if((E|0)==16){E=0;if(z){E=18;break a}else{C=0;D=F}}if((kb[c[(c[q>>2]|0)+52>>2]&31](q,c[p>>2]|0,0)|0)<<24>>24==37){E=20;break}if(kb[c[(c[q>>2]|0)+12>>2]&31](q,8192,c[p>>2]|0)|0){G=p;E=28;break}H=y+12|0;t=c[H>>2]|0;I=y+16|0;if((t|0)==(c[I>>2]|0))J=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=c[t>>2]|0;t=Bb[c[(c[q>>2]|0)+28>>2]&63](q,J)|0;if((t|0)==(Bb[c[(c[q>>2]|0)+28>>2]&63](q,c[p>>2]|0)|0)){E=56;break}c[f>>2]=4;s=4}b:do if((E|0)==20){E=0;s=p+4|0;if((s|0)==(i|0)){E=21;break a}r=kb[c[(c[q>>2]|0)+52>>2]&31](q,c[s>>2]|0,0)|0;switch(r<<24>>24){case 48:case 69:{t=p+8|0;if((t|0)==(i|0)){E=26;break a}K=r;L=kb[c[(c[q>>2]|0)+52>>2]&31](q,c[t>>2]|0,0)|0;M=s;break}default:{K=0;L=r;M=p}}r=c[(c[a>>2]|0)+36>>2]|0;c[n>>2]=A;c[o>>2]=D;c[m>>2]=c[n>>2];c[k>>2]=c[o>>2];c[b>>2]=yb[r&15](a,m,k,e,f,g,L,K)|0;N=M+8|0}else if((E|0)==28){while(1){E=0;r=G+4|0;if((r|0)==(i|0)){O=i;break}if(kb[c[(c[q>>2]|0)+12>>2]&31](q,8192,c[r>>2]|0)|0){G=r;E=28}else{O=r;break}}r=y;s=C;t=C;while(1){if(r){v=c[r+12>>2]|0;if((v|0)==(c[r+16>>2]|0))P=tb[c[(c[r>>2]|0)+36>>2]&127](r)|0;else P=c[v>>2]|0;if((P|0)==-1){c[b>>2]=0;Q=1;R=0}else{Q=0;R=r}}else{Q=1;R=0}do if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))S=tb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else S=c[v>>2]|0;if((S|0)!=-1)if(Q^(s|0)==0){T=s;U=s;break}else{N=O;break b}else{c[d>>2]=0;V=0;E=43;break}}else{V=s;E=43}while(0);if((E|0)==43){E=0;if(Q){N=O;break b}else{T=V;U=0}}v=R+12|0;w=c[v>>2]|0;W=R+16|0;if((w|0)==(c[W>>2]|0))X=tb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else X=c[w>>2]|0;if(!(kb[c[(c[q>>2]|0)+12>>2]&31](q,8192,X)|0)){N=O;break b}w=c[v>>2]|0;if((w|0)==(c[W>>2]|0)){tb[c[(c[R>>2]|0)+40>>2]&127](R)|0;r=R;s=T;t=U;continue}else{c[v>>2]=w+4;r=R;s=T;t=U;continue}}}else if((E|0)==56){E=0;t=c[H>>2]|0;if((t|0)==(c[I>>2]|0))tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;else c[H>>2]=t+4;N=p+4|0}while(0);p=N;h=c[f>>2]|0}if((E|0)==18){c[f>>2]=4;u=y}else if((E|0)==21){c[f>>2]=4;u=y}else if((E|0)==26){c[f>>2]=4;u=y}if(u){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0))Y=tb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else Y=c[y>>2]|0;if((Y|0)==-1){c[b>>2]=0;Z=0;_=1}else{Z=u;_=0}}else{Z=0;_=1}u=c[d>>2]|0;do if(u){b=c[u+12>>2]|0;if((b|0)==(c[u+16>>2]|0))$=tb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else $=c[b>>2]|0;if(($|0)!=-1)if(_)break;else{E=76;break}else{c[d>>2]=0;E=74;break}}else E=74;while(0);if((E|0)==74?_:0)E=76;if((E|0)==76)c[f>>2]=c[f>>2]|2;l=j;return Z|0}function ru(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function su(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<24&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function tu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function uu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,3)|0;g=c[f>>2]|0;if((i|0)<366&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function vu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<13&(g&4|0)==0)c[b>>2]=i+-1;else c[f>>2]=g|4;l=a;return}function wu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<60&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function xu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:while(1){a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))h=tb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else h=c[g>>2]|0;if((h|0)==-1){c[b>>2]=0;i=1;break}else{i=(c[b>>2]|0)==0;break}}else i=1;while(0);a=c[d>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))j=tb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else j=c[g>>2]|0;if((j|0)!=-1)if(i){k=a;break}else{l=a;break a}else{c[d>>2]=0;m=15;break}}else m=15;while(0);if((m|0)==15){m=0;if(i){l=0;break}else k=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))n=tb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else n=c[g>>2]|0;if(!(kb[c[(c[f>>2]|0)+12>>2]&31](f,8192,n)|0)){l=k;break}g=c[b>>2]|0;a=g+12|0;o=c[a>>2]|0;if((o|0)==(c[g+16>>2]|0)){tb[c[(c[g>>2]|0)+40>>2]&127](g)|0;continue}else{c[a>>2]=o+4;continue}}k=c[b>>2]|0;do if(k){n=c[k+12>>2]|0;if((n|0)==(c[k+16>>2]|0))p=tb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else p=c[n>>2]|0;if((p|0)==-1){c[b>>2]=0;q=1;break}else{q=(c[b>>2]|0)==0;break}}else q=1;while(0);do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0))r=tb[c[(c[l>>2]|0)+36>>2]&127](l)|0;else r=c[b>>2]|0;if((r|0)!=-1)if(q)break;else{m=39;break}else{c[d>>2]=0;m=37;break}}else m=37;while(0);if((m|0)==37?q:0)m=39;if((m|0)==39)c[e>>2]=c[e>>2]|2;return}function yu(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,m=0,n=0,o=0,p=0;i=l;l=l+16|0;j=i+4|0;k=i;m=b+8|0;b=tb[c[(c[m>>2]|0)+8>>2]&127](m)|0;m=a[b+8+3>>0]|0;if(m<<24>>24<0)n=c[b+4>>2]|0;else n=m&255;m=a[b+20+3>>0]|0;if(m<<24>>24<0)o=c[b+16>>2]|0;else o=m&255;do if((n|0)!=(0-o|0)){c[k>>2]=c[f>>2];c[j>>2]=c[k>>2];m=(Ks(e,j,b,b+24|0,h,g,0)|0)-b|0;p=c[d>>2]|0;if((p|0)==12&(m|0)==0){c[d>>2]=0;break}if((p|0)<12&(m|0)==12)c[d>>2]=p+12}else c[g>>2]=c[g>>2]|4;while(0);l=i;return}function zu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<61&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Au(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,1)|0;g=c[f>>2]|0;if((i|0)<7&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Bu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,4)|0;if(!(c[f>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;c[b>>2]=j+-1900}l=a;return}function Cu(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;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=Eu(d,h,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=i+-1900;l=a;return}function Du(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))h=tb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else h=c[g>>2]|0;if((h|0)==-1){c[b>>2]=0;i=1;break}else{i=(c[b>>2]|0)==0;break}}else i=1;while(0);h=c[d>>2]|0;do if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))j=tb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else j=c[a>>2]|0;if((j|0)!=-1)if(i){k=h;l=17;break}else{l=16;break}else{c[d>>2]=0;l=14;break}}else l=14;while(0);if((l|0)==14)if(i)l=16;else{k=0;l=17}a:do if((l|0)==16)c[e>>2]=c[e>>2]|6;else if((l|0)==17){i=c[b>>2]|0;h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))m=tb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else m=c[h>>2]|0;if((kb[c[(c[f>>2]|0)+52>>2]&31](f,m,0)|0)<<24>>24!=37){c[e>>2]=c[e>>2]|4;break}h=c[b>>2]|0;i=h+12|0;j=c[i>>2]|0;if((j|0)==(c[h+16>>2]|0)){tb[c[(c[h>>2]|0)+40>>2]&127](h)|0;a=c[b>>2]|0;if(!a)n=1;else{o=a;l=25}}else{c[i>>2]=j+4;o=h;l=25}do if((l|0)==25){h=c[o+12>>2]|0;if((h|0)==(c[o+16>>2]|0))p=tb[c[(c[o>>2]|0)+36>>2]&127](o)|0;else p=c[h>>2]|0;if((p|0)==-1){c[b>>2]=0;n=1;break}else{n=(c[b>>2]|0)==0;break}}while(0);do if(k){h=c[k+12>>2]|0;if((h|0)==(c[k+16>>2]|0))q=tb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else q=c[h>>2]|0;if((q|0)!=-1)if(n)break a;else break;else{c[d>>2]=0;l=37;break}}else l=37;while(0);if((l|0)==37?!n:0)break;c[e>>2]=c[e>>2]|2}while(0);return}function Eu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;g=c[a>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))i=tb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else i=c[h>>2]|0;if((i|0)==-1){c[a>>2]=0;j=1;break}else{j=(c[a>>2]|0)==0;break}}else j=1;while(0);i=c[b>>2]|0;do if(i){g=c[i+12>>2]|0;if((g|0)==(c[i+16>>2]|0))k=tb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else k=c[g>>2]|0;if((k|0)!=-1)if(j){l=i;m=17;break}else{m=16;break}else{c[b>>2]=0;m=14;break}}else m=14;while(0);if((m|0)==14)if(j)m=16;else{l=0;m=17}a:do if((m|0)==16){c[d>>2]=c[d>>2]|6;n=0}else if((m|0)==17){j=c[a>>2]|0;i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))o=tb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else o=c[i>>2]|0;if(!(kb[c[(c[e>>2]|0)+12>>2]&31](e,2048,o)|0)){c[d>>2]=c[d>>2]|4;n=0;break}i=(kb[c[(c[e>>2]|0)+52>>2]&31](e,o,0)|0)<<24>>24;j=c[a>>2]|0;k=j+12|0;g=c[k>>2]|0;if((g|0)==(c[j+16>>2]|0)){tb[c[(c[j>>2]|0)+40>>2]&127](j)|0;p=i;q=f;r=l;s=l}else{c[k>>2]=g+4;p=i;q=f;r=l;s=l}while(1){t=p+-48|0;i=q+-1|0;g=c[a>>2]|0;do if(g){k=c[g+12>>2]|0;if((k|0)==(c[g+16>>2]|0))u=tb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else u=c[k>>2]|0;if((u|0)==-1){c[a>>2]=0;v=1;break}else{v=(c[a>>2]|0)==0;break}}else v=1;while(0);do if(s){g=c[s+12>>2]|0;if((g|0)==(c[s+16>>2]|0))w=tb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else w=c[g>>2]|0;if((w|0)==-1){c[b>>2]=0;x=0;y=0;z=1;break}else{x=r;y=r;z=(r|0)==0;break}}else{x=r;y=0;z=1}while(0);A=c[a>>2]|0;if(!((q|0)>1&(v^z)))break;g=c[A+12>>2]|0;if((g|0)==(c[A+16>>2]|0))B=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else B=c[g>>2]|0;if(!(kb[c[(c[e>>2]|0)+12>>2]&31](e,2048,B)|0)){n=t;break a}g=((kb[c[(c[e>>2]|0)+52>>2]&31](e,B,0)|0)<<24>>24)+(t*10|0)|0;k=c[a>>2]|0;j=k+12|0;h=c[j>>2]|0;if((h|0)==(c[k+16>>2]|0)){tb[c[(c[k>>2]|0)+40>>2]&127](k)|0;p=g;q=i;r=x;s=y;continue}else{c[j>>2]=h+4;p=g;q=i;r=x;s=y;continue}}do if(A){g=c[A+12>>2]|0;if((g|0)==(c[A+16>>2]|0))C=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else C=c[g>>2]|0;if((C|0)==-1){c[a>>2]=0;D=1;break}else{D=(c[a>>2]|0)==0;break}}else D=1;while(0);do if(x){g=c[x+12>>2]|0;if((g|0)==(c[x+16>>2]|0))E=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else E=c[g>>2]|0;if((E|0)!=-1)if(D){n=t;break a}else break;else{c[b>>2]=0;m=60;break}}else m=60;while(0);if((m|0)==60?!D:0){n=t;break}c[d>>2]=c[d>>2]|2;n=t}while(0);return n|0}function Fu(a){a=a|0;Ju(a+8|0);return}function Gu(a){a=a|0;Ju(a+8|0);bz(a);return}function Hu(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;f=l;l=l+112|0;e=f+4|0;j=f;c[j>>2]=e+100;Iu(b+8|0,e,j,g,h,i);i=c[j>>2]|0;j=e;e=c[d>>2]|0;while(1){if((j|0)==(i|0))break;d=a[j>>0]|0;do if(e){h=e+24|0;g=c[h>>2]|0;if((g|0)==(c[e+28>>2]|0)){b=(Bb[c[(c[e>>2]|0)+52>>2]&63](e,d&255)|0)==-1;k=b?0:e;break}else{c[h>>2]=g+1;a[g>>0]=d;k=e;break}}else k=0;while(0);j=j+1|0;e=k}l=f;return e|0}function Iu(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,m=0;i=l;l=l+16|0;j=i;a[j>>0]=37;k=j+1|0;a[k>>0]=g;m=j+2|0;a[m>>0]=h;a[j+3>>0]=0;if(h<<24>>24){a[k>>0]=h;a[m>>0]=g}c[e>>2]=d+(Ia(d|0,(c[e>>2]|0)-d|0,j|0,f|0,c[b>>2]|0)|0);l=i;return}function Ju(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)!=(Jr()|0))Do(c[a>>2]|0);return}function Ku(a){a=a|0;Ju(a+8|0);return}function Lu(a){a=a|0;Ju(a+8|0);bz(a);return}function Mu(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;e=l;l=l+416|0;d=e+8|0;i=e;c[i>>2]=d+400;Nu(a+8|0,d,i,f,g,h);h=c[i>>2]|0;i=d;d=c[b>>2]|0;while(1){if((i|0)==(h|0))break;b=c[i>>2]|0;if(!d)j=0;else{g=d+24|0;f=c[g>>2]|0;if((f|0)==(c[d+28>>2]|0))k=Bb[c[(c[d>>2]|0)+52>>2]&63](d,b)|0;else{c[g>>2]=f+4;c[f>>2]=b;k=b}j=(k|0)==-1?0:d}i=i+4|0;d=j}l=e;return d|0}function Nu(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,m=0;h=l;l=l+128|0;i=h+16|0;j=h+12|0;k=h;m=h+8|0;c[j>>2]=i+100;Iu(a,i,j,e,f,g);g=k;c[g>>2]=0;c[g+4>>2]=0;c[m>>2]=i;i=(c[d>>2]|0)-b>>2;g=Ao(c[a>>2]|0)|0;a=uo(b,m,i,k)|0;if(g|0)Ao(g)|0;c[d>>2]=b+(a<<2);l=h;return}function Ou(a){a=a|0;return}function Pu(a){a=a|0;bz(a);return}function Qu(a){a=a|0;return 127}function Ru(a){a=a|0;return 127}function Su(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Tu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Uu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Vu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;mz(a,1,45);return}function Wu(a){a=a|0;return 0}function Xu(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Yu(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Zu(a){a=a|0;return}function _u(a){a=a|0;bz(a);return}function $u(a){a=a|0;return 127}function av(a){a=a|0;return 127}function bv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function cv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function dv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function ev(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;mz(a,1,45);return}function fv(a){a=a|0;return 0}function gv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function hv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function iv(a){a=a|0;return}function jv(a){a=a|0;bz(a);return}function kv(a){a=a|0;return 2147483647}function lv(a){a=a|0;return 2147483647}function mv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function nv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function ov(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function pv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Iz(a,1,45);return}function qv(a){a=a|0;return 0}function rv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function sv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function tv(a){a=a|0;return}function uv(a){a=a|0;bz(a);return}function vv(a){a=a|0;return 2147483647}function wv(a){a=a|0;return 2147483647}function xv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function yv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function zv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Av(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Iz(a,1,45);return}function Bv(a){a=a|0;return 0}function Cv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Dv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ev(a){a=a|0;return}function Fv(a){a=a|0;bz(a);return}function Gv(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,m=0,n=0,o=0,p=0,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+240|0;j=b+24|0;k=b;m=b+140|0;n=b+16|0;o=b+12|0;p=b+8|0;q=b+136|0;r=b+4|0;s=b+36|0;c[n>>2]=m;t=n+4|0;c[t>>2]=275;c[p>>2]=iq(g)|0;u=Hr(p,43804)|0;a[q>>0]=0;c[r>>2]=c[e>>2];v=c[g+4>>2]|0;c[j>>2]=c[r>>2];if(Jv(d,j,f,p,v,h,q,u,n,o,m+100|0)|0){zb[c[(c[u>>2]|0)+32>>2]&15](u,39204,39214,j)|0;u=(c[o>>2]|0)-(c[n>>2]|0)|0;if((u|0)>98){m=Vo(u+2|0)|0;u=m;if(!m){w=0;x=u}else{w=m;x=u}}else{w=s;x=0}if(!(a[q>>0]|0))y=w;else{a[w>>0]=45;y=w+1|0}w=j+10|0;q=j;u=c[n>>2]|0;m=y;while(1){if(u>>>0>=(c[o>>2]|0)>>>0)break;y=a[u>>0]|0;v=j;while(1){if((v|0)==(w|0)){z=w;break}if((a[v>>0]|0)==y<<24>>24){z=v;break}v=v+1|0}a[m>>0]=a[39204+(z-q)>>0]|0;u=u+1|0;m=m+1|0}a[m>>0]=0;c[k>>2]=i;Zn(s,39215,k)|0;if(x|0)Wo(x)}x=c[d>>2]|0;do if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0))if((tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1){c[d>>2]=0;A=0;break}else{A=c[d>>2]|0;break}else A=x;else A=0;while(0);x=(A|0)==0;A=c[e>>2]|0;do if(A){if((c[A+12>>2]|0)==(c[A+16>>2]|0)?(tb[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1:0){c[e>>2]=0;B=27;break}if(!x)B=28}else B=27;while(0);if((B|0)==27?x:0)B=28;if((B|0)==28)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Wy(c[p>>2]|0)|0;p=c[n>>2]|0;c[n>>2]=0;if(p|0)qb[c[t>>2]&511](p);l=b;return h|0}function Hv(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=l;l=l+144|0;j=b+24|0;k=b+32|0;m=b+16|0;n=b+8|0;o=b+4|0;p=b+28|0;q=b;c[m>>2]=k;r=m+4|0;c[r>>2]=275;c[o>>2]=iq(g)|0;s=Hr(o,43804)|0;a[p>>0]=0;t=c[e>>2]|0;c[q>>2]=t;u=c[g+4>>2]|0;c[j>>2]=c[q>>2];q=t;if(Jv(d,j,f,o,u,h,p,s,m,n,k+100|0)|0){k=i+11|0;if((a[k>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0}else{a[i>>0]=0;a[k>>0]=0}if(a[p>>0]|0)zz(i,Bb[c[(c[s>>2]|0)+28>>2]&63](s,45)|0);p=Bb[c[(c[s>>2]|0)+28>>2]&63](s,48)|0;s=c[n>>2]|0;n=s+-1|0;k=c[m>>2]|0;while(1){if(k>>>0>=n>>>0)break;if((a[k>>0]|0)!=p<<24>>24)break;k=k+1|0}Kv(i,k,s)|0}s=c[d>>2]|0;do if(s)if((c[s+12>>2]|0)==(c[s+16>>2]|0))if((tb[c[(c[s>>2]|0)+36>>2]&127](s)|0)==-1){c[d>>2]=0;v=0;break}else{v=c[d>>2]|0;break}else v=s;else v=0;while(0);s=(v|0)==0;do if(t){if((c[q+12>>2]|0)==(c[q+16>>2]|0)?(tb[c[(c[t>>2]|0)+36>>2]&127](q)|0)==-1:0){c[e>>2]=0;w=22;break}if(!s)w=23}else w=22;while(0);if((w|0)==22?s:0)w=23;if((w|0)==23)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Wy(c[o>>2]|0)|0;o=c[m>>2]|0;c[m>>2]=0;if(o|0)qb[c[r>>2]&511](o);l=b;return h|0}function Iv(a){a=a|0;return}function Jv(e,f,g,h,i,j,k,m,n,o,p){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,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;q=l;l=l+512|0;r=q+88|0;s=q+96|0;t=q+80|0;u=q+72|0;v=q+68|0;w=q+500|0;x=q+497|0;y=q+496|0;z=q+56|0;A=q+44|0;B=q+32|0;C=q+20|0;D=q+8|0;E=q+4|0;F=q;c[r>>2]=p;c[t>>2]=s;p=t+4|0;c[p>>2]=275;c[u>>2]=s;c[v>>2]=s+400;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[z+(s<<2)>>2]=0;s=s+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[A+(s<<2)>>2]=0;s=s+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[B+(s<<2)>>2]=0;s=s+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[C+(s<<2)>>2]=0;s=s+1|0}c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[D+(s<<2)>>2]=0;s=s+1|0}Lv(g,h,w,x,y,z,A,B,C,E);c[o>>2]=c[n>>2];h=m+8|0;m=B+11|0;g=B+4|0;s=C+11|0;G=C+4|0;H=(i&512|0)!=0;i=A+11|0;I=A+4|0;J=D+11|0;K=D+4|0;L=w+3|0;M=z+11|0;N=z+4|0;O=0;P=0;a:while(1){if(P>>>0>=4){Q=217;break}R=c[e>>2]|0;do if(R)if((c[R+12>>2]|0)==(c[R+16>>2]|0))if((tb[c[(c[R>>2]|0)+36>>2]&127](R)|0)==-1){c[e>>2]=0;S=0;break}else{S=c[e>>2]|0;break}else S=R;else S=0;while(0);R=(S|0)==0;T=c[f>>2]|0;do if(T){if((c[T+12>>2]|0)!=(c[T+16>>2]|0))if(R){U=T;break}else{Q=217;break a}if((tb[c[(c[T>>2]|0)+36>>2]&127](T)|0)!=-1)if(R){U=T;break}else{Q=217;break a}else{c[f>>2]=0;Q=28;break}}else Q=28;while(0);if((Q|0)==28){Q=0;if(R){Q=217;break}else U=0}b:do switch(a[w+P>>0]|0){case 1:{if((P|0)==3)V=O;else{T=c[e>>2]|0;W=c[T+12>>2]|0;if((W|0)==(c[T+16>>2]|0))X=tb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else X=d[W>>0]|0;if((X&255)<<24>>24<=-1){Q=41;break a}if(!(b[(c[h>>2]|0)+(X<<24>>24<<1)>>1]&8192)){Q=41;break a}W=c[e>>2]|0;T=W+12|0;Y=c[T>>2]|0;if((Y|0)==(c[W+16>>2]|0))Z=tb[c[(c[W>>2]|0)+40>>2]&127](W)|0;else{c[T>>2]=Y+1;Z=d[Y>>0]|0}zz(D,Z&255);_=U;$=U;Q=43}break}case 0:{if((P|0)==3)V=O;else{_=U;$=U;Q=43}break}case 3:{Y=a[m>>0]|0;T=Y<<24>>24<0?c[g>>2]|0:Y&255;W=a[s>>0]|0;aa=W<<24>>24<0?c[G>>2]|0:W&255;if((T|0)==(0-aa|0))V=O;else{W=(T|0)==0;T=c[e>>2]|0;ba=c[T+12>>2]|0;ca=c[T+16>>2]|0;da=(ba|0)==(ca|0);if(W|(aa|0)==0){if(da)ea=tb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else ea=d[ba>>0]|0;aa=ea&255;if(W){W=a[s>>0]|0;if(aa<<24>>24!=(a[(W<<24>>24<0?c[C>>2]|0:C)>>0]|0)){V=O;break b}fa=c[e>>2]|0;ga=fa+12|0;ha=c[ga>>2]|0;if((ha|0)==(c[fa+16>>2]|0)){tb[c[(c[fa>>2]|0)+40>>2]&127](fa)|0;ia=a[s>>0]|0}else{c[ga>>2]=ha+1;ia=W}a[k>>0]=1;V=(ia<<24>>24<0?c[G>>2]|0:ia&255)>>>0>1?C:O;break b}W=a[m>>0]|0;if(aa<<24>>24!=(a[(W<<24>>24<0?c[B>>2]|0:B)>>0]|0)){a[k>>0]=1;V=O;break b}aa=c[e>>2]|0;ha=aa+12|0;ga=c[ha>>2]|0;if((ga|0)==(c[aa+16>>2]|0)){tb[c[(c[aa>>2]|0)+40>>2]&127](aa)|0;ja=a[m>>0]|0}else{c[ha>>2]=ga+1;ja=W}V=(ja<<24>>24<0?c[g>>2]|0:ja&255)>>>0>1?B:O;break b}if(da){da=tb[c[(c[T>>2]|0)+36>>2]&127](T)|0;W=c[e>>2]|0;ka=da;la=a[m>>0]|0;ma=W;na=c[W+12>>2]|0;oa=c[W+16>>2]|0}else{ka=d[ba>>0]|0;la=Y;ma=T;na=ba;oa=ca}ca=ma+12|0;ba=(na|0)==(oa|0);if((ka&255)<<24>>24==(a[(la<<24>>24<0?c[B>>2]|0:B)>>0]|0)){if(ba){tb[c[(c[ma>>2]|0)+40>>2]&127](ma)|0;pa=a[m>>0]|0}else{c[ca>>2]=na+1;pa=la}V=(pa<<24>>24<0?c[g>>2]|0:pa&255)>>>0>1?B:O;break b}if(ba)qa=tb[c[(c[ma>>2]|0)+36>>2]&127](ma)|0;else qa=d[na>>0]|0;ba=a[s>>0]|0;if((qa&255)<<24>>24!=(a[(ba<<24>>24<0?c[C>>2]|0:C)>>0]|0)){Q=97;break a}ca=c[e>>2]|0;T=ca+12|0;Y=c[T>>2]|0;if((Y|0)==(c[ca+16>>2]|0)){tb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;ra=a[s>>0]|0}else{c[T>>2]=Y+1;ra=ba}a[k>>0]=1;V=(ra<<24>>24<0?c[G>>2]|0:ra&255)>>>0>1?C:O}break}case 2:{if(!(P>>>0<2|(O|0)!=0)?!(H|(P|0)==2&(a[L>>0]|0)!=0):0){V=0;break b}ba=a[i>>0]|0;Y=ba<<24>>24<0;T=c[A>>2]|0;ca=Y?T:A;W=ca;c:do if((P|0)!=0?(d[w+(P+-1)>>0]|0)<2:0){da=ca+(Y?c[I>>2]|0:ba&255)|0;ga=W;while(1){ha=ga;if((ha|0)==(da|0))break;aa=a[ha>>0]|0;if(aa<<24>>24<=-1)break;if(!(b[(c[h>>2]|0)+(aa<<24>>24<<1)>>1]&8192))break;ga=ha+1|0}da=ga-W|0;ha=a[J>>0]|0;aa=ha<<24>>24<0;fa=aa?c[K>>2]|0:ha&255;if(da>>>0<=fa>>>0){ha=(aa?c[D>>2]|0:D)+fa|0;fa=ca;aa=ha+(0-da)|0;while(1){if((aa|0)==(ha|0)){sa=U;ta=ga;ua=ba;va=T;wa=U;break c}if((a[aa>>0]|0)!=(a[fa>>0]|0)){sa=U;ta=W;ua=ba;va=T;wa=U;break c}fa=fa+1|0;aa=aa+1|0}}else{sa=U;ta=W;ua=ba;va=T;wa=U}}else{sa=U;ta=W;ua=ba;va=T;wa=U}while(0);d:while(1){T=ua<<24>>24<0;ba=(T?va:A)+(T?c[I>>2]|0:ua&255)|0;T=ta;if((T|0)==(ba|0)){xa=ba;break}ba=c[e>>2]|0;do if(ba)if((c[ba+12>>2]|0)==(c[ba+16>>2]|0))if((tb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0)==-1){c[e>>2]=0;ya=0;break}else{ya=c[e>>2]|0;break}else ya=ba;else ya=0;while(0);ba=(ya|0)==0;do if(wa){if((c[wa+12>>2]|0)!=(c[wa+16>>2]|0))if(ba){za=sa;Aa=wa;break}else{xa=T;break d}if((tb[c[(c[wa>>2]|0)+36>>2]&127](wa)|0)!=-1)if(ba^(sa|0)==0){za=sa;Aa=sa;break}else{xa=T;break d}else{c[f>>2]=0;Ba=0;Q=123;break}}else{Ba=sa;Q=123}while(0);if((Q|0)==123){Q=0;if(ba){xa=T;break}else{za=Ba;Aa=0}}W=c[e>>2]|0;ca=c[W+12>>2]|0;if((ca|0)==(c[W+16>>2]|0))Ca=tb[c[(c[W>>2]|0)+36>>2]&127](W)|0;else Ca=d[ca>>0]|0;if((Ca&255)<<24>>24!=(a[T>>0]|0)){xa=T;break}ca=c[e>>2]|0;W=ca+12|0;Y=c[W>>2]|0;if((Y|0)==(c[ca+16>>2]|0))tb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;else c[W>>2]=Y+1;sa=za;ta=T+1|0;ua=a[i>>0]|0;va=c[A>>2]|0;wa=Aa}if(H?(Y=a[i>>0]|0,W=Y<<24>>24<0,(xa|0)!=((W?c[A>>2]|0:A)+(W?c[I>>2]|0:Y&255)|0)):0){Q=135;break a}else V=O;break}case 4:{Y=0;W=U;ca=U;e:while(1){aa=c[e>>2]|0;do if(aa)if((c[aa+12>>2]|0)==(c[aa+16>>2]|0))if((tb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0)==-1){c[e>>2]=0;Da=0;break}else{Da=c[e>>2]|0;break}else Da=aa;else Da=0;while(0);aa=(Da|0)==0;do if(ca){if((c[ca+12>>2]|0)!=(c[ca+16>>2]|0))if(aa){Ea=W;Fa=ca;break}else{Ga=W;break e}if((tb[c[(c[ca>>2]|0)+36>>2]&127](ca)|0)!=-1)if(aa^(W|0)==0){Ea=W;Fa=W;break}else{Ga=W;break e}else{c[f>>2]=0;Ha=0;Q=146;break}}else{Ha=W;Q=146}while(0);if((Q|0)==146){Q=0;if(aa){Ga=Ha;break}else{Ea=Ha;Fa=0}}T=c[e>>2]|0;ba=c[T+12>>2]|0;if((ba|0)==(c[T+16>>2]|0))Ia=tb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else Ia=d[ba>>0]|0;ba=Ia&255;if(ba<<24>>24>-1?(b[(c[h>>2]|0)+(Ia<<24>>24<<1)>>1]&2048)!=0:0){T=c[o>>2]|0;if((T|0)==(c[r>>2]|0)){Mv(n,o,r);Ja=c[o>>2]|0}else Ja=T;c[o>>2]=Ja+1;a[Ja>>0]=ba;Ka=Y+1|0}else{T=a[M>>0]|0;if(!(ba<<24>>24==(a[y>>0]|0)&(Y|0?((T<<24>>24<0?c[N>>2]|0:T&255)|0)!=0:0))){Ga=Ea;break}T=c[u>>2]|0;if((T|0)==(c[v>>2]|0)){Nv(t,u,v);La=c[u>>2]|0}else La=T;c[u>>2]=La+4;c[La>>2]=Y;Ka=0}T=c[e>>2]|0;ba=T+12|0;fa=c[ba>>2]|0;if((fa|0)==(c[T+16>>2]|0)){tb[c[(c[T>>2]|0)+40>>2]&127](T)|0;Y=Ka;W=Ea;ca=Fa;continue}else{c[ba>>2]=fa+1;Y=Ka;W=Ea;ca=Fa;continue}}ca=c[u>>2]|0;if(Y|0?(c[t>>2]|0)!=(ca|0):0){if((ca|0)==(c[v>>2]|0)){Nv(t,u,v);Ma=c[u>>2]|0}else Ma=ca;c[u>>2]=Ma+4;c[Ma>>2]=Y}f:do if((c[E>>2]|0)>0){ca=c[e>>2]|0;do if(ca)if((c[ca+12>>2]|0)==(c[ca+16>>2]|0))if((tb[c[(c[ca>>2]|0)+36>>2]&127](ca)|0)==-1){c[e>>2]=0;Na=0;break}else{Na=c[e>>2]|0;break}else Na=ca;else Na=0;while(0);ca=(Na|0)==0;do if(Ga){if((c[Ga+12>>2]|0)==(c[Ga+16>>2]|0)?(tb[c[(c[Ga>>2]|0)+36>>2]&127](Ga)|0)==-1:0){c[f>>2]=0;Q=178;break}if(ca)Oa=Ga;else{Q=183;break a}}else Q=178;while(0);if((Q|0)==178){Q=0;if(ca){Q=183;break a}else Oa=0}aa=c[e>>2]|0;W=c[aa+12>>2]|0;if((W|0)==(c[aa+16>>2]|0))Pa=tb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else Pa=d[W>>0]|0;if((Pa&255)<<24>>24!=(a[x>>0]|0)){Q=183;break a}W=c[e>>2]|0;aa=W+12|0;fa=c[aa>>2]|0;if((fa|0)==(c[W+16>>2]|0)){tb[c[(c[W>>2]|0)+40>>2]&127](W)|0;Qa=Oa;Ra=Oa}else{c[aa>>2]=fa+1;Qa=Oa;Ra=Oa}while(1){if((c[E>>2]|0)<=0)break f;fa=c[e>>2]|0;do if(fa)if((c[fa+12>>2]|0)==(c[fa+16>>2]|0))if((tb[c[(c[fa>>2]|0)+36>>2]&127](fa)|0)==-1){c[e>>2]=0;Sa=0;break}else{Sa=c[e>>2]|0;break}else Sa=fa;else Sa=0;while(0);fa=(Sa|0)==0;do if(Ra){if((c[Ra+12>>2]|0)!=(c[Ra+16>>2]|0))if(fa){Ta=Qa;Ua=Ra;break}else{Q=205;break a}if((tb[c[(c[Ra>>2]|0)+36>>2]&127](Ra)|0)!=-1)if(fa^(Qa|0)==0){Ta=Qa;Ua=Qa;break}else{Q=205;break a}else{c[f>>2]=0;Va=0;Q=198;break}}else{Va=Qa;Q=198}while(0);if((Q|0)==198){Q=0;if(fa){Q=205;break a}else{Ta=Va;Ua=0}}aa=c[e>>2]|0;W=c[aa+12>>2]|0;if((W|0)==(c[aa+16>>2]|0))Wa=tb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else Wa=d[W>>0]|0;if((Wa&255)<<24>>24<=-1){Q=205;break a}if(!(b[(c[h>>2]|0)+(Wa<<24>>24<<1)>>1]&2048)){Q=205;break a}if((c[o>>2]|0)==(c[r>>2]|0))Mv(n,o,r);W=c[e>>2]|0;aa=c[W+12>>2]|0;if((aa|0)==(c[W+16>>2]|0))Xa=tb[c[(c[W>>2]|0)+36>>2]&127](W)|0;else Xa=d[aa>>0]|0;aa=c[o>>2]|0;c[o>>2]=aa+1;a[aa>>0]=Xa;c[E>>2]=(c[E>>2]|0)+-1;aa=c[e>>2]|0;W=aa+12|0;ba=c[W>>2]|0;if((ba|0)==(c[aa+16>>2]|0)){tb[c[(c[aa>>2]|0)+40>>2]&127](aa)|0;Qa=Ta;Ra=Ua;continue}else{c[W>>2]=ba+1;Qa=Ta;Ra=Ua;continue}}}while(0);if((c[o>>2]|0)==(c[n>>2]|0)){Q=215;break a}else V=O;break}default:V=O}while(0);g:do if((Q|0)==43)while(1){Q=0;R=c[e>>2]|0;do if(R)if((c[R+12>>2]|0)==(c[R+16>>2]|0))if((tb[c[(c[R>>2]|0)+36>>2]&127](R)|0)==-1){c[e>>2]=0;Ya=0;break}else{Ya=c[e>>2]|0;break}else Ya=R;else Ya=0;while(0);R=(Ya|0)==0;do if($){if((c[$+12>>2]|0)!=(c[$+16>>2]|0))if(R){Za=_;_a=$;break}else{V=O;break g}if((tb[c[(c[$>>2]|0)+36>>2]&127]($)|0)!=-1)if(R^(_|0)==0){Za=_;_a=_;break}else{V=O;break g}else{c[f>>2]=0;$a=0;Q=53;break}}else{$a=_;Q=53}while(0);if((Q|0)==53){Q=0;if(R){V=O;break g}else{Za=$a;_a=0}}Y=c[e>>2]|0;ca=c[Y+12>>2]|0;if((ca|0)==(c[Y+16>>2]|0))ab=tb[c[(c[Y>>2]|0)+36>>2]&127](Y)|0;else ab=d[ca>>0]|0;if((ab&255)<<24>>24<=-1){V=O;break g}if(!(b[(c[h>>2]|0)+(ab<<24>>24<<1)>>1]&8192)){V=O;break g}ca=c[e>>2]|0;Y=ca+12|0;ba=c[Y>>2]|0;if((ba|0)==(c[ca+16>>2]|0))bb=tb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;else{c[Y>>2]=ba+1;bb=d[ba>>0]|0}zz(D,bb&255);_=Za;$=_a;Q=43}while(0);O=V;P=P+1|0}h:do if((Q|0)==41){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==97){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==135){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==183){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==205){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==215){c[j>>2]=c[j>>2]|4;cb=0}else if((Q|0)==217){i:do if(O|0){P=O+11|0;V=O+4|0;_a=1;j:while(1){$=a[P>>0]|0;if($<<24>>24<0)db=c[V>>2]|0;else db=$&255;if(_a>>>0>=db>>>0)break i;$=c[e>>2]|0;do if($)if((c[$+12>>2]|0)==(c[$+16>>2]|0))if((tb[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1){c[e>>2]=0;eb=0;break}else{eb=c[e>>2]|0;break}else eb=$;else eb=0;while(0);$=(eb|0)==0;R=c[f>>2]|0;do if(R){if((c[R+12>>2]|0)==(c[R+16>>2]|0)?(tb[c[(c[R>>2]|0)+36>>2]&127](R)|0)==-1:0){c[f>>2]=0;Q=233;break}if(!$)break j}else Q=233;while(0);if((Q|0)==233?(Q=0,$):0)break;R=c[e>>2]|0;Za=c[R+12>>2]|0;if((Za|0)==(c[R+16>>2]|0))fb=tb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else fb=d[Za>>0]|0;if((a[P>>0]|0)<0)gb=c[O>>2]|0;else gb=O;if((fb&255)<<24>>24!=(a[gb+_a>>0]|0))break;Za=_a+1|0;R=c[e>>2]|0;_=R+12|0;bb=c[_>>2]|0;if((bb|0)==(c[R+16>>2]|0)){tb[c[(c[R>>2]|0)+40>>2]&127](R)|0;_a=Za;continue}else{c[_>>2]=bb+1;_a=Za;continue}}c[j>>2]=c[j>>2]|4;cb=0;break h}while(0);_a=c[t>>2]|0;P=c[u>>2]|0;if((_a|0)!=(P|0)){c[F>>2]=0;Sr(z,_a,P,F);if(!(c[F>>2]|0)){cb=1;break}else{c[j>>2]=c[j>>2]|4;cb=0;break}}else cb=1}while(0);oz(D);oz(C);oz(B);oz(A);oz(z);z=c[t>>2]|0;c[t>>2]=0;if(z|0)qb[c[p>>2]&511](z);l=q;return cb|0}function Kv(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;f=d;g=b+11|0;h=a[g>>0]|0;if(h<<24>>24<0){i=c[b+4>>2]|0;j=(c[b+8>>2]&2147483647)+-1|0}else{i=h&255;j=10}k=e-f|0;do if(k|0){if((j-i|0)>>>0<k>>>0){wz(b,j,i+k-j|0,i,i,0,0);l=a[g>>0]|0}else l=h;if(l<<24>>24<0)m=c[b>>2]|0;else m=b;n=e+(i-f)|0;o=m+i|0;p=d;while(1){if((p|0)==(e|0))break;a[o>>0]=a[p>>0]|0;o=o+1|0;p=p+1|0}a[m+n>>0]=0;p=i+k|0;if((a[g>>0]|0)<0){c[b+4>>2]=p;break}else{a[g>>0]=p;break}}while(0);return b|0}function Lv(b,d,e,f,g,h,i,j,k,m){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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;n=l;l=l+16|0;o=n;if(b){b=Hr(d,45524)|0;rb[c[(c[b>>2]|0)+44>>2]&127](o,b);p=c[o>>2]|0;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);p=k+11|0;if((a[p>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;q=k}else{a[k>>0]=0;a[p>>0]=0;q=k}sz(k,0);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}oz(o);rb[c[(c[b>>2]|0)+28>>2]&127](o,b);q=j+11|0;if((a[q>>0]|0)<0){a[c[j>>2]>>0]=0;c[j+4>>2]=0;r=j}else{a[j>>0]=0;a[q>>0]=0;r=j}sz(j,0);c[r>>2]=c[o>>2];c[r+4>>2]=c[o+4>>2];c[r+8>>2]=c[o+8>>2];r=0;while(1){if((r|0)==3)break;c[o+(r<<2)>>2]=0;r=r+1|0}oz(o);a[f>>0]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);r=h+11|0;if((a[r>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0;s=h}else{a[h>>0]=0;a[r>>0]=0;s=h}sz(h,0);c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];s=0;while(1){if((s|0)==3)break;c[o+(s<<2)>>2]=0;s=s+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);s=i+11|0;if((a[s>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;t=i}else{a[i>>0]=0;a[s>>0]=0;t=i}sz(i,0);c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];t=0;while(1){if((t|0)==3)break;c[o+(t<<2)>>2]=0;t=t+1|0}oz(o);u=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Hr(d,45516)|0;rb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);d=k+11|0;if((a[d>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;v=k}else{a[k>>0]=0;a[d>>0]=0;v=k}sz(k,0);c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];c[v+8>>2]=c[o+8>>2];v=0;while(1){if((v|0)==3)break;c[o+(v<<2)>>2]=0;v=v+1|0}oz(o);rb[c[(c[b>>2]|0)+28>>2]&127](o,b);v=j+11|0;if((a[v>>0]|0)<0){a[c[j>>2]>>0]=0;c[j+4>>2]=0;w=j}else{a[j>>0]=0;a[v>>0]=0;w=j}sz(j,0);c[w>>2]=c[o>>2];c[w+4>>2]=c[o+4>>2];c[w+8>>2]=c[o+8>>2];w=0;while(1){if((w|0)==3)break;c[o+(w<<2)>>2]=0;w=w+1|0}oz(o);a[f>>0]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);g=h+11|0;if((a[g>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0;x=h}else{a[h>>0]=0;a[g>>0]=0;x=h}sz(h,0);c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];x=0;while(1){if((x|0)==3)break;c[o+(x<<2)>>2]=0;x=x+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);x=i+11|0;if((a[x>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;y=i}else{a[i>>0]=0;a[x>>0]=0;y=i}sz(i,0);c[y>>2]=c[o>>2];c[y+4>>2]=c[o+4>>2];c[y+8>>2]=c[o+8>>2];y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}oz(o);u=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=u;l=n;return}function Mv(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;e=a+4|0;f=(c[e>>2]|0)!=275;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?1:i;i=(c[b>>2]|0)-g|0;j=Yo(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{qb[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=276;c[b>>2]=k+i;c[d>>2]=(c[a>>2]|0)+h;return}function Nv(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;e=a+4|0;f=(c[e>>2]|0)!=275;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?4:i;i=(c[b>>2]|0)-g>>2;j=Yo(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{qb[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=276;c[b>>2]=k+(i<<2);c[d>>2]=(c[a>>2]|0)+(h>>>2<<2);return}function Ov(a){a=a|0;return}function Pv(a){a=a|0;bz(a);return}function Qv(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,m=0,n=0,o=0,p=0,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;b=l;l=l+576|0;j=b+424|0;k=b;m=b+24|0;n=b+16|0;o=b+12|0;p=b+8|0;q=b+564|0;r=b+4|0;s=b+464|0;c[n>>2]=m;t=n+4|0;c[t>>2]=275;c[p>>2]=iq(g)|0;u=Hr(p,43836)|0;a[q>>0]=0;c[r>>2]=c[e>>2];v=c[g+4>>2]|0;c[j>>2]=c[r>>2];if(Sv(d,j,f,p,v,h,q,u,n,o,m+400|0)|0){zb[c[(c[u>>2]|0)+48>>2]&15](u,39314,39324,j)|0;u=(c[o>>2]|0)-(c[n>>2]|0)|0;if((u|0)>392){m=Vo((u>>2)+2|0)|0;u=m;if(!m){w=0;x=u}else{w=m;x=u}}else{w=s;x=0}if(!(a[q>>0]|0))y=w;else{a[w>>0]=45;y=w+1|0}w=j+40|0;q=j;u=c[n>>2]|0;m=y;while(1){if(u>>>0>=(c[o>>2]|0)>>>0)break;y=c[u>>2]|0;v=j;while(1){if((v|0)==(w|0)){z=w;break}if((c[v>>2]|0)==(y|0)){z=v;break}v=v+4|0}a[m>>0]=a[39314+(z-q>>2)>>0]|0;u=u+4|0;m=m+1|0}a[m>>0]=0;c[k>>2]=i;Zn(s,39215,k)|0;if(x|0)Wo(x)}x=c[d>>2]|0;do if(x){k=c[x+12>>2]|0;if((k|0)==(c[x+16>>2]|0))A=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else A=c[k>>2]|0;if((A|0)==-1){c[d>>2]=0;B=1;break}else{B=(c[d>>2]|0)==0;break}}else B=1;while(0);A=c[e>>2]|0;do if(A){x=c[A+12>>2]|0;if((x|0)==(c[A+16>>2]|0))C=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else C=c[x>>2]|0;if((C|0)!=-1)if(B)break;else{D=32;break}else{c[e>>2]=0;D=30;break}}else D=30;while(0);if((D|0)==30?B:0)D=32;if((D|0)==32)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Wy(c[p>>2]|0)|0;p=c[n>>2]|0;c[n>>2]=0;if(p|0)qb[c[t>>2]&511](p);l=b;return h|0}function Rv(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,m=0,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=l;l=l+432|0;j=b+424|0;k=b+24|0;m=b+16|0;n=b+8|0;o=b+4|0;p=b+428|0;q=b;c[m>>2]=k;r=m+4|0;c[r>>2]=275;c[o>>2]=iq(g)|0;s=Hr(o,43836)|0;a[p>>0]=0;t=c[e>>2]|0;c[q>>2]=t;u=c[g+4>>2]|0;c[j>>2]=c[q>>2];q=t;if(Sv(d,j,f,o,u,h,p,s,m,n,k+400|0)|0){k=i+8+3|0;if((a[k>>0]|0)<0){c[c[i>>2]>>2]=0;c[i+4>>2]=0}else{c[i>>2]=0;a[k>>0]=0}if(a[p>>0]|0)Rz(i,Bb[c[(c[s>>2]|0)+44>>2]&63](s,45)|0);p=Bb[c[(c[s>>2]|0)+44>>2]&63](s,48)|0;s=c[n>>2]|0;n=s+-4|0;k=c[m>>2]|0;while(1){if(k>>>0>=n>>>0)break;if((c[k>>2]|0)!=(p|0))break;k=k+4|0}Tv(i,k,s)|0}s=c[d>>2]|0;do if(s){k=c[s+12>>2]|0;if((k|0)==(c[s+16>>2]|0))v=tb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else v=c[k>>2]|0;if((v|0)==-1){c[d>>2]=0;w=1;break}else{w=(c[d>>2]|0)==0;break}}else w=1;while(0);do if(t){v=c[q+12>>2]|0;if((v|0)==(c[q+16>>2]|0))x=tb[c[(c[t>>2]|0)+36>>2]&127](q)|0;else x=c[v>>2]|0;if((x|0)!=-1)if(w)break;else{y=27;break}else{c[e>>2]=0;y=25;break}}else y=25;while(0);if((y|0)==25?w:0)y=27;if((y|0)==27)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Wy(c[o>>2]|0)|0;o=c[m>>2]|0;c[m>>2]=0;if(o|0)qb[c[r>>2]&511](o);l=b;return h|0}function Sv(b,e,f,g,h,i,j,k,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,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,lb=0,mb=0,nb=0,ob=0,pb=0,rb=0,sb=0,ub=0,vb=0,wb=0,xb=0;p=l;l=l+512|0;q=p+96|0;r=p+104|0;s=p+88|0;t=p+80|0;u=p+76|0;v=p+504|0;w=p+72|0;x=p+68|0;y=p+56|0;z=p+44|0;A=p+32|0;B=p+20|0;C=p+8|0;D=p+4|0;E=p;c[q>>2]=o;c[s>>2]=r;o=s+4|0;c[o>>2]=275;c[t>>2]=r;c[u>>2]=r+400;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[y+(r<<2)>>2]=0;r=r+1|0}c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[z+(r<<2)>>2]=0;r=r+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[A+(r<<2)>>2]=0;r=r+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[B+(r<<2)>>2]=0;r=r+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[C+(r<<2)>>2]=0;r=r+1|0}Uv(f,g,v,w,x,y,z,A,B,D);c[n>>2]=c[m>>2];g=A+8+3|0;f=A+4|0;r=B+8+3|0;F=B+4|0;G=(h&512|0)!=0;h=z+8+3|0;H=z+4|0;I=C+8+3|0;J=C+4|0;K=v+3|0;L=y+11|0;M=y+4|0;N=0;O=0;a:while(1){if(O>>>0>=4){P=231;break}Q=c[b>>2]|0;do if(Q){R=c[Q+12>>2]|0;if((R|0)==(c[Q+16>>2]|0))S=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else S=c[R>>2]|0;if((S|0)==-1){c[b>>2]=0;T=1;break}else{T=(c[b>>2]|0)==0;break}}else T=1;while(0);Q=c[e>>2]|0;do if(Q){R=c[Q+12>>2]|0;if((R|0)==(c[Q+16>>2]|0))U=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else U=c[R>>2]|0;if((U|0)!=-1)if(T){V=Q;break}else{P=231;break a}else{c[e>>2]=0;P=31;break}}else P=31;while(0);if((P|0)==31){P=0;if(T){P=231;break}else V=0}b:do switch(a[v+O>>0]|0){case 1:{if((O|0)==3)W=N;else{Q=c[b>>2]|0;R=c[Q+12>>2]|0;if((R|0)==(c[Q+16>>2]|0))X=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else X=c[R>>2]|0;if(!(kb[c[(c[k>>2]|0)+12>>2]&31](k,8192,X)|0)){P=43;break a}R=c[b>>2]|0;Q=R+12|0;Y=c[Q>>2]|0;if((Y|0)==(c[R+16>>2]|0))Z=tb[c[(c[R>>2]|0)+40>>2]&127](R)|0;else{c[Q>>2]=Y+4;Z=c[Y>>2]|0}Rz(C,Z);_=V;$=V;P=45}break}case 0:{if((O|0)==3)W=N;else{_=V;$=V;P=45}break}case 3:{Y=a[g>>0]|0;Q=Y<<24>>24<0?c[f>>2]|0:Y&255;R=a[r>>0]|0;aa=R<<24>>24<0?c[F>>2]|0:R&255;if((Q|0)==(0-aa|0))W=N;else{R=(Q|0)==0;Q=c[b>>2]|0;ba=c[Q+12>>2]|0;ca=c[Q+16>>2]|0;da=(ba|0)==(ca|0);if(R|(aa|0)==0){if(da)ea=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else ea=c[ba>>2]|0;if(R){R=a[r>>0]|0;if((ea|0)!=(c[(R<<24>>24<0?c[B>>2]|0:B)>>2]|0)){W=N;break b}aa=c[b>>2]|0;fa=aa+12|0;ga=c[fa>>2]|0;if((ga|0)==(c[aa+16>>2]|0)){tb[c[(c[aa>>2]|0)+40>>2]&127](aa)|0;ha=a[r>>0]|0}else{c[fa>>2]=ga+4;ha=R}a[j>>0]=1;W=(ha<<24>>24<0?c[F>>2]|0:ha&255)>>>0>1?B:N;break b}R=a[g>>0]|0;if((ea|0)!=(c[(R<<24>>24<0?c[A>>2]|0:A)>>2]|0)){a[j>>0]=1;W=N;break b}ga=c[b>>2]|0;fa=ga+12|0;aa=c[fa>>2]|0;if((aa|0)==(c[ga+16>>2]|0)){tb[c[(c[ga>>2]|0)+40>>2]&127](ga)|0;ia=a[g>>0]|0}else{c[fa>>2]=aa+4;ia=R}W=(ia<<24>>24<0?c[f>>2]|0:ia&255)>>>0>1?A:N;break b}if(da){da=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;R=c[b>>2]|0;ja=da;ka=a[g>>0]|0;la=R;ma=c[R+12>>2]|0;na=c[R+16>>2]|0}else{ja=c[ba>>2]|0;ka=Y;la=Q;ma=ba;na=ca}ca=la+12|0;ba=(ma|0)==(na|0);if((ja|0)==(c[(ka<<24>>24<0?c[A>>2]|0:A)>>2]|0)){if(ba){tb[c[(c[la>>2]|0)+40>>2]&127](la)|0;oa=a[g>>0]|0}else{c[ca>>2]=ma+4;oa=ka}W=(oa<<24>>24<0?c[f>>2]|0:oa&255)>>>0>1?A:N;break b}if(ba)pa=tb[c[(c[la>>2]|0)+36>>2]&127](la)|0;else pa=c[ma>>2]|0;ba=a[r>>0]|0;if((pa|0)!=(c[(ba<<24>>24<0?c[B>>2]|0:B)>>2]|0)){P=101;break a}ca=c[b>>2]|0;Q=ca+12|0;Y=c[Q>>2]|0;if((Y|0)==(c[ca+16>>2]|0)){tb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;qa=a[r>>0]|0}else{c[Q>>2]=Y+4;qa=ba}a[j>>0]=1;W=(qa<<24>>24<0?c[F>>2]|0:qa&255)>>>0>1?B:N}break}case 2:{if(!(O>>>0<2|(N|0)!=0)?!(G|(O|0)==2&(a[K>>0]|0)!=0):0){W=0;break b}ba=a[h>>0]|0;Y=c[z>>2]|0;Q=ba<<24>>24<0?Y:z;c:do if((O|0)!=0?(d[v+(O+-1)>>0]|0)<2:0){ca=Q;R=ba;da=Y;while(1){aa=R<<24>>24<0;fa=ca;if((fa|0)==((aa?da:z)+((aa?c[H>>2]|0:R&255)<<2)|0)){ra=R;sa=da;break}if(!(kb[c[(c[k>>2]|0)+12>>2]&31](k,8192,c[fa>>2]|0)|0)){P=108;break}ca=fa+4|0;R=a[h>>0]|0;da=c[z>>2]|0}if((P|0)==108){P=0;ra=a[h>>0]|0;sa=c[z>>2]|0}da=ra<<24>>24<0?sa:z;R=da;fa=ca-R>>2;aa=a[I>>0]|0;ga=aa<<24>>24<0;ta=ga?c[J>>2]|0:aa&255;if(fa>>>0>ta>>>0){ua=V;va=R;wa=ra;xa=sa;ya=V}else{aa=(ga?c[C>>2]|0:C)+(ta<<2)|0;ta=da;da=aa+(0-fa<<2)|0;while(1){if((da|0)==(aa|0)){ua=V;va=ca;wa=ra;xa=sa;ya=V;break c}if((c[da>>2]|0)!=(c[ta>>2]|0)){ua=V;va=R;wa=ra;xa=sa;ya=V;break c}ta=ta+4|0;da=da+4|0}}}else{ua=V;va=Q;wa=ba;xa=Y;ya=V}while(0);d:while(1){Y=wa<<24>>24<0;ba=(Y?xa:z)+((Y?c[H>>2]|0:wa&255)<<2)|0;Y=va;if((Y|0)==(ba|0)){za=ba;break}ba=c[b>>2]|0;do if(ba){Q=c[ba+12>>2]|0;if((Q|0)==(c[ba+16>>2]|0))Aa=tb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else Aa=c[Q>>2]|0;if((Aa|0)==-1){c[b>>2]=0;Ba=1;break}else{Ba=(c[b>>2]|0)==0;break}}else Ba=1;while(0);do if(ya){ba=c[ya+12>>2]|0;if((ba|0)==(c[ya+16>>2]|0))Ca=tb[c[(c[ya>>2]|0)+36>>2]&127](ya)|0;else Ca=c[ba>>2]|0;if((Ca|0)!=-1)if(Ba^(ua|0)==0){Da=ua;Ea=ua;break}else{za=Y;break d}else{c[e>>2]=0;Fa=0;P=129;break}}else{Fa=ua;P=129}while(0);if((P|0)==129){P=0;if(Ba){za=Y;break}else{Da=Fa;Ea=0}}ba=c[b>>2]|0;Q=c[ba+12>>2]|0;if((Q|0)==(c[ba+16>>2]|0))Ga=tb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else Ga=c[Q>>2]|0;if((Ga|0)!=(c[Y>>2]|0)){za=Y;break}Q=c[b>>2]|0;ba=Q+12|0;da=c[ba>>2]|0;if((da|0)==(c[Q+16>>2]|0))tb[c[(c[Q>>2]|0)+40>>2]&127](Q)|0;else c[ba>>2]=da+4;ua=Da;va=Y+4|0;wa=a[h>>0]|0;xa=c[z>>2]|0;ya=Ea}if(G?(da=a[h>>0]|0,ba=da<<24>>24<0,(za|0)!=((ba?c[z>>2]|0:z)+((ba?c[H>>2]|0:da&255)<<2)|0)):0){P=141;break a}else W=N;break}case 4:{da=0;ba=V;Q=V;e:while(1){ta=c[b>>2]|0;do if(ta){R=c[ta+12>>2]|0;if((R|0)==(c[ta+16>>2]|0))Ha=tb[c[(c[ta>>2]|0)+36>>2]&127](ta)|0;else Ha=c[R>>2]|0;if((Ha|0)==-1){c[b>>2]=0;Ia=1;break}else{Ia=(c[b>>2]|0)==0;break}}else Ia=1;while(0);do if(Q){ta=c[Q+12>>2]|0;if((ta|0)==(c[Q+16>>2]|0))Ja=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else Ja=c[ta>>2]|0;if((Ja|0)!=-1)if(Ia^(ba|0)==0){Ka=ba;La=ba;break}else{Ma=ba;break e}else{c[e>>2]=0;Na=0;P=155;break}}else{Na=ba;P=155}while(0);if((P|0)==155){P=0;if(Ia){Ma=Na;break}else{Ka=Na;La=0}}ta=c[b>>2]|0;Y=c[ta+12>>2]|0;if((Y|0)==(c[ta+16>>2]|0))Oa=tb[c[(c[ta>>2]|0)+36>>2]&127](ta)|0;else Oa=c[Y>>2]|0;if(kb[c[(c[k>>2]|0)+12>>2]&31](k,2048,Oa)|0){Y=c[n>>2]|0;if((Y|0)==(c[q>>2]|0)){Vv(m,n,q);Pa=c[n>>2]|0}else Pa=Y;c[n>>2]=Pa+4;c[Pa>>2]=Oa;Qa=da+1|0}else{Y=a[L>>0]|0;if(!((Oa|0)==(c[x>>2]|0)&(da|0?((Y<<24>>24<0?c[M>>2]|0:Y&255)|0)!=0:0))){Ma=Ka;break}Y=c[t>>2]|0;if((Y|0)==(c[u>>2]|0)){Nv(s,t,u);Ra=c[t>>2]|0}else Ra=Y;c[t>>2]=Ra+4;c[Ra>>2]=da;Qa=0}Y=c[b>>2]|0;ta=Y+12|0;R=c[ta>>2]|0;if((R|0)==(c[Y+16>>2]|0)){tb[c[(c[Y>>2]|0)+40>>2]&127](Y)|0;da=Qa;ba=Ka;Q=La;continue}else{c[ta>>2]=R+4;da=Qa;ba=Ka;Q=La;continue}}Q=c[t>>2]|0;if(da|0?(c[s>>2]|0)!=(Q|0):0){if((Q|0)==(c[u>>2]|0)){Nv(s,t,u);Sa=c[t>>2]|0}else Sa=Q;c[t>>2]=Sa+4;c[Sa>>2]=da}f:do if((c[D>>2]|0)>0){Q=c[b>>2]|0;do if(Q){ba=c[Q+12>>2]|0;if((ba|0)==(c[Q+16>>2]|0))Ta=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else Ta=c[ba>>2]|0;if((Ta|0)==-1){c[b>>2]=0;Ua=1;break}else{Ua=(c[b>>2]|0)==0;break}}else Ua=1;while(0);do if(Ma){Q=c[Ma+12>>2]|0;if((Q|0)==(c[Ma+16>>2]|0))Va=tb[c[(c[Ma>>2]|0)+36>>2]&127](Ma)|0;else Va=c[Q>>2]|0;if((Va|0)!=-1)if(Ua){Wa=Ma;break}else{P=195;break a}else{c[e>>2]=0;P=189;break}}else P=189;while(0);if((P|0)==189){P=0;if(Ua){P=195;break a}else Wa=0}Q=c[b>>2]|0;ba=c[Q+12>>2]|0;if((ba|0)==(c[Q+16>>2]|0))Xa=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else Xa=c[ba>>2]|0;if((Xa|0)!=(c[w>>2]|0)){P=195;break a}ba=c[b>>2]|0;Q=ba+12|0;R=c[Q>>2]|0;if((R|0)==(c[ba+16>>2]|0)){tb[c[(c[ba>>2]|0)+40>>2]&127](ba)|0;Ya=Wa;Za=Wa}else{c[Q>>2]=R+4;Ya=Wa;Za=Wa}while(1){if((c[D>>2]|0)<=0)break f;R=c[b>>2]|0;do if(R){Q=c[R+12>>2]|0;if((Q|0)==(c[R+16>>2]|0))_a=tb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else _a=c[Q>>2]|0;if((_a|0)==-1){c[b>>2]=0;$a=1;break}else{$a=(c[b>>2]|0)==0;break}}else $a=1;while(0);do if(Za){R=c[Za+12>>2]|0;if((R|0)==(c[Za+16>>2]|0))ab=tb[c[(c[Za>>2]|0)+36>>2]&127](Za)|0;else ab=c[R>>2]|0;if((ab|0)!=-1)if($a^(Ya|0)==0){bb=Ya;cb=Ya;break}else{P=219;break a}else{c[e>>2]=0;db=0;P=213;break}}else{db=Ya;P=213}while(0);if((P|0)==213){P=0;if($a){P=219;break a}else{bb=db;cb=0}}R=c[b>>2]|0;Q=c[R+12>>2]|0;if((Q|0)==(c[R+16>>2]|0))eb=tb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else eb=c[Q>>2]|0;if(!(kb[c[(c[k>>2]|0)+12>>2]&31](k,2048,eb)|0)){P=219;break a}if((c[n>>2]|0)==(c[q>>2]|0))Vv(m,n,q);Q=c[b>>2]|0;R=c[Q+12>>2]|0;if((R|0)==(c[Q+16>>2]|0))fb=tb[c[(c[Q>>2]|0)+36>>2]&127](Q)|0;else fb=c[R>>2]|0;R=c[n>>2]|0;c[n>>2]=R+4;c[R>>2]=fb;c[D>>2]=(c[D>>2]|0)+-1;R=c[b>>2]|0;Q=R+12|0;ba=c[Q>>2]|0;if((ba|0)==(c[R+16>>2]|0)){tb[c[(c[R>>2]|0)+40>>2]&127](R)|0;Ya=bb;Za=cb;continue}else{c[Q>>2]=ba+4;Ya=bb;Za=cb;continue}}}while(0);if((c[n>>2]|0)==(c[m>>2]|0)){P=229;break a}else W=N;break}default:W=N}while(0);g:do if((P|0)==45)while(1){P=0;da=c[b>>2]|0;do if(da){ba=c[da+12>>2]|0;if((ba|0)==(c[da+16>>2]|0))gb=tb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else gb=c[ba>>2]|0;if((gb|0)==-1){c[b>>2]=0;hb=1;break}else{hb=(c[b>>2]|0)==0;break}}else hb=1;while(0);do if($){da=c[$+12>>2]|0;if((da|0)==(c[$+16>>2]|0))ib=tb[c[(c[$>>2]|0)+36>>2]&127]($)|0;else ib=c[da>>2]|0;if((ib|0)!=-1)if(hb^(_|0)==0){jb=_;lb=_;break}else{W=N;break g}else{c[e>>2]=0;mb=0;P=58;break}}else{mb=_;P=58}while(0);if((P|0)==58){P=0;if(hb){W=N;break g}else{jb=mb;lb=0}}da=c[b>>2]|0;ba=c[da+12>>2]|0;if((ba|0)==(c[da+16>>2]|0))nb=tb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else nb=c[ba>>2]|0;if(!(kb[c[(c[k>>2]|0)+12>>2]&31](k,8192,nb)|0)){W=N;break g}ba=c[b>>2]|0;da=ba+12|0;Q=c[da>>2]|0;if((Q|0)==(c[ba+16>>2]|0))ob=tb[c[(c[ba>>2]|0)+40>>2]&127](ba)|0;else{c[da>>2]=Q+4;ob=c[Q>>2]|0}Rz(C,ob);_=jb;$=lb;P=45}while(0);N=W;O=O+1|0}h:do if((P|0)==43){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==101){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==141){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==195){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==219){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==229){c[i>>2]=c[i>>2]|4;pb=0}else if((P|0)==231){i:do if(N|0){O=N+8+3|0;W=N+4|0;lb=1;j:while(1){$=a[O>>0]|0;if($<<24>>24<0)rb=c[W>>2]|0;else rb=$&255;if(lb>>>0>=rb>>>0)break i;$=c[b>>2]|0;do if($){jb=c[$+12>>2]|0;if((jb|0)==(c[$+16>>2]|0))sb=tb[c[(c[$>>2]|0)+36>>2]&127]($)|0;else sb=c[jb>>2]|0;if((sb|0)==-1){c[b>>2]=0;ub=1;break}else{ub=(c[b>>2]|0)==0;break}}else ub=1;while(0);$=c[e>>2]|0;do if($){jb=c[$+12>>2]|0;if((jb|0)==(c[$+16>>2]|0))vb=tb[c[(c[$>>2]|0)+36>>2]&127]($)|0;else vb=c[jb>>2]|0;if((vb|0)!=-1)if(ub)break;else break j;else{c[e>>2]=0;P=250;break}}else P=250;while(0);if((P|0)==250?(P=0,ub):0)break;$=c[b>>2]|0;jb=c[$+12>>2]|0;if((jb|0)==(c[$+16>>2]|0))wb=tb[c[(c[$>>2]|0)+36>>2]&127]($)|0;else wb=c[jb>>2]|0;if((a[O>>0]|0)<0)xb=c[N>>2]|0;else xb=N;if((wb|0)!=(c[xb+(lb<<2)>>2]|0))break;jb=lb+1|0;$=c[b>>2]|0;_=$+12|0;ob=c[_>>2]|0;if((ob|0)==(c[$+16>>2]|0)){tb[c[(c[$>>2]|0)+40>>2]&127]($)|0;lb=jb;continue}else{c[_>>2]=ob+4;lb=jb;continue}}c[i>>2]=c[i>>2]|4;pb=0;break h}while(0);lb=c[s>>2]|0;O=c[t>>2]|0;if((lb|0)!=(O|0)){c[E>>2]=0;Sr(y,lb,O,E);if(!(c[E>>2]|0)){pb=1;break}else{c[i>>2]=c[i>>2]|4;pb=0;break}}else pb=1}while(0);Kz(C);Kz(B);Kz(A);Kz(z);oz(y);y=c[s>>2]|0;c[s>>2]=0;if(y|0)qb[c[o>>2]&511](y);l=p;return pb|0}function Tv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=d;g=b+8|0;h=g+3|0;i=a[h>>0]|0;if(i<<24>>24<0){j=c[b+4>>2]|0;k=(c[g>>2]&2147483647)+-1|0}else{j=i&255;k=1}g=e-f>>2;do if(g|0){if((k-j|0)>>>0<g>>>0){Qz(b,k,j+g-k|0,j,j,0,0);l=a[h>>0]|0}else l=i;m=l<<24>>24<0;if(m)n=c[b>>2]|0;else n=b;o=j+((e-f|0)>>>2)|0;p=n+(j<<2)|0;q=d;while(1){if((q|0)==(e|0))break;c[p>>2]=c[q>>2];p=p+4|0;q=q+4|0}c[n+(o<<2)>>2]=0;q=j+g|0;if(m){c[b+4>>2]=q;break}else{a[h>>0]=q;break}}while(0);return b|0}function Uv(b,d,e,f,g,h,i,j,k,m){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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0;n=l;l=l+16|0;o=n;if(b){b=Hr(d,45540)|0;rb[c[(c[b>>2]|0)+44>>2]&127](o,b);p=c[o>>2]|0;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);p=k+8+3|0;if((a[p>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[p>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];p=0;while(1){if((p|0)==3)break;c[o+(p<<2)>>2]=0;p=p+1|0}Kz(o);rb[c[(c[b>>2]|0)+28>>2]&127](o,b);p=j+8+3|0;if((a[p>>0]|0)<0){c[c[j>>2]>>2]=0;c[j+4>>2]=0}else{c[j>>2]=0;a[p>>0]=0}Oz(j,0);c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];p=0;while(1){if((p|0)==3)break;c[o+(p<<2)>>2]=0;p=p+1|0}Kz(o);c[f>>2]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);p=h+11|0;if((a[p>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0;q=h}else{a[h>>0]=0;a[p>>0]=0;q=h}sz(h,0);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);q=i+8+3|0;if((a[q>>0]|0)<0){c[c[i>>2]>>2]=0;c[i+4>>2]=0}else{c[i>>2]=0;a[q>>0]=0}Oz(i,0);c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}Kz(o);r=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Hr(d,45532)|0;rb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);d=k+8+3|0;if((a[d>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[d>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];k=0;while(1){if((k|0)==3)break;c[o+(k<<2)>>2]=0;k=k+1|0}Kz(o);rb[c[(c[b>>2]|0)+28>>2]&127](o,b);k=j+8+3|0;if((a[k>>0]|0)<0){c[c[j>>2]>>2]=0;c[j+4>>2]=0}else{c[j>>2]=0;a[k>>0]=0}Oz(j,0);c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];j=0;while(1){if((j|0)==3)break;c[o+(j<<2)>>2]=0;j=j+1|0}Kz(o);c[f>>2]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);g=h+11|0;if((a[g>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0;s=h}else{a[h>>0]=0;a[g>>0]=0;s=h}sz(h,0);c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];s=0;while(1){if((s|0)==3)break;c[o+(s<<2)>>2]=0;s=s+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);s=i+8+3|0;if((a[s>>0]|0)<0){c[c[i>>2]>>2]=0;c[i+4>>2]=0}else{c[i>>2]=0;a[s>>0]=0}Oz(i,0);c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];i=0;while(1){if((i|0)==3)break;c[o+(i<<2)>>2]=0;i=i+1|0}Kz(o);r=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=r;l=n;return}function Vv(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;e=a+4|0;f=(c[e>>2]|0)!=275;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?4:i;i=(c[b>>2]|0)-g>>2;j=Yo(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{qb[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=276;c[b>>2]=k+(i<<2);c[d>>2]=(c[a>>2]|0)+(h>>>2<<2);return}function Wv(a){a=a|0;return}function Xv(a){a=a|0;bz(a);return}function Yv(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+384|0;j=b+8|0;k=b;m=b+284|0;n=b+72|0;o=b+184|0;p=b+68|0;q=b+180|0;r=b+177|0;s=b+176|0;t=b+56|0;u=b+44|0;v=b+32|0;w=b+28|0;x=b+76|0;y=b+24|0;z=b+16|0;A=b+20|0;c[n>>2]=m;h[j>>3]=i;B=Vn(m,100,39420,j)|0;if(B>>>0>99){m=Jr()|0;h[k>>3]=i;C=Ys(n,m,39420,k)|0;k=c[n>>2]|0;if(!k)D=c[n>>2]|0;else D=k;k=Vo(C)|0;m=k;if(!k){E=0;F=C;G=m;H=D}else{E=k;F=C;G=m;H=D}}else{E=o;F=B;G=0;H=0}c[p>>2]=iq(f)|0;B=Hr(p,43804)|0;o=c[n>>2]|0;zb[c[(c[B>>2]|0)+32>>2]&15](B,o,o+F|0,E)|0;if(!F)I=0;else I=(a[c[n>>2]>>0]|0)==45;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[t+(n<<2)>>2]=0;n=n+1|0}c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[u+(n<<2)>>2]=0;n=n+1|0}c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[v+(n<<2)>>2]=0;n=n+1|0}_v(e,I,p,q,r,s,t,u,v,w);e=c[w>>2]|0;if((F|0)>(e|0)){n=a[v+11>>0]|0;o=a[u+11>>0]|0;J=(n<<24>>24<0?c[v+4>>2]|0:n&255)+(F-e<<1|1)+(o<<24>>24<0?c[u+4>>2]|0:o&255)|0}else{o=a[v+11>>0]|0;n=a[u+11>>0]|0;J=(o<<24>>24<0?c[v+4>>2]|0:o&255)+2+(n<<24>>24<0?c[u+4>>2]|0:n&255)|0}n=J+e|0;if(n>>>0>100){J=Vo(n)|0;n=J;if(!J){K=0;L=n;M=c[w>>2]|0}else{K=J;L=n;M=e}}else{K=x;L=0;M=e}$v(K,y,z,c[f+4>>2]|0,E,E+F|0,B,I,q,a[r>>0]|0,a[s>>0]|0,t,u,v,M);c[A>>2]=c[d>>2];d=c[y>>2]|0;y=c[z>>2]|0;c[j>>2]=c[A>>2];A=qe(j,K,d,y,f,g)|0;if(L|0)Wo(L);oz(v);oz(u);oz(t);Wy(c[p>>2]|0)|0;if(G|0)Wo(G);if(H|0)Wo(H);l=b;return A|0}function Zv(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,m=0,n=0,o=0,p=0,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;b=l;l=l+176|0;i=b+56|0;j=b+52|0;k=b+164|0;m=b+161|0;n=b+160|0;o=b+40|0;p=b+28|0;q=b+16|0;r=b+12|0;s=b+60|0;t=b+8|0;u=b+4|0;v=b;c[j>>2]=iq(f)|0;w=Hr(j,43804)|0;x=h+11|0;y=a[x>>0]|0;z=y<<24>>24<0;A=h+4|0;if(!((z?c[A>>2]|0:y&255)|0))B=0;else{y=a[(z?c[h>>2]|0:h)>>0]|0;B=y<<24>>24==(Bb[c[(c[w>>2]|0)+28>>2]&63](w,45)|0)<<24>>24};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[q+(y<<2)>>2]=0;y=y+1|0}_v(e,B,j,k,m,n,o,p,q,r);e=a[x>>0]|0;y=c[A>>2]|0;z=e<<24>>24<0?y:e&255;C=c[r>>2]|0;if((z|0)>(C|0)){D=a[q+11>>0]|0;E=a[p+11>>0]|0;F=(D<<24>>24<0?c[q+4>>2]|0:D&255)+(z-C<<1|1)+(E<<24>>24<0?c[p+4>>2]|0:E&255)|0}else{E=a[q+11>>0]|0;z=a[p+11>>0]|0;F=(E<<24>>24<0?c[q+4>>2]|0:E&255)+2+(z<<24>>24<0?c[p+4>>2]|0:z&255)|0}z=F+C|0;if(z>>>0>100){F=Vo(z)|0;z=F;if(!F){G=0;H=z;I=c[r>>2]|0;J=a[x>>0]|0;K=c[A>>2]|0}else{G=F;H=z;I=C;J=e;K=y}}else{G=s;H=0;I=C;J=e;K=y}y=J<<24>>24<0;e=y?c[h>>2]|0:h;$v(G,t,u,c[f+4>>2]|0,e,e+(y?K:J&255)|0,w,B,k,a[m>>0]|0,a[n>>0]|0,o,p,q,I);c[v>>2]=c[d>>2];d=c[t>>2]|0;t=c[u>>2]|0;c[i>>2]=c[v>>2];v=qe(i,G,d,t,f,g)|0;if(H|0)Wo(H);oz(q);oz(p);oz(o);Wy(c[j>>2]|0)|0;l=b;return v|0}function _v(b,d,e,f,g,h,i,j,k,m){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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=l;l=l+16|0;o=n;if(b){b=Hr(e,45524)|0;if(d){rb[c[(c[b>>2]|0)+44>>2]&127](o,b);p=c[o>>2]|0;a[f>>0]=p;a[f+1>>0]=p>>8;a[f+2>>0]=p>>16;a[f+3>>0]=p>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);p=k+11|0;if((a[p>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;q=k}else{a[k>>0]=0;a[p>>0]=0;q=k}sz(k,0);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}oz(o);r=b}else{rb[c[(c[b>>2]|0)+40>>2]&127](o,b);q=c[o>>2]|0;a[f>>0]=q;a[f+1>>0]=q>>8;a[f+2>>0]=q>>16;a[f+3>>0]=q>>24;rb[c[(c[b>>2]|0)+28>>2]&127](o,b);q=k+11|0;if((a[q>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;s=k}else{a[k>>0]=0;a[q>>0]=0;s=k}sz(k,0);c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];s=0;while(1){if((s|0)==3)break;c[o+(s<<2)>>2]=0;s=s+1|0}oz(o);r=b}a[g>>0]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[r>>2]|0)+20>>2]&127](o,b);s=i+11|0;if((a[s>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;t=i}else{a[i>>0]=0;a[s>>0]=0;t=i}sz(i,0);c[t>>2]=c[o>>2];c[t+4>>2]=c[o+4>>2];c[t+8>>2]=c[o+8>>2];t=0;while(1){if((t|0)==3)break;c[o+(t<<2)>>2]=0;t=t+1|0}oz(o);rb[c[(c[r>>2]|0)+24>>2]&127](o,b);r=j+11|0;if((a[r>>0]|0)<0){a[c[j>>2]>>0]=0;c[j+4>>2]=0;u=j}else{a[j>>0]=0;a[r>>0]=0;u=j}sz(j,0);c[u>>2]=c[o>>2];c[u+4>>2]=c[o+4>>2];c[u+8>>2]=c[o+8>>2];u=0;while(1){if((u|0)==3)break;c[o+(u<<2)>>2]=0;u=u+1|0}oz(o);v=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Hr(e,45516)|0;if(d){rb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);d=k+11|0;if((a[d>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;w=k}else{a[k>>0]=0;a[d>>0]=0;w=k}sz(k,0);c[w>>2]=c[o>>2];c[w+4>>2]=c[o+4>>2];c[w+8>>2]=c[o+8>>2];w=0;while(1){if((w|0)==3)break;c[o+(w<<2)>>2]=0;w=w+1|0}oz(o);x=b}else{rb[c[(c[b>>2]|0)+40>>2]&127](o,b);w=c[o>>2]|0;a[f>>0]=w;a[f+1>>0]=w>>8;a[f+2>>0]=w>>16;a[f+3>>0]=w>>24;rb[c[(c[b>>2]|0)+28>>2]&127](o,b);w=k+11|0;if((a[w>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0;y=k}else{a[k>>0]=0;a[w>>0]=0;y=k}sz(k,0);c[y>>2]=c[o>>2];c[y+4>>2]=c[o+4>>2];c[y+8>>2]=c[o+8>>2];y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}oz(o);x=b}a[g>>0]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[x>>2]|0)+20>>2]&127](o,b);h=i+11|0;if((a[h>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;z=i}else{a[i>>0]=0;a[h>>0]=0;z=i}sz(i,0);c[z>>2]=c[o>>2];c[z+4>>2]=c[o+4>>2];c[z+8>>2]=c[o+8>>2];z=0;while(1){if((z|0)==3)break;c[o+(z<<2)>>2]=0;z=z+1|0}oz(o);rb[c[(c[x>>2]|0)+24>>2]&127](o,b);x=j+11|0;if((a[x>>0]|0)<0){a[c[j>>2]>>0]=0;c[j+4>>2]=0;A=j}else{a[j>>0]=0;a[x>>0]=0;A=j}sz(j,0);c[A>>2]=c[o>>2];c[A+4>>2]=c[o+4>>2];c[A+8>>2]=c[o+8>>2];A=0;while(1){if((A|0)==3)break;c[o+(A<<2)>>2]=0;A=A+1|0}oz(o);v=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=v;l=n;return}function $v(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;c[f>>2]=d;s=q+11|0;t=q+4|0;u=p+11|0;v=p+4|0;w=(g&512|0)==0;x=j+8|0;y=(r|0)>0;z=o+11|0;A=o+4|0;B=0;C=h;while(1){if((B|0)==4)break;a:do switch(a[l+B>>0]|0){case 0:{c[e>>2]=c[f>>2];D=C;break}case 1:{c[e>>2]=c[f>>2];h=Bb[c[(c[j>>2]|0)+28>>2]&63](j,32)|0;E=c[f>>2]|0;c[f>>2]=E+1;a[E>>0]=h;D=C;break}case 3:{h=a[s>>0]|0;E=h<<24>>24<0;if(!((E?c[t>>2]|0:h&255)|0))D=C;else{h=a[(E?c[q>>2]|0:q)>>0]|0;E=c[f>>2]|0;c[f>>2]=E+1;a[E>>0]=h;D=C}break}case 2:{h=a[u>>0]|0;E=h<<24>>24<0;F=E?c[v>>2]|0:h&255;if(w|(F|0)==0)D=C;else{h=E?c[p>>2]|0:p;E=h+F|0;F=c[f>>2]|0;G=h;while(1){if((G|0)==(E|0))break;a[F>>0]=a[G>>0]|0;F=F+1|0;G=G+1|0}c[f>>2]=F;D=C}break}case 4:{G=c[f>>2]|0;E=k?C+1|0:C;h=E;while(1){if(h>>>0>=i>>>0)break;H=a[h>>0]|0;if(H<<24>>24<=-1)break;if(!(b[(c[x>>2]|0)+(H<<24>>24<<1)>>1]&2048))break;h=h+1|0}if(y){F=r;H=h;while(1){I=(F|0)>0;if(!(H>>>0>E>>>0&I))break;J=H+-1|0;K=a[J>>0]|0;L=c[f>>2]|0;c[f>>2]=L+1;a[L>>0]=K;F=F+-1|0;H=J}if(I)M=Bb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;else M=0;J=F;while(1){N=c[f>>2]|0;c[f>>2]=N+1;if((J|0)<=0)break;a[N>>0]=M;J=J+-1|0}a[N>>0]=m;O=H}else O=h;b:do if((O|0)==(E|0)){J=Bb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;F=c[f>>2]|0;c[f>>2]=F+1;a[F>>0]=J}else{J=a[z>>0]|0;F=J<<24>>24<0;if(!((F?c[A>>2]|0:J&255)|0)){P=-1;Q=0;R=0;S=O}else{P=a[(F?c[o>>2]|0:o)>>0]|0;Q=0;R=0;S=O}while(1){if((S|0)==(E|0))break b;if((R|0)==(P|0)){F=c[f>>2]|0;c[f>>2]=F+1;a[F>>0]=n;F=Q+1|0;J=a[z>>0]|0;K=J<<24>>24<0;if(F>>>0<(K?c[A>>2]|0:J&255)>>>0){J=a[(K?c[o>>2]|0:o)+F>>0]|0;T=J<<24>>24==127?-1:J<<24>>24;U=F;V=0}else{T=R;U=F;V=0}}else{T=P;U=Q;V=R}F=S+-1|0;J=a[F>>0]|0;K=c[f>>2]|0;c[f>>2]=K+1;a[K>>0]=J;P=T;Q=U;R=V+1|0;S=F}}while(0);h=c[f>>2]|0;if((G|0)==(h|0))D=E;else{H=h;h=G;while(1){F=H+-1|0;if(h>>>0>=F>>>0){D=E;break a}J=a[h>>0]|0;a[h>>0]=a[F>>0]|0;a[F>>0]=J;H=F;h=h+1|0}}break}default:D=C}while(0);B=B+1|0;C=D}D=a[s>>0]|0;s=D<<24>>24<0;C=s?c[t>>2]|0:D&255;if(C>>>0>1){D=s?c[q>>2]|0:q;q=D+C|0;C=c[f>>2]|0;s=D;while(1){D=s+1|0;if((D|0)==(q|0))break;a[C>>0]=a[D>>0]|0;C=C+1|0;s=D}c[f>>2]=C}switch((g&176)<<24>>24){case 32:{c[e>>2]=c[f>>2];break}case 16:break;default:c[e>>2]=d}return}function aw(a){a=a|0;return}function bw(a){a=a|0;bz(a);return} function Hn(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=b+104|0;f=c[e>>2]|0;if((f|0)!=0?(c[b+108>>2]|0)>=(f|0):0)g=4;else{f=Jn(b)|0;if((f|0)>=0){h=c[e>>2]|0;e=c[b+8>>2]|0;if(h){i=c[b+4>>2]|0;j=h-(c[b+108>>2]|0)|0;h=e;if((e-i|0)<(j|0)){k=h;g=9}else{c[b+100>>2]=i+(j+-1);l=h}}else{k=e;g=9}if((g|0)==9){c[b+100>>2]=e;l=k}k=b+4|0;if(!l)m=c[k>>2]|0;else{e=c[k>>2]|0;k=b+108|0;c[k>>2]=l+1-e+(c[k>>2]|0);m=e}e=m+-1|0;if((d[e>>0]|0|0)==(f|0))n=f;else{a[e>>0]=f;n=f}}else g=4}if((g|0)==4){c[b+100>>2]=0;n=-1}return n|0}function In(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=a+4|0;f=c[e>>2]|0;g=a+100|0;if(f>>>0<(c[g>>2]|0)>>>0){c[e>>2]=f+1;h=d[f>>0]|0}else h=Hn(a)|0;switch(h|0){case 43:case 45:{f=(h|0)==45&1;i=c[e>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[e>>2]=i+1;j=d[i>>0]|0}else j=Hn(a)|0;if((b|0)!=0&(j+-48|0)>>>0>9?(c[g>>2]|0)!=0:0){c[e>>2]=(c[e>>2]|0)+-1;k=f;l=j}else{k=f;l=j}break}default:{k=0;l=h}}if((l+-48|0)>>>0>9)if(!(c[g>>2]|0)){m=-2147483648;n=0}else{c[e>>2]=(c[e>>2]|0)+-1;m=-2147483648;n=0}else{h=0;j=l;while(1){h=j+-48+(h*10|0)|0;l=c[e>>2]|0;if(l>>>0<(c[g>>2]|0)>>>0){c[e>>2]=l+1;o=d[l>>0]|0}else o=Hn(a)|0;if(!((o+-48|0)>>>0<10&(h|0)<214748364))break;else j=o}j=((h|0)<0)<<31>>31;if((o+-48|0)>>>0<10){l=o;f=h;b=j;while(1){i=oB(f|0,b|0,10,0)|0;p=E;q=gB(l|0,((l|0)<0)<<31>>31|0,-48,-1)|0;r=gB(q|0,E|0,i|0,p|0)|0;p=E;i=c[e>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[e>>2]=i+1;s=d[i>>0]|0}else s=Hn(a)|0;if((s+-48|0)>>>0<10&((p|0)<21474836|(p|0)==21474836&r>>>0<2061584302)){l=s;f=r;b=p}else{t=s;u=r;v=p;break}}}else{t=o;u=h;v=j}if((t+-48|0)>>>0<10)do{t=c[e>>2]|0;if(t>>>0<(c[g>>2]|0)>>>0){c[e>>2]=t+1;w=d[t>>0]|0}else w=Hn(a)|0}while((w+-48|0)>>>0<10);if(c[g>>2]|0)c[e>>2]=(c[e>>2]|0)+-1;e=(k|0)!=0;k=cB(0,0,u|0,v|0)|0;m=e?E:v;n=e?k:u}E=m;return n|0}function Jn(a){a=a|0;var b=0,e=0,f=0;b=l;l=l+16|0;e=b;if((c[a+8>>2]|0)==0?(Kn(a)|0)!=0:0)f=-1;else if((kb[c[a+32>>2]&31](a,e,1)|0)==1)f=d[e>>0]|0;else f=-1;l=b;return f|0}function Kn(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=b+20|0;d=b+44|0;if((c[e>>2]|0)>>>0>(c[d>>2]|0)>>>0)kb[c[b+36>>2]&31](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[e>>2]=0;e=c[b>>2]|0;if(e&20)if(!(e&4))f=-1;else{c[b>>2]=e|32;f=-1}else{e=c[d>>2]|0;c[b+8>>2]=e;c[b+4>>2]=e;f=0}return f|0}function Ln(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=d&255;a:do if(!e)f=b+(kn(b)|0)|0;else{if(!(b&3))g=b;else{h=d&255;i=b;while(1){j=a[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){f=i;break a}j=i+1|0;if(!(j&3)){g=j;break}else i=j}}i=T(e,16843009)|0;h=c[g>>2]|0;b:do if(!((h&-2139062144^-2139062144)&h+-16843009)){j=g;k=h;while(1){l=k^i;if((l&-2139062144^-2139062144)&l+-16843009|0){m=j;break b}l=j+4|0;k=c[l>>2]|0;if((k&-2139062144^-2139062144)&k+-16843009|0){m=l;break}else j=l}}else m=g;while(0);i=d&255;h=m;while(1){j=a[h>>0]|0;if(j<<24>>24==0?1:j<<24>>24==i<<24>>24){f=h;break}else h=h+1|0}}while(0);return f|0}function Mn(a,b,c){a=a|0;b=b|0;c=c|0;return +(+En(a,b,2))}function Nn(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 On(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Pn(a,b,c,-1,-1)|0;return d|0}function Pn(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;g=l;l=l+112|0;h=g;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;j=h+8|0;c[j>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;Fn(h,0);k=Qn(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[j>>2]|0));l=g;return k|0}function Qn(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0;a:do if(e>>>0>36){c[(Rm()|0)>>2]=22;i=0;j=0}else{k=b+4|0;l=b+100|0;do{m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;n=d[m>>0]|0}else n=Hn(b)|0}while((nn(n)|0)!=0);b:do switch(n|0){case 43:case 45:{m=((n|0)==45)<<31>>31;o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;p=m;q=d[o>>0]|0;break b}else{p=m;q=Hn(b)|0;break b}break}default:{p=0;q=n}}while(0);m=(e|0)==0;do if((e|16|0)==16&(q|0)==48){o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;r=d[o>>0]|0}else r=Hn(b)|0;if((r|32|0)!=120)if(m){s=r;t=8;u=46;break}else{v=r;w=e;u=32;break}o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;x=d[o>>0]|0}else x=Hn(b)|0;if((d[36890+x>>0]|0)>15){o=(c[l>>2]|0)==0;if(!o)c[k>>2]=(c[k>>2]|0)+-1;if(!f){Fn(b,0);i=0;j=0;break a}if(o){i=0;j=0;break a}c[k>>2]=(c[k>>2]|0)+-1;i=0;j=0;break a}else{s=x;t=16;u=46}}else{o=m?10:e;if((d[36890+q>>0]|0)>>>0<o>>>0){v=q;w=o;u=32}else{if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;Fn(b,0);c[(Rm()|0)>>2]=22;i=0;j=0;break a}}while(0);if((u|0)==32)if((w|0)==10){m=v+-48|0;if(m>>>0<10){o=0;y=m;do{o=(o*10|0)+y|0;m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;z=d[m>>0]|0}else z=Hn(b)|0;y=z+-48|0}while(y>>>0<10&o>>>0<429496729);A=z;B=o;C=0}else{A=v;B=0;C=0}y=A+-48|0;if(y>>>0<10){m=A;D=B;F=C;G=y;while(1){y=oB(D|0,F|0,10,0)|0;H=E;I=((G|0)<0)<<31>>31;J=~I;if(H>>>0>J>>>0|(H|0)==(J|0)&y>>>0>~G>>>0){K=m;L=G;M=D;N=F;break}J=gB(y|0,H|0,G|0,I|0)|0;I=E;H=c[k>>2]|0;if(H>>>0<(c[l>>2]|0)>>>0){c[k>>2]=H+1;O=d[H>>0]|0}else O=Hn(b)|0;H=O+-48|0;if(H>>>0<10&(I>>>0<429496729|(I|0)==429496729&J>>>0<2576980378)){m=O;D=J;F=I;G=H}else{K=O;L=H;M=J;N=I;break}}if(L>>>0>9){P=p;Q=N;R=M}else{S=10;U=K;V=M;W=N;u=72}}else{P=p;Q=C;R=B}}else{s=v;t=w;u=46}c:do if((u|0)==46){if(!(t+-1&t)){G=a[37146+((t*23|0)>>>5&7)>>0]|0;F=a[36890+s>>0]|0;D=F&255;if(D>>>0<t>>>0){m=0;o=D;do{m=o|m<<G;D=c[k>>2]|0;if(D>>>0<(c[l>>2]|0)>>>0){c[k>>2]=D+1;X=d[D>>0]|0}else X=Hn(b)|0;Y=a[36890+X>>0]|0;o=Y&255}while(m>>>0<134217728&o>>>0<t>>>0);Z=X;_=Y;$=0;aa=m}else{Z=s;_=F;$=0;aa=0}o=hB(-1,-1,G|0)|0;D=E;if((_&255)>>>0>=t>>>0|($>>>0>D>>>0|($|0)==(D|0)&aa>>>0>o>>>0)){S=t;U=Z;V=aa;W=$;u=72;break}else{ba=aa;ca=$;da=_}while(1){I=qB(ba|0,ca|0,G|0)|0;J=E;H=da&255|I;I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;ea=d[I>>0]|0}else ea=Hn(b)|0;da=a[36890+ea>>0]|0;if((da&255)>>>0>=t>>>0|(J>>>0>D>>>0|(J|0)==(D|0)&H>>>0>o>>>0)){S=t;U=ea;V=H;W=J;u=72;break c}else{ba=H;ca=J}}}o=a[36890+s>>0]|0;D=o&255;if(D>>>0<t>>>0){G=0;F=D;do{G=F+(T(G,t)|0)|0;D=c[k>>2]|0;if(D>>>0<(c[l>>2]|0)>>>0){c[k>>2]=D+1;fa=d[D>>0]|0}else fa=Hn(b)|0;ga=a[36890+fa>>0]|0;F=ga&255}while(G>>>0<119304647&F>>>0<t>>>0);ha=fa;ia=ga;ja=G;ka=0}else{ha=s;ia=o;ja=0;ka=0}if((ia&255)>>>0<t>>>0){F=mB(-1,-1,t|0,0)|0;D=E;m=ha;J=ka;H=ja;I=ia;while(1){if(J>>>0>D>>>0|(J|0)==(D|0)&H>>>0>F>>>0){S=t;U=m;V=H;W=J;u=72;break c}y=oB(H|0,J|0,t|0,0)|0;la=E;ma=I&255;if(la>>>0>4294967295|(la|0)==-1&y>>>0>~ma>>>0){S=t;U=m;V=H;W=J;u=72;break c}na=gB(ma|0,0,y|0,la|0)|0;la=E;y=c[k>>2]|0;if(y>>>0<(c[l>>2]|0)>>>0){c[k>>2]=y+1;oa=d[y>>0]|0}else oa=Hn(b)|0;I=a[36890+oa>>0]|0;if((I&255)>>>0>=t>>>0){S=t;U=oa;V=na;W=la;u=72;break}else{m=oa;J=la;H=na}}}else{S=t;U=ha;V=ja;W=ka;u=72}}while(0);if((u|0)==72)if((d[36890+U>>0]|0)>>>0<S>>>0){do{H=c[k>>2]|0;if(H>>>0<(c[l>>2]|0)>>>0){c[k>>2]=H+1;pa=d[H>>0]|0}else pa=Hn(b)|0}while((d[36890+pa>>0]|0)>>>0<S>>>0);c[(Rm()|0)>>2]=34;P=(g&1|0)==0&0==0?p:0;Q=h;R=g}else{P=p;Q=W;R=V}if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;if(!(Q>>>0<h>>>0|(Q|0)==(h|0)&R>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(P|0)!=0)){c[(Rm()|0)>>2]=34;H=gB(g|0,h|0,-1,-1)|0;i=E;j=H;break}if(Q>>>0>h>>>0|(Q|0)==(h|0)&R>>>0>g>>>0){c[(Rm()|0)>>2]=34;i=h;j=g;break}}H=((P|0)<0)<<31>>31;J=cB(R^P|0,Q^H|0,P|0,H|0)|0;i=E;j=J}while(0);E=i;return j|0}function Rn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Pn(a,b,c,0,-2147483648)|0;return d|0}function Sn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Pn(a,b,c,-2147483648,0)|0;return d|0}function Tn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+16|0;h=g;a:do if(!e)i=0;else{do if(f|0){j=(b|0)==0?h:b;k=a[e>>0]|0;m=k&255;if(k<<24>>24>-1){c[j>>2]=m;i=k<<24>>24!=0&1;break a}k=m+-194|0;if(k>>>0<=50){m=e+1|0;n=c[13348+(k<<2)>>2]|0;if(f>>>0<4?n&-2147483648>>>((f*6|0)+-6|0)|0:0)break;k=d[m>>0]|0;m=k>>>3;if((m+-16|m+(n>>26))>>>0<=7){m=k+-128|n<<6;if((m|0)>=0){c[j>>2]=m;i=2;break a}n=(d[e+2>>0]|0)+-128|0;if(n>>>0<=63){k=n|m<<6;if((k|0)>=0){c[j>>2]=k;i=3;break a}m=(d[e+3>>0]|0)+-128|0;if(m>>>0<=63){c[j>>2]=m|k<<6;i=4;break a}}}}}while(0);c[(Rm()|0)>>2]=84;i=-1}while(0);l=g;return i|0}function Un(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=e;g=d}else{d=c;c=b;do{c=c+1|0;d=d+1|0;b=a[c>>0]|0;e=a[d>>0]|0}while(!(b<<24>>24==0?1:b<<24>>24!=e<<24>>24));f=e;g=b}return (g&255)-(f&255)|0}function Vn(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;g=f;c[g>>2]=e;e=pn(a,b,d,g)|0;l=f;return e|0}function Wn(b,c){b=b|0;c=c|0;var d=0;d=Ln(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function Xn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a:do if(!d)e=0;else{f=b;g=d;h=c;while(1){i=a[f>>0]|0;j=a[h>>0]|0;if(i<<24>>24!=j<<24>>24)break;g=g+-1|0;if(!g){e=0;break a}else{f=f+1|0;h=h+1|0}}e=(i&255)-(j&255)|0}while(0);return e|0}function Yn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=l;l=l+32|0;f=e+16|0;g=e;if(xn(37155,a[d>>0]|0,4)|0){h=io(d)|0|32768;c[g>>2]=b;c[g+4>>2]=h;c[g+8>>2]=438;h=Qm(bb(5,g|0)|0)|0;if((h|0)>=0){g=jo(h,d)|0;if(!g){c[f>>2]=h;ab(6,f|0)|0;i=0}else i=g}else i=0}else{c[(Rm()|0)>>2]=22;i=0}l=e;return i|0}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=bo(a,b,f)|0;l=e;return d|0}function _n(a){a=a|0;var b=0,d=0,e=0,f=0;b=(c[a>>2]&1|0)!=0;if(!b){$a(42220);d=c[a+52>>2]|0;e=a+56|0;if(d|0)c[d+56>>2]=c[e>>2];f=c[e>>2]|0;if(f|0)c[f+52>>2]=d;if((c[10554]|0)==(a|0))c[10554]=f;Wa(42220)}f=$n(a)|0;d=tb[c[a+12>>2]&127](a)|0|f;f=c[a+92>>2]|0;if(f|0)Wo(f);if(!b)Wo(a);return d|0}function $n(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;do if(a){if((c[a+76>>2]|0)<=-1){b=ao(a)|0;break}d=(sn(a)|0)==0;e=ao(a)|0;if(d)b=e;else{Tm(a);b=e}}else{if(!(c[3446]|0))f=0;else f=$n(c[3446]|0)|0;$a(42220);e=c[10554]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=sn(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=ao(d)|0|e;else i=e;if(h|0)Tm(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}Wa(42220);b=g}while(0);return b|0}function ao(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+20|0;d=a+28|0;if((c[b>>2]|0)>>>0>(c[d>>2]|0)>>>0?(kb[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)e=-1;else{f=a+4|0;g=c[f>>2]|0;h=a+8|0;i=c[h>>2]|0;if(g>>>0<i>>>0)kb[c[a+40>>2]&31](a,g-i|0,1)|0;c[a+16>>2]=0;c[d>>2]=0;c[b>>2]=0;c[h>>2]=0;c[f>>2]=0;e=0}return e|0}function bo(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+112|0;f=e;g=f;h=g+112|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[f+32>>2]=31;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;a=eo(f,b,d)|0;l=e;return a|0}function co(a,b,c){a=a|0;b=b|0;c=c|0;return ho(a,b,c)|0}function eo(e,f,i){e=e|0;f=f|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,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.0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0;j=l;l=l+304|0;k=j+16|0;m=j+8|0;n=j+33|0;o=j;p=j+32|0;if((c[e+76>>2]|0)>-1)q=sn(e)|0;else q=0;r=a[f>>0]|0;a:do if(r<<24>>24){s=e+4|0;t=e+100|0;u=e+108|0;v=e+8|0;w=n+10|0;x=n+33|0;y=m+4|0;z=n+46|0;A=n+94|0;B=n+1|0;C=n+1|0;D=f;F=0;G=0;H=0;I=0;J=r;b:while(1){c:do if(!(nn(J&255)|0)){K=J<<24>>24==37;d:do if(K){L=D+1|0;M=a[L>>0]|0;e:do switch(M<<24>>24){case 37:{break d;break}case 42:{N=0;O=D+2|0;break}default:{P=(M&255)+-48|0;if(P>>>0<10?(a[D+2>>0]|0)==36:0){c[k>>2]=c[i>>2];Q=P;while(1){P=(c[k>>2]|0)+(4-1)&~(4-1);R=c[P>>2]|0;c[k>>2]=P+4;if(Q>>>0>1)Q=Q+-1|0;else break}N=R;O=D+3|0;break e}Q=(c[i>>2]|0)+(4-1)&~(4-1);P=c[Q>>2]|0;c[i>>2]=Q+4;N=P;O=L}}while(0);L=a[O>>0]|0;M=L&255;if((M+-48|0)>>>0<10){P=0;Q=O;S=M;while(1){M=(P*10|0)+-48+S|0;T=Q+1|0;U=a[T>>0]|0;S=U&255;if((S+-48|0)>>>0>=10){V=M;W=T;X=U;break}else{P=M;Q=T}}}else{V=0;W=O;X=L}if(X<<24>>24==109){Q=W+1|0;Y=(N|0)!=0&1;Z=0;_=0;$=Q;aa=a[Q>>0]|0}else{Y=0;Z=H;_=I;$=W;aa=X}Q=$+1|0;switch(aa<<24>>24){case 104:{P=(a[Q>>0]|0)==104;ba=P?-2:-1;ca=P?$+2|0:Q;break}case 108:{P=(a[Q>>0]|0)==108;ba=P?3:1;ca=P?$+2|0:Q;break}case 106:{ba=3;ca=Q;break}case 116:case 122:{ba=1;ca=Q;break}case 76:{ba=2;ca=Q;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{ba=0;ca=$;break}default:{da=_;ea=Z;fa=154;break b}}Q=d[ca>>0]|0;P=(Q&47|0)==3;S=P?Q|32:Q;Q=P?1:ba;P=S&255;switch(P<<24>>24){case 99:{ga=(V|0)<1?1:V;ha=F;break}case 91:{ga=V;ha=F;break}case 110:{if(!N){ia=ca;ja=G;ka=F;la=_;ma=Z;break c}switch(Q|0){case -2:{a[N>>0]=F;ia=ca;ja=G;ka=F;la=_;ma=Z;break c;break}case -1:{b[N>>1]=F;ia=ca;ja=G;ka=F;la=_;ma=Z;break c;break}case 0:{c[N>>2]=F;ia=ca;ja=G;ka=F;la=_;ma=Z;break c;break}case 1:{c[N>>2]=F;ia=ca;ja=G;ka=F;la=_;ma=Z;break c;break}case 3:{T=N;c[T>>2]=F;c[T+4>>2]=((F|0)<0)<<31>>31;ia=ca;ja=G;ka=F;la=_;ma=Z;break c;break}default:{ia=ca;ja=G;ka=F;la=_;ma=Z;break c}}break}default:{Fn(e,0);do{T=c[s>>2]|0;if(T>>>0<(c[t>>2]|0)>>>0){c[s>>2]=T+1;na=d[T>>0]|0}else na=Hn(e)|0}while((nn(na)|0)!=0);if(!(c[t>>2]|0))oa=c[s>>2]|0;else{L=(c[s>>2]|0)+-1|0;c[s>>2]=L;oa=L}ga=V;ha=(c[u>>2]|0)+F+oa-(c[v>>2]|0)|0}}Fn(e,ga);L=c[s>>2]|0;T=c[t>>2]|0;if(L>>>0<T>>>0){c[s>>2]=L+1;pa=T}else{if((Hn(e)|0)<0){da=_;ea=Z;fa=154;break b}pa=c[t>>2]|0}if(pa|0)c[s>>2]=(c[s>>2]|0)+-1;f:do switch(P<<24>>24){case 91:case 99:case 115:{T=(S|0)==99;g:do if((S|16|0)==115){eB(B|0,-1,256)|0;a[n>>0]=0;if((S|0)==115){a[x>>0]=0;a[w>>0]=0;a[w+1>>0]=0;a[w+2>>0]=0;a[w+3>>0]=0;a[w+4>>0]=0;qa=ca}else qa=ca}else{L=ca+1|0;M=(a[L>>0]|0)==94;U=M&1;ra=M?ca+2|0:L;eB(C|0,M&1|0,256)|0;a[n>>0]=0;switch(a[ra>>0]|0){case 45:{M=(U^1)&255;a[z>>0]=M;sa=ra+1|0;ta=M;break}case 93:{M=(U^1)&255;a[A>>0]=M;sa=ra+1|0;ta=M;break}default:{sa=ra;ta=(U^1)&255}}U=sa;while(1){ra=a[U>>0]|0;h:do switch(ra<<24>>24){case 0:{da=_;ea=Z;fa=154;break b;break}case 93:{qa=U;break g;break}case 45:{M=U+1|0;L=a[M>>0]|0;switch(L<<24>>24){case 93:case 0:{ua=U;va=45;break h;break}default:{}}wa=a[U+-1>>0]|0;if((wa&255)<(L&255)){xa=wa&255;do{xa=xa+1|0;a[n+xa>>0]=ta;wa=a[M>>0]|0}while((xa|0)<(wa&255|0));ua=M;va=wa}else{ua=M;va=L}break}default:{ua=U;va=ra}}while(0);a[n+((va&255)+1)>>0]=ta;U=ua+1|0}}while(0);U=T?ga+1|0:31;ra=(Q|0)==1;xa=(Y|0)!=0;i:do if(ra){if(xa){wa=Vo(U<<2)|0;if(!wa){da=0;ea=wa;fa=154;break b}else ya=wa}else ya=N;c[m>>2]=0;c[y>>2]=0;wa=U;za=0;Aa=ya;j:while(1){Ba=(Aa|0)==0;Ca=za;while(1){k:while(1){Da=c[s>>2]|0;if(Da>>>0<(c[t>>2]|0)>>>0){c[s>>2]=Da+1;Ea=d[Da>>0]|0}else Ea=Hn(e)|0;if(!(a[n+(Ea+1)>>0]|0))break j;a[p>>0]=Ea;switch(fo(o,p,1,m)|0){case -1:{da=0;ea=Aa;fa=154;break b;break}case -2:break;default:break k}}if(Ba)Fa=Ca;else{c[Aa+(Ca<<2)>>2]=c[o>>2];Fa=Ca+1|0}if(xa&(Fa|0)==(wa|0))break;else Ca=Fa}Ba=wa<<1|1;L=Yo(Aa,Ba<<2)|0;if(!L){da=0;ea=Aa;fa=154;break b}else{M=wa;wa=Ba;Aa=L;za=M}}if(!(go(m)|0)){da=0;ea=Aa;fa=154;break b}else{Ga=Ca;Ha=0;Ia=Aa}}else{if(xa){za=Vo(U)|0;if(!za){da=0;ea=0;fa=154;break b}else{Ja=U;Ka=0;La=za}while(1){za=Ka;do{wa=c[s>>2]|0;if(wa>>>0<(c[t>>2]|0)>>>0){c[s>>2]=wa+1;Ma=d[wa>>0]|0}else Ma=Hn(e)|0;if(!(a[n+(Ma+1)>>0]|0)){Ga=za;Ha=La;Ia=0;break i}a[La+za>>0]=Ma;za=za+1|0}while((za|0)!=(Ja|0));za=Ja<<1|1;wa=Yo(La,za)|0;if(!wa){da=La;ea=0;fa=154;break b}else{M=Ja;Ja=za;La=wa;Ka=M}}}if(!N){Aa=pa;while(1){M=c[s>>2]|0;if(M>>>0<Aa>>>0){c[s>>2]=M+1;Na=d[M>>0]|0}else Na=Hn(e)|0;if(!(a[n+(Na+1)>>0]|0)){Ga=0;Ha=0;Ia=0;break i}Aa=c[t>>2]|0}}else{Aa=0;M=pa;while(1){wa=c[s>>2]|0;if(wa>>>0<M>>>0){c[s>>2]=wa+1;Oa=d[wa>>0]|0}else Oa=Hn(e)|0;if(!(a[n+(Oa+1)>>0]|0)){Ga=Aa;Ha=N;Ia=0;break i}a[N+Aa>>0]=Oa;Aa=Aa+1|0;M=c[t>>2]|0}}}while(0);if(!(c[t>>2]|0))Pa=c[s>>2]|0;else{U=(c[s>>2]|0)+-1|0;c[s>>2]=U;Pa=U}U=Pa-(c[v>>2]|0)+(c[u>>2]|0)|0;if(!U){Qa=Ia;Ra=Y;Sa=G;Ta=Ha;break b}if(!((U|0)==(ga|0)|T^1)){Qa=Ia;Ra=Y;Sa=G;Ta=Ha;break b}do if(xa)if(ra){c[N>>2]=Ia;break}else{c[N>>2]=Ha;break}while(0);if(T){Ua=qa;Va=Ha;Wa=Ia}else{if(Ia|0)c[Ia+(Ga<<2)>>2]=0;if(!Ha){Ua=qa;Va=0;Wa=Ia;break f}a[Ha+Ga>>0]=0;Ua=qa;Va=Ha;Wa=Ia}break}case 120:case 88:case 112:{Xa=16;fa=136;break}case 111:{Xa=8;fa=136;break}case 117:case 100:{Xa=10;fa=136;break}case 105:{Xa=0;fa=136;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{Ya=+Gn(e,Q,0);if((c[u>>2]|0)==((c[v>>2]|0)-(c[s>>2]|0)|0)){Qa=Z;Ra=Y;Sa=G;Ta=_;break b}if(!N){Ua=ca;Va=_;Wa=Z}else switch(Q|0){case 0:{g[N>>2]=Ya;Ua=ca;Va=_;Wa=Z;break f;break}case 1:{h[N>>3]=Ya;Ua=ca;Va=_;Wa=Z;break f;break}case 2:{h[N>>3]=Ya;Ua=ca;Va=_;Wa=Z;break f;break}default:{Ua=ca;Va=_;Wa=Z;break f}}break}default:{Ua=ca;Va=_;Wa=Z}}while(0);l:do if((fa|0)==136){fa=0;P=Qn(e,Xa,0,-1,-1)|0;if((c[u>>2]|0)==((c[v>>2]|0)-(c[s>>2]|0)|0)){Qa=Z;Ra=Y;Sa=G;Ta=_;break b}if((N|0)!=0&(S|0)==112){c[N>>2]=P;Ua=ca;Va=_;Wa=Z;break}if(!N){Ua=ca;Va=_;Wa=Z}else switch(Q|0){case -2:{a[N>>0]=P;Ua=ca;Va=_;Wa=Z;break l;break}case -1:{b[N>>1]=P;Ua=ca;Va=_;Wa=Z;break l;break}case 0:{c[N>>2]=P;Ua=ca;Va=_;Wa=Z;break l;break}case 1:{c[N>>2]=P;Ua=ca;Va=_;Wa=Z;break l;break}case 3:{ra=N;c[ra>>2]=P;c[ra+4>>2]=E;Ua=ca;Va=_;Wa=Z;break l;break}default:{Ua=ca;Va=_;Wa=Z;break l}}}while(0);ia=Ua;ja=((N|0)!=0&1)+G|0;ka=(c[u>>2]|0)+ha+(c[s>>2]|0)-(c[v>>2]|0)|0;la=Va;ma=Wa;break c}while(0);Q=D+(K&1)|0;Fn(e,0);S=c[s>>2]|0;if(S>>>0<(c[t>>2]|0)>>>0){c[s>>2]=S+1;Za=d[S>>0]|0}else Za=Hn(e)|0;if((Za|0)!=(d[Q>>0]|0)){fa=22;break b}ia=Q;ja=G;ka=F+1|0;la=I;ma=H}else{Q=D;while(1){S=Q+1|0;if(!(nn(d[S>>0]|0)|0))break;else Q=S}Fn(e,0);do{K=c[s>>2]|0;if(K>>>0<(c[t>>2]|0)>>>0){c[s>>2]=K+1;_a=d[K>>0]|0}else _a=Hn(e)|0}while((nn(_a)|0)!=0);if(!(c[t>>2]|0))$a=c[s>>2]|0;else{K=(c[s>>2]|0)+-1|0;c[s>>2]=K;$a=K}ia=Q;ja=G;ka=(c[u>>2]|0)+F+$a-(c[v>>2]|0)|0;la=I;ma=H}while(0);D=ia+1|0;J=a[D>>0]|0;if(!(J<<24>>24)){ab=ja;break a}else{F=ka;G=ja;H=ma;I=la}}if((fa|0)==22){if(c[t>>2]|0)c[s>>2]=(c[s>>2]|0)+-1;if((G|0)!=0|(Za|0)>-1){ab=G;break}else{bb=0;cb=I;db=H;fa=155}}else if((fa|0)==154)if(!G){bb=Y;cb=da;db=ea;fa=155}else{Qa=ea;Ra=Y;Sa=G;Ta=da}if((fa|0)==155){Qa=db;Ra=bb;Sa=-1;Ta=cb}if(!Ra)ab=Sa;else{Wo(Ta);Wo(Qa);ab=Sa}}else ab=0;while(0);if(q|0)Tm(e);l=j;return ab|0}function fo(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=l;l=l+16|0;h=g;i=(f|0)==0?42240:f;f=c[i>>2]|0;a:do if(!d)if(!f)j=0;else k=15;else{m=(b|0)==0?h:b;if(!e)j=-2;else{if(!f){n=a[d>>0]|0;o=n&255;if(n<<24>>24>-1){c[m>>2]=o;j=n<<24>>24!=0&1;break}n=o+-194|0;if(n>>>0>50){k=15;break}o=c[13348+(n<<2)>>2]|0;n=e+-1|0;if(!n)p=o;else{q=d+1|0;r=o;s=n;k=9}}else{q=d;r=f;s=e;k=9}b:do if((k|0)==9){n=a[q>>0]|0;o=(n&255)>>>3;if((o+-16|o+(r>>26))>>>0>7){k=15;break a}else{t=q;u=r;v=s;w=n}while(1){t=t+1|0;u=(w&255)+-128|u<<6;v=v+-1|0;if((u|0)>=0)break;if(!v){p=u;break b}w=a[t>>0]|0;if((w&-64)<<24>>24!=-128){k=15;break a}}c[i>>2]=0;c[m>>2]=u;j=e-v|0;break a}while(0);c[i>>2]=p;j=-2}}while(0);if((k|0)==15){c[i>>2]=0;c[(Rm()|0)>>2]=84;j=-1}l=g;return j|0}function go(a){a=a|0;var b=0;if(!a)b=1;else b=(c[a>>2]|0)==0;return b&1|0}function ho(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+84|0;f=c[e>>2]|0;g=d+256|0;h=xn(f,0,g)|0;i=(h|0)==0?g:h-f|0;h=i>>>0<d>>>0?i:d;jB(b|0,f|0,h|0)|0;c[a+4>>2]=f+h;b=f+i|0;c[a+8>>2]=b;c[e>>2]=b;return h|0}function io(b){b=b|0;var c=0,d=0,e=0,f=0;c=(Wn(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(Wn(b,120)|0)==0;f=c?e:e|128;e=(Wn(b,101)|0)==0;b=e?f:f|524288;f=d<<24>>24==114?b:b|64;b=d<<24>>24==119?f|512:f;return (d<<24>>24==97?b|1024:b)|0}function jo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;e=l;l=l+112|0;f=e+40|0;g=e+24|0;h=e+16|0;i=e;j=e+52|0;k=a[d>>0]|0;if(xn(37155,k<<24>>24,4)|0){m=Vo(1144)|0;if(!m)n=0;else{o=m;p=o+112|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));if(!(Wn(d,43)|0))c[m>>2]=k<<24>>24==114?8:4;if(!(Wn(d,101)|0))q=k;else{c[i>>2]=b;c[i+4>>2]=2;c[i+8>>2]=1;Sa(221,i|0)|0;q=a[d>>0]|0}if(q<<24>>24==97){c[h>>2]=b;c[h+4>>2]=3;q=Sa(221,h|0)|0;if(!(q&1024)){c[g>>2]=b;c[g+4>>2]=4;c[g+8>>2]=q|1024;Sa(221,g|0)|0}g=c[m>>2]|128;c[m>>2]=g;r=g}else r=c[m>>2]|0;c[m+60>>2]=b;c[m+44>>2]=m+120;c[m+48>>2]=1024;g=m+75|0;a[g>>0]=-1;if((r&8|0)==0?(c[f>>2]=b,c[f+4>>2]=21505,c[f+8>>2]=j,(Va(54,f|0)|0)==0):0)a[g>>0]=10;c[m+32>>2]=9;c[m+36>>2]=6;c[m+40>>2]=7;c[m+12>>2]=59;if(!(c[10549]|0))c[m+76>>2]=-1;$a(42220);g=c[10554]|0;c[m+56>>2]=g;if(g|0)c[g+52>>2]=m;c[10554]=m;Wa(42220);n=m}}else{c[(Rm()|0)>>2]=22;n=0}l=e;return n|0}function ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((c[a+76>>2]|0)>-1){e=(sn(a)|0)==0;f=lo(a,b,d)|0;if(e)g=f;else{Tm(a);g=f}}else g=lo(a,b,d)|0;return g|0}function lo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((d|0)==1)e=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;else e=b;b=a+20|0;f=a+28|0;if((c[b>>2]|0)>>>0>(c[f>>2]|0)>>>0?(kb[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)g=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[b>>2]=0;if((kb[c[a+40>>2]&31](a,e,d)|0)<0)g=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;g=0}}return g|0}function mo(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function no(){return 14056}function oo(a){a=a|0;var b=0;if(!(po(a)|0))b=0;else b=(qo(a)|0)==0;return b&1|0}function po(a){a=a|0;return (a+-33|0)>>>0<94|0}function qo(a){a=a|0;return ((a+-48|0)>>>0<10|(mo(a)|0)!=0)&1|0}function ro(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function so(){return 15596}function to(){return 15600}function uo(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=i;k=f;l=h;m=17}else{c[g>>2]=0;n=b;o=i;p=f;q=h;m=38}else if(!b){r=h;s=f;m=7}else{t=b;u=f;v=h;m=6}a:while(1)if((m|0)==6){m=0;if(!u){w=v;m=27;break}else{x=t;y=u;z=v}while(1){h=a[z>>0]|0;do if(((h&255)+-1|0)>>>0<127?y>>>0>4&(z&3|0)==0:0){i=x;g=y;A=z;while(1){B=c[A>>2]|0;if((B+-16843009|B)&-2139062144|0){m=33;break}c[i>>2]=B&255;c[i+4>>2]=d[A+1>>0];c[i+8>>2]=d[A+2>>0];C=A+4|0;D=i+16|0;c[i+12>>2]=d[A+3>>0];E=g+-4|0;if(E>>>0>4){i=D;g=E;A=C}else{m=32;break}}if((m|0)==32){m=0;F=D;G=E;H=C;I=a[C>>0]|0;break}else if((m|0)==33){m=0;F=i;G=g;H=A;I=B&255;break}}else{F=x;G=y;H=z;I=h}while(0);J=I&255;if((J+-1|0)>>>0>=127)break;h=H+1|0;c[F>>2]=J;y=G+-1|0;if(!y){w=h;m=27;break a}else{x=F+4|0;z=h}}h=J+-194|0;if(h>>>0>50){K=H;L=F;M=G;m=49;break}n=F;o=c[13348+(h<<2)>>2]|0;p=G;q=H+1|0;m=38;continue}else if((m|0)==7){m=0;h=r;N=s;while(1){O=a[h>>0]|0;if(((O&255)+-1|0)>>>0<127?(h&3|0)==0:0){P=c[h>>2]|0;Q=P&255;if(!((P+-16843009|P)&-2139062144)){P=N;R=h;do{R=R+4|0;P=P+-4|0;S=c[R>>2]|0}while(!((S+-16843009|S)&-2139062144|0));T=P;U=R;V=S&255}else{T=N;U=h;V=Q}}else{T=N;U=h;V=O}W=V&255;if((W+-1|0)>>>0>=127)break;h=U+1|0;N=T+-1|0}N=W+-194|0;if(N>>>0>50){K=U;L=b;M=T;m=49;break}j=c[13348+(N<<2)>>2]|0;k=T;l=U+1|0;m=17;continue}else if((m|0)==17){m=0;N=(d[l>>0]|0)>>>3;if((N+-16|N+(j>>26))>>>0>7){m=18;break}N=l+1|0;if(j&33554432){if((a[N>>0]&-64)<<24>>24!=-128){m=21;break}h=l+2|0;if(!(j&524288))X=h;else{if((a[h>>0]&-64)<<24>>24!=-128){m=24;break}X=l+3|0}}else X=N;r=X;s=k+-1|0;m=7;continue}else if((m|0)==38){m=0;N=d[q>>0]|0;h=N>>>3;if((h+-16|h+(o>>26))>>>0>7){m=39;break}h=q+1|0;Y=N+-128|o<<6;if((Y|0)<0){N=(d[h>>0]|0)+-128|0;if(N>>>0>63){m=42;break}Z=q+2|0;_=N|Y<<6;if((_|0)<0){N=(d[Z>>0]|0)+-128|0;if(N>>>0>63){m=45;break}$=N|_<<6;aa=q+3|0}else{$=_;aa=Z}}else{$=Y;aa=h}c[n>>2]=$;t=n+4|0;u=p+-1|0;v=aa;m=6;continue}if((m|0)==18){ba=l+-1|0;ca=b;da=j;ea=k;m=48}else if((m|0)==21){ba=l+-1|0;ca=b;da=j;ea=k;m=48}else if((m|0)==24){ba=l+-1|0;ca=b;da=j;ea=k;m=48}else if((m|0)==27){c[e>>2]=w;fa=f}else if((m|0)==39){ba=q+-1|0;ca=n;da=o;ea=p;m=48}else if((m|0)==42){ga=q+-1|0;ha=n;m=53}else if((m|0)==45){ga=q+-1|0;ha=n;m=53}if((m|0)==48)if(!da){K=ba;L=ca;M=ea;m=49}else{ga=ba;ha=ca;m=53}if((m|0)==49)if(!(a[K>>0]|0)){if(L|0){c[L>>2]=0;c[e>>2]=0}fa=f-M|0}else{ga=K;ha=L;m=53}if((m|0)==53){c[(Rm()|0)>>2]=84;if(!ha)fa=-1;else{c[e>>2]=ga;fa=-1}}return fa|0}function vo(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+16|0;g=f;a:do if(!b){h=c[d>>2]|0;i=c[h>>2]|0;if(!i)j=0;else{k=h;h=0;m=i;while(1){if(m>>>0>127){i=An(g,m,0)|0;if((i|0)==-1){j=-1;break a}else n=i}else n=1;i=n+h|0;k=k+4|0;m=c[k>>2]|0;if(!m){j=i;break}else h=i}}}else{b:do if(e>>>0>3){h=b;m=e;k=c[d>>2]|0;while(1){i=c[k>>2]|0;if((i+-1|0)>>>0>126){if(!i)break;o=An(h,i,0)|0;if((o|0)==-1){j=-1;break a}p=h+o|0;q=m-o|0;r=k}else{a[h>>0]=i;p=h+1|0;q=m+-1|0;r=c[d>>2]|0}k=r+4|0;c[d>>2]=k;if(q>>>0<=3){s=p;t=q;break b}else{h=p;m=q}}a[h>>0]=0;c[d>>2]=0;j=e-m|0;break a}else{s=b;t=e}while(0);if(t){k=s;i=t;o=c[d>>2]|0;while(1){u=c[o>>2]|0;if((u+-1|0)>>>0>126){if(!u){v=19;break}w=An(g,u,0)|0;if((w|0)==-1){j=-1;break a}if(i>>>0<w>>>0){v=22;break}An(k,c[o>>2]|0,0)|0;x=k+w|0;y=i-w|0;z=o}else{a[k>>0]=u;x=k+1|0;y=i+-1|0;z=c[d>>2]|0}o=z+4|0;c[d>>2]=o;if(!y){j=e;break a}else{k=x;i=y}}if((v|0)==19){a[k>>0]=0;c[d>>2]=0;j=e-i|0;break}else if((v|0)==22){j=e-i|0;break}}else j=e}while(0);l=f;return j|0}function wo(a,b,c){a=a|0;b=b|0;c=c|0;return fo(0,a,b,c|0?c:42244)|0}function xo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=l;l=l+272|0;g=f+8|0;h=f;i=c[b>>2]|0;c[h>>2]=i;j=(a|0)!=0;k=j?e:256;e=j?a:g;a=i;a:do if((k|0)!=0&(i|0)!=0){m=0;n=d;o=k;p=e;q=a;while(1){r=n>>>0>=o>>>0;if(!(r|n>>>0>32)){s=p;t=m;u=n;v=o;w=q;break a}x=r?o:n;y=n-x|0;r=vo(p,h,x,0)|0;if((r|0)==-1)break;x=(p|0)==(g|0);z=o-(x?0:r)|0;A=x?p:p+r|0;x=r+m|0;r=c[h>>2]|0;if((z|0)!=0&(r|0)!=0){m=x;n=y;o=z;p=A;q=r}else{s=A;t=x;u=y;v=z;w=r;break a}}s=p;t=-1;u=y;v=0;w=c[h>>2]|0}else{s=e;t=0;u=d;v=k;w=a}while(0);b:do if((w|0)!=0?(v|0)!=0&(u|0)!=0:0){a=t;k=u;d=s;e=v;y=w;while(1){B=An(d,c[y>>2]|0,0)|0;if((B+1|0)>>>0<2)break;y=(c[h>>2]|0)+4|0;c[h>>2]=y;k=k+-1|0;e=e-B|0;g=a+1|0;if(!((e|0)!=0&(k|0)!=0)){C=g;break b}else{a=g;d=d+B|0}}if(!B){c[h>>2]=0;C=a}else C=-1}else C=t;while(0);if(j)c[b>>2]=c[h>>2];l=f;return C|0}function yo(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,m=0,n=0,o=0,p=0,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;g=l;l=l+1040|0;h=g+8|0;i=g;j=c[b>>2]|0;c[i>>2]=j;k=(a|0)!=0;m=k?e:256;e=k?a:h;a=j;a:do if((m|0)!=0&(j|0)!=0){n=0;o=d;p=m;q=e;r=a;while(1){s=o>>>2;t=s>>>0>=p>>>0;if(!(o>>>0>131|t)){u=q;v=n;w=o;x=p;y=r;break a}z=t?p:s;A=o-z|0;s=uo(q,i,z,f)|0;if((s|0)==-1)break;z=(q|0)==(h|0);t=p-(z?0:s)|0;B=z?q:q+(s<<2)|0;z=s+n|0;s=c[i>>2]|0;if((t|0)!=0&(s|0)!=0){n=z;o=A;p=t;q=B;r=s}else{u=B;v=z;w=A;x=t;y=s;break a}}u=q;v=-1;w=A;x=0;y=c[i>>2]|0}else{u=e;v=0;w=d;x=m;y=a}while(0);b:do if((y|0)!=0?(x|0)!=0&(w|0)!=0:0){a=v;m=w;d=u;e=x;A=y;while(1){C=fo(d,A,m,f)|0;if((C+2|0)>>>0<3)break;A=(c[i>>2]|0)+C|0;c[i>>2]=A;m=m-C|0;e=e+-1|0;h=a+1|0;if(!((e|0)!=0&(m|0)!=0)){D=h;break b}else{a=h;d=d+4|0}}switch(C|0){case -1:{D=-1;break b;break}case 0:{c[i>>2]=0;D=a;break b;break}default:{c[f>>2]=0;D=a;break b}}}else D=v;while(0);if(k)c[b>>2]=c[i>>2];l=g;return D|0}function zo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=d;d=b;b=a;while(1){e=e+-1|0;c[b>>2]=c[d>>2];if(!e)break;else{d=d+4|0;b=b+4|0}}}return a|0}function Ao(a){a=a|0;var b=0,d=0;b=(uB()|0)+184|0;d=c[b>>2]|0;if(a|0)c[b>>2]=a;return d|0}function Bo(a,b){a=a|0;b=b|0;return (a+-48|0)>>>0<10|0}function Co(a,b){a=a|0;b=b|0;return -1|0}function Do(a){a=a|0;Wo(a);return}function Eo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function Fo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;if(((a[d>>0]|0)!=0?(Un(d,37936)|0)!=0:0)?(Un(d,37159)|0)!=0:0)f=0;else g=4;do if((g|0)==4)if(!e)if(!(c[10562]|0)){c[10562]=1;f=42252;break}else{f=Xo(1,4)|0;break}else f=e;while(0);return f|0}function Go(a,b){a=a|0;b=b|0;return ro(a)|0}function Ho(a){a=a|0;return 0}function Io(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=On(a,b,c)|0;return d|0}function Jo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Rn(a,b,c)|0;return d|0}function Ko(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=d;d=a;while(1){e=e+-1|0;c[d>>2]=b;if(!e)break;else d=d+4|0}}return a|0}function Lo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=(d|0)==0;if(a-b>>2>>>0<d>>>0){if(!e){f=d;do{f=f+-1|0;c[a+(f<<2)>>2]=c[b+(f<<2)>>2]}while((f|0)!=0)}}else if(!e){e=b;b=a;f=d;while(1){f=f+-1|0;c[b>>2]=c[e>>2];if(!f)break;else{e=e+4|0;b=b+4|0}}}return a|0}function Mo(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;g=f;h=e&255;a[g>>0]=h;i=b+16|0;j=c[i>>2]|0;if(!j)if(!(Bn(b)|0)){k=c[i>>2]|0;m=4}else n=-1;else{k=j;m=4}do if((m|0)==4){j=b+20|0;i=c[j>>2]|0;if(i>>>0<k>>>0?(o=e&255,(o|0)!=(a[b+75>>0]|0)):0){c[j>>2]=i+1;a[i>>0]=h;n=o;break}if((kb[c[b+36>>2]&31](b,g,1)|0)==1)n=d[g>>0]|0;else n=-1}while(0);l=f;return n|0}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;do if((b|0)!=-1){if((c[d+76>>2]|0)>-1)e=sn(d)|0;else e=0;if(!((c[d+8>>2]|0)==0?(Kn(d)|0)!=0:0))f=6;if((f|0)==6?(g=d+4|0,h=c[g>>2]|0,h>>>0>((c[d+44>>2]|0)+-8|0)>>>0):0){i=h+-1|0;c[g>>2]=i;a[i>>0]=b;c[d>>2]=c[d>>2]&-17;if(!e){j=b;break}Tm(d);j=b;break}if(e){Tm(d);j=-1}else j=-1}else j=-1;while(0);return j|0}function Oo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+16|0;f=e;g=Vo(240)|0;do if(g){c[f>>2]=c[d>>2];h=pn(g,240,b,f)|0;if(h>>>0<240){i=Yo(g,h+1|0)|0;c[a>>2]=i|0?i:g;j=h;break}Wo(g);if((h|0)>=0?(i=h+1|0,h=Vo(i)|0,c[a>>2]=h,(h|0)!=0):0)j=pn(h,i,b,d)|0;else j=-1}else j=-1;while(0);l=e;return j|0}function Po(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=T(d,b)|0;if((c[e+76>>2]|0)>-1){g=(sn(e)|0)==0;h=tn(a,f,e)|0;if(g)i=h;else{Tm(e);i=h}}else i=tn(a,f,e)|0;if((i|0)==(f|0))j=d;else j=(i>>>0)/(b>>>0)|0;return j|0}function Qo(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,m=0,n=0,o=0,p=0;g=T(e,d)|0;if((c[f+76>>2]|0)>-1)h=sn(f)|0;else h=0;i=f+74|0;j=a[i>>0]|0;a[i>>0]=j+255|j;j=f+4|0;i=c[j>>2]|0;k=(c[f+8>>2]|0)-i|0;l=i;if((k|0)>0){i=k>>>0<g>>>0?k:g;jB(b|0,l|0,i|0)|0;c[j>>2]=l+i;m=g-i|0;n=b+i|0}else{m=g;n=b}a:do if(!m)o=13;else{b=f+32|0;i=m;l=n;while(1){if(Kn(f)|0)break;j=kb[c[b>>2]&31](f,l,i)|0;if((j+1|0)>>>0<2)break;k=i-j|0;if(!k){o=13;break a}else{i=k;l=l+j|0}}if(h|0)Tm(f);p=((g-i|0)>>>0)/(d>>>0)|0}while(0);if((o|0)==13)if(!h)p=e;else{Tm(f);p=e}return p|0}function Ro(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(sn(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(e=d+20|0,f=c[e>>2]|0,f>>>0<(c[d+16>>2]|0)>>>0):0){c[e>>2]=f+1;a[f>>0]=b;g=b&255}else g=Mo(d,b)|0;Tm(d);h=g}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(g=d+20|0,f=c[g>>2]|0,f>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=f+1;a[f>>0]=b;h=b&255;break}h=Mo(d,b)|0}while(0);return h|0}function So(a){a=a|0;var b=0,d=0,e=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;d=kb[c[a+40>>2]&31](a,0,b)|0;if((d|0)<0)e=d;else e=d-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return e|0}function To(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(sn(a)|0)==0;d=So(a)|0;if(b)e=d;else e=d}else e=So(a)|0;return e|0}function Uo(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;if((c[a+76>>2]|0)>=0?(sn(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;f=d[e>>0]|0}else f=Jn(a)|0;g=f}else h=3;do if((h|0)==3){f=a+4|0;e=c[f>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[f>>2]=e+1;g=d[e>>0]|0;break}else{g=Jn(a)|0;break}}while(0);return g|0}function Vo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Ba=0;b=l;l=l+16|0;d=b;do if(a>>>0<245){e=a>>>0<11?16:a+11&-8;f=e>>>3;g=c[10564]|0;h=g>>>f;if(h&3|0){i=(h&1^1)+f|0;j=42296+(i<<1<<2)|0;k=j+8|0;m=c[k>>2]|0;n=m+8|0;o=c[n>>2]|0;do if((j|0)!=(o|0)){if(o>>>0<(c[10568]|0)>>>0)Aa();p=o+12|0;if((c[p>>2]|0)==(m|0)){c[p>>2]=j;c[k>>2]=o;break}else Aa()}else c[10564]=g&~(1<<i);while(0);o=i<<3;c[m+4>>2]=o|3;k=m+o+4|0;c[k>>2]=c[k>>2]|1;q=n;l=b;return q|0}k=c[10566]|0;if(e>>>0>k>>>0){if(h|0){o=2<<f;j=h<<f&(o|0-o);o=(j&0-j)+-1|0;j=o>>>12&16;p=o>>>j;o=p>>>5&8;r=p>>>o;p=r>>>2&4;s=r>>>p;r=s>>>1&2;t=s>>>r;s=t>>>1&1;u=(o|j|p|r|s)+(t>>>s)|0;s=42296+(u<<1<<2)|0;t=s+8|0;r=c[t>>2]|0;p=r+8|0;j=c[p>>2]|0;do if((s|0)!=(j|0)){if(j>>>0<(c[10568]|0)>>>0)Aa();o=j+12|0;if((c[o>>2]|0)==(r|0)){c[o>>2]=s;c[t>>2]=j;v=g;break}else Aa()}else{o=g&~(1<<u);c[10564]=o;v=o}while(0);j=(u<<3)-e|0;c[r+4>>2]=e|3;t=r+e|0;c[t+4>>2]=j|1;c[t+j>>2]=j;if(k|0){s=c[10569]|0;f=k>>>3;h=42296+(f<<1<<2)|0;n=1<<f;if(v&n){f=h+8|0;m=c[f>>2]|0;if(m>>>0<(c[10568]|0)>>>0)Aa();else{w=m;x=f}}else{c[10564]=v|n;w=h;x=h+8|0}c[x>>2]=s;c[w+12>>2]=s;c[s+8>>2]=w;c[s+12>>2]=h}c[10566]=j;c[10569]=t;q=p;l=b;return q|0}t=c[10565]|0;if(t){j=(t&0-t)+-1|0;h=j>>>12&16;s=j>>>h;j=s>>>5&8;n=s>>>j;s=n>>>2&4;f=n>>>s;n=f>>>1&2;m=f>>>n;f=m>>>1&1;i=c[42560+((j|h|s|n|f)+(m>>>f)<<2)>>2]|0;f=i;m=i;n=(c[i+4>>2]&-8)-e|0;while(1){i=c[f+16>>2]|0;if(!i){s=c[f+20>>2]|0;if(!s)break;else y=s}else y=i;i=(c[y+4>>2]&-8)-e|0;s=i>>>0<n>>>0;f=y;m=s?y:m;n=s?i:n}f=c[10568]|0;if(m>>>0<f>>>0)Aa();p=m+e|0;if(m>>>0>=p>>>0)Aa();r=c[m+24>>2]|0;u=c[m+12>>2]|0;do if((u|0)==(m|0)){i=m+20|0;s=c[i>>2]|0;if(!s){h=m+16|0;j=c[h>>2]|0;if(!j){z=0;break}else{A=j;B=h}}else{A=s;B=i}while(1){i=A+20|0;s=c[i>>2]|0;if(s|0){A=s;B=i;continue}i=A+16|0;s=c[i>>2]|0;if(!s)break;else{A=s;B=i}}if(B>>>0<f>>>0)Aa();else{c[B>>2]=0;z=A;break}}else{i=c[m+8>>2]|0;if(i>>>0<f>>>0)Aa();s=i+12|0;if((c[s>>2]|0)!=(m|0))Aa();h=u+8|0;if((c[h>>2]|0)==(m|0)){c[s>>2]=u;c[h>>2]=i;z=u;break}else Aa()}while(0);do if(r|0){u=c[m+28>>2]|0;f=42560+(u<<2)|0;if((m|0)==(c[f>>2]|0)){c[f>>2]=z;if(!z){c[10565]=t&~(1<<u);break}}else{if(r>>>0<(c[10568]|0)>>>0)Aa();u=r+16|0;if((c[u>>2]|0)==(m|0))c[u>>2]=z;else c[r+20>>2]=z;if(!z)break}u=c[10568]|0;if(z>>>0<u>>>0)Aa();c[z+24>>2]=r;f=c[m+16>>2]|0;do if(f|0)if(f>>>0<u>>>0)Aa();else{c[z+16>>2]=f;c[f+24>>2]=z;break}while(0);f=c[m+20>>2]|0;if(f|0)if(f>>>0<(c[10568]|0)>>>0)Aa();else{c[z+20>>2]=f;c[f+24>>2]=z;break}}while(0);if(n>>>0<16){r=n+e|0;c[m+4>>2]=r|3;t=m+r+4|0;c[t>>2]=c[t>>2]|1}else{c[m+4>>2]=e|3;c[p+4>>2]=n|1;c[p+n>>2]=n;if(k|0){t=c[10569]|0;r=k>>>3;f=42296+(r<<1<<2)|0;u=1<<r;if(g&u){r=f+8|0;i=c[r>>2]|0;if(i>>>0<(c[10568]|0)>>>0)Aa();else{C=i;D=r}}else{c[10564]=g|u;C=f;D=f+8|0}c[D>>2]=t;c[C+12>>2]=t;c[t+8>>2]=C;c[t+12>>2]=f}c[10566]=n;c[10569]=p}q=m+8|0;l=b;return q|0}else E=e}else E=e}else if(a>>>0<=4294967231){f=a+11|0;t=f&-8;u=c[10565]|0;if(u){r=0-t|0;i=f>>>8;if(i)if(t>>>0>16777215)F=31;else{f=(i+1048320|0)>>>16&8;h=i<<f;i=(h+520192|0)>>>16&4;s=h<<i;h=(s+245760|0)>>>16&2;j=14-(i|f|h)+(s<<h>>>15)|0;F=t>>>(j+7|0)&1|j<<1}else F=0;j=c[42560+(F<<2)>>2]|0;a:do if(!j){G=0;H=0;I=r;J=86}else{h=0;s=r;f=j;i=t<<((F|0)==31?0:25-(F>>>1)|0);o=0;while(1){K=(c[f+4>>2]&-8)-t|0;if(K>>>0<s>>>0)if(!K){L=f;M=0;N=f;J=90;break a}else{O=f;P=K}else{O=h;P=s}K=c[f+20>>2]|0;f=c[f+16+(i>>>31<<2)>>2]|0;Q=(K|0)==0|(K|0)==(f|0)?o:K;K=(f|0)==0;if(K){G=Q;H=O;I=P;J=86;break}else{h=O;s=P;i=i<<(K&1^1);o=Q}}}while(0);if((J|0)==86){if((G|0)==0&(H|0)==0){j=2<<F;r=u&(j|0-j);if(!r){E=t;break}j=(r&0-r)+-1|0;r=j>>>12&16;e=j>>>r;j=e>>>5&8;m=e>>>j;e=m>>>2&4;p=m>>>e;m=p>>>1&2;n=p>>>m;p=n>>>1&1;R=c[42560+((j|r|e|m|p)+(n>>>p)<<2)>>2]|0}else R=G;if(!R){S=H;T=I}else{L=H;M=I;N=R;J=90}}if((J|0)==90)while(1){J=0;p=(c[N+4>>2]&-8)-t|0;n=p>>>0<M>>>0;m=n?p:M;p=n?N:L;n=c[N+16>>2]|0;if(n|0){L=p;M=m;N=n;J=90;continue}N=c[N+20>>2]|0;if(!N){S=p;T=m;break}else{L=p;M=m;J=90}}if((S|0)!=0?T>>>0<((c[10566]|0)-t|0)>>>0:0){m=c[10568]|0;if(S>>>0<m>>>0)Aa();p=S+t|0;if(S>>>0>=p>>>0)Aa();n=c[S+24>>2]|0;e=c[S+12>>2]|0;do if((e|0)==(S|0)){r=S+20|0;j=c[r>>2]|0;if(!j){g=S+16|0;k=c[g>>2]|0;if(!k){U=0;break}else{V=k;W=g}}else{V=j;W=r}while(1){r=V+20|0;j=c[r>>2]|0;if(j|0){V=j;W=r;continue}r=V+16|0;j=c[r>>2]|0;if(!j)break;else{V=j;W=r}}if(W>>>0<m>>>0)Aa();else{c[W>>2]=0;U=V;break}}else{r=c[S+8>>2]|0;if(r>>>0<m>>>0)Aa();j=r+12|0;if((c[j>>2]|0)!=(S|0))Aa();g=e+8|0;if((c[g>>2]|0)==(S|0)){c[j>>2]=e;c[g>>2]=r;U=e;break}else Aa()}while(0);do if(n){e=c[S+28>>2]|0;m=42560+(e<<2)|0;if((S|0)==(c[m>>2]|0)){c[m>>2]=U;if(!U){m=u&~(1<<e);c[10565]=m;X=m;break}}else{if(n>>>0<(c[10568]|0)>>>0)Aa();m=n+16|0;if((c[m>>2]|0)==(S|0))c[m>>2]=U;else c[n+20>>2]=U;if(!U){X=u;break}}m=c[10568]|0;if(U>>>0<m>>>0)Aa();c[U+24>>2]=n;e=c[S+16>>2]|0;do if(e|0)if(e>>>0<m>>>0)Aa();else{c[U+16>>2]=e;c[e+24>>2]=U;break}while(0);e=c[S+20>>2]|0;if(e)if(e>>>0<(c[10568]|0)>>>0)Aa();else{c[U+20>>2]=e;c[e+24>>2]=U;X=u;break}else X=u}else X=u;while(0);do if(T>>>0>=16){c[S+4>>2]=t|3;c[p+4>>2]=T|1;c[p+T>>2]=T;u=T>>>3;if(T>>>0<256){n=42296+(u<<1<<2)|0;e=c[10564]|0;m=1<<u;if(e&m){u=n+8|0;r=c[u>>2]|0;if(r>>>0<(c[10568]|0)>>>0)Aa();else{Y=r;Z=u}}else{c[10564]=e|m;Y=n;Z=n+8|0}c[Z>>2]=p;c[Y+12>>2]=p;c[p+8>>2]=Y;c[p+12>>2]=n;break}n=T>>>8;if(n)if(T>>>0>16777215)_=31;else{m=(n+1048320|0)>>>16&8;e=n<<m;n=(e+520192|0)>>>16&4;u=e<<n;e=(u+245760|0)>>>16&2;r=14-(n|m|e)+(u<<e>>>15)|0;_=T>>>(r+7|0)&1|r<<1}else _=0;r=42560+(_<<2)|0;c[p+28>>2]=_;e=p+16|0;c[e+4>>2]=0;c[e>>2]=0;e=1<<_;if(!(X&e)){c[10565]=X|e;c[r>>2]=p;c[p+24>>2]=r;c[p+12>>2]=p;c[p+8>>2]=p;break}e=T<<((_|0)==31?0:25-(_>>>1)|0);u=c[r>>2]|0;while(1){if((c[u+4>>2]&-8|0)==(T|0)){J=148;break}$=u+16+(e>>>31<<2)|0;r=c[$>>2]|0;if(!r){J=145;break}else{e=e<<1;u=r}}if((J|0)==145)if($>>>0<(c[10568]|0)>>>0)Aa();else{c[$>>2]=p;c[p+24>>2]=u;c[p+12>>2]=p;c[p+8>>2]=p;break}else if((J|0)==148){e=u+8|0;r=c[e>>2]|0;m=c[10568]|0;if(r>>>0>=m>>>0&u>>>0>=m>>>0){c[r+12>>2]=p;c[e>>2]=p;c[p+8>>2]=r;c[p+12>>2]=u;c[p+24>>2]=0;break}else Aa()}}else{r=T+t|0;c[S+4>>2]=r|3;e=S+r+4|0;c[e>>2]=c[e>>2]|1}while(0);q=S+8|0;l=b;return q|0}else E=t}else E=t}else E=-1;while(0);S=c[10566]|0;if(S>>>0>=E>>>0){T=S-E|0;$=c[10569]|0;if(T>>>0>15){_=$+E|0;c[10569]=_;c[10566]=T;c[_+4>>2]=T|1;c[_+T>>2]=T;c[$+4>>2]=E|3}else{c[10566]=0;c[10569]=0;c[$+4>>2]=S|3;T=$+S+4|0;c[T>>2]=c[T>>2]|1}q=$+8|0;l=b;return q|0}$=c[10567]|0;if($>>>0>E>>>0){T=$-E|0;c[10567]=T;S=c[10570]|0;_=S+E|0;c[10570]=_;c[_+4>>2]=T|1;c[S+4>>2]=E|3;q=S+8|0;l=b;return q|0}if(!(c[10682]|0)){c[10684]=4096;c[10683]=4096;c[10685]=-1;c[10686]=-1;c[10687]=0;c[10675]=0;S=d&-16^1431655768;c[d>>2]=S;c[10682]=S;aa=4096}else aa=c[10684]|0;S=E+48|0;d=E+47|0;T=aa+d|0;_=0-aa|0;aa=T&_;if(aa>>>0<=E>>>0){q=0;l=b;return q|0}X=c[10674]|0;if(X|0?(Y=c[10672]|0,Z=Y+aa|0,Z>>>0<=Y>>>0|Z>>>0>X>>>0):0){q=0;l=b;return q|0}b:do if(!(c[10675]&4)){X=c[10570]|0;c:do if(X){Z=42704;while(1){Y=c[Z>>2]|0;if(Y>>>0<=X>>>0?(ba=Z+4|0,(Y+(c[ba>>2]|0)|0)>>>0>X>>>0):0)break;Y=c[Z+8>>2]|0;if(!Y){J=172;break c}else Z=Y}u=T-$&_;if(u>>>0<2147483647){Y=pB(u|0)|0;if((Y|0)==((c[Z>>2]|0)+(c[ba>>2]|0)|0)){if((Y|0)!=(-1|0)){ca=u;da=Y;J=190;break b}}else{ea=Y;fa=u;J=180}}}else J=172;while(0);do if(((J|0)==172?(X=pB(0)|0,(X|0)!=(-1|0)):0)?(t=X,u=c[10683]|0,Y=u+-1|0,U=((Y&t|0)==0?0:(Y+t&0-u)-t|0)+aa|0,t=c[10672]|0,u=U+t|0,U>>>0>E>>>0&U>>>0<2147483647):0){Y=c[10674]|0;if(Y|0?u>>>0<=t>>>0|u>>>0>Y>>>0:0)break;Y=pB(U|0)|0;if((Y|0)==(X|0)){ca=U;da=X;J=190;break b}else{ea=Y;fa=U;J=180}}while(0);d:do if((J|0)==180){U=0-fa|0;do if(S>>>0>fa>>>0&(fa>>>0<2147483647&(ea|0)!=(-1|0))?(Y=c[10684]|0,X=d-fa+Y&0-Y,X>>>0<2147483647):0)if((pB(X|0)|0)==(-1|0)){pB(U|0)|0;break d}else{ga=X+fa|0;break}else ga=fa;while(0);if((ea|0)!=(-1|0)){ca=ga;da=ea;J=190;break b}}while(0);c[10675]=c[10675]|4;J=187}else J=187;while(0);if((((J|0)==187?aa>>>0<2147483647:0)?(ea=pB(aa|0)|0,aa=pB(0)|0,ea>>>0<aa>>>0&((ea|0)!=(-1|0)&(aa|0)!=(-1|0))):0)?(ga=aa-ea|0,ga>>>0>(E+40|0)>>>0):0){ca=ga;da=ea;J=190}if((J|0)==190){ea=(c[10672]|0)+ca|0;c[10672]=ea;if(ea>>>0>(c[10673]|0)>>>0)c[10673]=ea;ea=c[10570]|0;do if(ea){ga=42704;while(1){ha=c[ga>>2]|0;ia=ga+4|0;ja=c[ia>>2]|0;if((da|0)==(ha+ja|0)){J=200;break}aa=c[ga+8>>2]|0;if(!aa)break;else ga=aa}if(((J|0)==200?(c[ga+12>>2]&8|0)==0:0)?ea>>>0<da>>>0&ea>>>0>=ha>>>0:0){c[ia>>2]=ja+ca;aa=ea+8|0;fa=(aa&7|0)==0?0:0-aa&7;aa=ea+fa|0;d=ca-fa+(c[10567]|0)|0;c[10570]=aa;c[10567]=d;c[aa+4>>2]=d|1;c[aa+d+4>>2]=40;c[10571]=c[10686];break}d=c[10568]|0;if(da>>>0<d>>>0){c[10568]=da;ka=da}else ka=d;d=da+ca|0;aa=42704;while(1){if((c[aa>>2]|0)==(d|0)){J=208;break}fa=c[aa+8>>2]|0;if(!fa){la=42704;break}else aa=fa}if((J|0)==208)if(!(c[aa+12>>2]&8)){c[aa>>2]=da;ga=aa+4|0;c[ga>>2]=(c[ga>>2]|0)+ca;ga=da+8|0;fa=da+((ga&7|0)==0?0:0-ga&7)|0;ga=d+8|0;S=d+((ga&7|0)==0?0:0-ga&7)|0;ga=fa+E|0;ba=S-fa-E|0;c[fa+4>>2]=E|3;do if((S|0)!=(ea|0)){if((S|0)==(c[10569]|0)){_=(c[10566]|0)+ba|0;c[10566]=_;c[10569]=ga;c[ga+4>>2]=_|1;c[ga+_>>2]=_;break}_=c[S+4>>2]|0;if((_&3|0)==1){$=_&-8;T=_>>>3;e:do if(_>>>0>=256){U=c[S+24>>2]|0;Z=c[S+12>>2]|0;do if((Z|0)==(S|0)){X=S+16|0;Y=X+4|0;u=c[Y>>2]|0;if(!u){t=c[X>>2]|0;if(!t){ma=0;break}else{na=t;oa=X}}else{na=u;oa=Y}while(1){Y=na+20|0;u=c[Y>>2]|0;if(u|0){na=u;oa=Y;continue}Y=na+16|0;u=c[Y>>2]|0;if(!u)break;else{na=u;oa=Y}}if(oa>>>0<ka>>>0)Aa();else{c[oa>>2]=0;ma=na;break}}else{Y=c[S+8>>2]|0;if(Y>>>0<ka>>>0)Aa();u=Y+12|0;if((c[u>>2]|0)!=(S|0))Aa();X=Z+8|0;if((c[X>>2]|0)==(S|0)){c[u>>2]=Z;c[X>>2]=Y;ma=Z;break}else Aa()}while(0);if(!U)break;Z=c[S+28>>2]|0;Y=42560+(Z<<2)|0;do if((S|0)!=(c[Y>>2]|0)){if(U>>>0<(c[10568]|0)>>>0)Aa();X=U+16|0;if((c[X>>2]|0)==(S|0))c[X>>2]=ma;else c[U+20>>2]=ma;if(!ma)break e}else{c[Y>>2]=ma;if(ma|0)break;c[10565]=c[10565]&~(1<<Z);break e}while(0);Z=c[10568]|0;if(ma>>>0<Z>>>0)Aa();c[ma+24>>2]=U;Y=S+16|0;X=c[Y>>2]|0;do if(X|0)if(X>>>0<Z>>>0)Aa();else{c[ma+16>>2]=X;c[X+24>>2]=ma;break}while(0);X=c[Y+4>>2]|0;if(!X)break;if(X>>>0<(c[10568]|0)>>>0)Aa();else{c[ma+20>>2]=X;c[X+24>>2]=ma;break}}else{X=c[S+8>>2]|0;Z=c[S+12>>2]|0;U=42296+(T<<1<<2)|0;do if((X|0)!=(U|0)){if(X>>>0<ka>>>0)Aa();if((c[X+12>>2]|0)==(S|0))break;Aa()}while(0);if((Z|0)==(X|0)){c[10564]=c[10564]&~(1<<T);break}do if((Z|0)==(U|0))pa=Z+8|0;else{if(Z>>>0<ka>>>0)Aa();Y=Z+8|0;if((c[Y>>2]|0)==(S|0)){pa=Y;break}Aa()}while(0);c[X+12>>2]=Z;c[pa>>2]=X}while(0);qa=S+$|0;ra=$+ba|0}else{qa=S;ra=ba}T=qa+4|0;c[T>>2]=c[T>>2]&-2;c[ga+4>>2]=ra|1;c[ga+ra>>2]=ra;T=ra>>>3;if(ra>>>0<256){_=42296+(T<<1<<2)|0;U=c[10564]|0;Y=1<<T;do if(!(U&Y)){c[10564]=U|Y;sa=_;ta=_+8|0}else{T=_+8|0;u=c[T>>2]|0;if(u>>>0>=(c[10568]|0)>>>0){sa=u;ta=T;break}Aa()}while(0);c[ta>>2]=ga;c[sa+12>>2]=ga;c[ga+8>>2]=sa;c[ga+12>>2]=_;break}Y=ra>>>8;do if(!Y)ua=0;else{if(ra>>>0>16777215){ua=31;break}U=(Y+1048320|0)>>>16&8;$=Y<<U;T=($+520192|0)>>>16&4;u=$<<T;$=(u+245760|0)>>>16&2;t=14-(T|U|$)+(u<<$>>>15)|0;ua=ra>>>(t+7|0)&1|t<<1}while(0);Y=42560+(ua<<2)|0;c[ga+28>>2]=ua;_=ga+16|0;c[_+4>>2]=0;c[_>>2]=0;_=c[10565]|0;t=1<<ua;if(!(_&t)){c[10565]=_|t;c[Y>>2]=ga;c[ga+24>>2]=Y;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}t=ra<<((ua|0)==31?0:25-(ua>>>1)|0);_=c[Y>>2]|0;while(1){if((c[_+4>>2]&-8|0)==(ra|0)){J=278;break}va=_+16+(t>>>31<<2)|0;Y=c[va>>2]|0;if(!Y){J=275;break}else{t=t<<1;_=Y}}if((J|0)==275)if(va>>>0<(c[10568]|0)>>>0)Aa();else{c[va>>2]=ga;c[ga+24>>2]=_;c[ga+12>>2]=ga;c[ga+8>>2]=ga;break}else if((J|0)==278){t=_+8|0;Y=c[t>>2]|0;$=c[10568]|0;if(Y>>>0>=$>>>0&_>>>0>=$>>>0){c[Y+12>>2]=ga;c[t>>2]=ga;c[ga+8>>2]=Y;c[ga+12>>2]=_;c[ga+24>>2]=0;break}else Aa()}}else{Y=(c[10567]|0)+ba|0;c[10567]=Y;c[10570]=ga;c[ga+4>>2]=Y|1}while(0);q=fa+8|0;l=b;return q|0}else la=42704;while(1){ga=c[la>>2]|0;if(ga>>>0<=ea>>>0?(wa=ga+(c[la+4>>2]|0)|0,wa>>>0>ea>>>0):0)break;la=c[la+8>>2]|0}fa=wa+-47|0;ga=fa+8|0;ba=fa+((ga&7|0)==0?0:0-ga&7)|0;ga=ea+16|0;fa=ba>>>0<ga>>>0?ea:ba;ba=fa+8|0;S=da+8|0;d=(S&7|0)==0?0:0-S&7;S=da+d|0;aa=ca+-40-d|0;c[10570]=S;c[10567]=aa;c[S+4>>2]=aa|1;c[S+aa+4>>2]=40;c[10571]=c[10686];aa=fa+4|0;c[aa>>2]=27;c[ba>>2]=c[10676];c[ba+4>>2]=c[10677];c[ba+8>>2]=c[10678];c[ba+12>>2]=c[10679];c[10676]=da;c[10677]=ca;c[10679]=0;c[10678]=ba;ba=fa+24|0;do{ba=ba+4|0;c[ba>>2]=7}while((ba+4|0)>>>0<wa>>>0);if((fa|0)!=(ea|0)){ba=fa-ea|0;c[aa>>2]=c[aa>>2]&-2;c[ea+4>>2]=ba|1;c[fa>>2]=ba;S=ba>>>3;if(ba>>>0<256){d=42296+(S<<1<<2)|0;Y=c[10564]|0;t=1<<S;if(Y&t){S=d+8|0;$=c[S>>2]|0;if($>>>0<(c[10568]|0)>>>0)Aa();else{xa=$;ya=S}}else{c[10564]=Y|t;xa=d;ya=d+8|0}c[ya>>2]=ea;c[xa+12>>2]=ea;c[ea+8>>2]=xa;c[ea+12>>2]=d;break}d=ba>>>8;if(d)if(ba>>>0>16777215)za=31;else{t=(d+1048320|0)>>>16&8;Y=d<<t;d=(Y+520192|0)>>>16&4;S=Y<<d;Y=(S+245760|0)>>>16&2;$=14-(d|t|Y)+(S<<Y>>>15)|0;za=ba>>>($+7|0)&1|$<<1}else za=0;$=42560+(za<<2)|0;c[ea+28>>2]=za;c[ea+20>>2]=0;c[ga>>2]=0;Y=c[10565]|0;S=1<<za;if(!(Y&S)){c[10565]=Y|S;c[$>>2]=ea;c[ea+24>>2]=$;c[ea+12>>2]=ea;c[ea+8>>2]=ea;break}S=ba<<((za|0)==31?0:25-(za>>>1)|0);Y=c[$>>2]|0;while(1){if((c[Y+4>>2]&-8|0)==(ba|0)){J=304;break}Ba=Y+16+(S>>>31<<2)|0;$=c[Ba>>2]|0;if(!$){J=301;break}else{S=S<<1;Y=$}}if((J|0)==301)if(Ba>>>0<(c[10568]|0)>>>0)Aa();else{c[Ba>>2]=ea;c[ea+24>>2]=Y;c[ea+12>>2]=ea;c[ea+8>>2]=ea;break}else if((J|0)==304){S=Y+8|0;ba=c[S>>2]|0;ga=c[10568]|0;if(ba>>>0>=ga>>>0&Y>>>0>=ga>>>0){c[ba+12>>2]=ea;c[S>>2]=ea;c[ea+8>>2]=ba;c[ea+12>>2]=Y;c[ea+24>>2]=0;break}else Aa()}}}else{ba=c[10568]|0;if((ba|0)==0|da>>>0<ba>>>0)c[10568]=da;c[10676]=da;c[10677]=ca;c[10679]=0;c[10573]=c[10682];c[10572]=-1;ba=0;do{S=42296+(ba<<1<<2)|0;c[S+12>>2]=S;c[S+8>>2]=S;ba=ba+1|0}while((ba|0)!=32);ba=da+8|0;Y=(ba&7|0)==0?0:0-ba&7;ba=da+Y|0;S=ca+-40-Y|0;c[10570]=ba;c[10567]=S;c[ba+4>>2]=S|1;c[ba+S+4>>2]=40;c[10571]=c[10686]}while(0);ca=c[10567]|0;if(ca>>>0>E>>>0){da=ca-E|0;c[10567]=da;ca=c[10570]|0;ea=ca+E|0;c[10570]=ea;c[ea+4>>2]=da|1;c[ca+4>>2]=E|3;q=ca+8|0;l=b;return q|0}}c[(Rm()|0)>>2]=12;q=0;l=b;return q|0}function Wo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;if(!a)return;b=a+-8|0;d=c[10568]|0;if(b>>>0<d>>>0)Aa();e=c[a+-4>>2]|0;a=e&3;if((a|0)==1)Aa();f=e&-8;g=b+f|0;do if(!(e&1)){h=c[b>>2]|0;if(!a)return;i=b+(0-h)|0;j=h+f|0;if(i>>>0<d>>>0)Aa();if((i|0)==(c[10569]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;break}c[10566]=j;c[k>>2]=l&-2;c[i+4>>2]=j|1;c[i+j>>2]=j;return}l=h>>>3;if(h>>>0<256){h=c[i+8>>2]|0;k=c[i+12>>2]|0;o=42296+(l<<1<<2)|0;if((h|0)!=(o|0)){if(h>>>0<d>>>0)Aa();if((c[h+12>>2]|0)!=(i|0))Aa()}if((k|0)==(h|0)){c[10564]=c[10564]&~(1<<l);m=i;n=j;break}if((k|0)!=(o|0)){if(k>>>0<d>>>0)Aa();o=k+8|0;if((c[o>>2]|0)==(i|0))p=o;else Aa()}else p=k+8|0;c[h+12>>2]=k;c[p>>2]=h;m=i;n=j;break}h=c[i+24>>2]|0;k=c[i+12>>2]|0;do if((k|0)==(i|0)){o=i+16|0;l=o+4|0;q=c[l>>2]|0;if(!q){r=c[o>>2]|0;if(!r){s=0;break}else{t=r;u=o}}else{t=q;u=l}while(1){l=t+20|0;q=c[l>>2]|0;if(q|0){t=q;u=l;continue}l=t+16|0;q=c[l>>2]|0;if(!q)break;else{t=q;u=l}}if(u>>>0<d>>>0)Aa();else{c[u>>2]=0;s=t;break}}else{l=c[i+8>>2]|0;if(l>>>0<d>>>0)Aa();q=l+12|0;if((c[q>>2]|0)!=(i|0))Aa();o=k+8|0;if((c[o>>2]|0)==(i|0)){c[q>>2]=k;c[o>>2]=l;s=k;break}else Aa()}while(0);if(h){k=c[i+28>>2]|0;l=42560+(k<<2)|0;if((i|0)==(c[l>>2]|0)){c[l>>2]=s;if(!s){c[10565]=c[10565]&~(1<<k);m=i;n=j;break}}else{if(h>>>0<(c[10568]|0)>>>0)Aa();k=h+16|0;if((c[k>>2]|0)==(i|0))c[k>>2]=s;else c[h+20>>2]=s;if(!s){m=i;n=j;break}}k=c[10568]|0;if(s>>>0<k>>>0)Aa();c[s+24>>2]=h;l=i+16|0;o=c[l>>2]|0;do if(o|0)if(o>>>0<k>>>0)Aa();else{c[s+16>>2]=o;c[o+24>>2]=s;break}while(0);o=c[l+4>>2]|0;if(o)if(o>>>0<(c[10568]|0)>>>0)Aa();else{c[s+20>>2]=o;c[o+24>>2]=s;m=i;n=j;break}else{m=i;n=j}}else{m=i;n=j}}else{m=b;n=f}while(0);if(m>>>0>=g>>>0)Aa();f=g+4|0;b=c[f>>2]|0;if(!(b&1))Aa();if(!(b&2)){if((g|0)==(c[10570]|0)){s=(c[10567]|0)+n|0;c[10567]=s;c[10570]=m;c[m+4>>2]=s|1;if((m|0)!=(c[10569]|0))return;c[10569]=0;c[10566]=0;return}if((g|0)==(c[10569]|0)){s=(c[10566]|0)+n|0;c[10566]=s;c[10569]=m;c[m+4>>2]=s|1;c[m+s>>2]=s;return}s=(b&-8)+n|0;d=b>>>3;do if(b>>>0>=256){t=c[g+24>>2]|0;u=c[g+12>>2]|0;do if((u|0)==(g|0)){p=g+16|0;a=p+4|0;e=c[a>>2]|0;if(!e){o=c[p>>2]|0;if(!o){v=0;break}else{w=o;x=p}}else{w=e;x=a}while(1){a=w+20|0;e=c[a>>2]|0;if(e|0){w=e;x=a;continue}a=w+16|0;e=c[a>>2]|0;if(!e)break;else{w=e;x=a}}if(x>>>0<(c[10568]|0)>>>0)Aa();else{c[x>>2]=0;v=w;break}}else{a=c[g+8>>2]|0;if(a>>>0<(c[10568]|0)>>>0)Aa();e=a+12|0;if((c[e>>2]|0)!=(g|0))Aa();p=u+8|0;if((c[p>>2]|0)==(g|0)){c[e>>2]=u;c[p>>2]=a;v=u;break}else Aa()}while(0);if(t|0){u=c[g+28>>2]|0;j=42560+(u<<2)|0;if((g|0)==(c[j>>2]|0)){c[j>>2]=v;if(!v){c[10565]=c[10565]&~(1<<u);break}}else{if(t>>>0<(c[10568]|0)>>>0)Aa();u=t+16|0;if((c[u>>2]|0)==(g|0))c[u>>2]=v;else c[t+20>>2]=v;if(!v)break}u=c[10568]|0;if(v>>>0<u>>>0)Aa();c[v+24>>2]=t;j=g+16|0;i=c[j>>2]|0;do if(i|0)if(i>>>0<u>>>0)Aa();else{c[v+16>>2]=i;c[i+24>>2]=v;break}while(0);i=c[j+4>>2]|0;if(i|0)if(i>>>0<(c[10568]|0)>>>0)Aa();else{c[v+20>>2]=i;c[i+24>>2]=v;break}}}else{i=c[g+8>>2]|0;u=c[g+12>>2]|0;t=42296+(d<<1<<2)|0;if((i|0)!=(t|0)){if(i>>>0<(c[10568]|0)>>>0)Aa();if((c[i+12>>2]|0)!=(g|0))Aa()}if((u|0)==(i|0)){c[10564]=c[10564]&~(1<<d);break}if((u|0)!=(t|0)){if(u>>>0<(c[10568]|0)>>>0)Aa();t=u+8|0;if((c[t>>2]|0)==(g|0))y=t;else Aa()}else y=u+8|0;c[i+12>>2]=u;c[y>>2]=i}while(0);c[m+4>>2]=s|1;c[m+s>>2]=s;if((m|0)==(c[10569]|0)){c[10566]=s;return}else z=s}else{c[f>>2]=b&-2;c[m+4>>2]=n|1;c[m+n>>2]=n;z=n}n=z>>>3;if(z>>>0<256){b=42296+(n<<1<<2)|0;f=c[10564]|0;s=1<<n;if(f&s){n=b+8|0;y=c[n>>2]|0;if(y>>>0<(c[10568]|0)>>>0)Aa();else{A=y;B=n}}else{c[10564]=f|s;A=b;B=b+8|0}c[B>>2]=m;c[A+12>>2]=m;c[m+8>>2]=A;c[m+12>>2]=b;return}b=z>>>8;if(b)if(z>>>0>16777215)C=31;else{A=(b+1048320|0)>>>16&8;B=b<<A;b=(B+520192|0)>>>16&4;s=B<<b;B=(s+245760|0)>>>16&2;f=14-(b|A|B)+(s<<B>>>15)|0;C=z>>>(f+7|0)&1|f<<1}else C=0;f=42560+(C<<2)|0;c[m+28>>2]=C;c[m+20>>2]=0;c[m+16>>2]=0;B=c[10565]|0;s=1<<C;do if(B&s){A=z<<((C|0)==31?0:25-(C>>>1)|0);b=c[f>>2]|0;while(1){if((c[b+4>>2]&-8|0)==(z|0)){D=130;break}E=b+16+(A>>>31<<2)|0;n=c[E>>2]|0;if(!n){D=127;break}else{A=A<<1;b=n}}if((D|0)==127)if(E>>>0<(c[10568]|0)>>>0)Aa();else{c[E>>2]=m;c[m+24>>2]=b;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((D|0)==130){A=b+8|0;j=c[A>>2]|0;n=c[10568]|0;if(j>>>0>=n>>>0&b>>>0>=n>>>0){c[j+12>>2]=m;c[A>>2]=m;c[m+8>>2]=j;c[m+12>>2]=b;c[m+24>>2]=0;break}else Aa()}}else{c[10565]=B|s;c[f>>2]=m;c[m+24>>2]=f;c[m+12>>2]=m;c[m+8>>2]=m}while(0);m=(c[10572]|0)+-1|0;c[10572]=m;if(!m)F=42712;else return;while(1){m=c[F>>2]|0;if(!m)break;else F=m+8|0}c[10572]=-1;return}function Xo(a,b){a=a|0;b=b|0;var d=0,e=0;if(a){d=T(b,a)|0;if((b|a)>>>0>65535)e=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1;else e=d}else e=0;d=Vo(e)|0;if(!d)return d|0;if(!(c[d+-4>>2]&3))return d|0;eB(d|0,0,e|0)|0;return d|0}function Yo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=Vo(b)|0;return d|0}if(b>>>0>4294967231){c[(Rm()|0)>>2]=12;d=0;return d|0}e=Zo(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e|0){d=e+8|0;return d|0}e=Vo(b)|0;if(!e){d=0;return d|0}f=c[a+-4>>2]|0;g=(f&-8)-((f&3|0)==0?8:4)|0;jB(e|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;Wo(a);d=e;return d|0}function Zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[10568]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0<g>>>0))Aa();j=c[g+4>>2]|0;if(!(j&1))Aa();if(!i){if(b>>>0<256){k=0;return k|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[10684]<<1>>>0:0){k=a;return k|0}k=0;return k|0}if(f>>>0>=b>>>0){i=f-b|0;if(i>>>0<=15){k=a;return k|0}l=a+b|0;c[d>>2]=e&1|b|2;c[l+4>>2]=i|3;m=l+i+4|0;c[m>>2]=c[m>>2]|1;_o(l,i);k=a;return k|0}if((g|0)==(c[10570]|0)){i=(c[10567]|0)+f|0;if(i>>>0<=b>>>0){k=0;return k|0}l=i-b|0;i=a+b|0;c[d>>2]=e&1|b|2;c[i+4>>2]=l|1;c[10570]=i;c[10567]=l;k=a;return k|0}if((g|0)==(c[10569]|0)){l=(c[10566]|0)+f|0;if(l>>>0<b>>>0){k=0;return k|0}i=l-b|0;if(i>>>0>15){m=a+b|0;n=m+i|0;c[d>>2]=e&1|b|2;c[m+4>>2]=i|1;c[n>>2]=i;o=n+4|0;c[o>>2]=c[o>>2]&-2;p=m;q=i}else{c[d>>2]=e&1|l|2;i=a+l+4|0;c[i>>2]=c[i>>2]|1;p=0;q=0}c[10566]=q;c[10569]=p;k=a;return k|0}if(j&2|0){k=0;return k|0}p=(j&-8)+f|0;if(p>>>0<b>>>0){k=0;return k|0}f=p-b|0;q=j>>>3;do if(j>>>0>=256){i=c[g+24>>2]|0;l=c[g+12>>2]|0;do if((l|0)==(g|0)){m=g+16|0;o=m+4|0;n=c[o>>2]|0;if(!n){r=c[m>>2]|0;if(!r){s=0;break}else{t=r;u=m}}else{t=n;u=o}while(1){o=t+20|0;n=c[o>>2]|0;if(n|0){t=n;u=o;continue}o=t+16|0;n=c[o>>2]|0;if(!n)break;else{t=n;u=o}}if(u>>>0<h>>>0)Aa();else{c[u>>2]=0;s=t;break}}else{o=c[g+8>>2]|0;if(o>>>0<h>>>0)Aa();n=o+12|0;if((c[n>>2]|0)!=(g|0))Aa();m=l+8|0;if((c[m>>2]|0)==(g|0)){c[n>>2]=l;c[m>>2]=o;s=l;break}else Aa()}while(0);if(i|0){l=c[g+28>>2]|0;o=42560+(l<<2)|0;if((g|0)==(c[o>>2]|0)){c[o>>2]=s;if(!s){c[10565]=c[10565]&~(1<<l);break}}else{if(i>>>0<(c[10568]|0)>>>0)Aa();l=i+16|0;if((c[l>>2]|0)==(g|0))c[l>>2]=s;else c[i+20>>2]=s;if(!s)break}l=c[10568]|0;if(s>>>0<l>>>0)Aa();c[s+24>>2]=i;o=g+16|0;m=c[o>>2]|0;do if(m|0)if(m>>>0<l>>>0)Aa();else{c[s+16>>2]=m;c[m+24>>2]=s;break}while(0);m=c[o+4>>2]|0;if(m|0)if(m>>>0<(c[10568]|0)>>>0)Aa();else{c[s+20>>2]=m;c[m+24>>2]=s;break}}}else{m=c[g+8>>2]|0;l=c[g+12>>2]|0;i=42296+(q<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0<h>>>0)Aa();if((c[m+12>>2]|0)!=(g|0))Aa()}if((l|0)==(m|0)){c[10564]=c[10564]&~(1<<q);break}if((l|0)!=(i|0)){if(l>>>0<h>>>0)Aa();i=l+8|0;if((c[i>>2]|0)==(g|0))v=i;else Aa()}else v=l+8|0;c[m+12>>2]=l;c[v>>2]=m}while(0);if(f>>>0<16){c[d>>2]=p|e&1|2;v=a+p+4|0;c[v>>2]=c[v>>2]|1;k=a;return k|0}else{v=a+b|0;c[d>>2]=e&1|b|2;c[v+4>>2]=f|3;b=v+f+4|0;c[b>>2]=c[b>>2]|1;_o(v,f);k=a;return k|0}return 0}function _o(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;d=a+b|0;e=c[a+4>>2]|0;do if(!(e&1)){f=c[a>>2]|0;if(!(e&3))return;g=a+(0-f)|0;h=f+b|0;i=c[10568]|0;if(g>>>0<i>>>0)Aa();if((g|0)==(c[10569]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[10566]=h;c[j>>2]=k&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}k=f>>>3;if(f>>>0<256){f=c[g+8>>2]|0;j=c[g+12>>2]|0;n=42296+(k<<1<<2)|0;if((f|0)!=(n|0)){if(f>>>0<i>>>0)Aa();if((c[f+12>>2]|0)!=(g|0))Aa()}if((j|0)==(f|0)){c[10564]=c[10564]&~(1<<k);l=g;m=h;break}if((j|0)!=(n|0)){if(j>>>0<i>>>0)Aa();n=j+8|0;if((c[n>>2]|0)==(g|0))o=n;else Aa()}else o=j+8|0;c[f+12>>2]=j;c[o>>2]=f;l=g;m=h;break}f=c[g+24>>2]|0;j=c[g+12>>2]|0;do if((j|0)==(g|0)){n=g+16|0;k=n+4|0;p=c[k>>2]|0;if(!p){q=c[n>>2]|0;if(!q){r=0;break}else{s=q;t=n}}else{s=p;t=k}while(1){k=s+20|0;p=c[k>>2]|0;if(p|0){s=p;t=k;continue}k=s+16|0;p=c[k>>2]|0;if(!p)break;else{s=p;t=k}}if(t>>>0<i>>>0)Aa();else{c[t>>2]=0;r=s;break}}else{k=c[g+8>>2]|0;if(k>>>0<i>>>0)Aa();p=k+12|0;if((c[p>>2]|0)!=(g|0))Aa();n=j+8|0;if((c[n>>2]|0)==(g|0)){c[p>>2]=j;c[n>>2]=k;r=j;break}else Aa()}while(0);if(f){j=c[g+28>>2]|0;i=42560+(j<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[10565]=c[10565]&~(1<<j);l=g;m=h;break}}else{if(f>>>0<(c[10568]|0)>>>0)Aa();j=f+16|0;if((c[j>>2]|0)==(g|0))c[j>>2]=r;else c[f+20>>2]=r;if(!r){l=g;m=h;break}}j=c[10568]|0;if(r>>>0<j>>>0)Aa();c[r+24>>2]=f;i=g+16|0;k=c[i>>2]|0;do if(k|0)if(k>>>0<j>>>0)Aa();else{c[r+16>>2]=k;c[k+24>>2]=r;break}while(0);k=c[i+4>>2]|0;if(k)if(k>>>0<(c[10568]|0)>>>0)Aa();else{c[r+20>>2]=k;c[k+24>>2]=r;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);b=c[10568]|0;if(d>>>0<b>>>0)Aa();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){if((d|0)==(c[10570]|0)){s=(c[10567]|0)+m|0;c[10567]=s;c[10570]=l;c[l+4>>2]=s|1;if((l|0)!=(c[10569]|0))return;c[10569]=0;c[10566]=0;return}if((d|0)==(c[10569]|0)){s=(c[10566]|0)+m|0;c[10566]=s;c[10569]=l;c[l+4>>2]=s|1;c[l+s>>2]=s;return}s=(r&-8)+m|0;t=r>>>3;do if(r>>>0>=256){o=c[d+24>>2]|0;e=c[d+12>>2]|0;do if((e|0)==(d|0)){k=d+16|0;j=k+4|0;f=c[j>>2]|0;if(!f){n=c[k>>2]|0;if(!n){u=0;break}else{v=n;w=k}}else{v=f;w=j}while(1){j=v+20|0;f=c[j>>2]|0;if(f|0){v=f;w=j;continue}j=v+16|0;f=c[j>>2]|0;if(!f)break;else{v=f;w=j}}if(w>>>0<b>>>0)Aa();else{c[w>>2]=0;u=v;break}}else{j=c[d+8>>2]|0;if(j>>>0<b>>>0)Aa();f=j+12|0;if((c[f>>2]|0)!=(d|0))Aa();k=e+8|0;if((c[k>>2]|0)==(d|0)){c[f>>2]=e;c[k>>2]=j;u=e;break}else Aa()}while(0);if(o|0){e=c[d+28>>2]|0;h=42560+(e<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=u;if(!u){c[10565]=c[10565]&~(1<<e);break}}else{if(o>>>0<(c[10568]|0)>>>0)Aa();e=o+16|0;if((c[e>>2]|0)==(d|0))c[e>>2]=u;else c[o+20>>2]=u;if(!u)break}e=c[10568]|0;if(u>>>0<e>>>0)Aa();c[u+24>>2]=o;h=d+16|0;g=c[h>>2]|0;do if(g|0)if(g>>>0<e>>>0)Aa();else{c[u+16>>2]=g;c[g+24>>2]=u;break}while(0);g=c[h+4>>2]|0;if(g|0)if(g>>>0<(c[10568]|0)>>>0)Aa();else{c[u+20>>2]=g;c[g+24>>2]=u;break}}}else{g=c[d+8>>2]|0;e=c[d+12>>2]|0;o=42296+(t<<1<<2)|0;if((g|0)!=(o|0)){if(g>>>0<b>>>0)Aa();if((c[g+12>>2]|0)!=(d|0))Aa()}if((e|0)==(g|0)){c[10564]=c[10564]&~(1<<t);break}if((e|0)!=(o|0)){if(e>>>0<b>>>0)Aa();o=e+8|0;if((c[o>>2]|0)==(d|0))x=o;else Aa()}else x=e+8|0;c[g+12>>2]=e;c[x>>2]=g}while(0);c[l+4>>2]=s|1;c[l+s>>2]=s;if((l|0)==(c[10569]|0)){c[10566]=s;return}else y=s}else{c[a>>2]=r&-2;c[l+4>>2]=m|1;c[l+m>>2]=m;y=m}m=y>>>3;if(y>>>0<256){r=42296+(m<<1<<2)|0;a=c[10564]|0;s=1<<m;if(a&s){m=r+8|0;x=c[m>>2]|0;if(x>>>0<(c[10568]|0)>>>0)Aa();else{z=x;A=m}}else{c[10564]=a|s;z=r;A=r+8|0}c[A>>2]=l;c[z+12>>2]=l;c[l+8>>2]=z;c[l+12>>2]=r;return}r=y>>>8;if(r)if(y>>>0>16777215)B=31;else{z=(r+1048320|0)>>>16&8;A=r<<z;r=(A+520192|0)>>>16&4;s=A<<r;A=(s+245760|0)>>>16&2;a=14-(r|z|A)+(s<<A>>>15)|0;B=y>>>(a+7|0)&1|a<<1}else B=0;a=42560+(B<<2)|0;c[l+28>>2]=B;c[l+20>>2]=0;c[l+16>>2]=0;A=c[10565]|0;s=1<<B;if(!(A&s)){c[10565]=A|s;c[a>>2]=l;c[l+24>>2]=a;c[l+12>>2]=l;c[l+8>>2]=l;return}s=y<<((B|0)==31?0:25-(B>>>1)|0);B=c[a>>2]|0;while(1){if((c[B+4>>2]&-8|0)==(y|0)){C=127;break}D=B+16+(s>>>31<<2)|0;a=c[D>>2]|0;if(!a){C=124;break}else{s=s<<1;B=a}}if((C|0)==124){if(D>>>0<(c[10568]|0)>>>0)Aa();c[D>>2]=l;c[l+24>>2]=B;c[l+12>>2]=l;c[l+8>>2]=l;return}else if((C|0)==127){C=B+8|0;D=c[C>>2]|0;s=c[10568]|0;if(!(D>>>0>=s>>>0&B>>>0>=s>>>0))Aa();c[D+12>>2]=l;c[C>>2]=l;c[l+8>>2]=D;c[l+12>>2]=B;c[l+24>>2]=0;return}}function $o(a){a=a|0;bp(a);return}function ap(a){a=a|0;bp(a);bz(a);return}function bp(a){a=a|0;c[a>>2]=17164;cp(a,0);Oy(a+28|0);Wo(c[a+32>>2]|0);Wo(c[a+36>>2]|0);Wo(c[a+48>>2]|0);Wo(c[a+60>>2]|0);return}function cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=a+36|0;f=c[a+40>>2]|0;while(1){if(!f)break;g=f+-1|0;wb[c[(c[d>>2]|0)+(g<<2)>>2]&15](b,a,c[(c[e>>2]|0)+(g<<2)>>2]|0);f=g}return}function dp(a){a=a|0;bp(a);bz(a);return}function ep(a){a=a|0;c[a>>2]=17180;Oy(a+4|0);return}function fp(a){a=a|0;c[a>>2]=17180;Oy(a+4|0);bz(a);return}function gp(a,b){a=a|0;b=b|0;return}function hp(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function ip(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function jp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function kp(a){a=a|0;return 0}function lp(a){a=a|0;return 0}function mp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=b+12|0;g=b+16|0;h=0;i=d;while(1){if((h|0)>=(e|0))break;d=c[f>>2]|0;if(d>>>0<(c[g>>2]|0)>>>0){c[f>>2]=d+1;j=a[d>>0]|0}else{d=tb[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((d|0)==-1)break;j=d&255}a[i>>0]=j;h=h+1|0;i=i+1|0}return h|0}function np(a){a=a|0;return -1}function op(a){a=a|0;var b=0,e=0;if((tb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)b=-1;else{e=a+12|0;a=c[e>>2]|0;c[e>>2]=a+1;b=d[a>>0]|0}return b|0}function pp(a,b){a=a|0;b=b|0;return -1}function qp(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;f=a+24|0;g=a+28|0;h=b;b=0;while(1){if((b|0)>=(e|0))break;i=c[f>>2]|0;j=c[g>>2]|0;if(i>>>0>=j>>>0){if((Bb[c[(c[a>>2]|0)+52>>2]&63](a,d[h>>0]|0)|0)==-1)break;h=h+1|0;b=b+1|0;continue}k=j-i|0;j=e-b|0;l=(j|0)<(k|0)?j:k;if(!l)m=i;else{jB(i|0,h|0,l|0)|0;m=c[f>>2]|0}c[f>>2]=m+l;h=h+l|0;b=l+b|0}return b|0}function rp(a,b){a=a|0;b=b|0;return -1}function sp(a){a=a|0;c[a>>2]=17244;Oy(a+4|0);return}function tp(a){a=a|0;c[a>>2]=17244;Oy(a+4|0);bz(a);return}function up(a,b){a=a|0;b=b|0;return}function vp(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function wp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function xp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function yp(a){a=a|0;return 0}function zp(a){a=a|0;return 0}function Ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=a+12|0;f=a+16|0;g=0;h=b;while(1){if((g|0)>=(d|0))break;b=c[e>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){i=tb[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((i|0)==-1)break;else j=i}else{c[e>>2]=b+4;j=c[b>>2]|0}c[h>>2]=j;g=g+1|0;h=h+4|0}return g|0}function Bp(a){a=a|0;return -1}function Cp(a){a=a|0;var b=0,d=0;if((tb[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1)b=-1;else{d=a+12|0;a=c[d>>2]|0;c[d>>2]=a+4;b=c[a>>2]|0}return b|0}function Dp(a,b){a=a|0;b=b|0;return -1}function Ep(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;e=a+24|0;f=a+28|0;g=b;b=0;while(1){if((b|0)>=(d|0))break;h=c[e>>2]|0;i=c[f>>2]|0;if(h>>>0<i>>>0){j=i-h>>2;i=d-b|0;k=(i|0)<(j|0)?i:j;Gp(h,g,k)|0;c[e>>2]=(c[e>>2]|0)+(k<<2);g=g+(k<<2)|0;b=k+b|0;continue}if((Bb[c[(c[a>>2]|0)+52>>2]&63](a,c[g>>2]|0)|0)==-1)break;g=g+4|0;b=b+1|0}return b|0}function Fp(a,b){a=a|0;b=b|0;return -1}function Gp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else d=zo(a,b,c)|0;return d|0}function Hp(a){a=a|0;bp(a+8|0);return}function Ip(a){a=a|0;bp(a+8|0);bz(a);return}function Jp(a){a=a|0;bp(a+(c[(c[a>>2]|0)+-12>>2]|0)+8|0);return}function Kp(a){a=a|0;Ip(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Lp(a){a=a|0;bp(a+8|0);return}function Mp(a){a=a|0;bp(a+8|0);bz(a);return}function Np(a){a=a|0;bp(a+(c[(c[a>>2]|0)+-12>>2]|0)+8|0);return}function Op(a){a=a|0;Mp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Pp(a){a=a|0;bp(a+4|0);return}function Qp(a){a=a|0;bp(a+4|0);bz(a);return}function Rp(a){a=a|0;bp(a+(c[(c[a>>2]|0)+-12>>2]|0)+4|0);return}function Sp(a){a=a|0;Qp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Tp(a){a=a|0;bp(a+4|0);return}function Up(a){a=a|0;bp(a+4|0);bz(a);return}function Vp(a){a=a|0;bp(a+(c[(c[a>>2]|0)+-12>>2]|0)+4|0);return}function Wp(a){a=a|0;Up(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Xp(a){a=a|0;bp(a+12|0);return}function Yp(a){a=a|0;bp(a+12|0);bz(a);return}function Zp(a){a=a|0;bp(a+-8+12|0);return}function _p(a){a=a|0;Yp(a+-8|0);return}function $p(a){a=a|0;bp(a+(c[(c[a>>2]|0)+-12>>2]|0)+12|0);return}function aq(a){a=a|0;Yp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function bq(a){a=a|0;Wz(a);return}function cq(a){a=a|0;Wz(a);bz(a);return}function dq(a){a=a|0;bz(a);return}function eq(a){a=a|0;return 37663}function fq(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)!=1&(d|0)<257)Yz(a,b,d);else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,37627,35)}return}function gq(a,b){a=a|0;b=b|0;c[a+16>>2]=(c[a+24>>2]|0)==0|b;return}function hq(a,b){a=a|0;b=b|0;var d=0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;b=a+28|0;d=a+32|0;a=d+40|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));My(b);return}function iq(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;Ny(d,a+28|0);l=b;return c[d>>2]|0}function jq(a){a=a|0;var b=0;c[a>>2]=17180;My(a+4|0);b=a+8|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;return}function kq(a){a=a|0;var b=0;c[a>>2]=17244;My(a+4|0);b=a+8|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;return}function lq(a,b){a=a|0;b=b|0;return}function mq(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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=l;l=l+16|0;i=h;a[e>>0]=0;j=f+(c[(c[f>>2]|0)+-12>>2]|0)|0;k=j+16|0;m=c[k>>2]|0;if(!m){n=c[j+72>>2]|0;if(n|0)nq(n)|0;do if(!g?(n=f+(c[(c[f>>2]|0)+-12>>2]|0)|0,c[n+4>>2]&4096|0):0){c[i>>2]=iq(n)|0;n=Hr(i,43804)|0;Oy(i);o=c[f+(c[(c[f>>2]|0)+-12>>2]|0)+24>>2]|0;p=n+8|0;n=o;q=(o|0)==0;r=n+12|0;s=n+16|0;t=o;u=o;v=u+12|0;w=u+16|0;x=o;y=o;while(1){if(q){z=0;A=0;break}if((c[r>>2]|0)==(c[s>>2]|0)?(tb[c[(c[t>>2]|0)+36>>2]&127](n)|0)==-1:0){z=0;A=0;break}B=c[v>>2]|0;if((B|0)==(c[w>>2]|0))C=tb[c[(c[x>>2]|0)+36>>2]&127](u)|0;else C=d[B>>0]|0;if((C&255)<<24>>24<=-1){z=u;A=o;break}if(!(b[(c[p>>2]|0)+(C<<24>>24<<1)>>1]&8192)){z=u;A=o;break}B=c[v>>2]|0;if((B|0)==(c[w>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](u)|0;continue}else{c[v>>2]=B+1;continue}}if(A|0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))break;if((tb[c[(c[A>>2]|0)+36>>2]&127](z)|0)!=-1)break}v=f+(c[(c[f>>2]|0)+-12>>2]|0)|0;u=v+16|0;c[u>>2]=c[u>>2]|(c[v+24>>2]|0)==0|6}while(0);a[e>>0]=(c[f+(c[(c[f>>2]|0)+-12>>2]|0)+16>>2]|0)==0&1}else c[k>>2]=m|(c[j+24>>2]|0)==0|4;l=h;return}function nq(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0){oq(e,b);if(a[e>>0]|0?(f=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0,(tb[c[(c[f>>2]|0)+24>>2]&127](f)|0)==-1):0){f=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[f>>2]=c[f>>2]|1}pq(e)}l=d;return b|0}function oq(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=d+(c[(c[d>>2]|0)+-12>>2]|0)|0;if(!(c[e+16>>2]|0)){d=c[e+72>>2]|0;if(d|0)nq(d)|0;a[b>>0]=1}return}function pq(a){a=a|0;var b=0,d=0;b=a+4|0;a=c[b>>2]|0;d=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;if((((c[d+24>>2]|0?(c[d+16>>2]|0)==0:0)?c[d+4>>2]&8192|0:0)?!(Fa()|0):0)?(d=c[b>>2]|0,a=c[d+(c[(c[d>>2]|0)+-12>>2]|0)+24>>2]|0,(tb[c[(c[a>>2]|0)+24>>2]&127](a)|0)==-1):0){a=c[b>>2]|0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)+16|0;c[b>>2]=c[b>>2]|1}return}function qq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+32|0;f=e+20|0;g=e+16|0;h=e+12|0;i=e+8|0;j=e+24|0;k=e+4|0;m=e;mq(j,b,0);if(a[j>>0]|0){c[k>>2]=0;c[m>>2]=iq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;j=Hr(m,43828)|0;n=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;o=c[(c[j>>2]|0)+40>>2]|0;c[h>>2]=c[n+24>>2];c[i>>2]=0;c[g>>2]=c[h>>2];c[f>>2]=c[i>>2];sb[o&63](j,g,f,n,k,d)|0;Oy(m);m=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;d=m+16|0;c[d>>2]=c[d>>2]|c[k>>2]|(c[m+24>>2]|0)==0}l=e;return b|0}function rq(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+16|0;f=e;g=b+4|0;c[g>>2]=0;mq(f,b,1);do if(!(a[f>>0]|0))h=-1;else{i=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;j=i+12|0;k=c[j>>2]|0;if((k|0)==(c[i+16>>2]|0)){m=tb[c[(c[i>>2]|0)+40>>2]&127](i)|0;if((m|0)==-1){i=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;n=i+16|0;c[n>>2]=c[n>>2]|(c[i+24>>2]|0)==0|6;h=-1;break}else o=m}else{c[j>>2]=k+1;o=d[k>>0]|0}c[g>>2]=1;h=o}while(0);l=e;return h|0}function sq(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0){tq(e,b);if(a[e>>0]|0?(f=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0,(tb[c[(c[f>>2]|0)+24>>2]&127](f)|0)==-1):0){f=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[f>>2]=c[f>>2]|1}uq(e)}l=d;return b|0}function tq(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=d+(c[(c[d>>2]|0)+-12>>2]|0)|0;if(!(c[e+16>>2]|0)){d=c[e+72>>2]|0;if(d|0)sq(d)|0;a[b>>0]=1}return}function uq(a){a=a|0;var b=0,d=0;b=a+4|0;a=c[b>>2]|0;d=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;if((((c[d+24>>2]|0?(c[d+16>>2]|0)==0:0)?c[d+4>>2]&8192|0:0)?!(Fa()|0):0)?(d=c[b>>2]|0,a=c[d+(c[(c[d>>2]|0)+-12>>2]|0)+24>>2]|0,(tb[c[(c[a>>2]|0)+24>>2]&127](a)|0)==-1):0){a=c[b>>2]|0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)+16|0;c[b>>2]=c[b>>2]|1}return}function vq(a,b){a=a|0;b=b|0;return}function wq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;oq(h,b);if(a[h>>0]|0){c[f>>2]=iq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;i=Hr(f,43860)|0;Oy(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=j+76|0;n=c[m>>2]|0;if((n|0)==-1){c[f>>2]=iq(j)|0;o=Hr(f,43804)|0;p=Bb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Oy(f);o=p<<24>>24;c[m>>2]=o;q=o}else q=n;n=c[(c[i>>2]|0)+16>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Db[n&31](i,f,j,q&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[d>>2]=c[d>>2]|5}}pq(h);l=e;return b|0}function xq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;oq(h,b);if(a[h>>0]|0){c[f>>2]=iq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;i=Hr(f,43860)|0;Oy(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=j+76|0;n=c[m>>2]|0;if((n|0)==-1){c[f>>2]=iq(j)|0;o=Hr(f,43804)|0;p=Bb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Oy(f);o=p<<24>>24;c[m>>2]=o;q=o}else q=n;n=c[(c[i>>2]|0)+24>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Db[n&31](i,f,j,q&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[d>>2]=c[d>>2]|5}}pq(h);l=e;return b|0}function yq(b,d){b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;oq(h,b);if(a[h>>0]|0){c[f>>2]=iq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;i=Hr(f,43860)|0;Oy(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=j+76|0;n=c[m>>2]|0;if((n|0)==-1){c[f>>2]=iq(j)|0;o=Hr(f,43804)|0;p=Bb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Oy(f);o=p<<24>>24;c[m>>2]=o;q=o}else q=n;n=c[(c[i>>2]|0)+32>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Cb[n&7](i,f,j,q&255,d)|0)){q=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[q>>2]=c[q>>2]|5}}pq(h);l=e;return b|0}function zq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;oq(h,b);if(a[h>>0]|0){c[f>>2]=iq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0)|0;i=Hr(f,43860)|0;Oy(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=j+76|0;n=c[m>>2]|0;if((n|0)==-1){c[f>>2]=iq(j)|0;o=Hr(f,43804)|0;p=Bb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Oy(f);o=p<<24>>24;c[m>>2]=o;q=o}else q=n;n=c[(c[i>>2]|0)+40>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Db[n&31](i,f,j,q&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[d>>2]=c[d>>2]|5}}pq(h);l=e;return b|0}function Aq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+16|0;f=e;oq(f,b);a:do if(a[f>>0]|0){g=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;h=g;do if(g|0){i=h+24|0;j=c[i>>2]|0;if((j|0)==(c[h+28>>2]|0))if((Bb[c[(c[g>>2]|0)+52>>2]&63](h,d&255)|0)==-1)break;else break a;else{c[i>>2]=j+1;a[j>>0]=d;break a}}while(0);h=b+(c[(c[b>>2]|0)+-12>>2]|0)+16|0;c[h>>2]=c[h>>2]|1}while(0);pq(f);l=e;return b|0}function Bq(a,b){a=a|0;b=b|0;return}function Cq(){if((a[41232]|0)==0?WA(41232)|0:0){c[10688]=17488;Za(173,42752,o|0)|0}return 42752}function Dq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;g=e;h=d;d=c[h+4>>2]|0;i=g;c[i>>2]=c[h>>2];c[i+4>>2]=d;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_z(a,f,b);c[a>>2]=17468;l=e;return}function Eq(a){a=a|0;var b=0;b=a+16|0;c[b>>2]=c[b>>2]|1;return}function Fq(){Hq(0);Za(265,47806,o|0)|0;return}function Gq(){return}function Hq(a){a=a|0;var b=0;a=c[3447]|0;Jq(43436,a,43492);c[10689]=17312;c[10691]=17332;c[10690]=0;hq(42764,43436);c[10709]=0;c[10710]=-1;Kq(43500,a,43556);c[10711]=17352;c[10713]=17372;c[10712]=0;hq(42852,43500);c[10731]=0;c[10732]=-1;a=c[3417]|0;Lq(43564,a,43612);c[10733]=17392;c[10734]=17412;hq(42936,43564);c[10752]=0;c[10753]=-1;Mq(43620,a,43668);c[10754]=17432;c[10755]=17452;hq(43020,43620);c[10773]=0;c[10774]=-1;a=c[3388]|0;Lq(43676,a,43724);c[10775]=17392;c[10776]=17412;hq(43104,43676);c[10794]=0;c[10795]=-1;b=c[43100+(c[(c[10775]|0)+-12>>2]|0)+24>>2]|0;c[10817]=17392;c[10818]=17412;hq(43272,b);c[10836]=0;c[10837]=-1;Mq(43732,a,43780);c[10796]=17432;c[10797]=17452;hq(43188,43732);c[10815]=0;c[10816]=-1;a=c[43184+(c[(c[10796]|0)+-12>>2]|0)+24>>2]|0;c[10838]=17432;c[10839]=17452;hq(43356,a);c[10857]=0;c[10858]=-1;c[42756+(c[(c[10689]|0)+-12>>2]|0)+72>>2]=42932;c[42844+(c[(c[10711]|0)+-12>>2]|0)+72>>2]=43016;a=43100+(c[(c[10775]|0)+-12>>2]|0)+4|0;c[a>>2]=c[a>>2]|8192;a=43184+(c[(c[10796]|0)+-12>>2]|0)+4|0;c[a>>2]=c[a>>2]|8192;c[43100+(c[(c[10775]|0)+-12>>2]|0)+72>>2]=42932;c[43184+(c[(c[10796]|0)+-12>>2]|0)+72>>2]=43016;return}function Iq(a){a=a|0;nq(42932)|0;sq(43016)|0;nq(43268)|0;sq(43352)|0;return}function Jq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;jq(b);c[b>>2]=17716;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Ny(g,b+4|0);c[h>>2]=c[g>>2];br(b,h);Oy(h);l=f;return}function Kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;kq(b);c[b>>2]=17652;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Ny(g,b+4|0);c[h>>2]=c[g>>2];Xq(b,h);Oy(h);l=f;return}function Lq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;jq(b);c[b>>2]=17588;c[b+32>>2]=d;Ny(g,b+4|0);c[h>>2]=c[g>>2];g=Hr(h,45596)|0;Oy(h);c[b+36>>2]=g;c[b+40>>2]=e;a[b+44>>0]=(tb[c[(c[g>>2]|0)+28>>2]&127](g)|0)&1;l=f;return}function Mq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f+4|0;h=f;kq(b);c[b>>2]=17524;c[b+32>>2]=d;Ny(g,b+4|0);c[h>>2]=c[g>>2];g=Hr(h,45604)|0;Oy(h);c[b+36>>2]=g;c[b+40>>2]=e;a[b+44>>0]=(tb[c[(c[g>>2]|0)+28>>2]&127](g)|0)&1;l=f;return}function Nq(a){a=a|0;sp(a);bz(a);return}function Oq(b,d){b=b|0;d=d|0;var e=0;tb[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Hr(d,45604)|0;c[b+36>>2]=e;a[b+44>>0]=(tb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}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,m=0,n=0;b=l;l=l+16|0;d=b+8|0;e=b;f=a+36|0;g=a+40|0;h=d+8|0;i=d;j=a+32|0;a:while(1){a=c[f>>2]|0;k=Db[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;a=(c[e>>2]|0)-i|0;if((Po(d,1,a,c[j>>2]|0)|0)!=(a|0)){m=-1;break}switch(k|0){case 1:break;case 2:{m=-1;break a;break}default:{n=4;break a}}}if((n|0)==4)m=(($n(c[j>>2]|0)|0)!=0)<<31>>31;l=b;return m|0}function Qq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!(a[b+44>>0]|0)){f=0;g=d;while(1){if((f|0)>=(e|0)){h=f;break a}if((Bb[c[(c[b>>2]|0)+52>>2]&63](b,c[g>>2]|0)|0)==-1){h=f;break a}f=f+1|0;g=g+4|0}}else h=Po(d,4,e,c[b+32>>2]|0)|0;while(0);return h|0}function Rq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=(d|0)==-1;do if(!j){c[g>>2]=d;if(a[b+44>>0]|0)if((Po(g,4,1,c[b+32>>2]|0)|0)==1){k=14;break}else{m=-1;break}c[h>>2]=f;n=g+4|0;o=b+36|0;p=b+40|0;q=f+8|0;r=f;s=b+32|0;t=g;while(1){u=c[o>>2]|0;v=yb[c[(c[u>>2]|0)+12>>2]&15](u,c[p>>2]|0,t,n,i,f,q,h)|0;if((c[i>>2]|0)==(t|0)){k=13;break}if((v|0)==3){k=7;break}if((v|1|0)!=1){k=13;break}u=(c[h>>2]|0)-r|0;if((Po(f,1,u,c[s>>2]|0)|0)!=(u|0)){k=13;break}if((v|0)==1)t=c[i>>2]|0;else{k=12;break}}if((k|0)==7)if((Po(t,1,1,c[s>>2]|0)|0)==1)k=12;else k=13;if((k|0)==12){k=14;break}else if((k|0)==13){m=-1;break}}else k=14;while(0);if((k|0)==14)m=j?0:d;l=e;return m|0}function Sq(a){a=a|0;ep(a);bz(a);return}function Tq(b,d){b=b|0;d=d|0;var e=0;tb[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Hr(d,45596)|0;c[b+36>>2]=e;a[b+44>>0]=(tb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function Uq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;b=l;l=l+16|0;d=b+8|0;e=b;f=a+36|0;g=a+40|0;h=d+8|0;i=d;j=a+32|0;a:while(1){a=c[f>>2]|0;k=Db[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;a=(c[e>>2]|0)-i|0;if((Po(d,1,a,c[j>>2]|0)|0)!=(a|0)){m=-1;break}switch(k|0){case 1:break;case 2:{m=-1;break a;break}default:{n=4;break a}}}if((n|0)==4)m=(($n(c[j>>2]|0)|0)!=0)<<31>>31;l=b;return m|0}function Vq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do if(!(a[b+44>>0]|0)){g=0;h=e;while(1){if((g|0)>=(f|0)){i=g;break a}if((Bb[c[(c[b>>2]|0)+52>>2]&63](b,d[h>>0]|0)|0)==-1){i=g;break a}g=g+1|0;h=h+1|0}}else i=Po(e,1,f,c[b+32>>2]|0)|0;while(0);return i|0}function Wq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=(d|0)==-1;do if(!j){a[g>>0]=d;if(a[b+44>>0]|0)if((Po(g,1,1,c[b+32>>2]|0)|0)==1){k=14;break}else{m=-1;break}c[h>>2]=f;n=g+1|0;o=b+36|0;p=b+40|0;q=f+8|0;r=f;s=b+32|0;t=g;while(1){u=c[o>>2]|0;v=yb[c[(c[u>>2]|0)+12>>2]&15](u,c[p>>2]|0,t,n,i,f,q,h)|0;if((c[i>>2]|0)==(t|0)){k=13;break}if((v|0)==3){k=7;break}if((v|1|0)!=1){k=13;break}u=(c[h>>2]|0)-r|0;if((Po(f,1,u,c[s>>2]|0)|0)!=(u|0)){k=13;break}if((v|0)==1)t=c[i>>2]|0;else{k=12;break}}if((k|0)==7)if((Po(t,1,1,c[s>>2]|0)|0)==1)k=12;else k=13;if((k|0)==12){k=14;break}else if((k|0)==13){m=-1;break}}else k=14;while(0);if((k|0)==14)m=j?0:d;l=e;return m|0}function Xq(b,d){b=b|0;d=d|0;var e=0,f=0;e=Hr(d,45604)|0;d=b+36|0;c[d>>2]=e;f=b+44|0;c[f>>2]=tb[c[(c[e>>2]|0)+24>>2]&127](e)|0;e=c[d>>2]|0;a[b+53>>0]=(tb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function Yq(a){a=a|0;sp(a);bz(a);return}function Zq(a){a=a|0;return ar(a,0)|0}function _q(a){a=a|0;return ar(a,1)|0}function $q(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=b+52|0;k=(a[j>>0]|0)!=0;a:do if((d|0)==-1)if(k)m=-1;else{n=c[b+48>>2]|0;a[j>>0]=(n|0)!=-1&1;m=n}else{b:do if(k){n=b+48|0;c[h>>2]=c[n>>2];o=c[b+36>>2]|0;switch(yb[c[(c[o>>2]|0)+12>>2]&15](o,c[b+40>>2]|0,h,h+4|0,i,f,f+8|0,g)|0){case 1:case 2:break;case 3:{a[f>>0]=c[n>>2];c[g>>2]=f+1;p=8;break}default:p=8}c:do if((p|0)==8){o=b+32|0;while(1){q=c[g>>2]|0;if(q>>>0<=f>>>0)break;r=q+-1|0;c[g>>2]=r;if((No(a[r>>0]|0,c[o>>2]|0)|0)==-1)break c}s=n;break b}while(0);m=-1;break a}else s=b+48|0;while(0);c[s>>2]=d;a[j>>0]=1;m=d}while(0);l=e;return m|0}function ar(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=b+52|0;if(a[j>>0]|0){k=b+48|0;m=c[k>>2]|0;if(d){c[k>>2]=-1;a[j>>0]=0;n=m}else n=m}else{m=c[b+44>>2]|0;j=(m|0)>1?m:1;m=b+32|0;k=0;while(1){if((k|0)>=(j|0)){o=8;break}p=Uo(c[m>>2]|0)|0;if((p|0)==-1){q=-1;break}a[f+k>>0]=p;k=k+1|0}if((o|0)==8){do if(!(a[b+53>>0]|0)){k=b+40|0;p=b+36|0;r=g+4|0;s=j;a:while(1){t=c[k>>2]|0;u=t;v=c[u>>2]|0;w=c[u+4>>2]|0;u=c[p>>2]|0;x=f+s|0;switch(yb[c[(c[u>>2]|0)+16>>2]&15](u,t,f,x,h,g,r,i)|0){case 3:{o=15;break a;break}case 2:{o=17;break a;break}case 1:break;default:break a}t=c[k>>2]|0;c[t>>2]=v;c[t+4>>2]=w;if((s|0)==8){o=17;break}w=Uo(c[m>>2]|0)|0;if((w|0)==-1){o=17;break}a[x>>0]=w;s=s+1|0}if((o|0)==15)c[g>>2]=a[f>>0];else if((o|0)==17){y=-1;break}z=s;o=18}else{c[g>>2]=a[f>>0];z=j;o=18}while(0);b:do if((o|0)==18){if(d){j=c[g>>2]|0;c[b+48>>2]=j;y=j;break}else A=z;while(1){if((A|0)<=0)break;A=A+-1|0;if((No(a[f+A>>0]|0,c[m>>2]|0)|0)==-1){y=-1;break b}}y=c[g>>2]|0}while(0);q=y}n=q}l=e;return n|0}function br(b,d){b=b|0;d=d|0;var e=0,f=0;e=Hr(d,45596)|0;d=b+36|0;c[d>>2]=e;f=b+44|0;c[f>>2]=tb[c[(c[e>>2]|0)+24>>2]&127](e)|0;e=c[d>>2]|0;a[b+53>>0]=(tb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function cr(a){a=a|0;ep(a);bz(a);return}function dr(a){a=a|0;return gr(a,0)|0}function er(a){a=a|0;return gr(a,1)|0}function fr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=l;l=l+32|0;f=e+16|0;g=e+4|0;h=e+8|0;i=e;j=b+52|0;k=(a[j>>0]|0)!=0;a:do if((d|0)==-1)if(k)m=-1;else{n=c[b+48>>2]|0;a[j>>0]=(n|0)!=-1&1;m=n}else{b:do if(k){n=b+48|0;a[h>>0]=c[n>>2];o=c[b+36>>2]|0;switch(yb[c[(c[o>>2]|0)+12>>2]&15](o,c[b+40>>2]|0,h,h+1|0,i,f,f+8|0,g)|0){case 1:case 2:break;case 3:{a[f>>0]=c[n>>2];c[g>>2]=f+1;p=8;break}default:p=8}c:do if((p|0)==8){o=b+32|0;while(1){q=c[g>>2]|0;if(q>>>0<=f>>>0)break;r=q+-1|0;c[g>>2]=r;if((No(a[r>>0]|0,c[o>>2]|0)|0)==-1)break c}s=n;break b}while(0);m=-1;break a}else s=b+48|0;while(0);c[s>>2]=d;a[j>>0]=1;m=d}while(0);l=e;return m|0}function gr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=l;l=l+32|0;g=f+16|0;h=f+8|0;i=f+4|0;j=f;k=b+52|0;if(a[k>>0]|0){m=b+48|0;n=c[m>>2]|0;if(e){c[m>>2]=-1;a[k>>0]=0;o=n}else o=n}else{n=c[b+44>>2]|0;k=(n|0)>1?n:1;n=b+32|0;m=0;while(1){if((m|0)>=(k|0)){p=8;break}q=Uo(c[n>>2]|0)|0;if((q|0)==-1){r=-1;break}a[g+m>>0]=q;m=m+1|0}if((p|0)==8){do if(!(a[b+53>>0]|0)){m=b+40|0;q=b+36|0;s=h+1|0;t=k;a:while(1){u=c[m>>2]|0;v=u;w=c[v>>2]|0;x=c[v+4>>2]|0;v=c[q>>2]|0;y=g+t|0;switch(yb[c[(c[v>>2]|0)+16>>2]&15](v,u,g,y,i,h,s,j)|0){case 3:{p=15;break a;break}case 2:{p=17;break a;break}case 1:break;default:break a}u=c[m>>2]|0;c[u>>2]=w;c[u+4>>2]=x;if((t|0)==8){p=17;break}x=Uo(c[n>>2]|0)|0;if((x|0)==-1){p=17;break}a[y>>0]=x;t=t+1|0}if((p|0)==15)a[h>>0]=a[g>>0]|0;else if((p|0)==17){z=-1;break}A=t;p=18}else{a[h>>0]=a[g>>0]|0;A=k;p=18}while(0);b:do if((p|0)==18){if(e){k=a[h>>0]|0;c[b+48>>2]=k&255;B=k}else{k=A;while(1){if((k|0)<=0)break;k=k+-1|0;if((No(d[g+k>>0]|0,c[n>>2]|0)|0)==-1){z=-1;break b}}B=a[h>>0]|0}z=B&255}while(0);r=z}o=r}l=f;return o|0}function hr(a){a=a|0;return}function ir(a){a=a|0;bz(a);return}function jr(a){a=a|0;if(a|0)qb[c[(c[a>>2]|0)+4>>2]&511](a);return}function kr(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;b=e;e=c;while(1){if((b|0)==(f|0)){g=7;break}if((e|0)==(d|0)){h=-1;break}c=a[e>>0]|0;i=a[b>>0]|0;if(c<<24>>24<i<<24>>24){h=-1;break}if(i<<24>>24<c<<24>>24){h=1;break}b=b+1|0;e=e+1|0}if((g|0)==7)h=(e|0)!=(d|0)&1;return h|0}function lr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;nr(a,d,e);return}function mr(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;b=0;e=c;while(1){if((e|0)==(d|0))break;c=(a[e>>0]|0)+(b<<4)|0;f=c&-268435456;b=(f>>>24|f)^c;e=e+1|0}return b|0}function nr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=d;g=e-f|0;if(g>>>0>4294967279)iz(b);if(g>>>0<11){a[b+11>>0]=g;h=b}else{i=g+16&-16;j=$y(i)|0;c[b>>2]=j;c[b+8>>2]=i|-2147483648;c[b+4>>2]=g;h=j}j=e-f|0;f=d;d=h;while(1){if((f|0)==(e|0))break;a[d>>0]=a[f>>0]|0;f=f+1|0;d=d+1|0}a[h+j>>0]=0;return}function or(a){a=a|0;return}function pr(a){a=a|0;bz(a);return}function qr(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;a=e;e=b;while(1){if((a|0)==(f|0)){g=7;break}if((e|0)==(d|0)){h=-1;break}b=c[e>>2]|0;i=c[a>>2]|0;if((b|0)<(i|0)){h=-1;break}if((i|0)<(b|0)){h=1;break}a=a+4|0;e=e+4|0}if((g|0)==7)h=(e|0)!=(d|0)&1;return h|0}function rr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;tr(a,d,e);return}function sr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=0;e=b;while(1){if((e|0)==(d|0))break;b=(c[e>>2]|0)+(a<<4)|0;f=b&-268435456;a=(f>>>24|f)^b;e=e+4|0}return a|0}function tr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=d;g=e-f>>2;if(g>>>0>1073741807)iz(b);do if(g>>>0>=2){h=g+4&-4;if(h>>>0>1073741823)Da(40320,40357,1734,40406);else{i=$y(h<<2)|0;c[b>>2]=i;c[b+8>>2]=h|-2147483648;c[b+4>>2]=g;j=i;break}}else{a[b+8+3>>0]=g;j=b}while(0);b=(e-f|0)>>>2;f=d;d=j;while(1){if((f|0)==(e|0))break;c[d>>2]=c[f>>2];f=f+4|0;d=d+4|0}c[j+(b<<2)>>2]=0;return}function ur(a){a=a|0;return}function vr(a){a=a|0;bz(a);return}function wr(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,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+48|0;j=i+40|0;k=i+16|0;m=i+8|0;n=i+12|0;o=i+4|0;p=i;if(!(c[f+4>>2]&1)){c[m>>2]=-1;q=c[(c[b>>2]|0)+16>>2]|0;c[n>>2]=c[d>>2];c[o>>2]=c[e>>2];c[k>>2]=c[n>>2];c[j>>2]=c[o>>2];c[d>>2]=sb[q&63](b,k,j,f,g,m)|0;switch(c[m>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}r=c[d>>2]|0}else{m=iq(f)|0;c[j>>2]=m;b=Hr(j,43804)|0;Wy(m)|0;m=iq(f)|0;c[j>>2]=m;f=Hr(j,43820)|0;Wy(m)|0;rb[c[(c[f>>2]|0)+24>>2]&127](k,f);rb[c[(c[f>>2]|0)+28>>2]&127](k+12|0,f);c[p>>2]=c[e>>2];e=k+24|0;c[j>>2]=c[p>>2];a[h>>0]=(js(d,j,k,e,b,g,1)|0)==(k|0)&1;g=c[d>>2]|0;d=e;do{d=d+-12|0;oz(d)}while((d|0)!=(k|0));r=g}l=i;return r|0}function xr(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=hs(a,j,i,e,f,g)|0;l=h;return m|0}function yr(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=fs(a,j,i,e,f,g)|0;l=h;return m|0}function zr(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=ds(a,j,i,e,f,g)|0;l=h;return m|0}function Ar(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=bs(a,j,i,e,f,g)|0;l=h;return m|0}function Br(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=$r(a,j,i,e,f,g)|0;l=h;return m|0}function Cr(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Xr(a,j,i,e,f,g)|0;l=h;return m|0}function Dr(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Vr(a,j,i,e,f,g)|0;l=h;return m|0}function Er(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Tr(a,j,i,e,f,g)|0;l=h;return m|0}function Fr(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Or(a,j,i,e,f,g)|0;l=h;return m|0}function Gr(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+240|0;j=b;k=b+204|0;m=b+192|0;n=b+180|0;o=b+176|0;p=b+16|0;q=b+8|0;r=b+4|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[m+(s<<2)>>2]=0;s=s+1|0}s=iq(g)|0;c[n>>2]=s;g=Hr(n,43804)|0;zb[c[(c[g>>2]|0)+32>>2]&15](g,37900,37926,k)|0;Wy(s)|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[n+(s<<2)>>2]=0;s=s+1|0}s=n+11|0;g=n+8|0;if((a[s>>0]|0)<0)t=(c[g>>2]&2147483647)+-1|0;else t=10;uz(n,t,0);t=(a[s>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=t;c[q>>2]=p;c[r>>2]=0;u=n+4|0;v=t;t=c[e>>2]|0;a:while(1){if(t)if((c[t+12>>2]|0)==(c[t+16>>2]|0)?(tb[c[(c[t>>2]|0)+36>>2]&127](t)|0)==-1:0){c[e>>2]=0;w=0}else w=t;else w=0;x=(w|0)==0;y=c[f>>2]|0;do if(y){if((c[y+12>>2]|0)!=(c[y+16>>2]|0))if(x){z=y;break}else{A=v;B=y;break a}if((tb[c[(c[y>>2]|0)+36>>2]&127](y)|0)!=-1)if(x){z=y;break}else{A=v;B=y;break a}else{c[f>>2]=0;C=19;break}}else C=19;while(0);if((C|0)==19){C=0;if(x){A=v;B=0;break}else z=0}y=a[s>>0]|0;D=y<<24>>24<0?c[u>>2]|0:y&255;if((c[o>>2]|0)==(v+D|0)){uz(n,D<<1,0);if((a[s>>0]|0)<0)E=(c[g>>2]&2147483647)+-1|0;else E=10;uz(n,E,0);y=(a[s>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=y+D;F=y}else F=v;y=w+12|0;D=c[y>>2]|0;G=w+16|0;if((D|0)==(c[G>>2]|0))H=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else H=d[D>>0]|0;if(Ir(H&255,16,F,o,r,0,m,p,q,k)|0){A=F;B=z;break}D=c[y>>2]|0;if((D|0)==(c[G>>2]|0)){tb[c[(c[w>>2]|0)+40>>2]&127](w)|0;v=F;t=w;continue}else{c[y>>2]=D+1;v=F;t=w;continue}}uz(n,(c[o>>2]|0)-A|0,0);A=(a[s>>0]|0)<0?c[n>>2]|0:n;s=Jr()|0;c[j>>2]=i;if((Kr(A,s,37933,j)|0)!=1)c[h>>2]=4;if(w)if((c[w+12>>2]|0)==(c[w+16>>2]|0)?(tb[c[(c[w>>2]|0)+36>>2]&127](w)|0)==-1:0){c[e>>2]=0;I=0}else I=w;else I=0;w=(I|0)==0;do if(B){if((c[B+12>>2]|0)==(c[B+16>>2]|0)?(tb[c[(c[B>>2]|0)+36>>2]&127](B)|0)==-1:0){c[f>>2]=0;C=43;break}if(!w)C=44}else C=43;while(0);if((C|0)==43?w:0)C=44;if((C|0)==44)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function Hr(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;a=Lr(b)|0;return c[(c[d+8>>2]|0)+(a<<2)>>2]|0}function Ir(b,d,e,f,g,h,i,j,k,l){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;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=c[f>>2]|0;n=(m|0)==(e|0);do if(n){o=(a[l+24>>0]|0)==b<<24>>24;if(!o?(a[l+25>>0]|0)!=b<<24>>24:0){p=5;break}c[f>>2]=e+1;a[e>>0]=o?43:45;c[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=a[i+11>>0]|0;if(b<<24>>24==h<<24>>24?((o<<24>>24<0?c[i+4>>2]|0:o&255)|0)!=0:0){o=c[k>>2]|0;if((o-j|0)>=160){q=0;break}r=c[g>>2]|0;c[k>>2]=o+4;c[o>>2]=r;c[g>>2]=0;q=0;break}r=l+26|0;o=0;while(1){s=l+o|0;if((o|0)==26){t=r;break}if((a[s>>0]|0)==b<<24>>24){t=s;break}else o=o+1|0}o=t-l|0;if((o|0)>23)q=-1;else{switch(d|0){case 10:case 8:{if((o|0)>=(d|0)){q=-1;break a}break}case 16:{if((o|0)>=22){if(n){q=-1;break a}if((m-e|0)>=3){q=-1;break a}if((a[m+-1>>0]|0)!=48){q=-1;break a}c[g>>2]=0;r=a[37900+o>>0]|0;c[f>>2]=m+1;a[m>>0]=r;q=0;break a}break}default:{}}r=a[37900+o>>0]|0;c[f>>2]=m+1;a[m>>0]=r;c[g>>2]=(c[g>>2]|0)+1;q=0}}while(0);return q|0}function Jr(){if((a[41240]|0)==0?WA(41240)|0:0)c[10953]=Fo(2147483647,37936,0)|0;return c[10953]|0}function Kr(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;g=f;c[g>>2]=e;e=Ao(b)|0;b=bo(a,d,g)|0;if(e|0)Ao(e)|0;l=f;return b|0}function Lr(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+32|0;d=b+16|0;e=b+12|0;f=b;c[f>>2]=a;c[f+4>>2]=266;c[f+8>>2]=0;if((c[a>>2]|0)!=-1){c[d>>2]=f;c[e>>2]=d;_y(a,e,267)}l=b;return (c[a+4>>2]|0)+-1|0}function Mr(a){a=a|0;var b=0;b=c[10954]|0;c[10954]=b+1;c[a+4>>2]=b+1;return}function Nr(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[c[a>>2]>>2]|0;a=c[b+4>>2]|0;d=c[b+8>>2]|0;e=(c[b>>2]|0)+(d>>1)|0;if(!(d&1))f=a;else f=c[(c[e>>2]|0)+a>>2]|0;qb[f&511](e);return}function Or(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+240|0;k=b+200|0;m=b+199|0;n=b+198|0;o=b+184|0;p=b+172|0;q=b+168|0;r=b+8|0;s=b+4|0;t=b;u=b+197|0;v=b+196|0;Pr(o,g,k,m,n);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[p+(g<<2)>>2]=0;g=g+1|0}g=p+11|0;w=p+8|0;if((a[g>>0]|0)<0)x=(c[w>>2]&2147483647)+-1|0;else x=10;uz(p,x,0);x=(a[g>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=x;c[s>>2]=r;c[t>>2]=0;a[u>>0]=1;a[v>>0]=69;y=p+4|0;z=x;x=c[e>>2]|0;a:while(1){if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;A=0}else A=x;else A=0;B=(A|0)==0;C=c[f>>2]|0;do if(C){if((c[C+12>>2]|0)!=(c[C+16>>2]|0))if(B){D=C;break}else{E=z;F=C;break a}if((tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)!=-1)if(B){D=C;break}else{E=z;F=C;break a}else{c[f>>2]=0;G=16;break}}else G=16;while(0);if((G|0)==16){G=0;if(B){E=z;F=0;break}else D=0}C=a[g>>0]|0;H=C<<24>>24<0?c[y>>2]|0:C&255;if((c[q>>2]|0)==(z+H|0)){uz(p,H<<1,0);if((a[g>>0]|0)<0)I=(c[w>>2]&2147483647)+-1|0;else I=10;uz(p,I,0);C=(a[g>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=C+H;J=C}else J=z;C=A+12|0;H=c[C>>2]|0;K=A+16|0;if((H|0)==(c[K>>2]|0))L=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else L=d[H>>0]|0;if(Qr(L&255,u,v,J,q,a[m>>0]|0,a[n>>0]|0,o,r,s,t,k)|0){E=J;F=D;break}H=c[C>>2]|0;if((H|0)==(c[K>>2]|0)){tb[c[(c[A>>2]|0)+40>>2]&127](A)|0;z=J;x=A;continue}else{c[C>>2]=H+1;z=J;x=A;continue}}x=a[o+11>>0]|0;if(!((a[u>>0]|0)==0?1:((x<<24>>24<0?c[o+4>>2]|0:x&255)|0)==0)?(x=c[s>>2]|0,(x-r|0)<160):0){u=c[t>>2]|0;c[s>>2]=x+4;c[x>>2]=u}h[j>>3]=+Rr(E,c[q>>2]|0,i);Sr(o,r,c[s>>2]|0,i);if(A)if((c[A+12>>2]|0)==(c[A+16>>2]|0)?(tb[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1:0){c[e>>2]=0;M=0}else M=A;else M=0;A=(M|0)==0;do if(F){if((c[F+12>>2]|0)==(c[F+16>>2]|0)?(tb[c[(c[F>>2]|0)+36>>2]&127](F)|0)==-1:0){c[f>>2]=0;G=41;break}if(!A)G=42}else G=41;while(0);if((G|0)==41?A:0)G=42;if((G|0)==42)c[i>>2]=c[i>>2]|2;i=c[e>>2]|0;oz(p);oz(o);l=b;return i|0}function Pr(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;h=l;l=l+16|0;i=h;j=iq(d)|0;c[i>>2]=j;d=Hr(i,43804)|0;zb[c[(c[d>>2]|0)+32>>2]&15](d,37900,37932,e)|0;e=Hr(i,43820)|0;a[f>>0]=tb[c[(c[e>>2]|0)+12>>2]&127](e)|0;a[g>>0]=tb[c[(c[e>>2]|0)+16>>2]&127](e)|0;rb[c[(c[e>>2]|0)+20>>2]&127](b,e);Wy(j)|0;l=h;return}function Qr(b,e,f,g,h,i,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0;a:do if(b<<24>>24==i<<24>>24)if(a[e>>0]|0){a[e>>0]=0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=46;p=a[k+11>>0]|0;if(((p<<24>>24<0?c[k+4>>2]|0:p&255)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){q=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=q;r=0}else r=0}else r=-1;else{if(b<<24>>24==j<<24>>24?(q=a[k+11>>0]|0,(q<<24>>24<0?c[k+4>>2]|0:q&255)|0):0){if(!(a[e>>0]|0)){r=-1;break}q=c[m>>2]|0;if((q-l|0)>=160){r=0;break}p=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=p;c[n>>2]=0;r=0;break}p=o+32|0;q=0;while(1){s=o+q|0;if((q|0)==32){t=p;break}if((a[s>>0]|0)==b<<24>>24){t=s;break}else q=q+1|0}q=t-o|0;if((q|0)>31)r=-1;else{p=a[37900+q>>0]|0;switch(q|0){case 24:case 25:{s=c[h>>2]|0;if((s|0)!=(g|0)?(d[s+-1>>0]&95|0)!=(d[f>>0]&127|0):0){r=-1;break a}c[h>>2]=s+1;a[s>>0]=p;r=0;break a;break}case 23:case 22:{a[f>>0]=80;s=c[h>>2]|0;c[h>>2]=s+1;a[s>>0]=p;r=0;break a;break}default:{s=p&95;if((((s|0)==(a[f>>0]|0)?(a[f>>0]=s|128,a[e>>0]|0):0)?(a[e>>0]=0,s=a[k+11>>0]|0,(s<<24>>24<0?c[k+4>>2]|0:s&255)|0):0)?(s=c[m>>2]|0,(s-l|0)<160):0){u=c[n>>2]|0;c[m>>2]=s+4;c[s>>2]=u}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=p;if((q|0)>21){r=0;break a}c[n>>2]=(c[n>>2]|0)+1;r=0;break a}}}}while(0);return r|0}function Rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=Rm()|0;i=c[h>>2]|0;c[h>>2]=0;j=+Mn(a,f,Jr()|0);a=c[h>>2]|0;if(!a)c[h>>2]=i;if((c[f>>2]|0)==(b|0))if((a|0)==34){c[d>>2]=4;k=j}else k=j;else{c[d>>2]=4;k=0.0}g=k}l=e;return +g}function Sr(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=a[b+11>>0]|0;h=g<<24>>24<0;i=b+4|0;j=c[i>>2]|0;k=g&255;do if((h?j:k)|0){if((d|0)==(e|0))l=j;else{g=e;m=d;while(1){n=g+-4|0;if(m>>>0>=n>>>0)break;o=c[m>>2]|0;c[m>>2]=c[n>>2];c[n>>2]=o;g=n;m=m+4|0}l=c[i>>2]|0}m=h?c[b>>2]|0:b;g=e+-4|0;n=m+(h?l:k)|0;o=d;p=m;while(1){q=a[p>>0]|0;r=q<<24>>24>0&q<<24>>24!=127;if(o>>>0>=g>>>0)break;if(r?(q<<24>>24|0)!=(c[o>>2]|0):0){s=10;break}o=o+4|0;p=(n-p|0)>1?p+1|0:p}if((s|0)==10){c[f>>2]=4;break}if(r?((c[g>>2]|0)+-1|0)>>>0>=q<<24>>24>>>0:0)c[f>>2]=4}while(0);return}function Tr(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+240|0;k=b+200|0;m=b+199|0;n=b+198|0;o=b+184|0;p=b+172|0;q=b+168|0;r=b+8|0;s=b+4|0;t=b;u=b+197|0;v=b+196|0;Pr(o,g,k,m,n);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[p+(g<<2)>>2]=0;g=g+1|0}g=p+11|0;w=p+8|0;if((a[g>>0]|0)<0)x=(c[w>>2]&2147483647)+-1|0;else x=10;uz(p,x,0);x=(a[g>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=x;c[s>>2]=r;c[t>>2]=0;a[u>>0]=1;a[v>>0]=69;y=p+4|0;z=x;x=c[e>>2]|0;a:while(1){if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;A=0}else A=x;else A=0;B=(A|0)==0;C=c[f>>2]|0;do if(C){if((c[C+12>>2]|0)!=(c[C+16>>2]|0))if(B){D=C;break}else{E=z;F=C;break a}if((tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)!=-1)if(B){D=C;break}else{E=z;F=C;break a}else{c[f>>2]=0;G=16;break}}else G=16;while(0);if((G|0)==16){G=0;if(B){E=z;F=0;break}else D=0}C=a[g>>0]|0;H=C<<24>>24<0?c[y>>2]|0:C&255;if((c[q>>2]|0)==(z+H|0)){uz(p,H<<1,0);if((a[g>>0]|0)<0)I=(c[w>>2]&2147483647)+-1|0;else I=10;uz(p,I,0);C=(a[g>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=C+H;J=C}else J=z;C=A+12|0;H=c[C>>2]|0;K=A+16|0;if((H|0)==(c[K>>2]|0))L=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else L=d[H>>0]|0;if(Qr(L&255,u,v,J,q,a[m>>0]|0,a[n>>0]|0,o,r,s,t,k)|0){E=J;F=D;break}H=c[C>>2]|0;if((H|0)==(c[K>>2]|0)){tb[c[(c[A>>2]|0)+40>>2]&127](A)|0;z=J;x=A;continue}else{c[C>>2]=H+1;z=J;x=A;continue}}x=a[o+11>>0]|0;if(!((a[u>>0]|0)==0?1:((x<<24>>24<0?c[o+4>>2]|0:x&255)|0)==0)?(x=c[s>>2]|0,(x-r|0)<160):0){u=c[t>>2]|0;c[s>>2]=x+4;c[x>>2]=u}h[j>>3]=+Ur(E,c[q>>2]|0,i);Sr(o,r,c[s>>2]|0,i);if(A)if((c[A+12>>2]|0)==(c[A+16>>2]|0)?(tb[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1:0){c[e>>2]=0;M=0}else M=A;else M=0;A=(M|0)==0;do if(F){if((c[F+12>>2]|0)==(c[F+16>>2]|0)?(tb[c[(c[F>>2]|0)+36>>2]&127](F)|0)==-1:0){c[f>>2]=0;G=41;break}if(!A)G=42}else G=41;while(0);if((G|0)==41?A:0)G=42;if((G|0)==42)c[i>>2]=c[i>>2]|2;i=c[e>>2]|0;oz(p);oz(o);l=b;return i|0}function Ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=Rm()|0;i=c[h>>2]|0;c[h>>2]=0;j=+Mn(a,f,Jr()|0);a=c[h>>2]|0;if(!a)c[h>>2]=i;if((c[f>>2]|0)==(b|0))if((a|0)==34){c[d>>2]=4;k=j}else k=j;else{c[d>>2]=4;k=0.0}g=k}l=e;return +g}function Vr(b,e,f,h,i,j){b=b|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+240|0;k=b+200|0;m=b+199|0;n=b+198|0;o=b+184|0;p=b+172|0;q=b+168|0;r=b+8|0;s=b+4|0;t=b;u=b+197|0;v=b+196|0;Pr(o,h,k,m,n);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;h=0;while(1){if((h|0)==3)break;c[p+(h<<2)>>2]=0;h=h+1|0}h=p+11|0;w=p+8|0;if((a[h>>0]|0)<0)x=(c[w>>2]&2147483647)+-1|0;else x=10;uz(p,x,0);x=(a[h>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=x;c[s>>2]=r;c[t>>2]=0;a[u>>0]=1;a[v>>0]=69;y=p+4|0;z=x;x=c[e>>2]|0;a:while(1){if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;A=0}else A=x;else A=0;B=(A|0)==0;C=c[f>>2]|0;do if(C){if((c[C+12>>2]|0)!=(c[C+16>>2]|0))if(B){D=C;break}else{E=z;F=C;break a}if((tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)!=-1)if(B){D=C;break}else{E=z;F=C;break a}else{c[f>>2]=0;G=16;break}}else G=16;while(0);if((G|0)==16){G=0;if(B){E=z;F=0;break}else D=0}C=a[h>>0]|0;H=C<<24>>24<0?c[y>>2]|0:C&255;if((c[q>>2]|0)==(z+H|0)){uz(p,H<<1,0);if((a[h>>0]|0)<0)I=(c[w>>2]&2147483647)+-1|0;else I=10;uz(p,I,0);C=(a[h>>0]|0)<0?c[p>>2]|0:p;c[q>>2]=C+H;J=C}else J=z;C=A+12|0;H=c[C>>2]|0;K=A+16|0;if((H|0)==(c[K>>2]|0))L=tb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else L=d[H>>0]|0;if(Qr(L&255,u,v,J,q,a[m>>0]|0,a[n>>0]|0,o,r,s,t,k)|0){E=J;F=D;break}H=c[C>>2]|0;if((H|0)==(c[K>>2]|0)){tb[c[(c[A>>2]|0)+40>>2]&127](A)|0;z=J;x=A;continue}else{c[C>>2]=H+1;z=J;x=A;continue}}x=a[o+11>>0]|0;if(!((a[u>>0]|0)==0?1:((x<<24>>24<0?c[o+4>>2]|0:x&255)|0)==0)?(x=c[s>>2]|0,(x-r|0)<160):0){u=c[t>>2]|0;c[s>>2]=x+4;c[x>>2]=u}g[j>>2]=+Wr(E,c[q>>2]|0,i);Sr(o,r,c[s>>2]|0,i);if(A)if((c[A+12>>2]|0)==(c[A+16>>2]|0)?(tb[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1:0){c[e>>2]=0;M=0}else M=A;else M=0;A=(M|0)==0;do if(F){if((c[F+12>>2]|0)==(c[F+16>>2]|0)?(tb[c[(c[F>>2]|0)+36>>2]&127](F)|0)==-1:0){c[f>>2]=0;G=41;break}if(!A)G=42}else G=41;while(0);if((G|0)==41?A:0)G=42;if((G|0)==42)c[i>>2]=c[i>>2]|2;i=c[e>>2]|0;oz(p);oz(o);l=b;return i|0}function Wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0,j=0.0,k=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=Rm()|0;i=c[h>>2]|0;c[h>>2]=0;j=+Mn(a,f,Jr()|0);a=c[h>>2]|0;if(!a)c[h>>2]=i;if((c[f>>2]|0)==(b|0)){if((a|0)==34)c[d>>2]=4;k=j}else{c[d>>2]=4;k=0.0}g=k}l=e;return +g}function Xr(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0,I=0,J=0,K=0;b=l;l=l+224|0;j=b+198|0;k=b+196|0;m=b+184|0;n=b+172|0;o=b+168|0;p=b+8|0;q=b+4|0;r=b;s=Yr(g)|0;Zr(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0)?(tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1:0){c[e>>2]=0;x=0}else x=u;else x=0;y=(x|0)==0;z=c[f>>2]|0;do if(z){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))if(y){A=z;break}else{B=w;C=z;break a}if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)!=-1)if(y){A=z;break}else{B=w;C=z;break a}else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(y){B=w;C=0;break}else A=0}z=a[g>>0]|0;F=z<<24>>24<0?c[v>>2]|0:z&255;if((c[o>>2]|0)==(w+F|0)){uz(n,F<<1,0);if((a[g>>0]|0)<0)G=(c[t>>2]&2147483647)+-1|0;else G=10;uz(n,G,0);z=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=z+F;H=z}else H=w;z=x+12|0;F=c[z>>2]|0;I=x+16|0;if((F|0)==(c[I>>2]|0))J=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else J=d[F>>0]|0;if(Ir(J&255,s,H,o,r,a[k>>0]|0,m,p,q,j)|0){B=H;C=A;break}F=c[z>>2]|0;if((F|0)==(c[I>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;w=H;u=x;continue}else{c[z>>2]=F+1;w=H;u=x;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){H=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=H}H=_r(B,c[o>>2]|0,h,s)|0;s=i;c[s>>2]=H;c[s+4>>2]=E;Sr(m,p,c[q>>2]|0,h);if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;K=0}else K=x;else K=0;x=(K|0)==0;do if(C){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;D=41;break}if(!x)D=42}else D=41;while(0);if((D|0)==41?x:0)D=42;if((D|0)==42)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function Yr(a){a=a|0;var b=0;switch(c[a+4>>2]&74){case 64:{b=8;break}case 8:{b=16;break}case 0:{b=0;break}default:b=10}return b|0}function Zr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g;i=iq(d)|0;c[h>>2]=i;d=Hr(h,43804)|0;zb[c[(c[d>>2]|0)+32>>2]&15](d,37900,37926,e)|0;e=Hr(h,43820)|0;a[f>>0]=tb[c[(c[e>>2]|0)+16>>2]&127](e)|0;rb[c[(c[e>>2]|0)+20>>2]&127](b,e);Wy(i)|0;l=g;return}function _r(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,m=0,n=0,o=0,p=0,q=0,r=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0;j=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;j=0;break}k=Rm()|0;m=c[k>>2]|0;c[k>>2]=0;n=Io(b,h,f,Jr()|0)|0;o=E;p=c[k>>2]|0;if(!p)c[k>>2]=m;if((c[h>>2]|0)==(d|0))if((p|0)==34){c[e>>2]=4;q=-1;r=-1}else{q=n;r=o}else{c[e>>2]=4;q=0;r=0}i=r;j=q}while(0);E=i;l=g;return j|0}function $r(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+224|0;j=b+198|0;k=b+196|0;m=b+184|0;n=b+172|0;o=b+168|0;p=b+8|0;q=b+4|0;r=b;s=Yr(g)|0;Zr(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0)?(tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1:0){c[e>>2]=0;x=0}else x=u;else x=0;y=(x|0)==0;z=c[f>>2]|0;do if(z){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))if(y){A=z;break}else{B=w;C=z;break a}if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)!=-1)if(y){A=z;break}else{B=w;C=z;break a}else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(y){B=w;C=0;break}else A=0}z=a[g>>0]|0;E=z<<24>>24<0?c[v>>2]|0:z&255;if((c[o>>2]|0)==(w+E|0)){uz(n,E<<1,0);if((a[g>>0]|0)<0)F=(c[t>>2]&2147483647)+-1|0;else F=10;uz(n,F,0);z=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=z+E;G=z}else G=w;z=x+12|0;E=c[z>>2]|0;H=x+16|0;if((E|0)==(c[H>>2]|0))I=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else I=d[E>>0]|0;if(Ir(I&255,s,G,o,r,a[k>>0]|0,m,p,q,j)|0){B=G;C=A;break}E=c[z>>2]|0;if((E|0)==(c[H>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;w=G;u=x;continue}else{c[z>>2]=E+1;w=G;u=x;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){G=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=G}c[i>>2]=as(B,c[o>>2]|0,h,s)|0;Sr(m,p,c[q>>2]|0,h);if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;J=0}else J=x;else J=0;x=(J|0)==0;do if(C){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;D=41;break}if(!x)D=42}else D=41;while(0);if((D|0)==41?x:0)D=42;if((D|0)==42)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function as(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,m=0,n=0,o=0,p=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=Rm()|0;k=c[j>>2]|0;c[j>>2]=0;m=Io(b,h,f,Jr()|0)|0;n=E;o=c[j>>2]|0;if(!o)c[j>>2]=k;do if((c[h>>2]|0)==(d|0))if(n>>>0>0|(n|0)==0&m>>>0>4294967295|(o|0)==34){c[e>>2]=4;p=-1;break}else{p=m;break}else{c[e>>2]=4;p=0}while(0);i=p}while(0);l=g;return i|0}function bs(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+224|0;j=b+198|0;k=b+196|0;m=b+184|0;n=b+172|0;o=b+168|0;p=b+8|0;q=b+4|0;r=b;s=Yr(g)|0;Zr(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0)?(tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1:0){c[e>>2]=0;x=0}else x=u;else x=0;y=(x|0)==0;z=c[f>>2]|0;do if(z){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))if(y){A=z;break}else{B=w;C=z;break a}if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)!=-1)if(y){A=z;break}else{B=w;C=z;break a}else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(y){B=w;C=0;break}else A=0}z=a[g>>0]|0;E=z<<24>>24<0?c[v>>2]|0:z&255;if((c[o>>2]|0)==(w+E|0)){uz(n,E<<1,0);if((a[g>>0]|0)<0)F=(c[t>>2]&2147483647)+-1|0;else F=10;uz(n,F,0);z=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=z+E;G=z}else G=w;z=x+12|0;E=c[z>>2]|0;H=x+16|0;if((E|0)==(c[H>>2]|0))I=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else I=d[E>>0]|0;if(Ir(I&255,s,G,o,r,a[k>>0]|0,m,p,q,j)|0){B=G;C=A;break}E=c[z>>2]|0;if((E|0)==(c[H>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;w=G;u=x;continue}else{c[z>>2]=E+1;w=G;u=x;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){G=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=G}c[i>>2]=cs(B,c[o>>2]|0,h,s)|0;Sr(m,p,c[q>>2]|0,h);if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;J=0}else J=x;else J=0;x=(J|0)==0;do if(C){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;D=41;break}if(!x)D=42}else D=41;while(0);if((D|0)==41?x:0)D=42;if((D|0)==42)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function cs(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,m=0,n=0,o=0,p=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=Rm()|0;k=c[j>>2]|0;c[j>>2]=0;m=Io(b,h,f,Jr()|0)|0;n=E;o=c[j>>2]|0;if(!o)c[j>>2]=k;do if((c[h>>2]|0)==(d|0))if(n>>>0>0|(n|0)==0&m>>>0>4294967295|(o|0)==34){c[e>>2]=4;p=-1;break}else{p=m;break}else{c[e>>2]=4;p=0}while(0);i=p}while(0);l=g;return i|0}function ds(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,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;e=l;l=l+224|0;k=e+198|0;m=e+196|0;n=e+184|0;o=e+172|0;p=e+168|0;q=e+8|0;r=e+4|0;s=e;t=Yr(h)|0;Zr(n,h,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;h=0;while(1){if((h|0)==3)break;c[o+(h<<2)>>2]=0;h=h+1|0}h=o+11|0;u=o+8|0;if((a[h>>0]|0)<0)v=(c[u>>2]&2147483647)+-1|0;else v=10;uz(o,v,0);v=(a[h>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=v;c[r>>2]=q;c[s>>2]=0;w=o+4|0;x=v;v=c[f>>2]|0;a:while(1){if(v)if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(tb[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;y=0}else y=v;else y=0;z=(y|0)==0;A=c[g>>2]|0;do if(A){if((c[A+12>>2]|0)!=(c[A+16>>2]|0))if(z){B=A;break}else{C=x;D=A;break a}if((tb[c[(c[A>>2]|0)+36>>2]&127](A)|0)!=-1)if(z){B=A;break}else{C=x;D=A;break a}else{c[g>>2]=0;E=16;break}}else E=16;while(0);if((E|0)==16){E=0;if(z){C=x;D=0;break}else B=0}A=a[h>>0]|0;F=A<<24>>24<0?c[w>>2]|0:A&255;if((c[p>>2]|0)==(x+F|0)){uz(o,F<<1,0);if((a[h>>0]|0)<0)G=(c[u>>2]&2147483647)+-1|0;else G=10;uz(o,G,0);A=(a[h>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=A+F;H=A}else H=x;A=y+12|0;F=c[A>>2]|0;I=y+16|0;if((F|0)==(c[I>>2]|0))J=tb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=d[F>>0]|0;if(Ir(J&255,t,H,p,s,a[m>>0]|0,n,q,r,k)|0){C=H;D=B;break}F=c[A>>2]|0;if((F|0)==(c[I>>2]|0)){tb[c[(c[y>>2]|0)+40>>2]&127](y)|0;x=H;v=y;continue}else{c[A>>2]=F+1;x=H;v=y;continue}}v=a[n+11>>0]|0;if((v<<24>>24<0?c[n+4>>2]|0:v&255)|0?(v=c[r>>2]|0,(v-q|0)<160):0){H=c[s>>2]|0;c[r>>2]=v+4;c[v>>2]=H}b[j>>1]=es(C,c[p>>2]|0,i,t)|0;Sr(n,q,c[r>>2]|0,i);if(y)if((c[y+12>>2]|0)==(c[y+16>>2]|0)?(tb[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1:0){c[f>>2]=0;K=0}else K=y;else K=0;y=(K|0)==0;do if(D){if((c[D+12>>2]|0)==(c[D+16>>2]|0)?(tb[c[(c[D>>2]|0)+36>>2]&127](D)|0)==-1:0){c[g>>2]=0;E=41;break}if(!y)E=42}else E=41;while(0);if((E|0)==41?y:0)E=42;if((E|0)==42)c[i>>2]=c[i>>2]|2;i=c[f>>2]|0;oz(o);oz(n);l=e;return i|0}function es(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,m=0,n=0,o=0,p=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=Rm()|0;k=c[j>>2]|0;c[j>>2]=0;m=Io(b,h,f,Jr()|0)|0;n=E;o=c[j>>2]|0;if(!o)c[j>>2]=k;do if((c[h>>2]|0)==(d|0))if(n>>>0>0|(n|0)==0&m>>>0>65535|(o|0)==34){c[e>>2]=4;p=-1;break}else{p=m&65535;break}else{c[e>>2]=4;p=0}while(0);i=p}while(0);l=g;return i|0}function fs(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0,I=0,J=0,K=0;b=l;l=l+224|0;j=b+198|0;k=b+196|0;m=b+184|0;n=b+172|0;o=b+168|0;p=b+8|0;q=b+4|0;r=b;s=Yr(g)|0;Zr(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0)?(tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1:0){c[e>>2]=0;x=0}else x=u;else x=0;y=(x|0)==0;z=c[f>>2]|0;do if(z){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))if(y){A=z;break}else{B=w;C=z;break a}if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)!=-1)if(y){A=z;break}else{B=w;C=z;break a}else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(y){B=w;C=0;break}else A=0}z=a[g>>0]|0;F=z<<24>>24<0?c[v>>2]|0:z&255;if((c[o>>2]|0)==(w+F|0)){uz(n,F<<1,0);if((a[g>>0]|0)<0)G=(c[t>>2]&2147483647)+-1|0;else G=10;uz(n,G,0);z=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=z+F;H=z}else H=w;z=x+12|0;F=c[z>>2]|0;I=x+16|0;if((F|0)==(c[I>>2]|0))J=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else J=d[F>>0]|0;if(Ir(J&255,s,H,o,r,a[k>>0]|0,m,p,q,j)|0){B=H;C=A;break}F=c[z>>2]|0;if((F|0)==(c[I>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;w=H;u=x;continue}else{c[z>>2]=F+1;w=H;u=x;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){H=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=H}H=gs(B,c[o>>2]|0,h,s)|0;s=i;c[s>>2]=H;c[s+4>>2]=E;Sr(m,p,c[q>>2]|0,h);if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;K=0}else K=x;else K=0;x=(K|0)==0;do if(C){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;D=41;break}if(!x)D=42}else D=41;while(0);if((D|0)==41?x:0)D=42;if((D|0)==42)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function gs(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,m=0,n=0,o=0;f=l;l=l+16|0;g=f;if((a|0)==(b|0)){c[d>>2]=4;h=0;i=0}else{j=Rm()|0;k=c[j>>2]|0;c[j>>2]=0;m=Jo(a,g,e,Jr()|0)|0;e=E;a=c[j>>2]|0;if(!a)c[j>>2]=k;if((c[g>>2]|0)==(b|0))if((a|0)==34){c[d>>2]=4;a=(e|0)>0|(e|0)==0&m>>>0>0;n=a?-1:0;o=a?2147483647:-2147483648}else{n=m;o=e}else{c[d>>2]=4;n=0;o=0}h=o;i=n}E=h;l=f;return i|0}function hs(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+224|0;j=b+198|0;k=b+196|0;m=b+184|0;n=b+172|0;o=b+168|0;p=b+8|0;q=b+4|0;r=b;s=Yr(g)|0;Zr(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;uz(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=u;u=c[e>>2]|0;a:while(1){if(u)if((c[u+12>>2]|0)==(c[u+16>>2]|0)?(tb[c[(c[u>>2]|0)+36>>2]&127](u)|0)==-1:0){c[e>>2]=0;x=0}else x=u;else x=0;y=(x|0)==0;z=c[f>>2]|0;do if(z){if((c[z+12>>2]|0)!=(c[z+16>>2]|0))if(y){A=z;break}else{B=w;C=z;break a}if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)!=-1)if(y){A=z;break}else{B=w;C=z;break a}else{c[f>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(y){B=w;C=0;break}else A=0}z=a[g>>0]|0;E=z<<24>>24<0?c[v>>2]|0:z&255;if((c[o>>2]|0)==(w+E|0)){uz(n,E<<1,0);if((a[g>>0]|0)<0)F=(c[t>>2]&2147483647)+-1|0;else F=10;uz(n,F,0);z=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=z+E;G=z}else G=w;z=x+12|0;E=c[z>>2]|0;H=x+16|0;if((E|0)==(c[H>>2]|0))I=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else I=d[E>>0]|0;if(Ir(I&255,s,G,o,r,a[k>>0]|0,m,p,q,j)|0){B=G;C=A;break}E=c[z>>2]|0;if((E|0)==(c[H>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;w=G;u=x;continue}else{c[z>>2]=E+1;w=G;u=x;continue}}u=a[m+11>>0]|0;if((u<<24>>24<0?c[m+4>>2]|0:u&255)|0?(u=c[q>>2]|0,(u-p|0)<160):0){G=c[r>>2]|0;c[q>>2]=u+4;c[u>>2]=G}c[i>>2]=is(B,c[o>>2]|0,h,s)|0;Sr(m,p,c[q>>2]|0,h);if(x)if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;J=0}else J=x;else J=0;x=(J|0)==0;do if(C){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(tb[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;D=41;break}if(!x)D=42}else D=41;while(0);if((D|0)==41?x:0)D=42;if((D|0)==42)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;oz(n);oz(m);l=b;return h|0}function is(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+16|0;g=f;if((a|0)==(b|0)){c[d>>2]=4;h=0}else{i=Rm()|0;j=c[i>>2]|0;c[i>>2]=0;k=Jo(a,g,e,Jr()|0)|0;e=E;a=c[i>>2]|0;if(!a)c[i>>2]=j;a:do if((c[g>>2]|0)==(b|0)){do if((a|0)==34){c[d>>2]=4;if((e|0)>0|(e|0)==0&k>>>0>0){m=2147483647;break a}}else{if((e|0)<-1|(e|0)==-1&k>>>0<2147483648){c[d>>2]=4;break}if((e|0)>0|(e|0)==0&k>>>0>2147483647){c[d>>2]=4;m=2147483647;break a}else{m=k;break a}}while(0);m=-2147483648}else{c[d>>2]=4;m=0}while(0);h=m}l=f;return h|0}function js(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,m=0,n=0,o=0,p=0,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;k=l;l=l+112|0;m=k;n=(g-f|0)/12|0;if(n>>>0>100){o=Vo(n)|0;if(!o){p=0;q=0}else{p=o;q=o}}else{p=m;q=0}m=n;n=f;o=p;r=0;while(1){if((n|0)==(g|0))break;s=a[n+11>>0]|0;if(s<<24>>24<0)t=c[n+4>>2]|0;else t=s&255;if(!t){a[o>>0]=2;u=m+-1|0;v=r+1|0}else{a[o>>0]=1;u=m;v=r}m=u;n=n+12|0;o=o+1|0;r=v}v=0;o=m;m=r;a:while(1){r=c[b>>2]|0;do if(r)if((c[r+12>>2]|0)==(c[r+16>>2]|0))if((tb[c[(c[r>>2]|0)+36>>2]&127](r)|0)==-1){c[b>>2]=0;w=0;break}else{w=c[b>>2]|0;break}else w=r;else w=0;while(0);r=(w|0)==0;n=c[e>>2]|0;if(n)if((c[n+12>>2]|0)==(c[n+16>>2]|0)?(tb[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1:0){c[e>>2]=0;x=0}else x=n;else x=0;y=(x|0)==0;z=c[b>>2]|0;if(!((o|0)!=0&(r^y)))break;r=c[z+12>>2]|0;if((r|0)==(c[z+16>>2]|0))A=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else A=d[r>>0]|0;r=A&255;if(j)B=r;else B=Bb[c[(c[h>>2]|0)+12>>2]&63](h,r)|0;r=v+1|0;n=f;u=0;t=p;s=m;C=o;while(1){if((n|0)==(g|0))break;do if((a[t>>0]|0)==1){D=n+11|0;if((a[D>>0]|0)<0)E=c[n>>2]|0;else E=n;F=a[E+v>>0]|0;if(j)G=F;else G=Bb[c[(c[h>>2]|0)+12>>2]&63](h,F)|0;if(B<<24>>24!=G<<24>>24){a[t>>0]=0;H=u;I=s;J=C+-1|0;break}F=a[D>>0]|0;if(F<<24>>24<0)K=c[n+4>>2]|0;else K=F&255;if((K|0)==(r|0)){a[t>>0]=2;H=1;I=s+1|0;J=C+-1|0}else{H=1;I=s;J=C}}else{H=u;I=s;J=C}while(0);n=n+12|0;u=H;t=t+1|0;s=I;C=J}if(!u){v=r;o=C;m=s;continue}t=c[b>>2]|0;n=t+12|0;F=c[n>>2]|0;if((F|0)==(c[t+16>>2]|0))tb[c[(c[t>>2]|0)+40>>2]&127](t)|0;else c[n>>2]=F+1;if((s+C|0)>>>0>1){L=f;M=p;N=s}else{v=r;o=C;m=s;continue}while(1){if((L|0)==(g|0)){v=r;o=C;m=N;continue a}if((a[M>>0]|0)==2){F=a[L+11>>0]|0;if(F<<24>>24<0)O=c[L+4>>2]|0;else O=F&255;if((O|0)!=(r|0)){a[M>>0]=0;P=N+-1|0}else P=N}else P=N;L=L+12|0;M=M+1|0;N=P}}do if(z)if((c[z+12>>2]|0)==(c[z+16>>2]|0))if((tb[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[b>>2]=0;Q=0;break}else{Q=c[b>>2]|0;break}else Q=z;else Q=0;while(0);z=(Q|0)==0;do if(!y){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(tb[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[e>>2]=0;R=34;break}if(z){S=f;T=p}else R=69}else R=34;while(0);if((R|0)==34)if(z)R=69;else{S=f;T=p}if((R|0)==69){c[i>>2]=c[i>>2]|2;S=f;T=p}while(1){if((S|0)==(g|0)){R=73;break}if((a[T>>0]|0)==2){U=S;break}S=S+12|0;T=T+1|0}if((R|0)==73){c[i>>2]=c[i>>2]|4;U=g}Wo(q);l=k;return U|0}function ks(a){a=a|0;return}function ls(a){a=a|0;bz(a);return}function ms(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,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+48|0;j=i+40|0;k=i+16|0;m=i+8|0;n=i+12|0;o=i+4|0;p=i;if(!(c[f+4>>2]&1)){c[m>>2]=-1;q=c[(c[b>>2]|0)+16>>2]|0;c[n>>2]=c[d>>2];c[o>>2]=c[e>>2];c[k>>2]=c[n>>2];c[j>>2]=c[o>>2];c[d>>2]=sb[q&63](b,k,j,f,g,m)|0;switch(c[m>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}r=c[d>>2]|0}else{m=iq(f)|0;c[j>>2]=m;b=Hr(j,43836)|0;Wy(m)|0;m=iq(f)|0;c[j>>2]=m;f=Hr(j,43844)|0;Wy(m)|0;rb[c[(c[f>>2]|0)+24>>2]&127](k,f);rb[c[(c[f>>2]|0)+28>>2]&127](k+12|0,f);c[p>>2]=c[e>>2];e=k+24|0;c[j>>2]=c[p>>2];a[h>>0]=(Ks(d,j,k,e,b,g,1)|0)==(k|0)&1;g=c[d>>2]|0;d=e;do{d=d+-12|0;Kz(d)}while((d|0)!=(k|0));r=g}l=i;return r|0}function ns(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Js(a,j,i,e,f,g)|0;l=h;return m|0}function os(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Is(a,j,i,e,f,g)|0;l=h;return m|0}function ps(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Hs(a,j,i,e,f,g)|0;l=h;return m|0}function qs(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Gs(a,j,i,e,f,g)|0;l=h;return m|0}function rs(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Fs(a,j,i,e,f,g)|0;l=h;return m|0}function ss(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Ds(a,j,i,e,f,g)|0;l=h;return m|0}function ts(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Cs(a,j,i,e,f,g)|0;l=h;return m|0}function us(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Bs(a,j,i,e,f,g)|0;l=h;return m|0}function vs(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,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=ys(a,j,i,e,f,g)|0;l=h;return m|0}function ws(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,m=0,n=0,o=0,p=0,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;b=l;l=l+320|0;i=b;j=b+208|0;k=b+192|0;m=b+180|0;n=b+176|0;o=b+16|0;p=b+8|0;q=b+4|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[k+(r<<2)>>2]=0;r=r+1|0}r=iq(f)|0;c[m>>2]=r;f=Hr(m,43836)|0;zb[c[(c[f>>2]|0)+48>>2]&15](f,37900,37926,j)|0;Wy(r)|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[m+(r<<2)>>2]=0;r=r+1|0}r=m+11|0;f=m+8|0;if((a[r>>0]|0)<0)s=(c[f>>2]&2147483647)+-1|0;else s=10;uz(m,s,0);s=(a[r>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=s;c[p>>2]=o;c[q>>2]=0;t=m+4|0;u=s;s=c[d>>2]|0;a:while(1){if(s){v=c[s+12>>2]|0;if((v|0)==(c[s+16>>2]|0))w=tb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else w=c[v>>2]|0;if((w|0)==-1){c[d>>2]=0;x=0;y=1}else{x=s;y=0}}else{x=0;y=1}v=c[e>>2]|0;do if(v){z=c[v+12>>2]|0;if((z|0)==(c[v+16>>2]|0))A=tb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else A=c[z>>2]|0;if((A|0)!=-1)if(y){B=v;break}else{C=u;D=v;break a}else{c[e>>2]=0;E=22;break}}else E=22;while(0);if((E|0)==22){E=0;if(y){C=u;D=0;break}else B=0}v=a[r>>0]|0;z=v<<24>>24<0?c[t>>2]|0:v&255;if((c[n>>2]|0)==(u+z|0)){uz(m,z<<1,0);if((a[r>>0]|0)<0)F=(c[f>>2]&2147483647)+-1|0;else F=10;uz(m,F,0);v=(a[r>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+z;G=v}else G=u;v=x+12|0;z=c[v>>2]|0;H=x+16|0;if((z|0)==(c[H>>2]|0))I=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else I=c[z>>2]|0;if(xs(I,16,G,n,q,0,k,o,p,j)|0){C=G;D=B;break}z=c[v>>2]|0;if((z|0)==(c[H>>2]|0)){tb[c[(c[x>>2]|0)+40>>2]&127](x)|0;u=G;s=x;continue}else{c[v>>2]=z+4;u=G;s=x;continue}}uz(m,(c[n>>2]|0)-C|0,0);C=(a[r>>0]|0)<0?c[m>>2]|0:m;r=Jr()|0;c[i>>2]=h;if((Kr(C,r,37933,i)|0)!=1)c[g>>2]=4;if(x){i=c[x+12>>2]|0;if((i|0)==(c[x+16>>2]|0))J=tb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else J=c[i>>2]|0;if((J|0)==-1){c[d>>2]=0;K=1}else K=0}else K=1;do if(D){J=c[D+12>>2]|0;if((J|0)==(c[D+16>>2]|0))L=tb[c[(c[D>>2]|0)+36>>2]&127](D)|0;else L=c[J>>2]|0;if((L|0)!=-1)if(K)break;else{E=51;break}else{c[e>>2]=0;E=49;break}}else E=49;while(0);if((E|0)==49?K:0)E=51;if((E|0)==51)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(m);oz(k);l=b;return g|0}function xs(b,d,e,f,g,h,i,j,k,l){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;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=c[f>>2]|0;n=(m|0)==(e|0);do if(n){o=(c[l+96>>2]|0)==(b|0);if(!o?(c[l+100>>2]|0)!=(b|0):0){p=5;break}c[f>>2]=e+1;a[e>>0]=o?43:45;c[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=a[i+11>>0]|0;if((b|0)==(h|0)?((o<<24>>24<0?c[i+4>>2]|0:o&255)|0)!=0:0){o=c[k>>2]|0;if((o-j|0)>=160){q=0;break}r=c[g>>2]|0;c[k>>2]=o+4;c[o>>2]=r;c[g>>2]=0;q=0;break}r=l+104|0;o=0;while(1){s=l+(o<<2)|0;if((o|0)==26){t=r;break}if((c[s>>2]|0)==(b|0)){t=s;break}else o=o+1|0}o=t-l|0;r=o>>2;if((o|0)>92)q=-1;else{switch(d|0){case 10:case 8:{if((r|0)>=(d|0)){q=-1;break a}break}case 16:{if((o|0)>=88){if(n){q=-1;break a}if((m-e|0)>=3){q=-1;break a}if((a[m+-1>>0]|0)!=48){q=-1;break a}c[g>>2]=0;o=a[37900+r>>0]|0;c[f>>2]=m+1;a[m>>0]=o;q=0;break a}break}default:{}}o=a[37900+r>>0]|0;c[f>>2]=m+1;a[m>>0]=o;c[g>>2]=(c[g>>2]|0)+1;q=0}}while(0);return q|0}function ys(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;zs(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;uz(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=w;w=c[d>>2]|0;a:while(1){if(w){z=c[w+12>>2]|0;if((z|0)==(c[w+16>>2]|0))A=tb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else A=c[z>>2]|0;if((A|0)==-1){c[d>>2]=0;B=0;C=1}else{B=w;C=0}}else{B=0;C=1}z=c[e>>2]|0;do if(z){D=c[z+12>>2]|0;if((D|0)==(c[z+16>>2]|0))E=tb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else E=c[D>>2]|0;if((E|0)!=-1)if(C){F=z;break}else{G=y;H=z;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=y;H=0;break}else F=0}z=a[f>>0]|0;D=z<<24>>24<0?c[x>>2]|0:z&255;if((c[p>>2]|0)==(y+D|0)){uz(o,D<<1,0);if((a[f>>0]|0)<0)J=(c[v>>2]&2147483647)+-1|0;else J=10;uz(o,J,0);z=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=z+D;K=z}else K=y;z=B+12|0;D=c[z>>2]|0;L=B+16|0;if((D|0)==(c[L>>2]|0))M=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else M=c[D>>2]|0;if(As(M,t,u,K,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){G=K;H=F;break}D=c[z>>2]|0;if((D|0)==(c[L>>2]|0)){tb[c[(c[B>>2]|0)+40>>2]&127](B)|0;y=K;w=B;continue}else{c[z>>2]=D+4;y=K;w=B;continue}}w=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((w<<24>>24<0?c[n+4>>2]|0:w&255)|0)==0)?(w=c[r>>2]|0,(w-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=w+4;c[w>>2]=t}h[i>>3]=+Rr(G,c[p>>2]|0,g);Sr(n,q,c[r>>2]|0,g);if(B){r=c[B+12>>2]|0;if((r|0)==(c[B+16>>2]|0))N=tb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else N=c[r>>2]|0;if((N|0)==-1){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=tb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=c[N>>2]|0;if((P|0)!=-1)if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;oz(o);oz(n);l=b;return g|0}function zs(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;g=l;l=l+16|0;h=g;i=iq(b)|0;c[h>>2]=i;b=Hr(h,43836)|0;zb[c[(c[b>>2]|0)+48>>2]&15](b,37900,37932,d)|0;d=Hr(h,43844)|0;c[e>>2]=tb[c[(c[d>>2]|0)+12>>2]&127](d)|0;c[f>>2]=tb[c[(c[d>>2]|0)+16>>2]&127](d)|0;rb[c[(c[d>>2]|0)+20>>2]&127](a,d);Wy(i)|0;l=g;return}function As(b,e,f,g,h,i,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0;a:do if((b|0)==(i|0))if(a[e>>0]|0){a[e>>0]=0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=46;p=a[k+11>>0]|0;if(((p<<24>>24<0?c[k+4>>2]|0:p&255)|0)!=0?(p=c[m>>2]|0,(p-l|0)<160):0){q=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=q;r=0}else r=0}else r=-1;else{if((b|0)==(j|0)?(q=a[k+11>>0]|0,(q<<24>>24<0?c[k+4>>2]|0:q&255)|0):0){if(!(a[e>>0]|0)){r=-1;break}q=c[m>>2]|0;if((q-l|0)>=160){r=0;break}p=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=p;c[n>>2]=0;r=0;break}p=o+128|0;q=0;while(1){s=o+(q<<2)|0;if((q|0)==32){t=p;break}if((c[s>>2]|0)==(b|0)){t=s;break}else q=q+1|0}q=t-o|0;p=q>>2;if((q|0)<=124){s=a[37900+p>>0]|0;switch(p|0){case 24:case 25:{p=c[h>>2]|0;if((p|0)!=(g|0)?(d[p+-1>>0]&95|0)!=(d[f>>0]&127|0):0){r=-1;break a}c[h>>2]=p+1;a[p>>0]=s;r=0;break a;break}case 23:case 22:{a[f>>0]=80;break}default:{p=s&95;if((((p|0)==(a[f>>0]|0)?(a[f>>0]=p|128,a[e>>0]|0):0)?(a[e>>0]=0,p=a[k+11>>0]|0,(p<<24>>24<0?c[k+4>>2]|0:p&255)|0):0)?(p=c[m>>2]|0,(p-l|0)<160):0){u=c[n>>2]|0;c[m>>2]=p+4;c[p>>2]=u}}}u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=s;if((q|0)>84)r=0;else{c[n>>2]=(c[n>>2]|0)+1;r=0}}else r=-1}while(0);return r|0} function Tg(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;f=e+4|0;g=e;h=b+64|0;if(!(c[h>>2]|0)){i=-1;l=e;return i|0}j=b+92|0;if(!(c[j>>2]&8)){c[b+24>>2]=0;c[b+20>>2]=0;c[b+28>>2]=0;if(!(a[b+98>>0]|0)){k=c[b+56>>2]|0;m=k+(c[b+60>>2]|0)|0;n=k}else{k=c[b+32>>2]|0;m=k+(c[b+52>>2]|0)|0;n=k}c[b+8>>2]=n;n=b+12|0;c[n>>2]=m;c[b+16>>2]=m;c[j>>2]=8;o=1;p=n;q=m}else{m=b+12|0;o=0;p=m;q=c[m>>2]|0}if(!q){m=f+1|0;c[b+8>>2]=f;c[p>>2]=m;c[b+16>>2]=m;r=m}else r=q;q=b+16|0;if(o){s=c[q>>2]|0;t=0}else{o=c[q>>2]|0;m=(o-(c[b+8>>2]|0)|0)/2|0;s=o;t=m>>>0>4?4:m}do if((r|0)==(s|0)){m=b+8|0;rB(c[m>>2]|0,r+(0-t)|0,t|0)|0;if(a[b+98>>0]|0){o=c[m>>2]|0;n=Qo(o+t|0,1,(c[q>>2]|0)-t-o|0,c[h>>2]|0)|0;if(!n){u=-1;v=m;break}o=(c[m>>2]|0)+t|0;c[p>>2]=o;c[q>>2]=o+n;u=d[o>>0]|0;v=m;break}o=b+32|0;n=b+36|0;j=c[n>>2]|0;k=b+40|0;rB(c[o>>2]|0,j|0,(c[k>>2]|0)-j|0)|0;j=c[o>>2]|0;w=j+((c[k>>2]|0)-(c[n>>2]|0))|0;c[n>>2]=w;if((j|0)==(b+44|0))x=8;else x=c[b+52>>2]|0;y=j+x|0;c[k>>2]=y;j=b+60|0;z=(c[j>>2]|0)-t|0;A=y-w|0;y=b+72|0;B=y;C=c[B+4>>2]|0;D=b+80|0;c[D>>2]=c[B>>2];c[D+4>>2]=C;C=Qo(w,1,A>>>0<z>>>0?A:z,c[h>>2]|0)|0;if(!C){u=-1;v=m}else{z=c[b+68>>2]|0;if(!z){A=Ea(4)|0;VA(A);_a(A|0,6928,59)}A=(c[n>>2]|0)+C|0;c[k>>2]=A;C=c[m>>2]|0;if((yb[c[(c[z>>2]|0)+16>>2]&15](z,y,c[o>>2]|0,A,n,C+t|0,C+(c[j>>2]|0)|0,g)|0)!=3){j=c[g>>2]|0;C=(c[m>>2]|0)+t|0;if((j|0)==(C|0))E=-1;else{c[p>>2]=C;c[q>>2]=j;E=d[C>>0]|0}}else{C=c[o>>2]|0;o=c[k>>2]|0;c[m>>2]=C;c[p>>2]=C;c[q>>2]=o;E=d[C>>0]|0}u=E;v=m}}else{u=d[r>>0]|0;v=b+8|0}while(0);if((c[v>>2]|0)==(f|0)){c[v>>2]=0;c[p>>2]=0;c[q>>2]=0}i=u;l=e;return i|0}function Ug(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!(c[b+64>>2]|0)){e=-1;return e|0}f=b+12|0;g=c[f>>2]|0;if((c[b+8>>2]|0)>>>0>=g>>>0){e=-1;return e|0}if((d|0)==-1){c[f>>2]=g+-1;e=0;return e|0}if(!(c[b+88>>2]&16)){b=d&255;h=g+-1|0;if(b<<24>>24==(a[h>>0]|0)){i=b;j=h}else{e=-1;return e|0}}else{i=d&255;j=g+-1|0}c[f>>2]=j;a[j>>0]=i;e=d;return e|0}function Vg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;e=l;l=l+16|0;f=e+8|0;g=e+4|0;h=e;i=b+64|0;if(!(c[i>>2]|0)){j=-1;l=e;return j|0}k=b+92|0;if(!(c[k>>2]&16)){c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;m=c[b+52>>2]|0;do if(m>>>0>8)if(!(a[b+98>>0]|0)){n=c[b+56>>2]|0;o=n+((c[b+60>>2]|0)+-1)|0;c[b+24>>2]=n;p=b+20|0;c[p>>2]=n;q=b+28|0;c[q>>2]=o;r=p;s=q;t=n;u=o;v=n;break}else{n=c[b+32>>2]|0;o=n+(m+-1)|0;c[b+24>>2]=n;q=b+20|0;c[q>>2]=n;p=b+28|0;c[p>>2]=o;r=q;s=p;t=n;u=o;v=n;break}else{c[b+24>>2]=0;n=b+20|0;c[n>>2]=0;o=b+28|0;c[o>>2]=0;r=n;s=o;t=0;u=0;v=0}while(0);c[k>>2]=16;w=r;x=s;y=s;z=r;A=v;B=u;C=t}else{t=b+20|0;u=c[t>>2]|0;v=b+28|0;w=t;x=v;y=v;z=t;A=u;B=c[v>>2]|0;C=u}u=(d|0)==-1;v=b+24|0;t=c[v>>2]|0;if(u){D=t;E=C}else{if(!t){c[v>>2]=f;c[z>>2]=f;c[x>>2]=f+1;F=f}else F=t;a[F>>0]=d;F=(c[v>>2]|0)+1|0;c[v>>2]=F;D=F;E=c[z>>2]|0}a:do if((D|0)==(E|0))G=33;else{b:do if(!(a[b+98>>0]|0)){F=b+32|0;t=c[F>>2]|0;c[g>>2]=t;f=b+68|0;C=c[f>>2]|0;if(!C){H=Ea(4)|0;VA(H);_a(H|0,6928,59)}r=t;t=b+72|0;s=b+52|0;k=yb[c[(c[C>>2]|0)+12>>2]&15](C,t,E,D,h,r,r+(c[s>>2]|0)|0,g)|0;r=c[z>>2]|0;c:do if((c[h>>2]|0)!=(r|0)){C=k;m=r;while(1){if((C|0)==3){G=22;break}if((C|1|0)!=1)break c;o=c[F>>2]|0;n=(c[g>>2]|0)-o|0;if((Po(o,1,n,c[i>>2]|0)|0)!=(n|0))break c;if((C|0)!=1){G=29;break}n=c[h>>2]|0;o=c[v>>2]|0;c[w>>2]=n;c[x>>2]=o;p=n;q=p+(o-n)|0;c[v>>2]=q;n=c[f>>2]|0;if(!n){G=20;break}o=c[F>>2]|0;C=yb[c[(c[n>>2]|0)+12>>2]&15](n,t,p,q,h,o,o+(c[s>>2]|0)|0,g)|0;o=c[z>>2]|0;if((c[h>>2]|0)==(o|0))break c;else m=o}if((G|0)==20){H=Ea(4)|0;VA(H);_a(H|0,6928,59)}else if((G|0)==22){C=(c[v>>2]|0)-m|0;if((Po(m,1,C,c[i>>2]|0)|0)!=(C|0))break}I=v;break b}while(0);J=-1;break a}else{s=D-E|0;if((Po(E,1,s,c[i>>2]|0)|0)!=(s|0)){J=-1;break a}I=v}while(0);c[I>>2]=A;c[w>>2]=A;c[y>>2]=B;G=33}while(0);if((G|0)==33)J=u?0:d;j=J;l=e;return j|0}function Wg(a){a=a|0;var b=0;c[a>>2]=7288;b=a+112|0;c[b>>2]=7328;c[a+8>>2]=7308;Ce(a+12|0);Bq(a,7380);$o(b);return}function Xg(a){a=a|0;var b=0;c[a>>2]=7288;b=a+112|0;c[b>>2]=7328;c[a+8>>2]=7308;Ce(a+12|0);Bq(a,7380);$o(b);bz(a);return}function Yg(a){a=a|0;var b=0;b=a+-8|0;c[b>>2]=7288;a=b+112|0;c[a>>2]=7328;c[b+8>>2]=7308;Ce(b+12|0);Bq(b,7380);$o(a);return}function Zg(a){a=a|0;var b=0;b=a+-8|0;c[b>>2]=7288;a=b+112|0;c[a>>2]=7328;c[b+8>>2]=7308;Ce(b+12|0);Bq(b,7380);$o(a);bz(b);return}function _g(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=7288;a=b+112|0;c[a>>2]=7328;c[b+8>>2]=7308;Ce(b+12|0);Bq(b,7380);$o(a);return}function $g(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=7288;a=b+112|0;c[a>>2]=7328;c[b+8>>2]=7308;Ce(b+12|0);Bq(b,7380);$o(a);bz(b);return}function ah(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=10816;b=c[a+120>>2]|0;if(b|0)cz(b);b=c[a+172>>2]|0;d=b;if(b|0){e=a+176|0;f=c[e>>2]|0;if((f|0)!=(b|0))c[e>>2]=f+(~((f+-4-d|0)>>>2)<<2);bz(b)}b=c[a+160>>2]|0;d=b;if(b|0){f=a+164|0;e=c[f>>2]|0;if((e|0)!=(b|0))c[f>>2]=e+(~((e+-4-d|0)>>>2)<<2);bz(b)}b=c[a+148>>2]|0;d=b;if(b|0){e=a+152|0;f=c[e>>2]|0;if((f|0)!=(b|0))c[e>>2]=f+(~((f+-4-d|0)>>>2)<<2);bz(b)}b=c[a+108>>2]|0;d=b;if(b|0){f=a+112|0;e=c[f>>2]|0;if((e|0)!=(b|0))c[f>>2]=e+(~((e+-4-d|0)>>>2)<<2);bz(b)}b=c[a+96>>2]|0;d=b;if(b|0){e=a+100|0;f=c[e>>2]|0;if((f|0)!=(b|0))c[e>>2]=f+(~((f+-4-d|0)>>>2)<<2);bz(b)}b=c[a+84>>2]|0;d=b;if(b|0){f=a+88|0;e=c[f>>2]|0;if((e|0)!=(b|0))c[f>>2]=e+(~((e+-4-d|0)>>>2)<<2);bz(b)}b=c[a+72>>2]|0;d=b;if(b|0){e=a+76|0;f=c[e>>2]|0;if((f|0)!=(b|0))c[e>>2]=f+(~((f+-4-d|0)>>>2)<<2);bz(b)}b=c[a+48>>2]|0;d=b;if(b|0){f=a+52|0;e=c[f>>2]|0;if((e|0)!=(b|0))c[f>>2]=e+(~((e+-4-d|0)>>>2)<<2);bz(b)}b=c[a+36>>2]|0;d=b;if(b|0){e=a+40|0;f=c[e>>2]|0;if((f|0)!=(b|0))c[e>>2]=f+(~((f+-4-d|0)>>>2)<<2);bz(b)}b=a+12|0;d=c[b>>2]|0;if(!d)return;f=a+16|0;a=c[f>>2]|0;if((a|0)==(d|0))g=d;else{e=a;do{c[f>>2]=e+-48;oz(e+-12|0);a=c[e+-24>>2]|0;h=a;if(a|0){i=e+-20|0;j=c[i>>2]|0;if((j|0)!=(a|0))c[i>>2]=j+(~((j+-4-h|0)>>>2)<<2);bz(a)}e=c[f>>2]|0}while((e|0)!=(d|0));g=c[b>>2]|0}bz(g);return}function bh(a){a=a|0;ah(a);bz(a);return}function ch(a){a=a|0;return 2}function dh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,27207,14);return}function eh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,27203,3);return}function fh(a){a=a|0;return 5}function gh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;d=l;l=l+496|0;e=d+416|0;f=d+336|0;h=d+256|0;i=d+176|0;j=d+96|0;k=d+16|0;m=d;c[b>>2]=0;n=b+4|0;c[n>>2]=0;c[b+8>>2]=0;o=e+64|0;p=e;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[e+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;tz(e,29392)|0;r=e+12|0;tz(r,29400)|0;s=e+24|0;tz(s,29437)|0;t=e+36|0;tz(t,47807)|0;g[e+48>>2]=0.0;g[e+52>>2]=1.0;g[e+56>>2]=1.0;a[e+60>>0]=1;g[o>>2]=1.0;o=c[n>>2]|0;u=b+8|0;if((o|0)==(c[u>>2]|0))wh(b,e);else{vh(o,e);c[n>>2]=(c[n>>2]|0)+80}o=f+64|0;p=f;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[f+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;tz(f,30726)|0;v=f+12|0;tz(v,30733)|0;w=f+24|0;tz(w,30754)|0;x=f+36|0;tz(x,31017)|0;g[f+48>>2]=0.0;g[f+52>>2]=5.0;g[f+56>>2]=0.0;a[f+60>>0]=1;g[o>>2]=.5;o=c[n>>2]|0;if((o|0)==(c[u>>2]|0))wh(b,f);else{vh(o,f);c[n>>2]=(c[n>>2]|0)+80}o=h+64|0;p=h;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[h+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;tz(h,29479)|0;y=h+12|0;tz(y,29490)|0;z=h+24|0;tz(z,29502)|0;A=h+36|0;tz(A,47807)|0;g[h+48>>2]=0.0;g[h+52>>2]=1.0;g[h+56>>2]=0.0;a[h+60>>0]=1;B=h+68|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,29704,13);C=h+72|0;D=c[C>>2]|0;E=h+76|0;if(D>>>0<(c[E>>2]|0)>>>0){c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[C>>2]=(c[C>>2]|0)+12}else Ae(B,i);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,29718,12);D=c[C>>2]|0;if(D>>>0<(c[E>>2]|0)>>>0){c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[C>>2]=(c[C>>2]|0)+12}else Ae(B,i);oz(i);g[o>>2]=1.0;o=c[n>>2]|0;if((o|0)==(c[u>>2]|0))wh(b,h);else{vh(o,h);c[n>>2]=(c[n>>2]|0)+80}o=i+64|0;p=i;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[i+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;tz(i,29731)|0;o=i+12|0;tz(o,29741)|0;B=i+24|0;tz(B,29760)|0;D=i+36|0;tz(D,47807)|0;g[i+48>>2]=0.0;g[i+52>>2]=1.0;g[i+56>>2]=1.0;a[i+60>>0]=0;E=c[n>>2]|0;if((E|0)==(c[u>>2]|0))wh(b,i);else{vh(E,i);c[n>>2]=(c[n>>2]|0)+80}E=j+64|0;p=j;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[j+60>>0]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;tz(j,29813)|0;E=j+12|0;tz(E,29815)|0;F=j+24|0;tz(F,29830)|0;G=j+36|0;tz(G,47807)|0;g[j+48>>2]=.5;g[j+52>>2]=.8999999761581421;g[j+56>>2]=.699999988079071;a[j+60>>0]=0;H=c[n>>2]|0;if((H|0)==(c[u>>2]|0))wh(b,j);else{vh(H,j);c[n>>2]=(c[n>>2]|0)+80}H=k+64|0;p=k;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[k+60>>0]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;tz(k,27082)|0;p=k+12|0;tz(p,27105)|0;q=k+24|0;tz(q,27126)|0;I=k+36|0;tz(I,47807)|0;g[k+48>>2]=0.0;g[k+52>>2]=3.0;g[k+56>>2]=0.0;a[k+60>>0]=1;J=k+68|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,27169,4);K=k+72|0;L=c[K>>2]|0;M=k+76|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Ae(J,m);oz(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,27174,12);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Ae(J,m);oz(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,27187,7);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Ae(J,m);oz(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,27195,7);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Ae(J,m);oz(m);g[H>>2]=1.0;H=c[n>>2]|0;if((H|0)==(c[u>>2]|0))wh(b,k);else{vh(H,k);c[n>>2]=(c[n>>2]|0)+80}n=k+68|0;H=c[n>>2]|0;if(H|0){b=c[K>>2]|0;if((b|0)==(H|0))N=H;else{u=b;do{b=u+-12|0;c[K>>2]=b;oz(b);u=c[K>>2]|0}while((u|0)!=(H|0));N=c[n>>2]|0}bz(N)}oz(I);oz(q);oz(p);oz(k);k=j+68|0;p=c[k>>2]|0;if(p|0){q=j+72|0;I=c[q>>2]|0;if((I|0)==(p|0))O=p;else{N=I;do{I=N+-12|0;c[q>>2]=I;oz(I);N=c[q>>2]|0}while((N|0)!=(p|0));O=c[k>>2]|0}bz(O)}oz(G);oz(F);oz(E);oz(j);j=i+68|0;E=c[j>>2]|0;if(E|0){F=i+72|0;G=c[F>>2]|0;if((G|0)==(E|0))P=E;else{O=G;do{G=O+-12|0;c[F>>2]=G;oz(G);O=c[F>>2]|0}while((O|0)!=(E|0));P=c[j>>2]|0}bz(P)}oz(D);oz(B);oz(o);oz(i);i=h+68|0;o=c[i>>2]|0;if(o|0){B=c[C>>2]|0;if((B|0)==(o|0))Q=o;else{D=B;do{B=D+-12|0;c[C>>2]=B;oz(B);D=c[C>>2]|0}while((D|0)!=(o|0));Q=c[i>>2]|0}bz(Q)}oz(A);oz(z);oz(y);oz(h);h=f+68|0;y=c[h>>2]|0;if(y|0){z=f+72|0;A=c[z>>2]|0;if((A|0)==(y|0))R=y;else{Q=A;do{A=Q+-12|0;c[z>>2]=A;oz(A);Q=c[z>>2]|0}while((Q|0)!=(y|0));R=c[h>>2]|0}bz(R)}oz(x);oz(w);oz(v);oz(f);f=e+68|0;v=c[f>>2]|0;if(!v){oz(t);oz(s);oz(r);oz(e);l=d;return}w=e+72|0;x=c[w>>2]|0;if((x|0)==(v|0))S=v;else{R=x;do{x=R+-12|0;c[w>>2]=x;oz(x);R=c[w>>2]|0}while((R|0)!=(v|0));S=c[f>>2]|0}bz(S);oz(t);oz(s);oz(r);oz(e);l=d;return}function hh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=d+11|0;f=a[e>>0]|0;h=d+4|0;i=c[h>>2]|0;do if(((f<<24>>24<0?i:f&255)|0)==7){if(Fz(d,0,-1,29392,7)|0){j=a[e>>0]|0;k=c[h>>2]|0;break}l=+g[b+68>>2];return +l}else{j=f;k=i}while(0);do if(((j<<24>>24<0?k:j&255)|0)==9){if(Fz(d,0,-1,29731,9)|0){m=a[e>>0]|0;n=c[h>>2]|0;break}l=+g[b+60>>2];return +l}else{m=j;n=k}while(0);do if(((m<<24>>24<0?n:m&255)|0)==1){if(Fz(d,0,-1,29813,1)|0){o=a[e>>0]|0;p=c[h>>2]|0;break}l=+g[b+140>>2];return +l}else{o=m;p=n}while(0);do if(((o<<24>>24<0?p:o&255)|0)==6){if(Fz(d,0,-1,30726,6)|0){q=a[e>>0]|0;r=c[h>>2]|0;break}l=+g[b+132>>2];return +l}else{q=o;r=p}while(0);do if(((q<<24>>24<0?r:q&255)|0)==6){if(Fz(d,0,-1,29942,6)|0){s=a[e>>0]|0;t=c[h>>2]|0;break}l=+g[b+136>>2];return +l}else{s=q;t=r}while(0);do if(((s<<24>>24<0?t:s&255)|0)==10){if(Fz(d,0,-1,29479,10)|0){u=a[e>>0]|0;v=c[h>>2]|0;break}l=(a[b+124>>0]|0)==0?0.0:1.0;return +l}else{u=s;v=t}while(0);do if(((u<<24>>24<0?v:u&255)|0)==6){if(Fz(d,0,-1,27098,6)|0){w=a[e>>0]|0;x=c[h>>2]|0;break}l=+g[b+64>>2];return +l}else{w=u;x=v}while(0);do if(((w<<24>>24<0?x:w&255)|0)==15){if(Fz(d,0,-1,27082,15)|0){y=a[e>>0]|0;z=c[h>>2]|0;break}l=+g[b+128>>2];return +l}else{y=w;z=x}while(0);if(((y<<24>>24<0?z:y&255)|0)!=14){l=0.0;return +l}if(Fz(d,0,-1,30001,14)|0){l=0.0;return +l}l=+g[b+144>>2];return +l}function ih(b,d,e){b=b|0;d=d|0;e=+e;var f=0,h=0,i=0;f=d+11|0;h=a[f>>0]|0;i=d+4|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==7?(Fz(d,0,-1,29392,7)|0)==0:0)g[b+68>>2]=+(~~e|0);h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==9?(Fz(d,0,-1,29731,9)|0)==0:0)g[b+60>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==1?(Fz(d,0,-1,29813,1)|0)==0:0)g[b+140>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==6?(Fz(d,0,-1,29942,6)|0)==0:0)g[b+136>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==10?(Fz(d,0,-1,29479,10)|0)==0:0)a[b+124>>0]=e!=0.0&1;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==15?(Fz(d,0,-1,27082,15)|0)==0:0)g[b+128>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==6?(Fz(d,0,-1,30726,6)|0)==0:0)g[b+132>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)!=14)return;if(Fz(d,0,-1,30001,14)|0)return;g[b+144>>2]=e;return}function jh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function kh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,47807,0);return}function lh(a,b){a=a|0;b=b|0;return}function mh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,31795,25);return}function nh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=l;l=l+16|0;h=f+4|0;i=f;ye(c[a+120>>2]|0,+g[a+140>>2]);j=a+164|0;k=a+168|0;m=a+176|0;n=a+180|0;o=a+172|0;p=a+160|0;g[h>>2]=0.0;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=0;c[j>>2]=q+4}else Md(p,h);g[h>>2]=1.0;q=c[m>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[q>>2]=1065353216;c[m>>2]=q+4}else Md(o,h);g[h>>2]=.8660253882408142;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=1063105495;c[j>>2]=q+4}else Md(p,h);g[h>>2]=-.5;q=c[m>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[q>>2]=-1090519040;c[m>>2]=q+4}else Md(o,h);g[h>>2]=-.8660253882408142;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=-1084378153;c[j>>2]=q+4}else Md(p,h);g[h>>2]=-.5;p=c[m>>2]|0;if(p>>>0<(c[n>>2]|0)>>>0){c[p>>2]=-1090519040;c[m>>2]=p+4}else Md(o,h);o=a+152|0;p=a+156|0;m=a+148|0;n=0;r=0.0;do{s=.54-+J(+(+(n|0)*6.283185307179586/18.0))*.46;t=s;g[h>>2]=t;q=c[o>>2]|0;if(q>>>0<(c[p>>2]|0)>>>0){g[q>>2]=t;c[o>>2]=q+4}else Md(m,h);r=r+s;n=n+1|0}while((n|0)!=19);n=c[a+148>>2]|0;m=0;do{o=n+(m<<2)|0;g[o>>2]=+g[o>>2]/r;m=m+1|0}while((m|0)!=19);m=a+40|0;n=a+44|0;o=a+52|0;p=a+56|0;q=a+48|0;j=a+36|0;g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Md(j,h);g[h>>2]=0.0;k=c[o>>2]|0;if(k>>>0<(c[p>>2]|0)>>>0){c[k>>2]=0;c[o>>2]=k+4}else Md(q,h);g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Md(j,h);g[h>>2]=0.0;k=c[o>>2]|0;if(k>>>0<(c[p>>2]|0)>>>0){c[k>>2]=0;c[o>>2]=k+4}else Md(q,h);g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Md(j,h);g[h>>2]=0.0;j=c[o>>2]|0;if(j>>>0<(c[p>>2]|0)>>>0){c[j>>2]=0;c[o>>2]=j+4}else Md(q,h);if((tb[c[(c[a>>2]|0)+84>>2]&127](a)|0)>>>0>b>>>0){u=0;l=f;return u|0}if((tb[c[(c[a>>2]|0)+88>>2]&127](a)|0)>>>0<b>>>0){u=0;l=f;return u|0}c[a+24>>2]=e;c[a+28>>2]=d;c[a+8>>2]=0;d=e<<7&2147483520;b=az(d>>>0>1073741823?-1:d<<2)|0;we(~~+g[a+4>>2],e,b)|0;d=a+84|0;q=c[d>>2]|0;j=a+88|0;o=c[j>>2]|0;if((o|0)!=(q|0))c[j>>2]=o+(~((o+-4-q|0)>>>2)<<2);q=a+96|0;o=c[q>>2]|0;p=a+100|0;k=c[p>>2]|0;if((k|0)!=(o|0))c[p>>2]=k+(~((k+-4-o|0)>>>2)<<2);o=a+108|0;k=c[o>>2]|0;m=a+112|0;n=c[m>>2]|0;if((n|0)!=(k|0))c[m>>2]=n+(~((n+-4-k|0)>>>2)<<2);c[h>>2]=0;k=e>>>1;e=a+92|0;n=a+104|0;v=a+116|0;if(!k){a=0;do a=a+1|0;while((a|0)<256);c[h>>2]=a}else{a=0;do{c[i>>2]=0;w=a;x=0;while(1){y=b+((T(w,k)|0)+x<<2)|0;r=+g[y>>2];do if(r>0.0){z=c[j>>2]|0;if((z|0)==(c[e>>2]|0)){xe(d,y);A=c[i>>2]|0}else{g[z>>2]=r;c[j>>2]=z+4;A=x}z=c[p>>2]|0;if((z|0)==(c[n>>2]|0))uh(q,i);else{c[z>>2]=A;c[p>>2]=z+4}z=c[m>>2]|0;if((z|0)==(c[v>>2]|0)){uh(o,h);break}else{c[z>>2]=c[h>>2];c[m>>2]=z+4;break}}while(0);y=(c[i>>2]|0)+1|0;c[i>>2]=y;if((y|0)>=(k|0))break;w=c[h>>2]|0;x=y}a=(c[h>>2]|0)+1|0;c[h>>2]=a}while((a|0)<256)}cz(b);u=1;l=f;return u|0}function oh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0,j=0;c[a+8>>2]=0;b=c[a+12>>2]|0;d=a+16|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{c[d>>2]=f+-48;oz(f+-12|0);e=c[f+-24>>2]|0;h=e;if(e|0){i=f+-20|0;j=c[i>>2]|0;if((j|0)!=(e|0))c[i>>2]=j+(~((j+-4-h|0)>>>2)<<2);bz(e)}f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a+36>>2]|0;f=c[a+48>>2]|0;g[b>>2]=0.0;g[f>>2]=0.0;g[b+4>>2]=0.0;g[f+4>>2]=0.0;g[b+8>>2]=0.0;g[f+8>>2]=0.0;f=c[a+72>>2]|0;b=a+76|0;a=c[b>>2]|0;if((a|0)==(f|0))return;c[b>>2]=a+(~((a+-4-f|0)>>>2)<<2);return}function ph(a){a=a|0;return 1}function qh(a){a=a|0;return 16384}function rh(a){a=a|0;return 2048}function sh(a){a=a|0;return 1}function th(a){a=a|0;return 1}function uh(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823)Vx(a);h=a+8|0;i=(c[h>>2]|0)-f|0;j=i>>1;k=i>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=e-f>>2;do if(k)if(k>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{l=$y(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=e-f|0;e=g+(0-(b>>2)<<2)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+4;c[h>>2]=l+(k<<2);if(!f)return;bz(f);return}function vh(a,b){a=a|0;b=b|0;var d=0,e=0;kz(a,b);kz(a+12|0,b+12|0);kz(a+24|0,b+24|0);kz(a+36|0,b+36|0);d=a+48|0;e=b+48|0;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];c[d+16>>2]=c[e+16>>2];od(a+68|0,b+68|0);return}function wh(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=l;l=l+32|0;e=d;f=a+4|0;g=c[f>>2]|0;h=c[a>>2]|0;i=((g-h|0)/80|0)+1|0;if(i>>>0>53687091)Vx(a);j=a+8|0;k=((c[j>>2]|0)-h|0)/80|0;m=k<<1;n=k>>>0<26843545?(m>>>0<i>>>0?i:m):53687091;m=(g-h|0)/80|0;c[e+12>>2]=0;c[e+16>>2]=a+8;do if(n)if(n>>>0>53687091){h=Ea(4)|0;ZA(h);_a(h|0,6864,245)}else{o=$y(n*80|0)|0;break}else o=0;while(0);c[e>>2]=o;h=o+(m*80|0)|0;m=e+8|0;c[m>>2]=h;g=e+4|0;c[g>>2]=h;i=e+12|0;c[i>>2]=o+(n*80|0);vh(h,b);c[m>>2]=(c[m>>2]|0)+80;b=c[a>>2]|0;h=c[f>>2]|0;if((h|0)==(b|0)){p=g;q=c[g>>2]|0;r=b;s=h;c[a>>2]=q;c[p>>2]=r;t=c[m>>2]|0;c[f>>2]=t;c[m>>2]=s;u=c[j>>2]|0;v=c[i>>2]|0;c[j>>2]=v;c[i>>2]=u;w=c[p>>2]|0;c[e>>2]=w;yh(e);l=d;return}n=h;h=c[g>>2]|0;do{o=h+-80|0;k=n;n=n+-80|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;o=h+-68|0;x=k+-68|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;x=h+-56|0;o=k+-56|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;o=h+-44|0;x=k+-44|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;x=h+-32|0;o=k+-32|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];o=h+-12|0;x=k+-12|0;c[o>>2]=0;y=h+-8|0;c[y>>2]=0;c[h+-4>>2]=0;c[o>>2]=c[x>>2];o=k+-8|0;c[y>>2]=c[o>>2];y=k+-4|0;c[h+-4>>2]=c[y>>2];c[y>>2]=0;c[o>>2]=0;c[x>>2]=0;h=(c[g>>2]|0)+-80|0;c[g>>2]=h}while((n|0)!=(b|0));p=g;q=h;r=c[a>>2]|0;s=c[f>>2]|0;c[a>>2]=q;c[p>>2]=r;t=c[m>>2]|0;c[f>>2]=t;c[m>>2]=s;u=c[j>>2]|0;v=c[i>>2]|0;c[j>>2]=v;c[i>>2]=u;w=c[p>>2]|0;c[e>>2]=w;yh(e);l=d;return}function xh(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;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-44|0);oz(g+-56|0);oz(g+-68|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);return}function yh(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;b=c[a+4>>2]|0;d=a+8|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{e=f+-80|0;c[d>>2]=e;g=f+-12|0;h=c[g>>2]|0;if(h|0){i=f+-8|0;j=c[i>>2]|0;if((j|0)==(h|0))k=h;else{l=j;do{j=l+-12|0;c[i>>2]=j;oz(j);l=c[i>>2]|0}while((l|0)!=(h|0));k=c[g>>2]|0}bz(k)}oz(f+-44|0);oz(f+-56|0);oz(f+-68|0);oz(e);f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a>>2]|0;if(!b)return;bz(b);return}function zh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[b+4>>2]=d;c[b>>2]=10816;e=b+60|0;f=b+8|0;h=f+52|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));g[e>>2]=1.0;g[b+64>>2]=0.0;g[b+68>>2]=1.0;e=b+72|0;g[b+128>>2]=0.0;g[b+132>>2]=0.0;i=b+136|0;f=e;h=f+52|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));a[e+52>>0]=0;g[i>>2]=.10000000149011612;g[b+140>>2]=.699999988079071;f=b+144|0;h=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));f=az(86016)|0;c[b+120>>2]=f;eB(f|0,0,86016)|0;return}function Ah(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,I=0.0,J=0.0,K=0.0,L=0;f=l;l=l+64|0;h=f+48|0;i=f;j=b+8|0;k=c[j>>2]|0;m=k+1|0;c[j>>2]=m;j=c[b+24>>2]|0;n=j>>>1;o=az(n>>>0>1073741823?-1:n<<2)|0;p=c[d>>2]|0;d=j>>>0>1;if(d){q=+(j>>>0);r=+(j>>>0);s=b+132|0;t=0.0;u=-1.0e4;v=0;while(1){w=v<<1;x=+g[p+(w<<2)>>2];y=+g[p+((w|1)<<2)>>2];z=+H(+(x*x+y*y));y=z>q?r:z;g[o+(v<<2)>>2]=y;z=u<y?y:u;x=+g[s>>2];if(x>0.0){A=y;B=t+A*A}else B=t;v=v+1|0;if((v|0)>=(n|0)){C=B;D=z;E=x;break}else{t=B;u=z}}}else{C=0.0;D=-1.0e4;E=+g[b+132>>2]}a:do if(E>0.0&j>>>0>5){u=C*E/100.0;v=2;B=0.0;do{t=+g[o+(v<<2)>>2];B=B+t*t;if(!(B<u))break a;g[o+(v+-2<<2)>>2]=0.0;v=v+1|0}while((v|0)<(n|0))}while(0);if(!(!(D<+(j>>>0)*2.0*.00006103515625)|d^1))eB(o|0,0,(n>>>0>1?n:1)<<2|0)|0;n=az(1024)|0;eB(n|0,0,1024)|0;d=c[b+84>>2]|0;j=c[b+88>>2]|0;if((d|0)!=(j|0)){v=c[b+96>>2]|0;s=c[b+108>>2]|0;p=0;w=d;while(1){F=n+(c[s+(p<<2)>>2]<<2)|0;g[F>>2]=+g[o+(c[v+(p<<2)>>2]<<2)>>2]*+g[d+(p<<2)>>2]+ +g[F>>2];w=w+4|0;if((w|0)==(j|0))break;else p=p+1|0}}D=1.0/+(m|0);E=D*+(k|0);k=c[b+36>>2]|0;C=+g[k>>2]*E;g[k>>2]=C;m=k+4|0;u=+g[m>>2]*E;g[m>>2]=u;p=k+8|0;B=+g[p>>2]*E;g[p>>2]=B;E=+vB(52.906666666666666)*3.0+1.0;j=c[b+48>>2]|0;b:do if(E>0.0){w=j+4|0;d=j+8|0;v=0;t=C;r=u;q=B;while(1){s=n+(v<<2)|0;g[k>>2]=D*+g[s>>2]+t;F=n+(v+1<<2)|0;g[m>>2]=D*+g[F>>2]+r;G=n+(v+2<<2)|0;g[p>>2]=D*+g[G>>2]+q;z=+g[j>>2]*.996999979019165;g[j>>2]=z;x=+g[s>>2]*.003000020980834961+z;g[j>>2]=x;z=+g[w>>2]*.996999979019165;g[w>>2]=z;A=+g[F>>2]*.003000020980834961+z;g[w>>2]=A;z=+g[d>>2]*.996999979019165;g[d>>2]=z;y=+g[G>>2]*.003000020980834961+z;g[d>>2]=y;G=v+3|0;if(!(+(G|0)<E)){I=x;J=A;K=y;break b}v=G;t=+g[k>>2];r=+g[m>>2];q=+g[p>>2]}}else{I=+g[j>>2];J=+g[j+4>>2];K=+g[j+8>>2]}while(0);j=c[b+172>>2]|0;p=c[b+160>>2]|0;E=+P(+(I*+g[p>>2]+0.0+J*+g[p+4>>2]+K*+g[p+8>>2]),+(I*+g[j>>2]+0.0+J*+g[j+4>>2]+K*+g[j+8>>2]))/6.283185307179586;g[h>>2]=E;j=b+76|0;p=c[j>>2]|0;if((p|0)==(c[b+80>>2]|0))xe(b+72|0,h);else{g[p>>2]=E;c[j>>2]=p+4}p=i+4|0;j=i+8|0;h=i+12|0;a[h>>0]=0;m=i+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[m+28>>2]=0;a[i>>0]=1;c[p>>2]=c[e>>2];c[j>>2]=c[e+4>>2];e=i+28|0;k=i+32|0;v=i+24|0;d=0;w=0;G=0;while(1){F=n+(d<<2)|0;if((w|0)==(G|0))xe(v,F);else{c[w>>2]=c[F>>2];c[e>>2]=w+4}F=d+1|0;if((F|0)>=256)break;d=F;w=c[e>>2]|0;G=c[k>>2]|0}cz(o);cz(n);n=b+16|0;o=c[n>>2]|0;if((o|0)==(c[b+20>>2]|0)){Bh(b+12|0,i);L=i+36|0}else{a[o>>0]=a[i>>0]|0;c[o+4>>2]=c[p>>2];c[o+8>>2]=c[j>>2];a[o+12>>0]=a[h>>0]|0;c[o+16>>2]=c[m>>2];c[o+20>>2]=c[i+20>>2];Kd(o+24|0,v);v=i+36|0;kz(o+36|0,v);c[n>>2]=(c[n>>2]|0)+48;L=v}oz(L);L=c[i+24>>2]|0;if(!L){l=f;return}i=c[e>>2]|0;if((i|0)!=(L|0))c[e>>2]=i+(~((i+-4-L|0)>>>2)<<2);bz(L);l=f;return}function Bh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+32|0;f=e;g=c[b+4>>2]|0;h=c[b>>2]|0;i=((g-h|0)/48|0)+1|0;if(i>>>0>89478485)Vx(b);j=((c[b+8>>2]|0)-h|0)/48|0;k=j<<1;m=j>>>0<44739242?(k>>>0<i>>>0?i:k):89478485;k=(g-h|0)/48|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(m)if(m>>>0>89478485){h=Ea(4)|0;ZA(h);_a(h|0,6864,245)}else{n=$y(m*48|0)|0;break}else n=0;while(0);c[f>>2]=n;h=n+(k*48|0)|0;g=f+8|0;c[g>>2]=h;i=f+4|0;c[i>>2]=h;c[f+12>>2]=n+(m*48|0);a[h>>0]=a[d>>0]|0;c[n+(k*48|0)+4>>2]=c[d+4>>2];c[n+(k*48|0)+8>>2]=c[d+8>>2];a[n+(k*48|0)+12>>0]=a[d+12>>0]|0;c[n+(k*48|0)+16>>2]=c[d+16>>2];c[n+(k*48|0)+20>>2]=c[d+20>>2];Kd(n+(k*48|0)+24|0,d+24|0);kz(n+(k*48|0)+36|0,d+36|0);c[g>>2]=h+48;Ch(b,f);b=c[i>>2]|0;i=c[g>>2]|0;if((i|0)!=(b|0)){h=i;do{c[g>>2]=h+-48;oz(h+-12|0);i=c[h+-24>>2]|0;d=i;if(i|0){k=h+-20|0;n=c[k>>2]|0;if((n|0)!=(i|0))c[k>>2]=n+(~((n+-4-d|0)>>>2)<<2);bz(i)}h=c[g>>2]|0}while((h|0)!=(b|0))}b=c[f>>2]|0;if(!b){l=e;return}bz(b);l=e;return}function Ch(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c[b>>2]|0;f=b+4|0;g=c[f>>2]|0;h=d+4|0;if((g|0)==(e|0)){i=h;j=b;k=c[h>>2]|0;l=e}else{m=g;g=c[h>>2]|0;do{n=m;m=m+-48|0;a[g+-48>>0]=a[m>>0]|0;c[g+-44>>2]=c[n+-44>>2];c[g+-40>>2]=c[n+-40>>2];a[g+-36>>0]=a[n+-36>>0]|0;c[g+-32>>2]=c[n+-32>>2];c[g+-28>>2]=c[n+-28>>2];Kd(g+-24|0,n+-24|0);kz(g+-12|0,n+-12|0);g=(c[h>>2]|0)+-48|0;c[h>>2]=g}while((m|0)!=(e|0));i=h;j=b;k=g;l=c[b>>2]|0}c[j>>2]=k;c[i>>2]=l;l=d+8|0;k=c[f>>2]|0;c[f>>2]=c[l>>2];c[l>>2]=k;k=b+8|0;b=d+12|0;l=c[k>>2]|0;c[k>>2]=c[b>>2];c[b>>2]=l;c[d>>2]=c[i>>2];return}function Dh(a){a=a|0;c[a>>2]=10928;ah(a);return}function Eh(a){a=a|0;c[a>>2]=10928;ah(a);bz(a);return}function Fh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,28622,11);return}function Gh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,28610,11);return}function Hh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,28305,304);return}function Ih(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nh(a,b,c,d)|0}function Jh(a){a=a|0;oh(a);return}function Kh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,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;e=l;l=l+624|0;f=e+612|0;h=e+600|0;i=e+500|0;j=e+400|0;k=e+300|0;m=e+200|0;n=e+100|0;o=e;c[b>>2]=0;p=b+4|0;c[p>>2]=0;c[b+8>>2]=0;c[f>>2]=0;q=f+4|0;c[q>>2]=0;c[f+8>>2]=0;c[h>>2]=0;r=h+4|0;c[r>>2]=0;c[h+8>>2]=0;s=h+8|0;t=f+8|0;u=0;do{v=c[11032+(u<<2)>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,v,kn(v)|0);v=c[r>>2]|0;if(v>>>0<(c[s>>2]|0)>>>0){c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[r>>2]=(c[r>>2]|0)+12}else Ae(h,i);oz(i);if((u|0)<12){v=c[11032+(u+12<<2)>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,v,kn(v)|0);v=c[q>>2]|0;if(v>>>0<(c[t>>2]|0)>>>0){c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[q>>2]=(c[q>>2]|0)+12}else Ae(f,i);oz(i)}u=u+1|0}while((u|0)<24);u=c[d+28>>2]|0;w=+g[d+4>>2];if(!u)x=w*.00048828125;else x=w/+(u>>>0);u=i+52|0;g[i+72>>2]=0.0;g[i+76>>2]=0.0;t=i+80|0;a[t>>0]=0;s=i+84|0;v=i;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[i+48>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;a[u+16>>0]=0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;a[s+12>>0]=0;tz(i,27293)|0;s=i+12|0;tz(s,27305)|0;z=i+24|0;tz(z,27328)|0;A=i+36|0;tz(A,47807)|0;a[i+48>>0]=1;c[u>>2]=256;a[i+68>>0]=0;a[t>>0]=0;c[i+88>>2]=1;a[i+96>>0]=0;g[i+92>>2]=x;t=c[p>>2]|0;u=b+8|0;if((t|0)==(c[u>>2]|0))Sh(b,i);else{Rh(t,i);c[p>>2]=(c[p>>2]|0)+100}c[d+184>>2]=0;t=j+52|0;g[j+72>>2]=0.0;g[j+76>>2]=0.0;B=j+80|0;a[B>>0]=0;C=j+84|0;v=j;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[j+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;a[C+12>>0]=0;tz(j,27409)|0;C=j+12|0;tz(C,27426)|0;D=j+24|0;tz(D,27455)|0;E=j+36|0;tz(E,47807)|0;a[j+48>>0]=1;c[t>>2]=256;a[j+68>>0]=0;a[B>>0]=0;c[j+88>>2]=1;a[j+96>>0]=0;g[j+92>>2]=x;B=c[p>>2]|0;if((B|0)==(c[u>>2]|0))Sh(b,j);else{Rh(B,j);c[p>>2]=(c[p>>2]|0)+100}c[d+188>>2]=1;B=k+52|0;g[k+72>>2]=0.0;g[k+76>>2]=0.0;t=k+80|0;a[t>>0]=0;F=k+84|0;v=k;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[k+48>>0]=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;a[B+16>>0]=0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;a[F+12>>0]=0;tz(k,27589)|0;F=k+12|0;tz(F,27606)|0;G=k+24|0;tz(G,27624)|0;H=k+36|0;tz(H,47807)|0;a[k+48>>0]=1;c[B>>2]=84;a[k+68>>0]=0;a[t>>0]=0;c[k+88>>2]=1;a[k+96>>0]=0;g[k+92>>2]=x;t=c[p>>2]|0;if((t|0)==(c[u>>2]|0))Sh(b,k);else{Rh(t,k);c[p>>2]=(c[p>>2]|0)+100}c[d+192>>2]=2;t=m+52|0;g[m+72>>2]=0.0;g[m+76>>2]=0.0;B=m+80|0;a[B>>0]=0;I=m+84|0;v=m;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[m+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;a[I+12>>0]=0;tz(m,27739)|0;I=m+12|0;tz(I,27746)|0;J=m+24|0;tz(J,27757)|0;K=m+36|0;tz(K,47807)|0;a[m+48>>0]=1;c[t>>2]=12;$b(m+56|0,c[f>>2]|0,c[q>>2]|0);a[m+68>>0]=0;a[B>>0]=0;c[m+88>>2]=1;a[m+96>>0]=0;g[m+92>>2]=x;B=c[p>>2]|0;if((B|0)==(c[u>>2]|0))Sh(b,m);else{Rh(B,m);c[p>>2]=(c[p>>2]|0)+100}c[d+196>>2]=3;B=n+52|0;g[n+72>>2]=0.0;g[n+76>>2]=0.0;t=n+80|0;a[t>>0]=0;L=n+84|0;v=n;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[n+48>>0]=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;a[B+16>>0]=0;c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;a[L+12>>0]=0;tz(n,27864)|0;L=n+12|0;tz(L,27875)|0;M=n+24|0;tz(M,27891)|0;N=n+36|0;tz(N,47807)|0;a[n+48>>0]=1;c[B>>2]=12;$b(n+56|0,c[f>>2]|0,c[q>>2]|0);a[n+68>>0]=0;a[t>>0]=0;c[n+88>>2]=1;a[n+96>>0]=0;g[n+92>>2]=x;t=c[p>>2]|0;if((t|0)==(c[u>>2]|0))Sh(b,n);else{Rh(t,n);c[p>>2]=(c[p>>2]|0)+100}c[d+200>>2]=4;t=o+52|0;g[o+72>>2]=0.0;g[o+76>>2]=0.0;B=o+80|0;a[B>>0]=0;O=o+84|0;v=o;y=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(y|0));a[o+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;a[O+12>>0]=0;tz(o,28001)|0;O=o+12|0;tz(O,28012)|0;v=o+24|0;tz(v,28043)|0;y=o+36|0;tz(y,47807)|0;a[o+48>>0]=1;c[t>>2]=24;$b(o+56|0,c[h>>2]|0,c[r>>2]|0);a[o+68>>0]=0;a[B>>0]=0;c[o+88>>2]=1;a[o+96>>0]=0;g[o+92>>2]=x;B=c[p>>2]|0;if((B|0)==(c[u>>2]|0))Sh(b,o);else{Rh(B,o);c[p>>2]=(c[p>>2]|0)+100}c[d+204>>2]=5;d=o+56|0;p=c[d>>2]|0;if(p|0){B=o+60|0;b=c[B>>2]|0;if((b|0)==(p|0))P=p;else{u=b;do{b=u+-12|0;c[B>>2]=b;oz(b);u=c[B>>2]|0}while((u|0)!=(p|0));P=c[d>>2]|0}bz(P)}oz(y);oz(v);oz(O);oz(o);o=n+56|0;O=c[o>>2]|0;if(O|0){v=n+60|0;y=c[v>>2]|0;if((y|0)==(O|0))Q=O;else{P=y;do{y=P+-12|0;c[v>>2]=y;oz(y);P=c[v>>2]|0}while((P|0)!=(O|0));Q=c[o>>2]|0}bz(Q)}oz(N);oz(M);oz(L);oz(n);n=m+56|0;L=c[n>>2]|0;if(L|0){M=m+60|0;N=c[M>>2]|0;if((N|0)==(L|0))R=L;else{Q=N;do{N=Q+-12|0;c[M>>2]=N;oz(N);Q=c[M>>2]|0}while((Q|0)!=(L|0));R=c[n>>2]|0}bz(R)}oz(K);oz(J);oz(I);oz(m);m=k+56|0;I=c[m>>2]|0;if(I|0){J=k+60|0;K=c[J>>2]|0;if((K|0)==(I|0))S=I;else{R=K;do{K=R+-12|0;c[J>>2]=K;oz(K);R=c[J>>2]|0}while((R|0)!=(I|0));S=c[m>>2]|0}bz(S)}oz(H);oz(G);oz(F);oz(k);k=j+56|0;F=c[k>>2]|0;if(F|0){G=j+60|0;H=c[G>>2]|0;if((H|0)==(F|0))T=F;else{S=H;do{H=S+-12|0;c[G>>2]=H;oz(H);S=c[G>>2]|0}while((S|0)!=(F|0));T=c[k>>2]|0}bz(T)}oz(E);oz(D);oz(C);oz(j);j=i+56|0;C=c[j>>2]|0;if(C|0){D=i+60|0;E=c[D>>2]|0;if((E|0)==(C|0))U=C;else{T=E;do{E=T+-12|0;c[D>>2]=E;oz(E);T=c[D>>2]|0}while((T|0)!=(C|0));U=c[j>>2]|0}bz(U)}oz(A);oz(z);oz(s);oz(i);i=c[h>>2]|0;if(i|0){s=c[r>>2]|0;if((s|0)==(i|0))V=i;else{z=s;do{s=z+-12|0;c[r>>2]=s;oz(s);z=c[r>>2]|0}while((z|0)!=(i|0));V=c[h>>2]|0}bz(V)}V=c[f>>2]|0;if(!V){l=e;return}h=c[q>>2]|0;if((h|0)==(V|0))W=V;else{i=h;do{h=i+-12|0;c[q>>2]=h;oz(h);i=c[q>>2]|0}while((i|0)!=(V|0));W=c[f>>2]|0}bz(W);l=e;return}function Lh(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=l;l=l+16|0;h=g;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];Ah(d,e,h);c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;h=Nh(b,d+184|0)|0;b=c[d+12>>2]|0;e=(((c[d+16>>2]|0)-b|0)/48|0)+-1|0;d=b;b=d+(e*48|0)|0;f=h+4|0;i=c[f>>2]|0;if((i|0)==(c[h+8>>2]|0)){Bh(h,b);l=g;return}else{a[i>>0]=a[b>>0]|0;c[i+4>>2]=c[d+(e*48|0)+4>>2];c[i+8>>2]=c[d+(e*48|0)+8>>2];a[i+12>>0]=a[d+(e*48|0)+12>>0]|0;c[i+16>>2]=c[d+(e*48|0)+16>>2];c[i+20>>2]=c[d+(e*48|0)+20>>2];Kd(i+24|0,d+(e*48|0)+24|0);kz(i+36|0,d+(e*48|0)+36|0);c[f>>2]=(c[f>>2]|0)+48;l=g;return}}function Mh(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0.0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0.0,Na=0.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.0,lb=0.0,mb=0.0,nb=0.0,ob=0.0,pb=0,qb=0,rb=0,sb=0.0,tb=0.0,ub=0.0;e=l;l=l+18864|0;f=e;i=e+18760|0;k=e+18712|0;m=e+18692|0;n=e+18608|0;o=e+18696|0;p=e+18680|0;q=e+18560|0;r=e+18668|0;s=e+18656|0;t=e+18512|0;u=e+18464|0;v=e+18408|0;w=e+17376|0;x=e+17360|0;y=e+17356|0;z=e+17352|0;A=e+13016|0;B=e+8680|0;C=e+4344|0;D=e+4336|0;E=e+18456|0;G=e+18400|0;J=e+17372|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;K=d+12|0;L=d+16|0;if((c[L>>2]|0)==(c[K>>2]|0)){l=e;return}M=c[d+36>>2]|0;N=c[d+172>>2]|0;O=c[d+160>>2]|0;Q=+g[M>>2];R=+g[M+4>>2];S=+g[M+8>>2];T=+P(+(Q*+g[O>>2]+0.0+R*+g[O+4>>2]+S*+g[O+8>>2]),+(Q*+g[N>>2]+0.0+R*+g[N+4>>2]+S*+g[N+8>>2]));S=T/6.283185307179586*3.0;N=~~+F(+S);h[f>>3]=+Xm(T/75.39822368615503)*440.0;ln(e+18808|0,28647,f)|0;g[m>>2]=0.0;O=c[K>>2]|0;if((O|0)!=(c[L>>2]|0)){K=i+4|0;M=i+8|0;U=i+12|0;V=i+16|0;W=i+20|0;X=i+24|0;Y=i+36|0;Z=k+4|0;_=k+8|0;$=k+12|0;aa=k+16|0;ba=k+24|0;ca=k+28|0;da=k+32|0;ea=d+124|0;fa=i+28|0;ga=d+148|0;ha=q+4|0;ia=q+8|0;ja=q+8|0;ka=f+4|0;la=f+8|0;ma=d+60|0;na=d+188|0;oa=k+36|0;pa=k+24|0;qa=i+24|0;ra=n+4|0;sa=k+20|0;ta=r+4|0;ua=s+4|0;va=o+4|0;wa=p+4|0;xa=d+72|0;ya=0;T=S-+(N|0);za=N;N=O;while(1){a[i>>0]=a[N>>0]|0;c[K>>2]=c[N+4>>2];c[M>>2]=c[N+8>>2];a[U>>0]=a[N+12>>0]|0;c[V>>2]=c[N+16>>2];c[W>>2]=c[N+20>>2];Kd(X,N+24|0);kz(Y,N+36|0);a[$>>0]=0;c[aa>>2]=0;c[aa+4>>2]=0;c[aa+8>>2]=0;c[aa+12>>2]=0;c[aa+16>>2]=0;c[aa+20>>2]=0;c[aa+24>>2]=0;c[aa+28>>2]=0;a[k>>0]=1;c[Z>>2]=c[K>>2];c[_>>2]=c[M>>2];g[f>>2]=0.0;Md(ba,f);O=c[ca>>2]|0;Aa=c[da>>2]|0;g[f>>2]=0.0;if(O>>>0<Aa>>>0){c[O>>2]=0;c[ca>>2]=O+4}else Md(ba,f);if(!(a[ea>>0]|0)){Ba=T;Ca=za}else{S=+g[(c[xa>>2]|0)+(ya<<2)>>2]*3.0;O=~~+F(+S);Ba=S-+(O|0);Ca=O}O=c[fa>>2]|0;Aa=c[X>>2]|0;if(((O-Aa>>2)+-3|0)>2){S=1.0-Ba;Da=2;Ea=Aa;Aa=O;while(1){O=Ea;Fa=Da+Ca|0;R=S*+g[O+(Fa<<2)>>2]+Ba*+g[O+(Fa+1<<2)>>2];g[m>>2]=R;Fa=c[ca>>2]|0;if((Fa|0)==(c[da>>2]|0)){xe(ba,m);Ga=c[X>>2]|0;Ha=c[fa>>2]|0}else{g[Fa>>2]=R;c[ca>>2]=Fa+4;Ga=Ea;Ha=Aa}Da=Da+1|0;if((Da|0)>=((Ha-Ga>>2)+-3|0))break;else{Ea=Ga;Aa=Ha}}}g[f>>2]=0.0;Aa=c[ca>>2]|0;Ea=c[da>>2]|0;if(Aa>>>0<Ea>>>0){c[Aa>>2]=0;Da=Aa+4|0;c[ca>>2]=Da;Ia=Da;Ja=Ea}else{Md(ba,f);Ia=c[ca>>2]|0;Ja=c[da>>2]|0}g[f>>2]=0.0;if(Ia>>>0<Ja>>>0){c[Ia>>2]=0;Ea=Ia+4|0;c[ca>>2]=Ea;Ka=Ea;La=Ja}else{Md(ba,f);Ka=c[ca>>2]|0;La=c[da>>2]|0}g[f>>2]=0.0;if(Ka>>>0<La>>>0){c[Ka>>2]=0;c[ca>>2]=Ka+4}else Md(ba,f);Kd(o,ba);Kd(p,ga);ve(n,o,p);Ea=c[p>>2]|0;Da=Ea;if(Ea|0){Aa=c[wa>>2]|0;if((Aa|0)!=(Ea|0))c[wa>>2]=Aa+(~((Aa+-4-Da|0)>>>2)<<2);bz(Ea)}Ea=c[o>>2]|0;Da=Ea;if(Ea|0){Aa=c[va>>2]|0;if((Aa|0)!=(Ea|0))c[va>>2]=Aa+(~((Aa+-4-Da|0)>>>2)<<2);bz(Ea)}c[q>>2]=0;c[ha>>2]=0;c[ia>>2]=0;Ea=0;Da=0;Aa=0;while(1){S=+g[(c[ba>>2]|0)+(Ea<<2)>>2]-+g[(c[n>>2]|0)+(Ea<<2)>>2];R=S*S;g[f>>2]=R;if(Da>>>0<Aa>>>0){g[Da>>2]=R;c[ha>>2]=Da+4}else Md(q,f);Fa=Ea+1|0;if((Fa|0)>=256)break;Ea=Fa;Da=c[ha>>2]|0;Aa=c[ja>>2]|0}Kd(r,q);Kd(s,ga);ve(f,r,s);Aa=c[q>>2]|0;Da=Aa;if(Aa|0){Ea=c[ha>>2]|0;if((Ea|0)!=(Aa|0))c[ha>>2]=Ea+(~((Ea+-4-Da|0)>>>2)<<2);bz(Aa);c[ja>>2]=0;c[ha>>2]=0;c[q>>2]=0}c[q>>2]=c[f>>2];c[ha>>2]=c[ka>>2];c[ja>>2]=c[la>>2];c[la>>2]=0;c[ka>>2]=0;c[f>>2]=0;Aa=c[s>>2]|0;Da=Aa;if(Aa|0){Ea=c[ua>>2]|0;if((Ea|0)!=(Aa|0))c[ua>>2]=Ea+(~((Ea+-4-Da|0)>>>2)<<2);bz(Aa)}Aa=c[r>>2]|0;Da=Aa;if(Aa|0){Ea=c[ta>>2]|0;if((Ea|0)!=(Aa|0))c[ta>>2]=Ea+(~((Ea+-4-Da|0)>>>2)<<2);bz(Aa)}Aa=0;do{Da=(c[q>>2]|0)+(Aa<<2)|0;R=+H(+(+g[Da>>2]));g[Da>>2]=R;Da=(c[ba>>2]|0)+(Aa<<2)|0;S=+g[Da>>2];if(R>0.0){Q=S-+g[(c[n>>2]|0)+(Aa<<2)>>2];if(Q>0.0)Ma=Q/+I(+R,+(+g[ma>>2]));else Ma=0.0;g[Da>>2]=Ma;Na=Ma}else Na=S;if(Na<0.0){Da=fe(43100,28674,41)|0;c[f>>2]=iq(Da+(c[(c[Da>>2]|0)+-12>>2]|0)|0)|0;Ea=Hr(f,43804)|0;Fa=Bb[c[(c[Ea>>2]|0)+28>>2]&63](Ea,10)|0;Oy(f);Aq(Da,Fa)|0;nq(Da)|0}Aa=Aa+1|0}while((Aa|0)<256);Aa=Nh(b,na)|0;Da=Aa+4|0;Fa=c[Da>>2]|0;if((Fa|0)==(c[Aa+8>>2]|0))Bh(Aa,k);else{a[Fa>>0]=a[k>>0]|0;c[Fa+4>>2]=c[Z>>2];c[Fa+8>>2]=c[_>>2];a[Fa+12>>0]=a[$>>0]|0;c[Fa+16>>2]=c[aa>>2];c[Fa+20>>2]=c[sa>>2];Kd(Fa+24|0,ba);kz(Fa+36|0,oa);c[Da>>2]=(c[Da>>2]|0)+48}ya=ya+1|0;Da=c[q>>2]|0;Fa=Da;if(Da|0){Aa=c[ha>>2]|0;if((Aa|0)!=(Da|0))c[ha>>2]=Aa+(~((Aa+-4-Fa|0)>>>2)<<2);bz(Da)}Da=c[n>>2]|0;Fa=Da;if(Da|0){Aa=c[ra>>2]|0;if((Aa|0)!=(Da|0))c[ra>>2]=Aa+(~((Aa+-4-Fa|0)>>>2)<<2);bz(Da)}oz(oa);Da=c[pa>>2]|0;Fa=Da;if(Da|0){Aa=c[ca>>2]|0;if((Aa|0)!=(Da|0))c[ca>>2]=Aa+(~((Aa+-4-Fa|0)>>>2)<<2);bz(Da)}oz(Y);Da=c[qa>>2]|0;Fa=Da;if(Da|0){Aa=c[fa>>2]|0;if((Aa|0)!=(Da|0))c[fa>>2]=Aa+(~((Aa+-4-Fa|0)>>>2)<<2);bz(Da)}N=N+48|0;if((N|0)==(c[L>>2]|0))break;else{T=Ba;za=Ca}}}Ca=d+68|0;za=d+188|0;L=n+4|0;N=n+8|0;fa=n+12|0;qa=n+16|0;Y=n+20|0;ca=n+24|0;pa=n+36|0;oa=q+4|0;ra=q+8|0;ha=q+12|0;ya=q+16|0;ba=t+4|0;sa=t+8|0;aa=t+12|0;$=t+16|0;_=u+4|0;Z=u+8|0;na=u+12|0;ma=u+16|0;ta=v+4|0;r=v+8|0;ua=v+12|0;s=v+16|0;ka=x+4|0;la=x+8|0;ja=x+8|0;ga=i+4|0;ia=i+8|0;va=i+8|0;o=q+28|0;wa=q+32|0;p=q+24|0;Ka=q+24|0;La=d+120|0;da=t+24|0;Ja=u+24|0;Ia=v+24|0;Ha=d+128|0;Ga=v+28|0;X=u+28|0;m=t+28|0;xa=d+192|0;ea=d+196|0;M=d+200|0;K=d+204|0;d=v+36|0;W=v+24|0;V=u+36|0;U=u+24|0;Da=t+36|0;Fa=t+24|0;Aa=q+36|0;Ea=n+24|0;O=n+28|0;Oa=v+20|0;Pa=u+20|0;Qa=t+20|0;Ra=q+20|0;Sa=c[(Nh(b,za)|0)>>2]|0;while(1){if((Sa|0)==(c[(Nh(b,za)|0)+4>>2]|0))break;a[n>>0]=a[Sa>>0]|0;c[L>>2]=c[Sa+4>>2];c[N>>2]=c[Sa+8>>2];a[fa>>0]=a[Sa+12>>0]|0;c[qa>>2]=c[Sa+16>>2];c[Y>>2]=c[Sa+20>>2];Kd(ca,Sa+24|0);kz(pa,Sa+36|0);a[ha>>0]=0;c[ya>>2]=0;c[ya+4>>2]=0;c[ya+8>>2]=0;c[ya+12>>2]=0;c[ya+16>>2]=0;c[ya+20>>2]=0;c[ya+24>>2]=0;c[ya+28>>2]=0;a[aa>>0]=0;c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;c[$+12>>2]=0;c[$+16>>2]=0;c[$+20>>2]=0;c[$+24>>2]=0;c[$+28>>2]=0;a[na>>0]=0;c[ma>>2]=0;c[ma+4>>2]=0;c[ma+8>>2]=0;c[ma+12>>2]=0;c[ma+16>>2]=0;c[ma+20>>2]=0;c[ma+24>>2]=0;c[ma+28>>2]=0;a[ua>>0]=0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;a[q>>0]=1;Ta=c[L>>2]|0;c[oa>>2]=Ta;Ua=c[N>>2]|0;c[ra>>2]=Ua;a[t>>0]=1;c[ba>>2]=Ta;c[sa>>2]=Ua;a[u>>0]=1;c[_>>2]=Ta;c[Z>>2]=Ua;a[v>>0]=1;c[ta>>2]=Ta;c[r>>2]=Ua;Ua=c[ca>>2]|0;Ta=0;Va=0;do{Ba=+g[Ua+(Ta<<2)>>2];g[w+(Ta<<2)>>2]=Ba;Va=Va|Ba>0.0;Ta=Ta+1|0}while((Ta|0)!=256);c[x>>2]=0;c[ka>>2]=0;c[la>>2]=0;Ta=$y(48)|0;c[x>>2]=Ta;Ua=Ta+48|0;c[ja>>2]=Ua;Wa=Ta;Xa=Wa+48|0;do{c[Wa>>2]=0;Wa=Wa+4|0}while((Wa|0)<(Xa|0));c[ka>>2]=Ua;Ya=$y(48)|0;Wa=Ya;Xa=Wa+48|0;do{c[Wa>>2]=0;Wa=Wa+4|0}while((Wa|0)<(Xa|0));Wa=Ya+48|0;a:do if(Va){if(+g[Ca>>2]==0.0){Xa=3;Ua=0;Za=0;_a=0;$a=Ta;while(1){Ba=+g[w+(Xa+-1<<2)>>2]*.5+0.0+ +g[w+(Xa<<2)>>2]+ +g[w+(Xa+1<<2)>>2]*.5;g[y>>2]=Ba;if((Za|0)==(_a|0)){xe(p,y);ab=c[x>>2]|0}else{g[Za>>2]=Ba;c[o>>2]=Za+4;ab=$a}bb=(Ua|0)%12|0;cb=ab+(bb<<2)|0;g[cb>>2]=+g[y>>2]*+g[11240+(Ua<<2)>>2]+ +g[cb>>2];cb=Ya+(bb<<2)|0;g[cb>>2]=+g[cb>>2]+ +g[y>>2]*+g[11576+(Ua<<2)>>2];cb=Xa+3|0;if((cb|0)>=255)break a;Xa=cb;Ua=Ua+1|0;Za=c[o>>2]|0;_a=c[wa>>2]|0;$a=ab}}$a=1;do{g[f+($a<<2)>>2]=1.0;$a=$a+1|0}while(($a|0)!=1084);c[i>>2]=0;c[ga>>2]=0;c[ia>>2]=0;c[k>>2]=0;$a=3;_a=0;do{do if(+g[w+($a+-1<<2)>>2]+0.0+ +g[w+($a<<2)>>2]+ +g[w+($a+1<<2)>>2]>0.0){Za=c[ga>>2]|0;if((Za|0)==(c[va>>2]|0)){uh(i,k);break}else{c[Za>>2]=_a;c[ga>>2]=Za+4;break}}while(0);g[z>>2]=0.0;Za=c[o>>2]|0;if(Za>>>0<(c[wa>>2]|0)>>>0){c[Za>>2]=0;c[o>>2]=Za+4}else Md(p,z);_a=(c[k>>2]|0)+1|0;c[k>>2]=_a;$a=$a+3|0}while(($a|0)<255);$a=c[ga>>2]|0;_a=c[i>>2]|0;Za=$a-_a|0;Ua=Za<<6;Xa=_a;cb=az(Ua>>>0>1073741823?-1:Ua<<2)|0;Ua=Za>>2;if((Za|0)>0){Za=c[La>>2]|0;bb=$a-_a>>2;_a=0;do{$a=c[Xa+(_a<<2)>>2]<<8;db=_a<<8;eb=0;do{c[cb+(eb+db<<2)>>2]=c[Za+($a+eb<<2)>>2];eb=eb+1|0}while((eb|0)!=256);_a=_a+1|0}while((_a|0)<(bb|0));fb=bb}else fb=Ua;Mm(cb,256,256,fb,w,f,z,A,B,C,D)|0;cz(cb);bb=c[ga>>2]|0;_a=c[i>>2]|0;Za=_a;Xa=bb;if((bb-_a|0)>0){eb=c[Ka>>2]|0;$a=c[x>>2]|0;db=bb-_a>>2;bb=0;do{gb=f+(bb<<2)|0;hb=c[Za+(bb<<2)>>2]|0;c[eb+(hb<<2)>>2]=c[gb>>2];ib=(hb|0)%12|0;jb=$a+(ib<<2)|0;g[jb>>2]=+g[gb>>2]*+g[11240+(hb<<2)>>2]+ +g[jb>>2];jb=Ya+(ib<<2)|0;g[jb>>2]=+g[jb>>2]+ +g[gb>>2]*+g[11576+(hb<<2)>>2];bb=bb+1|0}while((bb|0)<(db|0))}db=_a;if(_a|0){if((Xa|0)!=(Za|0))c[ga>>2]=Xa+(~((Xa+-4-_a|0)>>>2)<<2);bz(db)}}else{db=0;bb=0;$a=0;while(1){g[f>>2]=0.0;if(bb>>>0<$a>>>0){c[bb>>2]=0;c[o>>2]=bb+4}else Md(p,f);eb=db+1|0;if((eb|0)>=84)break a;db=eb;bb=c[o>>2]|0;$a=c[wa>>2]|0}}while(0);Oh(da,c[x>>2]|0,c[ka>>2]|0);Oh(Ja,Ya,Wa);c[E>>2]=c[x>>2];c[G>>2]=Ya;c[J>>2]=Wa;c[k>>2]=c[E>>2];c[i>>2]=c[G>>2];c[f>>2]=c[J>>2];Ph(x,k,i,f)|0;Oh(Ia,c[x>>2]|0,c[ka>>2]|0);Ba=+g[Ha>>2];if(Ba>0.0){Ta=$y(12)|0;c[Ta>>2]=0;c[Ta+4>>2]=0;c[Ta+8>>2]=0;switch(~~Ba|0){case 3:{Va=c[da>>2]|0;$a=c[m>>2]|0;if((Va|0)==($a|0))kb=0.0;else{bb=Va;Ba=0.0;while(1){T=+g[bb>>2];Na=Ba+T*T;g[Ta>>2]=Na;bb=bb+4|0;if((bb|0)==($a|0)){kb=Na;break}else Ba=Na}}Ba=+H(+kb);g[Ta>>2]=Ba;$a=c[Ja>>2]|0;bb=c[X>>2]|0;Wa=Ta+4|0;if(($a|0)==(bb|0))lb=0.0;else{Va=$a;Na=0.0;while(1){T=+g[Va>>2];Ma=Na+T*T;g[Wa>>2]=Ma;Va=Va+4|0;if((Va|0)==(bb|0)){lb=Ma;break}else Na=Ma}}Na=+H(+lb);g[Wa>>2]=Na;bb=c[Ia>>2]|0;Va=c[Ga>>2]|0;$a=Ta+8|0;if((bb|0)==(Va|0))mb=0.0;else{db=bb;Ma=0.0;while(1){T=+g[db>>2];S=Ma+T*T;g[$a>>2]=S;db=db+4|0;if((db|0)==(Va|0)){mb=S;break}else Ma=S}}g[$a>>2]=+H(+mb);nb=Ba;ob=Na;pb=143;break}case 1:{Va=c[da>>2]|0;db=c[m>>2]|0;if((Va|0)!=(db|0)?(Wa=Va+4|0,(Wa|0)!=(db|0)):0){bb=Wa;Wa=Va;_a=Va;while(1){Xa=+g[_a>>2]<+g[bb>>2];Za=Xa?bb:Wa;_a=Xa?bb:_a;bb=bb+4|0;if((bb|0)==(db|0)){qb=Za;break}else Wa=Za}}else qb=Va;Wa=c[qb>>2]|0;c[Ta>>2]=Wa;db=c[Ja>>2]|0;bb=c[X>>2]|0;Na=(c[j>>2]=Wa,+g[j>>2]);if((db|0)!=(bb|0)?(Wa=db+4|0,(Wa|0)!=(bb|0)):0){_a=Wa;Wa=db;$a=db;while(1){Za=+g[$a>>2]<+g[_a>>2];Xa=Za?_a:Wa;$a=Za?_a:$a;_a=_a+4|0;if((_a|0)==(bb|0)){rb=Xa;break}else Wa=Xa}}else rb=db;Wa=c[rb>>2]|0;bb=Ta+4|0;c[bb>>2]=Wa;Ba=(c[j>>2]=Wa,+g[j>>2]);c[Ta+8>>2]=c[(Na<Ba?bb:Ta)>>2];nb=Na;ob=Ba;pb=143;break}case 2:{bb=c[da>>2]|0;Wa=c[m>>2]|0;if((bb|0)==(Wa|0))sb=0.0;else{_a=bb;Ba=0.0;while(1){Ma=+g[_a>>2]+Ba;g[Ta>>2]=Ma;_a=_a+4|0;if((_a|0)==(Wa|0)){sb=Ma;break}else Ba=Ma}}Wa=c[Ja>>2]|0;_a=c[X>>2]|0;if((Wa|0)==(_a|0))tb=0.0;else{db=Ta+4|0;bb=Wa;Ba=0.0;while(1){Na=+g[bb>>2]+Ba;g[db>>2]=Na;bb=bb+4|0;if((bb|0)==(_a|0)){tb=Na;break}else Ba=Na}}_a=c[Ia>>2]|0;bb=c[Ga>>2]|0;if((_a|0)==(bb|0)){nb=sb;ob=tb;pb=143}else{db=Ta+8|0;Wa=_a;Ba=0.0;do{Ba=+g[Wa>>2]+Ba;g[db>>2]=Ba;Wa=Wa+4|0}while((Wa|0)!=(bb|0));nb=sb;ob=tb;pb=143}break}default:{}}if((pb|0)==143){pb=0;if(nb>0.0?(bb=c[m>>2]|0,Wa=c[da>>2]|0,db=Wa,(bb-Wa|0)>0):0){_a=bb-Wa|0;Wa=_a>>2;g[db>>2]=+g[db>>2]/nb;if((_a|0)>4){_a=1;do{bb=db+(_a<<2)|0;g[bb>>2]=+g[bb>>2]/+g[Ta>>2];_a=_a+1|0}while((_a|0)<(Wa|0))}ub=+g[Ta+4>>2]}else ub=ob;Wa=Ta+4|0;if(ub>0.0?(_a=c[X>>2]|0,db=c[Ja>>2]|0,bb=db,(_a-db|0)>0):0){$a=_a-db>>2;db=0;do{_a=bb+(db<<2)|0;g[_a>>2]=+g[_a>>2]/+g[Wa>>2];db=db+1|0}while((db|0)<($a|0))}}$a=Ta+8|0;Ba=+g[$a>>2];if((Ba>0.0?(db=c[Ga>>2]|0,Wa=c[Ia>>2]|0,bb=Wa,(db-Wa|0)>0):0)?(_a=db-Wa|0,Wa=_a>>2,g[bb>>2]=+g[bb>>2]/Ba,(_a|0)>4):0){_a=1;do{db=bb+(_a<<2)|0;g[db>>2]=+g[db>>2]/+g[$a>>2];_a=_a+1|0}while((_a|0)<(Wa|0))}bz(Ta)}Wa=Nh(b,xa)|0;_a=Wa+4|0;$a=c[_a>>2]|0;if(($a|0)==(c[Wa+8>>2]|0))Bh(Wa,q);else{a[$a>>0]=a[q>>0]|0;c[$a+4>>2]=c[oa>>2];c[$a+8>>2]=c[ra>>2];a[$a+12>>0]=a[ha>>0]|0;c[$a+16>>2]=c[ya>>2];c[$a+20>>2]=c[Ra>>2];Kd($a+24|0,p);kz($a+36|0,Aa);c[_a>>2]=(c[_a>>2]|0)+48}_a=Nh(b,ea)|0;$a=_a+4|0;Wa=c[$a>>2]|0;if((Wa|0)==(c[_a+8>>2]|0))Bh(_a,t);else{a[Wa>>0]=a[t>>0]|0;c[Wa+4>>2]=c[ba>>2];c[Wa+8>>2]=c[sa>>2];a[Wa+12>>0]=a[aa>>0]|0;c[Wa+16>>2]=c[$>>2];c[Wa+20>>2]=c[Qa>>2];Kd(Wa+24|0,da);kz(Wa+36|0,Da);c[$a>>2]=(c[$a>>2]|0)+48}$a=Nh(b,M)|0;Wa=$a+4|0;_a=c[Wa>>2]|0;if((_a|0)==(c[$a+8>>2]|0))Bh($a,u);else{a[_a>>0]=a[u>>0]|0;c[_a+4>>2]=c[_>>2];c[_a+8>>2]=c[Z>>2];a[_a+12>>0]=a[na>>0]|0;c[_a+16>>2]=c[ma>>2];c[_a+20>>2]=c[Pa>>2];Kd(_a+24|0,Ja);kz(_a+36|0,V);c[Wa>>2]=(c[Wa>>2]|0)+48}Wa=Nh(b,K)|0;_a=Wa+4|0;$a=c[_a>>2]|0;if(($a|0)==(c[Wa+8>>2]|0))Bh(Wa,v);else{a[$a>>0]=a[v>>0]|0;c[$a+4>>2]=c[ta>>2];c[$a+8>>2]=c[r>>2];a[$a+12>>0]=a[ua>>0]|0;c[$a+16>>2]=c[s>>2];c[$a+20>>2]=c[Oa>>2];Kd($a+24|0,Ia);kz($a+36|0,d);c[_a>>2]=(c[_a>>2]|0)+48}bz(Ya);_a=c[x>>2]|0;$a=_a;if(_a|0){Wa=c[ka>>2]|0;if((Wa|0)!=(_a|0))c[ka>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}oz(d);_a=c[W>>2]|0;$a=_a;if(_a|0){Wa=c[Ga>>2]|0;if((Wa|0)!=(_a|0))c[Ga>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}oz(V);_a=c[U>>2]|0;$a=_a;if(_a|0){Wa=c[X>>2]|0;if((Wa|0)!=(_a|0))c[X>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}oz(Da);_a=c[Fa>>2]|0;$a=_a;if(_a|0){Wa=c[m>>2]|0;if((Wa|0)!=(_a|0))c[m>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}oz(Aa);_a=c[Ka>>2]|0;$a=_a;if(_a|0){Wa=c[o>>2]|0;if((Wa|0)!=(_a|0))c[o>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}oz(pa);_a=c[Ea>>2]|0;$a=_a;if(_a|0){Wa=c[O>>2]|0;if((Wa|0)!=(_a|0))c[O>>2]=Wa+(~((Wa+-4-$a|0)>>>2)<<2);bz(_a)}Sa=Sa+48|0}l=e;return}function Nh(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=l;l=l+16|0;e=d;f=a+4|0;g=c[f>>2]|0;do if(g){h=c[b>>2]|0;i=g;while(1){j=c[i+16>>2]|0;if((h|0)<(j|0)){k=c[i>>2]|0;if(!k){m=5;break}else n=k}else{if((j|0)>=(h|0)){m=10;break}o=i+4|0;j=c[o>>2]|0;if(!j){m=9;break}else n=j}i=n}if((m|0)==5){c[e>>2]=i;p=i;q=i;break}else if((m|0)==9){c[e>>2]=i;p=i;q=o;break}else if((m|0)==10){c[e>>2]=i;p=i;q=e;break}}else{c[e>>2]=f;p=f;q=f}while(0);f=c[q>>2]|0;if(f|0){r=f;s=r+20|0;l=d;return s|0}f=$y(32)|0;c[f+16>>2]=c[b>>2];c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=p;c[q>>2]=f;p=c[c[a>>2]>>2]|0;if(!p)t=f;else{c[a>>2]=p;t=c[q>>2]|0}ic(c[a+4>>2]|0,t);t=a+8|0;c[t>>2]=(c[t>>2]|0)+1;r=f;s=r+20|0;l=d;return s|0}function Oh(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;e=d;f=b;g=e-f|0;h=g>>2;i=a+8|0;j=c[i>>2]|0;k=c[a>>2]|0;l=k;if(h>>>0<=j-k>>2>>>0){m=a+4|0;n=(c[m>>2]|0)-k>>2;o=h>>>0>n>>>0;p=o?b+(n<<2)|0:d;d=p;n=d-f|0;f=n>>2;if(f|0)rB(k|0,b|0,n|0)|0;n=l+(f<<2)|0;if(o){o=e-d|0;if((o|0)<=0)return;jB(c[m>>2]|0,p|0,o|0)|0;c[m>>2]=(c[m>>2]|0)+(o>>2<<2);return}else{o=c[m>>2]|0;if((o|0)==(n|0))return;c[m>>2]=o+(~((o+-4-n|0)>>>2)<<2);return}}n=k;if(!k)q=j;else{j=a+4|0;o=c[j>>2]|0;if((o|0)!=(l|0))c[j>>2]=o+(~((o+-4-k|0)>>>2)<<2);bz(n);c[i>>2]=0;c[j>>2]=0;c[a>>2]=0;q=0}if(h>>>0>1073741823)Vx(a);j=q-0|0;q=j>>1;n=j>>2>>>0<536870911?(q>>>0<h>>>0?h:q):1073741823;if(n>>>0>1073741823)Vx(a);q=$y(n<<2)|0;j=a+4|0;c[j>>2]=q;c[a>>2]=q;c[i>>2]=q+(n<<2);if((g|0)<=0)return;jB(q|0,b|0,g|0)|0;c[j>>2]=q+(h<<2);return}function Ph(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;f=c[a>>2]|0;g=f;h=(c[b>>2]|0)-g>>2;b=f+(h<<2)|0;i=c[d>>2]|0;j=c[e>>2]|0;e=j-i|0;k=e>>2;l=i;m=j;if((e|0)<=0){n=b;return n|0}e=a+8|0;o=c[e>>2]|0;p=a+4|0;q=c[p>>2]|0;r=q;if((k|0)<=(o-r>>2|0)){s=r-b|0;t=s>>2;if((k|0)>(t|0)){u=l+(t<<2)|0;t=u;if((u|0)==(m|0))v=q;else{w=((m+-4-t|0)>>>2)+1|0;x=u;u=q;while(1){c[u>>2]=c[x>>2];x=x+4|0;if((x|0)==(m|0))break;else u=u+4|0}u=q+(w<<2)|0;c[p>>2]=u;v=u}if((s|0)>0){y=t;z=v}else{n=b;return n|0}}else{y=j;z=q}j=z-(b+(k<<2))|0;v=j>>2;t=b+(v<<2)|0;if(t>>>0<q>>>0){s=((q+(0-v-h<<2)+~g|0)>>>2)+1|0;h=t;t=z;while(1){c[t>>2]=c[h>>2];h=h+4|0;if(h>>>0>=q>>>0)break;else t=t+4|0}c[p>>2]=z+(s<<2)}if(!v)A=l;else{rB(z+(0-v<<2)|0,b|0,j|0)|0;A=c[d>>2]|0}d=y-A|0;if(!d){n=b;return n|0}rB(b|0,A|0,d|0)|0;n=b;return n|0}d=(r-g>>2)+k|0;if(d>>>0>1073741823)Vx(a);k=o-g|0;o=k>>1;r=k>>2>>>0<536870911?(o>>>0<d>>>0?d:o):1073741823;o=b;d=o-g>>2;do if(r)if(r>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{B=$y(r<<2)|0;break}else B=0;while(0);g=B+(d<<2)|0;k=B+(r<<2)|0;if((l|0)==(m|0))C=g;else{r=d+((m+-4+(0-i)|0)>>>2)+1|0;i=l;l=g;while(1){c[l>>2]=c[i>>2];i=i+4|0;if((i|0)==(m|0))break;else l=l+4|0}C=B+(r<<2)|0}r=o-f|0;B=g+(0-(r>>2)<<2)|0;if((r|0)>0)jB(B|0,f|0,r|0)|0;r=(c[p>>2]|0)-o|0;if((r|0)>0){jB(C|0,b|0,r|0)|0;D=C+(r>>2<<2)|0}else D=C;c[a>>2]=B;c[p>>2]=D;c[e>>2]=k;if(!f){n=g;return n|0}bz(f);n=g;return n|0}function Qh(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;if(!b)return;Qh(a,c[b>>2]|0);Qh(a,c[b+4>>2]|0);a=b+20|0;d=c[a>>2]|0;if(d|0){e=b+24|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{c[e>>2]=h+-48;oz(h+-12|0);f=c[h+-24>>2]|0;i=f;if(f|0){j=h+-20|0;k=c[j>>2]|0;if((k|0)!=(f|0))c[j>>2]=k+(~((k+-4-i|0)>>>2)<<2);bz(f)}h=c[e>>2]|0}while((h|0)!=(d|0));g=c[a>>2]|0}bz(g)}bz(b);return}function Rh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;kz(b,d);kz(b+12|0,d+12|0);kz(b+24|0,d+24|0);kz(b+36|0,d+36|0);e=d+48|0;f=c[e+4>>2]|0;g=b+48|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;od(b+56|0,d+56|0);f=b+68|0;b=d+68|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];a[f+28>>0]=a[b+28>>0]|0;return}function Sh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=l;l=l+32|0;f=e;g=b+4|0;h=c[g>>2]|0;i=c[b>>2]|0;j=((h-i|0)/100|0)+1|0;if(j>>>0>42949672)Vx(b);k=b+8|0;m=((c[k>>2]|0)-i|0)/100|0;n=m<<1;o=m>>>0<21474836?(n>>>0<j>>>0?j:n):42949672;n=(h-i|0)/100|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(o)if(o>>>0>42949672){i=Ea(4)|0;ZA(i);_a(i|0,6864,245)}else{p=$y(o*100|0)|0;break}else p=0;while(0);c[f>>2]=p;i=p+(n*100|0)|0;n=f+8|0;c[n>>2]=i;h=f+4|0;c[h>>2]=i;j=f+12|0;c[j>>2]=p+(o*100|0);Rh(i,d);c[n>>2]=(c[n>>2]|0)+100;d=c[b>>2]|0;i=c[g>>2]|0;if((i|0)==(d|0)){q=h;r=c[h>>2]|0;s=d;t=i;c[b>>2]=r;c[q>>2]=s;u=c[n>>2]|0;c[g>>2]=u;c[n>>2]=t;v=c[k>>2]|0;w=c[j>>2]|0;c[k>>2]=w;c[j>>2]=v;x=c[q>>2]|0;c[f>>2]=x;Uh(f);l=e;return}o=i;i=c[h>>2]|0;do{p=i+-100|0;m=o;o=o+-100|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;p=i+-88|0;y=m+-88|0;c[p>>2]=c[y>>2];c[p+4>>2]=c[y+4>>2];c[p+8>>2]=c[y+8>>2];c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;y=i+-76|0;p=m+-76|0;c[y>>2]=c[p>>2];c[y+4>>2]=c[p+4>>2];c[y+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;p=i+-64|0;y=m+-64|0;c[p>>2]=c[y>>2];c[p+4>>2]=c[y+4>>2];c[p+8>>2]=c[y+8>>2];c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;y=m+-52|0;p=c[y+4>>2]|0;z=i+-52|0;c[z>>2]=c[y>>2];c[z+4>>2]=p;p=i+-44|0;z=m+-44|0;c[p>>2]=0;y=i+-40|0;c[y>>2]=0;c[i+-36>>2]=0;c[p>>2]=c[z>>2];p=m+-40|0;c[y>>2]=c[p>>2];y=m+-36|0;c[i+-36>>2]=c[y>>2];c[y>>2]=0;c[p>>2]=0;c[z>>2]=0;z=i+-32|0;p=m+-32|0;c[z>>2]=c[p>>2];c[z+4>>2]=c[p+4>>2];c[z+8>>2]=c[p+8>>2];c[z+12>>2]=c[p+12>>2];c[z+16>>2]=c[p+16>>2];c[z+20>>2]=c[p+20>>2];c[z+24>>2]=c[p+24>>2];a[z+28>>0]=a[p+28>>0]|0;i=(c[h>>2]|0)+-100|0;c[h>>2]=i}while((o|0)!=(d|0));q=h;r=i;s=c[b>>2]|0;t=c[g>>2]|0;c[b>>2]=r;c[q>>2]=s;u=c[n>>2]|0;c[g>>2]=u;c[n>>2]=t;v=c[k>>2]|0;w=c[j>>2]|0;c[k>>2]=w;c[j>>2]=v;x=c[q>>2]|0;c[f>>2]=x;Uh(f);l=e;return}function Th(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;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-64|0);oz(g+-76|0);oz(g+-88|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);return}function Uh(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;b=c[a+4>>2]|0;d=a+8|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{e=f+-100|0;c[d>>2]=e;g=f+-44|0;h=c[g>>2]|0;if(h|0){i=f+-40|0;j=c[i>>2]|0;if((j|0)==(h|0))k=h;else{l=j;do{j=l+-12|0;c[i>>2]=j;oz(j);l=c[i>>2]|0}while((l|0)!=(h|0));k=c[g>>2]|0}bz(k)}oz(f+-64|0);oz(f+-76|0);oz(f+-88|0);oz(e);f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a>>2]|0;if(!b)return;bz(b);return}function Vh(a,b){a=a|0;b=+b;zh(a,b);c[a>>2]=10928;return}function Wh(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;c[a>>2]=11136;b=a+224|0;d=c[b>>2]|0;if(d|0){e=a+228|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;oz(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}bz(g)}g=a+212|0;b=c[g>>2]|0;if(b|0){d=a+216|0;h=c[d>>2]|0;if((h|0)==(b|0))i=b;else{e=h;while(1){h=e+-12|0;c[d>>2]=h;f=c[h>>2]|0;j=f;if(!f)k=h;else{h=e+-8|0;l=c[h>>2]|0;if((l|0)!=(f|0))c[h>>2]=l+(~((l+-4-j|0)>>>2)<<2);bz(f);k=c[d>>2]|0}if((k|0)==(b|0))break;else e=k}i=c[g>>2]|0}bz(i)}i=c[a+200>>2]|0;if(!i){ah(a);return}g=a+204|0;k=c[g>>2]|0;if((k|0)!=(i|0))c[g>>2]=k+(~((k+-4-i|0)>>>2)<<2);bz(i);ah(a);return}function Xh(a){a=a|0;Wh(a);bz(a);return}function Yh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,30426,8);return}function Zh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,30417,8);return}function _h(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,30079,337);return}function $h(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;d=l;l=l+576|0;e=d+496|0;f=d+416|0;h=d+336|0;i=d+256|0;j=d+176|0;k=d+96|0;m=d+16|0;n=d;c[b>>2]=0;o=b+4|0;c[o>>2]=0;c[b+8>>2]=0;p=e+64|0;q=e;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[e+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;tz(e,29392)|0;s=e+12|0;tz(s,29400)|0;t=e+24|0;tz(t,29437)|0;u=e+36|0;tz(u,47807)|0;g[e+48>>2]=0.0;g[e+52>>2]=1.0;g[e+56>>2]=1.0;a[e+60>>0]=1;g[p>>2]=1.0;p=c[o>>2]|0;v=b+8|0;if((p|0)==(c[v>>2]|0))wh(b,e);else{vh(p,e);c[o>>2]=(c[o>>2]|0)+80}p=f+64|0;q=f;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[f+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;tz(f,30726)|0;w=f+12|0;tz(w,30733)|0;x=f+24|0;tz(x,30754)|0;y=f+36|0;tz(y,31017)|0;g[f+48>>2]=0.0;g[f+52>>2]=5.0;g[f+56>>2]=0.0;a[f+60>>0]=1;g[p>>2]=.5;p=c[o>>2]|0;if((p|0)==(c[v>>2]|0))wh(b,f);else{vh(p,f);c[o>>2]=(c[o>>2]|0)+80}p=h+64|0;q=h;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[h+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;tz(h,29479)|0;z=h+12|0;tz(z,29490)|0;A=h+24|0;tz(A,29502)|0;B=h+36|0;tz(B,47807)|0;g[h+48>>2]=0.0;g[h+52>>2]=1.0;g[h+56>>2]=0.0;a[h+60>>0]=1;C=h+68|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,29704,13);D=h+72|0;E=c[D>>2]|0;F=h+76|0;if(E>>>0<(c[F>>2]|0)>>>0){c[E>>2]=c[i>>2];c[E+4>>2]=c[i+4>>2];c[E+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=(c[D>>2]|0)+12}else Ae(C,i);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,29718,12);E=c[D>>2]|0;if(E>>>0<(c[F>>2]|0)>>>0){c[E>>2]=c[i>>2];c[E+4>>2]=c[i+4>>2];c[E+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=(c[D>>2]|0)+12}else Ae(C,i);oz(i);g[p>>2]=1.0;p=c[o>>2]|0;if((p|0)==(c[v>>2]|0))wh(b,h);else{vh(p,h);c[o>>2]=(c[o>>2]|0)+80}p=i+64|0;q=i;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[i+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;tz(i,29731)|0;p=i+12|0;tz(p,29741)|0;C=i+24|0;tz(C,29760)|0;E=i+36|0;tz(E,47807)|0;g[i+48>>2]=0.0;g[i+52>>2]=1.0;g[i+56>>2]=1.0;a[i+60>>0]=0;F=c[o>>2]|0;if((F|0)==(c[v>>2]|0))wh(b,i);else{vh(F,i);c[o>>2]=(c[o>>2]|0)+80}F=j+64|0;q=j;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[j+60>>0]=0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;tz(j,29813)|0;F=j+12|0;tz(F,29815)|0;G=j+24|0;tz(G,29830)|0;H=j+36|0;tz(H,47807)|0;g[j+48>>2]=.5;g[j+52>>2]=.8999999761581421;g[j+56>>2]=.699999988079071;a[j+60>>0]=0;I=c[o>>2]|0;if((I|0)==(c[v>>2]|0))wh(b,j);else{vh(I,j);c[o>>2]=(c[o>>2]|0)+80}I=k+64|0;q=k;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[k+60>>0]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;tz(k,29942)|0;I=k+12|0;tz(I,29949)|0;J=k+24|0;tz(J,29957)|0;K=k+36|0;tz(K,47807)|0;g[k+48>>2]=0.0;g[k+52>>2]=1.0;g[k+56>>2]=.10000000149011612;a[k+60>>0]=0;L=c[o>>2]|0;if((L|0)==(c[v>>2]|0))wh(b,k);else{vh(L,k);c[o>>2]=(c[o>>2]|0)+80}L=m+64|0;q=m;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[m+60>>0]=0;c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;c[L+12>>2]=0;tz(m,30001)|0;q=m+12|0;tz(q,30016)|0;r=m+24|0;tz(r,30033)|0;M=m+36|0;tz(M,47807)|0;g[m+48>>2]=0.0;g[m+52>>2]=1.0;g[m+56>>2]=0.0;a[m+60>>0]=1;g[L>>2]=1.0;L=m+68|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,30072,2);N=m+72|0;O=c[N>>2]|0;P=m+76|0;if(O>>>0<(c[P>>2]|0)>>>0){c[O>>2]=c[n>>2];c[O+4>>2]=c[n+4>>2];c[O+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[N>>2]=(c[N>>2]|0)+12}else Ae(L,n);oz(n);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,30075,3);O=c[N>>2]|0;if(O>>>0<(c[P>>2]|0)>>>0){c[O>>2]=c[n>>2];c[O+4>>2]=c[n+4>>2];c[O+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[N>>2]=(c[N>>2]|0)+12}else Ae(L,n);oz(n);n=c[o>>2]|0;if((n|0)==(c[v>>2]|0))wh(b,m);else{vh(n,m);c[o>>2]=(c[o>>2]|0)+80}o=m+68|0;n=c[o>>2]|0;if(n|0){b=c[N>>2]|0;if((b|0)==(n|0))Q=n;else{v=b;do{b=v+-12|0;c[N>>2]=b;oz(b);v=c[N>>2]|0}while((v|0)!=(n|0));Q=c[o>>2]|0}bz(Q)}oz(M);oz(r);oz(q);oz(m);m=k+68|0;q=c[m>>2]|0;if(q|0){r=k+72|0;M=c[r>>2]|0;if((M|0)==(q|0))R=q;else{Q=M;do{M=Q+-12|0;c[r>>2]=M;oz(M);Q=c[r>>2]|0}while((Q|0)!=(q|0));R=c[m>>2]|0}bz(R)}oz(K);oz(J);oz(I);oz(k);k=j+68|0;I=c[k>>2]|0;if(I|0){J=j+72|0;K=c[J>>2]|0;if((K|0)==(I|0))S=I;else{R=K;do{K=R+-12|0;c[J>>2]=K;oz(K);R=c[J>>2]|0}while((R|0)!=(I|0));S=c[k>>2]|0}bz(S)}oz(H);oz(G);oz(F);oz(j);j=i+68|0;F=c[j>>2]|0;if(F|0){G=i+72|0;H=c[G>>2]|0;if((H|0)==(F|0))T=F;else{S=H;do{H=S+-12|0;c[G>>2]=H;oz(H);S=c[G>>2]|0}while((S|0)!=(F|0));T=c[j>>2]|0}bz(T)}oz(E);oz(C);oz(p);oz(i);i=h+68|0;p=c[i>>2]|0;if(p|0){C=c[D>>2]|0;if((C|0)==(p|0))U=p;else{E=C;do{C=E+-12|0;c[D>>2]=C;oz(C);E=c[D>>2]|0}while((E|0)!=(p|0));U=c[i>>2]|0}bz(U)}oz(B);oz(A);oz(z);oz(h);h=f+68|0;z=c[h>>2]|0;if(z|0){A=f+72|0;B=c[A>>2]|0;if((B|0)==(z|0))V=z;else{U=B;do{B=U+-12|0;c[A>>2]=B;oz(B);U=c[A>>2]|0}while((U|0)!=(z|0));V=c[h>>2]|0}bz(V)}oz(y);oz(x);oz(w);oz(f);f=e+68|0;w=c[f>>2]|0;if(!w){oz(u);oz(t);oz(s);oz(e);l=d;return}x=e+72|0;y=c[x>>2]|0;if((y|0)==(w|0))W=w;else{V=y;do{y=V+-12|0;c[x>>2]=y;oz(y);V=c[x>>2]|0}while((V|0)!=(w|0));W=c[f>>2]|0}bz(W);oz(u);oz(t);oz(s);oz(e);l=d;return}function ai(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;h=f;if(!(nh(a,b,d,e)|0)){i=0;l=f;return i|0}e=a+224|0;ze(h,a+200|0,a+212|0,+g[a+136>>2],+g[a+144>>2]);d=c[e>>2]|0;if(!d){j=a+228|0;k=a+232|0}else{b=a+228|0;m=c[b>>2]|0;if((m|0)==(d|0))n=d;else{o=m;do{m=o+-12|0;c[b>>2]=m;oz(m);o=c[b>>2]|0}while((o|0)!=(d|0));n=c[e>>2]|0}bz(n);n=a+232|0;c[n>>2]=0;c[b>>2]=0;c[e>>2]=0;j=b;k=n}c[e>>2]=c[h>>2];c[j>>2]=c[h+4>>2];c[k>>2]=c[h+8>>2];i=1;l=f;return i|0}function bi(a){a=a|0;oh(a);return}function ci(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;e=l;l=l+400|0;f=e+300|0;h=e+200|0;i=e+100|0;j=e;c[b>>2]=0;k=b+4|0;c[k>>2]=0;c[b+8>>2]=0;m=c[d+28>>2]|0;n=+g[d+4>>2];if(!m)o=n*.00048828125;else o=n/+(m>>>0);m=f+52|0;g[f+72>>2]=0.0;g[f+76>>2]=0.0;p=f+80|0;a[p>>0]=0;q=f+84|0;r=f;s=r+48|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));a[f+48>>0]=0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;a[m+16>>0]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;a[q+12>>0]=0;tz(f,28815)|0;q=f+12|0;tz(q,28827)|0;t=f+24|0;tz(t,28842)|0;u=f+36|0;tz(u,47807)|0;a[f+48>>0]=1;c[m>>2]=0;a[f+68>>0]=0;a[p>>0]=0;c[f+88>>2]=2;a[f+96>>0]=0;g[f+92>>2]=o;p=c[k>>2]|0;m=b+8|0;if((p|0)==(c[m>>2]|0))Sh(b,f);else{Rh(p,f);c[k>>2]=(c[k>>2]|0)+100}c[d+184>>2]=0;p=h+52|0;v=h+72|0;g[v>>2]=0.0;w=h+76|0;g[w>>2]=0.0;x=h+80|0;a[x>>0]=0;y=h+84|0;r=h;s=r+48|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));a[h+48>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;a[p+16>>0]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;a[y+12>>0]=0;tz(h,28876)|0;z=h+12|0;tz(z,28887)|0;A=h+24|0;tz(A,28925)|0;B=h+36|0;tz(B,29020)|0;a[h+48>>0]=1;c[p>>2]=1;a[h+68>>0]=1;g[v>>2]=0.0;g[w>>2]=127.0;a[x>>0]=1;g[y>>2]=1.0;c[h+88>>2]=2;a[h+96>>0]=1;g[h+92>>2]=o;y=c[k>>2]|0;if((y|0)==(c[m>>2]|0))Sh(b,h);else{Rh(y,h);c[k>>2]=(c[k>>2]|0)+100}c[d+188>>2]=1;y=i+52|0;g[i+72>>2]=0.0;g[i+76>>2]=0.0;x=i+80|0;a[x>>0]=0;w=i+84|0;r=i;s=r+48|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));a[i+48>>0]=0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;a[y+16>>0]=0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;a[w+12>>0]=0;tz(i,29031)|0;w=i+12|0;tz(w,29046)|0;v=i+24|0;tz(v,29068)|0;p=i+36|0;tz(p,47807)|0;a[i+48>>0]=1;c[y>>2]=1;a[i+68>>0]=0;a[x>>0]=0;c[i+88>>2]=1;g[i+92>>2]=o;a[i+96>>0]=0;x=c[k>>2]|0;if((x|0)==(c[m>>2]|0))Sh(b,i);else{Rh(x,i);c[k>>2]=(c[k>>2]|0)+100}c[d+192>>2]=2;x=j+52|0;g[j+72>>2]=0.0;g[j+76>>2]=0.0;y=j+80|0;a[y>>0]=0;C=j+84|0;r=j;s=r+48|0;do{c[r>>2]=0;r=r+4|0}while((r|0)<(s|0));a[j+48>>0]=0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;a[x+16>>0]=0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;a[C+12>>0]=0;tz(j,29281)|0;C=j+12|0;tz(C,29295)|0;r=j+24|0;tz(r,29328)|0;s=j+36|0;tz(s,47807)|0;a[j+48>>0]=1;c[x>>2]=1;a[j+68>>0]=0;a[y>>0]=0;c[j+88>>2]=1;g[j+92>>2]=o;a[j+96>>0]=0;y=c[k>>2]|0;if((y|0)==(c[m>>2]|0))Sh(b,j);else{Rh(y,j);c[k>>2]=(c[k>>2]|0)+100}c[d+196>>2]=3;d=j+56|0;k=c[d>>2]|0;if(k|0){y=j+60|0;b=c[y>>2]|0;if((b|0)==(k|0))D=k;else{m=b;do{b=m+-12|0;c[y>>2]=b;oz(b);m=c[y>>2]|0}while((m|0)!=(k|0));D=c[d>>2]|0}bz(D)}oz(s);oz(r);oz(C);oz(j);j=i+56|0;C=c[j>>2]|0;if(C|0){r=i+60|0;s=c[r>>2]|0;if((s|0)==(C|0))E=C;else{D=s;do{s=D+-12|0;c[r>>2]=s;oz(s);D=c[r>>2]|0}while((D|0)!=(C|0));E=c[j>>2]|0}bz(E)}oz(p);oz(v);oz(w);oz(i);i=h+56|0;w=c[i>>2]|0;if(w|0){v=h+60|0;p=c[v>>2]|0;if((p|0)==(w|0))F=w;else{E=p;do{p=E+-12|0;c[v>>2]=p;oz(p);E=c[v>>2]|0}while((E|0)!=(w|0));F=c[i>>2]|0}bz(F)}oz(B);oz(A);oz(z);oz(h);h=f+56|0;z=c[h>>2]|0;if(!z){oz(u);oz(t);oz(q);oz(f);l=e;return}A=f+60|0;B=c[A>>2]|0;if((B|0)==(z|0))G=z;else{F=B;do{B=F+-12|0;c[A>>2]=B;oz(B);F=c[A>>2]|0}while((F|0)!=(z|0));G=c[h>>2]|0}bz(G);oz(u);oz(t);oz(q);oz(f);l=e;return}function di(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;g=f;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Ah(b,d,g);c[a+4>>2]=0;c[a+8>>2]=0;c[a>>2]=a+4;l=f;return}function ei(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0,S=0,U=0,V=0,W=0,X=0.0,Y=0.0,Z=0.0,_=0.0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0.0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0.0,fb=0.0,gb=0,hb=0,ib=0.0,jb=0.0,kb=0,lb=0,mb=0.0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Cb=0,Db=0;e=l;l=l+18880|0;f=e+96|0;i=e+18776|0;k=e+48|0;m=e+18748|0;n=e+18724|0;o=e+18688|0;p=e+18760|0;q=e+18736|0;r=e+18676|0;s=e+18712|0;t=e+18700|0;u=e+18652|0;v=e+18592|0;w=e;x=e+17544|0;y=e+17496|0;z=e+17448|0;A=e+13112|0;B=e+8776|0;C=e+4440|0;D=e+4432|0;E=e+18672|0;G=e+18668|0;J=e+18664|0;K=e+18640|0;L=e+18580|0;M=e+18568|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;N=d+12|0;O=d+16|0;if((c[O>>2]|0)==(c[N>>2]|0)){l=e;return}Q=d+224|0;S=(c[d+228>>2]|0)-(c[Q>>2]|0)|0;U=c[d+36>>2]|0;V=c[d+172>>2]|0;W=c[d+160>>2]|0;X=+g[U>>2];Y=+g[U+4>>2];Z=+g[U+8>>2];U=(S|0)/12|0;_=+P(+(X*+g[W>>2]+0.0+Y*+g[W+4>>2]+Z*+g[W+8>>2]),+(X*+g[V>>2]+0.0+Y*+g[V+4>>2]+Z*+g[V+8>>2]));Z=_/6.283185307179586*3.0;V=~~+F(+Z);h[f>>3]=+Xm(_/75.39822368615503)*440.0;ln(e+18824|0,28647,f)|0;c[m>>2]=0;W=m+4|0;c[W>>2]=0;c[m+8>>2]=0;$=c[O>>2]|0;aa=c[N>>2]|0;N=$-aa|0;ba=(N|0)/48|0;c[n>>2]=0;ca=n+4|0;c[ca>>2]=0;c[n+8>>2]=0;da=aa;if((da|0)==($|0)){ea=0;fa=0}else{$=i+4|0;aa=i+8|0;ga=i+12|0;ha=i+16|0;ia=i+20|0;ja=i+24|0;ka=i+36|0;la=k+4|0;ma=k+8|0;na=k+12|0;oa=k+16|0;pa=i+4|0;qa=n+8|0;ra=k+24|0;sa=k+28|0;ta=k+32|0;ua=d+124|0;va=i+28|0;wa=d+148|0;xa=r+4|0;ya=r+8|0;za=r+8|0;Aa=f+4|0;Ba=f+8|0;Ca=d+60|0;Da=m+8|0;Ea=k+36|0;Fa=k+24|0;Ga=i+24|0;Ha=o+4|0;Ia=k+20|0;Ja=s+4|0;Ka=t+4|0;La=p+4|0;Ma=q+4|0;Na=d+72|0;Oa=V;Pa=0;_=Z-+(V|0);V=da;while(1){a[i>>0]=a[V>>0]|0;c[$>>2]=c[V+4>>2];c[aa>>2]=c[V+8>>2];a[ga>>0]=a[V+12>>0]|0;c[ha>>2]=c[V+16>>2];c[ia>>2]=c[V+20>>2];Kd(ja,V+24|0);kz(ka,V+36|0);a[na>>0]=0;c[oa>>2]=0;c[oa+4>>2]=0;c[oa+8>>2]=0;c[oa+12>>2]=0;c[oa+16>>2]=0;c[oa+20>>2]=0;c[oa+24>>2]=0;c[oa+28>>2]=0;a[k>>0]=1;da=c[pa>>2]|0;c[la>>2]=da;Qa=c[aa>>2]|0;c[ma>>2]=Qa;Ra=c[ca>>2]|0;if((Ra|0)==(c[qa>>2]|0)){gi(n,pa);Sa=c[sa>>2]|0;Ta=c[ta>>2]|0;g[f>>2]=0.0;if(Sa>>>0<Ta>>>0){c[Sa>>2]=0;Ua=Sa+4|0;c[sa>>2]=Ua;Va=Ua;Wa=Ta}else Xa=10}else{c[Ra>>2]=da;c[Ra+4>>2]=Qa;c[ca>>2]=Ra+8;g[f>>2]=0.0;Xa=10}if((Xa|0)==10){Xa=0;Md(ra,f);Va=c[sa>>2]|0;Wa=c[ta>>2]|0}g[f>>2]=0.0;if(Va>>>0<Wa>>>0){c[Va>>2]=0;c[sa>>2]=Va+4}else Md(ra,f);if(!(a[ua>>0]|0)){Ya=Oa;Za=_}else{Z=+g[(c[Na>>2]|0)+(Pa<<2)>>2]*3.0;Ra=~~+F(+Z);Ya=Ra;Za=Z-+(Ra|0)}Ra=c[va>>2]|0;Qa=c[ja>>2]|0;if(((Ra-Qa>>2)+-3|0)>2){Z=1.0-Za;da=2;Ta=Ra;Ra=Qa;while(1){Qa=Ra;Ua=da+Ya|0;Y=Z*+g[Qa+(Ua<<2)>>2]+Za*+g[Qa+(Ua+1<<2)>>2];g[f>>2]=Y;Ua=c[sa>>2]|0;if((Ua|0)==(c[ta>>2]|0)){xe(ra,f);_a=c[ja>>2]|0;$a=c[va>>2]|0}else{g[Ua>>2]=Y;c[sa>>2]=Ua+4;_a=Ra;$a=Ta}da=da+1|0;if((da|0)>=(($a-_a>>2)+-3|0))break;else{Ta=$a;Ra=_a}}}g[f>>2]=0.0;Ra=c[sa>>2]|0;Ta=c[ta>>2]|0;if(Ra>>>0<Ta>>>0){c[Ra>>2]=0;da=Ra+4|0;c[sa>>2]=da;ab=da;bb=Ta}else{Md(ra,f);ab=c[sa>>2]|0;bb=c[ta>>2]|0}g[f>>2]=0.0;if(ab>>>0<bb>>>0){c[ab>>2]=0;Ta=ab+4|0;c[sa>>2]=Ta;cb=Ta;db=bb}else{Md(ra,f);cb=c[sa>>2]|0;db=c[ta>>2]|0}g[f>>2]=0.0;if(cb>>>0<db>>>0){c[cb>>2]=0;c[sa>>2]=cb+4}else Md(ra,f);Kd(p,ra);Kd(q,wa);ve(o,p,q);Ta=c[q>>2]|0;da=Ta;if(Ta|0){Ra=c[Ma>>2]|0;if((Ra|0)!=(Ta|0))c[Ma>>2]=Ra+(~((Ra+-4-da|0)>>>2)<<2);bz(Ta)}Ta=c[p>>2]|0;da=Ta;if(Ta|0){Ra=c[La>>2]|0;if((Ra|0)!=(Ta|0))c[La>>2]=Ra+(~((Ra+-4-da|0)>>>2)<<2);bz(Ta)}c[r>>2]=0;c[xa>>2]=0;c[ya>>2]=0;Ta=0;da=0;Ra=0;while(1){Z=+g[(c[ra>>2]|0)+(Ta<<2)>>2]-+g[(c[o>>2]|0)+(Ta<<2)>>2];Y=Z*Z;g[f>>2]=Y;if(da>>>0<Ra>>>0){g[da>>2]=Y;c[xa>>2]=da+4}else Md(r,f);Ua=Ta+1|0;if((Ua|0)>=256)break;Ta=Ua;da=c[xa>>2]|0;Ra=c[za>>2]|0}Kd(s,r);Kd(t,wa);ve(f,s,t);Ra=c[r>>2]|0;da=Ra;if(Ra|0){Ta=c[xa>>2]|0;if((Ta|0)!=(Ra|0))c[xa>>2]=Ta+(~((Ta+-4-da|0)>>>2)<<2);bz(Ra);c[za>>2]=0;c[xa>>2]=0;c[r>>2]=0}c[r>>2]=c[f>>2];c[xa>>2]=c[Aa>>2];c[za>>2]=c[Ba>>2];c[Ba>>2]=0;c[Aa>>2]=0;c[f>>2]=0;Ra=c[t>>2]|0;da=Ra;if(Ra|0){Ta=c[Ka>>2]|0;if((Ta|0)!=(Ra|0))c[Ka>>2]=Ta+(~((Ta+-4-da|0)>>>2)<<2);bz(Ra)}Ra=c[s>>2]|0;da=Ra;if(Ra|0){Ta=c[Ja>>2]|0;if((Ta|0)!=(Ra|0))c[Ja>>2]=Ta+(~((Ta+-4-da|0)>>>2)<<2);bz(Ra)}Ra=0;do{da=(c[r>>2]|0)+(Ra<<2)|0;Y=+H(+(+g[da>>2]));g[da>>2]=Y;da=(c[ra>>2]|0)+(Ra<<2)|0;Z=+g[da>>2];if(Y>0.0){X=Z-+g[(c[o>>2]|0)+(Ra<<2)>>2];if(X>0.0)eb=X/+I(+Y,+(+g[Ca>>2]));else eb=0.0;g[da>>2]=eb;fb=eb}else fb=Z;if(fb<0.0){da=fe(43100,28674,41)|0;c[f>>2]=iq(da+(c[(c[da>>2]|0)+-12>>2]|0)|0)|0;Ta=Hr(f,43804)|0;Ua=Bb[c[(c[Ta>>2]|0)+28>>2]&63](Ta,10)|0;Oy(f);Aq(da,Ua)|0;nq(da)|0}Ra=Ra+1|0}while((Ra|0)<256);Ra=c[W>>2]|0;if((Ra|0)==(c[Da>>2]|0))Bh(m,k);else{a[Ra>>0]=a[k>>0]|0;c[Ra+4>>2]=c[la>>2];c[Ra+8>>2]=c[ma>>2];a[Ra+12>>0]=a[na>>0]|0;c[Ra+16>>2]=c[oa>>2];c[Ra+20>>2]=c[Ia>>2];Kd(Ra+24|0,ra);kz(Ra+36|0,Ea);c[W>>2]=(c[W>>2]|0)+48}Pa=Pa+1|0;Ra=c[r>>2]|0;da=Ra;if(Ra|0){Ua=c[xa>>2]|0;if((Ua|0)!=(Ra|0))c[xa>>2]=Ua+(~((Ua+-4-da|0)>>>2)<<2);bz(Ra)}Ra=c[o>>2]|0;da=Ra;if(Ra|0){Ua=c[Ha>>2]|0;if((Ua|0)!=(Ra|0))c[Ha>>2]=Ua+(~((Ua+-4-da|0)>>>2)<<2);bz(Ra)}oz(Ea);Ra=c[Fa>>2]|0;da=Ra;if(Ra|0){Ua=c[sa>>2]|0;if((Ua|0)!=(Ra|0))c[sa>>2]=Ua+(~((Ua+-4-da|0)>>>2)<<2);bz(Ra)}oz(ka);Ra=c[Ga>>2]|0;da=Ra;if(Ra|0){Ua=c[va>>2]|0;if((Ua|0)!=(Ra|0))c[va>>2]=Ua+(~((Ua+-4-da|0)>>>2)<<2);bz(Ra)}V=V+48|0;if((V|0)==(c[O>>2]|0))break;else{Oa=Ya;_=Za}}ea=c[m>>2]|0;fa=c[W>>2]|0}Ya=d+68|0;c[o>>2]=0;Oa=o+4|0;c[Oa>>2]=0;c[o+8>>2]=0;g[f>>2]=0.0;fi(r,(fa-ea|0)/48|0,f);c[u>>2]=0;ea=u+4|0;c[ea>>2]=0;c[u+8>>2]=0;fa=c[m>>2]|0;if((fa|0)==(c[W>>2]|0))gb=U+-1|0;else{O=v+4|0;V=v+8|0;va=v+12|0;Ga=v+16|0;ka=v+20|0;sa=v+24|0;Fa=v+36|0;Ea=w+4|0;Ha=w+8|0;xa=w+12|0;Pa=w+16|0;ra=y+4|0;Ia=y+8|0;oa=y+8|0;na=i+4|0;ma=i+8|0;la=i+8|0;Da=d+120|0;Ca=w+24|0;Ja=d+128|0;s=z+4|0;Ka=u+8|0;t=i+4|0;Aa=i+8|0;Ba=(S|0)>0;za=o+8|0;wa=w+36|0;ya=w+24|0;La=v+24|0;p=v+28|0;Ma=w+28|0;q=U+-1|0;cb=d+200|0;db=i+8|0;ta=w+20|0;bb=0;ab=fa;while(1){a[v>>0]=a[ab>>0]|0;c[O>>2]=c[ab+4>>2];c[V>>2]=c[ab+8>>2];a[va>>0]=a[ab+12>>0]|0;c[Ga>>2]=c[ab+16>>2];c[ka>>2]=c[ab+20>>2];Kd(sa,ab+24|0);kz(Fa,ab+36|0);a[xa>>0]=0;c[Pa>>2]=0;c[Pa+4>>2]=0;c[Pa+8>>2]=0;c[Pa+12>>2]=0;c[Pa+16>>2]=0;c[Pa+20>>2]=0;c[Pa+24>>2]=0;c[Pa+28>>2]=0;a[w>>0]=1;c[Ea>>2]=c[O>>2];c[Ha>>2]=c[V>>2];fa=c[sa>>2]|0;_a=0;$a=0;do{Za=+g[fa+(_a<<2)>>2];g[x+(_a<<2)>>2]=Za;$a=$a|Za>0.0;_a=_a+1|0}while((_a|0)!=256);c[y>>2]=0;c[ra>>2]=0;c[Ia>>2]=0;_a=$y(48)|0;c[y>>2]=_a;fa=_a+48|0;c[oa>>2]=fa;ja=_a;Na=ja+48|0;do{c[ja>>2]=0;ja=ja+4|0}while((ja|0)<(Na|0));c[ra>>2]=fa;ua=$y(48)|0;ja=ua;Na=ja+48|0;do{c[ja>>2]=0;ja=ja+4|0}while((ja|0)<(Na|0));ja=ua+48|0;a:do if($a){if(+g[Ya>>2]==0.0){Na=3;fa=0;while(1){Za=+g[x+(Na+-1<<2)>>2]*.5+0.0+ +g[x+(Na<<2)>>2]+ +g[x+(Na+1<<2)>>2]*.5;Va=(fa|0)%12|0;Wa=_a+(Va<<2)|0;g[Wa>>2]=Za*+g[11240+(fa<<2)>>2]+ +g[Wa>>2];Wa=ua+(Va<<2)|0;g[Wa>>2]=+g[Wa>>2]+Za*+g[11576+(fa<<2)>>2];fa=fa+1|0;if((fa|0)==84)break a;else Na=Na+3|0}}Na=1;do{g[f+(Na<<2)>>2]=1.0;Na=Na+1|0}while((Na|0)!=1084);c[i>>2]=0;c[na>>2]=0;c[ma>>2]=0;c[k>>2]=0;Na=3;fa=0;do{do if(+g[x+(Na+-1<<2)>>2]+0.0+ +g[x+(Na<<2)>>2]+ +g[x+(Na+1<<2)>>2]>0.0){Wa=c[na>>2]|0;if((Wa|0)==(c[la>>2]|0)){uh(i,k);break}else{c[Wa>>2]=fa;c[na>>2]=Wa+4;break}}while(0);fa=(c[k>>2]|0)+1|0;c[k>>2]=fa;Na=Na+3|0}while((Na|0)<255);Na=c[na>>2]|0;fa=c[i>>2]|0;Wa=Na-fa|0;Va=Wa<<6;pa=fa;qa=az(Va>>>0>1073741823?-1:Va<<2)|0;Va=Wa>>2;if((Wa|0)>0){Wa=c[Da>>2]|0;aa=Na-fa>>2;fa=0;do{Na=c[pa+(fa<<2)>>2]<<8;ia=fa<<8;ha=0;do{c[qa+(ha+ia<<2)>>2]=c[Wa+(Na+ha<<2)>>2];ha=ha+1|0}while((ha|0)!=256);fa=fa+1|0}while((fa|0)<(aa|0));hb=aa}else hb=Va;Mm(qa,256,256,hb,x,f,z,A,B,C,D)|0;cz(qa);aa=c[na>>2]|0;fa=c[i>>2]|0;Wa=fa;pa=aa;if((aa-fa|0)>0){ha=c[y>>2]|0;Na=aa-fa>>2;aa=0;do{ia=f+(aa<<2)|0;ga=c[Wa+(aa<<2)>>2]|0;$=(ga|0)%12|0;Ra=ha+($<<2)|0;g[Ra>>2]=+g[ia>>2]*+g[11240+(ga<<2)>>2]+ +g[Ra>>2];Ra=ua+($<<2)|0;g[Ra>>2]=+g[Ra>>2]+ +g[ia>>2]*+g[11576+(ga<<2)>>2];aa=aa+1|0}while((aa|0)<(Na|0))}Na=fa;if(fa|0){if((pa|0)!=(Wa|0))c[na>>2]=pa+(~((pa+-4-fa|0)>>>2)<<2);bz(Na)}}while(0);Kd(z,y);c[E>>2]=c[y>>2];c[G>>2]=ua;c[J>>2]=ja;c[k>>2]=c[E>>2];c[i>>2]=c[G>>2];c[f>>2]=c[J>>2];Ph(y,k,i,f)|0;Oh(Ca,c[y>>2]|0,c[ra>>2]|0);Za=+g[Ja>>2];if(Za>0.0){_a=$y(12)|0;c[_a>>2]=0;c[_a+4>>2]=0;c[_a+8>>2]=0;switch(~~Za|0){case 3:{$a=c[y>>2]|0;Na=c[ra>>2]|0;aa=_a+8|0;if(($a|0)==(Na|0))ib=0.0;else{ha=$a;Za=0.0;while(1){_=+g[ha>>2];fb=Za+_*_;g[aa>>2]=fb;ha=ha+4|0;if((ha|0)==(Na|0)){ib=fb;break}else Za=fb}}Za=+H(+ib);g[aa>>2]=Za;jb=Za;Xa=126;break}case 1:{Na=c[z>>2]|0;ha=c[s>>2]|0;if((Na|0)!=(ha|0)?(ja=Na+4|0,(ja|0)!=(ha|0)):0){$a=ja;ja=Na;qa=Na;while(1){Va=+g[qa>>2]<+g[$a>>2];ga=Va?$a:ja;qa=Va?$a:qa;$a=$a+4|0;if(($a|0)==(ha|0)){kb=ga;break}else ja=ga}}else kb=Na;ja=c[kb>>2]|0;c[_a>>2]=ja;ha=ua+4|0;$a=+g[ua>>2]<+g[ha>>2]?ha:ua;ha=ua+8|0;qa=+g[$a>>2]<+g[ha>>2]?ha:$a;$a=ua+12|0;ha=+g[qa>>2]<+g[$a>>2]?$a:qa;qa=ua+16|0;$a=+g[ha>>2]<+g[qa>>2]?qa:ha;ha=ua+20|0;qa=+g[$a>>2]<+g[ha>>2]?ha:$a;$a=ua+24|0;ha=+g[qa>>2]<+g[$a>>2]?$a:qa;qa=ua+28|0;$a=+g[ha>>2]<+g[qa>>2]?qa:ha;ha=ua+32|0;qa=+g[$a>>2]<+g[ha>>2]?ha:$a;$a=ua+36|0;ha=+g[qa>>2]<+g[$a>>2]?$a:qa;qa=ua+40|0;$a=+g[ha>>2]<+g[qa>>2]?qa:ha;ha=ua+44|0;qa=c[(+g[$a>>2]<+g[ha>>2]?ha:$a)>>2]|0;$a=_a+4|0;c[$a>>2]=qa;Za=(c[j>>2]=ja,+g[j>>2]);ja=c[(Za<(c[j>>2]=qa,+g[j>>2])?$a:_a)>>2]|0;c[_a+8>>2]=ja;jb=(c[j>>2]=ja,+g[j>>2]);Xa=126;break}case 2:{ja=c[y>>2]|0;$a=c[ra>>2]|0;if((ja|0)!=($a|0)){qa=_a+8|0;ha=ja;Za=0.0;while(1){fb=+g[ha>>2]+Za;g[qa>>2]=fb;ha=ha+4|0;if((ha|0)==($a|0)){jb=fb;Xa=126;break}else Za=fb}}break}default:{}}if((((Xa|0)==126?(Xa=0,$a=_a+8|0,jb>0.0):0)?(ha=(c[ra>>2]|0)-(c[y>>2]|0)|0,(ha|0)>0):0)?(qa=c[Ca>>2]|0,Na=ha>>2,g[qa>>2]=+g[qa>>2]/jb,(ha|0)>4):0){ha=1;do{ja=qa+(ha<<2)|0;g[ja>>2]=+g[ja>>2]/+g[$a>>2];ha=ha+1|0}while((ha|0)<(Na|0))}bz(_a)}Na=c[ea>>2]|0;if((Na|0)==(c[Ka>>2]|0))Bh(u,w);else{a[Na>>0]=a[w>>0]|0;c[Na+4>>2]=c[Ea>>2];c[Na+8>>2]=c[Ha>>2];a[Na+12>>0]=a[xa>>0]|0;c[Na+16>>2]=c[Pa>>2];c[Na+20>>2]=c[ta>>2];Kd(Na+24|0,Ca);kz(Na+36|0,wa);c[ea>>2]=(c[ea>>2]|0)+48}c[i>>2]=0;c[t>>2]=0;c[Aa>>2]=0;h[k>>3]=0.0;if(Ba){Na=0;Za=0.0;ha=bb;while(1){$a=Na*24|0;qa=c[cb>>2]|0;ja=c[y>>2]|0;fb=+g[qa+($a<<2)>>2]*+g[ja>>2]+0.0+ +g[qa+(($a|1)<<2)>>2]*+g[ja+4>>2]+ +g[qa+(($a|2)<<2)>>2]*+g[ja+8>>2]+ +g[qa+(($a|3)<<2)>>2]*+g[ja+12>>2]+ +g[qa+(($a|4)<<2)>>2]*+g[ja+16>>2]+ +g[qa+(($a|5)<<2)>>2]*+g[ja+20>>2]+ +g[qa+(($a|6)<<2)>>2]*+g[ja+24>>2]+ +g[qa+(($a|7)<<2)>>2]*+g[ja+28>>2]+ +g[qa+($a+8<<2)>>2]*+g[ja+32>>2]+ +g[qa+($a+9<<2)>>2]*+g[ja+36>>2]+ +g[qa+($a+10<<2)>>2]*+g[ja+40>>2]+ +g[qa+($a+11<<2)>>2]*+g[ja+44>>2];h[k>>3]=fb;_=fb+ +g[qa+($a+12<<2)>>2]*+g[ja+48>>2]+ +g[qa+($a+13<<2)>>2]*+g[ja+52>>2]+ +g[qa+($a+14<<2)>>2]*+g[ja+56>>2]+ +g[qa+($a+15<<2)>>2]*+g[ja+60>>2]+ +g[qa+($a+16<<2)>>2]*+g[ja+64>>2]+ +g[qa+($a+17<<2)>>2]*+g[ja+68>>2]+ +g[qa+($a+18<<2)>>2]*+g[ja+72>>2]+ +g[qa+($a+19<<2)>>2]*+g[ja+76>>2]+ +g[qa+($a+20<<2)>>2]*+g[ja+80>>2]+ +g[qa+($a+21<<2)>>2]*+g[ja+84>>2]+ +g[qa+($a+22<<2)>>2]*+g[ja+88>>2]+ +g[qa+($a+23<<2)>>2]*+g[ja+92>>2];ja=(Na|0)==(q|0);fb=_*.7;eb=ja?fb:_;h[k>>3]=eb;if(!((ja?fb:_)<0.0))if(eb>200.0){if(!ha){ja=fe(43100,28716,53)|0;$a=fe(yq(ja,+h[k>>3])|0,28770,42)|0;c[f>>2]=iq($a+(c[(c[$a>>2]|0)+-12>>2]|0)|0)|0;ja=Hr(f,43804)|0;qa=Bb[c[(c[ja>>2]|0)+28>>2]&63](ja,10)|0;Oy(f);Aq($a,qa)|0;nq($a)|0}h[k>>3]=200.0;lb=1;mb=200.0}else{lb=ha;mb=eb}else{h[k>>3]=0.0;lb=ha;mb=0.0}eb=+I(1.3,+mb);h[k>>3]=eb;$a=c[t>>2]|0;if(($a|0)==(c[db>>2]|0))ii(i,k);else{h[$a>>3]=eb;c[t>>2]=$a+8}Za=Za+eb;Na=Na+1|0;if((Na|0)>=(U|0))break;else ha=lb}if(Za>0.0)if(Ba){ha=c[i>>2]|0;Na=0;do{_a=ha+(Na<<3)|0;h[_a>>3]=+h[_a>>3]/Za;Na=Na+1|0}while((Na|0)<(U|0));nb=lb}else nb=lb;else{ob=lb;Xa=149}}else{ob=bb;Xa=149}if((Xa|0)==149){Xa=0;h[(c[i>>2]|0)+(q<<3)>>3]=1.0;nb=ob}Na=c[Oa>>2]|0;if((Na|0)==(c[za>>2]|0))ki(o,i);else{ji(Na,i);c[Oa>>2]=(c[Oa>>2]|0)+12}Na=c[i>>2]|0;ha=Na;if(Na|0){_a=c[t>>2]|0;if((_a|0)!=(Na|0))c[t>>2]=_a+(~((_a+-8-ha|0)>>>3)<<3);bz(Na)}Na=c[z>>2]|0;ha=Na;if(Na|0){_a=c[s>>2]|0;if((_a|0)!=(Na|0))c[s>>2]=_a+(~((_a+-4-ha|0)>>>2)<<2);bz(Na)}bz(ua);Na=c[y>>2]|0;ha=Na;if(Na|0){_a=c[ra>>2]|0;if((_a|0)!=(Na|0))c[ra>>2]=_a+(~((_a+-4-ha|0)>>>2)<<2);bz(Na)}oz(wa);Na=c[ya>>2]|0;ha=Na;if(Na|0){_a=c[Ma>>2]|0;if((_a|0)!=(Na|0))c[Ma>>2]=_a+(~((_a+-4-ha|0)>>>2)<<2);bz(Na)}oz(Fa);Na=c[La>>2]|0;ha=Na;if(Na|0){_a=c[p>>2]|0;if((_a|0)!=(Na|0))c[p>>2]=_a+(~((_a+-4-ha|0)>>>2)<<2);bz(Na)}ab=ab+48|0;if((ab|0)==(c[W>>2]|0)){gb=q;break}else bb=nb}}c[f>>2]=0;nb=f+4|0;c[nb>>2]=0;c[f+8>>2]=0;h[k>>3]=0.0;hi(i,U,k);h[(c[i>>2]|0)+(gb<<3)>>3]=1.0;bb=Vo(T(U<<3,ba)|0)|0;c[k>>2]=0;q=k+4|0;c[q>>2]=0;c[k+8>>2]=0;ab=(S|0)>0;if(ab){mb=.010000000000000009/+(gb|0);S=k+8|0;p=v+4|0;La=0;do{h[w>>3]=mb;hi(v,U,w);h[(c[v>>2]|0)+(La<<3)>>3]=.99;Fa=c[q>>2]|0;if((Fa|0)==(c[S>>2]|0))ki(k,v);else{ji(Fa,v);c[q>>2]=(c[q>>2]|0)+12}Fa=c[v>>2]|0;Ma=Fa;if(Fa|0){ya=c[p>>2]|0;if((ya|0)!=(Fa|0))c[p>>2]=ya+(~((ya+-8-Ma|0)>>>3)<<3);bz(Fa)}La=La+1|0}while((La|0)<(U|0))}c[v>>2]=0;La=v+4|0;c[La>>2]=0;c[v+8>>2]=0;ji(K,i);li(L,k);li(M,o);Ai(w,K,L,M,bb,v);p=c[M>>2]|0;if(p|0){S=M+4|0;Fa=c[S>>2]|0;if((Fa|0)==(p|0))pb=p;else{Ma=Fa;while(1){Fa=Ma+-12|0;c[S>>2]=Fa;ya=c[Fa>>2]|0;wa=ya;if(!ya)qb=Fa;else{Fa=Ma+-8|0;ra=c[Fa>>2]|0;if((ra|0)!=(ya|0))c[Fa>>2]=ra+(~((ra+-8-wa|0)>>>3)<<3);bz(ya);qb=c[S>>2]|0}if((qb|0)==(p|0))break;else Ma=qb}pb=c[M>>2]|0}bz(pb)}pb=c[L>>2]|0;if(pb|0){M=L+4|0;qb=c[M>>2]|0;if((qb|0)==(pb|0))rb=pb;else{Ma=qb;while(1){qb=Ma+-12|0;c[M>>2]=qb;p=c[qb>>2]|0;S=p;if(!p)sb=qb;else{qb=Ma+-8|0;ya=c[qb>>2]|0;if((ya|0)!=(p|0))c[qb>>2]=ya+(~((ya+-8-S|0)>>>3)<<3);bz(p);sb=c[M>>2]|0}if((sb|0)==(pb|0))break;else Ma=sb}rb=c[L>>2]|0}bz(rb)}rb=c[K>>2]|0;L=rb;if(rb|0){sb=K+4|0;K=c[sb>>2]|0;if((K|0)!=(rb|0))c[sb>>2]=K+(~((K+-8-L|0)>>>3)<<3);bz(rb)}rb=x+4|0;c[rb>>2]=0;L=x+8|0;c[L>>2]=0;K=x+12|0;a[K>>0]=0;sb=x+16|0;c[sb>>2]=0;c[sb+4>>2]=0;c[sb+8>>2]=0;c[sb+12>>2]=0;c[sb+16>>2]=0;c[sb+20>>2]=0;c[sb+24>>2]=0;c[sb+28>>2]=0;a[x>>0]=1;Ma=c[n>>2]|0;c[rb>>2]=c[Ma>>2];c[L>>2]=c[Ma+4>>2];Ma=x+36|0;pz(Ma,(c[Q>>2]|0)+((c[c[w>>2]>>2]|0)*12|0)|0)|0;pb=d+184|0;M=Nh(b,pb)|0;p=M+4|0;S=c[p>>2]|0;if((S|0)==(c[M+8>>2]|0))Bh(M,x);else{a[S>>0]=a[x>>0]|0;c[S+4>>2]=c[rb>>2];c[S+8>>2]=c[L>>2];a[S+12>>0]=a[K>>0]|0;c[S+16>>2]=c[sb>>2];c[S+20>>2]=c[x+20>>2];Kd(S+24|0,x+24|0);kz(S+36|0,Ma);c[p>>2]=(c[p>>2]|0)+48}g[c[r>>2]>>2]=0.0;p=w+4|0;S=c[w>>2]|0;if(((c[p>>2]|0)-S|0)>4){M=y+4|0;ya=y+8|0;qb=y+12|0;wa=y+16|0;ra=y+36|0;Fa=d+212|0;s=y+24|0;t=y+28|0;za=z+4|0;ob=z+8|0;Xa=z+12|0;lb=z+16|0;Ba=z+24|0;db=z+28|0;cb=A+4|0;Aa=z+20|0;Ca=f+8|0;ta=z+36|0;Pa=z+24|0;xa=z+4|0;Ha=d+188|0;Ea=y+20|0;Ka=y+24|0;kb=1;Ja=gb;gb=S;while(1){S=gb;if((c[S+(kb<<2)>>2]|0)==(Ja|0))tb=Ja;else{c[M>>2]=0;c[ya>>2]=0;a[qb>>0]=0;c[wa>>2]=0;c[wa+4>>2]=0;c[wa+8>>2]=0;c[wa+12>>2]=0;c[wa+16>>2]=0;c[wa+20>>2]=0;c[wa+24>>2]=0;c[wa+28>>2]=0;a[y>>0]=1;J=c[n>>2]|0;c[M>>2]=c[J+(kb<<3)>>2];c[ya>>2]=c[J+(kb<<3)+4>>2];pz(ra,(c[Q>>2]|0)+((c[S+(kb<<2)>>2]|0)*12|0)|0)|0;S=Nh(b,pb)|0;J=S+4|0;G=c[J>>2]|0;if((G|0)==(c[S+8>>2]|0))Bh(S,y);else{a[G>>0]=a[y>>0]|0;c[G+4>>2]=c[M>>2];c[G+8>>2]=c[ya>>2];a[G+12>>0]=a[qb>>0]|0;c[G+16>>2]=c[wa>>2];c[G+20>>2]=c[Ea>>2];Kd(G+24|0,Ka);kz(G+36|0,ra);c[J>>2]=(c[J>>2]|0)+48}J=c[(c[w>>2]|0)+(kb<<2)>>2]|0;G=c[nb>>2]|0;S=c[f>>2]|0;E=S;if((G-S|0)>0){S=0;na=E;while(1){D=c[n>>2]|0;rk(z,(c[D+(kb<<3)>>2]|0)+(c[na+(S*48|0)+16>>2]|0)|0,(c[D+(kb<<3)+4>>2]|0)+(c[na+(S*48|0)+20>>2]|0)|0);c[na+(S*48|0)+16>>2]=c[z>>2];c[na+(S*48|0)+20>>2]=c[xa>>2];D=Nh(b,Ha)|0;C=c[f>>2]|0;B=C+(S*48|0)|0;hb=D+4|0;Da=c[hb>>2]|0;if((Da|0)==(c[D+8>>2]|0))Bh(D,B);else{a[Da>>0]=a[B>>0]|0;c[Da+4>>2]=c[C+(S*48|0)+4>>2];c[Da+8>>2]=c[C+(S*48|0)+8>>2];a[Da+12>>0]=a[C+(S*48|0)+12>>0]|0;c[Da+16>>2]=c[C+(S*48|0)+16>>2];c[Da+20>>2]=c[C+(S*48|0)+20>>2];Kd(Da+24|0,C+(S*48|0)+24|0);kz(Da+36|0,C+(S*48|0)+36|0);c[hb>>2]=(c[hb>>2]|0)+48}S=S+1|0;hb=c[nb>>2]|0;C=c[f>>2]|0;Da=C;if((S|0)>=((hb-C|0)/48|0|0)){ub=Da;vb=hb;break}else na=Da}}else{ub=E;vb=G}na=vb;if((na|0)!=(ub|0)){S=na;do{c[nb>>2]=S+-48;oz(S+-12|0);na=c[S+-24>>2]|0;ua=na;if(na|0){Da=S+-20|0;hb=c[Da>>2]|0;if((hb|0)!=(na|0))c[Da>>2]=hb+(~((hb+-4-ua|0)>>>2)<<2);bz(na)}S=c[nb>>2]|0}while((S|0)!=(ub|0))}S=c[w>>2]|0;G=c[S+(kb<<2)>>2]|0;E=c[Fa>>2]|0;if(((c[E+(G*12|0)+4>>2]|0)-(c[E+(G*12|0)>>2]|0)|0)>0){G=0;na=S;S=E;do{c[za>>2]=0;c[ob>>2]=0;a[Xa>>0]=0;c[lb>>2]=0;c[lb+4>>2]=0;c[lb+8>>2]=0;c[lb+12>>2]=0;c[lb+16>>2]=0;c[lb+20>>2]=0;c[lb+24>>2]=0;c[lb+28>>2]=0;a[z>>0]=1;E=c[n>>2]|0;c[za>>2]=c[E+(kb<<3)>>2];c[ob>>2]=c[E+(kb<<3)+4>>2];g[A>>2]=+(c[(c[S+((c[na+(kb<<2)>>2]|0)*12|0)>>2]|0)+(G<<2)>>2]|0);Md(Ba,A);E=c[n>>2]|0;a[Xa>>0]=1;rk(A,0-(c[E+(kb<<3)>>2]|0)|0,0-(c[E+(kb<<3)+4>>2]|0)|0);c[lb>>2]=c[A>>2];c[Aa>>2]=c[cb>>2];E=c[nb>>2]|0;if((E|0)==(c[Ca>>2]|0))Bh(f,z);else{a[E>>0]=a[z>>0]|0;c[E+4>>2]=c[za>>2];c[E+8>>2]=c[ob>>2];a[E+12>>0]=a[Xa>>0]|0;c[E+16>>2]=c[lb>>2];c[E+20>>2]=c[Aa>>2];Kd(E+24|0,Ba);kz(E+36|0,ta);c[nb>>2]=(c[nb>>2]|0)+48}oz(ta);E=c[Pa>>2]|0;ua=E;if(E|0){hb=c[db>>2]|0;if((hb|0)!=(E|0))c[db>>2]=hb+(~((hb+-4-ua|0)>>>2)<<2);bz(E)}G=G+1|0;na=c[w>>2]|0;E=c[na+(kb<<2)>>2]|0;S=c[Fa>>2]|0}while((G|0)<((c[S+(E*12|0)+4>>2]|0)-(c[S+(E*12|0)>>2]|0)>>2|0))}oz(ra);S=c[s>>2]|0;G=S;if(S|0){na=c[t>>2]|0;if((na|0)!=(S|0))c[t>>2]=na+(~((na+-4-G|0)>>>2)<<2);bz(S)}tb=J}if(ab){S=kb+-1|0;G=T(S,U)|0;na=T(kb,U)|0;E=(c[r>>2]|0)+(S<<2)|0;S=0;mb=+g[E>>2];do{jb=+h[bb+(S+G<<3)>>3];ib=+h[bb+(S+na<<3)>>3];mb=jb*+R(+(jb/(ib<1.0e-07?1.0e-07:ib)+1.0e-07))+mb;S=S+1|0}while((S|0)<(U|0));g[E>>2]=mb}kb=kb+1|0;gb=c[w>>2]|0;if((kb|0)>=((c[p>>2]|0)-gb>>2|0))break;else Ja=tb}}tb=(N|0)>0;if(tb){N=y+4|0;Ja=y+8|0;gb=y+12|0;kb=y+16|0;U=y+24|0;ab=y+28|0;t=d+196|0;s=y+36|0;ra=y+24|0;Fa=y+20|0;db=0;do{c[N>>2]=0;c[Ja>>2]=0;a[gb>>0]=0;c[kb>>2]=0;c[kb+4>>2]=0;c[kb+8>>2]=0;c[kb+12>>2]=0;c[kb+16>>2]=0;c[kb+20>>2]=0;c[kb+24>>2]=0;c[kb+28>>2]=0;a[y>>0]=1;Pa=c[n>>2]|0;c[N>>2]=c[Pa+(db<<3)>>2];c[Ja>>2]=c[Pa+(db<<3)+4>>2];g[z>>2]=-+R(+(+h[(c[v>>2]|0)+(db<<3)>>3]));Md(U,z);Pa=Nh(b,t)|0;ta=Pa+4|0;Ba=c[ta>>2]|0;if((Ba|0)==(c[Pa+8>>2]|0))Bh(Pa,y);else{a[Ba>>0]=a[y>>0]|0;c[Ba+4>>2]=c[N>>2];c[Ba+8>>2]=c[Ja>>2];a[Ba+12>>0]=a[gb>>0]|0;c[Ba+16>>2]=c[kb>>2];c[Ba+20>>2]=c[Fa>>2];Kd(Ba+24|0,U);kz(Ba+36|0,s);c[ta>>2]=(c[ta>>2]|0)+48}oz(s);ta=c[ra>>2]|0;Ba=ta;if(ta|0){Pa=c[ab>>2]|0;if((Pa|0)!=(ta|0))c[ab>>2]=Pa+(~((Pa+-4-Ba|0)>>>2)<<2);bz(ta)}db=db+1|0}while((db|0)<(ba|0))}a[x>>0]=1;db=c[n>>2]|0;ab=((c[ca>>2]|0)-db>>3)+-1|0;ra=db;c[rb>>2]=c[ra+(ab<<3)>>2];c[L>>2]=c[ra+(ab<<3)+4>>2];tz(Ma,28813)|0;ab=Nh(b,pb)|0;pb=ab+4|0;ra=c[pb>>2]|0;if((ra|0)==(c[ab+8>>2]|0))Bh(ab,x);else{a[ra>>0]=a[x>>0]|0;c[ra+4>>2]=c[rb>>2];c[ra+8>>2]=c[L>>2];a[ra+12>>0]=a[K>>0]|0;c[ra+16>>2]=c[sb>>2];c[ra+20>>2]=c[x+20>>2];Kd(ra+24|0,x+24|0);kz(ra+36|0,Ma);c[pb>>2]=(c[pb>>2]|0)+48}pb=c[f>>2]|0;if(((c[nb>>2]|0)-pb|0)>0){ra=y+4|0;sb=d+188|0;K=0;L=pb;do{pb=L;rb=c[n>>2]|0;ab=((c[ca>>2]|0)-rb>>3)+-1|0;db=rb;rb=pb+(K*48|0)+16|0;s=pb+(K*48|0)+20|0;rk(y,(c[db+(ab<<3)>>2]|0)+(c[rb>>2]|0)|0,(c[db+(ab<<3)+4>>2]|0)+(c[s>>2]|0)|0);c[rb>>2]=c[y>>2];c[s>>2]=c[ra>>2];s=Nh(b,sb)|0;rb=c[f>>2]|0;ab=rb+(K*48|0)|0;db=s+4|0;pb=c[db>>2]|0;if((pb|0)==(c[s+8>>2]|0))Bh(s,ab);else{a[pb>>0]=a[ab>>0]|0;c[pb+4>>2]=c[rb+(K*48|0)+4>>2];c[pb+8>>2]=c[rb+(K*48|0)+8>>2];a[pb+12>>0]=a[rb+(K*48|0)+12>>0]|0;c[pb+16>>2]=c[rb+(K*48|0)+16>>2];c[pb+20>>2]=c[rb+(K*48|0)+20>>2];Kd(pb+24|0,rb+(K*48|0)+24|0);kz(pb+36|0,rb+(K*48|0)+36|0);c[db>>2]=(c[db>>2]|0)+48}K=K+1|0;L=c[f>>2]|0}while((K|0)<(((c[nb>>2]|0)-L|0)/48|0|0))}if(tb){tb=y+4|0;L=y+8|0;K=y+12|0;sb=y+16|0;ra=y+24|0;db=y+28|0;rb=d+192|0;d=y+36|0;pb=y+24|0;ab=y+20|0;s=0;do{c[tb>>2]=0;c[L>>2]=0;a[K>>0]=0;c[sb>>2]=0;c[sb+4>>2]=0;c[sb+8>>2]=0;c[sb+12>>2]=0;c[sb+16>>2]=0;c[sb+20>>2]=0;c[sb+24>>2]=0;c[sb+28>>2]=0;a[y>>0]=1;U=c[n>>2]|0;c[tb>>2]=c[U+(s<<3)>>2];c[L>>2]=c[U+(s<<3)+4>>2];xe(ra,(c[r>>2]|0)+(s<<2)|0);U=Nh(b,rb)|0;Fa=U+4|0;kb=c[Fa>>2]|0;if((kb|0)==(c[U+8>>2]|0))Bh(U,y);else{a[kb>>0]=a[y>>0]|0;c[kb+4>>2]=c[tb>>2];c[kb+8>>2]=c[L>>2];a[kb+12>>0]=a[K>>0]|0;c[kb+16>>2]=c[sb>>2];c[kb+20>>2]=c[ab>>2];Kd(kb+24|0,ra);kz(kb+36|0,d);c[Fa>>2]=(c[Fa>>2]|0)+48}oz(d);Fa=c[pb>>2]|0;kb=Fa;if(Fa|0){U=c[db>>2]|0;if((U|0)!=(Fa|0))c[db>>2]=U+(~((U+-4-kb|0)>>>2)<<2);bz(Fa)}s=s+1|0}while((s|0)<(ba|0))}Wo(bb);oz(Ma);Ma=c[x+24>>2]|0;bb=Ma;if(Ma|0){ba=x+28|0;x=c[ba>>2]|0;if((x|0)!=(Ma|0))c[ba>>2]=x+(~((x+-4-bb|0)>>>2)<<2);bz(Ma)}Ma=c[w>>2]|0;w=Ma;if(Ma|0){bb=c[p>>2]|0;if((bb|0)!=(Ma|0))c[p>>2]=bb+(~((bb+-4-w|0)>>>2)<<2);bz(Ma)}Ma=c[v>>2]|0;v=Ma;if(Ma|0){w=c[La>>2]|0;if((w|0)!=(Ma|0))c[La>>2]=w+(~((w+-8-v|0)>>>3)<<3);bz(Ma)}Ma=c[k>>2]|0;if(Ma|0){v=c[q>>2]|0;if((v|0)==(Ma|0))wb=Ma;else{w=v;while(1){v=w+-12|0;c[q>>2]=v;La=c[v>>2]|0;bb=La;if(!La)xb=v;else{v=w+-8|0;p=c[v>>2]|0;if((p|0)!=(La|0))c[v>>2]=p+(~((p+-8-bb|0)>>>3)<<3);bz(La);xb=c[q>>2]|0}if((xb|0)==(Ma|0))break;else w=xb}wb=c[k>>2]|0}bz(wb)}wb=c[i>>2]|0;k=wb;if(wb|0){xb=i+4|0;i=c[xb>>2]|0;if((i|0)!=(wb|0))c[xb>>2]=i+(~((i+-8-k|0)>>>3)<<3);bz(wb)}wb=c[f>>2]|0;if(wb|0){k=c[nb>>2]|0;if((k|0)==(wb|0))yb=wb;else{i=k;do{c[nb>>2]=i+-48;oz(i+-12|0);k=c[i+-24>>2]|0;xb=k;if(k|0){w=i+-20|0;Ma=c[w>>2]|0;if((Ma|0)!=(k|0))c[w>>2]=Ma+(~((Ma+-4-xb|0)>>>2)<<2);bz(k)}i=c[nb>>2]|0}while((i|0)!=(wb|0));yb=c[f>>2]|0}bz(yb)}yb=c[u>>2]|0;if(yb|0){f=c[ea>>2]|0;if((f|0)==(yb|0))zb=yb;else{wb=f;do{c[ea>>2]=wb+-48;oz(wb+-12|0);f=c[wb+-24>>2]|0;i=f;if(f|0){nb=wb+-20|0;k=c[nb>>2]|0;if((k|0)!=(f|0))c[nb>>2]=k+(~((k+-4-i|0)>>>2)<<2);bz(f)}wb=c[ea>>2]|0}while((wb|0)!=(yb|0));zb=c[u>>2]|0}bz(zb)}zb=c[r>>2]|0;u=zb;if(zb|0){yb=r+4|0;r=c[yb>>2]|0;if((r|0)!=(zb|0))c[yb>>2]=r+(~((r+-4-u|0)>>>2)<<2);bz(zb)}zb=c[o>>2]|0;if(zb|0){u=c[Oa>>2]|0;if((u|0)==(zb|0))Ab=zb;else{r=u;while(1){u=r+-12|0;c[Oa>>2]=u;yb=c[u>>2]|0;wb=yb;if(!yb)Cb=u;else{u=r+-8|0;ea=c[u>>2]|0;if((ea|0)!=(yb|0))c[u>>2]=ea+(~((ea+-8-wb|0)>>>3)<<3);bz(yb);Cb=c[Oa>>2]|0}if((Cb|0)==(zb|0))break;else r=Cb}Ab=c[o>>2]|0}bz(Ab)}Ab=c[n>>2]|0;n=Ab;if(Ab|0){o=c[ca>>2]|0;if((o|0)!=(Ab|0))c[ca>>2]=o+(~((o+-8-n|0)>>>3)<<3);bz(Ab)}Ab=c[m>>2]|0;if(Ab|0){n=c[W>>2]|0;if((n|0)==(Ab|0))Db=Ab;else{o=n;do{c[W>>2]=o+-48;oz(o+-12|0);n=c[o+-24>>2]|0;ca=n;if(n|0){Cb=o+-20|0;r=c[Cb>>2]|0;if((r|0)!=(n|0))c[Cb>>2]=r+(~((r+-4-ca|0)>>>2)<<2);bz(n)}o=c[W>>2]|0}while((o|0)!=(Ab|0));Db=c[m>>2]|0}bz(Db)}l=e;return}function fi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823)Vx(a);f=$y(b<<2)|0;c[e>>2]=f;c[a>>2]=f;c[a+8>>2]=f+(b<<2);a=f+(b<<2)|0;g=b;b=f;while(1){c[b>>2]=c[d>>2];g=g+-1|0;if(!g)break;else b=b+4|0}c[e>>2]=a;return}function gi(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911)Vx(a);h=f;i=e;j=a+8|0;k=(c[j>>2]|0)-f|0;l=k>>2;m=k>>3>>>0<268435455?(l>>>0<g>>>0?g:l):536870911;l=e-f>>3;do if(m)if(m>>>0>536870911){e=Ea(4)|0;ZA(e);_a(e|0,6864,245)}else{n=$y(m<<3)|0;break}else n=0;while(0);e=n+(l<<3)|0;g=n+(m<<3)|0;c[e>>2]=c[b>>2];c[n+(l<<3)+4>>2]=c[b+4>>2];b=e+8|0;if((i|0)==(h|0))o=e;else{l=i+-8-f|0;n=i;i=e;while(1){m=n;n=n+-8|0;c[i+-8>>2]=c[n>>2];c[i+-4>>2]=c[m+-4>>2];if((n|0)==(h|0))break;else i=i+-8|0}o=e+(~(l>>>3)<<3)|0}c[a>>2]=o;c[d>>2]=b;c[j>>2]=g;if(!f)return;bz(f);return}function hi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>536870911)Vx(a);f=$y(b<<3)|0;c[e>>2]=f;c[a>>2]=f;g=f+(b<<3)|0;c[a+8>>2]=g;a=b;b=f;while(1){h[b>>3]=+h[d>>3];a=a+-1|0;if(!a)break;else b=b+8|0}c[e>>2]=g;return}function ii(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911)Vx(a);i=a+8|0;j=(c[i>>2]|0)-f|0;k=j>>2;l=j>>3>>>0<268435455?(k>>>0<g>>>0?g:k):536870911;k=e-f>>3;do if(l)if(l>>>0>536870911){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{m=$y(l<<3)|0;break}else m=0;while(0);g=m+(k<<3)|0;h[g>>3]=+h[b>>3];b=e-f|0;e=g+(0-(b>>3)<<3)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+8;c[i>>2]=m+(l<<3);if(!f)return;bz(f);return}function ji(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>3;if(!g)return;if(g>>>0>536870911)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<3);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;jB(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>3<<3);return}function ki(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;j=f;e=l+(k*12|0)|0;ji(f,b);b=f+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=f;do{f=j+-12|0;i=g;g=g+-12|0;c[f>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[f>>2]=c[g>>2];f=i+-8|0;c[p>>2]=c[f>>2];p=i+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[f>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=e;e=n;if((o|0)!=(e|0)){h=o;do{o=h;h=h+-12|0;b=c[h>>2]|0;d=b;if(b|0){m=o+-8|0;o=c[m>>2]|0;if((o|0)!=(b|0))c[m>>2]=o+(~((o+-8-d|0)>>>3)<<3);bz(b)}}while((h|0)!=(e|0))}if(!n)return;bz(n);return}function li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/12|0;if(!f)return;if(g>>>0>357913941)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*12|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{ji(g,e);e=e+12|0;g=(c[d>>2]|0)+12|0;c[d>>2]=g}while((e|0)!=(b|0));return}function mi(a,b){a=a|0;b=+b;var d=0;zh(a,b);c[a>>2]=11136;d=a+200|0;a=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));return}function ni(a){a=a|0;c[a>>2]=11920;ah(a);return}function oi(a){a=a|0;c[a>>2]=11920;ah(a);bz(a);return}function pi(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,30454,6);return}function qi(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,30461,6);return}function ri(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,31019,141);return}function si(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;d=l;l=l+80|0;e=d;c[b>>2]=0;f=b+4|0;c[f>>2]=0;c[b+8>>2]=0;h=e+64|0;i=e;j=i+60|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));a[e+60>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;tz(e,30726)|0;i=e+12|0;tz(i,30733)|0;j=e+24|0;tz(j,30754)|0;k=e+36|0;tz(k,31017)|0;g[e+48>>2]=0.0;g[e+52>>2]=5.0;g[e+56>>2]=0.0;a[e+60>>0]=1;g[h>>2]=.5;h=c[f>>2]|0;if((h|0)==(c[b+8>>2]|0))wh(b,e);else{vh(h,e);c[f>>2]=(c[f>>2]|0)+80}f=e+68|0;h=c[f>>2]|0;if(!h){oz(k);oz(j);oz(i);oz(e);l=d;return}b=e+72|0;m=c[b>>2]|0;if((m|0)==(h|0))n=h;else{o=m;do{m=o+-12|0;c[b>>2]=m;oz(m);o=c[b>>2]|0}while((o|0)!=(h|0));n=c[f>>2]|0}bz(n);oz(k);oz(j);oz(i);oz(e);l=d;return}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nh(a,b,c,d)|0}function ui(a){a=a|0;oh(a);return}function vi(a){a=a|0;return 8192}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0,y=0;e=l;l=l+208|0;f=e+100|0;h=e;c[b>>2]=0;i=b+4|0;c[i>>2]=0;c[b+8>>2]=0;j=f+52|0;k=f+72|0;g[k>>2]=0.0;m=f+76|0;g[m>>2]=0.0;n=f+80|0;a[n>>0]=0;o=f+84|0;p=f;q=p+48|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[f+48>>0]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;a[j+16>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;a[o+12>>0]=0;tz(f,30454)|0;o=f+12|0;tz(o,30461)|0;r=f+24|0;tz(r,30468)|0;s=f+36|0;tz(s,30562)|0;a[f+48>>0]=1;c[j>>2]=1;a[f+68>>0]=1;g[k>>2]=427.4700012207031;g[m>>2]=452.8900146484375;a[n>>0]=0;c[f+88>>2]=2;a[f+96>>0]=1;n=c[i>>2]|0;m=b+8|0;if((n|0)==(c[m>>2]|0))Sh(b,f);else{Rh(n,f);c[i>>2]=(c[i>>2]|0)+100}c[d+184>>2]=0;n=h+52|0;k=h+72|0;g[k>>2]=0.0;j=h+76|0;g[j>>2]=0.0;t=h+80|0;a[t>>0]=0;u=h+84|0;p=h;q=p+48|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[h+48>>0]=0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;a[n+16>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;a[u+12>>0]=0;tz(h,30565)|0;u=h+12|0;tz(u,30577)|0;p=h+24|0;tz(p,30590)|0;q=h+36|0;tz(q,30562)|0;a[h+48>>0]=1;c[n>>2]=1;a[h+68>>0]=1;g[k>>2]=427.4700012207031;g[j>>2]=452.8900146484375;a[t>>0]=0;c[h+88>>2]=1;t=c[d+28>>2]|0;v=+g[d+4>>2];if(!t)w=v*.00048828125;else w=v/+(t>>>0);g[h+92>>2]=w;a[h+96>>0]=0;t=c[i>>2]|0;if((t|0)==(c[m>>2]|0))Sh(b,h);else{Rh(t,h);c[i>>2]=(c[i>>2]|0)+100}c[d+188>>2]=1;d=h+56|0;i=c[d>>2]|0;if(i|0){t=h+60|0;b=c[t>>2]|0;if((b|0)==(i|0))x=i;else{m=b;do{b=m+-12|0;c[t>>2]=b;oz(b);m=c[t>>2]|0}while((m|0)!=(i|0));x=c[d>>2]|0}bz(x)}oz(q);oz(p);oz(u);oz(h);h=f+56|0;u=c[h>>2]|0;if(!u){oz(s);oz(r);oz(o);oz(f);l=e;return}p=f+60|0;q=c[p>>2]|0;if((q|0)==(u|0))y=u;else{x=q;do{q=x+-12|0;c[p>>2]=q;oz(q);x=c[p>>2]|0}while((x|0)!=(u|0));y=c[h>>2]|0}bz(y);oz(s);oz(r);oz(o);oz(f);l=e;return}function xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;h=l;l=l+64|0;i=h+8|0;j=h+16|0;k=h;c[i>>2]=c[f>>2];m=f+4|0;c[i+4>>2]=c[m>>2];Ah(d,e,i);i=j+4|0;e=j+8|0;n=j+12|0;a[n>>0]=0;o=j+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;a[j>>0]=1;c[i>>2]=c[f>>2];c[e>>2]=c[m>>2];m=c[d+72>>2]|0;g[k>>2]=+Xm(+g[m+(((c[d+76>>2]|0)-m>>2)+-1<<2)>>2]/12.0)*440.0;m=j+24|0;f=j+28|0;xe(m,k);c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;k=Nh(b,d+188|0)|0;d=k+4|0;b=c[d>>2]|0;if((b|0)==(c[k+8>>2]|0)){Bh(k,j);p=j+36|0}else{a[b>>0]=a[j>>0]|0;c[b+4>>2]=c[i>>2];c[b+8>>2]=c[e>>2];a[b+12>>0]=a[n>>0]|0;c[b+16>>2]=c[o>>2];c[b+20>>2]=c[j+20>>2];Kd(b+24|0,m);m=j+36|0;kz(b+36|0,m);c[d>>2]=(c[d>>2]|0)+48;p=m}oz(p);p=c[j+24>>2]|0;if(!p){l=h;return}j=c[f>>2]|0;if((j|0)!=(p|0))c[f>>2]=j+(~((j+-4-p|0)>>>2)<<2);bz(p);l=h;return}function yi(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0;e=l;l=l+112|0;f=e;i=e+56|0;j=e+60|0;k=e+48|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;m=d+12|0;n=d+16|0;if((c[n>>2]|0)==(c[m>>2]|0)){l=e;return}o=c[d+36>>2]|0;p=c[d+172>>2]|0;q=c[d+160>>2]|0;r=+g[o>>2];s=+g[o+4>>2];t=+g[o+8>>2];u=+Xm(+P(+(r*+g[q>>2]+0.0+s*+g[q+4>>2]+t*+g[q+8>>2]),+(r*+g[p>>2]+0.0+s*+g[p+4>>2]+t*+g[p+8>>2]))/75.39822368615503)*440.0;g[i>>2]=u;h[f>>3]=u;ln(j,30445,f)|0;p=f+4|0;c[p>>2]=0;q=f+8|0;c[q>>2]=0;o=f+12|0;a[o>>0]=0;v=f+16|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;c[v+16>>2]=0;c[v+20>>2]=0;c[v+24>>2]=0;c[v+28>>2]=0;a[f>>0]=1;sk(k,0,fn(+g[d+4>>2])|0);c[p>>2]=c[k>>2];c[q>>2]=c[k+4>>2];k=f+24|0;w=f+28|0;x=c[w>>2]|0;if((x|0)==(c[f+32>>2]|0))xe(k,i);else{g[x>>2]=u;c[w>>2]=x+4}x=f+36|0;tz(x,j)|0;a[o>>0]=1;j=c[m>>2]|0;m=(((c[n>>2]|0)-j|0)/48|0)+-1|0;n=j;c[v>>2]=c[n+(m*48|0)+4>>2];j=f+20|0;c[j>>2]=c[n+(m*48|0)+8>>2];m=Nh(b,d+184|0)|0;d=m+4|0;b=c[d>>2]|0;if((b|0)==(c[m+8>>2]|0))Bh(m,f);else{a[b>>0]=a[f>>0]|0;c[b+4>>2]=c[p>>2];c[b+8>>2]=c[q>>2];a[b+12>>0]=a[o>>0]|0;c[b+16>>2]=c[v>>2];c[b+20>>2]=c[j>>2];Kd(b+24|0,k);kz(b+36|0,x);c[d>>2]=(c[d>>2]|0)+48}oz(x);x=c[f+24>>2]|0;f=x;if(x|0){d=c[w>>2]|0;if((d|0)!=(x|0))c[w>>2]=d+(~((d+-4-f|0)>>>2)<<2);bz(x)}l=e;return}function zi(a,b){a=a|0;b=+b;zh(a,b);c[a>>2]=11920;return}function Ai(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 i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0,J=0.0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0.0,R=0,S=0;i=l;l=l+32|0;j=i+16|0;k=i;m=i+12|0;n=(c[b+4>>2]|0)-(c[b>>2]|0)|0;o=n>>3;p=c[e>>2]|0;q=(c[e+4>>2]|0)-p|0;r=(q|0)/12|0;s=c[d>>2]|0;t=p;if(!((((c[s+4>>2]|0)-(c[s>>2]|0)>>3|0)==(o|0)?(((c[d+4>>2]|0)-s|0)/12|0|0)==(o|0):0)?((c[t+4>>2]|0)-(c[p>>2]|0)>>3|0)==(o|0):0)){p=fe(43100,31169,33)|0;c[j>>2]=iq(p+(c[(c[p>>2]|0)+-12>>2]|0)|0)|0;t=Hr(j,43804)|0;s=Bb[c[(c[t>>2]|0)+28>>2]&63](t,10)|0;Oy(j);Aq(p,s)|0;nq(p)|0}c[j>>2]=0;p=j+4|0;c[p>>2]=0;c[j+8>>2]=0;s=o+-1|0;c[k>>2]=s;Bi(a,r,k);t=(n|0)>0;if(t){n=c[b>>2]|0;b=c[c[e>>2]>>2]|0;u=0;v=0.0;do{w=+h[n+(u<<3)>>3]*+h[b+(u<<3)>>3];h[f+(u<<3)>>3]=w;v=v+w;u=u+1|0}while((u|0)<(o|0));if(t){u=0;do{b=f+(u<<3)|0;h[b>>3]=+h[b>>3]/v;u=u+1|0}while((u|0)<(o|0));x=v}else x=v}else x=0.0;v=1.0/x;h[k>>3]=v;u=g+4|0;b=c[u>>2]|0;n=g+8|0;if(b>>>0<(c[n>>2]|0)>>>0){h[b>>3]=v;c[u>>2]=b+8}else Ci(g,k);c[m>>2]=0;Bi(k,o,m);b=c[p>>2]|0;y=j+8|0;if(b>>>0>=(c[y>>2]|0)>>>0){Di(j,k);z=c[k>>2]|0;A=z;if(z|0){B=k+4|0;C=c[B>>2]|0;if((C|0)!=(z|0))c[B>>2]=C+(~((C+-4-A|0)>>>2)<<2);bz(z)}}else{c[b>>2]=0;z=b+4|0;c[z>>2]=0;c[b+8>>2]=0;c[b>>2]=c[k>>2];A=k+4|0;c[z>>2]=c[A>>2];z=k+8|0;c[b+8>>2]=c[z>>2];c[z>>2]=0;c[A>>2]=0;c[k>>2]=0;c[p>>2]=b+12}if((q|0)>12){q=k+4|0;b=k+8|0;v=1.0/+(o|0);A=1;do{c[m>>2]=0;Bi(k,o,m);z=c[p>>2]|0;if(z>>>0>=(c[y>>2]|0)>>>0){Di(j,k);C=c[k>>2]|0;B=C;if(C|0){D=c[q>>2]|0;if((D|0)!=(C|0))c[q>>2]=D+(~((D+-4-B|0)>>>2)<<2);bz(C)}}else{c[z>>2]=0;C=z+4|0;c[C>>2]=0;c[z+8>>2]=0;c[z>>2]=c[k>>2];c[C>>2]=c[q>>2];c[z+8>>2]=c[b>>2];c[b>>2]=0;c[q>>2]=0;c[k>>2]=0;c[p>>2]=z+12}a:do if(t){z=c[(c[e>>2]|0)+(A*12|0)>>2]|0;C=T(A,o)|0;B=c[(c[j>>2]|0)+(A*12|0)>>2]|0;D=T(A+-1|0,o)|0;E=0;x=0.0;do{w=+h[z+(E<<3)>>3];if(w>0.0){F=c[d>>2]|0;G=0;H=0.0;I=s;while(1){J=+h[f+(G+D<<3)>>3]*+h[(c[F+(G*12|0)>>2]|0)+(E<<3)>>3];K=J>H;L=K?G:I;M=K?J:H;G=G+1|0;if((G|0)>=(o|0)){N=M;O=L;break}else{H=M;I=L}}}else{N=0.0;O=s}H=N*w;h[f+(E+C<<3)>>3]=H;x=x+H;c[B+(E<<2)>>2]=O;E=E+1|0}while((E|0)<(o|0));if(!(x>0.0)){if(!t){P=45;break}E=T(A,o)|0;B=0;while(1){h[f+(B+E<<3)>>3]=v;B=B+1|0;if((B|0)>=(o|0)){P=45;break a}}}if(t){B=T(A,o)|0;E=0;do{C=f+(E+B<<3)|0;h[C>>3]=+h[C>>3]/x;E=E+1|0}while((E|0)<(o|0))}H=1.0/x;h[k>>3]=H;E=c[u>>2]|0;if(E>>>0<(c[n>>2]|0)>>>0){h[E>>3]=H;c[u>>2]=E+8}else Ci(g,k)}else P=45;while(0);if((P|0)==45){P=0;h[k>>3]=1.0;E=c[u>>2]|0;if(E>>>0<(c[n>>2]|0)>>>0){h[E>>3]=1.0;c[u>>2]=E+8}else Ci(g,k)}A=A+1|0}while((A|0)<(r|0))}if(t){t=r+-1|0;A=T(t,o)|0;k=0;v=0.0;while(1){N=+h[f+(k+A<<3)>>3];if(N>v){c[(c[a>>2]|0)+(t<<2)>>2]=k;Q=N}else Q=v;k=k+1|0;if((k|0)>=(o|0))break;else v=Q}}o=r+-2|0;r=c[j>>2]|0;if((o|0)<=-1){if(!r){l=i;return}}else{k=c[a>>2]|0;a=o;while(1){o=a+1|0;c[k+(a<<2)>>2]=c[(c[r+(o*12|0)>>2]|0)+(c[k+(o<<2)>>2]<<2)>>2];if((a|0)>0)a=a+-1|0;else break}}a=c[p>>2]|0;if((a|0)==(r|0))R=r;else{k=a;while(1){a=k+-12|0;c[p>>2]=a;o=c[a>>2]|0;t=o;if(!o)S=a;else{a=k+-8|0;A=c[a>>2]|0;if((A|0)!=(o|0))c[a>>2]=A+(~((A+-4-t|0)>>>2)<<2);bz(o);S=c[p>>2]|0}if((S|0)==(r|0))break;else k=S}R=c[j>>2]|0}bz(R);l=i;return}function Bi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823)Vx(a);f=$y(b<<2)|0;c[e>>2]=f;c[a>>2]=f;g=f+(b<<2)|0;c[a+8>>2]=g;a=b;b=f;while(1){c[b>>2]=c[d>>2];a=a+-1|0;if(!a)break;else b=b+4|0}c[e>>2]=g;return}function Ci(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911)Vx(a);i=a+8|0;j=(c[i>>2]|0)-f|0;k=j>>2;l=j>>3>>>0<268435455?(k>>>0<g>>>0?g:k):536870911;k=e-f>>3;do if(l)if(l>>>0>536870911){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{m=$y(l<<3)|0;break}else m=0;while(0);g=m+(k<<3)|0;h[g>>3]=+h[b>>3];b=e-f|0;e=g+(0-(b>>3)<<3)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+8;c[i>>2]=m+(l<<3);if(!f)return;bz(f);return}function Di(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;e=f;g=l+(k*12|0)|0;c[l+(j*12|0)+8>>2]=0;c[f>>2]=c[b>>2];k=b+4|0;c[l+(j*12|0)+4>>2]=c[k>>2];i=b+8|0;c[l+(j*12|0)+8>>2]=c[i>>2];c[i>>2]=0;c[k>>2]=0;c[b>>2]=0;b=f+12|0;k=c[a>>2]|0;i=c[d>>2]|0;if((i|0)==(k|0)){m=e;n=k;o=k}else{j=i;i=e;e=f;do{f=e+-12|0;l=j;j=j+-12|0;c[f>>2]=0;p=e+-8|0;c[p>>2]=0;c[e+-4>>2]=0;c[f>>2]=c[j>>2];f=l+-8|0;c[p>>2]=c[f>>2];p=l+-4|0;c[e+-4>>2]=c[p>>2];c[p>>2]=0;c[f>>2]=0;c[j>>2]=0;e=i+-12|0;i=e}while((j|0)!=(k|0));m=i;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=g;g=n;if((o|0)!=(g|0)){h=o;do{o=h;h=h+-12|0;b=c[h>>2]|0;d=b;if(b|0){m=o+-8|0;o=c[m>>2]|0;if((o|0)!=(b|0))c[m>>2]=o+(~((o+-4-d|0)>>>2)<<2);bz(b)}}while((h|0)!=(g|0))}if(!n)return;bz(n);return}function Ei(a){a=a|0;var b=0;c[a>>2]=12032;b=c[a+12>>2]|0;if(b|0){fj(b);bz(b)}Pj(a);return}function Fi(a){a=a|0;var b=0;c[a>>2]=12032;b=c[a+12>>2]|0;if(b|0){fj(b);bz(b)}Pj(a);bz(a);return}function Gi(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[a+12>>2]|0;kz(f,b);ej(g,f,d);oz(f);l=e;return}function Hi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a+12>>2]|0;kz(e,b);dj(f,e);oz(e);l=d;return}function Ii(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,31795,25);return}function Ji(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return $i(c[a+12>>2]|0,b,d,e)|0}function Ki(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+12>>2]|0;c[d+52>>2]=0;a[d+56>>0]=1;b=c[d+36>>2]|0;e=c[d+32>>2]|0;f=e;if((b|0)!=(e|0)){g=b-e>>2;e=0;do{b=c[f+(e<<2)>>2]|0;c[b+8>>2]=0;c[b+12>>2]=0;e=e+1|0}while(e>>>0<g>>>0)}g=d+84|0;e=d+88|0;_i(g,c[e>>2]|0);c[d+92>>2]=0;c[g>>2]=e;c[e>>2]=0;e=c[d>>2]|0;qb[c[(c[e>>2]|0)+68>>2]&511](e);return}function Li(a){a=a|0;return fk(a)|0}function Mi(a){a=a|0;return tb[c[(c[a>>2]|0)+76>>2]&127](a)|0}function Ni(a,b){a=a|0;b=b|0;Xi(a,c[b+12>>2]|0);return}function Oi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+12>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Wi(a,h,d,g);l=f;return}function Pi(a,b){a=a|0;b=b|0;Qi(a,c[b+12>>2]|0);return}function Qi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;e=l;l=l+32|0;f=e+24|0;g=e+12|0;h=e;i=b+4|0;c[i>>2]=0;j=b+8|0;c[j>>2]=0;k=b+4|0;c[b>>2]=k;m=d+32|0;n=d+24|0;while(1){o=c[c[m>>2]>>2]|0;p=c[o+8>>2]|0;q=c[o+12>>2]|0;r=(p|0)>(q|0);if(!r)if((p|0)<(q|0))s=p-q+(c[o+16>>2]|0)|0;else s=0;else s=p-q|0;t=c[n>>2]|0;if((s|0)<(t|0))break;Ri(d,b)}if(!r){if((p|0)<(q|0)){u=p-q+(c[o+16>>2]|0)|0;v=12}}else{u=p-q|0;v=12}if((v|0)==12?(u|0)>0:0){u=d+28|0;r=c[u>>2]|0;a:do if(r|0){s=0;w=r;x=o;y=p;z=q;A=t;while(1){B=x+8|0;if((y|0)<=(z|0))if((y|0)<(z|0))C=y-z+(c[x+16>>2]|0)|0;else C=0;else C=y-z|0;D=A-C|0;E=x+16|0;F=c[E>>2]|0;G=z-y+F|0;H=(G|0)>(F|0)?0-F|0:0;I=G+-1+H|0;G=(I|0)<(D|0)?I:D;if(!G)J=w;else{I=F-y|0;K=x+4|0;L=(c[K>>2]|0)+(y<<2)|0;if((G|0)>(I|0)){if((I|0)>0)eB(L|0,0,I<<2|0)|0;M=G-I|0;if((M|0)>0)eB(c[K>>2]|0,0,M<<2|0)|0}else if((G|0)>0){M=y-z-F-H|0;H=~D;eB(L|0,0,-4-(((M|0)>(H|0)?M:H)<<2)|0)|0}H=c[E>>2]|0;E=G+y|0;while(1)if((E|0)<(H|0))break;else E=E-H|0;c[B>>2]=E;J=c[u>>2]|0}H=s+1|0;if(H>>>0>=J>>>0)break a;G=c[(c[m>>2]|0)+(H<<2)>>2]|0;s=H;w=J;x=G;y=c[G+8>>2]|0;z=c[G+12>>2]|0;A=c[n>>2]|0}}while(0);Ri(d,b)}n=c[d>>2]|0;rb[c[(c[n>>2]|0)+100>>2]&127](g,n);n=c[g>>2]|0;J=g+4|0;if((n|0)==(J|0)){N=c[J>>2]|0;Zc(g,N);l=e;return}m=h+4|0;u=d+60|0;C=k;t=n;while(1){n=c[t+16>>2]|0;Si(h,t+20|0);q=c[m>>2]|0;p=c[h>>2]|0;o=p;if((q|0)==(p|0)){O=q;P=o}else{q=0;p=o;while(1){if((c[(c[u>>2]|0)+(n*100|0)+88>>2]|0)==1)Ti(d,n,p+(q*48|0)|0);o=c[k>>2]|0;do if(o){r=o;while(1){A=c[r+16>>2]|0;if((n|0)<(A|0)){z=c[r>>2]|0;if(!z){v=55;break}else Q=z}else{if((A|0)>=(n|0)){v=60;break}R=r+4|0;A=c[R>>2]|0;if(!A){v=59;break}else Q=A}r=Q}if((v|0)==55){v=0;c[f>>2]=r;S=r;T=r;break}else if((v|0)==59){v=0;c[f>>2]=r;S=r;T=R;break}else if((v|0)==60){v=0;c[f>>2]=r;S=r;T=f;break}}else{c[f>>2]=k;S=C;T=k}while(0);o=c[T>>2]|0;if(!o){E=$y(32)|0;c[E+16>>2]=n;c[E+20>>2]=0;c[E+24>>2]=0;c[E+28>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=S;c[T>>2]=E;B=c[c[b>>2]>>2]|0;if(!B)U=E;else{c[b>>2]=B;U=c[T>>2]|0}ic(c[i>>2]|0,U);c[j>>2]=(c[j>>2]|0)+1;V=E}else V=o;o=c[h>>2]|0;E=o+(q*48|0)|0;B=V+24|0;A=c[B>>2]|0;if((A|0)==(c[V+28>>2]|0))Ui(V+20|0,E);else{a[A>>0]=a[E>>0]|0;c[A+4>>2]=c[o+(q*48|0)+4>>2];c[A+8>>2]=c[o+(q*48|0)+8>>2];a[A+12>>0]=a[o+(q*48|0)+12>>0]|0;c[A+16>>2]=c[o+(q*48|0)+16>>2];c[A+20>>2]=c[o+(q*48|0)+20>>2];Kd(A+24|0,o+(q*48|0)+24|0);kz(A+36|0,o+(q*48|0)+36|0);c[B>>2]=(c[B>>2]|0)+48}q=q+1|0;B=c[m>>2]|0;o=c[h>>2]|0;A=o;if(q>>>0>=((B-o|0)/48|0)>>>0){O=B;P=A;break}else p=A}}p=O;if(P|0){if((p|0)==(P|0))W=p;else{q=p;do{c[m>>2]=q+-48;oz(q+-12|0);p=c[q+-24>>2]|0;n=p;if(p|0){A=q+-20|0;B=c[A>>2]|0;if((B|0)!=(p|0))c[A>>2]=B+(~((B+-4-n|0)>>>2)<<2);bz(p)}q=c[m>>2]|0}while((q|0)!=(P|0));W=c[h>>2]|0}bz(W)}q=c[t+4>>2]|0;if(!q){p=t;while(1){n=c[p+8>>2]|0;if((c[n>>2]|0)==(p|0)){X=n;break}else p=n}}else{p=q;while(1){n=c[p>>2]|0;if(!n){X=p;break}else p=n}}if((X|0)==(J|0))break;else t=X}N=c[J>>2]|0;Zc(g,N);l=e;return}function Ri(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0;e=l;l=l+48|0;f=e+40|0;h=e+24|0;i=e+12|0;j=e+32|0;k=e;m=b+28|0;if(!(c[m>>2]|0))n=b+44|0;else{o=b+32|0;p=b+44|0;q=b+24|0;r=0;while(1){s=c[(c[o>>2]|0)+(r<<2)>>2]|0;t=c[(c[p>>2]|0)+(r<<2)>>2]|0;u=c[q>>2]|0;v=c[s+8>>2]|0;w=s+12|0;x=c[w>>2]|0;if((v|0)<=(x|0))if((v|0)<(x|0))y=v-x+(c[s+16>>2]|0)|0;else y=0;else y=v-x|0;if((u|0)>(y|0)){eB(t+(y<<2)|0,0,u-y<<2|0)|0;z=y}else z=u;a:do if(z|0){u=c[w>>2]|0;x=(c[s+16>>2]|0)-u|0;v=c[s+4>>2]|0;A=v+(u<<2)|0;if((z|0)<=(x|0)){if((z|0)>0)B=0;else break;while(1){c[t+(B<<2)>>2]=c[A+(B<<2)>>2];B=B+1|0;if((B|0)>=(z|0))break a}}if((x|0)>0){u=0;do{c[t+(u<<2)>>2]=c[A+(u<<2)>>2];u=u+1|0}while((u|0)!=(x|0))}u=t+(x<<2)|0;A=z-x|0;if((A|0)>0){C=0;do{c[u+(C<<2)>>2]=c[v+(C<<2)>>2];C=C+1|0}while((C|0)<(A|0))}}while(0);r=r+1|0;if(r>>>0>=(c[m>>2]|0)>>>0){n=p;break}}}p=b+52|0;qk(h,c[p>>2]|0,~~(+g[b+48>>2]+.5));r=c[b>>2]|0;z=c[(c[r>>2]|0)+96>>2]|0;B=c[n>>2]|0;c[j>>2]=c[h>>2];n=h+4|0;c[j+4>>2]=c[n>>2];Ab[z&31](i,r,B,j);j=c[b>>2]|0;b:do if((j|0)!=0?(B=mA(j,800,872,0)|0,(B|0)!=0):0){r=B;while(1){D=mA(r,872,848,0)|0;if(D|0)break;B=c[r+8>>2]|0;if(!B){E=0;F=0;break b}r=mA(B,800,872,0)|0;if(!r){E=0;F=0;break b}}Lj(f,D);E=c[f>>2]|0;F=c[f+4>>2]|0}else{E=0;F=0}while(0);D=c[i>>2]|0;j=i+4|0;if((D|0)!=(j|0)){r=b+72|0;B=b+76|0;z=B;y=b+76|0;q=b+80|0;o=k+4|0;t=b+60|0;s=d+4|0;w=s;A=d+4|0;C=d+8|0;v=f+4|0;u=D;while(1){D=c[u+16>>2]|0;x=c[B>>2]|0;do if(x){G=x;while(1){H=c[G+16>>2]|0;if((D|0)<(H|0)){I=c[G>>2]|0;if(!I){J=33;break}else K=I}else{if((H|0)>=(D|0)){J=38;break}L=G+4|0;H=c[L>>2]|0;if(!H){J=37;break}else K=H}G=K}if((J|0)==33){J=0;c[f>>2]=G;M=G;N=G;break}else if((J|0)==37){J=0;c[f>>2]=G;M=G;N=L;break}else if((J|0)==38){J=0;c[f>>2]=G;M=G;N=f;break}}else{c[f>>2]=B;M=z;N=B}while(0);x=c[N>>2]|0;if(!x){H=$y(24)|0;c[H+16>>2]=D;a[H+20>>0]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=M;c[N>>2]=H;I=c[c[r>>2]>>2]|0;if(!I)O=H;else{c[r>>2]=I;O=c[N>>2]|0}ic(c[y>>2]|0,O);c[q>>2]=(c[q>>2]|0)+1;P=H}else P=x;if(!(a[P+20>>0]|0)){x=u+20|0;H=u+24|0;I=c[x>>2]|0;if((c[H>>2]|0)!=(I|0)){Q=0;R=I;do{I=R;S=c[s>>2]|0;do if(S){T=S;while(1){U=c[T+16>>2]|0;if((D|0)<(U|0)){V=c[T>>2]|0;if(!V){J=82;break}else W=V}else{if((U|0)>=(D|0)){J=87;break}X=T+4|0;U=c[X>>2]|0;if(!U){J=86;break}else W=U}T=W}if((J|0)==82){J=0;c[f>>2]=T;Y=T;Z=T;break}else if((J|0)==86){J=0;c[f>>2]=T;Y=T;Z=X;break}else if((J|0)==87){J=0;c[f>>2]=T;Y=T;Z=f;break}}else{c[f>>2]=s;Y=w;Z=s}while(0);S=c[Z>>2]|0;if(!S){G=$y(32)|0;c[G+16>>2]=D;c[G+20>>2]=0;c[G+24>>2]=0;c[G+28>>2]=0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=Y;c[Z>>2]=G;U=c[c[d>>2]>>2]|0;if(!U)_=G;else{c[d>>2]=U;_=c[Z>>2]|0}ic(c[A>>2]|0,_);c[C>>2]=(c[C>>2]|0)+1;$=G;aa=c[x>>2]|0}else{$=S;aa=I}S=aa+(Q*48|0)|0;G=$+24|0;U=c[G>>2]|0;if((U|0)==(c[$+28>>2]|0))Ui($+20|0,S);else{a[U>>0]=a[S>>0]|0;c[U+4>>2]=c[aa+(Q*48|0)+4>>2];c[U+8>>2]=c[aa+(Q*48|0)+8>>2];a[U+12>>0]=a[aa+(Q*48|0)+12>>0]|0;c[U+16>>2]=c[aa+(Q*48|0)+16>>2];c[U+20>>2]=c[aa+(Q*48|0)+20>>2];Kd(U+24|0,aa+(Q*48|0)+24|0);kz(U+36|0,aa+(Q*48|0)+36|0);c[G>>2]=(c[G>>2]|0)+48}Q=Q+1|0;R=c[x>>2]|0}while(Q>>>0<(((c[H>>2]|0)-R|0)/48|0)>>>0)}}else{Si(k,u+20|0);R=c[o>>2]|0;H=c[k>>2]|0;Q=H;c:do if((R|0)==(H|0)){ba=R;ca=Q}else{x=0;G=Q;while(1){switch(c[(c[t>>2]|0)+(D*100|0)+88>>2]|0){case 0:{nk(f,(c[h>>2]|0)+E|0,(c[n>>2]|0)+F|0);c[G+(x*48|0)+4>>2]=c[f>>2];c[G+(x*48|0)+8>>2]=c[v>>2];a[(c[k>>2]|0)+(x*48|0)>>0]=1;break}case 1:{Ti(b,D,G+(x*48|0)|0);break}default:{}}U=c[s>>2]|0;do if(U){S=U;while(1){V=c[S+16>>2]|0;if((D|0)<(V|0)){da=c[S>>2]|0;if(!da){J=64;break}else ea=da}else{if((V|0)>=(D|0)){J=69;break}fa=S+4|0;V=c[fa>>2]|0;if(!V){J=68;break}else ea=V}S=ea}if((J|0)==64){J=0;c[f>>2]=S;ga=S;ha=S;break}else if((J|0)==68){J=0;c[f>>2]=S;ga=S;ha=fa;break}else if((J|0)==69){J=0;c[f>>2]=S;ga=S;ha=f;break}}else{c[f>>2]=s;ga=w;ha=s}while(0);U=c[ha>>2]|0;if(!U){T=$y(32)|0;c[T+16>>2]=D;c[T+20>>2]=0;c[T+24>>2]=0;c[T+28>>2]=0;c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=ga;c[ha>>2]=T;V=c[c[d>>2]>>2]|0;if(!V)ia=T;else{c[d>>2]=V;ia=c[ha>>2]|0}ic(c[A>>2]|0,ia);c[C>>2]=(c[C>>2]|0)+1;ja=T}else ja=U;U=c[k>>2]|0;T=U+(x*48|0)|0;V=ja+24|0;da=c[V>>2]|0;if((da|0)==(c[ja+28>>2]|0))Ui(ja+20|0,T);else{a[da>>0]=a[T>>0]|0;c[da+4>>2]=c[U+(x*48|0)+4>>2];c[da+8>>2]=c[U+(x*48|0)+8>>2];a[da+12>>0]=a[U+(x*48|0)+12>>0]|0;c[da+16>>2]=c[U+(x*48|0)+16>>2];c[da+20>>2]=c[U+(x*48|0)+20>>2];Kd(da+24|0,U+(x*48|0)+24|0);kz(da+36|0,U+(x*48|0)+36|0);c[V>>2]=(c[V>>2]|0)+48}x=x+1|0;V=c[o>>2]|0;U=c[k>>2]|0;da=U;if(x>>>0>=((V-U|0)/48|0)>>>0){ba=V;ca=da;break c}else G=da}}while(0);D=ba;if(ca|0){if((D|0)==(ca|0))ka=D;else{Q=D;do{c[o>>2]=Q+-48;oz(Q+-12|0);D=c[Q+-24>>2]|0;R=D;if(D|0){H=Q+-20|0;G=c[H>>2]|0;if((G|0)!=(D|0))c[H>>2]=G+(~((G+-4-R|0)>>>2)<<2);bz(D)}Q=c[o>>2]|0}while((Q|0)!=(ca|0));ka=c[k>>2]|0}bz(ka)}}Q=c[u+4>>2]|0;if(!Q){D=u;while(1){R=c[D+8>>2]|0;if((c[R>>2]|0)==(D|0)){la=R;break}else D=R}}else{D=Q;while(1){R=c[D>>2]|0;if(!R){la=D;break}else D=R}}if((la|0)==(j|0))break;else u=la}}la=c[m>>2]|0;if(!la){ma=c[b+20>>2]|0;na=c[p>>2]|0;oa=na+ma|0;c[p>>2]=oa;pa=c[j>>2]|0;Zc(i,pa);l=e;return}m=c[b+32>>2]|0;u=c[b+20>>2]|0;b=0;do{ka=c[m+(b<<2)>>2]|0;k=c[ka+8>>2]|0;ca=ka+12|0;o=c[ca>>2]|0;if((k|0)<=(o|0))if((k|0)<(o|0))qa=k-o+(c[ka+16>>2]|0)|0;else qa=0;else qa=k-o|0;k=(qa|0)<(u|0)?qa:u;if(k|0){ba=c[ka+16>>2]|0;ka=k+o|0;while(1)if((ka|0)<(ba|0))break;else ka=ka-ba|0;c[ca>>2]=ka}b=b+1|0}while(b>>>0<la>>>0);ma=u;na=c[p>>2]|0;oa=na+ma|0;c[p>>2]=oa;pa=c[j>>2]|0;Zc(i,pa);l=e;return}function Si(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b>>2]=0;e=b+4|0;c[e>>2]=0;c[b+8>>2]=0;f=d+4|0;g=(c[f>>2]|0)-(c[d>>2]|0)|0;h=(g|0)/48|0;if(!g)return;if(h>>>0>89478485)Vx(b);i=$y(g)|0;c[e>>2]=i;c[b>>2]=i;c[b+8>>2]=i+(h*48|0);h=c[d>>2]|0;d=c[f>>2]|0;if((h|0)==(d|0))return;f=h;h=i;do{a[h>>0]=a[f>>0]|0;c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];a[h+12>>0]=a[f+12>>0]|0;c[h+16>>2]=c[f+16>>2];c[h+20>>2]=c[f+20>>2];Kd(h+24|0,f+24|0);kz(h+36|0,f+36|0);f=f+48|0;h=(c[e>>2]|0)+48|0;c[e>>2]=h}while((f|0)!=(d|0));return}function Ti(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;f=l;l=l+16|0;h=f+8|0;i=f;j=+g[(c[b+60>>2]|0)+(d*100|0)+92>>2];if(j==0.0)k=+g[b+48>>2]/+((c[b+20>>2]|0)>>>0);else k=j;j=k;if(!(a[e>>0]|0)){m=b+88|0;n=m;o=m;p=b+84|0}else{m=~~(j*(+(c[e+4>>2]|0)+ +(c[e+8>>2]|0)/1.0e9)+.5);q=b+84|0;r=b+88|0;s=c[r>>2]|0;do if(s){t=s;while(1){u=c[t+16>>2]|0;if((u|0)>(d|0)){v=c[t>>2]|0;if(!v){w=8;break}else x=v}else{if((u|0)>=(d|0)){w=13;break}y=t+4|0;u=c[y>>2]|0;if(!u){w=12;break}else x=u}t=x}if((w|0)==8){c[h>>2]=t;z=t;A=t;break}else if((w|0)==12){c[h>>2]=t;z=t;A=y;break}else if((w|0)==13){c[h>>2]=t;z=t;A=h;break}}else{c[h>>2]=r;z=r;A=r}while(0);y=c[A>>2]|0;if(!y){x=$y(24)|0;c[x+16>>2]=d;c[x+20>>2]=0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=z;c[A>>2]=x;z=c[c[q>>2]>>2]|0;if(!z)B=x;else{c[q>>2]=z;B=c[A>>2]|0}ic(c[b+88>>2]|0,B);B=b+92|0;c[B>>2]=(c[B>>2]|0)+1;C=x}else C=y;c[C+20>>2]=m;n=r;o=r;p=q}q=c[o>>2]|0;do if(q){r=q;while(1){m=c[r+16>>2]|0;if((m|0)>(d|0)){C=c[r>>2]|0;if(!C){w=23;break}else D=C}else{if((m|0)>=(d|0)){w=28;break}E=r+4|0;m=c[E>>2]|0;if(!m){w=27;break}else D=m}r=D}if((w|0)==23){c[h>>2]=r;F=r;G=r;break}else if((w|0)==27){c[h>>2]=r;F=r;G=E;break}else if((w|0)==28){c[h>>2]=r;F=r;G=h;break}}else{c[h>>2]=n;F=n;G=b+88|0}while(0);E=c[G>>2]|0;if(!E){D=$y(24)|0;c[D+16>>2]=d;c[D+20>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=F;c[G>>2]=D;F=c[c[p>>2]>>2]|0;if(!F)H=D;else{c[p>>2]=F;H=c[G>>2]|0}ic(c[b+88>>2]|0,H);H=b+92|0;c[H>>2]=(c[H>>2]|0)+1;I=D}else I=E;ok(i,+(c[I+20>>2]|0)/j);c[e+4>>2]=c[i>>2];c[e+8>>2]=c[i+4>>2];a[e>>0]=1;e=c[o>>2]|0;do if(e){i=e;while(1){I=c[i+16>>2]|0;if((I|0)>(d|0)){E=c[i>>2]|0;if(!E){w=37;break}else J=E}else{if((I|0)>=(d|0)){w=42;break}K=i+4|0;I=c[K>>2]|0;if(!I){w=41;break}else J=I}i=J}if((w|0)==37){c[h>>2]=i;L=i;M=i;break}else if((w|0)==41){c[h>>2]=i;L=i;M=K;break}else if((w|0)==42){c[h>>2]=i;L=i;M=h;break}}else{c[h>>2]=n;L=n;M=b+88|0}while(0);K=c[M>>2]|0;if(!K){J=$y(24)|0;c[J+16>>2]=d;c[J+20>>2]=0;c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=L;c[M>>2]=J;L=c[c[p>>2]>>2]|0;if(!L)N=J;else{c[p>>2]=L;N=c[M>>2]|0}ic(c[b+88>>2]|0,N);N=b+92|0;c[N>>2]=(c[N>>2]|0)+1;O=J;P=c[o>>2]|0}else{O=K;P=e}e=(c[O+20>>2]|0)+1|0;do if(P){O=P;while(1){K=c[O+16>>2]|0;if((K|0)>(d|0)){o=c[O>>2]|0;if(!o){w=51;break}else Q=o}else{if((K|0)>=(d|0)){w=56;break}R=O+4|0;K=c[R>>2]|0;if(!K){w=55;break}else Q=K}O=Q}if((w|0)==51){c[h>>2]=O;S=O;T=O;break}else if((w|0)==55){c[h>>2]=O;S=O;T=R;break}else if((w|0)==56){c[h>>2]=O;S=O;T=h;break}}else{c[h>>2]=n;S=n;T=b+88|0}while(0);n=c[T>>2]|0;if(n|0){U=n;V=U+20|0;c[V>>2]=e;l=f;return}n=$y(24)|0;c[n+16>>2]=d;c[n+20>>2]=0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=S;c[T>>2]=n;S=c[c[p>>2]>>2]|0;if(!S)W=n;else{c[p>>2]=S;W=c[T>>2]|0}ic(c[b+88>>2]|0,W);W=b+92|0;c[W>>2]=(c[W>>2]|0)+1;U=n;V=U+20|0;c[V>>2]=e;l=f;return}function Ui(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+32|0;f=e;g=c[b+4>>2]|0;h=c[b>>2]|0;i=((g-h|0)/48|0)+1|0;if(i>>>0>89478485)Vx(b);j=((c[b+8>>2]|0)-h|0)/48|0;k=j<<1;m=j>>>0<44739242?(k>>>0<i>>>0?i:k):89478485;k=(g-h|0)/48|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(m)if(m>>>0>89478485){h=Ea(4)|0;ZA(h);_a(h|0,6864,245)}else{n=$y(m*48|0)|0;break}else n=0;while(0);c[f>>2]=n;h=n+(k*48|0)|0;g=f+8|0;c[g>>2]=h;i=f+4|0;c[i>>2]=h;c[f+12>>2]=n+(m*48|0);a[h>>0]=a[d>>0]|0;c[n+(k*48|0)+4>>2]=c[d+4>>2];c[n+(k*48|0)+8>>2]=c[d+8>>2];a[n+(k*48|0)+12>>0]=a[d+12>>0]|0;c[n+(k*48|0)+16>>2]=c[d+16>>2];c[n+(k*48|0)+20>>2]=c[d+20>>2];Kd(n+(k*48|0)+24|0,d+24|0);kz(n+(k*48|0)+36|0,d+36|0);c[g>>2]=h+48;Vi(b,f);b=c[i>>2]|0;i=c[g>>2]|0;if((i|0)!=(b|0)){h=i;do{c[g>>2]=h+-48;oz(h+-12|0);i=c[h+-24>>2]|0;d=i;if(i|0){k=h+-20|0;n=c[k>>2]|0;if((n|0)!=(i|0))c[k>>2]=n+(~((n+-4-d|0)>>>2)<<2);bz(i)}h=c[g>>2]|0}while((h|0)!=(b|0))}b=c[f>>2]|0;if(!b){l=e;return}bz(b);l=e;return}function Vi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c[b>>2]|0;f=b+4|0;g=c[f>>2]|0;h=d+4|0;if((g|0)==(e|0)){i=h;j=b;k=c[h>>2]|0;l=e}else{m=g;g=c[h>>2]|0;do{n=m;m=m+-48|0;a[g+-48>>0]=a[m>>0]|0;c[g+-44>>2]=c[n+-44>>2];c[g+-40>>2]=c[n+-40>>2];a[g+-36>>0]=a[n+-36>>0]|0;c[g+-32>>2]=c[n+-32>>2];c[g+-28>>2]=c[n+-28>>2];Kd(g+-24|0,n+-24|0);kz(g+-12|0,n+-12|0);g=(c[h>>2]|0)+-48|0;c[h>>2]=g}while((m|0)!=(e|0));i=h;j=b;k=g;l=c[b>>2]|0}c[j>>2]=k;c[i>>2]=l;l=d+8|0;k=c[f>>2]|0;c[f>>2]=c[l>>2];c[l>>2]=k;k=b+8|0;b=d+12|0;l=c[k>>2]|0;c[k>>2]=c[b>>2];c[b>>2]=l;c[d>>2]=c[i>>2];return}function Wi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;h=l;l=l+16|0;i=h+12|0;j=h;if(!(c[d+4>>2]|0)){k=fe(43100,31258,71)|0;c[i>>2]=iq(k+(c[(c[k>>2]|0)+-12>>2]|0)|0)|0;m=Hr(i,43804)|0;n=Bb[c[(c[m>>2]|0)+28>>2]&63](m,10)|0;Oy(i);Aq(k,n)|0;nq(k)|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;l=h;return}c[j+4>>2]=0;k=j+8|0;c[k>>2]=0;n=j+4|0;c[j>>2]=n;m=d+56|0;if(a[m>>0]|0){c[d+52>>2]=pk(f,~~(+g[d+48>>2]+.5))|0;a[m>>0]=0}m=d+28|0;f=c[m>>2]|0;o=d+32|0;if(!f)p=d+24|0;else{q=d+8|0;r=d+20|0;s=d+24|0;t=0;u=f;while(1){f=c[(c[o>>2]|0)+(t<<2)>>2]|0;v=c[e+(t<<2)>>2]|0;w=c[q>>2]|0;x=f+8|0;y=c[x>>2]|0;z=c[f+16>>2]|0;A=(c[f+12>>2]|0)-y+z|0;B=A+-1+((A|0)>(z|0)?0-z|0:0)|0;A=(B|0)<(w|0);C=A?B:w;if(C|0){w=z-y|0;B=c[f+4>>2]|0;f=B+(y<<2)|0;if((C|0)>(w|0)){if((w|0)>0){D=0;do{c[f+(D<<2)>>2]=c[v+(D<<2)>>2];D=D+1|0}while((D|0)!=(w|0))}D=C-w|0;E=v+(w<<2)|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))}}else if((C|0)>0){D=0;do{c[f+(D<<2)>>2]=c[v+(D<<2)>>2];D=D+1|0}while((D|0)<(C|0))}D=C+y|0;while(1)if((D|0)<(z|0))break;else D=D-z|0;c[x>>2]=D}if((t|0)==0&A){z=fe(wq(fe(fe(43100,31330,48)|0,31379,23)|0,C)|0,31403,4)|0;y=fe(xq(z,c[q>>2]|0)|0,31408,37)|0;z=fe(xq(y,c[r>>2]|0)|0,31446,13)|0;y=fe(xq(z,c[s>>2]|0)|0,31460,1)|0;c[i>>2]=iq(y+(c[(c[y>>2]|0)+-12>>2]|0)|0)|0;z=Hr(i,43804)|0;v=Bb[c[(c[z>>2]|0)+28>>2]&63](z,10)|0;Oy(i);Aq(y,v)|0;nq(y)|0;G=c[m>>2]|0}else G=u;t=t+1|0;if(t>>>0>=G>>>0){p=s;break}else u=G}}while(1){G=c[c[o>>2]>>2]|0;u=c[G+8>>2]|0;s=c[G+12>>2]|0;if((u|0)<=(s|0))if((u|0)<(s|0))H=u-s+(c[G+16>>2]|0)|0;else H=0;else H=u-s|0;if((H|0)<(c[p>>2]|0))break;Ri(d,j)}c[b>>2]=c[j>>2];d=c[j+4>>2]|0;c[b+4>>2]=d;p=c[k>>2]|0;c[b+8>>2]=p;H=b+4|0;if(!p){c[b>>2]=H;I=d}else{c[d+8>>2]=H;c[j>>2]=n;c[n>>2]=0;c[k>>2]=0;I=0}Zc(j,I);l=h;return}function Xi(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;e=l;l=l+16|0;f=e;h=d+60|0;i=d+64|0;if((c[h>>2]|0)==(c[i>>2]|0)){j=c[d>>2]|0;rb[c[(c[j>>2]|0)+92>>2]&127](f,j);Wc(h);c[h>>2]=c[f>>2];j=f+4|0;c[i>>2]=c[j>>2];i=f+8|0;c[d+68>>2]=c[i>>2];c[i>>2]=0;c[j>>2]=0;c[f>>2]=0;Zb(f)}Yi(b,h);h=b+4|0;j=c[b>>2]|0;if(((c[h>>2]|0)-j|0)<=0){l=e;return}i=d+48|0;k=d+20|0;m=d+72|0;n=d+76|0;o=n;p=d+76|0;q=d+80|0;d=j;j=0;do{r=d;s=r+(j*100|0)+88|0;switch(c[s>>2]|0){case 0:{c[s>>2]=1;g[r+(j*100|0)+92>>2]=+g[i>>2]/+((c[k>>2]|0)>>>0);s=c[n>>2]|0;do if(s){t=s;while(1){u=c[t+16>>2]|0;if((j|0)<(u|0)){v=c[t>>2]|0;if(!v){w=10;break}else x=v}else{if((u|0)>=(j|0)){w=15;break}y=t+4|0;u=c[y>>2]|0;if(!u){w=14;break}else x=u}t=x}if((w|0)==10){w=0;c[f>>2]=t;z=t;A=t;break}else if((w|0)==14){w=0;c[f>>2]=t;z=t;A=y;break}else if((w|0)==15){w=0;c[f>>2]=t;z=t;A=f;break}}else{c[f>>2]=n;z=o;A=n}while(0);s=c[A>>2]|0;if(!s){u=$y(24)|0;c[u+16>>2]=j;a[u+20>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=z;c[A>>2]=u;v=c[c[m>>2]>>2]|0;if(!v)B=u;else{c[m>>2]=v;B=c[A>>2]|0}ic(c[p>>2]|0,B);c[q>>2]=(c[q>>2]|0)+1;C=u}else C=s;a[C+20>>0]=1;break}case 1:{s=r+(j*100|0)+92|0;if(+g[s>>2]==0.0)g[s>>2]=+g[i>>2]/+((c[k>>2]|0)>>>0);s=c[n>>2]|0;do if(s){u=s;while(1){v=c[u+16>>2]|0;if((j|0)<(v|0)){D=c[u>>2]|0;if(!D){w=27;break}else E=D}else{if((v|0)>=(j|0)){w=32;break}F=u+4|0;v=c[F>>2]|0;if(!v){w=31;break}else E=v}u=E}if((w|0)==27){w=0;c[f>>2]=u;G=u;H=u;break}else if((w|0)==31){w=0;c[f>>2]=u;G=u;H=F;break}else if((w|0)==32){w=0;c[f>>2]=u;G=u;H=f;break}}else{c[f>>2]=n;G=o;H=n}while(0);s=c[H>>2]|0;if(!s){r=$y(24)|0;c[r+16>>2]=j;a[r+20>>0]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=G;c[H>>2]=r;t=c[c[m>>2]>>2]|0;if(!t)I=r;else{c[m>>2]=t;I=c[H>>2]|0}ic(c[p>>2]|0,I);c[q>>2]=(c[q>>2]|0)+1;J=r}else J=s;a[J+20>>0]=1;break}case 2:{s=c[n>>2]|0;do if(s){r=s;while(1){t=c[r+16>>2]|0;if((j|0)<(t|0)){v=c[r>>2]|0;if(!v){w=42;break}else K=v}else{if((t|0)>=(j|0)){w=47;break}L=r+4|0;t=c[L>>2]|0;if(!t){w=46;break}else K=t}r=K}if((w|0)==42){w=0;c[f>>2]=r;M=r;N=r;break}else if((w|0)==46){w=0;c[f>>2]=r;M=r;N=L;break}else if((w|0)==47){w=0;c[f>>2]=r;M=r;N=f;break}}else{c[f>>2]=n;M=o;N=n}while(0);s=c[N>>2]|0;if(!s){u=$y(24)|0;c[u+16>>2]=j;a[u+20>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=M;c[N>>2]=u;t=c[c[m>>2]>>2]|0;if(!t)O=u;else{c[m>>2]=t;O=c[N>>2]|0}ic(c[p>>2]|0,O);c[q>>2]=(c[q>>2]|0)+1;P=u}else P=s;a[P+20>>0]=0;break}default:{}}j=j+1|0;d=c[b>>2]|0}while((j|0)<(((c[h>>2]|0)-d|0)/100|0|0));l=e;return}function Yi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/100|0;if(!f)return;if(g>>>0>42949672)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*100|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{Zi(g,e);e=e+100|0;g=(c[d>>2]|0)+100|0;c[d>>2]=g}while((e|0)!=(b|0));return}function Zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;kz(b,d);kz(b+12|0,d+12|0);kz(b+24|0,d+24|0);kz(b+36|0,d+36|0);e=d+48|0;f=c[e+4>>2]|0;g=b+48|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;od(b+56|0,d+56|0);f=b+68|0;b=d+68|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];a[f+28>>0]=a[b+28>>0]|0;return}function _i(a,b){a=a|0;b=b|0;if(!b)return;else{_i(a,c[b>>2]|0);_i(a,c[b+4>>2]|0);bz(b);return}} function Pd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23325,10);Tl(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23336,4);Tl(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23341,11);Tl(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;tm(a,g);dd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)Yy(b);oz(h+40|0);b=c[h+36>>2]|0;if(b|0)Yy(b);oz(h+20|0);b=c[h+16>>2]|0;if(!b){oz(h);l=d;return}Yy(b);oz(h);l=d;return}function Qd(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;e=l;l=l+144|0;f=e+136|0;h=e+124|0;i=e+104|0;j=e+24|0;k=e+12|0;m=e;n=e+120|0;o=e+116|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23187,4);Tl(j+12|0,d+36|0);switch(c[d+88>>2]|0){case 0:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23192,16);break}case 1:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23209,15);break}case 2:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23225,18);break}default:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,47807,0)}}p=j+20|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;lz(p,23244,10);em(j+32|0,k);p=j+40|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;lz(p,23255,10);ul(j+52|0,+g[d+92>>2]);p=j+60|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;lz(p,23266,11);Sl(j+72|0,(a[d+96>>0]|0)!=0);p=i+4|0;c[p>>2]=0;q=i+8|0;c[q>>2]=0;r=i+4|0;c[i>>2]=r;s=r;c[h>>2]=s;c[f>>2]=c[h>>2];jd(i,f,j,j)|0;t=j+20|0;c[h>>2]=s;c[f>>2]=c[h>>2];jd(i,f,t,t)|0;t=j+40|0;c[h>>2]=s;c[f>>2]=c[h>>2];jd(i,f,t,t)|0;t=j+60|0;c[h>>2]=s;c[f>>2]=c[h>>2];jd(i,f,t,t)|0;t=c[j+76>>2]|0;if(t|0)Yy(t);oz(j+60|0);t=c[j+56>>2]|0;if(t|0)Yy(t);oz(j+40|0);t=c[j+36>>2]|0;if(t|0)Yy(t);oz(j+20|0);t=c[j+16>>2]|0;if(t|0)Yy(t);oz(j);oz(k);if(a[d+48>>0]|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23278,8);t=ad(i,f,h)|0;s=c[t>>2]|0;if(!s){u=$y(36)|0;v=u+16|0;c[v>>2]=c[h>>2];c[v+4>>2]=c[h+4>>2];c[v+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(u+28|0);v=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=v;c[t>>2]=u;v=c[c[i>>2]>>2]|0;if(!v)w=u;else{c[i>>2]=v;w=c[t>>2]|0}ic(c[p>>2]|0,w);c[q>>2]=(c[q>>2]|0)+1;x=u}else x=s;Gl(f,c[d+52>>2]|0);s=c[f>>2]|0;u=f+4|0;w=c[u>>2]|0;c[f>>2]=0;c[u>>2]=0;c[x+28>>2]=s;s=x+32|0;x=c[s>>2]|0;c[s>>2]=w;if(x|0?(Yy(x),x=c[u>>2]|0,x|0):0)Yy(x);oz(h);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23287,8);x=ad(i,f,j)|0;u=c[x>>2]|0;if(!u){w=$y(36)|0;s=w+16|0;c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(w+28|0);s=c[f>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=s;c[x>>2]=w;s=c[c[i>>2]>>2]|0;if(!s)y=w;else{c[i>>2]=s;y=c[x>>2]|0}ic(c[p>>2]|0,y);c[q>>2]=(c[q>>2]|0)+1;z=w}else z=u;c[n>>2]=c[d+56>>2];c[o>>2]=c[d+60>>2];c[h>>2]=c[n>>2];c[f>>2]=c[o>>2];Rd(m,h,f);mm(k,m);o=c[k>>2]|0;n=k+4|0;u=c[n>>2]|0;c[k>>2]=0;c[n>>2]=0;c[z+28>>2]=o;o=z+32|0;z=c[o>>2]|0;c[o>>2]=u;if(z|0?(Yy(z),z=c[n>>2]|0,z|0):0)Yy(z);z=c[m>>2]|0;if(z|0){n=m+4|0;u=c[n>>2]|0;if((u|0)==(z|0))A=z;else{o=u;while(1){u=o+-8|0;c[n>>2]=u;k=c[o+-4>>2]|0;if(!k)B=u;else{Yy(k);B=c[n>>2]|0}if((B|0)==(z|0))break;else o=B}A=c[m>>2]|0}bz(A)}oz(j)}if(a[d+68>>0]|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23296,7);j=ad(i,f,h)|0;A=c[j>>2]|0;if(!A){m=$y(36)|0;B=m+16|0;c[B>>2]=c[h>>2];c[B+4>>2]=c[h+4>>2];c[B+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(m+28|0);B=c[f>>2]|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=B;c[j>>2]=m;B=c[c[i>>2]>>2]|0;if(!B)C=m;else{c[i>>2]=B;C=c[j>>2]|0}ic(c[p>>2]|0,C);c[q>>2]=(c[q>>2]|0)+1;D=m}else D=A;Sd(f,d);A=c[f>>2]|0;m=f+4|0;C=c[m>>2]|0;c[f>>2]=0;c[m>>2]=0;c[D+28>>2]=A;A=D+32|0;D=c[A>>2]|0;c[A>>2]=C;if(D|0?(Yy(D),D=c[m>>2]|0,D|0):0)Yy(D);oz(h)}if(!(a[d+80>>0]|0)){nm(b,i);E=c[r>>2]|0;dd(i,E);l=e;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23304,12);D=ad(i,f,h)|0;m=c[D>>2]|0;if(!m){C=$y(36)|0;A=C+16|0;c[A>>2]=c[h>>2];c[A+4>>2]=c[h+4>>2];c[A+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(C+28|0);A=c[f>>2]|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=A;c[D>>2]=C;A=c[c[i>>2]>>2]|0;if(!A)F=C;else{c[i>>2]=A;F=c[D>>2]|0}ic(c[p>>2]|0,F);c[q>>2]=(c[q>>2]|0)+1;G=C}else G=m;ul(f,+g[d+84>>2]);d=c[f>>2]|0;m=f+4|0;C=c[m>>2]|0;c[f>>2]=0;c[m>>2]=0;c[G+28>>2]=d;d=G+32|0;G=c[d>>2]|0;c[d>>2]=C;if(G|0?(Yy(G),G=c[m>>2]|0,G|0):0)Yy(G);oz(h);nm(b,i);E=c[r>>2]|0;dd(i,E);l=e;return}function Rd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=c[b>>2]|0;b=c[d>>2]|0;d=b-f|0;g=(d|0)/12|0;h=f;f=b;if(!d)return;if(g>>>0>536870911)Vx(a);d=$y(g<<3)|0;c[e>>2]=d;c[a>>2]=d;c[a+8>>2]=d+(g<<3);if((h|0)==(f|0))return;g=d;d=h;do{Tl(g,d);d=d+12|0;g=(c[e>>2]|0)+8|0;c[e>>2]=g}while((d|0)!=(f|0));return}function Sd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0;d=l;l=l+64|0;e=d+56|0;f=d+52|0;h=d+40|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23317,3);ul(i+12|0,+g[b+72>>2]);j=i+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23321,3);ul(i+32|0,+g[b+76>>2]);c[h+4>>2]=0;c[h+8>>2]=0;b=h+4|0;c[h>>2]=b;j=b;c[f>>2]=j;c[e>>2]=c[f>>2];jd(h,e,i,i)|0;k=i+20|0;c[f>>2]=j;c[e>>2]=c[f>>2];jd(h,e,k,k)|0;tm(a,h);dd(h,c[b>>2]|0);b=c[i+36>>2]|0;if(b|0)Yy(b);oz(i+20|0);b=c[i+16>>2]|0;if(!b){oz(i);l=d;return}Yy(b);oz(i);l=d;return}function Td(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=b+4|0;h=c[d>>2]|0;d=h;do if((h|0)!=(g|0)){i=h+16|0;j=a[f+11>>0]|0;k=j<<24>>24<0;l=k?c[f+4>>2]|0:j&255;j=a[i+11>>0]|0;m=j<<24>>24<0;n=m?c[h+20>>2]|0:j&255;j=n>>>0<l>>>0;o=j?n:l;if((o|0)!=0?(p=Xn(k?c[f>>2]|0:f,m?c[i>>2]|0:i,o)|0,(p|0)!=0):0){if((p|0)<0)break}else q=4;if((q|0)==4?l>>>0<n>>>0:0)break;p=l>>>0<n>>>0?l:n;if((p|0)!=0?(n=Xn(m?c[i>>2]|0:i,k?c[f>>2]|0:f,p)|0,(n|0)!=0):0){if((n|0)>=0)q=34}else q=20;if((q|0)==20?!j:0)q=34;if((q|0)==34){c[e>>2]=d;r=e;return r|0}j=h+4|0;n=c[j>>2]|0;p=(n|0)==0;if(p){i=h;while(1){m=c[i+8>>2]|0;if((c[m>>2]|0)==(i|0)){s=m;break}else i=m}}else{i=n;while(1){m=c[i>>2]|0;if(!m){s=i;break}else i=m}}do if((s|0)!=(g|0)){i=s+16|0;n=a[i+11>>0]|0;m=n<<24>>24<0;o=m?c[s+20>>2]|0:n&255;n=o>>>0<l>>>0?o:l;if((n|0)!=0?(t=Xn(k?c[f>>2]|0:f,m?c[i>>2]|0:i,n)|0,(t|0)!=0):0){if((t|0)<0)break}else q=28;if((q|0)==28?l>>>0<o>>>0:0)break;r=hc(b,e,f)|0;return r|0}while(0);if(p){c[e>>2]=h;r=j;return r|0}else{c[e>>2]=s;r=s;return r|0}}while(0);do if((h|0)==(c[b>>2]|0))u=d;else{s=c[h>>2]|0;if(!s){g=h;while(1){l=c[g+8>>2]|0;if((c[l>>2]|0)==(g|0))g=l;else{v=l;break}}}else{g=s;while(1){j=c[g+4>>2]|0;if(!j){v=g;break}else g=j}}g=v;s=v+16|0;j=a[s+11>>0]|0;p=j<<24>>24<0;l=p?c[v+20>>2]|0:j&255;j=a[f+11>>0]|0;k=j<<24>>24<0;o=k?c[f+4>>2]|0:j&255;j=o>>>0<l>>>0?o:l;if((j|0)!=0?(t=Xn(p?c[s>>2]|0:s,k?c[f>>2]|0:f,j)|0,(t|0)!=0):0){if((t|0)<0){u=g;break}}else q=12;if((q|0)==12?l>>>0<o>>>0:0){u=g;break}r=hc(b,e,f)|0;return r|0}while(0);if(!(c[h>>2]|0)){c[e>>2]=h;r=h;return r|0}else{h=u;c[e>>2]=h;r=h+4|0;return r|0}return 0}function Ud(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=l;l=l+112|0;h=g+64|0;i=g+24|0;j=g+16|0;k=g;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22268,6);c[i+12>>2]=1;m=i+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,23353,13);c[i+28>>2]=5;c[h>>2]=i;c[h+4>>2]=2;m=Km(d,h,f)|0;oz(i+16|0);oz(i);if(!m){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=f+11|0;n=a[m>>0]|0;o=f+4|0;p=n<<24>>24<0?c[o>>2]|0:n&255;Gz(h,23367,33,p+33|0);xz(h,(a[m>>0]|0)<0?c[f>>2]|0:f,p)|0;if((a[m>>0]|0)<0){a[c[f>>2]>>0]=0;c[o>>2]=0}else{a[f>>0]=0;a[m>>0]=0}sz(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;m=b+28|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;l=g;return}m=h+16|0;c[h+20>>2]=0;o=h+24|0;c[o>>2]=0;p=h+20|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[m>>2]=p;n=h+28|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;q=c[(c[e>>2]|0)+12>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22268,6);r=wm(Am(d,i)|0)|0;c[h>>2]=Bb[q&63](e,r)|0;oz(i);r=h+4|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23353,13);e=Am(d,k)|0;c[j>>2]=c[e>>2];d=j+4|0;q=c[e+4>>2]|0;c[d>>2]=q;if(q|0)Xy(q);Vd(i,j,f);c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];j=i+12|0;fc(m,c[p>>2]|0);c[m>>2]=c[j>>2];q=i+16|0;e=c[q>>2]|0;c[p>>2]=e;s=i+20|0;t=c[s>>2]|0;c[o>>2]=t;if(!t)c[m>>2]=p;else{c[e+8>>2]=p;c[j>>2]=q;c[q>>2]=0;c[s>>2]=0}s=i+24|0;j=n+11|0;if((a[j>>0]|0)<0){a[c[n>>2]>>0]=0;c[h+32>>2]=0}else{a[n>>0]=0;a[j>>0]=0}sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);fc(i+12|0,c[q>>2]|0);q=c[d>>2]|0;if(q|0)Yy(q);oz(k);k=a[f+11>>0]|0;if(((k<<24>>24<0?c[f+4>>2]|0:k&255)|0)==0?(Fz(f,0,-1,47807,0)|0)==0:0){c[b>>2]=c[h>>2];f=b+4|0;c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];r=b+16|0;c[r>>2]=c[m>>2];f=c[h+20>>2]|0;c[b+20>>2]=f;k=c[o>>2]|0;c[b+24>>2]=k;q=b+20|0;if(!k)c[r>>2]=q;else{c[f+8>>2]=q;c[m>>2]=p;c[p>>2]=0;c[o>>2]=0}o=b+28|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0}else{c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;o=b+28|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0}oz(n);fc(h+16|0,c[p>>2]|0);l=g;return}function Vd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0;f=l;l=l+112|0;h=f+88|0;i=f+72|0;j=f+40|0;k=f;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23401,12);c[i+12>>2]=1;c[h>>2]=i;c[h+4>>2]=1;m=Km(d,h,e)|0;oz(i);if(!m){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=e+11|0;n=a[m>>0]|0;o=e+4|0;p=n<<24>>24<0?c[o>>2]|0:n&255;Gz(h,23414,32,p+32|0);xz(h,(a[m>>0]|0)<0?c[e>>2]|0:e,p)|0;if((a[m>>0]|0)<0){a[c[e>>2]>>0]=0;c[o>>2]=0}else{a[e>>0]=0;a[m>>0]=0}sz(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;m=b+24|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23162,7);m=Am(d,h)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23143,8);c[j+12>>2]=1;o=j+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;lz(o,23152,9);c[j+28>>2]=1;c[i>>2]=j;c[i+4>>2]=2;o=Km(m,i,e)|0;oz(j+16|0);oz(j);oz(h);if(!o){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;o=e+11|0;m=a[o>>0]|0;p=e+4|0;n=m<<24>>24<0?c[p>>2]|0:m&255;Gz(h,23447,19,n+19|0);xz(h,(a[o>>0]|0)<0?c[e>>2]|0:e,n)|0;if((a[o>>0]|0)<0){a[c[e>>2]>>0]=0;c[p>>2]=0}else{a[e>>0]=0;a[o>>0]=0}sz(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;o=b+24|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23467,15);if(um(Am(d,h)|0)|0){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23467,15);o=(um(Am(d,i)|0)|0)==5;oz(i);oz(h);if(!o){tz(e,23483)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;o=b+24|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;l=f;return}}else oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23467,15);o=zm(Am(d,h)|0)|0;oz(h);p=c[o>>2]|0;n=o+4|0;a:do if((p|0)!=(n|0)){o=p;while(1){if((um(o+28|0)|0)!=1)break;m=c[o+4>>2]|0;if(!m){q=o;while(1){r=c[q+8>>2]|0;if((c[r>>2]|0)==(q|0)){s=r;break}else q=r}}else{q=m;while(1){r=c[q>>2]|0;if(!r){s=q;break}else q=r}}if((s|0)==(n|0))break a;else o=s}tz(e,23520)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;o=b+24|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;l=f;return}while(0);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23556,14);if(um(Am(d,h)|0)|0){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23556,14);s=(um(Am(d,i)|0)|0)==3;oz(i);oz(h);if(!s){tz(e,23571)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;e=b+24|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;l=f;return}}else oz(h);c[k>>2]=0;e=k+4|0;c[e>>2]=0;s=k+8|0;c[s>>2]=0;n=k+12|0;c[k+16>>2]=0;p=k+20|0;c[p>>2]=0;o=k+16|0;c[n>>2]=o;q=k+24|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23401,12);c[k>>2]=~~+vB(+(+vm(Am(d,h)|0)));oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23162,7);m=Am(d,h)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23143,8);c[e>>2]=~~+vB(+(+vm(Am(m,i)|0)));oz(i);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23162,7);m=Am(d,h)|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23152,9);c[s>>2]=~~+vB(+(+vm(Am(m,i)|0)));oz(i);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23467,15);m=zm(Am(d,h)|0)|0;oz(h);s=c[m>>2]|0;e=m+4|0;if((s|0)!=(e|0)){m=s;while(1){t=+vm(m+28|0);s=m+16|0;c[h>>2]=s;gc(j,n,s,45733,h,i);g[(c[j>>2]|0)+28>>2]=t;s=c[m+4>>2]|0;if(!s){r=m;while(1){u=c[r+8>>2]|0;if((c[u>>2]|0)==(r|0)){v=u;break}else r=u}}else{r=s;while(1){u=c[r>>2]|0;if(!u){v=r;break}else r=u}}if((v|0)==(e|0))break;else m=v}};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23556,14);v=(um(Am(d,h)|0)|0)==3;oz(h);if(v){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23556,14);pz(q,xm(Am(d,h)|0)|0)|0;oz(h)};c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];h=b+12|0;c[h>>2]=c[n>>2];d=c[k+16>>2]|0;c[b+16>>2]=d;v=c[p>>2]|0;c[b+20>>2]=v;m=b+16|0;if(!v)c[h>>2]=m;else{c[d+8>>2]=m;c[n>>2]=o;c[o>>2]=0;c[p>>2]=0}p=b+24|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;oz(q);fc(k+12|0,c[o>>2]|0);l=f;return}function Wd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=l;l=l+32|0;f=e+24|0;g=e+12|0;h=e;i=g+4|0;c[i>>2]=0;j=g+8|0;c[j>>2]=0;k=g+4|0;c[g>>2]=k;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22268,6);m=ad(g,f,h)|0;n=c[m>>2]|0;if(!n){o=$y(36)|0;p=o+16|0;c[p>>2]=c[h>>2];c[p+4>>2]=c[h+4>>2];c[p+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(o+28|0);p=c[f>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=p;c[m>>2]=o;p=c[c[g>>2]>>2]|0;if(!p)q=o;else{c[g>>2]=p;q=c[m>>2]|0}ic(c[i>>2]|0,q);c[j>>2]=(c[j>>2]|0)+1;r=o}else r=n;ul(f,+((Bb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));d=c[f>>2]|0;n=f+4|0;o=c[n>>2]|0;c[f>>2]=0;c[n>>2]=0;c[r+28>>2]=d;d=r+32|0;r=c[d>>2]|0;c[d>>2]=o;if(r|0?(Yy(r),r=c[n>>2]|0,r|0):0)Yy(r);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23626,10);r=ad(g,f,h)|0;n=c[r>>2]|0;if(!n){o=$y(36)|0;d=o+16|0;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(o+28|0);d=c[f>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=d;c[r>>2]=o;d=c[c[g>>2]>>2]|0;if(!d)s=o;else{c[g>>2]=d;s=c[r>>2]|0}ic(c[i>>2]|0,s);c[j>>2]=(c[j>>2]|0)+1;t=o}else t=n;Xd(f,b+4|0);n=c[f>>2]|0;o=f+4|0;s=c[o>>2]|0;c[f>>2]=0;c[o>>2]=0;c[t+28>>2]=n;n=t+32|0;t=c[n>>2]|0;c[n>>2]=s;if(t|0?(Yy(t),t=c[o>>2]|0,t|0):0)Yy(t);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23637,20);t=ad(g,f,h)|0;o=c[t>>2]|0;if(!o){s=$y(36)|0;n=s+16|0;c[n>>2]=c[h>>2];c[n+4>>2]=c[h+4>>2];c[n+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(s+28|0);n=c[f>>2]|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=n;c[t>>2]=s;n=c[c[g>>2]>>2]|0;if(!n)u=s;else{c[g>>2]=n;u=c[t>>2]|0}ic(c[i>>2]|0,u);c[j>>2]=(c[j>>2]|0)+1;v=s}else v=o;Yd(f,b+140|0);b=c[f>>2]|0;o=f+4|0;s=c[o>>2]|0;c[f>>2]=0;c[o>>2]=0;c[v+28>>2]=b;b=v+32|0;v=c[b>>2]|0;c[b>>2]=s;if(!v){oz(h);nm(a,g);w=c[k>>2]|0;dd(g,w);l=e;return}Yy(v);v=c[o>>2]|0;if(!v){oz(h);nm(a,g);w=c[k>>2]|0;dd(g,w);l=e;return}Yy(v);oz(h);nm(a,g);w=c[k>>2]|0;dd(g,w);l=e;return}function Xd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;d=l;l=l+128|0;e=d+112|0;f=d+96|0;g=d+84|0;h=d+72|0;i=d+60|0;j=d+48|0;k=d+36|0;m=d+24|0;n=d+12|0;o=d;p=f+4|0;c[p>>2]=0;q=f+8|0;c[q>>2]=0;r=f+4|0;c[f>>2]=r;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,23658,3);s=ad(f,e,g)|0;t=c[s>>2]|0;if(!t){u=$y(36)|0;v=u+16|0;c[v>>2]=c[g>>2];c[v+4>>2]=c[g+4>>2];c[v+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ck(u+28|0);v=c[e>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=v;c[s>>2]=u;v=c[c[f>>2]>>2]|0;if(!v)w=u;else{c[f>>2]=v;w=c[s>>2]|0}ic(c[p>>2]|0,w);c[q>>2]=(c[q>>2]|0)+1;x=u}else x=t;Tl(e,b);t=c[e>>2]|0;u=e+4|0;w=c[u>>2]|0;c[e>>2]=0;c[u>>2]=0;c[x+28>>2]=t;t=x+32|0;x=c[t>>2]|0;c[t>>2]=w;if(x|0?(Yy(x),x=c[u>>2]|0,x|0):0)Yy(x);oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,23170,5);x=ad(f,e,g)|0;u=c[x>>2]|0;if(!u){w=$y(36)|0;t=w+16|0;c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ck(w+28|0);t=c[e>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=t;c[x>>2]=w;t=c[c[f>>2]>>2]|0;if(!t)y=w;else{c[f>>2]=t;y=c[x>>2]|0}ic(c[p>>2]|0,y);c[q>>2]=(c[q>>2]|0)+1;z=w}else z=u;_d(e,b+12|0);u=c[e>>2]|0;w=e+4|0;y=c[w>>2]|0;c[e>>2]=0;c[w>>2]=0;c[z+28>>2]=u;u=z+32|0;z=c[u>>2]|0;c[u>>2]=y;if(z|0?(Yy(z),z=c[w>>2]|0,z|0):0)Yy(z);oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,23662,5);z=ad(f,e,g)|0;w=c[z>>2]|0;if(!w){y=$y(36)|0;u=y+16|0;c[u>>2]=c[g>>2];c[u+4>>2]=c[g+4>>2];c[u+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ck(y+28|0);u=c[e>>2]|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=u;c[z>>2]=y;u=c[c[f>>2]>>2]|0;if(!u)A=y;else{c[f>>2]=u;A=c[z>>2]|0}ic(c[p>>2]|0,A);c[q>>2]=(c[q>>2]|0)+1;B=y}else B=w;Tl(e,b+48|0);w=c[e>>2]|0;y=e+4|0;A=c[y>>2]|0;c[e>>2]=0;c[y>>2]=0;c[B+28>>2]=w;w=B+32|0;B=c[w>>2]|0;c[w>>2]=A;if(B|0?(Yy(B),B=c[y>>2]|0,B|0):0)Yy(B);oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,23668,6);B=ad(f,e,g)|0;y=c[B>>2]|0;if(!y){A=$y(36)|0;w=A+16|0;c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ck(A+28|0);w=c[e>>2]|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=w;c[B>>2]=A;w=c[c[f>>2]>>2]|0;if(!w)C=A;else{c[f>>2]=w;C=c[B>>2]|0}ic(c[p>>2]|0,C);c[q>>2]=(c[q>>2]|0)+1;D=A}else D=y;Tl(e,b+60|0);y=c[e>>2]|0;A=e+4|0;C=c[A>>2]|0;c[e>>2]=0;c[A>>2]=0;c[D+28>>2]=y;y=D+32|0;D=c[y>>2]|0;c[y>>2]=C;if(D|0?(Yy(D),D=c[A>>2]|0,D|0):0)Yy(D);oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,23675,7);D=ad(f,e,g)|0;A=c[D>>2]|0;if(!A){C=$y(36)|0;y=C+16|0;c[y>>2]=c[g>>2];c[y+4>>2]=c[g+4>>2];c[y+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ck(C+28|0);y=c[e>>2]|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=y;c[D>>2]=C;y=c[c[f>>2]>>2]|0;if(!y)E=C;else{c[f>>2]=y;E=c[D>>2]|0}ic(c[p>>2]|0,E);c[q>>2]=(c[q>>2]|0)+1;F=C}else F=A;Gl(e,c[b+72>>2]|0);A=c[e>>2]|0;C=e+4|0;E=c[C>>2]|0;c[e>>2]=0;c[C>>2]=0;c[F+28>>2]=A;A=F+32|0;F=c[A>>2]|0;c[A>>2]=E;if(F|0?(Yy(F),F=c[C>>2]|0,F|0):0)Yy(F);oz(g);c[g>>2]=0;F=g+4|0;c[F>>2]=0;c[g+8>>2]=0;C=c[b+76>>2]|0;E=c[b+80>>2]|0;if((C|0)!=(E|0)){A=g+8|0;D=e+4|0;y=C;do{Tl(e,y);C=c[F>>2]|0;if(C>>>0>=(c[A>>2]|0)>>>0){fd(g,e);B=c[D>>2]|0;if(B|0)Yy(B)}else{c[C>>2]=c[e>>2];c[C+4>>2]=c[D>>2];c[e>>2]=0;c[D>>2]=0;c[F>>2]=C+8}y=y+12|0}while((y|0)!=(E|0))};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23683,8);E=ad(f,e,h)|0;y=c[E>>2]|0;if(!y){D=$y(36)|0;A=D+16|0;c[A>>2]=c[h>>2];c[A+4>>2]=c[h+4>>2];c[A+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(D+28|0);A=c[e>>2]|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=A;c[E>>2]=D;A=c[c[f>>2]>>2]|0;if(!A)G=D;else{c[f>>2]=A;G=c[E>>2]|0}ic(c[p>>2]|0,G);c[q>>2]=(c[q>>2]|0)+1;H=D}else H=y;gm(e,g);y=c[e>>2]|0;D=e+4|0;G=c[D>>2]|0;c[e>>2]=0;c[D>>2]=0;c[H+28>>2]=y;y=H+32|0;H=c[y>>2]|0;c[y>>2]=G;if(H|0?(Yy(H),H=c[D>>2]|0,H|0):0)Yy(H);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23692,15);H=ad(f,e,h)|0;D=c[H>>2]|0;if(!D){G=$y(36)|0;y=G+16|0;c[y>>2]=c[h>>2];c[y+4>>2]=c[h+4>>2];c[y+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(G+28|0);y=c[e>>2]|0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=y;c[H>>2]=G;y=c[c[f>>2]>>2]|0;if(!y)I=G;else{c[f>>2]=y;I=c[H>>2]|0}ic(c[p>>2]|0,I);c[q>>2]=(c[q>>2]|0)+1;J=G}else J=D;Gl(e,c[b+88>>2]|0);D=c[e>>2]|0;G=e+4|0;I=c[G>>2]|0;c[e>>2]=0;c[G>>2]=0;c[J+28>>2]=D;D=J+32|0;J=c[D>>2]|0;c[D>>2]=I;if(J|0?(Yy(J),J=c[G>>2]|0,J|0):0)Yy(J);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23708,15);J=ad(f,e,h)|0;G=c[J>>2]|0;if(!G){I=$y(36)|0;D=I+16|0;c[D>>2]=c[h>>2];c[D+4>>2]=c[h+4>>2];c[D+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(I+28|0);D=c[e>>2]|0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=D;c[J>>2]=I;D=c[c[f>>2]>>2]|0;if(!D)K=I;else{c[f>>2]=D;K=c[J>>2]|0}ic(c[p>>2]|0,K);c[q>>2]=(c[q>>2]|0)+1;L=I}else L=G;Gl(e,c[b+92>>2]|0);G=c[e>>2]|0;I=e+4|0;K=c[I>>2]|0;c[e>>2]=0;c[I>>2]=0;c[L+28>>2]=G;G=L+32|0;L=c[G>>2]|0;c[G>>2]=K;if(L|0?(Yy(L),L=c[I>>2]|0,L|0):0)Yy(L);oz(h);c[h>>2]=0;L=h+4|0;c[L>>2]=0;c[h+8>>2]=0;$d(i,b+96|0);I=c[i>>2]|0;K=c[i+4>>2]|0;if((I|0)!=(K|0)){G=h+8|0;J=e+4|0;D=I;do{ae(e,D);I=c[L>>2]|0;do if(I>>>0<(c[G>>2]|0)>>>0){c[I>>2]=c[e>>2];c[I+4>>2]=c[J>>2];c[e>>2]=0;c[J>>2]=0;c[L>>2]=I+8}else{fd(h,e);H=c[J>>2]|0;if(!H)break;Yy(H)}while(0);D=D+80|0}while((D|0)!=(K|0))};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23724,10);K=ad(f,e,j)|0;D=c[K>>2]|0;if(!D){J=$y(36)|0;G=J+16|0;c[G>>2]=c[j>>2];c[G+4>>2]=c[j+4>>2];c[G+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(J+28|0);G=c[e>>2]|0;c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=G;c[K>>2]=J;G=c[c[f>>2]>>2]|0;if(!G)M=J;else{c[f>>2]=G;M=c[K>>2]|0}ic(c[p>>2]|0,M);c[q>>2]=(c[q>>2]|0)+1;N=J}else N=D;gm(e,h);D=c[e>>2]|0;J=e+4|0;M=c[J>>2]|0;c[e>>2]=0;c[J>>2]=0;c[N+28>>2]=D;D=N+32|0;N=c[D>>2]|0;c[D>>2]=M;do if(N|0){Yy(N);M=c[J>>2]|0;if(!M)break;Yy(M)}while(0);oz(j);c[j>>2]=0;J=j+4|0;c[J>>2]=0;c[j+8>>2]=0;od(k,b+108|0);N=c[k>>2]|0;M=k+4|0;D=c[M>>2]|0;if((N|0)!=(D|0)){K=j+8|0;G=e+4|0;I=N;do{Tl(e,I);N=c[J>>2]|0;do if(N>>>0<(c[K>>2]|0)>>>0){c[N>>2]=c[e>>2];c[N+4>>2]=c[G>>2];c[e>>2]=0;c[G>>2]=0;c[J>>2]=N+8}else{fd(j,e);H=c[G>>2]|0;if(!H)break;Yy(H)}while(0);I=I+12|0}while((I|0)!=(D|0))};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,23735,8);D=ad(f,e,m)|0;I=c[D>>2]|0;if(!I){G=$y(36)|0;K=G+16|0;c[K>>2]=c[m>>2];c[K+4>>2]=c[m+4>>2];c[K+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Ck(G+28|0);K=c[e>>2]|0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=K;c[D>>2]=G;K=c[c[f>>2]>>2]|0;if(!K)O=G;else{c[f>>2]=K;O=c[D>>2]|0}ic(c[p>>2]|0,O);c[q>>2]=(c[q>>2]|0)+1;P=G}else P=I;gm(e,j);I=c[e>>2]|0;G=e+4|0;O=c[G>>2]|0;c[e>>2]=0;c[G>>2]=0;c[P+28>>2]=I;I=P+32|0;P=c[I>>2]|0;c[I>>2]=O;do if(P|0){Yy(P);O=c[G>>2]|0;if(!O)break;Yy(O)}while(0);oz(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,23744,11);G=ad(f,e,m)|0;P=c[G>>2]|0;if(!P){O=$y(36)|0;I=O+16|0;c[I>>2]=c[m>>2];c[I+4>>2]=c[m+4>>2];c[I+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Ck(O+28|0);I=c[e>>2]|0;c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=I;c[G>>2]=O;I=c[c[f>>2]>>2]|0;if(!I)Q=O;else{c[f>>2]=I;Q=c[G>>2]|0}ic(c[p>>2]|0,Q);c[q>>2]=(c[q>>2]|0)+1;R=O}else R=P;P=R+28|0;switch(c[b+120>>2]|0){case 0:{c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,23756,10);break}case 1:{c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,23767,15);break}default:{c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,47807,0)}}em(e,n);O=c[e>>2]|0;Q=e+4|0;G=c[Q>>2]|0;c[e>>2]=0;c[Q>>2]=0;c[P>>2]=O;O=R+32|0;R=c[O>>2]|0;c[O>>2]=G;do if(R|0){Yy(R);G=c[Q>>2]|0;if(!G)break;Yy(G)}while(0);oz(n);oz(m);c[m>>2]=0;Q=m+4|0;c[Q>>2]=0;c[m+8>>2]=0;be(n,b+124|0);b=c[n>>2]|0;R=n+4|0;G=c[R>>2]|0;if((b|0)!=(G|0)){O=m+8|0;P=e+4|0;I=b;do{_d(e,I);b=c[Q>>2]|0;do if(b>>>0<(c[O>>2]|0)>>>0){c[b>>2]=c[e>>2];c[b+4>>2]=c[P>>2];c[e>>2]=0;c[P>>2]=0;c[Q>>2]=b+8}else{fd(m,e);D=c[P>>2]|0;if(!D)break;Yy(D)}while(0);I=I+36|0}while((I|0)!=(G|0))};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;lz(o,23783,15);G=ad(f,e,o)|0;I=c[G>>2]|0;if(!I){P=$y(36)|0;O=P+16|0;c[O>>2]=c[o>>2];c[O+4>>2]=c[o+4>>2];c[O+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Ck(P+28|0);O=c[e>>2]|0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=O;c[G>>2]=P;O=c[c[f>>2]>>2]|0;if(!O)S=P;else{c[f>>2]=O;S=c[G>>2]|0}ic(c[p>>2]|0,S);c[q>>2]=(c[q>>2]|0)+1;T=P}else T=I;gm(e,m);I=c[e>>2]|0;P=e+4|0;q=c[P>>2]|0;c[e>>2]=0;c[P>>2]=0;c[T+28>>2]=I;I=T+32|0;T=c[I>>2]|0;c[I>>2]=q;do if(T|0){Yy(T);q=c[P>>2]|0;if(!q)break;Yy(q)}while(0);oz(o);nm(a,f);a=c[n>>2]|0;if(a|0){o=c[R>>2]|0;if((o|0)==(a|0))U=a;else{P=o;do{o=P+-36|0;c[R>>2]=o;oz(P+-12|0);oz(P+-24|0);oz(o);P=c[R>>2]|0}while((P|0)!=(a|0));U=c[n>>2]|0}bz(U)}U=c[m>>2]|0;if(U|0){n=c[Q>>2]|0;if((n|0)==(U|0))V=U;else{a=n;while(1){n=a+-8|0;c[Q>>2]=n;P=c[a+-4>>2]|0;if(!P)W=n;else{Yy(P);W=c[Q>>2]|0}if((W|0)==(U|0))break;else a=W}V=c[m>>2]|0}bz(V)}V=c[k>>2]|0;if(V|0){m=c[M>>2]|0;if((m|0)==(V|0))X=V;else{W=m;do{m=W+-12|0;c[M>>2]=m;oz(m);W=c[M>>2]|0}while((W|0)!=(V|0));X=c[k>>2]|0}bz(X)}X=c[j>>2]|0;if(X|0){k=c[J>>2]|0;if((k|0)==(X|0))Y=X;else{V=k;while(1){k=V+-8|0;c[J>>2]=k;W=c[V+-4>>2]|0;if(!W)Z=k;else{Yy(W);Z=c[J>>2]|0}if((Z|0)==(X|0))break;else V=Z}Y=c[j>>2]|0}bz(Y)}Yb(i);i=c[h>>2]|0;if(i|0){Y=c[L>>2]|0;if((Y|0)==(i|0))_=i;else{j=Y;while(1){Y=j+-8|0;c[L>>2]=Y;Z=c[j+-4>>2]|0;if(!Z)$=Y;else{Yy(Z);$=c[L>>2]|0}if(($|0)==(i|0))break;else j=$}_=c[h>>2]|0}bz(_)}_=c[g>>2]|0;if(!_){aa=c[r>>2]|0;dd(f,aa);l=d;return}h=c[F>>2]|0;if((h|0)==(_|0))ba=_;else{$=h;while(1){h=$+-8|0;c[F>>2]=h;j=c[$+-4>>2]|0;if(!j)ca=h;else{Yy(j);ca=c[F>>2]|0}if((ca|0)==(_|0))break;else $=ca}ba=c[g>>2]|0}bz(ba);aa=c[r>>2]|0;dd(f,aa);l=d;return}function Yd(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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;e=l;l=l+64|0;f=e+48|0;h=e+36|0;i=e+24|0;j=e+12|0;k=e;m=j+4|0;c[m>>2]=0;n=j+8|0;c[n>>2]=0;o=j+4|0;c[j>>2]=o;c[k+4>>2]=0;c[k+8>>2]=0;p=k+4|0;c[k>>2]=p;q=c[d+12>>2]|0;r=d+16|0;if((q|0)!=(r|0)){s=f+4|0;t=q;while(1){q=t+16|0;c[f>>2]=q;Zd(i,k,q,45733,f,h);q=c[i>>2]|0;ul(f,+g[t+28>>2]);u=c[f>>2]|0;v=c[s>>2]|0;c[f>>2]=0;c[s>>2]=0;c[q+28>>2]=u;u=q+32|0;q=c[u>>2]|0;c[u>>2]=v;if(q|0?(Yy(q),q=c[s>>2]|0,q|0):0)Yy(q);q=c[t+4>>2]|0;if(!q){v=t;while(1){u=c[v+8>>2]|0;if((c[u>>2]|0)==(v|0)){w=u;break}else v=u}}else{v=q;while(1){u=c[v>>2]|0;if(!u){w=v;break}else v=u}}if((w|0)==(r|0))break;else t=w}};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23467,15);w=ad(j,f,h)|0;t=c[w>>2]|0;if(!t){r=$y(36)|0;s=r+16|0;c[s>>2]=c[h>>2];c[s+4>>2]=c[h+4>>2];c[s+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(r+28|0);s=c[f>>2]|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=s;c[w>>2]=r;s=c[c[j>>2]>>2]|0;if(!s)x=r;else{c[j>>2]=s;x=c[w>>2]|0}ic(c[m>>2]|0,x);c[n>>2]=(c[n>>2]|0)+1;y=r}else y=t;nm(f,k);t=c[f>>2]|0;r=f+4|0;x=c[r>>2]|0;c[f>>2]=0;c[r>>2]=0;c[y+28>>2]=t;t=y+32|0;y=c[t>>2]|0;c[t>>2]=x;if(y|0?(Yy(y),y=c[r>>2]|0,y|0):0)Yy(y);oz(h);y=d+24|0;r=a[y+11>>0]|0;if(!(((r<<24>>24<0?c[d+28>>2]|0:r&255)|0)==0?!(Fz(y,0,-1,47807,0)|0):0))z=20;if((z|0)==20){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23556,14);z=ad(j,f,h)|0;r=c[z>>2]|0;if(!r){x=$y(36)|0;t=x+16|0;c[t>>2]=c[h>>2];c[t+4>>2]=c[h+4>>2];c[t+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(x+28|0);t=c[f>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=t;c[z>>2]=x;t=c[c[j>>2]>>2]|0;if(!t)A=x;else{c[j>>2]=t;A=c[z>>2]|0}ic(c[m>>2]|0,A);c[n>>2]=(c[n>>2]|0)+1;B=x}else B=r;Tl(f,y);y=c[f>>2]|0;r=f+4|0;x=c[r>>2]|0;c[f>>2]=0;c[r>>2]=0;c[B+28>>2]=y;y=B+32|0;B=c[y>>2]|0;c[y>>2]=x;if(B|0?(Yy(B),B=c[r>>2]|0,B|0):0)Yy(B);oz(h)};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23401,12);B=ad(j,f,h)|0;r=c[B>>2]|0;if(!r){x=$y(36)|0;y=x+16|0;c[y>>2]=c[h>>2];c[y+4>>2]=c[h+4>>2];c[y+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(x+28|0);y=c[f>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=y;c[B>>2]=x;y=c[c[j>>2]>>2]|0;if(!y)C=x;else{c[j>>2]=y;C=c[B>>2]|0}ic(c[m>>2]|0,C);c[n>>2]=(c[n>>2]|0)+1;D=x}else D=r;Gl(f,c[d>>2]|0);r=c[f>>2]|0;x=f+4|0;C=c[x>>2]|0;c[f>>2]=0;c[x>>2]=0;c[D+28>>2]=r;r=D+32|0;D=c[r>>2]|0;c[r>>2]=C;if(D|0?(Yy(D),D=c[x>>2]|0,D|0):0)Yy(D);oz(h);D=h+4|0;c[D>>2]=0;x=h+8|0;c[x>>2]=0;C=h+4|0;c[h>>2]=C;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23143,8);r=ad(h,f,i)|0;B=c[r>>2]|0;if(!B){y=$y(36)|0;A=y+16|0;c[A>>2]=c[i>>2];c[A+4>>2]=c[i+4>>2];c[A+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(y+28|0);A=c[f>>2]|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=A;c[r>>2]=y;A=c[c[h>>2]>>2]|0;if(!A)E=y;else{c[h>>2]=A;E=c[r>>2]|0}ic(c[D>>2]|0,E);c[x>>2]=(c[x>>2]|0)+1;F=y}else F=B;Gl(f,c[d+4>>2]|0);B=c[f>>2]|0;y=f+4|0;E=c[y>>2]|0;c[f>>2]=0;c[y>>2]=0;c[F+28>>2]=B;B=F+32|0;F=c[B>>2]|0;c[B>>2]=E;if(F|0?(Yy(F),F=c[y>>2]|0,F|0):0)Yy(F);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23152,9);F=ad(h,f,i)|0;y=c[F>>2]|0;if(!y){E=$y(36)|0;B=E+16|0;c[B>>2]=c[i>>2];c[B+4>>2]=c[i+4>>2];c[B+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(E+28|0);B=c[f>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=B;c[F>>2]=E;B=c[c[h>>2]>>2]|0;if(!B)G=E;else{c[h>>2]=B;G=c[F>>2]|0}ic(c[D>>2]|0,G);c[x>>2]=(c[x>>2]|0)+1;H=E}else H=y;Gl(f,c[d+8>>2]|0);d=c[f>>2]|0;y=f+4|0;E=c[y>>2]|0;c[f>>2]=0;c[y>>2]=0;c[H+28>>2]=d;d=H+32|0;H=c[d>>2]|0;c[d>>2]=E;if(H|0?(Yy(H),H=c[y>>2]|0,H|0):0)Yy(H);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23162,7);H=ad(j,f,i)|0;y=c[H>>2]|0;if(!y){E=$y(36)|0;d=E+16|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(E+28|0);d=c[f>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=d;c[H>>2]=E;d=c[c[j>>2]>>2]|0;if(!d)I=E;else{c[j>>2]=d;I=c[H>>2]|0}ic(c[m>>2]|0,I);c[n>>2]=(c[n>>2]|0)+1;J=E}else J=y;nm(f,h);y=c[f>>2]|0;E=f+4|0;n=c[E>>2]|0;c[f>>2]=0;c[E>>2]=0;c[J+28>>2]=y;y=J+32|0;J=c[y>>2]|0;c[y>>2]=n;if(!J){oz(i);nm(b,j);K=c[C>>2]|0;dd(h,K);L=c[p>>2]|0;dd(k,L);M=c[o>>2]|0;dd(j,M);l=e;return}Yy(J);J=c[E>>2]|0;if(!J){oz(i);nm(b,j);K=c[C>>2]|0;dd(h,K);L=c[p>>2]|0;dd(k,L);M=c[o>>2]|0;dd(j,M);l=e;return}Yy(J);oz(i);nm(b,j);K=c[C>>2]|0;dd(h,K);L=c[p>>2]|0;dd(k,L);M=c[o>>2]|0;dd(j,M);l=e;return}function Zd(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,m=0,n=0,o=0;h=l;l=l+16|0;f=h;i=ad(d,f,e)|0;e=c[i>>2]|0;if(e|0){j=e;k=0;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}e=$y(36)|0;kz(e+16|0,c[g>>2]|0);Ck(e+28|0);g=c[f>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=g;c[i>>2]=e;g=c[c[d>>2]>>2]|0;if(!g)o=e;else{c[d>>2]=g;o=c[i>>2]|0}ic(c[d+4>>2]|0,o);o=d+8|0;c[o>>2]=(c[o>>2]|0)+1;j=e;k=1;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}function _d(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23325,10);Tl(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23336,4);Tl(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23341,11);Tl(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;tm(a,g);dd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)Yy(b);oz(h+40|0);b=c[h+36>>2]|0;if(b|0)Yy(b);oz(h+20|0);b=c[h+16>>2]|0;if(!b){oz(h);l=d;return}Yy(b);oz(h);l=d;return}function $d(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/80|0;if(!f)return;if(g>>>0>53687091)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*80|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{ee(g,e);e=e+80|0;g=(c[d>>2]|0)+80|0;c[d>>2]=g}while((e|0)!=(b|0));return}function ae(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=l;l=l+176|0;f=e+168|0;h=e+152|0;i=e+132|0;j=e+32|0;k=e+24|0;m=e+16|0;n=e;o=e+148|0;p=e+144|0;ce(k,d);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23170,5);c[j+12>>2]=c[k>>2];q=k+4|0;c[j+16>>2]=c[q>>2];c[k>>2]=0;c[q>>2]=0;k=j+20|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23187,4);Tl(j+32|0,d+36|0);de(m,d);k=j+40|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,23296,7);c[j+52>>2]=c[m>>2];k=m+4|0;c[j+56>>2]=c[k>>2];c[m>>2]=0;c[k>>2]=0;m=j+60|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,23799,12);ul(j+72|0,+g[d+56>>2]);c[o>>2]=c[d+68>>2];c[p>>2]=c[d+72>>2];c[h>>2]=c[o>>2];c[f>>2]=c[p>>2];Rd(n,h,f);p=j+80|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;lz(p,23812,10);mm(j+92|0,n);p=i+4|0;c[p>>2]=0;o=i+8|0;c[o>>2]=0;m=i+4|0;c[i>>2]=m;r=m;c[h>>2]=r;c[f>>2]=c[h>>2];jd(i,f,j,j)|0;s=j+20|0;c[h>>2]=r;c[f>>2]=c[h>>2];jd(i,f,s,s)|0;s=j+40|0;c[h>>2]=r;c[f>>2]=c[h>>2];jd(i,f,s,s)|0;s=j+60|0;c[h>>2]=r;c[f>>2]=c[h>>2];jd(i,f,s,s)|0;s=j+80|0;c[h>>2]=r;c[f>>2]=c[h>>2];jd(i,f,s,s)|0;s=c[j+96>>2]|0;if(s|0)Yy(s);oz(j+80|0);s=c[j+76>>2]|0;if(s|0)Yy(s);oz(j+60|0);s=c[j+56>>2]|0;if(s|0)Yy(s);oz(j+40|0);s=c[j+36>>2]|0;if(s|0)Yy(s);oz(j+20|0);s=c[j+16>>2]|0;if(s|0)Yy(s);oz(j);j=c[n>>2]|0;if(j|0){s=n+4|0;r=c[s>>2]|0;if((r|0)==(j|0))t=j;else{u=r;while(1){r=u+-8|0;c[s>>2]=r;v=c[u+-4>>2]|0;if(!v)w=r;else{Yy(v);w=c[s>>2]|0}if((w|0)==(j|0))break;else u=w}t=c[n>>2]|0}bz(t)}t=c[k>>2]|0;if(t|0)Yy(t);t=c[q>>2]|0;if(t|0)Yy(t);if(!(a[d+60>>0]|0)){nm(b,i);x=c[m>>2]|0;dd(i,x);l=e;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23304,12);t=ad(i,f,h)|0;q=c[t>>2]|0;if(!q){k=$y(36)|0;n=k+16|0;c[n>>2]=c[h>>2];c[n+4>>2]=c[h+4>>2];c[n+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(k+28|0);n=c[f>>2]|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=n;c[t>>2]=k;n=c[c[i>>2]>>2]|0;if(!n)y=k;else{c[i>>2]=n;y=c[t>>2]|0}ic(c[p>>2]|0,y);c[o>>2]=(c[o>>2]|0)+1;z=k}else z=q;ul(f,+g[d+64>>2]);d=c[f>>2]|0;q=f+4|0;k=c[q>>2]|0;c[f>>2]=0;c[q>>2]=0;c[z+28>>2]=d;d=z+32|0;z=c[d>>2]|0;c[d>>2]=k;if(z|0?(Yy(z),z=c[q>>2]|0,z|0):0)Yy(z);oz(h);nm(b,i);x=c[m>>2]|0;dd(i,x);l=e;return}function be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/36|0;if(!f)return;if(g>>>0>119304647)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*36|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{kz(g,e);kz(g+12|0,e+12|0);kz(g+24|0,e+24|0);e=e+36|0;g=(c[d>>2]|0)+36|0;c[d>>2]=g}while((e|0)!=(b|0));return}function ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23325,10);Tl(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23336,4);Tl(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23341,11);Tl(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;tm(a,g);dd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)Yy(b);oz(h+40|0);b=c[h+36>>2]|0;if(b|0)Yy(b);oz(h+20|0);b=c[h+16>>2]|0;if(!b){oz(h);l=d;return}Yy(b);oz(h);l=d;return}function de(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0;d=l;l=l+64|0;e=d+56|0;f=d+52|0;h=d+40|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23317,3);ul(i+12|0,+g[b+48>>2]);j=i+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23321,3);ul(i+32|0,+g[b+52>>2]);c[h+4>>2]=0;c[h+8>>2]=0;b=h+4|0;c[h>>2]=b;j=b;c[f>>2]=j;c[e>>2]=c[f>>2];jd(h,e,i,i)|0;k=i+20|0;c[f>>2]=j;c[e>>2]=c[f>>2];jd(h,e,k,k)|0;tm(a,h);dd(h,c[b>>2]|0);b=c[i+36>>2]|0;if(b|0)Yy(b);oz(i+20|0);b=c[i+16>>2]|0;if(!b){oz(i);l=d;return}Yy(b);oz(i);l=d;return}function ee(a,b){a=a|0;b=b|0;var d=0,e=0;kz(a,b);kz(a+12|0,b+12|0);kz(a+24|0,b+24|0);kz(a+36|0,b+36|0);d=a+48|0;e=b+48|0;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];c[d+16>>2]=c[e+16>>2];od(a+68|0,b+68|0);return}function fe(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,m=0,n=0,o=0,p=0,q=0;f=l;l=l+16|0;g=f+12|0;h=f;i=f+8|0;oq(h,b);if(!(a[h>>0]|0)){pq(h);l=f;return b|0}j=(c[b>>2]|0)+-12|0;c[i>>2]=c[b+(c[j>>2]|0)+24>>2];k=b+(c[j>>2]|0)|0;j=c[k+4>>2]|0;m=d+e|0;e=k+76|0;n=c[e>>2]|0;if((n|0)==-1){c[g>>2]=iq(k)|0;o=Hr(g,43804)|0;p=Bb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Oy(g);o=p<<24>>24;c[e>>2]=o;q=o}else q=n;c[g>>2]=c[i>>2];if(qe(g,d,(j&176|0)==32?m:d,m,k,q&255)|0){pq(h);l=f;return b|0}q=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;gq(q,c[q+16>>2]|5);pq(h);l=f;return b|0}function ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+16|0;e=d;c[a>>2]=7260;f=a+4|0;c[f>>2]=0;g=a+8|0;c[g>>2]=0;c[a+12>>2]=0;rb[c[(c[b>>2]|0)+92>>2]&127](e,b);b=c[e>>2]|0;h=c[e+4>>2]|0;if((b|0)==(h|0)){Zb(e);l=d;return}i=a+12|0;a=b;do{b=c[g>>2]|0;if((b|0)==(c[i>>2]|0))he(f,a);else{kz(b,a);c[g>>2]=(c[g>>2]|0)+12}a=a+100|0}while((a|0)!=(h|0));Zb(e);l=d;return}function he(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;j=f;e=l+(k*12|0)|0;kz(f,b);b=f+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=f;do{f=j+-12|0;g=g+-12|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=e;e=n;if((o|0)!=(e|0)){h=o;do{h=h+-12|0;oz(h)}while((h|0)!=(e|0))}if(!n)return;bz(n);return}function ie(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;c[a>>2]=7260;b=a+4|0;d=c[b>>2]|0;if(!d)return;e=a+8|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;do{a=g+-12|0;c[e>>2]=a;oz(a);g=c[e>>2]|0}while((g|0)!=(d|0));f=c[b>>2]|0}bz(f);return}function je(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=7260;b=a+4|0;d=c[b>>2]|0;if(!d){bz(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;oz(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}bz(g);bz(a);return}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=c[b+4>>2]|0;f=(c[b+8>>2]|0)-e|0;b=(f|0)/12|0;g=e;if((f|0)<=0){h=-1;return h|0}f=a[d+11>>0]|0;e=f<<24>>24<0;i=f&255;f=e?c[d+4>>2]|0:i;j=(f|0)==0;if(e){e=0;while(1){k=g+(e*12|0)|0;l=a[k+11>>0]|0;m=l<<24>>24<0;if((f|0)==((m?c[g+(e*12|0)+4>>2]|0:l&255)|0)){if(j){h=e;n=15;break}if(!(Xn(c[d>>2]|0,m?c[k>>2]|0:k,f)|0)){h=e;n=15;break}}e=e+1|0;if((e|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0}if(j){j=0;while(1){e=a[g+(j*12|0)+11>>0]|0;if(!((e<<24>>24<0?c[g+(j*12|0)+4>>2]|0:e&255)|0)){h=j;n=15;break}j=j+1|0;if((j|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0}else o=0;a:while(1){j=g+(o*12|0)|0;e=a[j+11>>0]|0;k=e<<24>>24<0;b:do if((f|0)==((k?c[g+(o*12|0)+4>>2]|0:e&255)|0)){m=i;l=k?c[j>>2]|0:j;p=d;while(1){if((a[p>>0]|0)!=(a[l>>0]|0))break b;m=m+-1|0;if(!m){h=o;n=15;break a}else{l=l+1|0;p=p+1|0}}}while(0);o=o+1|0;if((o|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0;return 0}function le(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((d|0)>=0?(e=c[b+4>>2]|0,(((c[b+8>>2]|0)-e|0)/12|0)>>>0>d>>>0):0){kz(a,e+(d*12|0)|0);return};c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,47807,0);return}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=7232;c[a+12>>2]=7260;b=a+16|0;d=c[b>>2]|0;if(!d){Ty(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;oz(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}bz(g);Ty(a);return}function ne(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=7232;c[a+12>>2]=7260;b=a+16|0;d=c[b>>2]|0;if(!d){Ty(a);bz(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;oz(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}bz(g);Ty(a);bz(a);return}function oe(a){a=a|0;var b=0;b=a+12|0;qb[c[c[b>>2]>>2]&511](b);return}function pe(a){a=a|0;bz(a);return}function qe(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,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i;k=c[b>>2]|0;if(!k){m=0;l=i;return m|0}n=f;f=d;o=n-f|0;p=g+12|0;g=c[p>>2]|0;q=(g|0)>(o|0)?g-o|0:0;o=e;g=o-f|0;if((g|0)>0?(kb[c[(c[k>>2]|0)+48>>2]&31](k,d,g)|0)!=(g|0):0){c[b>>2]=0;m=0;l=i;return m|0}do if((q|0)>0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;mz(j,q,h);if((kb[c[(c[k>>2]|0)+48>>2]&31](k,(a[j+11>>0]|0)<0?c[j>>2]|0:j,q)|0)==(q|0)){oz(j);break}c[b>>2]=0;oz(j);m=0;l=i;return m|0}while(0);j=n-o|0;if((j|0)>0?(kb[c[(c[k>>2]|0)+48>>2]&31](k,e,j)|0)!=(j|0):0){c[b>>2]=0;m=0;l=i;return m|0}c[p>>2]=0;m=k;l=i;return m|0}function re(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+64|0;h=f+40|0;i=f+8|0;j=f;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23658,3);c[i+12>>2]=3;k=i+16|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,24095,15);c[i+28>>2]=1;c[h>>2]=i;c[h+4>>2]=2;k=Km(d,h,e)|0;oz(i+16|0);oz(i);if(!k){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=e+11|0;m=a[k>>0]|0;n=e+4|0;o=m<<24>>24<0?c[n>>2]|0:m&255;Gz(h,24111,24,o+24|0);xz(h,(a[k>>0]|0)<0?c[e>>2]|0:e,o)|0;if((a[k>>0]|0)<0){a[c[e>>2]>>0]=0;c[n>>2]=0}else{a[e>>0]=0;a[k>>0]=0}sz(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;l=f;return};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[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23658,3);pz(h,xm(Am(d,i)|0)|0)|0;oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,24095,15);k=h+12|0;g[k>>2]=+vm(Am(d,i)|0);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,24136,12);n=(um(Am(d,i)|0)|0)==0;oz(i);do if(n)p=14;else{c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,24136,12);o=Am(d,i)|0;c[j>>2]=c[o>>2];m=j+4|0;q=c[o+4>>2]|0;c[m>>2]=q;if(q|0)Xy(q);c[h+16>>2]=se(j,e)|0;q=c[m>>2]|0;if(q|0)Yy(q);oz(i);q=a[e+11>>0]|0;if(((q<<24>>24<0?c[e+4>>2]|0:q&255)|0)==0?(Fz(e,0,-1,47807,0)|0)==0:0){p=14;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}while(0);if((p|0)==14){c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;p=k;k=c[p+4>>2]|0;e=b+12|0;c[e>>2]=c[p>>2];c[e+4>>2]=k}oz(h);l=f;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,m=0,n=0,o=0,p=0,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=l;l=l+32|0;f=e+12|0;g=e;if((um(b)|0)!=4){tz(d,24149)|0;h=0;l=e;return h|0}i=ym(b)|0;b=c[i>>2]|0;j=c[i+4>>2]|0;if((b|0)==(j|0)){h=0;l=e;return h|0}i=f+11|0;k=f+4|0;m=d+11|0;n=d+4|0;o=0;p=b;while(1){if((um(p)|0)!=3)break;kz(f,xm(p)|0);b=a[i>>0]|0;q=c[k>>2]|0;do if(((b<<24>>24<0?q:b&255)|0)==16)if(!(Fz(f,0,-1,24215,16)|0)){r=0;s=o|1;break}else{t=a[i>>0]|0;u=c[k>>2]|0;v=11;break}else{t=b;u=q;v=11}while(0);a:do if((v|0)==11){v=0;do if(((t<<24>>24<0?u:t&255)|0)==17)if(!(Fz(f,0,-1,24232,17)|0)){r=0;s=o|2;break a}else{w=a[i>>0]|0;x=c[k>>2]|0;break}else{w=t;x=u}while(0);do if(((w<<24>>24<0?x:w&255)|0)==15)if(!(Fz(f,0,-1,24250,15)|0)){r=0;s=o|4;break a}else{y=a[i>>0]|0;z=c[k>>2]|0;break}else{y=w;z=x}while(0);do if(((y<<24>>24<0?z:y&255)|0)==12)if(!(Fz(f,0,-1,24266,12)|0)){r=0;s=o|3;break a}else{A=a[i>>0]|0;B=c[k>>2]|0;break}else{A=y;B=z}while(0);do if(((A<<24>>24<0?B:A&255)|0)==8)if(!(Fz(f,0,-1,24279,8)|0)){r=0;s=o|255;break a}else{C=a[i>>0]|0;D=c[k>>2]|0;break}else{C=A;D=B}while(0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;q=C<<24>>24<0?D:C&255;Gz(g,24288,29,q+29|0);xz(g,(a[i>>0]|0)<0?c[f>>2]|0:f,q)|0;if((a[m>>0]|0)<0){a[c[d>>2]>>0]=0;c[n>>2]=0}else{a[d>>0]=0;a[m>>0]=0}sz(d,0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);r=1;s=o}while(0);oz(f);p=p+8|0;if(r|(p|0)==(j|0)){h=s;v=32;break}else o=s}if((v|0)==32){l=e;return h|0}tz(d,24182)|0;h=o;l=e;return h|0}function te(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=l;l=l+48|0;e=d+40|0;f=d+24|0;g=d+12|0;h=d;c[f>>2]=0;i=f+4|0;c[i>>2]=0;c[f+8>>2]=0;j=c[b>>2]|0;k=c[b+4>>2]|0;if((j|0)!=(k|0)){b=f+8|0;m=e+4|0;n=j;do{Xd(e,n);j=c[i>>2]|0;if(j>>>0>=(c[b>>2]|0)>>>0){fd(f,e);o=c[m>>2]|0;if(o|0)Yy(o)}else{c[j>>2]=c[e>>2];c[j+4>>2]=c[m>>2];c[e>>2]=0;c[m>>2]=0;c[i>>2]=j+8}n=n+136|0}while((n|0)!=(k|0))}k=g+4|0;c[k>>2]=0;n=g+8|0;c[n>>2]=0;m=g+4|0;c[g>>2]=m;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,24318,9);b=ad(g,e,h)|0;j=c[b>>2]|0;if(!j){o=$y(36)|0;p=o+16|0;c[p>>2]=c[h>>2];c[p+4>>2]=c[h+4>>2];c[p+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(o+28|0);p=c[e>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=p;c[b>>2]=o;p=c[c[g>>2]>>2]|0;if(!p)q=o;else{c[g>>2]=p;q=c[b>>2]|0}ic(c[k>>2]|0,q);c[n>>2]=(c[n>>2]|0)+1;r=o}else r=j;gm(e,f);j=c[e>>2]|0;o=e+4|0;n=c[o>>2]|0;c[e>>2]=0;c[o>>2]=0;c[r+28>>2]=j;j=r+32|0;r=c[j>>2]|0;c[j>>2]=n;if(r|0?(Yy(r),r=c[o>>2]|0,r|0):0)Yy(r);oz(h);nm(a,g);dd(g,c[m>>2]|0);m=c[f>>2]|0;if(!m){l=d;return}g=c[i>>2]|0;if((g|0)==(m|0))s=m;else{a=g;while(1){g=a+-8|0;c[i>>2]=g;h=c[a+-4>>2]|0;if(!h)t=g;else{Yy(h);t=c[i>>2]|0}if((t|0)==(m|0))break;else a=t}s=c[f>>2]|0}bz(s);l=d;return}function ue(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,m=0,n=0,o=0,p=0,q=0;e=l;l=l+48|0;f=e+24|0;g=e+12|0;h=e;c[f>>2]=0;i=f+4|0;c[i>>2]=0;c[f+8>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,24328,4);if(um(Am(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,24328,4);j=(um(Am(b,h)|0)|0)==4;oz(h);oz(g);if(j)k=5;else{tz(d,24333)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0}}else{oz(g);k=5}a:do if((k|0)==5){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,24328,4);j=ym(Am(b,g)|0)|0;oz(g);h=c[j>>2]|0;m=c[j+4>>2]|0;j=f+8|0;b:do if((h|0)!=(m|0)){n=h;while(1){if((um(n)|0)!=3)break;o=xm(n)|0;p=c[i>>2]|0;if((p|0)==(c[j>>2]|0))he(f,o);else{kz(p,o);c[i>>2]=(c[i>>2]|0)+12}n=n+8|0;if((n|0)==(m|0))break b}tz(d,24363)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;break a}while(0);c[a>>2]=c[f>>2];c[a+4>>2]=c[i>>2];c[a+8>>2]=c[j>>2];c[j>>2]=0;c[i>>2]=0;c[f>>2]=0;l=e;return}while(0);a=c[f>>2]|0;if(!a){l=e;return}d=c[i>>2]|0;if((d|0)==(a|0))q=a;else{g=d;do{d=g+-12|0;c[i>>2]=d;oz(d);g=c[i>>2]|0}while((g|0)!=(a|0));q=c[f>>2]|0}bz(q);l=e;return}function ve(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0;e=(c[b+4>>2]|0)-(c[b>>2]|0)>>2;f=(c[d+4>>2]|0)-(c[d>>2]|0)|0;h=f>>2;c[a>>2]=0;i=a+4|0;c[i>>2]=0;c[a+8>>2]=0;j=$y(1024)|0;c[a>>2]=j;c[a+8>>2]=j+1024;eB(j|0,0,1024)|0;c[i>>2]=j+1024;if(!(h&1))Da(24453,24472,54,24520);j=h+-1|0;if((h|0)>(e|0))k=(h|0)/2|0;else{i=(h|0)/2|0;l=c[a>>2]|0;if((f|0)<=0){eB(l+(j-i<<2)|0,0,e+1-h<<2|0)|0;return}m=c[b>>2]|0;b=c[d>>2]|0;d=j;do{j=0;n=0.0;do{n=n+ +g[m+(d-j<<2)>>2]*+g[b+(j<<2)>>2];j=j+1|0}while((j|0)<(h|0));g[l+(d-i<<2)>>2]=n;d=d+1|0}while((d|0)<(e|0));k=i}i=(f|0)>4;if(!i)return;f=c[a>>2]|0;d=f+(k<<2)|0;l=0;do{c[f+(l<<2)>>2]=c[d>>2];l=l+1|0}while((l|0)<(k|0));l=k+e|0;if(!i)return;i=c[a>>2]|0;a=i+(e+-1-k<<2)|0;d=e;do{c[i+(d-k<<2)>>2]=c[a>>2];d=d+1|0}while((d|0)<(l|0));return}function we(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,E=0,F=0,H=0,I=0,K=0.0,L=0.0,M=0.0,N=0,O=0;e=l;l=l+64|0;f=e+40|0;h=e+28|0;i=e+16|0;j=e+4|0;k=e;c[f>>2]=0;m=f+4|0;c[m>>2]=0;c[f+8>>2]=0;n=(b|0)/2|0;a:do if((b|0)>1){o=+(a|0);p=+(b|0);q=o/p;r=f+8|0;s=0;t=0;u=0;while(1){v=q*+(s|0);g[h>>2]=v;if(t>>>0<u>>>0){g[t>>2]=v;c[m>>2]=t+4}else Md(f,h);w=s+1|0;if((w|0)>=(n|0)){x=p;y=o;break a}s=w;t=c[m>>2]|0;u=c[r>>2]|0}}else{x=+(b|0);y=+(a|0)}while(0);o=y*2.0/x;c[h>>2]=0;a=h+4|0;c[a>>2]=0;c[h+8>>2]=0;n=b*40|0;b:do if((b|0)>0){p=y/x/80.0;r=h+8|0;u=0;t=0;s=0;while(1){q=p*+(u|0);g[i>>2]=q;if(t>>>0<s>>>0){g[t>>2]=q;c[a>>2]=t+4}else Md(h,i);w=u+1|0;if((w|0)>=(n|0))break b;u=w;t=c[a>>2]|0;s=c[r>>2]|0}}while(0);c[i>>2]=0;n=i+4|0;c[n>>2]=0;c[i+8>>2]=0;b=i+8|0;r=20;s=0;t=0;while(1){x=+(r|0);y=+Xm((x+-69.0)*.083333333333)*440.0;g[j>>2]=y;if(s>>>0<t>>>0){g[s>>2]=y;u=s+4|0;c[n>>2]=u;z=u;A=t}else{Md(i,j);z=c[n>>2]|0;A=c[b>>2]|0}y=+Xm((x+.3333333432674408+-69.0)*.083333333333)*440.0;g[j>>2]=y;if(z>>>0<A>>>0){g[z>>2]=y;u=z+4|0;c[n>>2]=u;B=u;C=A}else{Md(i,j);B=c[n>>2]|0;C=c[b>>2]|0}y=+Xm((x+.6666666865348816+-69.0)*.083333333333)*440.0;g[j>>2]=y;if(B>>>0<C>>>0){g[B>>2]=y;c[n>>2]=B+4}else Md(i,j);u=r+1|0;if((u|0)>=105)break;r=u;s=c[n>>2]|0;t=c[b>>2]|0}g[j>>2]=3519.970703125;t=c[n>>2]|0;if(t>>>0<(c[b>>2]|0)>>>0){c[t>>2]=1163657096;c[n>>2]=t+4}else Md(i,j);t=c[f>>2]|0;b=(c[m>>2]|0)-t|0;s=b>>2;c[j>>2]=0;r=j+4|0;c[r>>2]=0;c[j+8>>2]=0;y=o;x=y*.5;B=j+8|0;p=1.0/o;C=0;A=t;while(1){o=+g[(c[h>>2]|0)+(C<<2)>>2]-+g[A+4>>2];if(!(+G(+o)<=x))D=0.0;else D=+J(+(p*(o*2.0*3.141592653589793)))*.5+.5;g[k>>2]=D;t=c[r>>2]|0;if((t|0)==(c[B>>2]|0))xe(j,k);else{g[t>>2]=D;c[r>>2]=t+4}t=C+1|0;if((t|0)>=160)break;C=t;A=c[f>>2]|0}A=c[i>>2]|0;C=(c[n>>2]|0)-A|0;k=C>>2;B=T(k,s)|0;t=A;if((B|0)>0)eB(d|0,0,B<<2|0)|0;if((b|0)>4){b=c[f>>2]|0;B=c[h>>2]|0;A=c[j>>2]|0;if((C|0)>0){C=1;while(1){z=C*80|0;u=z+-80|0;w=b+(C<<2)|0;E=z+79|0;z=0;do{F=t+(z<<2)|0;D=+g[F>>2];p=D;x=+g[w>>2];c:do if(y+p*1.0599527833972817>x?p*.8900757332524964-y<x:0){H=d+((T(z,s)|0)+C<<2)|0;I=u;o=D;while(1){q=+g[B+(I<<2)>>2];v=+hn(o);K=(v-+hn(q))*-36.0;if(!(+G(+K)<=1.0))L=0.0;else L=+J(+(K*2.0*3.141592653589793*.5))*.5+.5;if(q>0.0)M=L/(q*.019254088401794434);else M=0.0;g[H>>2]=+g[H>>2]+M*+g[A+(I-u<<2)>>2];if((I|0)>=(E|0))break c;I=I+1|0;o=+g[F>>2]}}while(0);z=z+1|0}while((z|0)<(k|0));C=C+1|0;if((C|0)>=(s|0)){N=A;break}}}else N=A}else N=c[j>>2]|0;j=N;if(!N)O=t;else{t=c[r>>2]|0;if((t|0)!=(N|0))c[r>>2]=t+(~((t+-4-j|0)>>>2)<<2);bz(N);O=c[i>>2]|0}i=O;if(O|0){N=c[n>>2]|0;if((N|0)!=(O|0))c[n>>2]=N+(~((N+-4-i|0)>>>2)<<2);bz(O)}O=c[h>>2]|0;h=O;if(O|0){i=c[a>>2]|0;if((i|0)!=(O|0))c[a>>2]=i+(~((i+-4-h|0)>>>2)<<2);bz(O)}O=c[f>>2]|0;if(!O){l=e;return 1}f=c[m>>2]|0;if((f|0)!=(O|0))c[m>>2]=f+(~((f+-4-O|0)>>>2)<<2);bz(O);l=e;return 1}function xe(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823)Vx(a);h=a+8|0;i=(c[h>>2]|0)-f|0;j=i>>1;k=i>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=e-f>>2;do if(k)if(k>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{l=$y(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=e-f|0;e=g+(0-(b>>2)<<2)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+4;c[h>>2]=l+(k<<2);if(!f)return;bz(f);return}function ye(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0;d=l;l=l+16|0;e=d+4|0;f=d;c[e>>2]=0;h=e+4|0;c[h>>2]=0;c[e+8>>2]=0;i=e+8|0;j=20;k=0;m=0;while(1){n=+(j|0);o=+Xm((n+-69.0)*.083333333333)*440.0;g[f>>2]=o;if(k>>>0<m>>>0){g[k>>2]=o;p=k+4|0;c[h>>2]=p;q=p;r=m}else{Md(e,f);q=c[h>>2]|0;r=c[i>>2]|0}o=+Xm((n+.3333333432674408+-69.0)*.083333333333)*440.0;g[f>>2]=o;if(q>>>0<r>>>0){g[q>>2]=o;p=q+4|0;c[h>>2]=p;s=p;t=r}else{Md(e,f);s=c[h>>2]|0;t=c[i>>2]|0}o=+Xm((n+.6666666865348816+-69.0)*.083333333333)*440.0;g[f>>2]=o;if(s>>>0<t>>>0){g[s>>2]=o;c[h>>2]=s+4}else Md(e,f);p=j+1|0;if((p|0)>=105)break;j=p;k=c[h>>2]|0;m=c[i>>2]|0}g[f>>2]=3519.970703125;m=c[h>>2]|0;if(m>>>0<(c[i>>2]|0)>>>0){c[m>>2]=1163657096;c[h>>2]=m+4}else Md(e,f);f=0;do{o=+((f*3|0)+4|0);m=f<<8;i=1;do{n=o+ +_m(+(i|0))*36.0;u=+I(+b,+(+(i+-1|0)));v=n;k=0;do{w=+(k|0)+1.0;if(+G(+(w-v))<2.0){x=w-n;if(!(+G(+x)<=1.5))y=0.0;else y=+J(+(x*2.0*3.141592653589793*.3333333432674408))*.5+.5;j=a+(k+m<<2)|0;g[j>>2]=+g[j>>2]+u*y}k=k+1|0}while((k|0)!=256);i=i+1|0}while((i|0)!=21);f=f+1|0}while((f|0)!=84);f=c[e>>2]|0;if(!f){l=d;return}e=c[h>>2]|0;if((e|0)!=(f|0))c[h>>2]=e+(~((e+-4-f|0)>>>2)<<2);bz(f);l=d;return}function ze(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=+f;h=+h;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,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,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0.0,db=0.0,eb=0,fb=0,gb=0;i=l;l=l+2320|0;j=i+584|0;k=i+572|0;m=i+560|0;n=i+64|0;o=i;p=i+548|0;q=i+452|0;r=i+440|0;s=i+428|0;t=i+416|0;v=i+260|0;w=i+248|0;x=i+236|0;y=i+224|0;z=i+212|0;A=i+488|0;B=i+200|0;C=q+12|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;lz(C,24539,3);D=q+24|0;a[D>>0]=0;a[q+25>>0]=0;c[q+28>>2]=0;a[q+32>>0]=0;tz(q,24543)|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;lz(r,24545,10);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[t>>2]=0;E=t+4|0;c[E>>2]=0;c[t+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;F=Ua(24556)|0;if(!F){I=j+11|0;J=j+4|0;K=0;L=0}else{tz(j,F)|0;F=j+11|0;M=j+4|0;I=F;J=M;K=a[F>>0]|0;L=c[M>>2]|0}if((((K<<24>>24<0?L:K&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0)?(tz(j,24566)|0,K=Ua(24623)|0,K|0):0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,K,kn(K)|0);K=k+11|0;L=k+4|0;while(1){M=a[I>>0]|0;F=M<<24>>24<0;N=F?c[j>>2]|0:j;O=F?c[J>>2]|0:M&255;if(O>>>0<5)break;M=N+O|0;F=N;P=M;a:do if((O|0)>=5?(Q=M+-4|0,(Q|0)!=(N|0)):0){R=F;S=N;while(1){T=R;U=S;while(1){if((a[U>>0]|0)==36){V=24628;W=U;break}X=U+1|0;if((X|0)==(Q|0)){Y=P;break a}else{T=X;U=X}}do{V=V+1|0;if((V|0)==24633){Y=T;break a}W=W+1|0}while((a[W>>0]|0)==(a[V>>0]|0));T=U+1|0;if((T|0)==(Q|0)){Y=P;break}else{R=T;S=T}}}else Y=P;while(0);P=Y-F|0;if(!(P>>>0<O>>>0&((P|0)!=-1&(Y|0)!=(M|0))))break;N=a[K>>0]|0;S=N<<24>>24<0;Cz(j,P,5,S?c[k>>2]|0:k,S?c[L>>2]|0:N&255)|0}oz(k)}L=Dz(j,58,0)|0;K=a[I>>0]|0;if(L>>>0<(K<<24>>24<0?c[J>>2]|0:K&255)>>>0){K=t+8|0;Y=0;V=L;while(1){nz(k,j,Y,V-Y|0,j);L=c[E>>2]|0;if(L>>>0<(c[K>>2]|0)>>>0){c[L>>2]=c[k>>2];c[L+4>>2]=c[k+4>>2];c[L+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[E>>2]=(c[E>>2]|0)+12}else Ae(t,k);oz(k);L=V+1|0;V=Dz(j,58,L)|0;W=a[I>>0]|0;if(V>>>0>=(W<<24>>24<0?c[J>>2]|0:W&255)>>>0){Z=L;_=j;break}else Y=L}}else{Z=0;_=j}nz(k,j,Z,-1,_);_=c[E>>2]|0;if(_>>>0<(c[t+8>>2]|0)>>>0){c[_>>2]=c[k>>2];c[_+4>>2]=c[k+4>>2];c[_+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[E>>2]=(c[E>>2]|0)+12}else Ae(t,k);oz(k);oz(j);_=c[t>>2]|0;Z=(c[E>>2]|0)-_|0;Y=(Z|0)/12|0;b:do if((Z|0)>0){J=r+11|0;V=r+4|0;I=s+11|0;K=s+4|0;L=j+112|0;W=j+8|0;N=j+12|0;S=j+4|0;P=j+112|0;R=j+184|0;Q=j+188|0;T=j+76|0;X=j+100|0;$=j+8|0;aa=1;ba=0;ca=_;while(1){da=ca+(ba*12|0)|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;ea=a[da+11>>0]|0;fa=ea<<24>>24<0;ga=fa?c[ca+(ba*12|0)+4>>2]|0:ea&255;Gz(k,fa?c[da>>2]|0:da,ga,ga+1|0);xz(k,24634,1)|0;ga=a[J>>0]|0;da=ga<<24>>24<0;fa=xz(k,da?c[r>>2]|0:r,da?c[V>>2]|0:ga&255)|0;c[j>>2]=c[fa>>2];c[j+4>>2]=c[fa+4>>2];c[j+8>>2]=c[fa+8>>2];c[fa>>2]=0;c[fa+4>>2]=0;c[fa+8>>2]=0;if((a[I>>0]|0)<0){a[c[s>>2]>>0]=0;c[K>>2]=0}else{a[s>>0]=0;a[I>>0]=0}sz(s,0);c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;oz(j);oz(k);c[W>>2]=7308;c[j>>2]=7348;c[L>>2]=7368;c[S>>2]=0;hq(P,N);c[R>>2]=0;c[Q>>2]=-1;c[j>>2]=7288;c[L>>2]=7328;c[W>>2]=7308;Be(N);if((c[T>>2]|0)==0?(fa=Yn((a[I>>0]|0)<0?c[s>>2]|0:s,24636)|0,c[T>>2]=fa,(fa|0)!=0):0){c[X>>2]=8;gq(j+(c[(c[j>>2]|0)+-12>>2]|0)|0,0)}else{fa=j+(c[(c[j>>2]|0)+-12>>2]|0)|0;gq(fa,c[fa+16>>2]|4)}fa=c[T>>2]|0;do if(!fa){ha=1;ia=aa&(ba+1|0)<(Y|0)}else{ga=tb[c[(c[N>>2]|0)+24>>2]&127](N)|0;if((_n(fa)|0)==0?(c[T>>2]=0,(ga|0)==0):0){ha=0;ia=aa;break}ga=j+(c[(c[j>>2]|0)+-12>>2]|0)|0;gq(ga,c[ga+16>>2]|4);ha=0;ia=aa}while(0);c[j>>2]=7288;c[L>>2]=7328;c[$>>2]=7308;Ce(N);Bq(j,7380);$o(L);fa=ba+1|0;if(!(ha&(fa|0)<(Y|0))){ja=ia;break b}aa=ia;ba=fa;ca=c[t>>2]|0}}else ja=1;while(0);De(v,s,0);c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[x>>2]=0;ia=x+4|0;c[ia>>2]=0;c[x+8>>2]=0;jB(j|0,7416,1728)|0;Y=x+8|0;ha=0;do{_=ha*24|0;Z=0;do{ca=j+(Z+_<<2)|0;ba=c[ia>>2]|0;if((ba|0)==(c[Y>>2]|0))xe(x,ca);else{c[ba>>2]=c[ca>>2];c[ia>>2]=ba+4}Z=Z+1|0}while((Z|0)<24);ha=ha+1|0}while((ha|0)<18);c[y>>2]=0;ha=y+4|0;c[ha>>2]=0;c[y+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;_=y+8|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24638,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24638,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24640,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24640,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24645,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24647,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24649,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24654,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24657,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24660,3);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24664,3);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24647,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24668,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24668,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24673,6);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24673,6);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24680,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24686,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24689,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24695,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24701,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24707,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24712,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,47807,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,24686,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Ae(y,j);oz(j);Z=c[y>>2]|0;ba=c[ha>>2]|0;ca=(ba-Z|0)/12|0;aa=ca>>>1;L=Z+(aa*12|0)|0;N=ba;do if(h==1.0){if(!aa){ka=ba;la=N;break}if((L|0)==(N|0)){ma=Z;na=ba;oa=L}else{$=L;T=Z;do{X=T+11|0;if((a[X>>0]|0)<0){a[c[T>>2]>>0]=0;c[T+4>>2]=0}else{a[T>>0]=0;a[X>>0]=0}sz(T,0);c[T>>2]=c[$>>2];c[T+4>>2]=c[$+4>>2];c[T+8>>2]=c[$+8>>2];c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;$=$+12|0;T=T+12|0}while(($|0)!=(N|0));$=c[ha>>2]|0;ma=T;na=$;oa=$}if((oa|0)==(ma|0)){ka=na;la=oa;break}else pa=oa;do{$=pa+-12|0;c[ha>>2]=$;oz($);pa=c[ha>>2]|0}while((pa|0)!=(ma|0));ka=pa;la=ma}else{T=Z+(ca*12|0)|0;if((aa|0)==(ca|0)){ka=ba;la=N;break}if((T|0)==(N|0)){qa=L;ra=ba;sa=N}else{$=T;T=L;do{X=T+11|0;if((a[X>>0]|0)<0){a[c[T>>2]>>0]=0;c[T+4>>2]=0}else{a[T>>0]=0;a[X>>0]=0}sz(T,0);c[T>>2]=c[$>>2];c[T+4>>2]=c[$+4>>2];c[T+8>>2]=c[$+8>>2];c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;$=$+12|0;T=T+12|0}while(($|0)!=(N|0));$=c[ha>>2]|0;qa=T;ra=$;sa=$}if((sa|0)==(qa|0)){ka=ra;la=sa;break}else ta=sa;do{$=ta+-12|0;c[ha>>2]=$;oz($);ta=c[ha>>2]|0}while((ta|0)!=(qa|0));ka=ta;la=qa}while(0);c[b>>2]=0;qa=b+4|0;c[qa>>2]=0;c[b+8>>2]=0;c[z>>2]=0;ta=z+4|0;c[ta>>2]=0;c[z+8>>2]=0;do if(ja){if(!(c[v+72>>2]&1)){ua=ka;break}sa=c[x>>2]|0;ra=c[ia>>2]|0;if((ra|0)!=(sa|0))c[ia>>2]=ra+(~((ra+-4-sa|0)>>>2)<<2);sa=c[y>>2]|0;if((la|0)!=(sa|0)){ra=la;do{N=ra+-12|0;c[ha>>2]=N;oz(N);ra=c[ha>>2]|0}while((ra|0)!=(sa|0))}sa=w+11|0;ra=w+4|0;N=j+11|0;L=j+4|0;ba=n+4|0;ca=n+8|0;aa=n+20|0;Z=n+32|0;ma=j+44|0;pa=o+44|0;oa=j+48|0;na=j+12|0;T=o+48|0;$=j+44|0;X=j+48|0;I=j+12|0;W=p+11|0;Q=p+4|0;R=A+48|0;P=A+12|0;S=o+36|0;K=o+40|0;V=T+11|0;J=o+52|0;M=j+4|0;O=j+36|0;F=o+36|0;fa=j+40|0;ga=o+40|0;da=j+36|0;ea=j+40|0;va=o+12|0;c:while(1){c[j>>2]=iq(v+(c[(c[v>>2]|0)+-12>>2]|0)|0)|0;wa=Hr(j,43804)|0;xa=Bb[c[(c[wa>>2]|0)+28>>2]&63](wa,10)|0;Oy(j);wa=Ee(v,w,xa)|0;if(c[wa+(c[(c[wa>>2]|0)+-12>>2]|0)+16>>2]&5|0){ya=233;break};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;wa=a[sa>>0]|0;do if((wa<<24>>24<0?c[ra>>2]|0:wa&255)|0){nz(j,w,0,1,w);xa=a[N>>0]|0;if(((xa<<24>>24<0?c[L>>2]|0:xa&255)|0)==1){xa=(Fz(j,0,-1,24717,1)|0)==0;oz(j);if(xa)break}else oz(j);xa=a[sa>>0]|0;za=xa<<24>>24<0;Aa=za?c[w>>2]|0:w;c[n>>2]=Aa;c[ba>>2]=Aa+(za?c[ra>>2]|0:xa&255);kz(ca,q);kz(aa,C);c[Z>>2]=c[D>>2];c[Z+4>>2]=c[D+4>>2];a[Z+8>>0]=a[D+8>>0]|0;Fe(o,n);while(1){Ge(j,n);xa=a[ma>>0]|0;za=a[pa>>0]|0;do if(xa<<24>>24){if(!(za<<24>>24)){Ba=0;ya=199;break}if((c[da>>2]|0)==(c[F>>2]|0)){Ca=(c[ea>>2]|0)==(c[ga>>2]|0);ya=200;break}else{oz(oa);oz(na);oz(j);break}}else{Ba=za;ya=199}while(0);if((ya|0)==199){ya=0;Ca=xa<<24>>24==Ba<<24>>24;ya=200}if((ya|0)==200?(ya=0,oz(oa),oz(na),oz(j),Ca):0)break;if(!(a[pa>>0]|0)){ya=206;break c}kz(p,T);Fe(j,n);za=a[$>>0]|0;Aa=a[pa>>0]|0;do if(za<<24>>24){if(!(Aa<<24>>24)){Ea=0;ya=211;break}if((c[O>>2]|0)==(c[F>>2]|0)){Fa=(c[fa>>2]|0)==(c[ga>>2]|0);ya=212;break}else{oz(X);oz(I);oz(j);ya=218;break}}else{Ea=Aa;ya=211}while(0);if((ya|0)==211){ya=0;Fa=za<<24>>24==Ea<<24>>24;ya=212}d:do if((ya|0)==212){ya=0;oz(X);oz(I);oz(j);if(!Fa){ya=218;break}Aa=a[W>>0]|0;do if(((Aa<<24>>24<0?c[Q>>2]|0:Aa&255)|0)==1){if(Fz(p,0,-1,24543,1)|0)break;tz(m,47807)|0;break d}while(0);pz(m,p)|0;He(A,o,0);oz(R);oz(P);oz(A)}while(0);if((ya|0)==218){ya=0;if(!(a[pa>>0]|0)){ya=219;break c}za=a[V>>0]|0;Aa=za<<24>>24<0;xa=Aa?c[T>>2]|0:T;Ga=xa+(Aa?c[J>>2]|0:za&255)|0;c[j>>2]=xa;c[M>>2]=Ga;if(!(Ie(xa,Ga,k,34978,36885,24818,36876,40,41)|0)){if(!(Je(j,k)|0)){ya=223;break c}switch(a[(c[M>>2]|0)+-1>>0]|0){case 43:case 45:case 69:case 101:{ya=223;break c;break}default:{}}}Ga=c[k>>2]|0;c[B>>2]=Ga;xa=c[ia>>2]|0;if(xa>>>0<(c[Y>>2]|0)>>>0){c[xa>>2]=Ga;c[ia>>2]=xa+4}else Md(x,B)}oz(p);if(!(a[pa>>0]|0)){ya=229;break c}c[k>>2]=c[K>>2];c[j>>2]=c[k>>2];a[pa>>0]=(Le(o,S,j,T)|0)&1}oz(T);oz(va);oz(o);U=c[ha>>2]|0;if((U|0)==(c[_>>2]|0))he(y,m);else{kz(U,m);c[ha>>2]=(c[ha>>2]|0)+12}oz(aa);oz(ca)}while(0);oz(m)}if((ya|0)==206)Da(24719,24726,56,24806);else if((ya|0)==219)Da(24719,24726,56,24806);else if((ya|0)==223)Ke();else if((ya|0)==229)Da(24719,24726,51,24827);else if((ya|0)==233){ca=fe(43100,24837,19)|0;aa=xq(ca,((c[ha>>2]|0)-(c[y>>2]|0)|0)/12|0)|0;c[j>>2]=iq(aa+(c[(c[aa>>2]|0)+-12>>2]|0)|0)|0;ca=Hr(j,43804)|0;va=Bb[c[(c[ca>>2]|0)+28>>2]&63](ca,10)|0;Oy(j);Aq(aa,va)|0;nq(aa)|0;ua=c[ha>>2]|0;break}}else ua=ka;while(0);if((ua-(c[y>>2]|0)|0)>0){ua=k+4|0;ka=k+8|0;ya=h==0.0;_=m+11|0;Y=m+4|0;A=k+8|0;Fa=z+8|0;Ea=n+56|0;Ca=n+4|0;Ba=n+56|0;D=n+128|0;la=n+132|0;ja=n+36|0;aa=n+52|0;va=b+8|0;ca=e+4|0;T=e+8|0;S=0;do{pa=S*24|0;K=pa+12|0;M=pa|1;J=pa|2;V=pa|3;P=pa|4;R=pa|5;Q=pa|6;W=pa|7;I=pa+8|0;X=pa+9|0;ga=pa+10|0;fa=pa+11|0;F=pa|1;O=pa|2;$=pa|3;na=pa|4;oa=pa|5;ea=pa|6;da=pa|7;ma=pa+8|0;Z=pa+9|0;ra=pa+10|0;ba=pa+11|0;sa=0;L=0;while(1){c[k>>2]=0;c[ua>>2]=0;c[ka>>2]=0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,47807,0);N=c[x>>2]|0;do if(ya){if(+g[N+(M<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+4>>2]|0)|0;Ha=c[x>>2]|0}else Ha=N;if(+g[Ha+(J<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+8>>2]|0)|0;Ia=c[x>>2]|0}else Ia=Ha;if(+g[Ia+(V<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+12>>2]|0)|0;Ja=c[x>>2]|0}else Ja=Ia;if(+g[Ja+(P<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+16>>2]|0)|0;Ka=c[x>>2]|0}else Ka=Ja;if(+g[Ka+(R<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+20>>2]|0)|0;La=c[x>>2]|0}else La=Ka;if(+g[La+(Q<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+24>>2]|0)|0;Ma=c[x>>2]|0}else Ma=La;if(+g[Ma+(W<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+28>>2]|0)|0;Na=c[x>>2]|0}else Na=Ma;if(+g[Na+(I<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+32>>2]|0)|0;Oa=c[x>>2]|0}else Oa=Na;if(+g[Oa+(X<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+36>>2]|0)|0;Pa=c[x>>2]|0}else Pa=Oa;if(+g[Pa+(ga<<2)>>2]>.99){tz(m,c[9144+(L*48|0)+40>>2]|0)|0;Qa=c[x>>2]|0}else Qa=Pa;if(!(+g[Qa+(fa<<2)>>2]>.99))break;tz(m,c[9144+(L*48|0)+44>>2]|0)|0}else{if(+g[N+(F<<2)>>2]>.99){tz(m,47807)|0;Ra=c[x>>2]|0}else Ra=N;if(+g[Ra+(O<<2)>>2]>.99){tz(m,24857)|0;Sa=c[x>>2]|0}else Sa=Ra;if(+g[Sa+($<<2)>>2]>.99){tz(m,24859)|0;Ta=c[x>>2]|0}else Ta=Sa;if(+g[Ta+(na<<2)>>2]>.99){tz(m,24862)|0;Va=c[x>>2]|0}else Va=Ta;if(+g[Va+(oa<<2)>>2]>.99){tz(m,24864)|0;Wa=c[x>>2]|0}else Wa=Va;if(+g[Wa+(ea<<2)>>2]>.99){tz(m,47807)|0;Xa=c[x>>2]|0}else Xa=Wa;if(+g[Xa+(da<<2)>>2]>.99){tz(m,24866)|0;Ya=c[x>>2]|0}else Ya=Xa;if(+g[Ya+(ma<<2)>>2]>.99){tz(m,47807)|0;Za=c[x>>2]|0}else Za=Ya;if(+g[Za+(Z<<2)>>2]>.99){tz(m,24645)|0;_a=c[x>>2]|0}else _a=Za;if(+g[_a+(ra<<2)>>2]>.99){tz(m,24868)|0;$a=c[x>>2]|0}else $a=_a;if(!(+g[$a+(ba<<2)>>2]>.99))break;tz(m,24647)|0}while(0);N=a[_>>0]|0;do if(!((N<<24>>24<0?c[Y>>2]|0:N&255)|0)){if(Fz(m,0,-1,47807,0)|0)break;wa=((L+12|0)%12|0)+45|0;c[j>>2]=wa;U=c[ua>>2]|0;if(U>>>0<(c[A>>2]|0)>>>0){c[U>>2]=wa;c[ua>>2]=U+4}else Me(k,j)}while(0);N=sa+12|0;U=0;do{g[j>>2]=0.0;wa=((N+U|0)%12|0)+pa|0;xa=c[x>>2]|0;do if(+g[xa+(wa<<2)>>2]==1.0){g[j>>2]=1.0;Ga=((U+12|0)%12|0)+45|0;c[n>>2]=Ga;za=c[ua>>2]|0;if(za>>>0<(c[A>>2]|0)>>>0){c[za>>2]=Ga;c[ua>>2]=za+4}else Me(k,n)}else{if(!(+g[xa+(wa+12<<2)>>2]==1.0))break;g[j>>2]=.5}while(0);wa=c[ta>>2]|0;if((wa|0)==(c[Fa>>2]|0))xe(z,j);else{c[wa>>2]=c[j>>2];c[ta>>2]=wa+4}U=U+1|0}while((U|0)<12);ab=0;do{U=K+((N+ab|0)%12|0)|0;wa=c[x>>2]|0;xa=wa+(U<<2)|0;za=c[ta>>2]|0;if((za|0)==(c[Fa>>2]|0)){xe(z,xa);bb=c[x>>2]|0}else{c[za>>2]=c[xa>>2];c[ta>>2]=za+4;bb=wa}if(+g[bb+(U<<2)>>2]>0.0){U=((ab+18|0)%12|0)+63|0;c[j>>2]=U;wa=c[ua>>2]|0;if(wa>>>0<(c[A>>2]|0)>>>0){c[wa>>2]=U;c[ua>>2]=wa+4}else Me(k,j)}ab=ab+1|0}while((ab|0)<12);c[n>>2]=9780;c[Ea>>2]=9800;hq(Ba,Ca);c[D>>2]=0;c[la>>2]=-1;c[n>>2]=9820;c[Ea>>2]=9840;jq(Ca);c[Ca>>2]=9856;c[ja>>2]=0;c[ja+4>>2]=0;c[ja+8>>2]=0;c[ja+12>>2]=0;c[aa>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ne(Ca,j);oz(j);N=a[_>>0]|0;wa=((N<<24>>24<0?c[Y>>2]|0:N&255)|0)==0;N=c[11032+(L+12<<2)>>2]|0;U=fe(n,N,kn(N)|0)|0;N=c[y>>2]|0;za=N+(S*12|0)|0;xa=a[za+11>>0]|0;Ga=xa<<24>>24<0;Aa=fe(U,Ga?c[za>>2]|0:za,Ga?c[N+(S*12|0)+4>>2]|0:xa&255)|0;if(!wa){wa=fe(Aa,24634,1)|0;Aa=a[_>>0]|0;xa=Aa<<24>>24<0;fe(wa,xa?c[m>>2]|0:m,xa?c[Y>>2]|0:Aa&255)|0}Oe(j,Ca);Aa=c[qa>>2]|0;if(Aa>>>0<(c[va>>2]|0)>>>0){c[Aa>>2]=c[j>>2];c[Aa+4>>2]=c[j+4>>2];c[Aa+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[qa>>2]=(c[qa>>2]|0)+12}else Ae(b,j);oz(j);Aa=c[ca>>2]|0;if((Aa|0)==(c[T>>2]|0))Qe(e,k);else{Pe(Aa,k);c[ca>>2]=(c[ca>>2]|0)+12}c[n>>2]=9820;c[Ea>>2]=9840;c[Ca>>2]=9856;oz(ja);ep(Ca);vq(n,9916);$o(Ea);oz(m);Aa=c[k>>2]|0;xa=Aa;if(Aa|0){wa=c[ua>>2]|0;if((wa|0)!=(Aa|0))c[ua>>2]=wa+(~((wa+-4-xa|0)>>>2)<<2);bz(Aa)}Aa=L+1|0;if((Aa|0)<12){sa=~L;L=Aa}else break}S=S+1|0}while((S|0)<(((c[ha>>2]|0)-(c[y>>2]|0)|0)/12|0|0))};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,28813,1);S=c[qa>>2]|0;if(S>>>0<(c[b+8>>2]|0)>>>0){c[S>>2]=c[j>>2];c[S+4>>2]=c[j+4>>2];c[S+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[qa>>2]=(c[qa>>2]|0)+12}else Ae(b,j);oz(j);S=z+8|0;g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[S>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Md(z,j);c[B>>2]=0;ua=B+4|0;c[ua>>2]=0;c[B+8>>2]=0;S=e+4|0;Ea=c[S>>2]|0;if((Ea|0)==(c[e+8>>2]|0))Qe(e,B);else{Pe(Ea,B);c[S>>2]=(c[S>>2]|0)+12}S=c[ta>>2]|0;Ea=c[z>>2]|0;e=Ea;if((S-Ea|0)>92){Ca=(S-Ea>>2|0)/24|0;Ea=Ca+-1|0;h=f+1.0;S=0;do{ja=S*24|0;ca=0;f=0.0;do{cb=+G(+(+g[e+(ca+ja<<2)>>2]));f=f+cb*cb/24.0;ca=ca+1|0}while((ca|0)!=24);cb=+G(+(+H(+f)));db=f==-u?u:cb;cb=(S|0)<(Ea|0)?db:db/h;ca=0;do{T=e+(ca+ja<<2)|0;g[T>>2]=+g[T>>2]/cb;ca=ca+1|0}while((ca|0)!=24);S=S+1|0}while((S|0)<(Ca|0))}Ca=(c[qa>>2]|0)-(c[b>>2]|0)|0;if((Ca|0)>0){b=(Ca>>>0)/12|0;eb=b>>>0>1?b:1}else eb=0;b=v+8|0;c[n>>2]=b;c[n+4>>2]=8;c[o>>2]=b;c[o+4>>2]=16;c[p>>2]=v+44;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[j>>2]=c[p>>2];Re(m,k,j)|0;c[v+72>>2]=0;j=eb*24|0;if((eb|0)>0){eb=d+4|0;k=d+8|0;m=0;do{p=(c[z>>2]|0)+(m<<2)|0;o=c[eb>>2]|0;if((o|0)==(c[k>>2]|0))xe(d,p);else{c[o>>2]=c[p>>2];c[eb>>2]=o+4}m=m+1|0}while((m|0)<(j|0))}j=c[B>>2]|0;B=j;if(j|0){m=c[ua>>2]|0;if((m|0)!=(j|0))c[ua>>2]=m+(~((m+-4-B|0)>>>2)<<2);bz(j)}j=c[z>>2]|0;z=j;if(j|0){B=c[ta>>2]|0;if((B|0)!=(j|0))c[ta>>2]=B+(~((B+-4-z|0)>>>2)<<2);bz(j)}j=c[y>>2]|0;if(j|0){z=c[ha>>2]|0;if((z|0)==(j|0))fb=j;else{B=z;do{z=B+-12|0;c[ha>>2]=z;oz(z);B=c[ha>>2]|0}while((B|0)!=(j|0));fb=c[y>>2]|0}bz(fb)}fb=c[x>>2]|0;x=fb;if(fb|0){y=c[ia>>2]|0;if((y|0)!=(fb|0))c[ia>>2]=y+(~((y+-4-x|0)>>>2)<<2);bz(fb)}oz(w);lq(v,9936);Se(v+8|0);$o(v+76|0);v=c[t>>2]|0;if(!v){oz(s);oz(r);oz(C);oz(q);l=i;return}w=c[E>>2]|0;if((w|0)==(v|0))gb=v;else{fb=w;do{w=fb+-12|0;c[E>>2]=w;oz(w);fb=c[E>>2]|0}while((fb|0)!=(v|0));gb=c[t>>2]|0}bz(gb);oz(s);oz(r);oz(C);oz(q);l=i;return}function Ae(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;j=f;e=l+(k*12|0)|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=f+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=f;do{f=j+-12|0;g=g+-12|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=e;e=n;if((o|0)!=(e|0)){h=o;do{h=h+-12|0;oz(h)}while((h|0)!=(e|0))}if(!n)return;bz(n);return}function Be(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e+4|0;g=e;jq(d);c[d>>2]=10652;c[d+32>>2]=0;c[d+36>>2]=0;c[d+40>>2]=0;h=d+52|0;i=d+68|0;j=d+98|0;k=h;m=k+44|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));b[h+44>>1]=0;a[h+46>>0]=0;h=d+4|0;Ny(f,h);c[g>>2]=c[f>>2];k=Qy(g,45596)|0;Oy(g);if(!k){n=c[d>>2]|0;o=n+12|0;p=c[o>>2]|0;kb[p&31](d,0,4096)|0;l=e;return}Ny(f,h);c[g>>2]=c[f>>2];c[i>>2]=Hr(g,45596)|0;Oy(g);g=c[i>>2]|0;a[j>>0]=(tb[c[(c[g>>2]|0)+28>>2]&127](g)|0)&1;n=c[d>>2]|0;o=n+12|0;p=c[o>>2]|0;kb[p&31](d,0,4096)|0;l=e;return}function Ce(d){d=d|0;var e=0,f=0,g=0;c[d>>2]=10652;e=d+64|0;f=c[e>>2]|0;if(f|0?(Ng(d)|0,(_n(f)|0)==0):0)c[e>>2]=0;e=b[d+96>>1]|0;f=(e&65535)>>>8&255;if((e&255)<<24>>24!=0?(e=c[d+32>>2]|0,(e|0)!=0):0){cz(e);g=a[d+97>>0]|0}else g=f;if(g<<24>>24?(g=c[d+56>>2]|0,g|0):0)cz(g);ep(d);return}function De(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;e=l;l=l+16|0;f=e;g=b+76|0;c[g>>2]=17148;h=b+8|0;jq(h);c[b+40>>2]=0;a[b+52>>0]=0;i=b+56|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[b+72>>2]=4;c[h>>2]=9960;c[b>>2]=10380;c[g>>2]=10400;c[b+4>>2]=0;hq(b+76|0,h);c[b+148>>2]=0;c[b+152>>2]=-1;c[b>>2]=10324;c[g>>2]=10344;c[f>>2]=0;g=f+4|0;c[g>>2]=0;h=$y(100)|0;Be(h);i=h+64|0;if((c[i>>2]|0)==0?(j=Yn((a[d+11>>0]|0)<0?c[d>>2]|0:d,24636)|0,c[i>>2]=j,j|0):0)c[h+88>>2]=8;Cg(f,h);gq(b+(c[(c[b>>2]|0)+-12>>2]|0)|0,0);Dg(b+8|0,f,-1,-1);f=c[g>>2]|0;if(!f){l=e;return}g=f+4|0;b=c[g>>2]|0;c[g>>2]=b-1;if((b|0)!=1){l=e;return}qb[c[(c[f>>2]|0)+8>>2]&511](f);b=f+8|0;g=c[b>>2]|0;c[b>>2]=g-1;if((g|0)!=1){l=e;return}qb[c[(c[f>>2]|0)+12>>2]&511](f);l=e;return}function Ee(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=l;l=l+16|0;h=g;mq(h,b,1);if(!(a[h>>0]|0)){l=g;return b|0}h=e+11|0;if((a[h>>0]|0)<0){a[c[e>>2]>>0]=0;i=e+4|0;c[i>>2]=0;j=i}else{a[e>>0]=0;a[h>>0]=0;j=e+4|0}i=0;while(1){k=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;m=k+12|0;n=c[m>>2]|0;if((n|0)==(c[k+16>>2]|0)){o=tb[c[(c[k>>2]|0)+40>>2]&127](k)|0;if((o|0)==-1){p=i;q=2;break}else r=o}else{c[m>>2]=n+1;r=d[n>>0]|0}n=i+1|0;m=r&255;if(m<<24>>24==f<<24>>24){p=n;q=0;break}zz(e,m);if((a[h>>0]|0)<0&(c[j>>2]|0)==-17){p=n;q=4;break}else i=n}i=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;gq(i,c[i+16>>2]|((p|0)==0?q|4:q));l=g;return b|0}function Fe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+64|0;f=e+48|0;g=e+44|0;h=e+8|0;i=e+4|0;j=e;kz(h,d+8|0);k=h+12|0;kz(k,d+20|0);m=h+24|0;n=d+32|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];a[m+8>>0]=a[n+8>>0]|0;c[i>>2]=c[d>>2];c[j>>2]=c[d+4>>2];c[g>>2]=c[i>>2];c[f>>2]=c[j>>2];Bg(b,h,g,f);oz(k);oz(h);l=e;return}function Ge(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+64|0;f=e+48|0;g=e+44|0;h=e+8|0;i=e+4|0;j=e;kz(h,d+8|0);k=h+12|0;kz(k,d+20|0);m=h+24|0;n=d+32|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];a[m+8>>0]=a[n+8>>0]|0;n=c[d+4>>2]|0;c[i>>2]=n;c[j>>2]=n;c[g>>2]=c[i>>2];c[f>>2]=c[j>>2];Bg(b,h,g,f);oz(k);oz(h);l=e;return}function He(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;e=l;l=l+16|0;f=e+4|0;g=e;kz(b,d);kz(b+12|0,d+12|0);h=b+24|0;i=d+24|0;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];a[h+8>>0]=a[i+8>>0]|0;i=b+36|0;h=d+36|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];a[i+8>>0]=a[h+8>>0]|0;h=d+48|0;kz(b+48|0,h);b=d+44|0;if(!(a[b>>0]|0))Da(24719,24726,51,24827);else{c[g>>2]=c[d+40>>2];c[f>>2]=c[g>>2];a[b>>0]=(Le(d,d+36|0,f,h)|0)&1;l=e;return}}function Ie(b,c,d,e,f,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|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;if((b|0)==(c|0)){l=0;return l|0}m=a[b>>0]|0;n=m<<24>>24==45;o=n|m<<24>>24==43?b+1|0:b;b=c;m=b-o|0;if((m|0)<3){l=0;return l|0}p=a[o>>0]|0;if(!(p<<24>>24!=(a[f>>0]|0)?p<<24>>24!=(a[e>>0]|0):0))q=5;do if((q|0)==5){r=a[o+1>>0]|0;if(r<<24>>24!=(a[f+1>>0]|0)?r<<24>>24!=(a[e+1>>0]|0):0)break;r=a[o+2>>0]|0;if(r<<24>>24!=(a[f+2>>0]|0)?r<<24>>24!=(a[e+2>>0]|0):0)break;r=o+3|0;if((r|0)!=(c|0)){if((b-r|0)<2){l=0;return l|0}if((a[r>>0]|0)!=j<<24>>24){l=0;return l|0}if((a[c+-1>>0]|0)!=k<<24>>24){l=0;return l|0}}if(n){g[d>>2]=t;l=1;return l|0}else{g[d>>2]=t;l=1;return l|0}}while(0);switch(m|0){case 3:{if(p<<24>>24!=(a[i>>0]|0)?p<<24>>24!=(a[h>>0]|0):0){l=0;return l|0}m=a[o+1>>0]|0;if(m<<24>>24!=(a[i+1>>0]|0)?m<<24>>24!=(a[h+1>>0]|0):0){l=0;return l|0}m=a[o+2>>0]|0;if(m<<24>>24!=(a[i+2>>0]|0)?m<<24>>24!=(a[h+2>>0]|0):0){l=0;return l|0}break}case 8:{if(p<<24>>24!=(a[i>>0]|0)?p<<24>>24!=(a[h>>0]|0):0){l=0;return l|0}p=a[o+1>>0]|0;if(p<<24>>24!=(a[i+1>>0]|0)?p<<24>>24!=(a[h+1>>0]|0):0){l=0;return l|0}p=a[o+2>>0]|0;if(p<<24>>24!=(a[i+2>>0]|0)?p<<24>>24!=(a[h+2>>0]|0):0){l=0;return l|0}p=a[o+3>>0]|0;if(p<<24>>24!=(a[i+3>>0]|0)?p<<24>>24!=(a[h+3>>0]|0):0){l=0;return l|0}p=a[o+4>>0]|0;if(p<<24>>24!=(a[i+4>>0]|0)?p<<24>>24!=(a[h+4>>0]|0):0){l=0;return l|0}p=a[o+5>>0]|0;if(p<<24>>24!=(a[i+5>>0]|0)?p<<24>>24!=(a[h+5>>0]|0):0){l=0;return l|0}p=a[o+6>>0]|0;if(p<<24>>24!=(a[i+6>>0]|0)?p<<24>>24!=(a[h+6>>0]|0):0){l=0;return l|0}p=a[o+7>>0]|0;if(p<<24>>24!=(a[i+7>>0]|0)?p<<24>>24!=(a[h+7>>0]|0):0){l=0;return l|0}break}default:{l=0;return l|0}}if(n){g[d>>2]=-u;l=1;return l|0}else{g[d>>2]=u;l=1;return l|0}return 0}function Je(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+128|0;e=d+88|0;f=d;jq(e);c[e>>2]=10556;g=c[a>>2]|0;h=g+((c[a+4>>2]|0)-g)|0;c[e+8>>2]=g;c[e+12>>2]=g;c[e+16>>2]=h;h=f+8|0;c[f>>2]=17312;c[h>>2]=17332;c[f+4>>2]=0;hq(h,e);c[f+80>>2]=0;c[f+84>>2]=-1;h=f+(c[(c[f>>2]|0)+-12>>2]|0)|0;c[h+20>>2]=1;gq(h,c[h+16>>2]|0);h=f+(c[(c[f>>2]|0)+-12>>2]|0)+4|0;c[h>>2]=c[h>>2]&-4097;c[f+(c[(c[f>>2]|0)+-12>>2]|0)+8>>2]=9;h=qq(f,b)|0;if(c[h+(c[(c[h>>2]|0)+-12>>2]|0)+16>>2]&5|0){i=0;Hp(f);ep(e);l=d;return i|0}i=(rq(f)|0)==-1;Hp(f);ep(e);l=d;return i|0}function Ke(){var a=0,b=0;a=l;l=l+16|0;b=a;VA(b);c[b>>2]=10416;c[b+4>>2]=496;c[b+8>>2]=6992;dg(b)}function Le(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;g=b+28|0;a:do if(!(c[g>>2]|0)){h=b+25|0;i=c[d>>2]|0;j=c[e>>2]|0;if((i|0)==(j|0)){k=0;return k|0}l=b+12|0;m=l+11|0;n=b+16|0;o=i;while(1){i=a[o>>0]|0;p=a[m>>0]|0;if(p<<24>>24<0)q=c[n>>2]|0;else q=p&255;if(!q){if(!(a[h>>0]|0)){r=o;break}if(!(nn(i<<24>>24)|0)){r=o;break}else s=o}else{p=(Dz(l,i,0)|0)==-1;i=c[d>>2]|0;if(p){r=i;break}else s=i}o=s+1|0;c[d>>2]=o;if((o|0)==(j|0)){r=j;break}}o=(r|0)==(j|0);if(c[g>>2]|0)if(o){t=r;u=j;v=43;break}else{w=d;x=r;y=e;v=53;break}if(o){k=0;return k|0}o=a[r>>0]|0;l=b+11|0;n=a[l>>0]|0;if(n<<24>>24<0)z=c[b+4>>2]|0;else z=n&255;if(!z)if((a[b+24>>0]|0)!=0?(oo(o<<24>>24)|0)!=0:0){A=r;v=24}else B=r;else{n=(Dz(b,o,0)|0)==-1;o=c[d>>2]|0;if(n)B=o;else{A=o;v=24}}if((v|0)==24){c[d>>2]=A+1;C=r;break}if((B|0)==(j|0))C=r;else{o=b+12|0;n=o+11|0;m=b+16|0;i=b+4|0;p=b+24|0;D=B;while(1){E=a[D>>0]|0;F=a[n>>0]|0;if(F<<24>>24<0)G=c[m>>2]|0;else G=F&255;if(!G)if((a[h>>0]|0)!=0?(nn(E<<24>>24)|0)!=0:0){C=r;break a}else{H=D;I=E}else{if((Dz(o,E,0)|0)!=-1){C=r;break a}E=c[d>>2]|0;H=E;I=a[E>>0]|0}E=a[l>>0]|0;if(E<<24>>24<0)J=c[i>>2]|0;else J=E&255;if(!J)if((a[p>>0]|0)!=0?(oo(I<<24>>24)|0)!=0:0){C=r;break a}else K=H;else{if((Dz(b,I,0)|0)!=-1){C=r;break a}K=c[d>>2]|0}D=K+1|0;c[d>>2]=D;if((D|0)==(j|0)){C=r;break}}}}else{j=c[d>>2]|0;if((j|0)==(c[e>>2]|0)){t=j;u=j;v=43}else{w=d;x=j;y=e;v=53}}while(0);if((v|0)==43){e=b+32|0;if(a[e>>0]|0){k=0;return k|0}a[e>>0]=1;e=u;r=t-e|0;K=f+11|0;I=a[K>>0]|0;H=I<<24>>24<0;if(H)L=(c[f+8>>2]&2147483647)+-1|0;else L=10;if(r>>>0>L>>>0){J=H?c[f+4>>2]|0:I&255;wz(f,L,r-L|0,J,0,J,0);M=a[K>>0]|0}else M=I;I=M<<24>>24<0?c[f>>2]|0:f;if((u|0)==(t|0))N=I;else{M=I;I=e;e=u;while(1){a[M>>0]=a[e>>0]|0;u=I+1|0;J=M+1|0;if((u|0)==(t|0)){N=J;break}else{M=J;I=u;e=u}}}a[N>>0]=0;if((a[K>>0]|0)<0){c[f+4>>2]=r;k=1;return k|0}else{a[K>>0]=r;k=1;return k|0}}b:do if((v|0)==53){r=a[x>>0]|0;K=b+11|0;N=a[K>>0]|0;if(N<<24>>24<0)O=c[b+4>>2]|0;else O=N&255;do if(!O)if(!(a[b+24>>0]|0)){N=b+32|0;if(!(a[N>>0]|0)){P=r;Q=N;v=66;break}else{R=N;break}}else{N=(oo(r<<24>>24)|0)==0;e=b+32|0;I=(a[e>>0]|0)==0;if(N){S=I;T=e;v=64;break}else{U=e;V=I;v=61;break}}else{I=(Dz(b,r,0)|0)==-1;e=b+32|0;N=(a[e>>0]|0)==0;if(I){S=N;T=e;v=64}else{U=e;V=N;v=61}}while(0);if((v|0)==61)if(V){a[U>>0]=1;C=x;break}else{c[w>>2]=(c[w>>2]|0)+1;a[U>>0]=0;C=x;break}else if((v|0)==64)if(S){P=a[c[w>>2]>>0]|0;Q=T;v=66}else R=T;do if((v|0)==66){r=b+12|0;N=a[r+11>>0]|0;if(N<<24>>24<0)W=c[b+16>>2]|0;else W=N&255;if(!W){if(!(a[b+25>>0]|0)){R=Q;break}if(!(nn(P<<24>>24)|0)){R=Q;break}}else if((Dz(r,P,0)|0)==-1){R=Q;break}a[Q>>0]=1;C=x;break b}while(0);r=c[w>>2]|0;N=a[r>>0]|0;e=b+12|0;I=e+11|0;M=a[I>>0]|0;if(M<<24>>24<0)X=c[b+16>>2]|0;else X=M&255;if(!X)if((a[b+25>>0]|0)!=0?(nn(N<<24>>24)|0)!=0:0){Y=r;v=81}else{Z=x;_=r}else{r=(Dz(e,N,0)|0)==-1;N=c[w>>2]|0;if(r){Z=x;_=N}else{Y=N;v=81}}if((v|0)==81){N=Y+1|0;c[w>>2]=N;Z=N;_=N}c:do if((_|0)!=(c[y>>2]|0)){N=b+16|0;r=b+25|0;M=b+4|0;t=b+24|0;u=_;do{J=a[u>>0]|0;L=a[I>>0]|0;if(L<<24>>24<0)$=c[N>>2]|0;else $=L&255;if(!$)if((a[r>>0]|0)!=0?(nn(J<<24>>24)|0)!=0:0)break c;else{aa=J;ba=u}else{if((Dz(e,J,0)|0)!=-1)break c;J=c[w>>2]|0;aa=a[J>>0]|0;ba=J}J=a[K>>0]|0;if(J<<24>>24<0)ca=c[M>>2]|0;else ca=J&255;if(!ca)if((a[t>>0]|0)!=0?(oo(aa<<24>>24)|0)!=0:0)break c;else da=ba;else{if((Dz(b,aa,0)|0)!=-1)break c;da=c[w>>2]|0}u=da+1|0;c[w>>2]=u}while((u|0)!=(c[y>>2]|0))}while(0);a[R>>0]=1;C=Z}while(0);Z=c[d>>2]|0;d=C;R=Z-d|0;y=f+11|0;w=a[y>>0]|0;da=w<<24>>24<0;aa=Z;if(da)ea=(c[f+8>>2]&2147483647)+-1|0;else ea=10;if(R>>>0>ea>>>0){Z=da?c[f+4>>2]|0:w&255;wz(f,ea,R-ea|0,Z,0,Z,0);fa=a[y>>0]|0}else fa=w;w=fa<<24>>24<0?c[f>>2]|0:f;if((C|0)==(aa|0))ga=w;else{fa=w;w=d;d=C;while(1){a[fa>>0]=a[d>>0]|0;C=w+1|0;Z=fa+1|0;if((C|0)==(aa|0)){ga=Z;break}else{fa=Z;w=C;d=C}}}a[ga>>0]=0;if((a[y>>0]|0)<0){c[f+4>>2]=R;k=1;return k|0}else{a[y>>0]=R;k=1;return k|0}return 0}function Me(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823)Vx(a);h=a+8|0;i=(c[h>>2]|0)-f|0;j=i>>1;k=i>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=e-f>>2;do if(k)if(k>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{l=$y(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=e-f|0;e=g+(0-(b>>2)<<2)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+4;c[h>>2]=l+(k<<2);if(!f)return;bz(f);return}function Ne(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=b+32|0;pz(e,d)|0;d=b+44|0;c[d>>2]=0;f=b+48|0;g=c[f>>2]|0;if(g&8|0){h=a[e+11>>0]|0;if(h<<24>>24<0){i=c[e>>2]|0;j=i;k=i;l=i+(c[b+36>>2]|0)|0}else{j=e;k=e;l=e+(h&255)|0}c[d>>2]=l;c[b+8>>2]=j;c[b+12>>2]=k;c[b+16>>2]=l}if(!(g&16))return;g=e+11|0;l=a[g>>0]|0;if(l<<24>>24<0){k=c[b+36>>2]|0;c[d>>2]=(c[e>>2]|0)+k;m=(c[b+40>>2]&2147483647)+-1|0;n=k}else{k=l&255;c[d>>2]=e+k;m=10;n=k}uz(e,m,0);m=a[g>>0]|0;if(m<<24>>24<0){g=c[e>>2]|0;o=g;p=c[b+36>>2]|0;q=g}else{o=e;p=m&255;q=e}e=b+24|0;c[e>>2]=q;c[b+20>>2]=q;c[b+28>>2]=o+p;if(!(c[f>>2]&3))return;c[e>>2]=q+n;return}function Oe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c[d+48>>2]|0;if(e&16|0){f=d+44|0;g=c[f>>2]|0;h=c[d+24>>2]|0;if(g>>>0<h>>>0){c[f>>2]=h;i=h}else i=g;g=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;h=i-g|0;if(h>>>0>4294967279)iz(b);if(h>>>0<11){a[b+11>>0]=h;j=b}else{f=h+16&-16;k=$y(f)|0;c[b>>2]=k;c[b+8>>2]=f|-2147483648;c[b+4>>2]=h;j=k}if((g|0)==(i|0))l=j;else{k=j;f=g;while(1){a[k>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(i|0))break;else k=k+1|0}l=j+h|0}a[l>>0]=0;return}if(!(e&8)){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}e=c[d+8>>2]|0;l=c[d+16>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=l-e|0;if(d>>>0>4294967279)iz(b);if(d>>>0<11){a[b+11>>0]=d;m=b}else{h=d+16&-16;j=$y(h)|0;c[b>>2]=j;c[b+8>>2]=h|-2147483648;c[b+4>>2]=d;m=j}if((e|0)==(l|0))n=m;else{j=m;b=e;while(1){a[j>>0]=a[b>>0]|0;b=b+1|0;if((b|0)==(l|0))break;else j=j+1|0}n=m+d|0}a[n>>0]=0;return}function Pe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>2;if(!g)return;if(g>>>0>1073741823)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<2);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;jB(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>2<<2);return}function Qe(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;j=f;e=l+(k*12|0)|0;Pe(f,b);b=f+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=f;do{f=j+-12|0;i=g;g=g+-12|0;c[f>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[f>>2]=c[g>>2];f=i+-8|0;c[p>>2]=c[f>>2];p=i+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[f>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=e;e=n;if((o|0)!=(e|0)){h=o;do{o=h;h=h+-12|0;b=c[h>>2]|0;d=b;if(b|0){m=o+-8|0;o=c[m>>2]|0;if((o|0)!=(b|0))c[m>>2]=o+(~((o+-4-d|0)>>>2)<<2);bz(b)}}while((h|0)!=(e|0))}if(!n)return;bz(n);return}function Re(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,m=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;i=f+8|0;j=f;k=b;b=c[k+4>>2]|0;m=i;c[m>>2]=c[k>>2];c[m+4>>2]=b;b=d;d=c[b+4>>2]|0;m=j;c[m>>2]=c[b>>2];c[m+4>>2]=d;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];j=Tf(h,g)|0;g=c[e>>2]|0;e=g+8|0;if(!(a[e>>0]|0)){l=f;return j|0}h=c[g+4>>2]|0;if((h|0?(g=h+4|0,i=c[g>>2]|0,c[g>>2]=i-1,(i|0)==1):0)?(qb[c[(c[h>>2]|0)+8>>2]&511](h),i=h+8|0,g=c[i>>2]|0,c[i>>2]=g-1,(g|0)==1):0)qb[c[(c[h>>2]|0)+12>>2]&511](h);a[e>>0]=0;l=f;return j|0}function Se(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;d=l;l=l+48|0;e=d+40|0;f=d+32|0;g=d+24|0;h=d+8|0;i=d;j=d+16|0;c[b>>2]=9960;k=b+64|0;if((c[k>>2]&5|0)==5){m=b;c[h>>2]=m;c[h+4>>2]=8;c[i>>2]=m;c[i+4>>2]=16;c[j>>2]=b+36;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[e>>2]=c[j>>2];Re(g,f,e)|0;c[k>>2]=0}c[b>>2]=10060;k=c[b+52>>2]|0;if(k|0)bz(k);k=b+44|0;if(!(a[k>>0]|0)){ep(b);l=d;return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(qb[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)qb[c[(c[e>>2]|0)+12>>2]&511](e);a[k>>0]=0;ep(b);l=d;return}function Te(b){b=b|0;var d=0,e=0,f=0,g=0;c[b>>2]=10060;d=c[b+52>>2]|0;if(d|0)bz(d);d=b+44|0;if(!(a[d>>0]|0)){ep(b);return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(qb[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)qb[c[(c[e>>2]|0)+12>>2]&511](e);a[d>>0]=0;ep(b);return}function Ue(b){b=b|0;var d=0,e=0,f=0,g=0;c[b>>2]=10060;d=c[b+52>>2]|0;if(d|0)bz(d);d=b+44|0;if(!(a[d>>0]|0)){ep(b);bz(b);return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(qb[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)qb[c[(c[e>>2]|0)+12>>2]&511](e);a[d>>0]=0;ep(b);bz(b);return}function Ve(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;f=e+4|0;g=e;if(!(c[b+64>>2]&1)){l=e;return}if(!(a[b+44>>0]|0))Da(24871,24884,55,24975);h=c[b+48>>2]|0;if(!h){l=e;return}rb[c[(c[h>>2]|0)+8>>2]&127](h,d);b=h+4|0;Ny(f,b);Py(b,d)|0;c[g>>2]=c[f>>2];Oy(g);l=e;return}function We(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Jf(a,b,c,d,e,f);return}function Xe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=e+8|0;e=c[f>>2]|0;g=c[f+4>>2]|0;if(c[d+24>>2]|0)tb[c[(c[d>>2]|0)+24>>2]&127](d)|0;f=d+8|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;if(!(a[d+44>>0]|0))Da(24871,24884,55,24975);f=c[d+36>>2]|0;if(!f)Da(25303,25311,648,25397);else{mb[c[(c[f>>2]|0)+16>>2]&15](b,f,e,g,0,24);return}}function Ye(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+20>>2]|0;e=(c[b+24>>2]|0)-d|0;f=(a[b+44>>0]|0)==0;g=d;if((e|0)>0)if(f)Da(24871,24884,55,24975);else kf(b+36|0,g,e,c[b+48>>2]|0)|0;if(f)Da(24871,24884,55,24975);f=c[b+48>>2]|0;if(!f)return 0;tb[c[(c[f>>2]|0)+24>>2]&127](f)|0;return 0}function Ze(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=b+12|0;f=c[e>>2]|0;if(!f){qb[c[(c[b>>2]|0)+84>>2]&511](b);g=c[e>>2]|0}else g=f;f=b+16|0;if(g>>>0<(c[f>>2]|0)>>>0){h=d[g>>0]|0;return h|0}i=b+8|0;j=g-(c[i>>2]|0)|0;k=b+60|0;l=c[k>>2]|0;m=(l|0)<(j|0)?l:j;j=b+52|0;if(!m){n=0-m|0;o=l}else{p=0-m|0;rB((c[j>>2]|0)+(l-m)|0,g+p|0,m|0)|0;n=p;o=c[k>>2]|0}p=(c[j>>2]|0)+o|0;c[i>>2]=p+n;c[e>>2]=p;c[f>>2]=p;if(!(a[b+44>>0]|0))Da(24871,24884,55,24975);n=c[b+36>>2]|0;if(!n)Da(25303,25311,648,25397);i=kb[c[(c[n>>2]|0)+32>>2]&31](n,p,(c[b+56>>2]|0)-o|0)|0;switch(i|0){case 0:case -1:{o=b+32|0;c[o>>2]=c[o>>2]|1;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);h=-1;return h|0}default:{c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0)+i;h=d[c[e>>2]>>0]|0;return h|0}}return 0}function _e(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+32|0;f=e+16|0;g=e;h=b+12|0;i=c[h>>2]|0;if((i|0)==(c[b+8>>2]|0)){b=Cq()|0;c[f>>2]=1;c[f+4>>2]=b;Dq(g,25408,f);mf(g)}g=i+-1|0;c[h>>2]=g;h=(d|0)==-1;if(h){j=h?0:d;l=e;return j|0}a[g>>0]=d;j=h?0:d;l=e;return j|0}function $e(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;g=b+64|0;if(c[g>>2]&2|0?(c[b+24>>2]|0)==0:0)qb[c[(c[b>>2]|0)+88>>2]&511](b);h=(d|0)==-1;do if(!h){if(!(c[g>>2]&2)){a[f>>0]=d;i=If(b)|0;kf(i,f,1,c[b+48>>2]|0)|0}i=b+24|0;j=c[i>>2]|0;if((j|0)!=(c[b+28>>2]|0)){a[j>>0]=d;c[i>>2]=(c[i>>2]|0)+1;break}i=b+20|0;k=j-(c[i>>2]|0)|0;if((k|0)>0){j=If(b)|0;kf(j,c[i>>2]|0,k,c[b+48>>2]|0)|0}else{m=-1;l=e;return m|0}}while(0);m=h?0:d;l=e;return m|0}function af(a,b){a=a|0;b=b|0;c[a+48>>2]=b;return}function bf(b,d){b=b|0;d=d|0;var e=0;if((d|0)==8){c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0}if(!(a[b+44>>0]|0))Da(24871,24884,55,24975);e=b+36|0;switch(d|0){case 24:{Hf(e);return}case 8:{d=c[e>>2]|0;if(!d)Da(25303,25311,648,25397);e=d+64|0;b=c[e>>2]|0;if(!b)return;tb[c[(c[d>>2]|0)+24>>2]&127](d)|0;if(_n(b)|0)return;c[e>>2]=0;return}default:return}}function cf(a){a=a|0;return (c[a+64>>2]&4|0)!=0|0}function df(a,b){a=a|0;b=b|0;var d=0;d=a+64|0;c[d>>2]=c[d>>2]&-5|(b?4:0);return}function ef(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+20>>2]|0;e=(c[b+24>>2]|0)-d|0;f=(a[b+44>>0]|0)==0;g=d;if((e|0)>0)if(f)Da(24871,24884,55,24975);else kf(b+36|0,g,e,c[b+48>>2]|0)|0;if(f)Da(24871,24884,55,24975);f=c[b+48>>2]|0;if(!f){h=1;return h|0}h=(tb[c[(c[f>>2]|0)+24>>2]&127](f)|0)!=-1;return h|0}function ff(a){a=a|0;return 264}function gf(b){b=b|0;if(!(a[b+44>>0]|0))Da(24871,24884,55,24975);else return b+36|0;return 0}function hf(a){a=a|0;var b=0;b=c[a+52>>2]|0;c[a+8>>2]=b;c[a+12>>2]=b;c[a+16>>2]=b;return}function jf(a){a=a|0;var b=0,d=0,e=0;if(!(c[a+64>>2]&2)){b=0;d=0}else{e=c[a+52>>2]|0;b=e+(c[a+56>>2]|0)|0;d=e}c[a+24>>2]=d;c[a+20>>2]=d;c[a+28>>2]=b;return}function kf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;lf(a,d,b,c)|0;return 0}function lf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=l;l=l+32|0;d=e+16|0;b=e;e=Cq()|0;c[d>>2]=1;c[d+4>>2]=e;Dq(b,25060,d);mf(b);return 0}function mf(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+48|0;d=b;b=Ea(40)|0;hz(d,a);e=a+8|0;a=c[e+4>>2]|0;f=d+8|0;c[f>>2]=c[e>>2];c[f+4>>2]=a;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;c[d+32>>2]=-1;c[d>>2]=10160;c[d+16>>2]=10180;nf(b,d);_a(b|0,296,43)}function nf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+36|0;c[d>>2]=10212;hz(a,b);c[a>>2]=20544;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=17468;c[a+16>>2]=10196;f=c[b+20>>2]|0;c[a+20>>2]=f;if(f|0)qb[c[(c[f>>2]|0)+12>>2]&511](f);f=a+24|0;g=b+24|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=10240;g=a+16|0;c[g>>2]=10268;c[d>>2]=10296;pf(g,b+16|0);return}function of(a){a=a|0;var b=0,d=0;c[a+16>>2]=10196;b=a+20|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;bq(a);return}function pf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[b+4>>2]|0;if((d|0)!=0?(e=tb[c[(c[d>>2]|0)+20>>2]&127](d)|0,(e|0)!=0):0){qb[c[(c[e>>2]|0)+12>>2]&511](e);tb[c[(c[e>>2]|0)+16>>2]&127](e)|0;f=e}else f=0;c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+8>>2]=c[b+8>>2];b=a+4|0;a=c[b>>2]|0;if(a|0?tb[c[(c[a>>2]|0)+16>>2]&127](a)|0:0)c[b>>2]=0;c[b>>2]=f;if(!f)return;qb[c[(c[f>>2]|0)+12>>2]&511](f);tb[c[(c[f>>2]|0)+16>>2]&127](f)|0;return}function qf(a){a=a|0;var b=0,d=0;c[a+16>>2]=10196;b=a+20|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;bq(a);bz(a);return}function rf(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=$y(40)|0;a[e>>0]=a[d>>0]|0;zf(f,b,e);l=d;return f+(c[(c[f>>2]|0)+-12>>2]|0)|0}function sf(a){a=a|0;var b=0;b=Ea(40)|0;Af(b,a);_a(b|0,296,43)}function tf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);return}function uf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);bz(b);return}function vf(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;b=$y(40)|0;a[e>>0]=a[d>>0]|0;zf(b,f,e);l=d;return b+(c[(c[b>>2]|0)+-12>>2]|0)|0}function wf(a){a=a|0;sf(a+(c[(c[a>>2]|0)+-16>>2]|0)|0)}function xf(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);return}function yf(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);bz(b);return}function zf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=a+36|0;c[d>>2]=10212;hz(a,b);c[a>>2]=20544;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=17468;c[a+16>>2]=10196;f=c[b+20>>2]|0;c[a+20>>2]=f;if(f|0)qb[c[(c[f>>2]|0)+12>>2]&511](f);f=a+24|0;g=b+24|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=10240;g=a+16|0;c[g>>2]=10268;c[d>>2]=10296;pf(g,b+16|0);return}function Af(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+36|0;c[d>>2]=10212;hz(a,b);c[a>>2]=20544;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=17468;f=a+16|0;c[f>>2]=10196;g=c[b+20>>2]|0;c[a+20>>2]=g;if(g|0)qb[c[(c[g>>2]|0)+12>>2]&511](g);g=a+24|0;e=b+24|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[a>>2]=10240;c[f>>2]=10268;c[d>>2]=10296;return}function Bf(a){a=a|0;return}function Cf(a){a=a|0;bz(a);return}function Df(a){a=a|0;var b=0,d=0;c[a+16>>2]=10196;b=a+20|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;bq(a);return}function Ef(a){a=a|0;var b=0,d=0;c[a+16>>2]=10196;b=a+20|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;bq(a);bz(a);return}function Ff(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);return}function Gf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=10196;a=b+20|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;bq(b);bz(b);return}function Hf(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(!b)Da(25303,25311,648,25397);a=b+64|0;d=c[a>>2]|0;if(!d)return;tb[c[(c[b>>2]|0)+24>>2]&127](b)|0;if(_n(d)|0)return;c[a>>2]=0;return}function If(b){b=b|0;if(!(a[b+44>>0]|0))Da(24871,24884,55,24975);else return b+36|0;return 0}function Jf(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,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+16|0;j=i;k=d+12|0;m=c[k>>2]|0;n=(g|0)==1;if(((h|0)==8&(n&(m|0)!=0)?(h=m,o=(c[d+8>>2]|0)-h|0,p=((o|0)<0)<<31>>31,!((p|0)>(f|0)|(p|0)==(f|0)&o>>>0>e>>>0)):0)?(o=d+16|0,p=(c[o>>2]|0)-h|0,h=((p|0)<0)<<31>>31,!((h|0)<(f|0)|(h|0)==(f|0)&p>>>0<e>>>0)):0){c[k>>2]=m+e;if(!(a[d+44>>0]|0))Da(24871,24884,55,24975);m=c[d+36>>2]|0;if(!m)Da(25303,25311,648,25397);mb[c[(c[m>>2]|0)+16>>2]&15](j,m,0,0,1,24);m=(c[o>>2]|0)-(c[k>>2]|0)|0;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];j=b+8|0;o=j;p=cB(c[o>>2]|0,c[o+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;m=j;c[m>>2]=p;c[m+4>>2]=E;l=i;return}if(c[d+24>>2]|0)tb[c[(c[d>>2]|0)+24>>2]&127](d)|0;if(n?(n=c[k>>2]|0,(n|0)!=0):0){k=(c[d+16>>2]|0)-n|0;n=cB(e|0,f|0,k|0,((k|0)<0)<<31>>31|0)|0;q=n;r=E}else{q=e;r=f}f=d+8|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;if(!(a[d+44>>0]|0))Da(24871,24884,55,24975);f=c[d+36>>2]|0;if(!f)Da(25303,25311,648,25397);mb[c[(c[f>>2]|0)+16>>2]&15](b,f,q,r,g,24);l=i;return}function Kf(a){a=a|0;Se(a);bz(a);return}function Lf(a){a=a|0;lq(a,10356);Se(a+8|0);$o(a+76|0);return}function Mf(a){a=a|0;lq(a,10356);Se(a+8|0);$o(a+76|0);bz(a);return}function Nf(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;lq(b,10356);Se(b+8|0);$o(b+76|0);return}function Of(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;lq(b,10356);Se(b+8|0);$o(b+76|0);bz(b);return}function Pf(a){a=a|0;lq(a,9936);Se(a+8|0);$o(a+76|0);return}function Qf(a){a=a|0;lq(a,9936);Se(a+8|0);$o(a+76|0);bz(a);return}function Rf(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;lq(b,9936);Se(b+8|0);$o(b+76|0);return}function Sf(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;lq(b,9936);Se(b+8|0);$o(b+76|0);bz(b);return}function Tf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a;a=c[d>>2]|0;e=a;switch(c[d+4>>2]|0){case 8:{d=e+32|0;f=c[d>>2]|0;if(!(f&2)){c[d>>2]=f|2;rb[c[(c[a>>2]|0)+60>>2]&127](e,8)}break}case 16:{f=e+32|0;d=c[f>>2]|0;if(!(d&4)){c[f>>2]=d|4;rb[c[(c[a>>2]|0)+60>>2]&127](e,16)}break}default:{}}e=c[b>>2]|0;switch(c[b+4>>2]|0){case 8:{b=e+32|0;a=c[b>>2]|0;if(a&2|0)return 0;c[b>>2]=a|2;rb[c[(c[e>>2]|0)+60>>2]&127](e,8);return 0}case 16:{a=e+32|0;b=c[a>>2]|0;if(b&4|0)return 0;c[a>>2]=b|4;rb[c[(c[e>>2]|0)+60>>2]&127](e,16);return 0}default:return 0}return 0}function Uf(a){a=a|0;c[a>>2]=9856;oz(a+32|0);ep(a);return}function Vf(a){a=a|0;c[a>>2]=9856;oz(a+32|0);ep(a);bz(a);return}function Wf(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;i=d+44|0;j=c[i>>2]|0;k=d+24|0;l=c[k>>2]|0;m=l;if(j>>>0<l>>>0){c[i>>2]=l;n=m}else n=j;j=h&24;if(!j){i=b;c[i>>2]=0;c[i+4>>2]=0;i=b+8|0;c[i>>2]=-1;c[i+4>>2]=-1;return}if((g|0)==1&(j|0)==24){j=b;c[j>>2]=0;c[j+4>>2]=0;j=b+8|0;c[j>>2]=-1;c[j+4>>2]=-1;return}a:do switch(g|0){case 0:{o=0;p=0;break}case 1:{if(!(h&8)){j=m-(c[d+20>>2]|0)|0;o=j;p=((j|0)<0)<<31>>31;break a}else{j=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;o=j;p=((j|0)<0)<<31>>31;break a}break}case 2:{j=d+32|0;if((a[j+11>>0]|0)<0)q=c[j>>2]|0;else q=j;j=n-q|0;o=j;p=((j|0)<0)<<31>>31;break}default:{j=b;c[j>>2]=0;c[j+4>>2]=0;j=b+8|0;c[j>>2]=-1;c[j+4>>2]=-1;return}}while(0);q=gB(o|0,p|0,e|0,f|0)|0;f=E;if((f|0)>=0){e=d+32|0;if((a[e+11>>0]|0)<0)r=c[e>>2]|0;else r=e;e=n-r|0;r=((e|0)<0)<<31>>31;if(!((r|0)<(f|0)|(r|0)==(f|0)&e>>>0<q>>>0)){e=h&8;if(!((q|0)==0&(f|0)==0)){if(e|0?(c[d+12>>2]|0)==0:0){r=b;c[r>>2]=0;c[r+4>>2]=0;r=b+8|0;c[r>>2]=-1;c[r+4>>2]=-1;return}if((h&16|0)!=0&(l|0)==0){l=b;c[l>>2]=0;c[l+4>>2]=0;l=b+8|0;c[l>>2]=-1;c[l+4>>2]=-1;return}}if(e|0){c[d+12>>2]=(c[d+8>>2]|0)+q;c[d+16>>2]=n}if(h&16|0)c[k>>2]=(c[d+20>>2]|0)+q;d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=q;c[d+4>>2]=f;return}}f=b;c[f>>2]=0;c[f+4>>2]=0;f=b+8|0;c[f>>2]=-1;c[f+4>>2]=-1;return}function Xf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=d+8|0;mb[c[(c[b>>2]|0)+16>>2]&15](a,b,c[f>>2]|0,c[f+4>>2]|0,0,e);return}function Yf(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0;b=a+44|0;e=c[b>>2]|0;f=c[a+24>>2]|0;if(e>>>0<f>>>0){c[b>>2]=f;g=f}else g=e;if(!(c[a+48>>2]&8)){h=-1;return h|0}e=a+16|0;f=c[e>>2]|0;if(f>>>0<g>>>0){c[e>>2]=g;i=g}else i=f;f=c[a+12>>2]|0;if(f>>>0>=i>>>0){h=-1;return h|0}h=d[f>>0]|0;return h|0}function Zf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=b+44|0;f=c[e>>2]|0;g=c[b+24>>2]|0;if(f>>>0<g>>>0){c[e>>2]=g;h=g}else h=f;f=h;h=b+12|0;g=c[h>>2]|0;if((c[b+8>>2]|0)>>>0>=g>>>0){i=-1;return i|0}if((d|0)==-1){c[h>>2]=g+-1;c[b+16>>2]=f;i=0;return i|0}if(!(c[b+48>>2]&16)){e=d&255;j=g+-1|0;if(e<<24>>24==(a[j>>0]|0)){k=e;l=j}else{i=-1;return i|0}}else{k=d&255;l=g+-1|0}c[h>>2]=l;c[b+16>>2]=f;a[l>>0]=k;i=d;return i|0}function _f(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,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+16|0;f=e;if((d|0)==-1){g=0;l=e;return g|0}h=b+12|0;i=b+8|0;j=(c[h>>2]|0)-(c[i>>2]|0)|0;k=b+24|0;m=c[k>>2]|0;n=b+28|0;o=c[n>>2]|0;if((m|0)==(o|0)){p=b+48|0;if(!(c[p>>2]&16)){g=-1;l=e;return g|0}q=b+20|0;r=c[q>>2]|0;s=b+44|0;t=(c[s>>2]|0)-r|0;u=b+32|0;zz(u,0);v=u+11|0;if((a[v>>0]|0)<0)w=(c[b+40>>2]&2147483647)+-1|0;else w=10;uz(u,w,0);w=a[v>>0]|0;if(w<<24>>24<0){x=c[u>>2]|0;y=c[b+36>>2]|0}else{x=u;y=w&255}w=x+y|0;c[q>>2]=x;c[n>>2]=w;n=x+(m-r)|0;c[k>>2]=n;r=x+t|0;c[s>>2]=r;z=s;A=p;B=s;C=n;D=r;E=w}else{w=b+44|0;z=w;A=b+48|0;B=w;C=m;D=c[w>>2]|0;E=o}o=C+1|0;c[f>>2]=o;w=c[(o>>>0<D>>>0?B:f)>>2]|0;c[z>>2]=w;if(c[A>>2]&8|0){A=b+32|0;if((a[A+11>>0]|0)<0)F=c[A>>2]|0;else F=A;c[i>>2]=F;c[h>>2]=F+j;c[b+16>>2]=w}if((C|0)==(E|0)){g=Bb[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;l=e;return g|0}else{c[k>>2]=o;a[C>>0]=d;g=d&255;l=e;return g|0}return 0}function $f(a){a=a|0;var b=0,d=0;c[a>>2]=9820;b=a+56|0;c[b>>2]=9840;d=a+4|0;c[d>>2]=9856;oz(a+36|0);ep(d);vq(a,9916);$o(b);return}function ag(a){a=a|0;var b=0,d=0;c[a>>2]=9820;b=a+56|0;c[b>>2]=9840;d=a+4|0;c[d>>2]=9856;oz(a+36|0);ep(d);vq(a,9916);$o(b);bz(a);return}function bg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=9820;a=b+56|0;c[a>>2]=9840;d=b+4|0;c[d>>2]=9856;oz(b+36|0);ep(d);vq(b,9916);$o(a);return}function cg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=9820;a=b+56|0;c[a>>2]=9840;d=b+4|0;c[d>>2]=9856;oz(b+36|0);ep(d);vq(b,9916);$o(a);bz(b);return}function dg(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+32|0;d=b;b=Ea(36)|0;e=a+4|0;a=c[e+4>>2]|0;f=d+4|0;c[f>>2]=c[e>>2];c[f+4>>2]=a;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=-1;c[d>>2]=10436;c[d+12>>2]=10456;eg(b,d);_a(b|0,520,65)}function eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;c[d>>2]=10212;c[a>>2]=10416;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+12>>2]=10196;f=c[b+16>>2]|0;c[a+16>>2]=f;if(f|0)qb[c[(c[f>>2]|0)+12>>2]&511](f);f=a+20|0;g=b+20|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=10476;g=a+12|0;c[g>>2]=10504;c[d>>2]=10532;pf(g,b+12|0);return}function fg(a){a=a|0;var b=0,d=0;c[a+12>>2]=10196;b=a+16|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;JA(a);return}function gg(a){a=a|0;var b=0,d=0;c[a+12>>2]=10196;b=a+16|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;JA(a);bz(a);return}function hg(a){a=a|0;return 26502}function ig(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=$y(36)|0;a[e>>0]=a[d>>0]|0;qg(f,b,e);l=d;return f+(c[(c[f>>2]|0)+-12>>2]|0)|0}function jg(a){a=a|0;var b=0;b=Ea(36)|0;rg(b,a);_a(b|0,520,65)}function kg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;JA(b);return}function lg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;JA(b);bz(b);return}function mg(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;b=$y(36)|0;a[e>>0]=a[d>>0]|0;qg(b,f,e);l=d;return b+(c[(c[b>>2]|0)+-12>>2]|0)|0}function ng(a){a=a|0;jg(a+(c[(c[a>>2]|0)+-16>>2]|0)|0)}function og(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(!d){JA(b);return}if(!(tb[c[(c[d>>2]|0)+16>>2]&127](d)|0)){JA(b);return}c[a>>2]=0;JA(b);return}function pg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;JA(b);bz(b);return}function qg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=a+32|0;c[d>>2]=10212;c[a>>2]=10416;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+12>>2]=10196;f=c[b+16>>2]|0;c[a+16>>2]=f;if(f|0)qb[c[(c[f>>2]|0)+12>>2]&511](f);f=a+20|0;g=b+20|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=10476;g=a+12|0;c[g>>2]=10504;c[d>>2]=10532;pf(g,b+12|0);return}function rg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;c[d>>2]=10212;c[a>>2]=10416;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;f=a+12|0;c[f>>2]=10196;g=c[b+16>>2]|0;c[a+16>>2]=g;if(g|0)qb[c[(c[g>>2]|0)+12>>2]&511](g);g=a+20|0;e=b+20|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[a>>2]=10476;c[f>>2]=10504;c[d>>2]=10532;return}function sg(a){a=a|0;var b=0,d=0;c[a+12>>2]=10196;b=a+16|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;JA(a);return}function tg(a){a=a|0;var b=0,d=0;c[a+12>>2]=10196;b=a+16|0;d=c[b>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;JA(a);bz(a);return}function ug(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;JA(b);return}function vg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=10196;a=b+16|0;d=c[a>>2]|0;if(d|0?tb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;JA(b);bz(b);return}function wg(a){a=a|0;JA(a);bz(a);return}function xg(a){a=a|0;ep(a);bz(a);return}function yg(a,b,d){a=a|0;b=b|0;d=d|0;c[a+8>>2]=b;c[a+12>>2]=b;c[a+16>>2]=b+d;return a|0}function zg(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;if(g&16|0){g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}g=c[b+16>>2]|0;h=c[b+8>>2]|0;i=h;j=g-i|0;k=b+12|0;a:do switch(f|0){case 0:{b=((j|0)<0)<<31>>31;if(!((e|0)<0|((b|0)<(e|0)|(b|0)==(e|0)&j>>>0<d>>>0))){b=h+d|0;c[k>>2]=b;l=b;break a}b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}case 2:{b=((j|0)<0)<<31>>31;if(!((e|0)<0|((b|0)<(e|0)|(b|0)==(e|0)&j>>>0<d>>>0))){b=g+(0-d)|0;c[k>>2]=b;l=b;break a}b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;return}case 1:{b=gB((c[k>>2]|0)-i|0,0,d|0,e|0)|0;if(!((b|0)<0|(b|0)>(j|0))){m=h+b|0;c[k>>2]=m;l=m;break a}m=a;c[m>>2]=0;c[m+4>>2]=0;m=a+8|0;c[m>>2]=-1;c[m+4>>2]=-1;return}default:l=c[k>>2]|0}while(0);k=l-i|0;i=a;c[i>>2]=0;c[i+4>>2]=0;i=a+8|0;c[i>>2]=k;c[i+4>>2]=((k|0)<0)<<31>>31;return}function Ag(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;if(e&16|0){e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}e=c[b+8>>2]|0;f=(c[b+16>>2]|0)-e|0;g=((f|0)<0)<<31>>31;h=d+8|0;d=c[h>>2]|0;i=c[h+4>>2]|0;if(!((i|0)>(g|0)|(i|0)==(g|0)&d>>>0>f>>>0))c[b+12>>2]=e+d;d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function Bg(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,m=0;g=l;l=l+16|0;h=g+4|0;i=g;kz(b,d);kz(b+12|0,d+12|0);j=b+24|0;k=d+24|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];a[j+8>>0]=a[k+8>>0]|0;k=b+36|0;j=c[e>>2]|0;c[k>>2]=j;e=c[f>>2]|0;c[b+40>>2]=e;f=b+44|0;a[f>>0]=0;d=b+48|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;if((j|0)==(e|0)){m=0;a[f>>0]=m;l=g;return}c[i>>2]=e;c[h>>2]=c[i>>2];m=(Le(b,k,h,d)|0)&1;a[f>>0]=m;l=g;return}function Cg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(b|0?(c[a>>2]|0)==(b|0):0)Da(26860,25311,619,26878);c[e>>2]=b;f=e+4|0;c[f>>2]=0;Fg(e,b,f);b=c[e>>2]|0;c[e>>2]=c[a>>2];c[a>>2]=b;b=a+4|0;a=c[b>>2]|0;c[b>>2]=c[f>>2];c[f>>2]=a;f=a;if(!a){l=d;return}b=f+4|0;e=c[b>>2]|0;c[b>>2]=e-1;if((e|0)!=1){l=d;return}e=a;qb[c[(c[e>>2]|0)+8>>2]&511](f);a=f+8|0;b=c[a>>2]|0;c[a>>2]=b-1;if((b|0)!=1){l=d;return}qb[c[(c[e>>2]|0)+12>>2]&511](f);l=d;return}function Dg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+16|0;h=f+8|0;i=f;c[i>>2]=c[b>>2];j=i+4|0;k=c[b+4>>2]|0;c[j>>2]=k;if(k|0){b=k+4|0;c[b>>2]=(c[b>>2]|0)+1}if(c[a+64>>2]&1|0){b=Cq()|0;c[h>>2]=1;c[h+4>>2]=b;Dq(g,26847,h);mf(g)}Eg(a,i,d,e);e=c[j>>2]|0;if(!e){l=f;return}j=e+4|0;d=c[j>>2]|0;c[j>>2]=d-1;if((d|0)!=1){l=f;return}qb[c[(c[e>>2]|0)+8>>2]&511](e);d=e+8|0;j=c[d>>2]|0;c[d>>2]=j-1;if((j|0)!=1){l=f;return}qb[c[(c[e>>2]|0)+12>>2]&511](e);l=f;return}function Eg(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;g=(e|0)==-1?4096:e;e=(f|0)!=-1?f:4;f=(e|0)>2?e:2;c[b+60>>2]=f;e=f+(g|0?g:1)|0;g=b+52|0;f=b+56|0;if((c[f>>2]|0)!=(e|0)?(h=$y(e)|0,c[f>>2]=e,e=c[g>>2]|0,c[g>>2]=h,e|0):0)bz(e);qb[c[(c[b>>2]|0)+84>>2]&511](b);e=b+36|0;h=c[d>>2]|0;g=c[d+4>>2]|0;d=(g|0)==0;if(!d){f=g+4|0;c[f>>2]=(c[f>>2]|0)+1}f=b+44|0;i=b+40|0;if(a[f>>0]|0){j=c[i>>2]|0;if((j|0?(k=j+4|0,l=c[k>>2]|0,c[k>>2]=l-1,(l|0)==1):0)?(qb[c[(c[j>>2]|0)+8>>2]&511](j),l=j+8|0,k=c[l>>2]|0,c[l>>2]=k-1,(k|0)==1):0)qb[c[(c[j>>2]|0)+12>>2]&511](j);a[f>>0]=0}c[e>>2]=h;c[i>>2]=g;if(!d){d=g+4|0;c[d>>2]=(c[d>>2]|0)+1;a[f>>0]=1;i=c[d>>2]|0;c[d>>2]=i-1;if((i|0)==1?(qb[c[(c[g>>2]|0)+8>>2]&511](g),i=g+8|0,d=c[i>>2]|0,c[i>>2]=d-1,(d|0)==1):0)qb[c[(c[g>>2]|0)+12>>2]&511](g)}else a[f>>0]=1;f=b+64|0;c[f>>2]=c[f>>2]|1;f=b+32|0;c[f>>2]=c[f>>2]&-8;return}function Fg(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;f=e;g=$y(16)|0;c[g+4>>2]=1;c[g+8>>2]=1;c[g>>2]=10620;c[g+12>>2]=b;h=c[d>>2]|0;c[d>>2]=g;if((h|0?(g=h+4|0,d=c[g>>2]|0,c[g>>2]=d-1,(d|0)==1):0)?(qb[c[(c[h>>2]|0)+8>>2]&511](h),d=h+8|0,g=c[d>>2]|0,c[d>>2]=g-1,(g|0)==1):0)qb[c[(c[h>>2]|0)+12>>2]&511](h);c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=b;Gg(f);l=e;return}function Gg(a){a=a|0;return}function Hg(a){a=a|0;return}function Ig(a){a=a|0;bz(a);return}function Jg(a){a=a|0;var b=0,d=0;b=c[a+12>>2]|0;if(!b)return;a=b+64|0;d=c[a>>2]|0;if(d|0?(tb[c[(c[b>>2]|0)+24>>2]&127](b)|0,(_n(d)|0)==0):0)c[a>>2]=0;Ce(b);bz(b);return}function Kg(a){a=a|0;if(!a)return;qb[c[(c[a>>2]|0)+4>>2]&511](a);return}function Lg(a,b){a=a|0;b=b|0;return 0}function Mg(a){a=a|0;return 0}function Ng(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=l;l=l+16|0;e=d;f=b+64|0;if(!(c[f>>2]|0)){g=0;l=d;return g|0}h=b+68|0;i=c[h>>2]|0;if(!i){j=Ea(4)|0;VA(j);_a(j|0,6928,59)}j=b+92|0;k=c[j>>2]|0;do if(!(k&16)){if(k&8|0){m=b+80|0;n=c[m+4>>2]|0;o=e;c[o>>2]=c[m>>2];c[o+4>>2]=n;do if(!(a[b+98>>0]|0)){n=tb[c[(c[i>>2]|0)+24>>2]&127](i)|0;o=b+36|0;m=c[o>>2]|0;p=(c[b+40>>2]|0)-m|0;if((n|0)>0){q=0;r=(T((c[b+16>>2]|0)-(c[b+12>>2]|0)|0,n)|0)+p|0;break}n=c[b+12>>2]|0;if((n|0)==(c[b+16>>2]|0)){q=0;r=p}else{s=c[h>>2]|0;t=b+32|0;u=Db[c[(c[s>>2]|0)+32>>2]&31](s,e,c[t>>2]|0,m,n-(c[b+8>>2]|0)|0)|0;q=1;r=p-u+(c[o>>2]|0)-(c[t>>2]|0)|0}}else{q=0;r=(c[b+16>>2]|0)-(c[b+12>>2]|0)|0}while(0);if(ko(c[f>>2]|0,0-r|0,1)|0){g=-1;l=d;return g|0}if(q){t=e;o=c[t+4>>2]|0;u=b+72|0;c[u>>2]=c[t>>2];c[u+4>>2]=o}o=c[b+32>>2]|0;c[b+40>>2]=o;c[b+36>>2]=o;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[j>>2]=0}}else{if((c[b+24>>2]|0)!=(c[b+20>>2]|0)?(Bb[c[(c[b>>2]|0)+52>>2]&63](b,-1)|0)==-1:0){g=-1;l=d;return g|0}o=b+72|0;u=b+32|0;t=b+52|0;a:while(1){p=c[h>>2]|0;n=c[u>>2]|0;m=Db[c[(c[p>>2]|0)+20>>2]&31](p,o,n,n+(c[t>>2]|0)|0,e)|0;n=c[u>>2]|0;p=(c[e>>2]|0)-n|0;if((Po(n,1,p,c[f>>2]|0)|0)!=(p|0)){g=-1;v=24;break}switch(m|0){case 1:break;case 2:{g=-1;v=24;break a;break}default:{v=10;break a}}}if((v|0)==10){if(!($n(c[f>>2]|0)|0))break;else g=-1;l=d;return g|0}else if((v|0)==24){l=d;return g|0}}while(0);g=0;l=d;return g|0}function Og(a){a=a|0;Ce(a);bz(a);return}function Pg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;tb[c[(c[d>>2]|0)+24>>2]&127](d)|0;f=Hr(e,45596)|0;c[d+68>>2]=f;e=d+98|0;g=a[e>>0]|0;h=tb[c[(c[f>>2]|0)+28>>2]&127](f)|0;a[e>>0]=h&1;if((g&255|0)==(h&1|0))return;g=d+8|0;e=d+96|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;g=b[e>>1]|0;f=(g&255)<<24>>24!=0;i=(g&65535)>>>8&255;if(h){h=d+32|0;if(f?(g=c[h>>2]|0,(g|0)!=0):0){cz(g);j=a[d+97>>0]|0}else j=i;a[e>>0]=j;j=d+60|0;c[d+52>>2]=c[j>>2];i=d+56|0;c[h>>2]=c[i>>2];c[j>>2]=0;c[i>>2]=0;a[d+97>>0]=0;return}if(!f?(f=d+32|0,i=c[f>>2]|0,(i|0)!=(d+44|0)):0){j=c[d+52>>2]|0;c[d+60>>2]=j;c[d+56>>2]=i;a[d+97>>0]=0;c[f>>2]=az(j)|0;a[e>>0]=1;return}e=c[d+52>>2]|0;c[d+60>>2]=e;c[d+56>>2]=az(e)|0;a[d+97>>0]=1;return}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;f=b+8|0;g=b+96|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;f=c[g>>2]|0;h=(f&65535)>>>8&255;if((f&255)<<24>>24!=0?(f=c[b+32>>2]|0,(f|0)!=0):0){cz(f);i=a[b+97>>0]|0}else i=h;h=b+97|0;if(i<<24>>24?(i=c[b+56>>2]|0,i|0):0)cz(i);i=b+52|0;c[i>>2]=e;do if(e>>>0>8){f=a[b+98>>0]|0;if((d|0)!=0&f<<24>>24!=0){c[b+32>>2]=d;a[g>>0]=0;j=f;break}else{c[b+32>>2]=az(e)|0;a[g>>0]=1;j=f;break}}else{c[b+32>>2]=b+44;c[i>>2]=8;a[g>>0]=0;j=a[b+98>>0]|0}while(0);if(j<<24>>24){c[b+60>>2]=0;c[b+56>>2]=0;a[h>>0]=0;return b|0}j=(e|0)<8?8:e;c[b+60>>2]=j;if((d|0)!=0&j>>>0>7){c[b+56>>2]=d;a[h>>0]=0;return b|0}else{c[b+56>>2]=az(j)|0;a[h>>0]=1;return b|0}return 0}function Rg(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;g=c[b+68>>2]|0;if(!g){h=Ea(4)|0;VA(h);_a(h|0,6928,59)}h=tb[c[(c[g>>2]|0)+24>>2]&127](g)|0;g=b+64|0;if((c[g>>2]|0?!(((d|0)!=0|(e|0)!=0)&(h|0)<1):0)?(tb[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0){if(f>>>0>=3){i=a;c[i>>2]=0;c[i+4>>2]=0;i=a+8|0;c[i>>2]=-1;c[i+4>>2]=-1;return}i=c[g>>2]|0;j=oB(h|0,((h|0)<0)<<31>>31|0,d|0,e|0)|0;if(!(ko(i,(h|0)>0?j:0,f)|0)){f=To(c[g>>2]|0)|0;g=b+72|0;b=c[g+4>>2]|0;j=a;c[j>>2]=c[g>>2];c[j+4>>2]=b;b=a+8|0;c[b>>2]=f;c[b+4>>2]=((f|0)<0)<<31>>31;return}else{f=a;c[f>>2]=0;c[f+4>>2]=0;f=a+8|0;c[f>>2]=-1;c[f+4>>2]=-1;return}}f=a;c[f>>2]=0;c[f+4>>2]=0;f=a+8|0;c[f>>2]=-1;c[f+4>>2]=-1;return}function Sg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;e=b+64|0;if(c[e>>2]|0?(tb[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0)if(!(ko(c[e>>2]|0,c[d+8>>2]|0,0)|0)){e=d;f=c[e+4>>2]|0;g=b+72|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];return}else{d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return} function Eb(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Fb(){return l|0}function Gb(a){a=a|0;l=a}function Hb(a,b){a=a|0;b=b|0;l=a;m=b}function Ib(a,b){a=a|0;b=b|0;if(!p){p=a;q=b}}function Jb(a){a=a|0;E=a}function Kb(){return E|0}function Lb(a){a=a|0;c[a>>2]=7024;oz(a+16|0);return}function Mb(a){a=a|0;c[a>>2]=7048;oz(a+16|0);return}function Nb(a){a=a|0;c[a>>2]=7072;oz(a+16|0);return}function Ob(a){a=a|0;c[a+12>>2]=7096;c[a+24>>2]=7128;Bc(a+92|0,c[a+96>>2]|0);Cc(a+80|0,c[a+84>>2]|0);Cc(a+68|0,c[a+72>>2]|0);Dc(a+56|0,c[a+60>>2]|0);Ec(a+44|0,c[a+48>>2]|0);Fc(a+32|0,c[a+36>>2]|0);Gc(a,c[a+4>>2]|0);return}function Pb(a){a=a|0;return Qb(41992,a)|0}function Qb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+32|0;f=e+12|0;g=e;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,d,kn(d)|0);ld(f,b,g);b=jn((a[f+11>>0]|0)<0?c[f>>2]|0:f)|0;oz(f);oz(g);l=e;return b|0}function Rb(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;Xc(h,41992,b,d,e,f);f=jn((a[h+11>>0]|0)<0?c[h>>2]|0:h)|0;oz(h);l=g;return f|0}function Sb(a){a=a|0;Wo(a);return}function Tb(a,b){a=a|0;b=b|0;kz(a,b+16|0);return}function Ub(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+48|0;f=e+24|0;g=e+36|0;h=e+12|0;i=e;j=ub[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;k=d+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;m=a[k+11>>0]|0;n=m<<24>>24<0;o=n?c[d+20>>2]|0:m&255;Gz(g,n?c[k>>2]|0:k,o,o+1|0);xz(g,21671,1)|0;rb[c[(c[j>>2]|0)+12>>2]&127](h,j);o=a[h+11>>0]|0;k=o<<24>>24<0;n=xz(g,k?c[h>>2]|0:h,k?c[h+4>>2]|0:o&255)|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[i>>2]=0;n=i+4|0;c[n>>2]=0;c[i+8>>2]=0;Wb(b,f,i,j);b=c[i>>2]|0;if(b|0){o=c[n>>2]|0;if((o|0)==(b|0))p=b;else{k=o;do{o=k+-12|0;c[n>>2]=o;oz(o);k=c[n>>2]|0}while((k|0)!=(b|0));p=c[i>>2]|0}bz(p)}oz(f);oz(h);oz(g);if(!j){l=e;return}qb[c[(c[j>>2]|0)+4>>2]&511](j);l=e;return}function Vb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+192|0;h=f+48|0;i=f+24|0;j=f+36|0;k=f+12|0;m=f;n=ub[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;o=e+16|0;if((c[d+4>>2]&c[o>>2]|0)!=0?(tb[c[(c[n>>2]|0)+72>>2]&127](n)|0)==1:0){e=$y(16)|0;Kj(e,n);p=e}else p=n;n=c[o>>2]|0;if(!(c[d+12>>2]&n)){q=p;r=n}else{n=$y(16)|0;hj(n,p);q=n;r=c[o>>2]|0}if(!(c[d+8>>2]&r))s=q;else{r=$y(16)|0;qj(r,q);s=r}r=b+152|0;c[b+156>>2]=0;q=b+160|0;c[q>>2]=0;o=b+156|0;eB(b+4|0,0,148)|0;c[r>>2]=o;n=b+164|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[b>>2]=s;p=d+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;e=a[p+11>>0]|0;t=e<<24>>24<0;u=t?c[d+20>>2]|0:e&255;Gz(j,t?c[p>>2]|0:p,u,u+1|0);xz(j,21671,1)|0;rb[c[(c[s>>2]|0)+12>>2]&127](k,s);u=a[k+11>>0]|0;p=u<<24>>24<0;t=xz(j,p?c[k>>2]|0:k,p?c[k+4>>2]|0:u&255)|0;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[m>>2]=0;t=m+4|0;c[t>>2]=0;c[m+8>>2]=0;Wb(h,i,m,s);cc(b+4|0,h)|0;Xb(h);u=c[m>>2]|0;if(u|0){p=c[t>>2]|0;if((p|0)==(u|0))v=u;else{e=p;do{p=e+-12|0;c[t>>2]=p;oz(p);e=c[t>>2]|0}while((e|0)!=(u|0));v=c[m>>2]|0}bz(v)}oz(i);oz(k);oz(j);j=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;if((j|0)==(tb[c[(c[s>>2]|0)+88>>2]&127](s)|0))w=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;else w=0;j=tb[c[(c[s>>2]|0)+76>>2]&127](s)|0;k=tb[c[(c[s>>2]|0)+80>>2]&127](s)|0;i=(j|0)==0?1024:j;if(!k)if((tb[c[(c[s>>2]|0)+72>>2]&127](s)|0)==1)x=(i|0)/2|0;else x=i;else x=k;dc(h,s,w,x,i);i=b+140|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];i=h+12|0;fc(r,c[o>>2]|0);c[r>>2]=c[i>>2];x=h+16|0;w=c[x>>2]|0;c[o>>2]=w;s=h+20|0;k=c[s>>2]|0;c[q>>2]=k;if(!k)c[r>>2]=o;else{c[w+8>>2]=o;c[i>>2]=x;c[x>>2]=0;c[s>>2]=0}s=h+24|0;i=n+11|0;if((a[i>>0]|0)<0){a[c[n>>2]>>0]=0;c[b+168>>2]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}else{a[n>>0]=0;a[i>>0]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}}function Wb(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,m=0,n=0,o=0,p=0;g=l;l=l+48|0;h=g+36|0;i=g;eB(b|0,0,136)|0;pz(b,d)|0;rb[c[(c[f>>2]|0)+12>>2]&127](h,f);d=b+12|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+16>>2]=0}else{a[d>>0]=0;a[j>>0]=0}sz(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);rb[c[(c[f>>2]|0)+16>>2]&127](h,f);d=b+24|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+28>>2]=0}else{a[d>>0]=0;a[j>>0]=0}sz(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);rb[c[(c[f>>2]|0)+20>>2]&127](h,f);d=b+36|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+40>>2]=0}else{a[d>>0]=0;a[j>>0]=0}sz(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);rb[c[(c[f>>2]|0)+24>>2]&127](h,f);d=b+48|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+52>>2]=0}else{a[d>>0]=0;a[j>>0]=0}sz(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);rb[c[(c[f>>2]|0)+28>>2]&127](h,f);d=b+60|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+64>>2]=0}else{a[d>>0]=0;a[j>>0]=0}sz(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b+72>>2]=tb[c[(c[f>>2]|0)+32>>2]&127](f)|0;d=b+76|0;if((d|0)!=(e|0))$b(d,c[e>>2]|0,c[e+4>>2]|0);c[b+88>>2]=tb[c[(c[f>>2]|0)+84>>2]&127](f)|0;c[b+92>>2]=tb[c[(c[f>>2]|0)+88>>2]&127](f)|0;rb[c[(c[f>>2]|0)+36>>2]&127](h,f);e=b+96|0;ac(e);c[e>>2]=c[h>>2];e=h+4|0;c[b+100>>2]=c[e>>2];d=h+8|0;c[b+104>>2]=c[d>>2];c[d>>2]=0;c[e>>2]=0;c[h>>2]=0;Yb(h);rb[c[(c[f>>2]|0)+48>>2]&127](h,f);e=b+108|0;d=c[e>>2]|0;if(!d){k=b+112|0;m=b+116|0}else{j=b+112|0;n=c[j>>2]|0;if((n|0)==(d|0))o=d;else{p=n;do{n=p+-12|0;c[j>>2]=n;oz(n);p=c[j>>2]|0}while((p|0)!=(d|0));o=c[e>>2]|0}bz(o);o=b+116|0;c[o>>2]=0;c[j>>2]=0;c[e>>2]=0;k=j;m=o}c[e>>2]=c[h>>2];c[k>>2]=c[h+4>>2];c[m>>2]=c[h+8>>2];c[b+120>>2]=tb[c[(c[f>>2]|0)+72>>2]&127](f)|0;rb[c[(c[f>>2]|0)+92>>2]&127](h,f);f=c[h>>2]|0;m=h+4|0;if((f|0)==(c[m>>2]|0)){Zb(h);l=g;return}k=i+12|0;e=i+24|0;o=b+128|0;j=b+132|0;d=b+124|0;b=f;do{f=i;p=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(p|0));pz(i,b)|0;pz(k,b+12|0)|0;pz(e,b+24|0)|0;f=c[o>>2]|0;if((f|0)==(c[j>>2]|0))bc(d,i);else{kz(f,i);kz(f+12|0,k);kz(f+24|0,e);c[o>>2]=(c[o>>2]|0)+36}oz(e);oz(k);oz(i);b=b+100|0}while((b|0)!=(c[m>>2]|0));Zb(h);l=g;return}function Xb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=a+124|0;d=c[b>>2]|0;if(d|0){e=a+128|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-36|0;c[e>>2]=f;oz(h+-12|0);oz(h+-24|0);oz(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}bz(g)}g=a+108|0;b=c[g>>2]|0;if(b|0){d=a+112|0;h=c[d>>2]|0;if((h|0)==(b|0))i=b;else{e=h;do{h=e+-12|0;c[d>>2]=h;oz(h);e=c[d>>2]|0}while((e|0)!=(b|0));i=c[g>>2]|0}bz(i)}Yb(a+96|0);i=a+76|0;g=c[i>>2]|0;if(g|0){b=a+80|0;e=c[b>>2]|0;if((e|0)==(g|0))j=g;else{d=e;do{e=d+-12|0;c[b>>2]=e;oz(e);d=c[b>>2]|0}while((d|0)!=(g|0));j=c[i>>2]|0}bz(j)}oz(a+60|0);oz(a+48|0);oz(a+36|0);oz(a+24|0);oz(a+12|0);oz(a);return}function Yb(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;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-44|0);oz(g+-56|0);oz(g+-68|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);return}function Zb(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;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-64|0);oz(g+-76|0);oz(g+-88|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);return}function _b(a){a=a|0;La(a|0)|0;uA()}function $b(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,r=0,s=0,t=0;e=(d-b|0)/12|0;f=a+8|0;g=c[f>>2]|0;h=c[a>>2]|0;i=h;if(e>>>0<=((g-h|0)/12|0)>>>0){j=a+4|0;k=((c[j>>2]|0)-h|0)/12|0;l=e>>>0>k>>>0;m=b+(k*12|0)|0;k=l?m:d;if((k|0)==(b|0))n=i;else{o=b;p=i;while(1){pz(p,o)|0;o=o+12|0;q=p+12|0;if((o|0)==(k|0)){n=q;break}else p=q}}if(!l){l=c[j>>2]|0;if((l|0)==(n|0))return;else r=l;do{l=r+-12|0;c[j>>2]=l;oz(l);r=c[j>>2]|0}while((r|0)!=(n|0));return}if((k|0)==(d|0))return;k=m;m=c[j>>2]|0;do{kz(m,k);k=k+12|0;m=(c[j>>2]|0)+12|0;c[j>>2]=m}while((k|0)!=(d|0));return}if(!h)s=g;else{g=a+4|0;k=c[g>>2]|0;if((k|0)==(i|0))t=h;else{h=k;do{k=h+-12|0;c[g>>2]=k;oz(k);h=c[g>>2]|0}while((h|0)!=(i|0));t=c[a>>2]|0}bz(t);c[f>>2]=0;c[g>>2]=0;c[a>>2]=0;s=0}if(e>>>0>357913941)Vx(a);g=(s-0|0)/12|0;s=g<<1;t=g>>>0<178956970?(s>>>0<e>>>0?e:s):357913941;if(t>>>0>357913941)Vx(a);s=$y(t*12|0)|0;e=a+4|0;c[e>>2]=s;c[a>>2]=s;c[f>>2]=s+(t*12|0);if((b|0)==(d|0))return;t=b;b=s;do{kz(b,t);t=t+12|0;b=(c[e>>2]|0)+12|0;c[e>>2]=b}while((t|0)!=(d|0));return}function ac(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;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-44|0);oz(g+-56|0);oz(g+-68|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);c[a+8>>2]=0;c[d>>2]=0;c[a>>2]=0;return}function bc(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/36|0)+1|0;if(g>>>0>119304647)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/36|0;j=i<<1;k=i>>>0<59652323?(j>>>0<g>>>0?g:j):119304647;j=(e-f|0)/36|0;do if(k)if(k>>>0>119304647){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*36|0)|0;break}else l=0;while(0);f=l+(j*36|0)|0;e=f;g=l+(k*36|0)|0;kz(f,b);kz(l+(j*36|0)+12|0,b+12|0);kz(l+(j*36|0)+24|0,b+24|0);b=f+36|0;j=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(j|0)){m=e;n=j;o=j}else{k=l;l=e;e=f;do{f=e+-36|0;i=k;k=k+-36|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;f=e+-24|0;p=i+-24|0;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;p=e+-12|0;f=i+-12|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;e=l+-36|0;l=e}while((k|0)!=(j|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=g;g=n;if((o|0)!=(g|0)){h=o;do{oz(h+-12|0);oz(h+-24|0);h=h+-36|0;oz(h)}while((h|0)!=(g|0))}if(!n)return;bz(n);return}function cc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=b+11|0;if((a[e>>0]|0)<0){a[c[b>>2]>>0]=0;c[b+4>>2]=0}else{a[b>>0]=0;a[e>>0]=0}sz(b,0);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;ec(b+12|0,d+12|0)|0;e=b+48|0;f=d+48|0;g=e+11|0;if((a[g>>0]|0)<0){a[c[e>>2]>>0]=0;c[b+52>>2]=0}else{a[e>>0]=0;a[g>>0]=0}sz(e,0);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=b+60|0;e=d+60|0;g=f+11|0;if((a[g>>0]|0)<0){a[c[f>>2]>>0]=0;c[b+64>>2]=0}else{a[f>>0]=0;a[g>>0]=0}sz(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[b+72>>2]=c[d+72>>2];e=b+76|0;f=d+76|0;g=c[e>>2]|0;if(!g){h=b+80|0;i=b+84|0}else{j=b+80|0;k=c[j>>2]|0;if((k|0)==(g|0))l=g;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(g|0));l=c[e>>2]|0}bz(l);l=b+84|0;c[l>>2]=0;c[j>>2]=0;c[e>>2]=0;h=j;i=l}c[e>>2]=c[f>>2];e=d+80|0;c[h>>2]=c[e>>2];h=d+84|0;c[i>>2]=c[h>>2];c[h>>2]=0;c[e>>2]=0;c[f>>2]=0;f=d+88|0;e=c[f+4>>2]|0;h=b+88|0;c[h>>2]=c[f>>2];c[h+4>>2]=e;e=b+96|0;h=d+96|0;ac(e);c[e>>2]=c[h>>2];e=d+100|0;c[b+100>>2]=c[e>>2];f=d+104|0;c[b+104>>2]=c[f>>2];c[f>>2]=0;c[e>>2]=0;c[h>>2]=0;h=b+108|0;e=d+108|0;f=c[h>>2]|0;if(!f){n=b+112|0;o=b+116|0}else{i=b+112|0;l=c[i>>2]|0;if((l|0)==(f|0))p=f;else{j=l;do{l=j+-12|0;c[i>>2]=l;oz(l);j=c[i>>2]|0}while((j|0)!=(f|0));p=c[h>>2]|0}bz(p);p=b+116|0;c[p>>2]=0;c[i>>2]=0;c[h>>2]=0;n=i;o=p}c[h>>2]=c[e>>2];h=d+112|0;c[n>>2]=c[h>>2];n=d+116|0;c[o>>2]=c[n>>2];c[n>>2]=0;c[h>>2]=0;c[e>>2]=0;c[b+120>>2]=c[d+120>>2];e=b+124|0;h=d+124|0;n=c[e>>2]|0;if(!n){q=b+128|0;r=b+132|0;s=c[h>>2]|0;c[e>>2]=s;t=d+128|0;u=c[t>>2]|0;c[q>>2]=u;v=d+132|0;w=c[v>>2]|0;c[r>>2]=w;c[v>>2]=0;c[t>>2]=0;c[h>>2]=0;return b|0}o=b+128|0;p=c[o>>2]|0;if((p|0)==(n|0))x=n;else{i=p;do{p=i+-36|0;c[o>>2]=p;oz(i+-12|0);oz(i+-24|0);oz(p);i=c[o>>2]|0}while((i|0)!=(n|0));x=c[e>>2]|0}bz(x);x=b+132|0;c[x>>2]=0;c[o>>2]=0;c[e>>2]=0;q=o;r=x;s=c[h>>2]|0;c[e>>2]=s;t=d+128|0;u=c[t>>2]|0;c[q>>2]=u;v=d+132|0;w=c[v>>2]|0;c[r>>2]=w;c[v>>2]=0;c[t>>2]=0;c[h>>2]=0;return b|0}function dc(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;i=l;l=l+80|0;j=i+56|0;k=i+68|0;m=i+48|0;n=i+36|0;o=i+24|0;p=i+12|0;q=i;r=b+12|0;c[b+16>>2]=0;c[b+20>>2]=0;c[r>>2]=b+16;s=b+24|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[b>>2]=e;c[b+4>>2]=f;c[b+8>>2]=h;rb[c[(c[d>>2]|0)+36>>2]&127](n,d);h=c[n>>2]|0;f=n+4|0;if((h|0)!=(c[f>>2]|0)){e=h;do{kz(o,e);h=c[(c[d>>2]|0)+40>>2]|0;kz(p,o);t=+ob[h&3](d,p);c[j>>2]=o;gc(m,r,o,45732,j,k);g[(c[m>>2]|0)+28>>2]=t;oz(p);oz(o);e=e+80|0}while((e|0)!=(c[f>>2]|0))}rb[c[(c[d>>2]|0)+48>>2]&127](q,d);f=c[q>>2]|0;e=q+4|0;o=c[e>>2]|0;p=(f|0)==(o|0);if(f|0){if(p)u=f;else{m=o;do{o=m+-12|0;c[e>>2]=o;oz(o);m=c[e>>2]|0}while((m|0)!=(f|0));u=c[q>>2]|0}bz(u)}if(p){Yb(n);l=i;return}rb[c[(c[d>>2]|0)+52>>2]&127](j,d);d=s+11|0;if((a[d>>0]|0)<0){a[c[s>>2]>>0]=0;c[b+28>>2]=0}else{a[s>>0]=0;a[d>>0]=0}sz(s,0);c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;oz(j);Yb(n);l=i;return}function ec(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+11|0;if((a[e>>0]|0)<0){a[c[b>>2]>>0]=0;c[b+4>>2]=0}else{a[b>>0]=0;a[e>>0]=0}sz(b,0);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;e=b+12|0;f=d+12|0;g=e+11|0;if((a[g>>0]|0)<0){a[c[e>>2]>>0]=0;c[b+16>>2]=0}else{a[e>>0]=0;a[g>>0]=0}sz(e,0);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=b+24|0;e=d+24|0;d=f+11|0;if((a[d>>0]|0)<0){a[c[f>>2]>>0]=0;c[b+28>>2]=0;sz(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;return b|0}else{a[f>>0]=0;a[d>>0]=0;sz(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;return b|0}return 0}function fc(a,b){a=a|0;b=b|0;if(!b)return;else{fc(a,c[b>>2]|0);fc(a,c[b+4>>2]|0);oz(b+16|0);bz(b);return}}function gc(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+16|0;f=i;j=hc(d,f,e)|0;e=c[j>>2]|0;if(e|0){k=e;m=0;n=k;c[b>>2]=n;o=b+4|0;a[o>>0]=m;l=i;return}e=$y(32)|0;kz(e+16|0,c[h>>2]|0);g[e+28>>2]=0.0;h=c[f>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=h;c[j>>2]=e;h=c[c[d>>2]>>2]|0;if(!h)p=e;else{c[d>>2]=h;p=c[j>>2]|0}ic(c[d+4>>2]|0,p);p=d+8|0;c[p>>2]=(c[p>>2]|0)+1;k=e;m=1;n=k;c[b>>2]=n;o=b+4|0;a[o>>0]=m;l=i;return}function hc(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;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Xn(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Xn(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function ic(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=(d|0)==(b|0);a[d+12>>0]=e&1;if(e)return;else f=d;while(1){g=c[f+8>>2]|0;d=g+12|0;if(a[d>>0]|0){h=37;break}i=g+8|0;j=c[i>>2]|0;e=c[j>>2]|0;if((e|0)==(g|0)){k=c[j+4>>2]|0;if(!k){h=8;break}l=k+12|0;if(a[l>>0]|0){h=8;break}a[d>>0]=1;a[j+12>>0]=(j|0)==(b|0)&1;a[l>>0]=1}else{if(!e){h=24;break}l=e+12|0;if(a[l>>0]|0){h=24;break}a[d>>0]=1;a[j+12>>0]=(j|0)==(b|0)&1;a[l>>0]=1}if((j|0)==(b|0)){h=37;break}else f=j}if((h|0)==8){if((c[g>>2]|0)==(f|0)){m=g;n=j}else{b=g+4|0;l=c[b>>2]|0;d=c[l>>2]|0;c[b>>2]=d;if(!d)o=j;else{c[d+8>>2]=g;o=c[i>>2]|0}d=l+8|0;c[d>>2]=o;o=c[i>>2]|0;if((c[o>>2]|0)==(g|0))c[o>>2]=l;else c[o+4>>2]=l;c[l>>2]=g;c[i>>2]=l;m=l;n=c[d>>2]|0}a[m+12>>0]=1;a[n+12>>0]=0;m=c[n>>2]|0;d=m+4|0;l=c[d>>2]|0;c[n>>2]=l;if(l|0)c[l+8>>2]=n;l=n+8|0;c[m+8>>2]=c[l>>2];o=c[l>>2]|0;if((c[o>>2]|0)==(n|0))c[o>>2]=m;else c[o+4>>2]=m;c[d>>2]=n;c[l>>2]=m;return}else if((h|0)==24){if((c[g>>2]|0)==(f|0)){f=c[g>>2]|0;m=f+4|0;l=c[m>>2]|0;c[g>>2]=l;if(!l)p=j;else{c[l+8>>2]=g;p=c[i>>2]|0}l=f+8|0;c[l>>2]=p;p=c[i>>2]|0;if((c[p>>2]|0)==(g|0))c[p>>2]=f;else c[p+4>>2]=f;c[m>>2]=g;c[i>>2]=f;q=f;r=c[l>>2]|0}else{q=g;r=j}a[q+12>>0]=1;a[r+12>>0]=0;q=r+4|0;j=c[q>>2]|0;g=c[j>>2]|0;c[q>>2]=g;if(g|0)c[g+8>>2]=r;g=r+8|0;c[j+8>>2]=c[g>>2];q=c[g>>2]|0;if((c[q>>2]|0)==(r|0))c[q>>2]=j;else c[q+4>>2]=j;c[j>>2]=r;c[g>>2]=j;return}else if((h|0)==37)return}function jc(a,b){a=a|0;b=b|0;kz(a,b+16|0);return}function kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+48|0;f=e+24|0;g=e+36|0;h=e+12|0;i=e;j=ub[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;k=d+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;m=a[k+11>>0]|0;n=m<<24>>24<0;o=n?c[d+20>>2]|0:m&255;Gz(g,n?c[k>>2]|0:k,o,o+1|0);xz(g,21671,1)|0;rb[c[(c[j>>2]|0)+12>>2]&127](h,j);o=a[h+11>>0]|0;k=o<<24>>24<0;n=xz(g,k?c[h>>2]|0:h,k?c[h+4>>2]|0:o&255)|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[i>>2]=0;n=i+4|0;c[n>>2]=0;c[i+8>>2]=0;Wb(b,f,i,j);b=c[i>>2]|0;if(b|0){o=c[n>>2]|0;if((o|0)==(b|0))p=b;else{k=o;do{o=k+-12|0;c[n>>2]=o;oz(o);k=c[n>>2]|0}while((k|0)!=(b|0));p=c[i>>2]|0}bz(p)}oz(f);oz(h);oz(g);if(!j){l=e;return}qb[c[(c[j>>2]|0)+4>>2]&511](j);l=e;return}function lc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+192|0;h=f+48|0;i=f+24|0;j=f+36|0;k=f+12|0;m=f;n=ub[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;o=e+16|0;if((c[d+4>>2]&c[o>>2]|0)!=0?(tb[c[(c[n>>2]|0)+72>>2]&127](n)|0)==1:0){e=$y(16)|0;Kj(e,n);p=e}else p=n;n=c[o>>2]|0;if(!(c[d+12>>2]&n)){q=p;r=n}else{n=$y(16)|0;hj(n,p);q=n;r=c[o>>2]|0}if(!(c[d+8>>2]&r))s=q;else{r=$y(16)|0;qj(r,q);s=r}r=b+152|0;c[b+156>>2]=0;q=b+160|0;c[q>>2]=0;o=b+156|0;eB(b+4|0,0,148)|0;c[r>>2]=o;n=b+164|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[b>>2]=s;p=d+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;e=a[p+11>>0]|0;t=e<<24>>24<0;u=t?c[d+20>>2]|0:e&255;Gz(j,t?c[p>>2]|0:p,u,u+1|0);xz(j,21671,1)|0;rb[c[(c[s>>2]|0)+12>>2]&127](k,s);u=a[k+11>>0]|0;p=u<<24>>24<0;t=xz(j,p?c[k>>2]|0:k,p?c[k+4>>2]|0:u&255)|0;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[m>>2]=0;t=m+4|0;c[t>>2]=0;c[m+8>>2]=0;Wb(h,i,m,s);cc(b+4|0,h)|0;Xb(h);u=c[m>>2]|0;if(u|0){p=c[t>>2]|0;if((p|0)==(u|0))v=u;else{e=p;do{p=e+-12|0;c[t>>2]=p;oz(p);e=c[t>>2]|0}while((e|0)!=(u|0));v=c[m>>2]|0}bz(v)}oz(i);oz(k);oz(j);j=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;if((j|0)==(tb[c[(c[s>>2]|0)+88>>2]&127](s)|0))w=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;else w=0;j=tb[c[(c[s>>2]|0)+76>>2]&127](s)|0;k=tb[c[(c[s>>2]|0)+80>>2]&127](s)|0;i=(j|0)==0?1024:j;if(!k)if((tb[c[(c[s>>2]|0)+72>>2]&127](s)|0)==1)x=(i|0)/2|0;else x=i;else x=k;dc(h,s,w,x,i);i=b+140|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];i=h+12|0;fc(r,c[o>>2]|0);c[r>>2]=c[i>>2];x=h+16|0;w=c[x>>2]|0;c[o>>2]=w;s=h+20|0;k=c[s>>2]|0;c[q>>2]=k;if(!k)c[r>>2]=o;else{c[w+8>>2]=o;c[i>>2]=x;c[x>>2]=0;c[s>>2]=0}s=h+24|0;i=n+11|0;if((a[i>>0]|0)<0){a[c[n>>2]>>0]=0;c[b+168>>2]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}else{a[n>>0]=0;a[i>>0]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}}function mc(a,b){a=a|0;b=b|0;kz(a,b+16|0);return}function nc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+48|0;f=e+24|0;g=e+36|0;h=e+12|0;i=e;j=ub[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;k=d+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;m=a[k+11>>0]|0;n=m<<24>>24<0;o=n?c[d+20>>2]|0:m&255;Gz(g,n?c[k>>2]|0:k,o,o+1|0);xz(g,21671,1)|0;rb[c[(c[j>>2]|0)+12>>2]&127](h,j);o=a[h+11>>0]|0;k=o<<24>>24<0;n=xz(g,k?c[h>>2]|0:h,k?c[h+4>>2]|0:o&255)|0;c[f>>2]=c[n>>2];c[f+4>>2]=c[n+4>>2];c[f+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[i>>2]=0;n=i+4|0;c[n>>2]=0;c[i+8>>2]=0;Wb(b,f,i,j);b=c[i>>2]|0;if(b|0){o=c[n>>2]|0;if((o|0)==(b|0))p=b;else{k=o;do{o=k+-12|0;c[n>>2]=o;oz(o);k=c[n>>2]|0}while((k|0)!=(b|0));p=c[i>>2]|0}bz(p)}oz(f);oz(h);oz(g);if(!j){l=e;return}qb[c[(c[j>>2]|0)+4>>2]&511](j);l=e;return}function oc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+192|0;h=f+48|0;i=f+24|0;j=f+36|0;k=f+12|0;m=f;n=ub[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;o=e+16|0;if((c[d+4>>2]&c[o>>2]|0)!=0?(tb[c[(c[n>>2]|0)+72>>2]&127](n)|0)==1:0){e=$y(16)|0;Kj(e,n);p=e}else p=n;n=c[o>>2]|0;if(!(c[d+12>>2]&n)){q=p;r=n}else{n=$y(16)|0;hj(n,p);q=n;r=c[o>>2]|0}if(!(c[d+8>>2]&r))s=q;else{r=$y(16)|0;qj(r,q);s=r}r=b+152|0;c[b+156>>2]=0;q=b+160|0;c[q>>2]=0;o=b+156|0;eB(b+4|0,0,148)|0;c[r>>2]=o;n=b+164|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[b>>2]=s;p=d+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;e=a[p+11>>0]|0;t=e<<24>>24<0;u=t?c[d+20>>2]|0:e&255;Gz(j,t?c[p>>2]|0:p,u,u+1|0);xz(j,21671,1)|0;rb[c[(c[s>>2]|0)+12>>2]&127](k,s);u=a[k+11>>0]|0;p=u<<24>>24<0;t=xz(j,p?c[k>>2]|0:k,p?c[k+4>>2]|0:u&255)|0;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[m>>2]=0;t=m+4|0;c[t>>2]=0;c[m+8>>2]=0;Wb(h,i,m,s);cc(b+4|0,h)|0;Xb(h);u=c[m>>2]|0;if(u|0){p=c[t>>2]|0;if((p|0)==(u|0))v=u;else{e=p;do{p=e+-12|0;c[t>>2]=p;oz(p);e=c[t>>2]|0}while((e|0)!=(u|0));v=c[m>>2]|0}bz(v)}oz(i);oz(k);oz(j);j=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;if((j|0)==(tb[c[(c[s>>2]|0)+88>>2]&127](s)|0))w=tb[c[(c[s>>2]|0)+84>>2]&127](s)|0;else w=0;j=tb[c[(c[s>>2]|0)+76>>2]&127](s)|0;k=tb[c[(c[s>>2]|0)+80>>2]&127](s)|0;i=(j|0)==0?1024:j;if(!k)if((tb[c[(c[s>>2]|0)+72>>2]&127](s)|0)==1)x=(i|0)/2|0;else x=i;else x=k;dc(h,s,w,x,i);i=b+140|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];i=h+12|0;fc(r,c[o>>2]|0);c[r>>2]=c[i>>2];x=h+16|0;w=c[x>>2]|0;c[o>>2]=w;s=h+20|0;k=c[s>>2]|0;c[q>>2]=k;if(!k)c[r>>2]=o;else{c[w+8>>2]=o;c[i>>2]=x;c[x>>2]=0;c[s>>2]=0}s=h+24|0;i=n+11|0;if((a[i>>0]|0)<0){a[c[n>>2]>>0]=0;c[b+168>>2]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}else{a[n>>0]=0;a[i>>0]=0;sz(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;oz(s);y=h+12|0;z=c[x>>2]|0;fc(y,z);l=f;return}}function pc(a){a=a|0;c[a>>2]=7096;c[a+12>>2]=7128;Bc(a+80|0,c[a+84>>2]|0);Cc(a+68|0,c[a+72>>2]|0);Cc(a+56|0,c[a+60>>2]|0);Dc(a+44|0,c[a+48>>2]|0);Ec(a+32|0,c[a+36>>2]|0);Fc(a+20|0,c[a+24>>2]|0);return}function qc(a){a=a|0;c[a>>2]=7128;Bc(a+68|0,c[a+72>>2]|0);Cc(a+56|0,c[a+60>>2]|0);Cc(a+44|0,c[a+48>>2]|0);Dc(a+32|0,c[a+36>>2]|0);Ec(a+20|0,c[a+24>>2]|0);Fc(a+8|0,c[a+12>>2]|0);return}function rc(a){a=a|0;c[a>>2]=7096;c[a+12>>2]=7128;Bc(a+80|0,c[a+84>>2]|0);Cc(a+68|0,c[a+72>>2]|0);Cc(a+56|0,c[a+60>>2]|0);Dc(a+44|0,c[a+48>>2]|0);Ec(a+32|0,c[a+36>>2]|0);Fc(a+20|0,c[a+24>>2]|0);bz(a);return}function sc(a,b){a=a|0;b=b|0;return xc(a+12|0,b)|0}function tc(a,b){a=a|0;b=b|0;return yc(a+12|0,b)|0}function uc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=b+12|0;b=c[e>>2]|0;f=c[b+20>>2]|0;g=Bb[c[b+8>>2]&63](e,d)|0;wb[f&15](a,e,g);return}function vc(a,b,c){a=a|0;b=b|0;c=c|0;Ac(a,b+12|0,c);return}function wc(a){a=a|0;c[a>>2]=7128;Bc(a+68|0,c[a+72>>2]|0);Cc(a+56|0,c[a+60>>2]|0);Cc(a+44|0,c[a+48>>2]|0);Dc(a+32|0,c[a+36>>2]|0);Ec(a+20|0,c[a+24>>2]|0);Fc(a+8|0,c[a+12>>2]|0);bz(a);return}function xc(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;d=a+24|0;e=c[d>>2]|0;if(e|0){f=d;g=e;a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)!=(d|0)?(c[j+16>>2]|0)>>>0<=b>>>0:0){j=e;while(1){e=c[j+16>>2]|0;if(e>>>0>b>>>0){d=c[j>>2]|0;if(!d)break;else k=d}else{if(e>>>0>=b>>>0){l=14;break}e=c[j+4>>2]|0;if(!e)break;else k=e}j=k}if((l|0)==14?j|0:0){m=j+20|0;n=c[m>>2]|0;return n|0}j=Ea(8)|0;fz(j,22060);c[j>>2]=20712;_a(j|0,6912,247)}}m=a+4|0;n=c[m>>2]|0;return n|0}function yc(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;d=a+12|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=Ea(8)|0;fz(e,22060);c[e>>2]=20712;_a(e|0,6912,247);return 0}function zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[b>>2]|0;f=c[e+20>>2]|0;g=Bb[c[e+8>>2]&63](b,d)|0;wb[f&15](a,b,g);return}function Ac(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;if((c[b+4>>2]|0)!=(d|0)?(e=b+72|0,b=c[e>>2]|0,b|0):0){f=e;g=b;a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=d>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)!=(e|0)?(c[j+16>>2]|0)>>>0<=d>>>0:0){j=b;while(1){b=c[j+16>>2]|0;if(b>>>0>d>>>0){e=c[j>>2]|0;if(!e)break;else k=e}else{if(b>>>0>=d>>>0){l=14;break}b=c[j+4>>2]|0;if(!b)break;else k=b}j=k}if((l|0)==14?j|0:0){c[a>>2]=c[j+20>>2];l=c[j+24>>2]|0;c[a+4>>2]=l;if(!l)return;Xy(l);return}l=Ea(8)|0;fz(l,22060);c[l>>2]=20712;_a(l|0,6912,247)}}c[a>>2]=0;c[a+4>>2]=0;return}function Bc(a,b){a=a|0;b=b|0;if(!b)return;Bc(a,c[b>>2]|0);Bc(a,c[b+4>>2]|0);a=c[b+24>>2]|0;if(a|0)Yy(a);bz(b);return}function Cc(a,b){a=a|0;b=b|0;if(!b)return;else{Cc(a,c[b>>2]|0);Cc(a,c[b+4>>2]|0);bz(b);return}}function Dc(a,b){a=a|0;b=b|0;if(!b)return;else{Dc(a,c[b>>2]|0);Dc(a,c[b+4>>2]|0);bz(b);return}}function Ec(a,b){a=a|0;b=b|0;if(!b)return;else{Ec(a,c[b>>2]|0);Ec(a,c[b+4>>2]|0);bz(b);return}}function Fc(a,b){a=a|0;b=b|0;if(!b)return;else{Fc(a,c[b>>2]|0);Fc(a,c[b+4>>2]|0);bz(b);return}}function Gc(a,b){a=a|0;b=b|0;if(!b)return;else{Gc(a,c[b>>2]|0);Gc(a,c[b+4>>2]|0);oz(b+16|0);bz(b);return}}function Hc(a,b){a=a|0;b=+b;a=$y(208)|0;Vh(a,b);return a|0}function Ic(a,b){a=a|0;b=+b;a=$y(236)|0;mi(a,b);return a|0}function Jc(a,b){a=a|0;b=+b;a=$y(192)|0;zi(a,b);return a|0}function Kc(){var a=0,b=0,d=0,e=0,f=0;a=l;l=l+32|0;b=a+12|0;d=a;c[10474]=0;c[10475]=0;c[10476]=0;lz(41896,28622,11);Za(255,41896,o|0)|0;kz(d,41896);kz(b,d);c[10477]=7024;c[10478]=1;c[10479]=2;c[10480]=4;kz(41924,b);oz(b);c[10477]=7160;oz(d);Za(256,41908,o|0)|0;kz(d,41896);kz(b,d);c[10484]=7048;c[10485]=1;c[10486]=2;c[10487]=4;kz(41952,b);oz(b);c[10484]=7184;oz(d);Za(257,41936,o|0)|0;kz(d,41896);kz(b,d);c[10491]=7072;c[10492]=1;c[10493]=2;c[10494]=4;kz(41980,b);oz(b);c[10491]=7208;oz(d);Za(258,41964,o|0)|0;d=b+4|0;e=$y(12)|0;c[b>>2]=e;f=e+12|0;c[b+8>>2]=f;c[e>>2]=41908;c[e+4>>2]=41936;c[e+8>>2]=41964;c[d>>2]=f;Mc(41992,b);f=c[b>>2]|0;if(!f){Za(259,41992,o|0)|0;l=a;return}b=c[d>>2]|0;if((b|0)!=(f|0))c[d>>2]=b+(~((b+-4-f|0)>>>2)<<2);bz(f);Za(259,41992,o|0)|0;l=a;return}function Lc(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,m=0,n=0,o=0;f=l;l=l+32|0;g=f+16|0;h=f;Bm(g,d,e,0);d=e+11|0;i=a[d>>0]|0;j=e+4|0;k=c[j>>2]|0;do if(!((i<<24>>24<0?k:i&255)|0)){if(Fz(e,0,-1,47807,0)|0){m=a[d>>0]|0;n=c[j>>2]|0;break}if((um(g)|0)!=5)tz(e,22031)|0;c[b>>2]=c[g>>2];o=g+4|0;c[b+4>>2]=c[o>>2];c[g>>2]=0;c[o>>2]=0;l=f;return}else{m=i;n=k}while(0);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=m<<24>>24<0?n:m&255;Gz(h,22016,14,k+14|0);xz(h,(a[d>>0]|0)<0?c[e>>2]|0:e,k)|0;if((a[d>>0]|0)<0){a[c[e>>2]>>0]=0;c[j>>2]=0}else{a[e>>0]=0;a[d>>0]=0}sz(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);Ck(b);b=c[g+4>>2]|0;if(!b){l=f;return}Yy(b);l=f;return}function Mc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=l;l=l+176|0;f=e+24|0;g=e+160|0;h=e+16|0;i=e;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;c[b+16>>2]=0;c[b+12>>2]=7096;c[b+20>>2]=1;c[b+28>>2]=0;c[b+24>>2]=7128;c[b+36>>2]=0;c[b+40>>2]=0;c[b+32>>2]=b+36;c[b+48>>2]=0;c[b+52>>2]=0;c[b+44>>2]=b+48;c[b+60>>2]=0;c[b+64>>2]=0;c[b+56>>2]=b+60;c[b+72>>2]=0;c[b+76>>2]=0;c[b+68>>2]=b+72;c[b+84>>2]=0;c[b+88>>2]=0;c[b+80>>2]=b+84;c[b+96>>2]=0;c[b+100>>2]=0;c[b+92>>2]=b+96;a[b+104>>0]=0;j=c[d>>2]|0;k=c[d+4>>2]|0;if((j|0)==(k|0)){l=e;return}d=j;do{j=c[d>>2]|0;rb[c[(c[j>>2]|0)+4>>2]&127](f,j);c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Xb(f);c[f>>2]=i;Nc(h,b,i,45733,f,g);c[(c[h>>2]|0)+28>>2]=j;oz(i);d=d+4|0}while((d|0)!=(k|0));l=e;return}function Nc(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,m=0,n=0,o=0;h=l;l=l+16|0;f=h;i=Oc(d,f,e)|0;e=c[i>>2]|0;if(e|0){j=e;k=0;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}e=$y(32)|0;kz(e+16|0,c[g>>2]|0);c[e+28>>2]=0;g=c[f>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=g;c[i>>2]=e;g=c[c[d>>2]>>2]|0;if(!g)o=e;else{c[d>>2]=g;o=c[i>>2]|0}ic(c[d+4>>2]|0,o);o=d+8|0;c[o>>2]=(c[o>>2]|0)+1;j=e;k=1;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}function Oc(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;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Xn(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Xn(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function Pc(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;f=l;l=l+160|0;g=f+136|0;h=f;i=e+4|0;j=(c[e>>2]|0)==(c[i>>2]|0);c[b>>2]=0;k=b+4|0;c[k>>2]=0;c[b+8>>2]=0;m=c[d>>2]|0;n=d+4|0;if((m|0)==(n|0)){l=f;return}d=g+12|0;o=b+8|0;p=h+12|0;q=h+24|0;r=h+36|0;s=h+48|0;t=h+60|0;u=h+72|0;v=h+76|0;w=h+80|0;x=h+84|0;y=h+88|0;z=h+96|0;A=h+100|0;B=h+104|0;C=h+108|0;D=h+112|0;E=h+116|0;F=h+120|0;G=h+124|0;H=h+128|0;I=h+132|0;J=h+11|0;K=h+4|0;L=m;while(1){kz(g,L+16|0);m=c[L+28>>2]|0;c[d>>2]=m;M=m;a:do if(j){N=M;O=19}else{rb[c[c[m>>2]>>2]&127](h,M);P=c[e>>2]|0;Q=c[i>>2]|0;do if((P|0)!=(Q|0)){R=a[J>>0]|0;S=R<<24>>24<0;T=S?c[K>>2]|0:R&255;R=S?c[h>>2]|0:h;S=(T|0)==0;U=0;V=P;b:while(1){W=a[V+11>>0]|0;X=W<<24>>24<0;Y=W&255;do if(((X?c[V+4>>2]|0:Y)|0)==(T|0)){W=c[V>>2]|0;Z=X?W:V;if(X){if(S)break b;_=(Xn(Z,R,T)|0)==0;Z=U|_;if(_){$=Z;O=16;break b}else{aa=Z;break}}if(S)break b;if((W&255)<<24>>24==(a[R>>0]|0)){W=Y;Z=R;_=V;while(1){W=W+-1|0;_=_+1|0;if(!W)break b;Z=Z+1|0;if((a[_>>0]|0)!=(a[Z>>0]|0)){aa=U;break}}}else aa=U}else aa=U;while(0);V=V+12|0;if((V|0)==(Q|0)){$=aa;O=16;break}else U=aa}if((O|0)==16?(O=0,!$):0)break;oz(h);N=c[d>>2]|0;O=19;break a}while(0);oz(h)}while(0);if((O|0)==19){O=0;rb[c[(c[N>>2]|0)+4>>2]&127](h,N);M=c[k>>2]|0;if(M>>>0<(c[o>>2]|0)>>>0){c[M>>2]=c[h>>2];c[M+4>>2]=c[h+4>>2];c[M+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=M+12|0;c[m>>2]=c[p>>2];c[m+4>>2]=c[p+4>>2];c[m+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;m=M+24|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;m=M+36|0;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;m=M+48|0;c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;m=M+60|0;c[m>>2]=c[t>>2];c[m+4>>2]=c[t+4>>2];c[m+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[M+72>>2]=c[u>>2];m=M+76|0;c[m>>2]=0;Q=M+80|0;c[Q>>2]=0;c[M+84>>2]=0;c[m>>2]=c[v>>2];c[Q>>2]=c[w>>2];c[M+84>>2]=c[x>>2];c[x>>2]=0;c[w>>2]=0;c[v>>2]=0;Q=y;m=c[Q+4>>2]|0;P=M+88|0;c[P>>2]=c[Q>>2];c[P+4>>2]=m;m=M+96|0;c[m>>2]=0;P=M+100|0;c[P>>2]=0;c[M+104>>2]=0;c[m>>2]=c[z>>2];c[P>>2]=c[A>>2];c[M+104>>2]=c[B>>2];c[B>>2]=0;c[A>>2]=0;c[z>>2]=0;P=M+108|0;c[P>>2]=0;m=M+112|0;c[m>>2]=0;c[M+116>>2]=0;c[P>>2]=c[C>>2];c[m>>2]=c[D>>2];c[M+116>>2]=c[E>>2];c[E>>2]=0;c[D>>2]=0;c[C>>2]=0;c[M+120>>2]=c[F>>2];m=M+124|0;c[m>>2]=0;P=M+128|0;c[P>>2]=0;c[M+132>>2]=0;c[m>>2]=c[G>>2];c[P>>2]=c[H>>2];c[M+132>>2]=c[I>>2];c[I>>2]=0;c[H>>2]=0;c[G>>2]=0;c[k>>2]=(c[k>>2]|0)+136}else Qc(b,h);Xb(h)}oz(g);M=c[L+4>>2]|0;if(!M){P=L;while(1){m=c[P+8>>2]|0;if((c[m>>2]|0)==(P|0)){ba=m;break}else P=m}}else{P=M;while(1){m=c[P>>2]|0;if(!m){ba=P;break}else P=m}}if((ba|0)==(n|0))break;else L=ba}l=f;return}function Qc(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,m=0;d=l;l=l+32|0;e=d;f=c[a+4>>2]|0;g=c[a>>2]|0;h=((f-g|0)/136|0)+1|0;if(h>>>0>31580641)Vx(a);i=((c[a+8>>2]|0)-g|0)/136|0;j=i<<1;k=i>>>0<15790320?(j>>>0<h>>>0?h:j):31580641;j=(f-g|0)/136|0;c[e+12>>2]=0;c[e+16>>2]=a+8;do if(k)if(k>>>0>31580641){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{m=$y(k*136|0)|0;break}else m=0;while(0);c[e>>2]=m;g=m+(j*136|0)|0;f=e+8|0;c[f>>2]=g;h=e+4|0;c[h>>2]=g;c[e+12>>2]=m+(k*136|0);c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=m+(j*136|0)+12|0;k=b+12|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;k=m+(j*136|0)+24|0;g=b+24|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;g=m+(j*136|0)+36|0;k=b+36|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;k=m+(j*136|0)+48|0;g=b+48|0;c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;g=m+(j*136|0)+60|0;k=b+60|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[m+(j*136|0)+72>>2]=c[b+72>>2];k=b+76|0;c[m+(j*136|0)+84>>2]=0;c[m+(j*136|0)+76>>2]=c[k>>2];g=b+80|0;c[m+(j*136|0)+80>>2]=c[g>>2];i=b+84|0;c[m+(j*136|0)+84>>2]=c[i>>2];c[i>>2]=0;c[g>>2]=0;c[k>>2]=0;k=b+88|0;g=c[k+4>>2]|0;i=m+(j*136|0)+88|0;c[i>>2]=c[k>>2];c[i+4>>2]=g;g=b+96|0;c[m+(j*136|0)+104>>2]=0;c[m+(j*136|0)+96>>2]=c[g>>2];i=b+100|0;c[m+(j*136|0)+100>>2]=c[i>>2];k=b+104|0;c[m+(j*136|0)+104>>2]=c[k>>2];c[k>>2]=0;c[i>>2]=0;c[g>>2]=0;g=b+108|0;c[m+(j*136|0)+116>>2]=0;c[m+(j*136|0)+108>>2]=c[g>>2];i=b+112|0;c[m+(j*136|0)+112>>2]=c[i>>2];k=b+116|0;c[m+(j*136|0)+116>>2]=c[k>>2];c[k>>2]=0;c[i>>2]=0;c[g>>2]=0;c[m+(j*136|0)+120>>2]=c[b+120>>2];g=b+124|0;c[m+(j*136|0)+132>>2]=0;c[m+(j*136|0)+124>>2]=c[g>>2];i=b+128|0;c[m+(j*136|0)+128>>2]=c[i>>2];k=b+132|0;c[m+(j*136|0)+132>>2]=c[k>>2];c[k>>2]=0;c[i>>2]=0;c[g>>2]=0;c[f>>2]=(c[f>>2]|0)+136;Rc(a,e);a=c[h>>2]|0;h=c[f>>2]|0;if((h|0)!=(a|0)){g=h;do{h=g+-136|0;c[f>>2]=h;Xb(h);g=c[f>>2]|0}while((g|0)!=(a|0))}a=c[e>>2]|0;if(!a){l=d;return}bz(a);l=d;return}function Rc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=c[a>>2]|0;e=a+4|0;f=c[e>>2]|0;g=b+4|0;if((f|0)==(d|0)){h=g;i=a;j=c[g>>2]|0;k=d;c[i>>2]=j;c[h>>2]=k;l=b+8|0;m=c[e>>2]|0;n=c[l>>2]|0;c[e>>2]=n;c[l>>2]=m;o=a+8|0;p=b+12|0;q=c[o>>2]|0;r=c[p>>2]|0;c[o>>2]=r;c[p>>2]=q;s=c[h>>2]|0;c[b>>2]=s;return}t=f;f=c[g>>2]|0;do{u=f+-136|0;v=t;t=t+-136|0;c[u>>2]=c[t>>2];c[u+4>>2]=c[t+4>>2];c[u+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;u=f+-124|0;w=v+-124|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;w=f+-112|0;u=v+-112|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;u=f+-100|0;w=v+-100|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;w=f+-88|0;u=v+-88|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;u=f+-76|0;w=v+-76|0;c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[f+-64>>2]=c[v+-64>>2];w=f+-60|0;u=v+-60|0;c[w>>2]=0;x=f+-56|0;c[x>>2]=0;c[f+-52>>2]=0;c[w>>2]=c[u>>2];w=v+-56|0;c[x>>2]=c[w>>2];x=v+-52|0;c[f+-52>>2]=c[x>>2];c[x>>2]=0;c[w>>2]=0;c[u>>2]=0;u=v+-48|0;w=c[u+4>>2]|0;x=f+-48|0;c[x>>2]=c[u>>2];c[x+4>>2]=w;w=f+-40|0;x=v+-40|0;c[w>>2]=0;u=f+-36|0;c[u>>2]=0;c[f+-32>>2]=0;c[w>>2]=c[x>>2];w=v+-36|0;c[u>>2]=c[w>>2];u=v+-32|0;c[f+-32>>2]=c[u>>2];c[u>>2]=0;c[w>>2]=0;c[x>>2]=0;x=f+-28|0;w=v+-28|0;c[x>>2]=0;u=f+-24|0;c[u>>2]=0;c[f+-20>>2]=0;c[x>>2]=c[w>>2];x=v+-24|0;c[u>>2]=c[x>>2];u=v+-20|0;c[f+-20>>2]=c[u>>2];c[u>>2]=0;c[x>>2]=0;c[w>>2]=0;c[f+-16>>2]=c[v+-16>>2];w=f+-12|0;x=v+-12|0;c[w>>2]=0;u=f+-8|0;c[u>>2]=0;c[f+-4>>2]=0;c[w>>2]=c[x>>2];w=v+-8|0;c[u>>2]=c[w>>2];u=v+-4|0;c[f+-4>>2]=c[u>>2];c[u>>2]=0;c[w>>2]=0;c[x>>2]=0;f=(c[g>>2]|0)+-136|0;c[g>>2]=f}while((t|0)!=(d|0));h=g;i=a;j=f;k=c[a>>2]|0;c[i>>2]=j;c[h>>2]=k;l=b+8|0;m=c[e>>2]|0;n=c[l>>2]|0;c[e>>2]=n;c[l>>2]=m;o=a+8|0;p=b+12|0;q=c[o>>2]|0;r=c[p>>2]|0;c[o>>2]=r;c[p>>2]=q;s=c[h>>2]|0;c[b>>2]=s;return}function Sc(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,m=0,n=0;g=l;l=l+48|0;h=g+32|0;i=g+20|0;j=g;kz(i,e);if((Tc(d,i)|0)==(d+4|0)){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=i+11|0;m=a[k>>0]|0;n=m<<24>>24<0?c[i+4>>2]|0:m&255;Gz(h,22121,26,n+26|0);xz(h,(a[k>>0]|0)<0?c[i>>2]|0:i,n)|0;n=f+11|0;if((a[n>>0]|0)<0){a[c[f>>2]>>0]=0;c[f+4>>2]=0}else{a[f>>0]=0;a[n>>0]=0}sz(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);c[b+156>>2]=0;c[b+160>>2]=0;eB(b|0,0,152)|0;c[b+152>>2]=b+156;n=b+164|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;oz(i);l=g;return}n=c[(Uc(d,h,i)|0)>>2]|0;if(!n){d=Ea(8)|0;fz(d,22060);c[d>>2]=20712;_a(d|0,6912,247)}d=c[n+28>>2]|0;n=c[(c[d>>2]|0)+8>>2]|0;kz(j,e);k=e+12|0;e=c[k+4>>2]|0;m=j+12|0;c[m>>2]=c[k>>2];c[m+4>>2]=e;wb[n&15](b,d,j);oz(j);if(c[b>>2]|0){oz(i);l=g;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;b=i+11|0;j=a[b>>0]|0;d=j<<24>>24<0?c[i+4>>2]|0:j&255;Gz(h,22084,36,d+36|0);xz(h,(a[b>>0]|0)<0?c[i>>2]|0:i,d)|0;d=f+11|0;if((a[d>>0]|0)<0){a[c[f>>2]>>0]=0;c[f+4>>2]=0}else{a[f>>0]=0;a[d>>0]=0}sz(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;oz(h);oz(i);l=g;return}function Tc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=b+4|0;b=c[e>>2]|0;do if(b|0){f=a[d+11>>0]|0;g=f<<24>>24<0;h=g?c[d+4>>2]|0:f&255;f=g?c[d>>2]|0:d;g=e;i=b;a:while(1){j=i;while(1){k=j+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[j+20>>2]|0:l&255;l=h>>>0<n>>>0?h:n;if((l|0)!=0?(o=Xn(m?c[k>>2]|0:k,f,l)|0,(o|0)!=0):0){if((o|0)>=0)break}else p=6;if((p|0)==6?(p=0,n>>>0>=h>>>0):0)break;n=c[j+4>>2]|0;if(!n){q=g;break a}else j=n}i=c[j>>2]|0;if(!i){q=j;break}else g=j}if((q|0)!=(e|0)){g=q+16|0;i=a[g+11>>0]|0;n=i<<24>>24<0;o=n?c[q+20>>2]|0:i&255;i=o>>>0<h>>>0?o:h;if(i|0?(l=Xn(f,n?c[g>>2]|0:g,i)|0,l|0):0){if((l|0)<0)break;else r=q;return r|0}if(h>>>0>=o>>>0){r=q;return r|0}}}while(0);r=e;return r|0}function Uc(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;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Xn(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Xn(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function Vc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;d=l;l=l+48|0;h=d+12|0;i=d;j=d+24|0;k=c[e+16>>2]|0;m=e+20|0;n=k;if((n|0)!=(m|0)){o=k;k=n;while(1){n=c[e>>2]|0;p=c[(c[n>>2]|0)+44>>2]|0;kz(h,k+16|0);lb[p&3](n,h,+g[k+28>>2]);oz(h);n=o;p=c[n+4>>2]|0;if(!p){q=n;while(1){n=c[q+8>>2]|0;if((c[n>>2]|0)==(q|0)){r=n;break}else q=n}}else{q=p;while(1){n=c[q>>2]|0;if(!n){r=q;break}else q=n}}if((r|0)==(m|0))break;else{o=r;k=r}}}r=e+28|0;k=a[r+11>>0]|0;if(!(((k<<24>>24<0?c[e+32>>2]|0:k&255)|0)==0?!(Fz(r,0,-1,47807,0)|0):0)){k=c[e>>2]|0;o=c[(c[k>>2]|0)+56>>2]|0;kz(i,r);rb[o&127](k,i);oz(i)}i=b+4|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;i=c[e>>2]|0;c[b>>2]=i;k=tb[c[(c[i>>2]|0)+80>>2]&127](i)|0;i=c[e>>2]|0;o=tb[c[(c[i>>2]|0)+76>>2]&127](i)|0;i=c[e>>2]|0;r=e+4|0;m=e+8|0;if(zb[c[(c[i>>2]|0)+64>>2]&15](i,c[r>>2]|0,c[m>>2]|0,c[e+12>>2]|0)|0){i=c[e>>2]|0;rb[c[(c[i>>2]|0)+92>>2]&127](j,i);i=b+4|0;Wc(i);c[i>>2]=c[j>>2];i=j+4|0;c[b+8>>2]=c[i>>2];h=j+8|0;c[b+12>>2]=c[h>>2];c[h>>2]=0;c[i>>2]=0;c[j>>2]=0;Zb(j);i=m;m=c[i+4>>2]|0;h=b+16|0;c[h>>2]=c[i>>2];c[h+4>>2]=m;l=d;return}m=c[e>>2]|0;if(zb[c[(c[m>>2]|0)+64>>2]&15](m,c[r>>2]|0,k,o)|0){r=c[e>>2]|0;rb[c[(c[r>>2]|0)+92>>2]&127](j,r);r=b+4|0;Wc(r);c[r>>2]=c[j>>2];r=j+4|0;c[b+8>>2]=c[r>>2];e=j+8|0;c[b+12>>2]=c[e>>2];c[e>>2]=0;c[r>>2]=0;c[j>>2]=0;Zb(j);j=b+16|0;c[j>>2]=k;c[j+4>>2]=o;l=d;return}else{tz(f,22148)|0;l=d;return}}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,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;oz(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}bz(l)}oz(g+-64|0);oz(g+-76|0);oz(g+-88|0);oz(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}bz(f);c[a+8>>2]=0;c[d>>2]=0;c[a>>2]=0;return}function Xc(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;i=l;l=l+96|0;j=i+80|0;k=i+64|0;m=i+88|0;n=i+40|0;o=i+16|0;p=i+48|0;q=i+28|0;r=i+8|0;s=i;t=yc(d+24|0,e)|0;if(!t){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22215,21);Ck(m);Yc(j,k,3,m,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(j,b);u=c[j+4>>2]|0;if(u|0)Yy(u);u=c[m+4>>2]|0;if(u|0)Yy(u);oz(k);l=i;return}if((c[d+28>>2]|0)!=(e|0)?(k=d+60|0,u=c[k>>2]|0,u|0):0){j=k;v=u;a:while(1){u=v;while(1){if((c[u+16>>2]|0)>>>0>=e>>>0)break;w=c[u+4>>2]|0;if(!w){x=j;break a}else u=w}v=c[u>>2]|0;if(!v){x=u;break}else j=u}if((x|0)!=(k|0)?(c[x+16>>2]|0)>>>0<=e>>>0:0){nk(m,g,h);h=p+4|0;c[p+8>>2]=0;g=p+12|0;c[g>>2]=0;e=p+8|0;c[h>>2]=e;c[p>>2]=t;x=c[(c[t>>2]|0)+96>>2]|0;c[r>>2]=c[m>>2];c[r+4>>2]=c[m+4>>2];Ab[x&31](q,t,f,r);Zc(h,c[e>>2]|0);c[h>>2]=c[q>>2];r=q+4|0;f=c[r>>2]|0;c[e>>2]=f;t=q+8|0;x=c[t>>2]|0;c[g>>2]=x;if(!x){c[h>>2]=e;y=f}else{c[f+8>>2]=e;c[q>>2]=r;c[r>>2]=0;c[t>>2]=0;y=0}Zc(q,y);a[d+104>>0]=1;Ck(q);_c(s,p,d+12|0,1,q);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(s,b);d=c[s+4>>2]|0;if(d|0)Yy(d);d=c[q+4>>2]|0;if(d|0)Yy(d);Zc(p+4|0,c[e>>2]|0);l=i;return}};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;lz(o,22237,30);Ck(m);Yc(n,o,3,m,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(n,b);b=c[n+4>>2]|0;if(b|0)Yy(b);b=c[m+4>>2]|0;if(b|0)Yy(b);oz(o);l=i;return}function Yc(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,m=0,n=0,o=0,p=0,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;h=l;l=l+112|0;i=h+96|0;j=h+84|0;k=h+72|0;m=h+60|0;n=h+48|0;o=h+36|0;p=h+24|0;q=h+12|0;r=h;s=j+4|0;c[s>>2]=0;t=j+8|0;c[t>>2]=0;u=j+4|0;c[j>>2]=u;$c(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;switch(e|0){case 0:{tz(k,22559)|0;break}case 1:{tz(k,22564)|0;break}case 2:{tz(k,22569)|0;break}case 3:{tz(k,22291)|0;break}case 4:{tz(k,22579)|0;break}default:tz(k,22586)|0}v=m+4|0;c[v>>2]=0;w=m+8|0;c[w>>2]=0;x=m+4|0;c[m>>2]=x;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,22594,4);y=ad(m,i,n)|0;z=c[y>>2]|0;if(!z){A=$y(36)|0;B=A+16|0;c[B>>2]=c[n>>2];c[B+4>>2]=c[n+4>>2];c[B+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;Ck(A+28|0);B=c[i>>2]|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=B;c[y>>2]=A;B=c[c[m>>2]>>2]|0;if(!B)C=A;else{c[m>>2]=B;C=c[y>>2]|0}ic(c[v>>2]|0,C);c[w>>2]=(c[w>>2]|0)+1;D=A}else D=z;Gl(i,0);z=c[i>>2]|0;A=i+4|0;C=c[A>>2]|0;c[i>>2]=0;c[A>>2]=0;c[D+28>>2]=z;z=D+32|0;D=c[z>>2]|0;c[z>>2]=C;if(D|0?(Yy(D),D=c[A>>2]|0,D|0):0)Yy(D);oz(n);if((e|0)==5|g){c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,22599,7);g=ad(m,i,n)|0;e=c[g>>2]|0;if(!e){D=$y(36)|0;A=D+16|0;c[A>>2]=c[n>>2];c[A+4>>2]=c[n+4>>2];c[A+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;Ck(D+28|0);A=c[i>>2]|0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=A;c[g>>2]=D;A=c[c[m>>2]>>2]|0;if(!A)E=D;else{c[m>>2]=A;E=c[g>>2]|0}ic(c[v>>2]|0,E);c[w>>2]=(c[w>>2]|0)+1;F=D}else F=e;Tl(i,d);e=c[i>>2]|0;D=i+4|0;E=c[D>>2]|0;c[i>>2]=0;c[D>>2]=0;c[F+28>>2]=e;e=F+32|0;F=c[e>>2]|0;c[e>>2]=E;if(F|0?(Yy(F),F=c[D>>2]|0,F|0):0)Yy(F);oz(n)}else{c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,22599,7);F=ad(m,i,n)|0;D=c[F>>2]|0;if(!D){E=$y(36)|0;e=E+16|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;Ck(E+28|0);e=c[i>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=e;c[F>>2]=E;e=c[c[m>>2]>>2]|0;if(!e)G=E;else{c[m>>2]=e;G=c[F>>2]|0}ic(c[v>>2]|0,G);c[w>>2]=(c[w>>2]|0)+1;H=E}else H=D;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;lz(r,22607,9);D=a[k+11>>0]|0;E=D<<24>>24<0;w=xz(r,E?c[k>>2]|0:k,E?c[k+4>>2]|0:D&255)|0;c[q>>2]=c[w>>2];c[q+4>>2]=c[w+4>>2];c[q+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;w=yz(q,22617)|0;c[p>>2]=c[w>>2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;w=a[d+11>>0]|0;D=w<<24>>24<0;E=xz(p,D?c[d>>2]|0:d,D?c[d+4>>2]|0:w&255)|0;c[o>>2]=c[E>>2];c[o+4>>2]=c[E+4>>2];c[o+8>>2]=c[E+8>>2];c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;em(i,o);E=c[i>>2]|0;w=i+4|0;d=c[w>>2]|0;c[i>>2]=0;c[w>>2]=0;c[H+28>>2]=E;E=H+32|0;H=c[E>>2]|0;c[E>>2]=d;if(H|0?(Yy(H),H=c[w>>2]|0,H|0):0)Yy(H);oz(o);oz(p);oz(q);oz(r);oz(n)};c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,22284,6);r=ad(j,i,n)|0;q=c[r>>2]|0;if(!q){p=$y(36)|0;o=p+16|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;Ck(p+28|0);o=c[i>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=o;c[r>>2]=p;o=c[c[j>>2]>>2]|0;if(!o)I=p;else{c[j>>2]=o;I=c[r>>2]|0}ic(c[s>>2]|0,I);c[t>>2]=(c[t>>2]|0)+1;J=p}else J=q;Tl(i,k);q=c[i>>2]|0;p=i+4|0;I=c[p>>2]|0;c[i>>2]=0;c[p>>2]=0;c[J+28>>2]=q;q=J+32|0;J=c[q>>2]|0;c[q>>2]=I;if(J|0?(Yy(J),J=c[p>>2]|0,J|0):0)Yy(J);oz(n);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;lz(n,22628,5);J=ad(j,i,n)|0;p=c[J>>2]|0;if(!p){I=$y(36)|0;q=I+16|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;Ck(I+28|0);q=c[i>>2]|0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=q;c[J>>2]=I;q=c[c[j>>2]>>2]|0;if(!q)K=I;else{c[j>>2]=q;K=c[J>>2]|0}ic(c[s>>2]|0,K);c[t>>2]=(c[t>>2]|0)+1;L=I}else L=p;nm(i,m);p=c[i>>2]|0;I=i+4|0;t=c[I>>2]|0;c[i>>2]=0;c[I>>2]=0;c[L+28>>2]=p;p=L+32|0;L=c[p>>2]|0;c[p>>2]=t;if(!L){oz(n);cd(j,f);nm(b,j);M=c[x>>2]|0;dd(m,M);oz(k);N=c[u>>2]|0;dd(j,N);l=h;return}Yy(L);L=c[I>>2]|0;if(!L){oz(n);cd(j,f);nm(b,j);M=c[x>>2]|0;dd(m,M);oz(k);N=c[u>>2]|0;dd(j,N);l=h;return}Yy(L);oz(n);cd(j,f);nm(b,j);M=c[x>>2]|0;dd(m,M);oz(k);N=c[u>>2]|0;dd(j,N);l=h;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,k=0;if(!b)return;Zc(a,c[b>>2]|0);Zc(a,c[b+4>>2]|0);a=b+20|0;d=c[a>>2]|0;if(d|0){e=b+24|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{c[e>>2]=h+-48;oz(h+-12|0);f=c[h+-24>>2]|0;i=f;if(f|0){j=h+-20|0;k=c[j>>2]|0;if((k|0)!=(f|0))c[j>>2]=k+(~((k+-4-i|0)>>>2)<<2);bz(f)}h=c[e>>2]|0}while((h|0)!=(d|0));g=c[a>>2]|0}bz(g)}bz(b);return}function _c(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;g=l;l=l+64|0;h=g+48|0;i=g+24|0;j=g+12|0;k=g;m=g+40|0;n=i+4|0;c[n>>2]=0;o=i+8|0;c[o>>2]=0;p=i+4|0;c[i>>2]=p;$c(i);q=j+4|0;c[q>>2]=0;r=j+8|0;c[r>>2]=0;s=j+4|0;c[j>>2]=s;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22268,6);t=ad(j,h,k)|0;u=c[t>>2]|0;if(!u){v=$y(36)|0;w=v+16|0;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];c[w+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(v+28|0);w=c[h>>2]|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=w;c[t>>2]=v;w=c[c[j>>2]>>2]|0;if(!w)x=v;else{c[j>>2]=w;x=c[t>>2]|0}ic(c[q>>2]|0,x);c[r>>2]=(c[r>>2]|0)+1;y=v}else y=u;ul(h,+((Bb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));u=c[h>>2]|0;v=h+4|0;x=c[v>>2]|0;c[h>>2]=0;c[v>>2]=0;c[y+28>>2]=u;u=y+32|0;y=c[u>>2]|0;c[u>>2]=x;if(y|0?(Yy(y),y=c[v>>2]|0,y|0):0)Yy(y);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22275,8);y=ad(j,h,k)|0;v=c[y>>2]|0;if(!v){x=$y(36)|0;u=x+16|0;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(x+28|0);u=c[h>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=u;c[y>>2]=x;u=c[c[j>>2]>>2]|0;if(!u)z=x;else{c[j>>2]=u;z=c[y>>2]|0}ic(c[q>>2]|0,z);c[r>>2]=(c[r>>2]|0)+1;A=x}else A=v;wb[c[(c[d>>2]|0)+16>>2]&15](m,d,c[b>>2]|0);bd(h,b+4|0,c[m>>2]|0,e);e=c[h>>2]|0;b=h+4|0;d=c[b>>2]|0;c[h>>2]=0;c[b>>2]=0;c[A+28>>2]=e;e=A+32|0;A=c[e>>2]|0;c[e>>2]=d;if(A|0?(Yy(A),A=c[b>>2]|0,A|0):0)Yy(A);A=c[m+4>>2]|0;if(A|0)Yy(A);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22284,6);A=ad(i,h,k)|0;m=c[A>>2]|0;if(!m){b=$y(36)|0;d=b+16|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(b+28|0);d=c[h>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=d;c[A>>2]=b;d=c[c[i>>2]>>2]|0;if(!d)B=b;else{c[i>>2]=d;B=c[A>>2]|0}ic(c[n>>2]|0,B);c[o>>2]=(c[o>>2]|0)+1;C=b}else C=m;fm(h,22291);m=c[h>>2]|0;b=h+4|0;B=c[b>>2]|0;c[h>>2]=0;c[b>>2]=0;c[C+28>>2]=m;m=C+32|0;C=c[m>>2]|0;c[m>>2]=B;if(C|0?(Yy(C),C=c[b>>2]|0,C|0):0)Yy(C);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22299,6);C=ad(i,h,k)|0;b=c[C>>2]|0;if(!b){B=$y(36)|0;m=B+16|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(B+28|0);m=c[h>>2]|0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=m;c[C>>2]=B;m=c[c[i>>2]>>2]|0;if(!m)D=B;else{c[i>>2]=m;D=c[C>>2]|0}ic(c[n>>2]|0,D);c[o>>2]=(c[o>>2]|0)+1;E=B}else E=b;nm(h,j);b=c[h>>2]|0;B=h+4|0;o=c[B>>2]|0;c[h>>2]=0;c[B>>2]=0;c[E+28>>2]=b;b=E+32|0;E=c[b>>2]|0;c[b>>2]=o;if(E|0?(Yy(E),E=c[B>>2]|0,E|0):0)Yy(E);oz(k);cd(i,f);nm(a,i);dd(j,c[s>>2]|0);dd(i,c[p>>2]|0);l=g;return}function $c(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=l;l=l+32|0;d=b+16|0;e=b;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;lz(e,22547,7);f=ad(a,d,e)|0;g=c[f>>2]|0;if(!g){h=$y(36)|0;i=h+16|0;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;Ck(h+28|0);i=c[d>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=i;c[f>>2]=h;i=c[c[a>>2]>>2]|0;if(!i)j=h;else{c[a>>2]=i;j=c[f>>2]|0}ic(c[a+4>>2]|0,j);j=a+8|0;c[j>>2]=(c[j>>2]|0)+1;k=h}else k=g;fm(d,22555);g=c[d>>2]|0;h=d+4|0;j=c[h>>2]|0;c[d>>2]=0;c[h>>2]=0;c[k+28>>2]=g;g=k+32|0;k=c[g>>2]|0;c[g>>2]=j;if(!k){oz(e);l=b;return}Yy(k);k=c[h>>2]|0;if(!k){oz(e);l=b;return}Yy(k);oz(e);l=b;return}function ad(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;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Xn(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Xn(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;f=l;l=l+48|0;g=f+40|0;h=f+24|0;i=f+12|0;j=f;k=h+4|0;c[k>>2]=0;m=h+8|0;c[m>>2]=0;n=h+4|0;c[h>>2]=n;o=c[b>>2]|0;p=b+4|0;if((o|0)==(p|0)){nm(a,h);q=c[n>>2]|0;dd(h,q);l=f;return}b=i+4|0;r=i+8|0;s=g+4|0;t=i+8|0;u=g+4|0;v=o;while(1){c[i>>2]=0;c[b>>2]=0;c[r>>2]=0;o=c[v+20>>2]|0;w=c[v+24>>2]|0;if((o|0)!=(w|0)){x=o;do{ed(g,x,e);o=c[b>>2]|0;if(o>>>0>=(c[t>>2]|0)>>>0){fd(i,g);y=c[u>>2]|0;if(y|0)Yy(y)}else{c[o>>2]=c[g>>2];c[o+4>>2]=c[u>>2];c[g>>2]=0;c[u>>2]=0;c[b>>2]=o+8}x=x+48|0}while((x|0)!=(w|0))}wb[c[(c[d>>2]|0)+12>>2]&15](j,d,c[v+16>>2]|0);w=ad(h,g,j)|0;x=c[w>>2]|0;if(!x){o=$y(36)|0;y=o+16|0;c[y>>2]=c[j>>2];c[y+4>>2]=c[j+4>>2];c[y+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(o+28|0);y=c[g>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=y;c[w>>2]=o;y=c[c[h>>2]>>2]|0;if(!y)z=o;else{c[h>>2]=y;z=c[w>>2]|0}ic(c[k>>2]|0,z);c[m>>2]=(c[m>>2]|0)+1;A=o}else A=x;gm(g,i);x=c[g>>2]|0;o=c[s>>2]|0;c[g>>2]=0;c[s>>2]=0;c[A+28>>2]=x;x=A+32|0;w=c[x>>2]|0;c[x>>2]=o;if(w|0?(Yy(w),w=c[s>>2]|0,w|0):0)Yy(w);oz(j);w=c[i>>2]|0;if(w|0){o=c[b>>2]|0;if((o|0)==(w|0))B=w;else{x=o;while(1){o=x+-8|0;c[b>>2]=o;y=c[x+-4>>2]|0;if(!y)C=o;else{Yy(y);C=c[b>>2]|0}if((C|0)==(w|0))break;else x=C}B=c[i>>2]|0}bz(B)}x=c[v+4>>2]|0;if(!x){w=v;while(1){y=c[w+8>>2]|0;if((c[y>>2]|0)==(w|0)){D=y;break}else w=y}}else{w=x;while(1){y=c[w>>2]|0;if(!y){D=w;break}else w=y}}if((D|0)==(p|0))break;else v=D}nm(a,h);q=c[n>>2]|0;dd(h,q);l=f;return}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,m=0;d=l;l=l+16|0;e=d+12|0;f=d;if(!(um(b)|0)){l=d;return};c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;lz(f,22306,2);g=ad(a,e,f)|0;h=c[g>>2]|0;if(!h){i=$y(36)|0;j=i+16|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Ck(i+28|0);j=c[e>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=j;c[g>>2]=i;j=c[c[a>>2]>>2]|0;if(!j)k=i;else{c[a>>2]=j;k=c[g>>2]|0}ic(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;m=i}else m=h;h=c[b>>2]|0;i=c[b+4>>2]|0;if(i|0)Xy(i);c[m+28>>2]=h;h=m+32|0;m=c[h>>2]|0;c[h>>2]=i;if(m|0)Yy(m);oz(f);l=d;return}function dd(a,b){a=a|0;b=b|0;if(!b)return;dd(a,c[b>>2]|0);dd(a,c[b+4>>2]|0);a=c[b+32>>2]|0;if(a|0)Yy(a);oz(b+16|0);bz(b);return}function ed(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,m=0,n=0,o=0,p=0,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;f=l;l=l+80|0;g=f+72|0;h=f+56|0;i=f+36|0;j=f+24|0;k=f+16|0;m=f;n=f+52|0;o=f+48|0;p=i+4|0;c[p>>2]=0;q=i+8|0;c[q>>2]=0;r=i+4|0;c[i>>2]=r;s=d+24|0;t=d+28|0;do if((c[t>>2]|0)!=(c[s>>2]|0)){if(e|0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22309,13);u=ad(i,g,j)|0;v=c[u>>2]|0;if(!v){w=$y(36)|0;x=w+16|0;c[x>>2]=c[j>>2];c[x+4>>2]=c[j+4>>2];c[x+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(w+28|0);x=c[g>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=x;c[u>>2]=w;x=c[c[i>>2]>>2]|0;if(!x)y=w;else{c[i>>2]=x;y=c[u>>2]|0}ic(c[p>>2]|0,y);c[q>>2]=(c[q>>2]|0)+1;z=w}else z=v;v=c[s>>2]|0;w=(c[t>>2]|0)-v>>2;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[h>>2]=m;c[g>>2]=c[h>>2];hd(v,v+(w<<2)|0,g);em(k,m);w=c[k>>2]|0;v=k+4|0;u=c[v>>2]|0;c[k>>2]=0;c[v>>2]=0;c[z+28>>2]=w;w=z+32|0;x=c[w>>2]|0;c[w>>2]=u;if(x|0?(Yy(x),x=c[v>>2]|0,x|0):0)Yy(x);oz(m);oz(j);break};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22309,13);x=ad(i,g,j)|0;v=c[x>>2]|0;if(!v){u=$y(36)|0;w=u+16|0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];c[w+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(u+28|0);w=c[g>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=w;c[x>>2]=u;w=c[c[i>>2]>>2]|0;if(!w)A=u;else{c[i>>2]=w;A=c[x>>2]|0}ic(c[p>>2]|0,A);c[q>>2]=(c[q>>2]|0)+1;B=u}else B=v;c[n>>2]=c[s>>2];c[o>>2]=c[t>>2];c[h>>2]=c[n>>2];c[g>>2]=c[o>>2];gd(m,h,g);mm(k,m);v=c[k>>2]|0;u=k+4|0;x=c[u>>2]|0;c[k>>2]=0;c[u>>2]=0;c[B+28>>2]=v;v=B+32|0;w=c[v>>2]|0;c[v>>2]=x;if(w|0?(Yy(w),w=c[u>>2]|0,w|0):0)Yy(w);w=c[m>>2]|0;if(w|0){u=m+4|0;x=c[u>>2]|0;if((x|0)==(w|0))C=w;else{v=x;while(1){x=v+-8|0;c[u>>2]=x;D=c[v+-4>>2]|0;if(!D)E=x;else{Yy(D);E=c[u>>2]|0}if((E|0)==(w|0))break;else v=E}C=c[m>>2]|0}bz(C)}oz(j)}while(0);j=d+36|0;C=a[j+11>>0]|0;if(!(((C<<24>>24<0?c[d+40>>2]|0:C&255)|0)==0?!(Fz(j,0,-1,47807,0)|0):0)){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22323,5);C=ad(i,g,h)|0;m=c[C>>2]|0;if(!m){E=$y(36)|0;B=E+16|0;c[B>>2]=c[h>>2];c[B+4>>2]=c[h+4>>2];c[B+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(E+28|0);B=c[g>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=B;c[C>>2]=E;B=c[c[i>>2]>>2]|0;if(!B)F=E;else{c[i>>2]=B;F=c[C>>2]|0}ic(c[p>>2]|0,F);c[q>>2]=(c[q>>2]|0)+1;G=E}else G=m;Tl(g,j);j=c[g>>2]|0;m=g+4|0;E=c[m>>2]|0;c[g>>2]=0;c[m>>2]=0;c[G+28>>2]=j;j=G+32|0;G=c[j>>2]|0;c[j>>2]=E;if(G|0?(Yy(G),G=c[m>>2]|0,G|0):0)Yy(G);oz(h)}if(a[d>>0]|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22329,9);G=ad(i,g,h)|0;m=c[G>>2]|0;if(!m){E=$y(36)|0;j=E+16|0;c[j>>2]=c[h>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(E+28|0);j=c[g>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=j;c[G>>2]=E;j=c[c[i>>2]>>2]|0;if(!j)H=E;else{c[i>>2]=j;H=c[G>>2]|0}ic(c[p>>2]|0,H);c[q>>2]=(c[q>>2]|0)+1;I=E}else I=m;id(g,d+4|0);m=c[g>>2]|0;E=g+4|0;H=c[E>>2]|0;c[g>>2]=0;c[E>>2]=0;c[I+28>>2]=m;m=I+32|0;I=c[m>>2]|0;c[m>>2]=H;if(I|0?(Yy(I),I=c[E>>2]|0,I|0):0)Yy(I);oz(h)}if(!(a[d+12>>0]|0)){nm(b,i);J=c[r>>2]|0;dd(i,J);l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22339,8);I=ad(i,g,h)|0;E=c[I>>2]|0;if(!E){H=$y(36)|0;m=H+16|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(H+28|0);m=c[g>>2]|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=m;c[I>>2]=H;m=c[c[i>>2]>>2]|0;if(!m)K=H;else{c[i>>2]=m;K=c[I>>2]|0}ic(c[p>>2]|0,K);c[q>>2]=(c[q>>2]|0)+1;L=H}else L=E;id(g,d+16|0);d=c[g>>2]|0;E=g+4|0;H=c[E>>2]|0;c[g>>2]=0;c[E>>2]=0;c[L+28>>2]=d;d=L+32|0;L=c[d>>2]|0;c[d>>2]=H;if(L|0?(Yy(L),L=c[E>>2]|0,L|0):0)Yy(L);oz(h);nm(b,i);J=c[r>>2]|0;dd(i,J);l=f;return}function fd(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911)Vx(a);h=f;i=e;j=a+8|0;k=(c[j>>2]|0)-f|0;l=k>>2;m=k>>3>>>0<268435455?(l>>>0<g>>>0?g:l):536870911;l=e-f>>3;do if(m)if(m>>>0>536870911){e=Ea(4)|0;ZA(e);_a(e|0,6864,245)}else{n=$y(m<<3)|0;break}else n=0;while(0);e=n+(l<<3)|0;g=e;k=n+(m<<3)|0;c[e>>2]=c[b>>2];m=b+4|0;c[n+(l<<3)+4>>2]=c[m>>2];c[b>>2]=0;c[m>>2]=0;m=e+8|0;if((i|0)==(h|0)){o=g;p=f}else{f=i;i=g;g=e;do{e=f;f=f+-8|0;c[g+-8>>2]=c[f>>2];b=e+-4|0;c[g+-4>>2]=c[b>>2];c[f>>2]=0;c[b>>2]=0;g=i+-8|0;i=g}while((f|0)!=(h|0));o=i;p=c[a>>2]|0}c[a>>2]=o;o=c[d>>2]|0;c[d>>2]=m;c[j>>2]=k;k=p;if((o|0)!=(k|0)){j=o;do{o=c[j+-4>>2]|0;j=j+-8|0;if(o|0)Yy(o)}while((j|0)!=(k|0))}if(!p)return;bz(p);return}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=c[b>>2]|0;b=c[d>>2]|0;d=b-f|0;h=d>>2;i=f;f=b;if(!h)return;if(h>>>0>536870911)Vx(a);b=$y(d<<1)|0;c[e>>2]=b;c[a>>2]=b;c[a+8>>2]=b+(h<<3);if((i|0)==(f|0))return;h=i;i=b;do{ul(i,+g[h>>2]);h=h+4|0;i=(c[e>>2]|0)+8|0;c[e>>2]=i}while((h|0)!=(f|0));return}function hd(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;if((b|0)==(d|0))return;f=b;b=0;while(1){g=b+6|0;if(g>>>0<8){zz(c[e>>2]|0,a[22350+(a[f>>0]>>2-b&63)>>0]|0);h=f;i=g}else{j=f+1|0;k=a[f>>0]|0;l=g>>>0<16;if((j|0)==(d|0)){if(!l){m=7;break}n=k<<24>>24<<b+-2}else{if(!l){m=10;break}l=b+-2|0;n=a[j>>0]>>10-b&(-1<<l^255)|k<<24>>24<<l}zz(c[e>>2]|0,a[22350+(n&63)>>0]|0);h=j;i=g&7}if((h|0)==(d|0)){m=14;break}else{f=h;b=i}}if((m|0)==7)Da(22415,22443,71,22522);else if((m|0)==10)Da(22415,22443,71,22522);else if((m|0)==14)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;d=l;l=l+64|0;e=d+56|0;f=d+52|0;g=d+40|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,29813,1);Gl(h+12|0,c[b>>2]|0);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22348,1);Gl(h+32|0,c[b+4>>2]|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,j,j)|0;tm(a,g);dd(g,c[b>>2]|0);b=c[h+36>>2]|0;if(b|0)Yy(b);oz(h+20|0);b=c[h+16>>2]|0;if(!b){oz(h);l=d;return}Yy(b);oz(h);l=d;return}function jd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f+8|0;h=f+4|0;i=f;c[i>>2]=c[b>>2];c[g>>2]=c[i>>2];i=kd(a,g,h,d)|0;d=c[i>>2]|0;if(d|0){j=d;l=f;return j|0}d=$y(36)|0;kz(d+16|0,e);c[d+28>>2]=c[e+12>>2];g=c[e+16>>2]|0;c[d+32>>2]=g;if(g|0)Xy(g);g=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[i>>2]=d;g=c[c[a>>2]>>2]|0;if(!g)k=d;else{c[a>>2]=g;k=c[i>>2]|0}ic(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;j=d;l=f;return j|0}function kd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=b+4|0;h=c[d>>2]|0;d=h;do if((h|0)!=(g|0)){i=h+16|0;j=a[f+11>>0]|0;k=j<<24>>24<0;l=k?c[f+4>>2]|0:j&255;j=a[i+11>>0]|0;m=j<<24>>24<0;n=m?c[h+20>>2]|0:j&255;j=n>>>0<l>>>0;o=j?n:l;if((o|0)!=0?(p=Xn(k?c[f>>2]|0:f,m?c[i>>2]|0:i,o)|0,(p|0)!=0):0){if((p|0)<0)break}else q=4;if((q|0)==4?l>>>0<n>>>0:0)break;p=l>>>0<n>>>0?l:n;if((p|0)!=0?(n=Xn(m?c[i>>2]|0:i,k?c[f>>2]|0:f,p)|0,(n|0)!=0):0){if((n|0)>=0)q=34}else q=20;if((q|0)==20?!j:0)q=34;if((q|0)==34){c[e>>2]=d;r=e;return r|0}j=h+4|0;n=c[j>>2]|0;p=(n|0)==0;if(p){i=h;while(1){m=c[i+8>>2]|0;if((c[m>>2]|0)==(i|0)){s=m;break}else i=m}}else{i=n;while(1){m=c[i>>2]|0;if(!m){s=i;break}else i=m}}do if((s|0)!=(g|0)){i=s+16|0;n=a[i+11>>0]|0;m=n<<24>>24<0;o=m?c[s+20>>2]|0:n&255;n=o>>>0<l>>>0?o:l;if((n|0)!=0?(t=Xn(k?c[f>>2]|0:f,m?c[i>>2]|0:i,n)|0,(t|0)!=0):0){if((t|0)<0)break}else q=28;if((q|0)==28?l>>>0<o>>>0:0)break;r=ad(b,e,f)|0;return r|0}while(0);if(p){c[e>>2]=h;r=j;return r|0}else{c[e>>2]=s;r=s;return r|0}}while(0);do if((h|0)==(c[b>>2]|0))u=d;else{s=c[h>>2]|0;if(!s){g=h;while(1){l=c[g+8>>2]|0;if((c[l>>2]|0)==(g|0))g=l;else{v=l;break}}}else{g=s;while(1){j=c[g+4>>2]|0;if(!j){v=g;break}else g=j}}g=v;s=v+16|0;j=a[s+11>>0]|0;p=j<<24>>24<0;l=p?c[v+20>>2]|0:j&255;j=a[f+11>>0]|0;k=j<<24>>24<0;o=k?c[f+4>>2]|0:j&255;j=o>>>0<l>>>0?o:l;if((j|0)!=0?(t=Xn(p?c[s>>2]|0:s,k?c[f>>2]|0:f,j)|0,(t|0)!=0):0){if((t|0)<0){u=g;break}}else q=12;if((q|0)==12?l>>>0<o>>>0:0){u=g;break}r=ad(b,e,f)|0;return r|0}while(0);if(!(c[h>>2]|0)){c[e>>2]=h;r=h;return r|0}else{h=u;c[e>>2]=h;r=h+4|0;return r|0}return 0}function ld(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;g=l;l=l+704|0;h=g+672|0;i=g+496|0;j=g+480|0;k=g+472|0;m=g+448|0;n=g+464|0;o=g+440|0;p=g+432|0;q=g+416|0;r=g+408|0;s=g+360|0;t=g+344|0;u=g+336|0;v=g+324|0;w=g+368|0;x=g+312|0;y=g+304|0;z=g+288|0;A=g+268|0;B=g+256|0;C=g+224|0;D=g+208|0;E=g+196|0;F=g+184|0;G=g+232|0;H=g+144|0;I=g+128|0;J=g+120|0;K=g+104|0;L=g+92|0;M=g+80|0;N=g+68|0;O=g+56|0;P=g+48|0;Q=g+40|0;R=g+24|0;S=g+12|0;T=g;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;kz(m,f);Lc(k,m,j);oz(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22306,2);m=Am(k,h)|0;c[n>>2]=c[m>>2];f=n+4|0;U=c[m+4>>2]|0;c[f>>2]=U;if(U|0)Xy(U);oz(h);Ck(o);U=j+11|0;m=a[U>>0]|0;V=j+4|0;do if(((m<<24>>24<0?c[V>>2]|0:m&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){c[r>>2]=c[k>>2];W=r+4|0;X=k+4|0;Y=c[X>>2]|0;c[W>>2]=Y;if(Y|0)Xy(Y);Y=md(r,j)|0;Z=c[W>>2]|0;if(Z|0)Yy(Z);Z=a[U>>0]|0;if(((Z<<24>>24<0?c[V>>2]|0:Z&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){Z=e+104|0;W=d[Z>>0]|0;a:do switch(Y|0){case 0:{c[u>>2]=c[k>>2];_=u+4|0;$=c[X>>2]|0;c[_>>2]=$;if($|0)Xy($);nd(h,u,j);$=c[_>>2]|0;if($|0)Yy($);$=a[U>>0]|0;if((($<<24>>24<0?c[V>>2]|0:$&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){od(x,h);Pc(w,e,x);pd(i,w,n);$=c[i>>2]|0;_=i+4|0;aa=c[_>>2]|0;c[i>>2]=0;c[_>>2]=0;c[o>>2]=$;$=o+4|0;ba=c[$>>2]|0;c[$>>2]=aa;if(ba|0?(Yy(ba),ba=c[_>>2]|0,ba|0):0)Yy(ba);ba=c[w>>2]|0;if(ba|0){_=w+4|0;aa=c[_>>2]|0;if((aa|0)==(ba|0))ca=ba;else{$=aa;do{aa=$+-136|0;c[_>>2]=aa;Xb(aa);$=c[_>>2]|0}while(($|0)!=(ba|0));ca=c[w>>2]|0}bz(ca)}ba=c[x>>2]|0;if(ba|0){$=x+4|0;_=c[$>>2]|0;if((_|0)==(ba|0))da=ba;else{aa=_;do{_=aa+-12|0;c[$>>2]=_;oz(_);aa=c[$>>2]|0}while((aa|0)!=(ba|0));da=c[x>>2]|0}bz(da)}}else{kz(v,j);Yc(i,v,0,n,0);ba=c[i>>2]|0;aa=i+4|0;$=c[aa>>2]|0;c[i>>2]=0;c[aa>>2]=0;c[o>>2]=ba;ba=o+4|0;_=c[ba>>2]|0;c[ba>>2]=$;if(_|0?(Yy(_),_=c[aa>>2]|0,_|0):0)Yy(_);oz(v)}_=c[h>>2]|0;if(_|0){aa=h+4|0;$=c[aa>>2]|0;if(($|0)==(_|0))ea=_;else{ba=$;do{$=ba+-12|0;c[aa>>2]=$;oz($);ba=c[aa>>2]|0}while((ba|0)!=(_|0));ea=c[h>>2]|0}bz(ea)}break}case 1:{c[y>>2]=c[k>>2];_=y+4|0;ba=c[X>>2]|0;c[_>>2]=ba;if(ba|0)Xy(ba);qd(h,y,j);ba=c[_>>2]|0;if(ba|0)Yy(ba);ba=a[U>>0]|0;if(((ba<<24>>24<0?c[V>>2]|0:ba&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){kz(A,h);ba=h+12|0;_=c[ba+4>>2]|0;aa=A+12|0;c[aa>>2]=c[ba>>2];c[aa+4>>2]=_;Sc(i,e,A,j);oz(A);_=a[U>>0]|0;if(((_<<24>>24<0?c[V>>2]|0:_&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){_=c[i>>2]|0;aa=e+20|0;ba=c[aa>>2]|0;c[aa>>2]=ba+1;rd(e+24|0,ba,_);sd(w,i,e+12|0,n);_=c[w>>2]|0;ba=w+4|0;aa=c[ba>>2]|0;c[w>>2]=0;c[ba>>2]=0;c[o>>2]=_;_=o+4|0;$=c[_>>2]|0;c[_>>2]=aa;do if($|0){Yy($);aa=c[ba>>2]|0;if(!aa)break;Yy(aa)}while(0)}else{kz(B,j);Yc(w,B,1,n,0);ba=c[w>>2]|0;$=w+4|0;aa=c[$>>2]|0;c[w>>2]=0;c[$>>2]=0;c[o>>2]=ba;ba=o+4|0;_=c[ba>>2]|0;c[ba>>2]=aa;if(_|0?(Yy(_),_=c[$>>2]|0,_|0):0)Yy(_);oz(B)}oz(i+164|0);fc(i+152|0,c[i+156>>2]|0);Xb(i+4|0);fa=h}else{kz(z,j);Yc(i,z,1,n,0);_=c[i>>2]|0;$=i+4|0;aa=c[$>>2]|0;c[i>>2]=0;c[$>>2]=0;c[o>>2]=_;_=o+4|0;ba=c[_>>2]|0;c[_>>2]=aa;if(ba|0?(Yy(ba),ba=c[$>>2]|0,ba|0):0)Yy(ba);oz(z);fa=h}oz(fa);break}case 2:{c[C>>2]=c[k>>2];ba=C+4|0;$=c[X>>2]|0;c[ba>>2]=$;if($|0)Xy($);$=e+12|0;td(w,C,$,j);aa=c[ba>>2]|0;if(aa|0)Yy(aa);aa=a[U>>0]|0;b:do if(((aa<<24>>24<0?c[V>>2]|0:aa&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){ba=e+24|0;_=xc(ba,c[w>>2]|0)|0;if((_|0)==(c[e+16>>2]|0)){c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;lz(E,22634,32);Yc(h,E,2,n,0);ga=c[h>>2]|0;ha=h+4|0;ia=c[ha>>2]|0;c[h>>2]=0;c[ha>>2]=0;c[o>>2]=ga;ga=o+4|0;ja=c[ga>>2]|0;c[ga>>2]=ia;if(ja|0?(Yy(ja),ja=c[ha>>2]|0,ja|0):0)Yy(ja);oz(E);break}do if((c[e+28>>2]|0)!=(_|0)?(ja=e+60|0,ha=c[ja>>2]|0,ha|0):0){ia=ja;ga=ha;c:while(1){ha=ga;while(1){if((c[ha+16>>2]|0)>>>0>=_>>>0)break;ka=c[ha+4>>2]|0;if(!ka){la=ia;break c}else ha=ka}ga=c[ha>>2]|0;if(!ga){la=ha;break}else ia=ha}if((la|0)!=(ja|0)){if((c[la+16>>2]|0)>>>0>_>>>0)break;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;lz(F,22667,34);Yc(h,F,2,n,0);ia=c[h>>2]|0;ga=h+4|0;ka=c[ga>>2]|0;c[h>>2]=0;c[ga>>2]=0;c[o>>2]=ia;ia=o+4|0;ma=c[ia>>2]|0;c[ia>>2]=ka;do if(ma|0){Yy(ma);ka=c[ga>>2]|0;if(!ka)break;Yy(ka)}while(0);oz(F);break b}}while(0);c[H>>2]=c[w>>2];ga=H+4|0;ma=w+4|0;c[ga>>2]=c[ma>>2];c[ga+4>>2]=c[ma+4>>2];c[ga+8>>2]=c[ma+8>>2];ma=H+16|0;c[H+20>>2]=0;c[H+24>>2]=0;ga=H+20|0;c[ma>>2]=ga;ja=c[w+16>>2]|0;ka=w+20|0;if((ja|0)!=(ka|0)){ia=ga;na=ja;oa=ja;while(1){ja=na+16|0;c[i>>2]=ia;c[h>>2]=c[i>>2];ud(ma,h,ja,ja)|0;ja=c[oa+4>>2]|0;if(!ja){pa=oa;while(1){qa=c[pa+8>>2]|0;if((c[qa>>2]|0)==(pa|0)){ra=qa;break}else pa=qa}}else{pa=ja;while(1){qa=c[pa>>2]|0;if(!qa){ra=pa;break}else pa=qa}}if((ra|0)==(ka|0))break;else{na=ra;oa=ra}}}oa=H+28|0;kz(oa,w+28|0);Vc(G,0,H,j);oz(oa);fc(H+16|0,c[ga>>2]|0);oa=a[U>>0]|0;do if(!((oa<<24>>24<0?c[V>>2]|0:oa&255)|0)){if(Fz(j,0,-1,47807,0)|0){sa=105;break}vd(ba,_,c[w+4>>2]|0,c[w+12>>2]|0);wd(h,G,$,n);na=c[h>>2]|0;ka=h+4|0;ma=c[ka>>2]|0;c[h>>2]=0;c[ka>>2]=0;c[o>>2]=na;na=o+4|0;ia=c[na>>2]|0;c[na>>2]=ma;do if(ia|0){Yy(ia);ma=c[ka>>2]|0;if(!ma)break;Yy(ma)}while(0)}else sa=105;while(0);if((sa|0)==105){kz(I,j);Yc(h,I,2,n,0);_=c[h>>2]|0;ba=h+4|0;oa=c[ba>>2]|0;c[h>>2]=0;c[ba>>2]=0;c[o>>2]=_;_=o+4|0;ga=c[_>>2]|0;c[_>>2]=oa;do if(ga|0){Yy(ga);oa=c[ba>>2]|0;if(!oa)break;Yy(oa)}while(0);oz(I)}Zb(G+4|0)}else sa=76;while(0);if((sa|0)==76){kz(D,j);Yc(h,D,2,n,0);$=c[h>>2]|0;aa=h+4|0;ba=c[aa>>2]|0;c[h>>2]=0;c[aa>>2]=0;c[o>>2]=$;$=o+4|0;ga=c[$>>2]|0;c[$>>2]=ba;if(ga|0?(Yy(ga),ga=c[aa>>2]|0,ga|0):0)Yy(ga);oz(D)}oz(w+28|0);fc(w+16|0,c[w+20>>2]|0);break}case 3:{c[J>>2]=c[k>>2];ga=J+4|0;aa=c[X>>2]|0;c[ga>>2]=aa;if(aa|0)Xy(aa);aa=e+12|0;xd(i,J,aa,h,j);ba=c[ga>>2]|0;if(ba|0)Yy(ba);ba=a[U>>0]|0;d:do if(((ba<<24>>24<0?c[V>>2]|0:ba&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){ga=e+24|0;$=xc(ga,c[i>>2]|0)|0;oa=i+4|0;_=(c[i+8>>2]|0)-(c[oa>>2]|0)|0;ka=(_|0)/12|0;if(($|0)==(c[e+16>>2]|0)){c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;lz(L,22634,32);Yc(w,L,3,n,0);ia=c[w>>2]|0;ma=w+4|0;na=c[ma>>2]|0;c[w>>2]=0;c[ma>>2]=0;c[o>>2]=ia;ia=o+4|0;pa=c[ia>>2]|0;c[ia>>2]=na;if(pa|0?(Yy(pa),pa=c[ma>>2]|0,pa|0):0)Yy(pa);oz(L);break}do if((c[e+28>>2]|0)!=($|0)?(pa=e+60|0,ma=c[pa>>2]|0,ma|0):0){na=pa;ia=ma;e:while(1){ma=ia;while(1){if((c[ma+16>>2]|0)>>>0>=$>>>0)break;ja=c[ma+4>>2]|0;if(!ja){ta=na;break e}else ma=ja}ia=c[ma>>2]|0;if(!ia){ta=ma;break}else na=ma}if((ta|0)!=(pa|0)){if((c[ta+16>>2]|0)>>>0>$>>>0)break;if((ka|0)!=(yd(ga,$)|0)){c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;lz(N,22702,33);Yc(w,N,3,n,0);na=c[w>>2]|0;ia=w+4|0;ha=c[ia>>2]|0;c[w>>2]=0;c[ia>>2]=0;c[o>>2]=na;na=o+4|0;ja=c[na>>2]|0;c[na>>2]=ha;do if(ja|0){Yy(ja);ha=c[ia>>2]|0;if(!ha)break;Yy(ha)}while(0);oz(N);break d}if((c[h>>2]|0)==1)a[Z>>0]=1;ia=zd(ga,$)|0;ja=az(ka>>>0>1073741823?-1:ka<<2)|0;f:do if((_|0)>0){pa=c[oa>>2]|0;ha=0;while(1){na=c[pa+(ha*12|0)>>2]|0;if(((c[pa+(ha*12|0)+4>>2]|0)-na>>2|0)!=(ia|0))break;c[ja+(ha<<2)>>2]=na;ha=ha+1|0;if((ha|0)>=(ka|0))break f}cz(ja);c[O>>2]=0;c[O+4>>2]=0;c[O+8>>2]=0;lz(O,22736,25);Yc(w,O,3,n,0);ha=c[w>>2]|0;pa=w+4|0;ma=c[pa>>2]|0;c[w>>2]=0;c[pa>>2]=0;c[o>>2]=ha;ha=o+4|0;na=c[ha>>2]|0;c[ha>>2]=ma;do if(na|0){Yy(na);ma=c[pa>>2]|0;if(!ma)break;Yy(ma)}while(0);oz(O);break d}while(0);ia=w+4|0;c[w+8>>2]=0;pa=w+12|0;c[pa>>2]=0;na=w+8|0;c[ia>>2]=na;ma=c[i>>2]|0;c[w>>2]=ma;ha=c[(c[ma>>2]|0)+96>>2]|0;c[P>>2]=c[i+16>>2];c[P+4>>2]=c[i+20>>2];Ab[ha&31](G,ma,ja,P);Zc(ia,c[na>>2]|0);c[ia>>2]=c[G>>2];ma=G+4|0;ha=c[ma>>2]|0;c[na>>2]=ha;qa=G+8|0;ua=c[qa>>2]|0;c[pa>>2]=ua;if(!ua){c[ia>>2]=na;va=ha}else{c[ha+8>>2]=na;c[G>>2]=ma;c[ma>>2]=0;c[qa>>2]=0;va=0}Zc(G,va);cz(ja);_c(G,w,aa,c[h>>2]|0,n);qa=c[G>>2]|0;ma=G+4|0;ha=c[ma>>2]|0;c[G>>2]=0;c[ma>>2]=0;c[o>>2]=qa;qa=o+4|0;ia=c[qa>>2]|0;c[qa>>2]=ha;do if(ia|0){Yy(ia);ha=c[ma>>2]|0;if(!ha)break;Yy(ha)}while(0);Zc(w+4|0,c[na>>2]|0);break d}}while(0);c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=0;lz(M,22237,30);Yc(w,M,3,n,0);ka=c[w>>2]|0;oa=w+4|0;_=c[oa>>2]|0;c[w>>2]=0;c[oa>>2]=0;c[o>>2]=ka;ka=o+4|0;$=c[ka>>2]|0;c[ka>>2]=_;if($|0?(Yy($),$=c[oa>>2]|0,$|0):0)Yy($);oz(M)}else sa=121;while(0);if((sa|0)==121){kz(K,j);Yc(w,K,3,n,0);aa=c[w>>2]|0;ba=w+4|0;$=c[ba>>2]|0;c[w>>2]=0;c[ba>>2]=0;c[o>>2]=aa;aa=o+4|0;oa=c[aa>>2]|0;c[aa>>2]=$;if(oa|0?(Yy(oa),oa=c[ba>>2]|0,oa|0):0)Yy(oa);oz(K)}oa=i+4|0;ba=c[oa>>2]|0;if(ba|0){$=i+8|0;aa=c[$>>2]|0;if((aa|0)==(ba|0))wa=ba;else{_=aa;while(1){aa=_+-12|0;c[$>>2]=aa;ka=c[aa>>2]|0;ga=ka;if(!ka)xa=aa;else{aa=_+-8|0;ma=c[aa>>2]|0;if((ma|0)!=(ka|0))c[aa>>2]=ma+(~((ma+-4-ga|0)>>>2)<<2);bz(ka);xa=c[$>>2]|0}if((xa|0)==(ba|0))break;else _=xa}wa=c[oa>>2]|0}bz(wa)}break}case 4:{c[Q>>2]=c[k>>2];_=Q+4|0;ba=c[X>>2]|0;c[_>>2]=ba;if(ba|0)Xy(ba);ba=e+12|0;$=Ad(Q,ba,j)|0;ka=c[_>>2]|0;if(ka|0)Yy(ka);ka=a[U>>0]|0;if(((ka<<24>>24<0?c[V>>2]|0:ka&255)|0)==0?(Fz(j,0,-1,47807,0)|0)==0:0){ka=e+24|0;_=xc(ka,$)|0;if((_|0)==(c[e+16>>2]|0)){c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;lz(S,22634,32);Yc(h,S,4,n,0);ga=c[h>>2]|0;ma=h+4|0;aa=c[ma>>2]|0;c[h>>2]=0;c[ma>>2]=0;c[o>>2]=ga;ga=o+4|0;ia=c[ga>>2]|0;c[ga>>2]=aa;if(ia|0?(Yy(ia),ia=c[ma>>2]|0,ia|0):0)Yy(ia);oz(S);break a}ia=h+4|0;c[h+8>>2]=0;ma=h+12|0;c[ma>>2]=0;aa=h+8|0;c[ia>>2]=aa;c[h>>2]=$;do if((c[e+28>>2]|0)!=(_|0)?(ga=e+60|0,ja=c[ga>>2]|0,ja|0):0){ha=ga;qa=ja;g:while(1){ja=qa;while(1){if((c[ja+16>>2]|0)>>>0>=_>>>0)break;ua=c[ja+4>>2]|0;if(!ua){ya=ha;break g}else ja=ua}qa=c[ja>>2]|0;if(!qa){ya=ja;break}else ha=ja}if((ya|0)!=(ga|0)){if((c[ya+16>>2]|0)>>>0>_>>>0)break;rb[c[(c[$>>2]|0)+100>>2]&127](i,$);Zc(ia,c[aa>>2]|0);c[ia>>2]=c[i>>2];ha=i+4|0;qa=c[ha>>2]|0;c[aa>>2]=qa;na=i+8|0;ua=c[na>>2]|0;c[ma>>2]=ua;if(!ua){c[ia>>2]=aa;za=qa}else{c[qa+8>>2]=aa;c[i>>2]=ha;c[ha>>2]=0;c[na>>2]=0;za=0}Zc(i,za)}}while(0);Bd(i,h,ba,W,n);ia=c[i>>2]|0;ma=i+4|0;oa=c[ma>>2]|0;c[i>>2]=0;c[ma>>2]=0;c[o>>2]=ia;ia=o+4|0;na=c[ia>>2]|0;c[ia>>2]=oa;if(na|0?(Yy(na),na=c[ma>>2]|0,na|0):0)Yy(na);Cd(ka,_);if($|0)qb[c[(c[$>>2]|0)+4>>2]&511]($);Zc(h+4|0,c[aa>>2]|0);break a}kz(R,j);Yc(h,R,4,n,0);na=c[h>>2]|0;ma=h+4|0;oa=c[ma>>2]|0;c[h>>2]=0;c[ma>>2]=0;c[o>>2]=na;na=o+4|0;ia=c[na>>2]|0;c[na>>2]=oa;if(ia|0?(Yy(ia),ia=c[ma>>2]|0,ia|0):0)Yy(ia);oz(R);break}case 5:{c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;lz(T,22762,15);Yc(h,T,5,n,0);ia=c[h>>2]|0;ma=h+4|0;oa=c[ma>>2]|0;c[h>>2]=0;c[ma>>2]=0;c[o>>2]=ia;ia=o+4|0;na=c[ia>>2]|0;c[ia>>2]=oa;if(na|0?(Yy(na),na=c[ma>>2]|0,na|0):0)Yy(na);oz(T);break}default:{}}while(0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(o,b);break}kz(t,j);Yc(s,t,5,n,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(s,b);W=c[s+4>>2]|0;if(W|0)Yy(W);oz(t)}else sa=5;while(0);if((sa|0)==5){kz(q,j);Yc(p,q,5,n,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;tl(p,b);b=c[p+4>>2]|0;if(b|0)Yy(b);oz(q)}q=c[o+4>>2]|0;if(q|0)Yy(q);q=c[f>>2]|0;if(q|0)Yy(q);q=c[k+4>>2]|0;if(!q){oz(j);l=g;return}Yy(q);oz(j);l=g;return}function md(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+48|0;f=e+24|0;g=e+12|0;h=e;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;lz(f,22284,6);i=(um(Am(b,f)|0)|0)==3;oz(f);if(!i){tz(d,22785)|0;j=5;l=e;return j|0};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22284,6);kz(f,xm(Am(b,g)|0)|0);oz(g);b=f+11|0;i=a[b>>0]|0;k=f+4|0;m=c[k>>2]|0;if(((i<<24>>24<0?m:i&255)|0)==4)if(!(Fz(f,0,-1,22559,4)|0))n=0;else{o=a[b>>0]|0;p=c[k>>2]|0;q=6}else{o=i;p=m;q=6}do if((q|0)==6){if(((o<<24>>24<0?p:o&255)|0)==4){if(!(Fz(f,0,-1,22564,4)|0)){n=1;break}r=a[b>>0]|0;s=c[k>>2]|0}else{r=o;s=p}if(((r<<24>>24<0?s:r&255)|0)==9){if(!(Fz(f,0,-1,22569,9)|0)){n=2;break}t=a[b>>0]|0;u=c[k>>2]|0}else{t=r;u=s}if(((t<<24>>24<0?u:t&255)|0)==7){if(!(Fz(f,0,-1,22291,7)|0)){n=3;break}v=a[b>>0]|0;w=c[k>>2]|0}else{v=t;w=u}if(((v<<24>>24<0?w:v&255)|0)==6){if(!(Fz(f,0,-1,22579,6)|0)){n=4;break}x=a[b>>0]|0;y=c[k>>2]|0}else{x=v;y=w}if(((x<<24>>24<0?y:x&255)|0)==7){if(!(Fz(f,0,-1,22586,7)|0)){n=5;break}z=a[b>>0]|0;A=c[k>>2]|0}else{z=x;A=y};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=z<<24>>24<0?A:z&255;Gz(h,24405,45,m+45|0);xz(h,(a[b>>0]|0)<0?c[f>>2]|0:f,m)|0;m=yz(h,24451)|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;m=d+11|0;if((a[m>>0]|0)<0){a[c[d>>2]>>0]=0;c[d+4>>2]=0}else{a[d>>0]=0;a[m>>0]=0}sz(d,0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(h);n=5}while(0);oz(f);j=n;l=e;return j|0}function nd(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,m=0;f=l;l=l+48|0;g=f+24|0;h=f+8|0;i=f;j=f+32|0;c[g>>2]=c[d>>2];k=g+4|0;m=c[d+4>>2]|0;c[k>>2]=m;if(m|0)Xy(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22559,4);Fd(g,h,e);oz(h);h=c[k>>2]|0;if(h|0)Yy(h);h=a[e+11>>0]|0;if(((h<<24>>24<0?c[e+4>>2]|0:h&255)|0)==0?(Fz(e,0,-1,47807,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22778,6);h=Am(d,j)|0;c[i>>2]=c[h>>2];d=i+4|0;k=c[h+4>>2]|0;c[d>>2]=k;if(k|0)Xy(k);ue(b,i,e);e=c[d>>2]|0;if(e|0)Yy(e);oz(j);l=f;return}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;l=f;return}function od(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/12|0;if(!f)return;if(g>>>0>357913941)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*12|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{kz(g,e);e=e+12|0;g=(c[d>>2]|0)+12|0;c[d>>2]=g}while((e|0)!=(b|0));return}function pd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=l;l=l+32|0;f=e+24|0;g=e+12|0;h=e;i=g+4|0;c[i>>2]=0;j=g+8|0;c[j>>2]=0;k=g+4|0;c[g>>2]=k;$c(g);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22284,6);m=ad(g,f,h)|0;n=c[m>>2]|0;if(!n){o=$y(36)|0;p=o+16|0;c[p>>2]=c[h>>2];c[p+4>>2]=c[h+4>>2];c[p+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(o+28|0);p=c[f>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=p;c[m>>2]=o;p=c[c[g>>2]>>2]|0;if(!p)q=o;else{c[g>>2]=p;q=c[m>>2]|0}ic(c[i>>2]|0,q);c[j>>2]=(c[j>>2]|0)+1;r=o}else r=n;fm(f,22559);n=c[f>>2]|0;o=f+4|0;q=c[o>>2]|0;c[f>>2]=0;c[o>>2]=0;c[r+28>>2]=n;n=r+32|0;r=c[n>>2]|0;c[n>>2]=q;if(r|0?(Yy(r),r=c[o>>2]|0,r|0):0)Yy(r);oz(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22299,6);r=ad(g,f,h)|0;o=c[r>>2]|0;if(!o){q=$y(36)|0;n=q+16|0;c[n>>2]=c[h>>2];c[n+4>>2]=c[h+4>>2];c[n+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(q+28|0);n=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=n;c[r>>2]=q;n=c[c[g>>2]>>2]|0;if(!n)s=q;else{c[g>>2]=n;s=c[r>>2]|0}ic(c[i>>2]|0,s);c[j>>2]=(c[j>>2]|0)+1;t=q}else t=o;te(f,b);b=c[f>>2]|0;o=f+4|0;q=c[o>>2]|0;c[f>>2]=0;c[o>>2]=0;c[t+28>>2]=b;b=t+32|0;t=c[b>>2]|0;c[b>>2]=q;if(t|0?(Yy(t),t=c[o>>2]|0,t|0):0)Yy(t);oz(h);cd(g,d);nm(a,g);dd(g,c[k>>2]|0);l=e;return}function qd(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,m=0;f=l;l=l+48|0;g=f+24|0;h=f+8|0;i=f;j=f+32|0;c[g>>2]=c[d>>2];k=g+4|0;m=c[d+4>>2]|0;c[k>>2]=m;if(m|0)Xy(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22564,4);Fd(g,h,e);oz(h);h=c[k>>2]|0;if(h|0)Yy(h);h=a[e+11>>0]|0;if(((h<<24>>24<0?c[e+4>>2]|0:h&255)|0)==0?(Fz(e,0,-1,47807,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22778,6);h=Am(d,j)|0;c[i>>2]=c[h>>2];d=i+4|0;k=c[h+4>>2]|0;c[d>>2]=k;if(k|0)Xy(k);re(b,i,e);e=c[d>>2]|0;if(e|0)Yy(e);oz(j);l=f;return};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;l=f;return}function rd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;e=l;l=l+16|0;f=e;g=d;if(!d){l=e;return}h=a+20|0;i=a+24|0;j=c[i>>2]|0;if(j|0){k=i;m=j;a:while(1){j=m;while(1){if((c[j+16>>2]|0)>>>0>=d>>>0)break;n=c[j+4>>2]|0;if(!n){o=k;break a}else j=n}m=c[j>>2]|0;if(!m){o=j;break}else k=j}if((o|0)!=(i|0)?(c[o+16>>2]|0)>>>0<=d>>>0:0){l=e;return}}o=a+8|0;k=a+12|0;m=c[k>>2]|0;n=(m|0)==0;do if(!n){p=k;q=m;b:while(1){r=q;while(1){if((c[r+16>>2]|0)>>>0>=b>>>0)break;s=c[r+4>>2]|0;if(!s){t=p;break b}else r=s}q=c[r>>2]|0;if(!q){t=r;break}else p=r}if((t|0)!=(k|0)?(c[t+16>>2]|0)>>>0<=b>>>0:0){p=fe(zq(fe(xq(fe(43100,23823,31)|0,b)|0,23855,12)|0,d)|0,23868,26)|0;q=c[k>>2]|0;do if(q){j=q;while(1){s=c[j+16>>2]|0;if(s>>>0>b>>>0){u=c[j>>2]|0;if(!u){v=20;break}else w=u}else{if(s>>>0>=b>>>0){v=25;break}x=j+4|0;s=c[x>>2]|0;if(!s){v=24;break}else w=s}j=w}if((v|0)==20){c[f>>2]=j;y=j;z=j;break}else if((v|0)==24){c[f>>2]=j;y=j;z=x;break}else if((v|0)==25){c[f>>2]=j;y=j;z=f;break}}else{c[f>>2]=k;y=k;z=k}while(0);q=c[z>>2]|0;if(q|0){A=q;B=A+20|0;C=c[B>>2]|0;D=zq(p,C)|0;E=fe(D,31460,1)|0;F=c[E>>2]|0;G=F+-12|0;H=c[G>>2]|0;I=E+H|0;J=iq(I)|0;c[f>>2]=J;K=Hr(f,43804)|0;L=c[K>>2]|0;M=L+28|0;N=c[M>>2]|0;O=Bb[N&63](K,10)|0;Oy(f);Aq(E,O)|0;nq(E)|0;P=Ea(8)|0;fz(P,23895);_a(P|0,6880,247)}q=$y(24)|0;c[q+16>>2]=b;c[q+20>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=y;c[z>>2]=q;r=c[c[o>>2]>>2]|0;if(!r)Q=q;else{c[o>>2]=r;Q=c[z>>2]|0}ic(c[a+12>>2]|0,Q);r=a+16|0;c[r>>2]=(c[r>>2]|0)+1;A=q;B=A+20|0;C=c[B>>2]|0;D=zq(p,C)|0;E=fe(D,31460,1)|0;F=c[E>>2]|0;G=F+-12|0;H=c[G>>2]|0;I=E+H|0;J=iq(I)|0;c[f>>2]=J;K=Hr(f,43804)|0;L=c[K>>2]|0;M=L+28|0;N=c[M>>2]|0;O=Bb[N&63](K,10)|0;Oy(f);Aq(E,O)|0;nq(E)|0;P=Ea(8)|0;fz(P,23895);_a(P|0,6880,247)}if(!n){q=m;while(1){r=c[q+16>>2]|0;if(r>>>0>b>>>0){s=c[q>>2]|0;if(!s){v=35;break}else R=s}else{if(r>>>0>=b>>>0){v=40;break}S=q+4|0;r=c[S>>2]|0;if(!r){v=39;break}else R=r}q=R}if((v|0)==35){c[f>>2]=q;T=q;U=f;V=q;break}else if((v|0)==39){c[f>>2]=q;T=q;U=f;V=S;break}else if((v|0)==40){c[f>>2]=q;T=q;U=f;V=f;break}}else{W=f;v=41}}else{W=f;v=41}while(0);if((v|0)==41){c[f>>2]=k;T=k;U=W;V=k}k=c[V>>2]|0;if(!k){W=$y(24)|0;c[W+16>>2]=b;c[W+20>>2]=0;c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=T;c[V>>2]=W;T=c[c[o>>2]>>2]|0;if(!T)X=W;else{c[o>>2]=T;X=c[V>>2]|0}ic(c[a+12>>2]|0,X);X=a+16|0;c[X>>2]=(c[X>>2]|0)+1;Y=W}else Y=k;c[Y+20>>2]=g;Y=c[i>>2]|0;do if(Y){k=Y;while(1){W=c[k+16>>2]|0;if(W>>>0>d>>>0){X=c[k>>2]|0;if(!X){v=49;break}else Z=X}else{if(W>>>0>=d>>>0){v=54;break}_=k+4|0;W=c[_>>2]|0;if(!W){v=53;break}else Z=W}k=Z}if((v|0)==49){c[f>>2]=k;$=k;aa=k;break}else if((v|0)==53){c[f>>2]=k;$=k;aa=_;break}else if((v|0)==54){c[f>>2]=k;$=k;aa=f;break}}else{c[f>>2]=i;$=i;aa=i}while(0);i=c[aa>>2]|0;if(!i){_=$y(24)|0;c[_+16>>2]=g;c[_+20>>2]=0;c[_>>2]=0;c[_+4>>2]=0;c[_+8>>2]=$;c[aa>>2]=_;$=c[c[h>>2]>>2]|0;if(!$)ba=_;else{c[h>>2]=$;ba=c[aa>>2]|0}ic(c[a+24>>2]|0,ba);ba=a+28|0;c[ba>>2]=(c[ba>>2]|0)+1;ca=_}else ca=i;c[ca+20>>2]=b;ca=a+68|0;i=a+72|0;_=c[i>>2]|0;do if(_){ba=_;while(1){aa=c[ba+16>>2]|0;if(aa>>>0>b>>>0){$=c[ba>>2]|0;if(!$){v=63;break}else da=$}else{if(aa>>>0>=b>>>0){v=68;break}ea=ba+4|0;aa=c[ea>>2]|0;if(!aa){v=67;break}else da=aa}ba=da}if((v|0)==63){c[f>>2]=ba;fa=ba;ga=ba;break}else if((v|0)==67){c[f>>2]=ba;fa=ba;ga=ea;break}else if((v|0)==68){c[f>>2]=ba;fa=ba;ga=f;break}}else{c[f>>2]=i;fa=i;ga=i}while(0);i=c[ga>>2]|0;if(!i){f=$y(28)|0;c[f+16>>2]=b;c[f+20>>2]=0;c[f+24>>2]=0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=fa;c[ga>>2]=f;fa=c[c[ca>>2]>>2]|0;if(!fa)ha=f;else{c[ca>>2]=fa;ha=c[ga>>2]|0}ic(c[a+72>>2]|0,ha);ha=a+76|0;c[ha>>2]=(c[ha>>2]|0)+1;ia=f}else ia=i;i=$y(28)|0;c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=7232;f=i+12|0;ge(f,d);c[ia+20>>2]=f;f=ia+24|0;ia=c[f>>2]|0;c[f>>2]=i;if(!ia){l=e;return}Yy(ia);l=e;return}function sd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=l;l=l+48|0;g=f+40|0;h=f+24|0;i=f;j=f+12|0;if(!(c[b>>2]|0)){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23604,21);Yc(a,j,1,e,0);oz(j);l=f;return}j=h+4|0;c[j>>2]=0;k=h+8|0;c[k>>2]=0;m=h+4|0;c[h>>2]=m;$c(h);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22284,6);n=ad(h,g,i)|0;o=c[n>>2]|0;if(!o){p=$y(36)|0;q=p+16|0;c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(p+28|0);q=c[g>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=q;c[n>>2]=p;q=c[c[h>>2]>>2]|0;if(!q)r=p;else{c[h>>2]=q;r=c[n>>2]|0}ic(c[j>>2]|0,r);c[k>>2]=(c[k>>2]|0)+1;s=p}else s=o;fm(g,22564);o=c[g>>2]|0;p=g+4|0;r=c[p>>2]|0;c[g>>2]=0;c[p>>2]=0;c[s+28>>2]=o;o=s+32|0;s=c[o>>2]|0;c[o>>2]=r;if(s|0?(Yy(s),s=c[p>>2]|0,s|0):0)Yy(s);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22299,6);s=ad(h,g,i)|0;p=c[s>>2]|0;if(!p){r=$y(36)|0;o=r+16|0;c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(r+28|0);o=c[g>>2]|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=o;c[s>>2]=r;o=c[c[h>>2]>>2]|0;if(!o)t=r;else{c[h>>2]=o;t=c[s>>2]|0}ic(c[j>>2]|0,t);c[k>>2]=(c[k>>2]|0)+1;u=r}else u=p;Wd(g,b,d);d=c[g>>2]|0;b=g+4|0;p=c[b>>2]|0;c[g>>2]=0;c[b>>2]=0;c[u+28>>2]=d;d=u+32|0;u=c[d>>2]|0;c[d>>2]=p;if(u|0?(Yy(u),u=c[b>>2]|0,u|0):0)Yy(u);oz(i);cd(h,e);nm(a,h);dd(h,c[m>>2]|0);l=f;return}function td(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,m=0,n=0;g=l;l=l+48|0;h=g+24|0;i=g+8|0;j=g;k=g+32|0;c[h>>2]=c[d>>2];m=h+4|0;n=c[d+4>>2]|0;c[m>>2]=n;if(n|0)Xy(n);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22569,9);Fd(h,i,f);oz(i);i=c[m>>2]|0;if(i|0)Yy(i);i=a[f+11>>0]|0;if(((i<<24>>24<0?c[f+4>>2]|0:i&255)|0)==0?(Fz(f,0,-1,47807,0)|0)==0:0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22778,6);i=Am(d,k)|0;c[j>>2]=c[i>>2];d=j+4|0;m=c[i+4>>2]|0;c[d>>2]=m;if(m|0)Xy(m);Ud(b,j,e,f);f=c[d>>2]|0;if(f|0)Yy(f);oz(k);l=g;return}c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;k=b+28|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;l=g;return}function ud(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;g=f+8|0;h=f+4|0;i=f;c[i>>2]=c[b>>2];c[g>>2]=c[i>>2];i=Td(a,g,h,d)|0;d=c[i>>2]|0;if(d|0){j=d;l=f;return j|0}d=$y(32)|0;kz(d+16|0,e);c[d+28>>2]=c[e+12>>2];e=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=e;c[i>>2]=d;e=c[c[a>>2]>>2]|0;if(!e)k=d;else{c[a>>2]=e;k=c[i>>2]|0}ic(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;j=d;l=f;return j|0}function vd(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,m=0,n=0,o=0,p=0,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+16|0;g=f;if((c[a+4>>2]|0)==(b|0)){l=f;return}h=a+32|0;i=a+36|0;j=c[i>>2]|0;do if(j){k=j;while(1){m=c[k+16>>2]|0;if(m>>>0>b>>>0){n=c[k>>2]|0;if(!n){o=5;break}else p=n}else{if(m>>>0>=b>>>0){o=10;break}q=k+4|0;m=c[q>>2]|0;if(!m){o=9;break}else p=m}k=p}if((o|0)==5){c[g>>2]=k;r=k;s=k;break}else if((o|0)==9){c[g>>2]=k;r=k;s=q;break}else if((o|0)==10){c[g>>2]=k;r=k;s=g;break}}else{c[g>>2]=i;r=i;s=i}while(0);if(!(c[s>>2]|0)){i=$y(20)|0;c[i+16>>2]=b;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=r;c[s>>2]=i;r=c[c[h>>2]>>2]|0;if(!r)t=i;else{c[h>>2]=r;t=c[s>>2]|0}ic(c[a+36>>2]|0,t);t=a+40|0;c[t>>2]=(c[t>>2]|0)+1}t=a+44|0;s=a+48|0;r=c[s>>2]|0;do if(r){h=r;while(1){i=c[h+16>>2]|0;if(i>>>0>b>>>0){q=c[h>>2]|0;if(!q){o=19;break}else u=q}else{if(i>>>0>=b>>>0){o=24;break}v=h+4|0;i=c[v>>2]|0;if(!i){o=23;break}else u=i}h=u}if((o|0)==19){c[g>>2]=h;w=h;x=h;break}else if((o|0)==23){c[g>>2]=h;w=h;x=v;break}else if((o|0)==24){c[g>>2]=h;w=h;x=g;break}}else{c[g>>2]=s;w=s;x=s}while(0);s=c[x>>2]|0;if(!s){v=$y(24)|0;c[v+16>>2]=b;c[v+20>>2]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=w;c[x>>2]=v;w=c[c[t>>2]>>2]|0;if(!w)y=v;else{c[t>>2]=w;y=c[x>>2]|0}ic(c[a+48>>2]|0,y);y=a+52|0;c[y>>2]=(c[y>>2]|0)+1;z=v}else z=s;c[z+20>>2]=d;d=a+56|0;z=a+60|0;s=c[z>>2]|0;do if(s){v=s;while(1){y=c[v+16>>2]|0;if(y>>>0>b>>>0){x=c[v>>2]|0;if(!x){o=33;break}else A=x}else{if(y>>>0>=b>>>0){o=38;break}B=v+4|0;y=c[B>>2]|0;if(!y){o=37;break}else A=y}v=A}if((o|0)==33){c[g>>2]=v;C=v;D=v;break}else if((o|0)==37){c[g>>2]=v;C=v;D=B;break}else if((o|0)==38){c[g>>2]=v;C=v;D=g;break}}else{c[g>>2]=z;C=z;D=z}while(0);z=c[D>>2]|0;if(!z){g=$y(24)|0;c[g+16>>2]=b;c[g+20>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=C;c[D>>2]=g;C=c[c[d>>2]>>2]|0;if(!C)E=g;else{c[d>>2]=C;E=c[D>>2]|0}ic(c[a+60>>2]|0,E);E=a+64|0;c[E>>2]=(c[E>>2]|0)+1;F=g}else F=z;c[F+20>>2]=e;l=f;return}function wd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=l;l=l+48|0;g=f+40|0;h=f+24|0;i=f;j=f+12|0;if((c[b+4>>2]|0)==(c[b+8>>2]|0)){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23105,26);Yc(a,j,2,e,0);oz(j);l=f;return}j=h+4|0;c[j>>2]=0;k=h+8|0;c[k>>2]=0;m=h+4|0;c[h>>2]=m;$c(h);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22284,6);n=ad(h,g,i)|0;o=c[n>>2]|0;if(!o){p=$y(36)|0;q=p+16|0;c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(p+28|0);q=c[g>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=q;c[n>>2]=p;q=c[c[h>>2]>>2]|0;if(!q)r=p;else{c[h>>2]=q;r=c[n>>2]|0}ic(c[j>>2]|0,r);c[k>>2]=(c[k>>2]|0)+1;s=p}else s=o;fm(g,22569);o=c[g>>2]|0;p=g+4|0;r=c[p>>2]|0;c[g>>2]=0;c[p>>2]=0;c[s+28>>2]=o;o=s+32|0;s=c[o>>2]|0;c[o>>2]=r;if(s|0?(Yy(s),s=c[p>>2]|0,s|0):0)Yy(s);oz(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22299,6);s=ad(h,g,i)|0;p=c[s>>2]|0;if(!p){r=$y(36)|0;o=r+16|0;c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(r+28|0);o=c[g>>2]|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=o;c[s>>2]=r;o=c[c[h>>2]>>2]|0;if(!o)t=r;else{c[h>>2]=o;t=c[s>>2]|0}ic(c[j>>2]|0,t);c[k>>2]=(c[k>>2]|0)+1;u=r}else u=p;Nd(g,b,d);d=c[g>>2]|0;b=g+4|0;p=c[b>>2]|0;c[g>>2]=0;c[b>>2]=0;c[u+28>>2]=d;d=u+32|0;u=c[d>>2]|0;c[d>>2]=p;if(u|0?(Yy(u),u=c[b>>2]|0,u|0):0)Yy(u);oz(i);cd(h,e);nm(a,h);dd(h,c[m>>2]|0);l=f;return}function xd(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,m=0,n=0,o=0;h=l;l=l+48|0;i=h+24|0;j=h+8|0;k=h;m=h+32|0;c[i>>2]=c[d>>2];n=i+4|0;o=c[d+4>>2]|0;c[n>>2]=o;if(o|0)Xy(o);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22291,7);Fd(i,j,g);oz(j);j=c[n>>2]|0;if(j|0)Yy(j);j=a[g+11>>0]|0;if(((j<<24>>24<0?c[g+4>>2]|0:j&255)|0)==0?(Fz(g,0,-1,47807,0)|0)==0:0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;lz(m,22778,6);j=Am(d,m)|0;c[k>>2]=c[j>>2];d=k+4|0;n=c[j+4>>2]|0;c[d>>2]=n;if(n|0)Xy(n);Gd(b,k,e,f,g);g=c[d>>2]|0;if(g|0)Yy(g);oz(m);l=h;return};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;l=h;return}function yd(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;d=a+48|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=Ea(8)|0;fz(e,22060);c[e>>2]=20712;_a(e|0,6912,247);return 0}function zd(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;d=a+60|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=Ea(8)|0;fz(e,22060);c[e>>2]=20712;_a(e|0,6912,247);return 0}function Ad(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,m=0,n=0;f=l;l=l+48|0;g=f+24|0;h=f;i=f+32|0;j=f+12|0;c[g>>2]=c[b>>2];k=g+4|0;m=c[b+4>>2]|0;c[k>>2]=m;if(m|0)Xy(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22579,6);Fd(g,h,e);oz(h);h=c[k>>2]|0;if(h|0)Yy(h);h=a[e+11>>0]|0;if((h<<24>>24<0?c[e+4>>2]|0:h&255)|0){n=0;l=f;return n|0}if(Fz(e,0,-1,47807,0)|0){n=0;l=f;return n|0}e=c[(c[d>>2]|0)+12>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22778,6);h=Am(b,i)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22268,6);b=wm(Am(h,j)|0)|0;h=Bb[e&63](d,b)|0;oz(j);oz(i);n=h;l=f;return n|0}function Bd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;g=l;l=l+64|0;h=g+48|0;i=g+24|0;j=g+12|0;k=g;m=g+40|0;n=i+4|0;c[n>>2]=0;o=i+8|0;c[o>>2]=0;p=i+4|0;c[i>>2]=p;$c(i);q=j+4|0;c[q>>2]=0;r=j+8|0;c[r>>2]=0;s=j+4|0;c[j>>2]=s;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22268,6);t=ad(j,h,k)|0;u=c[t>>2]|0;if(!u){v=$y(36)|0;w=v+16|0;c[w>>2]=c[k>>2];c[w+4>>2]=c[k+4>>2];c[w+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(v+28|0);w=c[h>>2]|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=w;c[t>>2]=v;w=c[c[j>>2]>>2]|0;if(!w)x=v;else{c[j>>2]=w;x=c[t>>2]|0}ic(c[q>>2]|0,x);c[r>>2]=(c[r>>2]|0)+1;y=v}else y=u;ul(h,+((Bb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));u=c[h>>2]|0;v=h+4|0;x=c[v>>2]|0;c[h>>2]=0;c[v>>2]=0;c[y+28>>2]=u;u=y+32|0;y=c[u>>2]|0;c[u>>2]=x;if(y|0?(Yy(y),y=c[v>>2]|0,y|0):0)Yy(y);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22275,8);y=ad(j,h,k)|0;v=c[y>>2]|0;if(!v){x=$y(36)|0;u=x+16|0;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];c[u+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(x+28|0);u=c[h>>2]|0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=u;c[y>>2]=x;u=c[c[j>>2]>>2]|0;if(!u)z=x;else{c[j>>2]=u;z=c[y>>2]|0}ic(c[q>>2]|0,z);c[r>>2]=(c[r>>2]|0)+1;A=x}else A=v;wb[c[(c[d>>2]|0)+16>>2]&15](m,d,c[b>>2]|0);bd(h,b+4|0,c[m>>2]|0,e);e=c[h>>2]|0;b=h+4|0;d=c[b>>2]|0;c[h>>2]=0;c[b>>2]=0;c[A+28>>2]=e;e=A+32|0;A=c[e>>2]|0;c[e>>2]=d;if(A|0?(Yy(A),A=c[b>>2]|0,A|0):0)Yy(A);A=c[m+4>>2]|0;if(A|0)Yy(A);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22284,6);A=ad(i,h,k)|0;m=c[A>>2]|0;if(!m){b=$y(36)|0;d=b+16|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(b+28|0);d=c[h>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=d;c[A>>2]=b;d=c[c[i>>2]>>2]|0;if(!d)B=b;else{c[i>>2]=d;B=c[A>>2]|0}ic(c[n>>2]|0,B);c[o>>2]=(c[o>>2]|0)+1;C=b}else C=m;fm(h,22579);m=c[h>>2]|0;b=h+4|0;B=c[b>>2]|0;c[h>>2]=0;c[b>>2]=0;c[C+28>>2]=m;m=C+32|0;C=c[m>>2]|0;c[m>>2]=B;if(C|0?(Yy(C),C=c[b>>2]|0,C|0):0)Yy(C);oz(k);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22299,6);C=ad(i,h,k)|0;b=c[C>>2]|0;if(!b){B=$y(36)|0;m=B+16|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Ck(B+28|0);m=c[h>>2]|0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=m;c[C>>2]=B;m=c[c[i>>2]>>2]|0;if(!m)D=B;else{c[i>>2]=m;D=c[C>>2]|0}ic(c[n>>2]|0,D);c[o>>2]=(c[o>>2]|0)+1;E=B}else E=b;nm(h,j);b=c[h>>2]|0;B=h+4|0;o=c[B>>2]|0;c[h>>2]=0;c[B>>2]=0;c[E+28>>2]=b;b=E+32|0;E=c[b>>2]|0;c[b>>2]=o;if(E|0?(Yy(E),E=c[B>>2]|0,E|0):0)Yy(E);oz(k);cd(i,f);nm(a,i);dd(j,c[s>>2]|0);dd(i,c[p>>2]|0);l=g;return}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,m=0,n=0,o=0,p=0,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;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;g=a+8|0;h=a+12|0;i=c[h>>2]|0;if(!i){l=d;return}else{j=h;k=i}a:while(1){m=k;while(1){if((c[m+16>>2]|0)>>>0>=b>>>0)break;n=c[m+4>>2]|0;if(!n){o=j;break a}else m=n}k=c[m>>2]|0;if(!k){o=m;break}else j=m}if((o|0)==(h|0)){l=d;return}if((c[o+16>>2]|0)>>>0>b>>>0){l=d;return}o=i;while(1){i=c[o+16>>2]|0;if(i>>>0>b>>>0){j=c[o>>2]|0;if(!j){p=11;break}else q=j}else{if(i>>>0>=b>>>0){p=16;break}r=o+4|0;i=c[r>>2]|0;if(!i){p=15;break}else q=i}o=q}if((p|0)==11){c[e>>2]=o;s=o}else if((p|0)==15){c[e>>2]=o;s=r}else if((p|0)==16){c[e>>2]=o;s=e}e=c[s>>2]|0;if(!e){p=$y(24)|0;c[p+16>>2]=b;c[p+20>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=o;c[s>>2]=p;o=c[c[g>>2]>>2]|0;if(!o)t=p;else{c[g>>2]=o;t=c[s>>2]|0}ic(c[a+12>>2]|0,t);t=a+16|0;c[t>>2]=(c[t>>2]|0)+1;u=p}else u=e;e=c[u+20>>2]|0;Dd(a+68|0,f)|0;u=c[h>>2]|0;if(u|0){p=c[f>>2]|0;t=h;s=u;b:while(1){o=s;while(1){if((c[o+16>>2]|0)>>>0>=p>>>0)break;b=c[o+4>>2]|0;if(!b){v=t;break b}else o=b}s=c[o>>2]|0;if(!s){v=o;break}else t=o}if((v|0)!=(h|0)?p>>>0>=(c[v+16>>2]|0)>>>0:0){p=c[v+4>>2]|0;if(!p){h=v;while(1){t=c[h+8>>2]|0;if((c[t>>2]|0)==(h|0)){w=t;break}else h=t}}else{h=p;while(1){p=c[h>>2]|0;if(!p){w=h;break}else h=p}}if((c[g>>2]|0)==(v|0))c[g>>2]=w;w=a+16|0;c[w>>2]=(c[w>>2]|0)+-1;Ed(u,v);bz(v)}}v=c[f>>2]|0;if((c[a+4>>2]|0)!=(v|0)?(u=a+36|0,w=c[u>>2]|0,w|0):0){g=u;h=w;c:while(1){p=h;while(1){if((c[p+16>>2]|0)>>>0>=v>>>0)break;t=c[p+4>>2]|0;if(!t){x=g;break c}else p=t}h=c[p>>2]|0;if(!h){x=p;break}else g=p}if((x|0)!=(u|0)?(c[x+16>>2]|0)>>>0<=v>>>0:0){x=a+32|0;g=u;h=w;d:while(1){o=h;while(1){if((c[o+16>>2]|0)>>>0>=v>>>0)break;t=c[o+4>>2]|0;if(!t){y=g;break d}else o=t}h=c[o>>2]|0;if(!h){y=o;break}else g=o}if((y|0)!=(u|0)?v>>>0>=(c[y+16>>2]|0)>>>0:0){v=c[y+4>>2]|0;if(!v){u=y;while(1){g=c[u+8>>2]|0;if((c[g>>2]|0)==(u|0)){z=g;break}else u=g}}else{u=v;while(1){v=c[u>>2]|0;if(!v){z=u;break}else u=v}}if((c[x>>2]|0)==(y|0))c[x>>2]=z;z=a+40|0;c[z>>2]=(c[z>>2]|0)+-1;Ed(w,y);bz(y)}y=a+44|0;w=a+48|0;z=c[w>>2]|0;if(z|0){x=c[f>>2]|0;f=w;u=z;e:while(1){v=u;while(1){if((c[v+16>>2]|0)>>>0>=x>>>0)break;g=c[v+4>>2]|0;if(!g){A=f;break e}else v=g}u=c[v>>2]|0;if(!u){A=v;break}else f=v}if((A|0)!=(w|0)?x>>>0>=(c[A+16>>2]|0)>>>0:0){x=c[A+4>>2]|0;if(!x){w=A;while(1){f=c[w+8>>2]|0;if((c[f>>2]|0)==(w|0)){B=f;break}else w=f}}else{w=x;while(1){x=c[w>>2]|0;if(!x){B=w;break}else w=x}}if((c[y>>2]|0)==(A|0))c[y>>2]=B;B=a+52|0;c[B>>2]=(c[B>>2]|0)+-1;Ed(z,A);bz(A)}}}}A=a+20|0;z=a+24|0;B=c[z>>2]|0;if(!B){l=d;return}else{C=z;D=B}f:while(1){y=D;while(1){if((c[y+16>>2]|0)>>>0>=e>>>0)break;w=c[y+4>>2]|0;if(!w){E=C;break f}else y=w}D=c[y>>2]|0;if(!D){E=y;break}else C=y}if((E|0)==(z|0)){l=d;return}if(e>>>0<(c[E+16>>2]|0)>>>0){l=d;return}e=c[E+4>>2]|0;if(!e){z=E;while(1){C=c[z+8>>2]|0;if((c[C>>2]|0)==(z|0)){F=C;break}else z=C}}else{z=e;while(1){e=c[z>>2]|0;if(!e){F=z;break}else z=e}}if((c[A>>2]|0)==(E|0))c[A>>2]=F;F=a+28|0;c[F>>2]=(c[F>>2]|0)+-1;Ed(B,E);bz(E);l=d;return}function Dd(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;d=a+4|0;e=c[d>>2]|0;if(!e){f=0;return f|0}g=c[b>>2]|0;b=d;h=e;a:while(1){i=h;while(1){if((c[i+16>>2]|0)>>>0>=g>>>0)break;j=c[i+4>>2]|0;if(!j){k=b;break a}else i=j}h=c[i>>2]|0;if(!h){k=i;break}else b=i}if((k|0)==(d|0)){f=0;return f|0}if((k|0)==(d|0)?1:g>>>0<(c[k+16>>2]|0)>>>0){f=0;return f|0}g=c[k+4>>2]|0;if(!g){d=k;while(1){b=c[d+8>>2]|0;if((c[b>>2]|0)==(d|0)){l=b;break}else d=b}}else{d=g;while(1){g=c[d>>2]|0;if(!g){l=d;break}else d=g}}if((c[a>>2]|0)==(k|0))c[a>>2]=l;l=a+8|0;c[l>>2]=(c[l>>2]|0)+-1;Ed(e,k);e=c[k+24>>2]|0;if(e|0)Yy(e);bz(k);f=1;return f|0}function Ed(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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;e=c[d>>2]|0;do if(e){f=c[d+4>>2]|0;if(!f){g=d;h=e;i=d;j=7;break}else{k=f;while(1){f=c[k>>2]|0;if(!f){l=k;j=5;break}else k=f}}}else{l=d;j=5}while(0);if((j|0)==5){e=c[l+4>>2]|0;if(!e){m=l+8|0;n=l;o=0;p=0;q=l}else{g=l;h=e;i=l;j=7}}if((j|0)==7){l=g+8|0;c[h+8>>2]=c[l>>2];m=l;n=g;o=h;p=1;q=i}i=c[m>>2]|0;h=c[i>>2]|0;if((h|0)==(n|0)){c[i>>2]=o;if((n|0)==(b|0)){r=o;s=0}else{r=b;s=c[i+4>>2]|0}}else{c[i+4>>2]=o;r=b;s=h}h=n+12|0;b=(a[h>>0]|0)!=0;if((n|0)==(d|0))t=r;else{i=d+8|0;g=c[i>>2]|0;c[m>>2]=g;m=g;if((c[c[i>>2]>>2]|0)==(d|0))c[m>>2]=n;else c[m+4>>2]=n;m=c[d>>2]|0;c[q>>2]=m;c[m+8>>2]=n;m=c[d+4>>2]|0;c[n+4>>2]=m;if(m|0)c[m+8>>2]=n;a[h>>0]=a[d+12>>0]|0;t=(r|0)==(d|0)?n:r}if(!(b&(t|0)!=0))return;if(p){a[o+12>>0]=1;return}else{u=s;v=t}while(1){t=c[u+8>>2]|0;s=u+12|0;o=(a[s>>0]|0)!=0;if((c[t>>2]|0)==(u|0)){if(o){w=u;x=v}else{a[s>>0]=1;a[t+12>>0]=0;p=c[t>>2]|0;b=p+4|0;r=c[b>>2]|0;c[t>>2]=r;if(r|0)c[r+8>>2]=t;r=t+8|0;c[p+8>>2]=c[r>>2];n=c[r>>2]|0;if((c[n>>2]|0)==(t|0))c[n>>2]=p;else c[n+4>>2]=p;c[b>>2]=t;c[r>>2]=p;p=c[u+4>>2]|0;w=c[p>>2]|0;x=(v|0)==(p|0)?u:v}y=c[w>>2]|0;z=(y|0)==0;if(!z?(a[y+12>>0]|0)==0:0){j=68;break}p=c[w+4>>2]|0;if(p|0?(a[p+12>>0]|0)==0:0){j=67;break}a[w+12>>0]=0;p=c[w+8>>2]|0;A=p+12|0;if((p|0)==(x|0)|(a[A>>0]|0)==0){j=64;break}r=c[p+8>>2]|0;B=(c[r>>2]|0)==(p|0)?r+4|0:r;C=x}else{if(o){D=u;E=v}else{a[s>>0]=1;a[t+12>>0]=0;s=t+4|0;o=c[s>>2]|0;r=c[o>>2]|0;c[s>>2]=r;if(r|0)c[r+8>>2]=t;r=t+8|0;c[o+8>>2]=c[r>>2];s=c[r>>2]|0;if((c[s>>2]|0)==(t|0))c[s>>2]=o;else c[s+4>>2]=o;c[o>>2]=t;c[r>>2]=o;o=c[u>>2]|0;D=c[o+4>>2]|0;E=(v|0)==(o|0)?u:v}F=c[D>>2]|0;if(F|0?(a[F+12>>0]|0)==0:0){j=38;break}o=c[D+4>>2]|0;if(o|0?(a[o+12>>0]|0)==0:0){G=o;j=39;break}a[D+12>>0]=0;o=c[D+8>>2]|0;if((o|0)==(E|0)){H=E;j=36;break}if(!(a[o+12>>0]|0)){H=o;j=36;break}r=c[o+8>>2]|0;B=(c[r>>2]|0)==(o|0)?r+4|0:r;C=E}u=c[B>>2]|0;v=C}if((j|0)==36){a[H+12>>0]=1;return}else if((j|0)==38){H=c[D+4>>2]|0;if(!H)j=40;else{G=H;j=39}}else if((j|0)==64){a[A>>0]=1;return}else if((j|0)==67)if(z)j=69;else j=68;if((j|0)==39)if(!(a[G+12>>0]|0)){I=D;J=G;j=46}else j=40;else if((j|0)==68)if(!(a[y+12>>0]|0)){K=w;L=y;j=75}else j=69;if((j|0)==40){a[F+12>>0]=1;a[D+12>>0]=0;y=F+4|0;G=c[y>>2]|0;c[D>>2]=G;if(G|0)c[G+8>>2]=D;G=D+8|0;c[F+8>>2]=c[G>>2];z=c[G>>2]|0;if((c[z>>2]|0)==(D|0))c[z>>2]=F;else c[z+4>>2]=F;c[y>>2]=D;c[G>>2]=F;I=F;J=D;j=46}else if((j|0)==69){D=w+4|0;F=c[D>>2]|0;a[F+12>>0]=1;a[w+12>>0]=0;G=c[F>>2]|0;c[D>>2]=G;if(G|0)c[G+8>>2]=w;G=w+8|0;c[F+8>>2]=c[G>>2];D=c[G>>2]|0;if((c[D>>2]|0)==(w|0))c[D>>2]=F;else c[D+4>>2]=F;c[F>>2]=w;c[G>>2]=F;K=F;L=w;j=75}if((j|0)==46){w=c[I+8>>2]|0;F=w+12|0;a[I+12>>0]=a[F>>0]|0;a[F>>0]=1;a[J+12>>0]=1;J=w+4|0;F=c[J>>2]|0;I=c[F>>2]|0;c[J>>2]=I;if(I|0)c[I+8>>2]=w;I=w+8|0;c[F+8>>2]=c[I>>2];J=c[I>>2]|0;if((c[J>>2]|0)==(w|0))c[J>>2]=F;else c[J+4>>2]=F;c[F>>2]=w;c[I>>2]=F;return}else if((j|0)==75){j=c[K+8>>2]|0;F=j+12|0;a[K+12>>0]=a[F>>0]|0;a[F>>0]=1;a[L+12>>0]=1;L=c[j>>2]|0;F=L+4|0;K=c[F>>2]|0;c[j>>2]=K;if(K|0)c[K+8>>2]=j;K=j+8|0;c[L+8>>2]=c[K>>2];I=c[K>>2]|0;if((c[I>>2]|0)==(j|0))c[I>>2]=L;else c[I+4>>2]=L;c[F>>2]=j;c[K>>2]=L;return}}function Fd(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;f=l;l=l+48|0;g=f+24|0;h=f+12|0;i=f;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22284,6);j=(um(Am(b,g)|0)|0)==3;oz(g);if(!j){tz(e,22785)|0;l=f;return};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22284,6);j=xm(Am(b,g)|0)|0;k=a[j+11>>0]|0;m=k<<24>>24<0;n=k&255;k=m?c[j+4>>2]|0:n;o=d+11|0;p=a[o>>0]|0;q=p<<24>>24<0;r=d+4|0;a:do if((k|0)==((q?c[r>>2]|0:p&255)|0)){s=c[j>>2]|0;t=m?s:j;u=q?c[d>>2]|0:d;v=(k|0)==0;b:do if(m)if(!v){w=(Xn(t,u,k)|0)==0;oz(g);if(!w)break a}else x=10;else if(v)x=10;else{if((s&255)<<24>>24==(a[u>>0]|0)){y=n;z=u;A=j}else{x=11;break a}while(1){y=y+-1|0;A=A+1|0;if(!y){x=10;break b}z=z+1|0;if((a[A>>0]|0)!=(a[z>>0]|0)){x=11;break a}}}while(0);if((x|0)==10)oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22778,6);if(um(Am(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22778,6);u=(um(Am(b,h)|0)|0)==5;oz(h);oz(g);if(!u){tz(e,22840)|0;l=f;return}}else oz(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22306,2);do if(um(Am(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22306,2);if((um(Am(b,h)|0)|0)==1){oz(h);oz(g);break};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22306,2);u=(um(Am(b,i)|0)|0)==3;oz(i);oz(h);oz(g);if(!u){tz(e,22867)|0;l=f;return}}else oz(g);while(0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,22547,7);if(um(Am(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22547,7);u=(um(Am(b,h)|0)|0)==3;oz(h);oz(g);if(!u){tz(e,22900)|0;l=f;return}}else oz(g);u=zm(b)|0;s=c[u>>2]|0;v=u+4|0;if((s|0)==(v|0)){l=f;return}u=s;c:while(1){B=u+16|0;C=B+11|0;s=a[C>>0]|0;D=u+20|0;t=c[D>>2]|0;if(((s<<24>>24<0?t:s&255)|0)==6){if(Fz(B,0,-1,22284,6)|0){E=a[C>>0]|0;F=c[D>>2]|0;x=36}}else{E=s;F=t;x=36}do if((x|0)==36){x=0;if(((E<<24>>24<0?F:E&255)|0)==6){if(!(Fz(B,0,-1,22778,6)|0))break;G=a[C>>0]|0;H=c[D>>2]|0}else{G=E;H=F}if(((G<<24>>24<0?H:G&255)|0)==2){if(!(Fz(B,0,-1,22306,2)|0))break;I=a[C>>0]|0;J=c[D>>2]|0}else{I=G;J=H}if(((I<<24>>24<0?J:I&255)|0)!=7){K=I;L=J;break c}if(Fz(B,0,-1,22547,7)|0){x=44;break c}}while(0);t=c[u+4>>2]|0;if(!t){s=u;while(1){w=c[s+8>>2]|0;if((c[w>>2]|0)==(s|0)){M=w;break}else s=w}}else{s=t;while(1){w=c[s>>2]|0;if(!w){M=s;break}else s=w}}if((M|0)==(v|0)){x=54;break}else u=M}if((x|0)==44){K=a[C>>0]|0;L=c[D>>2]|0}else if((x|0)==54){l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;u=K<<24>>24<0?L:K&255;Gz(h,22928,18,u+18|0);xz(h,(a[C>>0]|0)<0?c[B>>2]|0:B,u)|0;u=yz(h,22947)|0;c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;u=e+11|0;if((a[u>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[u>>0]=0}sz(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(h);l=f;return}else x=11;while(0);if((x|0)==11)oz(g);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;x=a[o>>0]|0;B=x<<24>>24<0?c[r>>2]|0:x&255;Gz(h,22812,16,B+16|0);xz(h,(a[o>>0]|0)<0?c[d>>2]|0:d,B)|0;B=yz(h,22829)|0;c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;B=e+11|0;if((a[B>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[B>>0]=0}sz(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;oz(g);oz(h);l=f;return}function Gd(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,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.0,Y=0,Z=0,_=0;i=l;l=l+160|0;j=i+136|0;k=i+104|0;m=i+96|0;n=i+92|0;o=i+88|0;p=i+84|0;q=i+72|0;r=i+56|0;s=i+16|0;t=i+64|0;u=i;v=i+40|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22268,6);c[k+12>>2]=1;w=k+16|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;lz(w,22971,12);c[k+28>>2]=5;c[j>>2]=k;c[j+4>>2]=2;w=Km(d,j,h)|0;oz(k+16|0);oz(k);if(!w){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;w=h+11|0;x=a[w>>0]|0;y=h+4|0;z=x<<24>>24<0?c[y>>2]|0:x&255;Gz(j,22984,27,z+27|0);xz(j,(a[w>>0]|0)<0?c[h>>2]|0:h,z)|0;if((a[w>>0]|0)<0){a[c[h>>2]>>0]=0;c[y>>2]=0}else{a[h>>0]=0;a[w>>0]=0}sz(h,0);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;oz(j);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;l=i;return};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22971,12);w=Am(d,j)|0;c[r>>2]=c[w>>2];y=r+4|0;z=c[w+4>>2]|0;c[y>>2]=z;if(z|0)Xy(z);oz(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22329,9);c[k+12>>2]=5;z=k+16|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;lz(z,23012,12);c[k+28>>2]=4;c[j>>2]=k;c[j+4>>2]=2;z=Km(r,j,h)|0;oz(k+16|0);oz(k);if(z){c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;z=c[(c[e>>2]|0)+12>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,22268,6);w=wm(Am(d,j)|0)|0;c[s>>2]=Bb[z&63](e,w)|0;oz(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;lz(k,22329,9);w=Am(r,k)|0;c[t>>2]=c[w>>2];e=t+4|0;z=c[w+4>>2]|0;c[e>>2]=z;if(z|0)Xy(z);Hd(j,t,h);t=s+16|0;c[t>>2]=c[j>>2];z=s+20|0;c[z>>2]=c[j+4>>2];w=c[e>>2]|0;if(w|0)Yy(w);oz(k);w=h+11|0;e=a[w>>0]|0;d=h+4|0;a:do if(((e<<24>>24<0?c[d>>2]|0:e&255)|0)==0?(Fz(h,0,-1,47807,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23012,12);x=ym(Am(r,j)|0)|0;oz(j);A=c[x>>2]|0;B=c[x+4>>2]|0;b:do if((A|0)==(B|0)){C=s+8|0;D=s+12|0;E=s+4|0}else{x=v+11|0;F=v+4|0;G=q;H=q+11|0;I=q+4|0;J=s+8|0;K=s+12|0;L=s+4|0;M=u+4|0;N=j+4|0;O=j+8|0;P=k+4|0;Q=j+8|0;R=A;while(1){if((um(R)|0)==3){kz(v,xm(R)|0);c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;S=a[x>>0]|0;T=S<<24>>24<0;U=T?c[v>>2]|0:v;V=U+(T?c[F>>2]|0:S&255)|0;c[n>>2]=U;c[o>>2]=V;c[p>>2]=G;c[m>>2]=c[n>>2];c[k>>2]=c[o>>2];c[j>>2]=c[p>>2];Id(m,k,j);V=a[H>>0]|0;U=V<<24>>24<0;S=U?c[q>>2]|0:q;Jd(u,S,S+((U?c[I>>2]|0:V&255)>>>2<<2)|0);oz(q);oz(v);V=a[w>>0]|0;if(((V<<24>>24<0?c[d>>2]|0:V&255)|0)==0?(Fz(h,0,-1,47807,0)|0)==0:0){V=c[J>>2]|0;if((V|0)==(c[K>>2]|0))Ld(L,u);else{Kd(V,u);c[J>>2]=(c[J>>2]|0)+12}c[f>>2]=1;W=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;W=1}V=c[u>>2]|0;U=V;if(V|0){S=c[M>>2]|0;if((S|0)!=(V|0))c[M>>2]=S+(~((S+-4-U|0)>>>2)<<2);bz(V)}if(W|0)break a}else{if((um(R)|0)!=4)break;c[j>>2]=0;c[N>>2]=0;c[O>>2]=0;V=ym(R)|0;U=c[V>>2]|0;S=c[V+4>>2]|0;if((U|0)!=(S|0)){V=U;do{c[k>>2]=c[V>>2];U=c[V+4>>2]|0;c[P>>2]=U;if(U|0)Xy(U);X=+vm(k);g[m>>2]=X;U=c[N>>2]|0;if(U>>>0<(c[Q>>2]|0)>>>0){g[U>>2]=X;c[N>>2]=U+4}else Md(j,m);U=c[P>>2]|0;if(U|0)Yy(U);V=V+8|0}while((V|0)!=(S|0))}S=c[J>>2]|0;if((S|0)==(c[K>>2]|0))Ld(L,j);else{Kd(S,j);c[J>>2]=(c[J>>2]|0)+12}c[f>>2]=0;S=c[j>>2]|0;V=S;if(S|0){U=c[N>>2]|0;if((U|0)!=(S|0))c[N>>2]=U+(~((U+-4-V|0)>>>2)<<2);bz(S)}}R=R+8|0;if((R|0)==(B|0)){C=J;D=K;E=L;break b}}tz(h,23025)|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;break a}while(0);c[b>>2]=c[s>>2];c[b+4>>2]=c[E>>2];c[b+8>>2]=c[C>>2];c[b+12>>2]=c[D>>2];c[D>>2]=0;c[C>>2]=0;c[s+4>>2]=0;c[b+16>>2]=c[t>>2];c[b+20>>2]=c[z>>2]}else Y=19;while(0);if((Y|0)==19){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}Y=s+4|0;z=c[Y>>2]|0;if(z|0){t=s+8|0;s=c[t>>2]|0;if((s|0)==(z|0))Z=z;else{C=s;while(1){s=C+-12|0;c[t>>2]=s;D=c[s>>2]|0;E=D;if(!D)_=s;else{s=C+-8|0;f=c[s>>2]|0;if((f|0)!=(D|0))c[s>>2]=f+(~((f+-4-E|0)>>>2)<<2);bz(D);_=c[t>>2]|0}if((_|0)==(z|0))break;else C=_}Z=c[Y>>2]|0}bz(Z)}}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Z=h+11|0;Y=a[Z>>0]|0;_=h+4|0;C=Y<<24>>24<0?c[_>>2]|0:Y&255;Gz(j,22984,27,C+27|0);xz(j,(a[Z>>0]|0)<0?c[h>>2]|0:h,C)|0;if((a[Z>>0]|0)<0){a[c[h>>2]>>0]=0;c[_>>2]=0}else{a[h>>0]=0;a[Z>>0]=0}sz(h,0);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;oz(j);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=c[y>>2]|0;if(b|0)Yy(b);l=i;return}function Hd(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,m=0,n=0,o=0;f=l;l=l+48|0;g=f+40|0;h=f+24|0;i=f+12|0;j=f;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,29813,1);k=Am(d,h)|0;c[g>>2]=c[k>>2];m=g+4|0;n=c[k+4>>2]|0;c[m>>2]=n;if(n|0)Xy(n);oz(h);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,22348,1);n=Am(d,i)|0;c[h>>2]=c[n>>2];k=h+4|0;o=c[n+4>>2]|0;c[k>>2]=o;if(o|0)Xy(o);oz(i);if((um(g)|0)==1?(um(h)|0)==1:0){o=wm(g)|0;nk(b,o,wm(h)|0)}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;tl(d,j);d=Bz(j,0,23074)|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;d=e+11|0;if((a[d>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[d>>0]=0}sz(e,0);c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;oz(i);oz(j);c[b>>2]=0;c[b+4>>2]=0}b=c[k>>2]|0;if(b|0)Yy(b);b=c[m>>2]|0;if(!b){l=f;return}Yy(b);l=f;return}function Id(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;f=c[b>>2]|0;b=c[d>>2]|0;if((f|0)==(b|0))return;d=0;g=0;h=f;a:while(1){f=h;b:while(1){i=a[f>>0]|0;j=i<<24>>24;c:do if(!(nn(j)|0)){d:do if((i+-65&255)<26)k=j+191|0;else{if((i+-97&255)<26){k=j+185|0;break}if((i+-48&255)<10){k=j+4|0;break}switch(i<<24>>24){case 43:{k=j+19|0;break d;break}case 47:{k=j+16|0;break d;break}default:break c}}while(0);if((k&255)<<24>>24!=-1)break b}while(0);j=f+1|0;if((j|0)==(b|0)){l=21;break a}else f=j}j=k<<24>>24;i=d+6|0;m=((i|0)>8?8:i)-d|0;if((m|0)==6){n=(j<<2-d|g&255)&255;if((i|0)==8){zz(c[e>>2]|0,n);o=0;p=0}else{o=i;p=n}}else{n=6-m|0;zz(c[e>>2]|0,(j>>n|g&255)&255);o=n;p=j<<8-n&255}h=f+1|0;if((h|0)==(b|0)){l=21;break}else{d=o;g=p}}if((l|0)==21)return}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;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=b;g=d-f|0;h=g>>2;if(!h)return;if(h>>>0>1073741823)Vx(a);i=$y(g)|0;c[e>>2]=i;c[a>>2]=i;c[a+8>>2]=i+(h<<2);if((b|0)==(d|0))return;h=((d+-4-f|0)>>>2)+1|0;f=b;b=i;while(1){c[b>>2]=c[f>>2];f=f+4|0;if((f|0)==(d|0))break;else b=b+4|0}c[e>>2]=i+(h<<2);return}function Kd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>2;if(!g)return;if(g>>>0>1073741823)Vx(a);h=$y(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<2);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;jB(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>2<<2);return}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,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941)Vx(a);h=a+8|0;i=((c[h>>2]|0)-f|0)/12|0;j=i<<1;k=i>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(e-f|0)/12|0;do if(k)if(k>>>0>357913941){f=Ea(4)|0;ZA(f);_a(f|0,6864,245)}else{l=$y(k*12|0)|0;break}else l=0;while(0);f=l+(j*12|0)|0;j=f;e=l+(k*12|0)|0;Kd(f,b);b=f+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=f;do{f=j+-12|0;i=g;g=g+-12|0;c[f>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[f>>2]=c[g>>2];f=i+-8|0;c[p>>2]=c[f>>2];p=i+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[f>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[h>>2]=e;e=n;if((o|0)!=(e|0)){h=o;do{o=h;h=h+-12|0;b=c[h>>2]|0;d=b;if(b|0){m=o+-8|0;o=c[m>>2]|0;if((o|0)!=(b|0))c[m>>2]=o+(~((o+-4-d|0)>>>2)<<2);bz(b)}}while((h|0)!=(e|0))}if(!n)return;bz(n);return}function Md(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;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823)Vx(a);h=a+8|0;i=(c[h>>2]|0)-f|0;j=i>>1;k=i>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=e-f>>2;do if(k)if(k>>>0>1073741823){g=Ea(4)|0;ZA(g);_a(g|0,6864,245)}else{l=$y(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=e-f|0;e=g+(0-(b>>2)<<2)|0;if((b|0)>0)jB(e|0,f|0,b|0)|0;c[a>>2]=e;c[d>>2]=g+4;c[h>>2]=l+(k<<2);if(!f)return;bz(f);return}function Nd(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,m=0,n=0,o=0,p=0,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+64|0;f=e+48|0;g=e+36|0;h=e+24|0;i=e+12|0;j=e;k=g+4|0;c[k>>2]=0;m=g+8|0;c[m>>2]=0;n=g+4|0;c[g>>2]=n;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,22268,6);o=ad(g,f,h)|0;p=c[o>>2]|0;if(!p){q=$y(36)|0;r=q+16|0;c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Ck(q+28|0);r=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=r;c[o>>2]=q;r=c[c[g>>2]>>2]|0;if(!r)s=q;else{c[g>>2]=r;s=c[o>>2]|0}ic(c[k>>2]|0,s);c[m>>2]=(c[m>>2]|0)+1;t=q}else t=p;ul(f,+((Bb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));d=c[f>>2]|0;p=f+4|0;q=c[p>>2]|0;c[f>>2]=0;c[p>>2]=0;c[t+28>>2]=d;d=t+32|0;t=c[d>>2]|0;c[d>>2]=q;if(t|0?(Yy(t),t=c[p>>2]|0,t|0):0)Yy(t);oz(h);c[h>>2]=0;t=h+4|0;c[t>>2]=0;c[h+8>>2]=0;p=c[b+4>>2]|0;q=c[b+8>>2]|0;if((p|0)!=(q|0)){d=h+8|0;s=f+4|0;o=p;do{Od(f,o);p=c[t>>2]|0;if(p>>>0>=(c[d>>2]|0)>>>0){fd(h,f);r=c[s>>2]|0;if(r|0)Yy(r)}else{c[p>>2]=c[f>>2];c[p+4>>2]=c[s>>2];c[f>>2]=0;c[s>>2]=0;c[t>>2]=p+8}o=o+100|0}while((o|0)!=(q|0))};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;lz(i,23132,10);q=ad(g,f,i)|0;o=c[q>>2]|0;if(!o){s=$y(36)|0;d=s+16|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Ck(s+28|0);d=c[f>>2]|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=d;c[q>>2]=s;d=c[c[g>>2]>>2]|0;if(!d)u=s;else{c[g>>2]=d;u=c[q>>2]|0}ic(c[k>>2]|0,u);c[m>>2]=(c[m>>2]|0)+1;v=s}else v=o;gm(f,h);o=c[f>>2]|0;s=f+4|0;u=c[s>>2]|0;c[f>>2]=0;c[s>>2]=0;c[v+28>>2]=o;o=v+32|0;v=c[o>>2]|0;c[o>>2]=u;if(v|0?(Yy(v),v=c[s>>2]|0,v|0):0)Yy(v);oz(i);v=i+4|0;c[v>>2]=0;s=i+8|0;c[s>>2]=0;u=i+4|0;c[i>>2]=u;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23143,8);o=ad(i,f,j)|0;q=c[o>>2]|0;if(!q){d=$y(36)|0;p=d+16|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];c[p+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(d+28|0);p=c[f>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=p;c[o>>2]=d;p=c[c[i>>2]>>2]|0;if(!p)w=d;else{c[i>>2]=p;w=c[o>>2]|0}ic(c[v>>2]|0,w);c[s>>2]=(c[s>>2]|0)+1;x=d}else x=q;Gl(f,c[b+16>>2]|0);q=c[f>>2]|0;d=f+4|0;w=c[d>>2]|0;c[f>>2]=0;c[d>>2]=0;c[x+28>>2]=q;q=x+32|0;x=c[q>>2]|0;c[q>>2]=w;if(x|0?(Yy(x),x=c[d>>2]|0,x|0):0)Yy(x);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23152,9);x=ad(i,f,j)|0;d=c[x>>2]|0;if(!d){w=$y(36)|0;q=w+16|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(w+28|0);q=c[f>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=q;c[x>>2]=w;q=c[c[i>>2]>>2]|0;if(!q)y=w;else{c[i>>2]=q;y=c[x>>2]|0}ic(c[v>>2]|0,y);c[s>>2]=(c[s>>2]|0)+1;z=w}else z=d;Gl(f,c[b+20>>2]|0);b=c[f>>2]|0;d=f+4|0;w=c[d>>2]|0;c[f>>2]=0;c[d>>2]=0;c[z+28>>2]=b;b=z+32|0;z=c[b>>2]|0;c[b>>2]=w;if(z|0?(Yy(z),z=c[d>>2]|0,z|0):0)Yy(z);oz(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;lz(j,23162,7);z=ad(g,f,j)|0;d=c[z>>2]|0;if(!d){w=$y(36)|0;b=w+16|0;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Ck(w+28|0);b=c[f>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=b;c[z>>2]=w;b=c[c[g>>2]>>2]|0;if(!b)A=w;else{c[g>>2]=b;A=c[z>>2]|0}ic(c[k>>2]|0,A);c[m>>2]=(c[m>>2]|0)+1;B=w}else B=d;nm(f,i);d=c[f>>2]|0;w=f+4|0;m=c[w>>2]|0;c[f>>2]=0;c[w>>2]=0;c[B+28>>2]=d;d=B+32|0;B=c[d>>2]|0;c[d>>2]=m;if(B|0?(Yy(B),B=c[w>>2]|0,B|0):0)Yy(B);oz(j);nm(a,g);dd(i,c[u>>2]|0);u=c[h>>2]|0;if(!u){C=c[n>>2]|0;dd(g,C);l=e;return}i=c[t>>2]|0;if((i|0)==(u|0))D=u;else{a=i;while(1){i=a+-8|0;c[t>>2]=i;j=c[a+-4>>2]|0;if(!j)E=i;else{Yy(j);E=c[t>>2]|0}if((E|0)==(u|0))break;else a=E}D=c[h>>2]|0}bz(D);C=c[n>>2]|0;dd(g,C);l=e;return}function Od(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,m=0,n=0;d=l;l=l+80|0;e=d+72|0;f=d+68|0;g=d+56|0;h=d+16|0;i=d+8|0;j=d;Pd(i,b);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;lz(h,23170,5);c[h+12>>2]=c[i>>2];k=i+4|0;c[h+16>>2]=c[k>>2];c[i>>2]=0;c[k>>2]=0;Qd(j,b);b=h+20|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;lz(b,23176,10);c[h+32>>2]=c[j>>2];b=j+4|0;c[h+36>>2]=c[b>>2];c[j>>2]=0;c[b>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;j=g+4|0;c[g>>2]=j;i=j;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,h,h)|0;m=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];jd(g,e,m,m)|0;m=c[h+36>>2]|0;if(m|0)Yy(m);oz(h+20|0);m=c[h+16>>2]|0;if(m|0)Yy(m);oz(h);h=c[b>>2]|0;if(h|0)Yy(h);h=c[k>>2]|0;if(!h){nm(a,g);n=c[j>>2]|0;dd(g,n);l=d;return}Yy(h);nm(a,g);n=c[j>>2]|0;dd(g,n);l=d;return} function cw(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,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;b=l;l=l+1008|0;j=b+8|0;k=b;m=b+896|0;n=b+888|0;o=b+488|0;p=b+480|0;q=b+892|0;r=b+476|0;s=b+472|0;t=b+460|0;u=b+448|0;v=b+436|0;w=b+432|0;x=b+32|0;y=b+24|0;z=b+16|0;A=b+20|0;c[n>>2]=m;h[j>>3]=i;B=Vn(m,100,39420,j)|0;if(B>>>0>99){m=Jr()|0;h[k>>3]=i;C=Ys(n,m,39420,k)|0;k=c[n>>2]|0;if(!k)D=c[n>>2]|0;else D=k;k=Vo(C<<2)|0;m=k;if(!k){E=0;F=C;G=m;H=D}else{E=k;F=C;G=m;H=D}}else{E=o;F=B;G=0;H=0}c[p>>2]=iq(f)|0;B=Hr(p,43836)|0;o=c[n>>2]|0;zb[c[(c[B>>2]|0)+48>>2]&15](B,o,o+F|0,E)|0;if(!F)I=0;else I=(a[c[n>>2]>>0]|0)==45;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[t+(n<<2)>>2]=0;n=n+1|0}c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[u+(n<<2)>>2]=0;n=n+1|0}c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[v+(n<<2)>>2]=0;n=n+1|0}ew(e,I,p,q,r,s,t,u,v,w);e=c[w>>2]|0;if((F|0)>(e|0)){n=a[v+8+3>>0]|0;o=a[u+8+3>>0]|0;J=(n<<24>>24<0?c[v+4>>2]|0:n&255)+(F-e<<1|1)+(o<<24>>24<0?c[u+4>>2]|0:o&255)|0}else{o=a[v+8+3>>0]|0;n=a[u+8+3>>0]|0;J=(o<<24>>24<0?c[v+4>>2]|0:o&255)+2+(n<<24>>24<0?c[u+4>>2]|0:n&255)|0}n=J+e|0;if(n>>>0>100){J=Vo(n<<2)|0;n=J;if(!J){K=0;L=n;M=c[w>>2]|0}else{K=J;L=n;M=e}}else{K=x;L=0;M=e}fw(K,y,z,c[f+4>>2]|0,E,E+(F<<2)|0,B,I,q,c[r>>2]|0,c[s>>2]|0,t,u,v,M);c[A>>2]=c[d>>2];d=c[y>>2]|0;y=c[z>>2]|0;c[j>>2]=c[A>>2];A=kt(j,K,d,y,f,g)|0;if(L|0)Wo(L);Kz(v);Kz(u);oz(t);Wy(c[p>>2]|0)|0;if(G|0)Wo(G);if(H|0)Wo(H);l=b;return A|0}function dw(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,m=0,n=0,o=0,p=0,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;b=l;l=l+480|0;i=b+468|0;j=b+464|0;k=b+472|0;m=b+460|0;n=b+456|0;o=b+444|0;p=b+432|0;q=b+420|0;r=b+416|0;s=b+16|0;t=b+8|0;u=b+4|0;v=b;c[j>>2]=iq(f)|0;w=Hr(j,43836)|0;x=h+8+3|0;y=a[x>>0]|0;z=y<<24>>24<0;A=h+4|0;if(!((z?c[A>>2]|0:y&255)|0))B=0;else{y=c[(z?c[h>>2]|0:h)>>2]|0;B=(y|0)==(Bb[c[(c[w>>2]|0)+44>>2]&63](w,45)|0)};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[q+(y<<2)>>2]=0;y=y+1|0}ew(e,B,j,k,m,n,o,p,q,r);e=a[x>>0]|0;y=c[A>>2]|0;z=e<<24>>24<0?y:e&255;C=c[r>>2]|0;if((z|0)>(C|0)){D=a[q+8+3>>0]|0;E=a[p+8+3>>0]|0;F=(D<<24>>24<0?c[q+4>>2]|0:D&255)+(z-C<<1|1)+(E<<24>>24<0?c[p+4>>2]|0:E&255)|0}else{E=a[q+8+3>>0]|0;z=a[p+8+3>>0]|0;F=(E<<24>>24<0?c[q+4>>2]|0:E&255)+2+(z<<24>>24<0?c[p+4>>2]|0:z&255)|0}z=F+C|0;if(z>>>0>100){F=Vo(z<<2)|0;z=F;if(!F){G=0;H=z;I=c[A>>2]|0;J=c[r>>2]|0;K=a[x>>0]|0}else{G=F;H=z;I=y;J=C;K=e}}else{G=s;H=0;I=y;J=C;K=e}e=K<<24>>24<0;C=e?c[h>>2]|0:h;fw(G,t,u,c[f+4>>2]|0,C,C+((e?I:K&255)<<2)|0,w,B,k,c[m>>2]|0,c[n>>2]|0,o,p,q,J);c[v>>2]=c[d>>2];d=c[t>>2]|0;t=c[u>>2]|0;c[i>>2]=c[v>>2];v=kt(i,G,d,t,f,g)|0;if(H|0)Wo(H);Kz(q);Kz(p);oz(o);Wy(c[j>>2]|0)|0;l=b;return v|0}function ew(b,d,e,f,g,h,i,j,k,m){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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0;n=l;l=l+16|0;o=n;if(b){b=Hr(e,45540)|0;if(d){rb[c[(c[b>>2]|0)+44>>2]&127](o,b);p=c[o>>2]|0;a[f>>0]=p;a[f+1>>0]=p>>8;a[f+2>>0]=p>>16;a[f+3>>0]=p>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);p=k+8+3|0;if((a[p>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[p>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];p=0;while(1){if((p|0)==3)break;c[o+(p<<2)>>2]=0;p=p+1|0}Kz(o)}else{rb[c[(c[b>>2]|0)+40>>2]&127](o,b);p=c[o>>2]|0;a[f>>0]=p;a[f+1>>0]=p>>8;a[f+2>>0]=p>>16;a[f+3>>0]=p>>24;rb[c[(c[b>>2]|0)+28>>2]&127](o,b);p=k+8+3|0;if((a[p>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[p>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];p=0;while(1){if((p|0)==3)break;c[o+(p<<2)>>2]=0;p=p+1|0}Kz(o)}c[g>>2]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);p=i+11|0;if((a[p>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;q=i}else{a[i>>0]=0;a[p>>0]=0;q=i}sz(i,0);c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);q=j+8+3|0;if((a[q>>0]|0)<0){c[c[j>>2]>>2]=0;c[j+4>>2]=0}else{c[j>>2]=0;a[q>>0]=0}Oz(j,0);c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];q=0;while(1){if((q|0)==3)break;c[o+(q<<2)>>2]=0;q=q+1|0}Kz(o);r=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Hr(e,45532)|0;if(d){rb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;rb[c[(c[b>>2]|0)+32>>2]&127](o,b);d=k+8+3|0;if((a[d>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[d>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];d=0;while(1){if((d|0)==3)break;c[o+(d<<2)>>2]=0;d=d+1|0}Kz(o)}else{rb[c[(c[b>>2]|0)+40>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;rb[c[(c[b>>2]|0)+28>>2]&127](o,b);d=k+8+3|0;if((a[d>>0]|0)<0){c[c[k>>2]>>2]=0;c[k+4>>2]=0}else{c[k>>2]=0;a[d>>0]=0}Oz(k,0);c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];k=0;while(1){if((k|0)==3)break;c[o+(k<<2)>>2]=0;k=k+1|0}Kz(o)}c[g>>2]=tb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=tb[c[(c[b>>2]|0)+16>>2]&127](b)|0;rb[c[(c[b>>2]|0)+20>>2]&127](o,b);h=i+11|0;if((a[h>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0;s=i}else{a[i>>0]=0;a[h>>0]=0;s=i}sz(i,0);c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];s=0;while(1){if((s|0)==3)break;c[o+(s<<2)>>2]=0;s=s+1|0}oz(o);rb[c[(c[b>>2]|0)+24>>2]&127](o,b);s=j+8+3|0;if((a[s>>0]|0)<0){c[c[j>>2]>>2]=0;c[j+4>>2]=0}else{c[j>>2]=0;a[s>>0]=0}Oz(j,0);c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];j=0;while(1){if((j|0)==3)break;c[o+(j<<2)>>2]=0;j=j+1|0}Kz(o);r=tb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=r;l=n;return}function fw(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;c[e>>2]=b;r=p+8+3|0;s=p+4|0;t=o+8+3|0;u=o+4|0;v=(f&512|0)==0;w=(q|0)>0;x=n+11|0;y=n+4|0;z=0;A=g;while(1){if((z|0)==4)break;a:do switch(a[k+z>>0]|0){case 0:{c[d>>2]=c[e>>2];B=A;break}case 1:{c[d>>2]=c[e>>2];g=Bb[c[(c[i>>2]|0)+44>>2]&63](i,32)|0;C=c[e>>2]|0;c[e>>2]=C+4;c[C>>2]=g;B=A;break}case 3:{g=a[r>>0]|0;C=g<<24>>24<0;if(!((C?c[s>>2]|0:g&255)|0))B=A;else{g=c[(C?c[p>>2]|0:p)>>2]|0;C=c[e>>2]|0;c[e>>2]=C+4;c[C>>2]=g;B=A}break}case 2:{g=a[t>>0]|0;C=g<<24>>24<0;D=C?c[u>>2]|0:g&255;if(v|(D|0)==0)B=A;else{g=C?c[o>>2]|0:o;C=g+(D<<2)|0;E=c[e>>2]|0;F=E;G=g;while(1){if((G|0)==(C|0))break;c[F>>2]=c[G>>2];F=F+4|0;G=G+4|0}c[e>>2]=E+(D<<2);B=A}break}case 4:{G=c[e>>2]|0;F=j?A+4|0:A;C=F;while(1){if(C>>>0>=h>>>0)break;if(!(kb[c[(c[i>>2]|0)+12>>2]&31](i,2048,c[C>>2]|0)|0))break;C=C+4|0}if(w){D=q;E=C;while(1){H=(D|0)>0;if(!(E>>>0>F>>>0&H))break;g=E+-4|0;I=c[g>>2]|0;J=c[e>>2]|0;c[e>>2]=J+4;c[J>>2]=I;D=D+-1|0;E=g}if(H)K=Bb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;else K=0;g=D;I=c[e>>2]|0;while(1){L=I+4|0;if((g|0)<=0)break;c[I>>2]=K;g=g+-1|0;I=L}c[e>>2]=L;c[I>>2]=l;M=E}else M=C;if((M|0)==(F|0)){g=Bb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;D=c[e>>2]|0;J=D+4|0;c[e>>2]=J;c[D>>2]=g;N=J}else{J=a[x>>0]|0;g=J<<24>>24<0;D=g?c[y>>2]|0:J&255;if(!D){O=-1;P=0;Q=0;R=M}else{O=a[(g?c[n>>2]|0:n)>>0]|0;P=0;Q=0;R=M}while(1){if((R|0)==(F|0))break;J=c[e>>2]|0;if((Q|0)==(O|0)){S=J+4|0;c[e>>2]=S;c[J>>2]=m;T=P+1|0;if(T>>>0<D>>>0){U=a[(g?c[n>>2]|0:n)+T>>0]|0;V=U<<24>>24==127?-1:U<<24>>24;W=T;X=0;Y=S}else{V=Q;W=T;X=0;Y=S}}else{V=O;W=P;X=Q;Y=J}J=R+-4|0;S=c[J>>2]|0;c[e>>2]=Y+4;c[Y>>2]=S;O=V;P=W;Q=X+1|0;R=J}N=c[e>>2]|0}if((G|0)==(N|0))B=F;else{g=N;D=G;while(1){C=g+-4|0;if(D>>>0>=C>>>0){B=F;break a}E=c[D>>2]|0;c[D>>2]=c[C>>2];c[C>>2]=E;g=C;D=D+4|0}}break}default:B=A}while(0);z=z+1|0;A=B}B=a[r>>0]|0;r=B<<24>>24<0;A=r?c[s>>2]|0:B&255;if(A>>>0>1){B=r?c[p>>2]|0:p;p=B+4|0;r=B+(A<<2)|0;A=c[e>>2]|0;B=r-p|0;s=A;z=p;while(1){if((z|0)==(r|0))break;c[s>>2]=c[z>>2];s=s+4|0;z=z+4|0}c[e>>2]=A+(B>>>2<<2)}switch((f&176)<<24>>24){case 32:{c[d>>2]=c[e>>2];break}case 16:break;default:c[d>>2]=b}return}function gw(a){a=a|0;return}function hw(a){a=a|0;bz(a);return}function iw(b,d,e){b=b|0;d=d|0;e=e|0;e=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function jw(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,m=0,n=0;d=l;l=l+16|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;j=0;while(1){if((j|0)==3)break;c[i+(j<<2)>>2]=0;j=j+1|0}j=a[h+11>>0]|0;k=j<<24>>24<0;m=k?c[h>>2]|0:h;n=m+(k?c[h+4>>2]|0:j&255)|0;j=m;while(1){if(j>>>0>=n>>>0)break;zz(i,a[j>>0]|0);j=j+1|0}j=Eo((e|0)==-1?-1:e<<1,f,g,(a[i+11>>0]|0)<0?c[i>>2]|0:i)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[b+(g<<2)>>2]=0;g=g+1|0}g=j+(kn(j)|0)|0;f=j;while(1){if(f>>>0>=g>>>0)break;zz(b,a[f>>0]|0);f=f+1|0}oz(i);l=d;return}function kw(a,b){a=a|0;b=b|0;return}function lw(a){a=a|0;return}function mw(a){a=a|0;bz(a);return}function nw(b,d,e){b=b|0;d=d|0;e=e|0;e=Co((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function ow(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=l;l=l+176|0;i=d+168|0;j=d+40|0;k=d+36|0;m=d+32|0;n=d;o=d+24|0;p=d+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;q=0;while(1){if((q|0)==3)break;c[n+(q<<2)>>2]=0;q=q+1|0}c[o+4>>2]=0;c[o>>2]=19972;q=a[h+8+3>>0]|0;r=q<<24>>24<0;s=r?c[h>>2]|0:h;t=s+((r?c[h+4>>2]|0:q&255)<<2)|0;q=j+32|0;h=s;s=0;while(1){if(!((s|0)!=2&h>>>0<t>>>0))break;c[m>>2]=h;r=yb[c[(c[o>>2]|0)+12>>2]&15](o,i,h,t,m,j,q,k)|0;u=j;while(1){if(u>>>0>=(c[k>>2]|0)>>>0)break;zz(n,a[u>>0]|0);u=u+1|0}h=c[m>>2]|0;s=r}s=Eo((e|0)==-1?-1:e<<1,f,g,(a[n+11>>0]|0)<0?c[n>>2]|0:n)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[b+(g<<2)>>2]=0;g=g+1|0}c[p+4>>2]=0;c[p>>2]=20020;g=s+(kn(s)|0)|0;f=g;e=j+128|0;h=s;s=0;while(1){if(!((s|0)!=2&h>>>0<g>>>0))break;c[m>>2]=h;q=yb[c[(c[p>>2]|0)+16>>2]&15](p,i,h,(f-h|0)>32?h+32|0:g,m,j,e,k)|0;t=j;while(1){if(t>>>0>=(c[k>>2]|0)>>>0)break;Rz(b,c[t>>2]|0);t=t+4|0}h=c[m>>2]|0;s=q}oz(n);l=d;return}function pw(a,b){a=a|0;b=b|0;return}function qw(a){a=a|0;return}function rw(a){a=a|0;bz(a);return}function sw(a,b,d,e,f,g,h,i){a=a|0;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;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=Bw(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function tw(a,b,d,e,f,g,h,i){a=a|0;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;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=Aw(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function uw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function vw(a){a=a|0;return 0}function ww(a){a=a|0;return 0}function xw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return zw(c,d,e,1114111,0)|0}function yw(a){a=a|0;return 4}function zw(b,c,e,f,g){b=b|0;c=c|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;h=c;if((((g&4|0)!=0?(h-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){i=0;j=(a[b+2>>0]|0)==-65?b+3|0:b}else{i=0;j=b}a:while(1){if(!(i>>>0<e>>>0&j>>>0<c>>>0)){k=40;break}g=a[j>>0]|0;l=g&255;do if(g<<24>>24<=-1){if((g&255)<194){k=40;break a}if((g&255)<224){if((h-j|0)<2){k=40;break a}m=d[j+1>>0]|0;if((m&192|0)!=128){k=40;break a}if((m&63|l<<6&1984)>>>0>f>>>0){k=40;break a}n=j+2|0;break}if((g&255)<240){o=j;if((h-o|0)<3){k=40;break a}m=a[j+1>>0]|0;p=a[j+2>>0]|0;switch(g<<24>>24){case -32:{if((m&-32)<<24>>24!=-96){k=20;break a}break}case -19:{if((m&-32)<<24>>24!=-128){k=22;break a}break}default:if((m&-64)<<24>>24!=-128){k=24;break a}}q=p&255;if((q&192|0)!=128){k=40;break a}if(((m&255)<<6&4032|l<<12&61440|q&63)>>>0>f>>>0){k=40;break a}else{n=j+3|0;break}}if((g&255)>=245){k=40;break a}r=j;if((h-r|0)<4){k=40;break a}q=a[j+1>>0]|0;m=a[j+2>>0]|0;p=a[j+3>>0]|0;switch(g<<24>>24){case -16:{if((q+112&255)>=48){k=31;break a}break}case -12:{if((q&-16)<<24>>24!=-128){k=33;break a}break}default:if((q&-64)<<24>>24!=-128){k=35;break a}}s=m&255;if((s&192|0)!=128){k=40;break a}m=p&255;if((m&192|0)!=128){k=40;break a}if(((q&255)<<12&258048|l<<18&1835008|s<<6&4032|m&63)>>>0>f>>>0){k=40;break a}else n=j+4|0}else{if(l>>>0>f>>>0){k=40;break a}n=j+1|0}while(0);i=i+1|0;j=n}if((k|0)==20)t=o-b|0;else if((k|0)==22)t=o-b|0;else if((k|0)==24)t=o-b|0;else if((k|0)==31)t=r-b|0;else if((k|0)==33)t=r-b|0;else if((k|0)==35)t=r-b|0;else if((k|0)==40)t=j-b|0;return t|0}function Aw(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;c[f>>2]=b;c[i>>2]=g;if(k&4){k=c[f>>2]|0;g=e;if((((g-k|0)>2?(a[k>>0]|0)==-17:0)?(a[k+1>>0]|0)==-69:0)?(a[k+2>>0]|0)==-65:0){c[f>>2]=k+3;l=g}else l=g}else l=e;a:while(1){g=c[f>>2]|0;m=g>>>0<e>>>0;if(!m){n=40;break}k=c[i>>2]|0;if(k>>>0>=h>>>0){n=40;break}b=a[g>>0]|0;o=b&255;do if(b<<24>>24>-1){if(o>>>0>j>>>0){p=2;break a}c[k>>2]=o;c[f>>2]=g+1}else{if((b&255)<194){p=2;break a}if((b&255)<224){if((l-g|0)<2){p=1;break a}q=d[g+1>>0]|0;if((q&192|0)!=128){p=2;break a}r=q&63|o<<6&1984;if(r>>>0>j>>>0){p=2;break a}c[k>>2]=r;c[f>>2]=g+2;break}if((b&255)<240){if((l-g|0)<3){p=1;break a}r=a[g+1>>0]|0;q=a[g+2>>0]|0;switch(b<<24>>24){case -32:{if((r&-32)<<24>>24!=-96){p=2;break a}break}case -19:{if((r&-32)<<24>>24!=-128){p=2;break a}break}default:if((r&-64)<<24>>24!=-128){p=2;break a}}s=q&255;if((s&192|0)!=128){p=2;break a}q=(r&255)<<6&4032|o<<12&61440|s&63;if(q>>>0>j>>>0){p=2;break a}c[k>>2]=q;c[f>>2]=g+3;break}if((b&255)>=245){p=2;break a}if((l-g|0)<4){p=1;break a}q=a[g+1>>0]|0;s=a[g+2>>0]|0;r=a[g+3>>0]|0;switch(b<<24>>24){case -16:{if((q+112&255)>=48){p=2;break a}break}case -12:{if((q&-16)<<24>>24!=-128){p=2;break a}break}default:if((q&-64)<<24>>24!=-128){p=2;break a}}t=s&255;if((t&192|0)!=128){p=2;break a}s=r&255;if((s&192|0)!=128){p=2;break a}r=(q&255)<<12&258048|o<<18&1835008|t<<6&4032|s&63;if(r>>>0>j>>>0){p=2;break a}c[k>>2]=r;c[f>>2]=g+4}while(0);c[i>>2]=(c[i>>2]|0)+4}if((n|0)==40)p=m&1;return p|0}function Bw(b,d,e,f,g,h,i,j){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,l=0,m=0,n=0;c[e>>2]=b;c[h>>2]=f;b=g;if(j&2)if((b-f|0)<3)k=1;else{c[h>>2]=f+1;a[f>>0]=-17;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=-69;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=-65;l=4}else l=4;a:do if((l|0)==4){f=c[e>>2]|0;while(1){if(f>>>0>=d>>>0){k=0;break a}j=c[f>>2]|0;if(j>>>0>i>>>0|(j&-2048|0)==55296){k=2;break a}do if(j>>>0>=128){if(j>>>0<2048){g=c[h>>2]|0;if((b-g|0)<2){k=1;break a}c[h>>2]=g+1;a[g>>0]=j>>>6|192;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=j&63|128;break}g=c[h>>2]|0;m=b-g|0;if(j>>>0<65536){if((m|0)<3){k=1;break a}c[h>>2]=g+1;a[g>>0]=j>>>12|224;n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=j>>>6&63|128;n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=j&63|128;break}else{if((m|0)<4){k=1;break a}c[h>>2]=g+1;a[g>>0]=j>>>18|240;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=j>>>12&63|128;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=j>>>6&63|128;g=c[h>>2]|0;c[h>>2]=g+1;a[g>>0]=j&63|128;break}}else{g=c[h>>2]|0;if((b-g|0)<1){k=1;break a}c[h>>2]=g+1;a[g>>0]=j}while(0);j=(c[e>>2]|0)+4|0;c[e>>2]=j;f=j}}while(0);return k|0}function Cw(a){a=a|0;bz(a);return}function Dw(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function Ew(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function Fw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Gw(a){a=a|0;return 1}function Hw(a){a=a|0;return 1}function Iw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=d-c|0;return (b>>>0<e>>>0?b:e)|0}function Jw(a){a=a|0;return 1}function Kw(b,d,e,f,g,h,i,j){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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=l;l=l+16|0;m=k;n=k+8|0;o=e;while(1){if((o|0)==(f|0)){p=f;break}if(!(c[o>>2]|0)){p=o;break}o=o+4|0}c[j>>2]=h;c[g>>2]=e;o=i;q=b+8|0;b=e;e=h;h=p;a:while(1){if((e|0)==(i|0)|(b|0)==(f|0)){r=b;s=35;break}p=d;t=c[p+4>>2]|0;u=m;c[u>>2]=c[p>>2];c[u+4>>2]=t;t=Ao(c[q>>2]|0)|0;u=xo(e,g,h-b>>2,o-e|0,d)|0;if(t|0)Ao(t)|0;switch(u|0){case -1:{s=10;break a;break}case 0:{v=1;s=32;break a;break}default:{}}t=(c[j>>2]|0)+u|0;c[j>>2]=t;if((t|0)==(i|0)){s=33;break}if((h|0)==(f|0)){w=f;x=t;y=c[g>>2]|0}else{t=Ao(c[q>>2]|0)|0;u=An(n,0,d)|0;if(t|0)Ao(t)|0;if((u|0)==-1){z=2;s=31;break}if(u>>>0>(o-(c[j>>2]|0)|0)>>>0){z=1;s=31;break}else{A=n;B=u}while(1){if(!B)break;u=a[A>>0]|0;t=c[j>>2]|0;c[j>>2]=t+1;a[t>>0]=u;A=A+1|0;B=B+-1|0}u=(c[g>>2]|0)+4|0;c[g>>2]=u;t=u;while(1){if((t|0)==(f|0)){C=f;break}if(!(c[t>>2]|0)){C=t;break}t=t+4|0}w=C;x=c[j>>2]|0;y=u}b=y;e=x;h=w}if((s|0)==10){c[j>>2]=e;w=b;b=e;while(1){if((w|0)==(c[g>>2]|0))break;e=c[w>>2]|0;h=Ao(c[q>>2]|0)|0;x=An(b,e,m)|0;if(h|0)Ao(h)|0;if((x|0)==-1)break;h=(c[j>>2]|0)+x|0;c[j>>2]=h;w=w+4|0;b=h}c[g>>2]=w;v=2;s=32}else if((s|0)==31){v=z;s=32}else if((s|0)==33){r=c[g>>2]|0;s=35}if((s|0)==32)D=v;else if((s|0)==35)D=(r|0)!=(f|0)&1;l=k;return D|0}function Lw(b,d,e,f,g,h,i,j){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,m=0,n=0,o=0,p=0,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;k=l;l=l+16|0;m=k;n=e;while(1){if((n|0)==(f|0)){o=f;break}if(!(a[n>>0]|0)){o=n;break}n=n+1|0}c[j>>2]=h;c[g>>2]=e;n=i;p=b+8|0;b=e;e=h;h=o;while(1){if((e|0)==(i|0)|(b|0)==(f|0)){q=b;r=33;break}o=d;s=c[o+4>>2]|0;t=m;c[t>>2]=c[o>>2];c[t+4>>2]=s;u=h;s=Ao(c[p>>2]|0)|0;t=yo(e,g,u-b|0,n-e>>2,d)|0;if(s|0)Ao(s)|0;if((t|0)==-1){v=b;w=e;r=10;break}s=(c[j>>2]|0)+(t<<2)|0;c[j>>2]=s;if((s|0)==(i|0)){r=30;break}t=c[g>>2]|0;if((h|0)==(f|0)){x=f;y=s;z=t}else{o=Ao(c[p>>2]|0)|0;A=fo(s,t,1,d)|0;if(o|0)Ao(o)|0;if(A|0){B=2;r=29;break}c[j>>2]=(c[j>>2]|0)+4;A=(c[g>>2]|0)+1|0;c[g>>2]=A;o=A;while(1){if((o|0)==(f|0)){C=f;break}if(!(a[o>>0]|0)){C=o;break}o=o+1|0}x=C;y=c[j>>2]|0;z=A}b=z;e=y;h=x}do if((r|0)==10){a:while(1){r=0;c[j>>2]=w;if((v|0)==(c[g>>2]|0)){r=19;break}x=Ao(c[p>>2]|0)|0;h=fo(w,v,u-v|0,m)|0;if(x|0)Ao(x)|0;switch(h|0){case -1:{r=15;break a;break}case -2:{r=16;break a;break}case 0:{D=v+1|0;break}default:D=v+h|0}v=D;w=(c[j>>2]|0)+4|0;r=10}if((r|0)==15){c[g>>2]=v;B=2;r=29;break}else if((r|0)==16){c[g>>2]=v;B=1;r=29;break}else if((r|0)==19){c[g>>2]=v;B=(v|0)!=(f|0)&1;r=29;break}}else if((r|0)==30){q=c[g>>2]|0;r=33}while(0);if((r|0)==29)E=B;else if((r|0)==33)E=(q|0)!=(f|0)&1;l=k;return E|0}function Mw(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,m=0;h=l;l=l+16|0;i=h;c[g>>2]=e;e=Ao(c[b+8>>2]|0)|0;b=An(i,0,d)|0;if(e|0)Ao(e)|0;a:do switch(b|0){case 0:case -1:{j=2;break}default:{e=b+-1|0;if(e>>>0>(f-(c[g>>2]|0)|0)>>>0)j=1;else{d=i;k=e;while(1){if(!k){j=0;break a}e=a[d>>0]|0;m=c[g>>2]|0;c[g>>2]=m+1;a[m>>0]=e;d=d+1|0;k=k+-1|0}}}}while(0);l=h;return j|0}function Nw(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;a=Ao(c[b>>2]|0)|0;d=Tn(0,0,4)|0;if(a|0)Ao(a)|0;if(!d){d=c[b>>2]|0;if(d){b=Ao(d)|0;if(!b)e=0;else{Ao(b)|0;e=0}}else e=1}else e=-1;return e|0}function Ow(a){a=a|0;return 0}function Pw(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;g=e;h=a+8|0;a=0;i=0;j=d;a:while(1){if((j|0)==(e|0)|a>>>0>=f>>>0)break;d=Ao(c[h>>2]|0)|0;k=wo(j,g-j|0,b)|0;if(d|0)Ao(d)|0;switch(k|0){case -2:case -1:{break a;break}case 0:{l=j+1|0;m=1;break}default:{l=j+k|0;m=k}}a=a+1|0;i=m+i|0;j=l}return i|0}function Qw(a){a=a|0;var b=0,d=0;b=c[a+8>>2]|0;if(b){a=Ao(b)|0;if(!a)d=4;else{Ao(a)|0;d=4}}else d=1;return d|0}function Rw(a){a=a|0;var b=0;c[a>>2]=20068;b=a+8|0;a=c[b>>2]|0;if((a|0)!=(Jr()|0))Do(c[b>>2]|0);return}function Sw(a){a=a|0;Rw(a);bz(a);return}function Tw(a,b,d,e,f,g,h,i){a=a|0;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;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=ax(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function Uw(a,b,d,e,f,g,h,i){a=a|0;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;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=$w(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function Vw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Ww(a){a=a|0;return 0}function Xw(a){a=a|0;return 0}function Yw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return _w(c,d,e,1114111,0)|0}function Zw(a){a=a|0;return 4}function _w(b,c,e,f,g){b=b|0;c=c|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;h=c;if((((g&4|0)!=0?(h-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){i=0;j=(a[b+2>>0]|0)==-65?b+3|0:b}else{i=0;j=b}a:while(1){if(!(i>>>0<e>>>0&j>>>0<c>>>0)){k=39;break}g=a[j>>0]|0;l=g&255;if(l>>>0>f>>>0){k=39;break}do if(g<<24>>24<=-1){if((g&255)<194){k=39;break a}if((g&255)<224){if((h-j|0)<2){k=39;break a}m=d[j+1>>0]|0;if((m&192|0)!=128){k=39;break a}if((m&63|l<<6&1984)>>>0>f>>>0){k=39;break a}else{n=i;o=j+2|0;break}}if((g&255)<240){p=j;if((h-p|0)<3){k=39;break a}m=a[j+1>>0]|0;q=a[j+2>>0]|0;switch(g<<24>>24){case -32:{if((m&-32)<<24>>24!=-96){k=19;break a}break}case -19:{if((m&-32)<<24>>24!=-128){k=21;break a}break}default:if((m&-64)<<24>>24!=-128){k=23;break a}}r=q&255;if((r&192|0)!=128){k=39;break a}if(((m&255)<<6&4032|l<<12&61440|r&63)>>>0>f>>>0){k=39;break a}else{n=i;o=j+3|0;break}}if((g&255)>=245){k=39;break a}s=j;if((e-i|0)>>>0<2|(h-s|0)<4){k=39;break a}r=a[j+1>>0]|0;m=a[j+2>>0]|0;q=a[j+3>>0]|0;switch(g<<24>>24){case -16:{if((r+112&255)>=48){k=30;break a}break}case -12:{if((r&-16)<<24>>24!=-128){k=32;break a}break}default:if((r&-64)<<24>>24!=-128){k=34;break a}}t=m&255;if((t&192|0)!=128){k=39;break a}m=q&255;if((m&192|0)!=128){k=39;break a}if(((r&255)<<12&258048|l<<18&1835008|t<<6&4032|m&63)>>>0>f>>>0){k=39;break a}else{n=i+1|0;o=j+4|0}}else{n=i;o=j+1|0}while(0);i=n+1|0;j=o}if((k|0)==19)u=p-b|0;else if((k|0)==21)u=p-b|0;else if((k|0)==23)u=p-b|0;else if((k|0)==30)u=s-b|0;else if((k|0)==32)u=s-b|0;else if((k|0)==34)u=s-b|0;else if((k|0)==39)u=j-b|0;return u|0}function $w(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c[g>>2]=e;c[j>>2]=h;if(l&4){l=c[g>>2]|0;h=f;if((((h-l|0)>2?(a[l>>0]|0)==-17:0)?(a[l+1>>0]|0)==-69:0)?(a[l+2>>0]|0)==-65:0){c[g>>2]=l+3;m=h}else m=h}else m=f;h=i;a:while(1){l=c[g>>2]|0;n=l>>>0<f>>>0;if(!n){o=41;break}e=c[j>>2]|0;if(e>>>0>=i>>>0){o=41;break}p=a[l>>0]|0;q=p&255;if(q>>>0>k>>>0){r=2;break}do if(p<<24>>24>-1){b[e>>1]=p&255;c[g>>2]=l+1}else{if((p&255)<194){r=2;break a}if((p&255)<224){if((m-l|0)<2){r=1;break a}s=d[l+1>>0]|0;if((s&192|0)!=128){r=2;break a}t=s&63|q<<6&1984;if(t>>>0>k>>>0){r=2;break a}b[e>>1]=t;c[g>>2]=l+2;break}if((p&255)<240){if((m-l|0)<3){r=1;break a}t=a[l+1>>0]|0;s=a[l+2>>0]|0;switch(p<<24>>24){case -32:{if((t&-32)<<24>>24!=-96){r=2;break a}break}case -19:{if((t&-32)<<24>>24!=-128){r=2;break a}break}default:if((t&-64)<<24>>24!=-128){r=2;break a}}u=s&255;if((u&192|0)!=128){r=2;break a}s=(t&255)<<6&4032|q<<12|u&63;if((s&65535)>>>0>k>>>0){r=2;break a}b[e>>1]=s;c[g>>2]=l+3;break}if((p&255)>=245){r=2;break a}if((m-l|0)<4){r=1;break a}s=a[l+1>>0]|0;u=a[l+2>>0]|0;t=a[l+3>>0]|0;switch(p<<24>>24){case -16:{if((s+112&255)>=48){r=2;break a}break}case -12:{if((s&-16)<<24>>24!=-128){r=2;break a}break}default:if((s&-64)<<24>>24!=-128){r=2;break a}}v=u&255;if((v&192|0)!=128){r=2;break a}u=t&255;if((u&192|0)!=128){r=2;break a}if((h-e|0)<4){r=1;break a}t=q&7;w=s&255;s=v<<6;x=u&63;if((w<<12&258048|t<<18|s&4032|x)>>>0>k>>>0){r=2;break a}b[e>>1]=w<<2&60|v>>>4&3|((w>>>4&3|t<<2)<<6)+16320|55296;t=e+2|0;c[j>>2]=t;b[t>>1]=x|s&960|56320;c[g>>2]=(c[g>>2]|0)+4}while(0);c[j>>2]=(c[j>>2]|0)+2}if((o|0)==41)r=n&1;return r|0}function ax(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0;c[g>>2]=d;c[j>>2]=h;d=i;if(l&2)if((d-h|0)<3)m=1;else{c[j>>2]=h+1;a[h>>0]=-17;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=-69;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=-65;n=4}else n=4;a:do if((n|0)==4){h=f;l=c[g>>2]|0;while(1){if(l>>>0>=f>>>0){m=0;break a}i=b[l>>1]|0;o=i&65535;if(o>>>0>k>>>0){m=2;break a}do if((i&65535)<128){p=c[j>>2]|0;if((d-p|0)<1){m=1;break a}c[j>>2]=p+1;a[p>>0]=i}else{if((i&65535)<2048){p=c[j>>2]|0;if((d-p|0)<2){m=1;break a}c[j>>2]=p+1;a[p>>0]=o>>>6|192;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o&63|128;break}if((i&65535)<55296){p=c[j>>2]|0;if((d-p|0)<3){m=1;break a}c[j>>2]=p+1;a[p>>0]=o>>>12|224;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o>>>6&63|128;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o&63|128;break}if((i&65535)>=56320){if((i&65535)<57344){m=2;break a}p=c[j>>2]|0;if((d-p|0)<3){m=1;break a}c[j>>2]=p+1;a[p>>0]=o>>>12|224;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o>>>6&63|128;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o&63|128;break}if((h-l|0)<4){m=1;break a}p=l+2|0;q=e[p>>1]|0;if((q&64512|0)!=56320){m=2;break a}if((d-(c[j>>2]|0)|0)<4){m=1;break a}r=o&960;if(((r<<10)+65536|o<<10&64512|q&1023)>>>0>k>>>0){m=2;break a}c[g>>2]=p;p=(r>>>6)+1|0;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=p>>>2|240;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=o>>>2&15|p<<4&48|128;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=o<<4&48|q>>>6&15|128;p=c[j>>2]|0;c[j>>2]=p+1;a[p>>0]=q&63|128}while(0);o=(c[g>>2]|0)+2|0;c[g>>2]=o;l=o}}while(0);return m|0}function bx(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;c[a>>2]=20116;b=a+8|0;d=a+12|0;e=0;while(1){f=c[b>>2]|0;if(e>>>0>=(c[d>>2]|0)-f>>2>>>0)break;g=c[f+(e<<2)>>2]|0;if(g|0)Wy(g)|0;e=e+1|0}oz(a+144|0);dx(b);return}function cx(a){a=a|0;bx(a);bz(a);return}function dx(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b>>2]|0;do if(d|0){e=b+4|0;f=c[e>>2]|0;while(1){if((f|0)==(d|0))break;g=f+-4|0;c[e>>2]=g;f=g}if((b+16|0)==(d|0)){a[b+128>>0]=0;break}else{bz(d);break}}while(0);return}function ex(b){b=b|0;var d=0;c[b>>2]=20136;d=c[b+8>>2]|0;if(d|0?a[b+12>>0]|0:0)cz(d);return}function fx(a){a=a|0;ex(a);bz(a);return}function gx(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24>-1)d=c[(c[(no()|0)>>2]|0)+((b&255)<<2)>>2]&255;else d=b;return d|0}function hx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;b=d;while(1){if((b|0)==(e|0))break;d=a[b>>0]|0;if(d<<24>>24>-1)f=c[(c[(no()|0)>>2]|0)+(d<<24>>24<<2)>>2]&255;else f=d;a[b>>0]=f;b=b+1|0}return e|0}function ix(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24>-1)d=c[(c[(to()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255;else d=b;return d|0}function jx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;b=d;while(1){if((b|0)==(e|0))break;d=a[b>>0]|0;if(d<<24>>24>-1)f=c[(c[(to()|0)>>2]|0)+(d<<24>>24<<2)>>2]&255;else f=d;a[b>>0]=f;b=b+1|0}return e|0}function kx(a,b){a=a|0;b=b|0;return b|0}function lx(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;b=e;e=c;while(1){if((e|0)==(d|0))break;a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}return d|0}function mx(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function nx(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;b=f;f=c;while(1){if((f|0)==(d|0))break;c=a[f>>0]|0;a[b>>0]=c<<24>>24>-1?c:e;b=b+1|0;f=f+1|0}return d|0}function ox(a){a=a|0;c[a>>2]=20188;oz(a+12|0);return}function px(a){a=a|0;ox(a);bz(a);return}function qx(b){b=b|0;return a[b+8>>0]|0}function rx(b){b=b|0;return a[b+9>>0]|0}function sx(a,b){a=a|0;b=b|0;kz(a,b+12|0);return}function tx(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,39997,4);return}function ux(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,39991,5);return}function vx(a){a=a|0;c[a>>2]=20228;oz(a+16|0);return}function wx(a){a=a|0;vx(a);bz(a);return}function xx(a){a=a|0;return c[a+8>>2]|0}function yx(a){a=a|0;return c[a+12>>2]|0}function zx(a,b){a=a|0;b=b|0;kz(a,b+16|0);return}function Ax(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Hz(a,20284,Nn(20284)|0);return}function Bx(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Hz(a,20260,Nn(20260)|0);return}function Cx(a){a=a|0;bz(a);return}function Dx(a){a=a|0;bz(a);return}function Ex(a,d,e){a=a|0;d=d|0;e=e|0;var f=0;if(e>>>0<128)f=(b[(c[(so()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16!=0;else f=0;return f|0}function Fx(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0;a=g;g=d;while(1){if((g|0)==(f|0))break;d=c[g>>2]|0;if(d>>>0<128)h=e[(c[(so()|0)>>2]|0)+(d<<1)>>1]|0;else h=0;b[a>>1]=h;a=a+2|0;g=g+4|0}return f|0}function Gx(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=e;while(1){if((a|0)==(f|0)){g=f;break}e=c[a>>2]|0;if(e>>>0<128?(b[(c[(so()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16:0){g=a;break}a=a+4|0}return g|0}function Hx(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=e;while(1){if((a|0)==(f|0)){g=f;break}e=c[a>>2]|0;if(e>>>0>=128){g=a;break}if(!((b[(c[(so()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16)){g=a;break}a=a+4|0}return g|0}function Ix(a,b){a=a|0;b=b|0;var d=0;if(b>>>0<128)d=c[(c[(no()|0)>>2]|0)+(b<<2)>>2]|0;else d=b;return d|0}function Jx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=b;while(1){if((a|0)==(d|0))break;b=c[a>>2]|0;if(b>>>0<128)e=c[(c[(no()|0)>>2]|0)+(b<<2)>>2]|0;else e=b;c[a>>2]=e;a=a+4|0}return d|0}function Kx(a,b){a=a|0;b=b|0;var d=0;if(b>>>0<128)d=c[(c[(to()|0)>>2]|0)+(b<<2)>>2]|0;else d=b;return d|0}function Lx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=b;while(1){if((a|0)==(d|0))break;b=c[a>>2]|0;if(b>>>0<128)e=c[(c[(to()|0)>>2]|0)+(b<<2)>>2]|0;else e=b;c[a>>2]=e;a=a+4|0}return d|0}function Mx(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Nx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;b=f;f=d;while(1){if((f|0)==(e|0))break;c[b>>2]=a[f>>0];b=b+4|0;f=f+1|0}return e|0}function Ox(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function Px(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;b=(e-d|0)>>>2;h=g;g=d;while(1){if((g|0)==(e|0))break;i=c[g>>2]|0;a[h>>0]=i>>>0<128?i&255:f;h=h+1|0;g=g+4|0}return d+(b<<2)|0}function Qx(a){a=a|0;bz(a);return}function Rx(a){a=a|0;bz(a);return}function Sx(a){a=a|0;bz(a);return}function Tx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;c[b+4>>2]=f+-1;c[b>>2]=20136;f=b+8|0;c[f>>2]=d;a[b+12>>0]=e&1;if(!d)c[f>>2]=c[(so()|0)>>2];return}function Ux(a){a=a|0;return}function Vx(a){a=a|0;Da(40044,40067,304,40249)}function Wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+4>>2]=b+-1;c[a>>2]=20116;b=a+8|0;Xx(b,28);d=a+144|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;lz(d,37936,1);d=c[b>>2]|0;b=a+12|0;e=c[b>>2]|0;while(1){if((e|0)==(d|0))break;f=e+-4|0;c[b>>2]=f;e=f}c[10353]=0;c[10352]=17780;Yx(a,41408);c[10355]=0;c[10354]=17812;Zx(a,41416);Tx(41424,0,0,1);_x(a,41424);c[10361]=0;c[10360]=20332;$x(a,41440);c[10363]=0;c[10362]=20400;ay(a,41448);c[10365]=0;c[10364]=20068;c[10366]=Jr()|0;by(a,41456);c[10369]=0;c[10368]=20448;cy(a,41472);c[10371]=0;c[10370]=20496;dy(a,41480);ey(41488,1);fy(a,41488);gy(41512,1);hy(a,41512);c[10387]=0;c[10386]=17844;iy(a,41544);c[10389]=0;c[10388]=17908;jy(a,41552);c[10391]=0;c[10390]=17972;ky(a,41560);c[10393]=0;c[10392]=18024;ly(a,41568);c[10395]=0;c[10394]=19572;my(a,41576);c[10397]=0;c[10396]=19628;ny(a,41584);c[10399]=0;c[10398]=19684;oy(a,41592);c[10401]=0;c[10400]=19740;py(a,41600);c[10403]=0;c[10402]=19796;qy(a,41608);c[10405]=0;c[10404]=19824;ry(a,41616);c[10407]=0;c[10406]=19852;sy(a,41624);c[10409]=0;c[10408]=19880;ty(a,41632);c[10411]=0;c[10410]=18076;c[10412]=18124;uy(a,41640);c[10415]=0;c[10414]=18160;c[10416]=18208;vy(a,41656);c[10419]=0;c[10418]=20312;c[10420]=Jr()|0;c[10418]=19524;wy(a,41672);c[10423]=0;c[10422]=20312;c[10424]=Jr()|0;c[10422]=19548;xy(a,41688);c[10427]=0;c[10426]=19908;yy(a,41704);c[10429]=0;c[10428]=19940;zy(a,41712);return}function Xx(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a[b+128>>0]=0;if(d|0){Hy(b,d);Dy(b,d)}return}function Yx(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43788)|0);return}function Zx(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43796)|0);return}function _x(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43804)|0);return}function $x(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43836)|0);return}function ay(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45596)|0);return}function by(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45604)|0);return}function cy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45612)|0);return}function dy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45620)|0);return}function ey(b,d){b=b|0;d=d|0;c[b+4>>2]=d+-1;c[b>>2]=20188;a[b+8>>0]=46;a[b+9>>0]=44;d=b+12|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}return}function fy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43820)|0);return}function gy(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=20228;c[a+8>>2]=46;c[a+12>>2]=44;b=a+16|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;c[b+(a<<2)>>2]=0;a=a+1|0}return}function hy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43844)|0);return}function iy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43828)|0);return}function jy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43852)|0);return}function ky(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43860)|0);return}function ly(a,b){a=a|0;b=b|0;Ay(a,b,Lr(43868)|0);return}function my(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45516)|0);return}function ny(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45524)|0);return}function oy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45532)|0);return}function py(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45540)|0);return}function qy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45548)|0);return}function ry(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45556)|0);return}function sy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45564)|0);return}function ty(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45572)|0);return}function uy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(44680)|0);return}function vy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45492)|0);return}function wy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45500)|0);return}function xy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45508)|0);return}function yy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45580)|0);return}function zy(a,b){a=a|0;b=b|0;Ay(a,b,Lr(45588)|0);return}function Ay(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;Vy(b);e=a+8|0;f=c[e>>2]|0;if((c[a+12>>2]|0)-f>>2>>>0>d>>>0){g=e;h=f}else{By(e,d+1|0);g=e;h=c[e>>2]|0}e=c[h+(d<<2)>>2]|0;if(e|0)Wy(e)|0;c[(c[g>>2]|0)+(d<<2)>>2]=b;return}function By(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=e-f>>2;h=f;f=e;a:do if(g>>>0>=b>>>0){if(g>>>0>b>>>0){e=h+(b<<2)|0;i=f;while(1){if((i|0)==(e|0))break a;j=i+-4|0;c[d>>2]=j;i=j}}}else Cy(a,b-g|0);while(0);return}function Cy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+32|0;e=d;f=c[a+8>>2]|0;g=c[a+4>>2]|0;if(f-g>>2>>>0<b>>>0){h=c[a>>2]|0;i=g-h>>2;g=i+b|0;if(g>>>0>1073741823)Vx(a);j=f-h|0;h=j>>1;Ey(e,j>>2>>>0<536870911?(h>>>0<g>>>0?g:h):1073741823,i,a+16|0);i=e+8|0;h=b;g=c[i>>2]|0;do{c[g>>2]=0;g=(c[i>>2]|0)+4|0;c[i>>2]=g;h=h+-1|0}while((h|0)!=0);Fy(a,e);Gy(e)}else Dy(a,b);l=d;return}function Dy(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Ey(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;c[b+12>>2]=0;c[b+16>>2]=f;do if(d){g=f+112|0;if(d>>>0<29&(a[g>>0]|0)==0){a[g>>0]=1;h=f;break}else{h=$y(d<<2)|0;break}}else h=0;while(0);c[b>>2]=h;f=h+(e<<2)|0;c[b+8>>2]=f;c[b+4>>2]=f;c[b+12>>2]=h+(d<<2);return}function Fy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a>>2]|0;e=a+4|0;f=b+4|0;g=(c[e>>2]|0)-d|0;h=(c[f>>2]|0)+(0-(g>>2)<<2)|0;c[f>>2]=h;if((g|0)>0){jB(h|0,d|0,g|0)|0;i=f;j=c[f>>2]|0}else{i=f;j=h}h=c[a>>2]|0;c[a>>2]=j;c[i>>2]=h;h=b+8|0;j=c[e>>2]|0;c[e>>2]=c[h>>2];c[h>>2]=j;j=a+8|0;a=b+12|0;h=c[j>>2]|0;c[j>>2]=c[a>>2];c[a>>2]=h;c[b>>2]=c[i>>2];return}function Gy(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+4>>2]|0;e=b+8|0;f=c[e>>2]|0;while(1){if((f|0)==(d|0))break;g=f+-4|0;c[e>>2]=g;f=g}f=c[b>>2]|0;do if(f|0){e=c[b+16>>2]|0;if((e|0)==(f|0)){a[e+112>>0]=0;break}else{bz(f);break}}while(0);return}function Hy(b,d){b=b|0;d=d|0;var e=0,f=0;if(d>>>0>1073741823)Vx(b);e=b+128|0;if(d>>>0<29&(a[e>>0]|0)==0){a[e>>0]=1;f=b+16|0}else f=$y(d<<2)|0;c[b+4>>2]=f;c[b>>2]=f;c[b+8>>2]=f+(d<<2);return}function Iy(){if((a[41720]|0)==0?WA(41720)|0:0){Jy()|0;c[11408]=45628}return c[11408]|0}function Jy(){Wx(41728,1);c[11407]=41728;return 45628}function Ky(){var a=0;a=c[(Iy()|0)>>2]|0;c[11409]=a;Vy(a);return 45636}function Ly(){if((a[41888]|0)==0?WA(41888)|0:0){Ky()|0;c[11410]=45636}return c[11410]|0}function My(a){a=a|0;var b=0;b=c[(Ly()|0)>>2]|0;c[a>>2]=b;Vy(b);return}function Ny(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=d;Vy(d);return}function Oy(a){a=a|0;Wy(c[a>>2]|0)|0;return}function Py(a,b){a=a|0;b=b|0;Vy(c[b>>2]|0);Wy(c[a>>2]|0)|0;c[a>>2]=c[b>>2];return a|0}function Qy(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;return Ry(d,Lr(b)|0)|0}function Ry(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+8>>2]|0;if((c[a+12>>2]|0)-d>>2>>>0>b>>>0)e=(c[d+(b<<2)>>2]|0)!=0;else e=0;return e|0}function Sy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=0;else d=Xn(a,b,c)|0;return d|0}function Ty(a){a=a|0;return}function Uy(a,b){a=a|0;b=b|0;return 0}function Vy(a){a=a|0;var b=0;b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;return}function Wy(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;d=c[b>>2]|0;c[b>>2]=d+-1;if(!d){qb[c[(c[a>>2]|0)+8>>2]&511](a);e=1}else e=0;return e|0}function Xy(a){a=a|0;var b=0;b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;return}function Yy(a){a=a|0;if(Wy(a)|0)Zy(a);return}function Zy(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;c[b>>2]=d+-1;if(!d)qb[c[(c[a>>2]|0)+16>>2]&511](a);return}function _y(a,b,d){a=a|0;b=b|0;d=d|0;fB(45644)|0;while(1){if((c[a>>2]|0)!=1)break;xa(45672,45644)|0}if(!(c[a>>2]|0)){c[a>>2]=1;tB(45644)|0;qb[d&511](b);fB(45644)|0;c[a>>2]=-1;tB(45644)|0;iB(45672)|0}else tB(45644)|0;return}function $y(a){a=a|0;var b=0,c=0;b=(a|0)==0?1:a;while(1){a=Vo(b)|0;if(a|0){c=a;break}a=_A()|0;if(!a){c=0;break}xb[a&3]()}return c|0}function az(a){a=a|0;return $y(a)|0}function bz(a){a=a|0;Wo(a);return}function cz(a){a=a|0;bz(a);return}function dz(){return}function ez(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=kn(b)|0;e=$y(d+13|0)|0;c[e>>2]=d;c[e+4>>2]=d;c[e+8>>2]=0;f=e+12|0;jB(f|0,b|0,d+1|0)|0;c[a>>2]=f;return}function fz(a,b){a=a|0;b=b|0;c[a>>2]=20672;ez(a+4|0,b);return}function gz(b,d){b=b|0;d=d|0;c[b>>2]=20692;ez(b+4|0,(a[d+11>>0]|0)<0?c[d>>2]|0:d);return}function hz(a,b){a=a|0;b=b|0;var d=0;c[a>>2]=20692;d=c[b+4>>2]|0;c[a+4>>2]=d;a=d+-4|0;c[a>>2]=(c[a>>2]|0)+1;return}function iz(a){a=a|0;Da(40171,40200,1183,40249)}function jz(a){a=a|0;Da(40270,40200,1194,40299)}function kz(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+11>>0]|0)<0)lz(b,c[d>>2]|0,c[d+4>>2]|0);else{c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}return}function lz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if(e>>>0>4294967279)iz(b);if(e>>>0<11){a[b+11>>0]=e;if(!e)f=b;else{g=b;h=6}}else{i=e+16&-16;j=$y(i)|0;c[b>>2]=j;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;g=j;h=6}if((h|0)==6){jB(g|0,d|0,e|0)|0;f=g}a[f+e>>0]=0;return}function mz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if(d>>>0>4294967279)iz(b);if(d>>>0<11){a[b+11>>0]=d;if(!d)f=b;else{g=b;h=6}}else{i=d+16&-16;j=$y(i)|0;c[b>>2]=j;c[b+8>>2]=i|-2147483648;c[b+4>>2]=d;g=j;h=6}if((h|0)==6){eB(g|0,e|0,d|0)|0;f=g}a[f+d>>0]=0;return}function nz(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;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;i=h?c[d+4>>2]|0:g&255;if(i>>>0<e>>>0)jz(b);else{g=i-e|0;lz(b,(h?c[d>>2]|0:d)+e|0,g>>>0<f>>>0?g:f);return}}function oz(b){b=b|0;if((a[b+11>>0]|0)<0)bz(c[b>>2]|0);return}function pz(b,d){b=b|0;d=d|0;var e=0,f=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;f=e<<24>>24<0;qz(b,f?c[d>>2]|0:d,f?c[d+4>>2]|0:e&255)|0}return b|0}function qz(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;f=b+11|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h)i=(c[b+8>>2]&2147483647)+-1|0;else i=10;do if(i>>>0>=e>>>0){if(h)j=c[b>>2]|0;else j=b;if(e|0)rB(j|0,d|0,e|0)|0;a[j+e>>0]=0;if((a[f>>0]|0)<0){c[b+4>>2]=e;break}else{a[f>>0]=e;break}}else{if(h)k=c[b+4>>2]|0;else k=g&255;rz(b,i,e-i|0,k,0,k,e,d)}while(0);return b|0}function rz(b,d,e,f,g,h,i,j){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,l=0,m=0,n=0;if((-18-d|0)>>>0<e>>>0)iz(b);if((a[b+11>>0]|0)<0)k=c[b>>2]|0;else k=b;if(d>>>0<2147483623){l=e+d|0;e=d<<1;m=l>>>0<e>>>0?e:l;n=m>>>0<11?11:m+16&-16}else n=-17;m=$y(n)|0;if(g|0)jB(m|0,k|0,g|0)|0;if(i|0)jB(m+g|0,j|0,i|0)|0;j=f-h|0;f=j-g|0;if(f|0)jB(m+g+i|0,k+g+h|0,f|0)|0;if((d|0)!=10)bz(k);c[b>>2]=m;c[b+8>>2]=n|-2147483648;n=j+i|0;c[b+4>>2]=n;a[m+n>>0]=0;return}function sz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;if(d>>>0>4294967279)iz(b);e=b+11|0;f=a[e>>0]|0;g=f<<24>>24<0;if(g){h=c[b+4>>2]|0;i=(c[b+8>>2]&2147483647)+-1|0}else{h=f&255;i=10}j=h>>>0>d>>>0?h:d;d=j>>>0<11;k=d?10:(j+16&-16)+-1|0;do if((k|0)!=(i|0)){do if(d){j=c[b>>2]|0;if(g){l=0;m=j;n=b;o=12}else{p=0;q=1;r=j;s=b;o=13}}else{j=$y(k+1|0)|0;if(g){l=1;m=c[b>>2]|0;n=j;o=12;break}else{p=1;q=0;r=b;s=j;o=13;break}}while(0);if((o|0)==12){t=l;u=1;v=m;w=n;x=c[b+4>>2]|0}else if((o|0)==13){t=p;u=q;v=r;w=s;x=f&255}j=x+1|0;if(j|0)jB(w|0,v|0,j|0)|0;if(u)bz(v);if(t){c[b+8>>2]=k+1|-2147483648;c[b+4>>2]=h;c[b>>2]=w;break}else{a[e>>0]=h;break}}while(0);return}function tz(a,b){a=a|0;b=b|0;return qz(a,b,kn(b)|0)|0}function uz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+11|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h)i=c[b+4>>2]|0;else i=g&255;do if(i>>>0>=d>>>0)if(h){a[(c[b>>2]|0)+d>>0]=0;c[b+4>>2]=d;break}else{a[b+d>>0]=0;a[f>>0]=d;break}else vz(b,d-i|0,e)|0;while(0);return}function vz(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;if(d|0){f=b+11|0;g=a[f>>0]|0;if(g<<24>>24<0){h=c[b+4>>2]|0;i=(c[b+8>>2]&2147483647)+-1|0}else{h=g&255;i=10}if((i-h|0)>>>0<d>>>0){wz(b,i,d-i+h|0,h,h,0,0);j=a[f>>0]|0}else j=g;if(j<<24>>24<0)k=c[b>>2]|0;else k=b;eB(k+h|0,e|0,d|0)|0;e=h+d|0;if((a[f>>0]|0)<0)c[b+4>>2]=e;else a[f>>0]=e;a[k+e>>0]=0}return b|0}function wz(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;if((-17-d|0)>>>0<e>>>0)iz(b);if((a[b+11>>0]|0)<0)j=c[b>>2]|0;else j=b;if(d>>>0<2147483623){k=e+d|0;e=d<<1;l=k>>>0<e>>>0?e:k;m=l>>>0<11?11:l+16&-16}else m=-17;l=$y(m)|0;if(g|0)jB(l|0,j|0,g|0)|0;k=f-h-g|0;if(k|0)jB(l+g+i|0,j+g+h|0,k|0)|0;if((d|0)!=10)bz(j);c[b>>2]=l;c[b+8>>2]=m|-2147483648;return}function xz(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;f=b+11|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h){i=c[b+4>>2]|0;j=(c[b+8>>2]&2147483647)+-1|0}else{i=g&255;j=10}if((j-i|0)>>>0>=e>>>0){if(e|0){if(h)k=c[b>>2]|0;else k=b;jB(k+i|0,d|0,e|0)|0;h=i+e|0;if((a[f>>0]|0)<0)c[b+4>>2]=h;else a[f>>0]=h;a[k+h>>0]=0}}else rz(b,j,e-j+i|0,i,i,0,e,d);return b|0}function yz(a,b){a=a|0;b=b|0;return xz(a,b,kn(b)|0)|0}function zz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=b+11|0;f=a[e>>0]|0;g=f<<24>>24<0;if(g){h=c[b+4>>2]|0;i=(c[b+8>>2]&2147483647)+-1|0}else{h=f&255;i=10}if((h|0)==(i|0)){wz(b,i,1,i,i,0,0);if((a[e>>0]|0)>-1)j=7;else j=8}else if(g)j=8;else j=7;if((j|0)==7){a[e>>0]=h+1;k=b}else if((j|0)==8){j=c[b>>2]|0;c[b+4>>2]=h+1;k=j}j=k+h|0;a[j>>0]=d;a[j+1>>0]=0;return}function Az(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,m=0;g=b+11|0;h=a[g>>0]|0;i=h<<24>>24<0;if(i)j=c[b+4>>2]|0;else j=h&255;if(j>>>0<d>>>0)jz(b);if(i)k=(c[b+8>>2]&2147483647)+-1|0;else k=10;if((k-j|0)>>>0>=f>>>0){if(f|0){if(i)l=c[b>>2]|0;else l=b;i=j-d|0;h=l+d|0;if(!i)m=e;else{rB(h+f|0,h|0,i|0)|0;m=h>>>0<=e>>>0&(l+j|0)>>>0>e>>>0?e+f|0:e}rB(h|0,m|0,f|0)|0;m=j+f|0;if((a[g>>0]|0)<0)c[b+4>>2]=m;else a[g>>0]=m;a[l+m>>0]=0}}else rz(b,k,j+f-k|0,j,d,0,f,e);return b|0}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;return Az(a,b,c,kn(c)|0)|0}function Cz(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;h=b+11|0;i=a[h>>0]|0;j=i<<24>>24<0;if(j)k=c[b+4>>2]|0;else k=i&255;if(k>>>0<d>>>0)jz(b);i=k-d|0;l=i>>>0<e>>>0?i:e;if(j)m=(c[b+8>>2]&2147483647)+-1|0;else m=10;if((l-k+m|0)>>>0<g>>>0)rz(b,m,k+g-l-m|0,k,d,l,g,f);else{if(j)n=c[b>>2]|0;else n=b;do if((l|0)!=(g|0)){j=i-l|0;if(!j){o=l;p=d;q=f;r=g;s=25}else{m=n+d|0;if(l>>>0>g>>>0){if(g|0)rB(m|0,f|0,g|0)|0;rB(m+g|0,m+l|0,j|0)|0;t=l;u=g;break}do if(m>>>0<f>>>0&(n+k|0)>>>0>f>>>0){if((m+l|0)>>>0<=f>>>0){v=d;w=f+(g-l)|0;x=g;y=l;break}if(l|0)rB(m|0,f|0,l|0)|0;v=l+d|0;w=f+g|0;x=g-l|0;y=0}else{v=d;w=f;x=g;y=l}while(0);m=n+v|0;rB(m+x|0,m+y|0,j|0)|0;o=y;p=v;q=w;r=x;s=25}}else{o=g;p=d;q=f;r=g;s=25}while(0);if((s|0)==25)if(!r){t=o;u=0}else{rB(n+p|0,q|0,r|0)|0;t=o;u=r}r=u-t+k|0;if((a[h>>0]|0)<0)c[b+4>>2]=r;else a[h>>0]=r;a[n+r>>0]=0}return b|0}function Dz(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;f=l;l=l+16|0;g=f;h=a[b+11>>0]|0;if(h<<24>>24<0){i=c[b+4>>2]|0;j=c[b>>2]|0}else{i=h&255;j=b}a[g>>0]=d;if(i>>>0>e>>>0){d=Ez(j+e|0,i-e|0,g)|0;k=(d|0)==0?-1:d-j|0}else k=-1;l=f;return k|0}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;if(!b)e=0;else e=xn(a,d[c>>0]|0,b)|0;return e|0}function Fz(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;h=a[b+11>>0]|0;i=h<<24>>24<0;if(i)j=c[b+4>>2]|0;else j=h&255;if((g|0)==-1|j>>>0<d>>>0)jz(b);h=j-d|0;j=h>>>0<e>>>0?h:e;if(i)k=c[b>>2]|0;else k=b;b=j>>>0>g>>>0;i=Sy(k+d|0,f,b?g:j)|0;if(!i)return (j>>>0<g>>>0?-1:b&1)|0;else return i|0;return 0}function Gz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;if(f>>>0>4294967279)iz(b);if(f>>>0<11){a[b+11>>0]=e;g=b}else{h=f+16&-16;f=$y(h)|0;c[b>>2]=f;c[b+8>>2]=h|-2147483648;c[b+4>>2]=e;g=f}if(e|0)jB(g|0,d|0,e|0)|0;a[g+e>>0]=0;return}function Hz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(e>>>0>1073741807)iz(b);do if(e>>>0>=2){f=e+4&-4;if(f>>>0>1073741823)Da(40320,40357,1734,40406);else{g=$y(f<<2)|0;c[b>>2]=g;c[b+8>>2]=f|-2147483648;c[b+4>>2]=e;h=g;break}}else{a[b+8+3>>0]=e;h=b}while(0);Gp(h,d,e)|0;c[h+(e<<2)>>2]=0;return}function Iz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(d>>>0>1073741807)iz(b);do if(d>>>0>=2){f=d+4&-4;if(f>>>0>1073741823)Da(40320,40357,1734,40406);else{g=$y(f<<2)|0;c[b>>2]=g;c[b+8>>2]=f|-2147483648;c[b+4>>2]=d;h=g;break}}else{a[b+8+3>>0]=d;h=b}while(0);Jz(h,d,e)|0;c[h+(d<<2)>>2]=0;return}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!b)d=a;else d=Ko(a,c,b)|0;return d|0}function Kz(b){b=b|0;if((a[b+8+3>>0]|0)<0)bz(c[b>>2]|0);return}function Lz(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;f=b+8|0;g=f+3|0;h=a[g>>0]|0;i=h<<24>>24<0;if(i)j=(c[f>>2]&2147483647)+-1|0;else j=1;do if(j>>>0>=e>>>0){if(i)k=c[b>>2]|0;else k=b;Mz(k,d,e)|0;c[k+(e<<2)>>2]=0;if((a[g>>0]|0)<0){c[b+4>>2]=e;break}else{a[g>>0]=e;break}}else{if(i)l=c[b+4>>2]|0;else l=h&255;Nz(b,j,e-j|0,l,0,l,e,d)}while(0);return b|0}function Mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else d=Lo(a,b,c)|0;return d|0}function Nz(b,d,e,f,g,h,i,j){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,l=0,m=0,n=0,o=0;if((1073741806-d|0)>>>0<e>>>0)iz(b);k=b+8|0;if((a[k+3>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<536870887){m=e+d|0;e=d<<1;n=m>>>0<e>>>0?e:m;m=n>>>0<2?2:n+4&-4;if(m>>>0>1073741823)Da(40320,40357,1734,40406);else o=m}else o=1073741807;m=$y(o<<2)|0;if(g|0)Gp(m,l,g)|0;if(i|0)Gp(m+(g<<2)|0,j,i)|0;j=f-h|0;f=j-g|0;if(f|0)Gp(m+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,f)|0;if((d|0)!=1)bz(l);c[b>>2]=m;c[k>>2]=o|-2147483648;o=j+i|0;c[b+4>>2]=o;c[m+(o<<2)>>2]=0;return}function Oz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(d>>>0>1073741807)iz(b);e=b+8|0;f=e+3|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h){i=c[b+4>>2]|0;j=(c[e>>2]&2147483647)+-1|0}else{i=g&255;j=1}k=i>>>0>d>>>0?i:d;d=k>>>0<2;l=d?1:(k+4&-4)+-1|0;do if((l|0)!=(j|0)){do if(d){k=c[b>>2]|0;if(h){m=0;n=k;o=b;p=15}else{Gp(b,k,(g&255)+1|0)|0;bz(k);p=17}}else{k=l+1|0;if(k>>>0>1073741823)Da(40320,40357,1734,40406);q=$y(k<<2)|0;if(h){m=1;n=c[b>>2]|0;o=q;p=15;break}else{Gp(q,b,(g&255)+1|0)|0;r=q;p=16;break}}while(0);if((p|0)==15){Gp(o,n,(c[b+4>>2]|0)+1|0)|0;bz(n);if(m){r=o;p=16}else p=17}if((p|0)==16){c[e>>2]=l+1|-2147483648;c[b+4>>2]=i;c[b>>2]=r;break}else if((p|0)==17){a[f>>0]=i;break}}while(0);return}function Pz(a,b){a=a|0;b=b|0;return Lz(a,b,Nn(b)|0)|0}function Qz(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;if((1073741807-d|0)>>>0<e>>>0)iz(b);j=b+8|0;if((a[j+3>>0]|0)<0)k=c[b>>2]|0;else k=b;if(d>>>0<536870887){l=e+d|0;e=d<<1;m=l>>>0<e>>>0?e:l;l=m>>>0<2?2:m+4&-4;if(l>>>0>1073741823)Da(40320,40357,1734,40406);else n=l}else n=1073741807;l=$y(n<<2)|0;if(g|0)Gp(l,k,g)|0;m=f-h-g|0;if(m|0)Gp(l+(g<<2)+(i<<2)|0,k+(g<<2)+(h<<2)|0,m)|0;if((d|0)!=1)bz(k);c[b>>2]=l;c[j>>2]=n|-2147483648;return}function Rz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=b+8|0;f=e+3|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h){i=c[b+4>>2]|0;j=(c[e>>2]&2147483647)+-1|0}else{i=g&255;j=1}if((i|0)==(j|0)){Qz(b,j,1,j,j,0,0);if((a[f>>0]|0)>-1)k=7;else k=8}else if(h)k=8;else k=7;if((k|0)==7){a[f>>0]=i+1;l=b}else if((k|0)==8){k=c[b>>2]|0;c[b+4>>2]=i+1;l=k}k=l+(i<<2)|0;c[k>>2]=d;c[k+4>>2]=0;return}function Sz(a){a=a|0;return}function Tz(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function Uz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;wb[c[(c[a>>2]|0)+12>>2]&15](f,a,b);if((c[f+4>>2]|0)==(c[d+4>>2]|0))g=(c[f>>2]|0)==(c[d>>2]|0);else g=0;l=e;return g|0}function Vz(a,b,d){a=a|0;b=b|0;d=d|0;return ((c[b>>2]|0)==(d|0)?(c[b+4>>2]|0)==(a|0):0)|0}function Wz(a){a=a|0;FA(a);return}function Xz(a){a=a|0;FA(a);bz(a);return}function Yz(a,b,d){a=a|0;b=b|0;d=d|0;b=wn(d)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;lz(a,b,kn(b)|0);return}function Zz(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;f=l;l=l+16|0;g=f;h=c[d>>2]|0;if(h|0){i=a[e+11>>0]|0;if(i<<24>>24<0)j=c[e+4>>2]|0;else j=i&255;if(!j)k=h;else{yz(e,40486)|0;k=c[d>>2]|0}h=c[d+4>>2]|0;wb[c[(c[h>>2]|0)+24>>2]&15](g,h,k);k=a[g+11>>0]|0;h=k<<24>>24<0;xz(e,h?c[g>>2]|0:g,h?c[g+4>>2]|0:k&255)|0;oz(g)};c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];b=0;while(1){if((b|0)==3)break;c[e+(b<<2)>>2]=0;b=b+1|0}l=f;return}function _z(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+32|0;f=e+12|0;g=e;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;lz(g,d,kn(d)|0);Zz(f,b,g);gz(a,f);oz(f);oz(g);c[a>>2]=20544;g=b;b=c[g+4>>2]|0;f=a+8|0;c[f>>2]=c[g>>2];c[f+4>>2]=b;l=e;return}function $z(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a=l;l=l+48|0;b=a+32|0;d=a+24|0;e=a+16|0;f=a;g=a+36|0;a=aA()|0;if(a|0?(h=c[a>>2]|0,h|0):0){a=h+48|0;i=c[a>>2]|0;j=c[a+4>>2]|0;if(!((i&-256|0)==1126902528&(j|0)==1129074247)){c[d>>2]=c[5140];bA(40575,d)}if((i|0)==1126902529&(j|0)==1129074247)k=c[h+44>>2]|0;else k=h+80|0;c[g>>2]=k;k=c[h>>2]|0;h=c[k+4>>2]|0;if(kb[c[(c[1700]|0)+16>>2]&31](6800,k,g)|0){k=c[g>>2]|0;g=c[5140]|0;j=tb[c[(c[k>>2]|0)+8>>2]&127](k)|0;c[f>>2]=g;c[f+4>>2]=h;c[f+8>>2]=j;bA(40489,f)}else{c[e>>2]=c[5140];c[e+4>>2]=h;bA(40534,e)}}bA(40613,b)}function aA(){var a=0,b=0;a=l;l=l+16|0;if(!(Ta(45720,3)|0)){b=Qa(c[11431]|0)|0;l=a;return b|0}else bA(40764,a);return 0}function bA(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=c[3388]|0;qn(b,a,e)|0;Ro(10,b)|0;Aa()}function cA(a){a=a|0;return}function dA(a){a=a|0;bz(a);return}function eA(a){a=a|0;return}function fA(a){a=a|0;return}function gA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+64|0;f=e;if((a|0)!=(b|0))if((b|0)!=0?(g=mA(b,6824,6808,0)|0,(g|0)!=0):0){b=f+4|0;h=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(h|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;Ab[c[(c[g>>2]|0)+28>>2]&31](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];i=1}else i=0;j=i}else j=0;else j=1;l=e;return j|0}function hA(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))lA(0,b,d,e,f);return}function iA(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(g=d+28|0,(c[g>>2]|0)!=1):0)c[g>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(g=d+20|0,(c[g>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[g>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function jA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))kA(0,b,d,e);return}function kA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}h=d+24|0;if((c[h>>2]|0)==2)c[h>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function lA(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;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;h=c[b>>2]|0;if(!h){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((h|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;a[d+54>>0]=1;break}h=d+24|0;b=c[h>>2]|0;if((b|0)==2){c[h>>2]=g;i=g}else i=b;if((i|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function mA(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+64|0;i=h;j=c[d>>2]|0;k=d+(c[j+-8>>2]|0)|0;m=c[j+-4>>2]|0;c[i>>2]=f;c[i+4>>2]=d;c[i+8>>2]=e;c[i+12>>2]=g;g=i+16|0;e=i+20|0;d=i+24|0;j=i+28|0;n=i+32|0;o=i+40|0;p=(m|0)==(f|0);q=g;r=q+36|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));b[g+36>>1]=0;a[g+38>>0]=0;a:do if(p){c[i+48>>2]=1;mb[c[(c[f>>2]|0)+20>>2]&15](f,i,k,k,1,0);s=(c[d>>2]|0)==1?k:0}else{nb[c[(c[m>>2]|0)+24>>2]&3](m,i,k,1,0);switch(c[i+36>>2]|0){case 0:{s=(c[o>>2]|0)==1&(c[j>>2]|0)==1&(c[n>>2]|0)==1?c[e>>2]|0:0;break a;break}case 1:break;default:{s=0;break a}}if((c[d>>2]|0)!=1?!((c[o>>2]|0)==0&(c[j>>2]|0)==1&(c[n>>2]|0)==1):0){s=0;break}s=c[g>>2]|0}while(0);l=h;return s|0}function nA(a){a=a|0;bz(a);return}function oA(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;if((a|0)==(c[b+8>>2]|0))lA(0,b,d,e,f);else{h=c[a+8>>2]|0;mb[c[(c[h>>2]|0)+20>>2]&15](h,b,d,e,f,g)}return}function pA(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;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){h=c[b+8>>2]|0;nb[c[(c[h>>2]|0)+24>>2]&3](h,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;j=d+52|0;a[j>>0]=0;k=d+53|0;a[k>>0]=0;l=c[b+8>>2]|0;mb[c[(c[l>>2]|0)+20>>2]&15](l,d,e,e,1,g);if(a[k>>0]|0)if(!(a[j>>0]|0)){m=1;n=13}else n=17;else{m=0;n=13}do if((n|0)==13){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(m){n=17;break}else{o=4;break}}if(m)n=17;else o=4}while(0);if((n|0)==17)o=3;c[i>>2]=o;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function qA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((a|0)==(c[b+8>>2]|0))kA(0,b,d,e);else{f=c[a+8>>2]|0;Ab[c[(c[f>>2]|0)+28>>2]&31](f,b,d,e)}return}function rA(a){a=a|0;return}function sA(){var a=0;a=l;l=l+16|0;if(!(za(45724,277)|0)){l=a;return}else bA(40813,a)}function tA(a){a=a|0;var b=0;b=l;l=l+16|0;Wo(a);if(!(Ya(c[11431]|0,0)|0)){l=b;return}else bA(40863,b)}function uA(){var a=0,b=0;a=aA()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)vA(c[b+12>>2]|0);vA(wA()|0)}function vA(a){a=a|0;var b=0;b=l;l=l+16|0;xb[a&3]();bA(40916,b)}function wA(){var a=0;a=c[5139]|0;c[5139]=a+0;return a|0}function xA(a){a=a|0;return}function yA(a){a=a|0;bz(a);return}function zA(a){a=a|0;return 40956}function AA(a){a=a|0;return}function BA(a){a=a|0;c[a>>2]=20672;EA(a+4|0);return}function CA(a){a=a|0;BA(a);bz(a);return}function DA(a){a=a|0;return c[a+4>>2]|0}function EA(a){a=a|0;var b=0,d=0;b=(c[a>>2]|0)+-4|0;d=c[b>>2]|0;c[b>>2]=d+-1;if((d+-1|0)<0)bz((c[a>>2]|0)+-12|0);return}function FA(a){a=a|0;c[a>>2]=20692;EA(a+4|0);return}function GA(a){a=a|0;FA(a);bz(a);return}function HA(a){a=a|0;return c[a+4>>2]|0}function IA(a){a=a|0;BA(a);bz(a);return}function JA(a){a=a|0;return}function KA(a){a=a|0;bz(a);return}function LA(a){a=a|0;return 41035}function MA(a){a=a|0;bz(a);return}function NA(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function OA(a){a=a|0;bz(a);return}function PA(d,e,f,g,h,i){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;if((d|0)==(c[e+8>>2]|0))lA(0,e,f,g,h);else{j=e+52|0;k=b[j>>1]|0;l=k&255;m=e+53|0;n=(k&65535)>>>8&255;k=c[d+12>>2]|0;o=d+16+(k<<3)|0;a[j>>0]=0;a[m>>0]=0;TA(d+16|0,e,f,g,h,i);a:do if((k|0)>1){p=e+24|0;q=d+8|0;r=e+54|0;s=d+24|0;do{if(a[r>>0]|0)break a;t=b[j>>1]|0;if(!((t&255)<<24>>24)){if((t&65535)>=256?(c[q>>2]&1|0)==0:0)break a}else{if((c[p>>2]|0)==1)break a;if(!(c[q>>2]&2))break a}a[j>>0]=0;a[m>>0]=0;TA(s,e,f,g,h,i);s=s+8|0}while(s>>>0<o>>>0)}while(0);a[j>>0]=l;a[m>>0]=n}return}function QA(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;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){h=c[b+12>>2]|0;i=b+16+(h<<3)|0;UA(b+16|0,d,e,f,g);j=b+24|0;if((h|0)<=1)break;h=c[b+8>>2]|0;if((h&2|0)==0?(k=d+36|0,(c[k>>2]|0)!=1):0){if(!(h&1)){h=d+54|0;l=j;while(1){if(a[h>>0]|0)break a;if((c[k>>2]|0)==1)break a;UA(l,d,e,f,g);l=l+8|0;if(l>>>0>=i>>>0)break a}}l=d+24|0;h=d+54|0;m=j;while(1){if(a[h>>0]|0)break a;if((c[k>>2]|0)==1?(c[l>>2]|0)==1:0)break a;UA(m,d,e,f,g);m=m+8|0;if(m>>>0>=i>>>0)break a}}m=d+54|0;l=j;while(1){if(a[m>>0]|0)break a;UA(l,d,e,f,g);l=l+8|0;if(l>>>0>=i>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(i=d+20|0,(c[i>>2]|0)!=(e|0)):0){c[d+32>>2]=f;l=d+44|0;if((c[l>>2]|0)==4)break;m=b+16+(c[b+12>>2]<<3)|0;j=d+52|0;k=d+53|0;h=d+54|0;n=b+8|0;o=d+24|0;p=0;q=b+16|0;r=0;b:while(1){if(q>>>0>=m>>>0){s=p;t=20;break}a[j>>0]=0;a[k>>0]=0;TA(q,d,e,e,1,g);if(a[h>>0]|0){s=p;t=20;break}do if(a[k>>0]|0){if(!(a[j>>0]|0))if(!(c[n>>2]&1)){s=1;t=20;break b}else{u=1;v=r;break}if((c[o>>2]|0)==1){t=25;break b}if(!(c[n>>2]&2)){t=25;break b}else{u=1;v=1}}else{u=p;v=r}while(0);p=u;q=q+8|0;r=v}do if((t|0)==20){if((!r?(c[i>>2]=e,q=d+40|0,c[q>>2]=(c[q>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[h>>0]=1;if(s){t=25;break}else{w=4;break}}if(s)t=25;else w=4}while(0);if((t|0)==25)w=3;c[l>>2]=w;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function RA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do if((b|0)!=(c[d+8>>2]|0)){g=c[b+12>>2]|0;h=b+16+(g<<3)|0;SA(b+16|0,d,e,f);if((g|0)>1){g=d+54|0;i=b+24|0;do{SA(i,d,e,f);if(a[g>>0]|0)break a;i=i+8|0}while(i>>>0<h>>>0)}}else kA(0,d,e,f);while(0);return}function SA(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[a+4>>2]|0;g=f>>8;if(!(f&1))h=g;else h=c[(c[d>>2]|0)+g>>2]|0;g=c[a>>2]|0;Ab[c[(c[g>>2]|0)+28>>2]&31](g,b,d+h|0,f&2|0?e:2);return}function TA(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;h=c[a+4>>2]|0;i=h>>8;if(!(h&1))j=i;else j=c[(c[e>>2]|0)+i>>2]|0;i=c[a>>2]|0;mb[c[(c[i>>2]|0)+20>>2]&15](i,b,d,e+j|0,h&2|0?f:2,g);return}function UA(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;g=c[a+4>>2]|0;h=g>>8;if(!(g&1))i=h;else i=c[(c[d>>2]|0)+h>>2]|0;h=c[a>>2]|0;nb[c[(c[h>>2]|0)+24>>2]&3](h,b,d+i|0,g&2|0?e:2,f);return}function VA(a){a=a|0;c[a>>2]=20732;return}function WA(b){b=b|0;var c=0;if((a[b>>0]|0)==1)c=0;else{a[b>>0]=1;c=1}return c|0}function XA(a){a=a|0;return}function YA(a){a=a|0;return}function ZA(a){a=a|0;c[a>>2]=20652;return}function _A(){var a=0;a=c[11432]|0;c[11432]=a+0;return a|0}function $A(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;c[f>>2]=c[d>>2];g=kb[c[(c[a>>2]|0)+16>>2]&31](a,b,f)|0;if(g)c[d>>2]=c[f>>2];l=e;return g&1|0}function aB(a){a=a|0;var b=0;if(!a)b=0;else b=(mA(a,6824,6960,0)|0)!=0;return b&1|0}function bB(){}function cB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (E=e,a-c>>>0|0)|0}function dB(a){a=+a;return a>=0.0?+F(a+.5):+S(a-.5)}function eB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}g=f&-4|0;h=g-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(h|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)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return f-e|0}function fB(a){a=a|0;return 0}function gB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (E=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function hB(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){E=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}E=0;return b>>>c-32|0}function iB(a){a=a|0;return 0}function jB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Ma(b|0,d|0,e|0)|0;f=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}h=g&-4|0;e=h-64|0;while((b|0)<=(e|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)<(h|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{h=g-4|0;while((b|0)<(h|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 f|0}function kB(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 lB(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0,G=0,H=0;g=a;h=b;i=h;j=d;k=e;l=k;if(!i){m=(f|0)!=0;if(!l){if(m){c[f>>2]=(g>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (E=n,o)|0}else{if(!m){n=0;o=0;return (E=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;o=0;return (E=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(W(l|0)|0)-(W(i|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=g>>>(q>>>0)&s|i<<r;v=i>>>(q>>>0)&s;w=0;x=g<<r;break}if(!f){n=0;o=0;return (E=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (E=n,o)|0}r=j-1|0;if(r&j|0){s=(W(j|0)|0)+33-(W(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<<p|g>>>(s>>>0))&A;v=A&i>>>(s>>>0);w=g<<q&y;x=(i<<q|g>>>(z>>>0))&y|g<<p&s-33>>31;break}if(f|0){c[f>>2]=r&g;c[f+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (E=n,o)|0}else{r=kB(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (E=n,o)|0}}else{if(m){if(f|0){c[f>>2]=(i>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (E=n,o)|0}if(!g){if(f|0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (E=n,o)|0}r=l-1|0;if(!(r&l)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=r&i|b&0}n=0;o=i>>>((kB(l|0)|0)>>>0);return (E=n,o)|0}r=(W(l|0)|0)-(W(i|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=i<<p|g>>>(s>>>0);v=i>>>(s>>>0);w=0;x=g<<p;break}if(!f){n=0;o=0;return (E=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (E=n,o)|0}while(0);if(!t){B=x;C=w;D=v;F=u;G=0;H=0}else{b=d|0|0;d=k|e&0;e=gB(b|0,d|0,-1,-1)|0;k=E;h=x;x=w;w=v;v=u;u=t;t=0;do{a=h;h=x>>>31|h<<1;x=t|x<<1;g=v<<1|a>>>31|0;a=v>>>31|w<<1|0;cB(e|0,k|0,g|0,a|0)|0;i=E;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=cB(g|0,a|0,l&b|0,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&d|0)|0;w=E;u=u-1|0}while((u|0)!=0);B=h;C=x;D=w;F=v;G=0;H=t}t=C;C=0;if(f|0){c[f>>2]=F;c[f+4>>2]=D}n=(t|0)>>>31|(B|C)<<1|(C<<1|t>>>31)&0|G;o=(t<<1|0>>>31)&-2|H;return (E=n,o)|0}function mB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return lB(a,b,c,d,0)|0}function nB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=T(d,c)|0;f=a>>>16;a=(e>>>16)+(T(d,f)|0)|0;d=b>>>16;b=T(d,c)|0;return (E=(a>>>16)+(T(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function oB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=nB(e,a)|0;f=E;return (E=(T(b,a)|0)+(T(d,e)|0)+f|f&0,c|0|0)|0}function pB(a){a=a|0;var b=0,d=0;a=a+15&-16|0;b=c[i>>2]|0;d=b+a|0;if((a|0)>0&(d|0)<(b|0)|(d|0)<0){$()|0;Ja(12);return -1}c[i>>2]=d;if((d|0)>(_()|0)?(Z()|0)==0:0){Ja(12);c[i>>2]=b;return -1}return b|0}function qB(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){E=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}E=a<<c-32;return 0}function rB(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 jB(b,c,d)|0;return b|0}function sB(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;g=f|0;lB(a,b,d,e,g)|0;l=f;return (E=c[g+4>>2]|0,c[g>>2]|0)|0}function tB(a){a=a|0;return 0}function uB(){return 0}function vB(a){a=+a;return a>=0.0?+F(a+.5):+S(a-.5)}function wB(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return jb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function xB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kb[a&31](b|0,c|0,d|0)|0}function yB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;lb[a&3](b|0,c|0,+d)}function zB(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;mb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function AB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;nb[a&3](b|0,c|0,d|0,e|0,f|0)}function BB(a,b,c){a=a|0;b=b|0;c=c|0;return +ob[a&3](b|0,c|0)}function CB(a,b){a=a|0;b=b|0;return +pb[a&3](b|0)}function DB(a,b){a=a|0;b=b|0;qb[a&511](b|0)}function EB(a,b,c){a=a|0;b=b|0;c=c|0;rb[a&127](b|0,c|0)}function FB(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return sb[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function GB(a,b){a=a|0;b=b|0;return tb[a&127](b|0)|0}function HB(a,b,c){a=a|0;b=b|0;c=+c;return ub[a&3](b|0,+c)|0}function IB(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;return vb[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function JB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;wb[a&15](b|0,c|0,d|0)}function KB(a){a=a|0;xb[a&3]()}function LB(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return yb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function MB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return zb[a&15](b|0,c|0,d|0,e|0)|0}function NB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ab[a&31](b|0,c|0,d|0,e|0)}function OB(a,b,c){a=a|0;b=b|0;c=c|0;return Bb[a&63](b|0,c|0)|0}function PB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Cb[a&7](b|0,c|0,d|0,e|0,+f)|0}function QB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Db[a&31](b|0,c|0,d|0,e|0,f|0)|0}function RB(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;X(0);return 0}function SB(a,b,c){a=a|0;b=b|0;c=c|0;X(1);return 0}function TB(a,b,c){a=a|0;b=b|0;c=+c;X(2)}function UB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X(3)}function VB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;X(4)}function WB(a,b){a=a|0;b=b|0;X(5);return 0.0}function XB(a){a=a|0;X(6);return 0.0}function YB(a){a=a|0;X(7)}function ZB(a,b){a=a|0;b=b|0;X(8)}function _B(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;X(9);return 0}function $B(a){a=a|0;X(10);return 0}function aC(a,b){a=a|0;b=+b;X(11);return 0}function bC(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;X(12);return 0}function cC(a,b,c){a=a|0;b=b|0;c=c|0;X(13)}function dC(){X(14)}function eC(){cb()}function fC(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;X(15);return 0}function gC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;X(16);return 0}function hC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;X(17)}function iC(a,b){a=a|0;b=b|0;X(18);return 0}function jC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;X(19);return 0}function kC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;X(20);return 0} // EMSCRIPTEN_END_FUNCS var jb=[RB,Hu,Mu,Gv,Hv,Qv,Rv,RB];var kb=[SB,hp,mp,qp,yg,Qg,Om,Pm,Um,Vm,Cn,vp,Ap,Ep,Uz,Vz,Qq,Vq,mr,sr,iw,nw,hx,jx,mx,Ex,Jx,Lx,Ox,gA,NA,co];var lb=[TB,ih,Gi,_j];var mb=[UB,Wf,We,zg,Rg,ip,wp,jw,ow,hA,oA,PA,UB,UB,UB,UB];var nb=[VB,iA,pA,QA];var ob=[WB,hh,Zj,WB];var pb=[XB,tk,zl,Ll];var qb=[YB,pc,rc,qc,wc,me,ne,oe,pe,ie,je,Wg,Xg,Yg,Zg,_g,$g,Hp,Ip,Jp,Kp,Pp,Qp,Rp,Sp,$f,ag,bg,cg,Uf,Vf,Se,Kf,hf,jf,Te,Ue,Df,Ef,Ff,Gf,Bf,Cf,of,qf,sf,tf,uf,wf,xf,yf,Pf,Qf,Rf,Sf,Lf,Mf,Nf,Of,JA,wg,sg,tg,ug,vg,fg,gg,jg,kg,lg,ng,og,pg,ep,xg,Hg,Ig,Jg,Kg,Ce,Og,Xp,Yp,Zp,_p,$p,aq,ah,bh,oh,Dh,Eh,Jh,Wh,Xh,bi,ni,oi,ui,Ei,Fi,Ki,bj,cj,jj,kj,dk,rj,sj,uj,Hj,Ij,Pj,Qj,Vk,Wk,Xk,Yk,Bk,Uk,Mk,Nk,Ok,Pk,Lk,dl,el,fl,nl,ol,pl,Cl,Dl,El,Fl,Bl,Ol,Pl,Ql,Rl,Nl,am,bm,cm,dm,Zl,$l,_l,im,jm,km,lm,pm,qm,rm,sm,$o,ap,bp,dp,fp,sp,tp,Lp,Mp,Np,Op,Tp,Up,Vp,Wp,bq,cq,Sz,dq,Nq,Sq,Yq,cr,hr,ir,jr,or,pr,ur,vr,ks,ls,Ls,Ms,at,bt,nt,ot,Xt,Yt,Fu,Gu,Ku,Lu,Ou,Pu,Zu,_u,iv,jv,tv,uv,Ev,Fv,Ov,Pv,Wv,Xv,aw,bw,gw,hw,lw,mw,qw,Cw,rw,Rw,Sw,bx,cx,ex,fx,ox,px,vx,wx,Cx,Dx,Qx,Rx,Sx,Wz,Xz,cA,dA,eA,fA,nA,xA,yA,BA,CA,FA,GA,IA,KA,MA,OA,oz,Lb,Mb,Nb,Ob,Nj,Fk,Dk,Sm,Wm,Iq,Mr,Nr,Ft,Et,Dt,nu,mu,lu,Kz,Iv,Wo,tA,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB,YB];var rb=[ZB,Tb,Ub,jc,kc,mc,nc,gp,Ve,af,bf,df,Pg,dh,eh,gh,jh,kh,lh,mh,Fh,Gh,Hh,Kh,Mh,Yh,Zh,_h,$h,ci,ei,pi,qi,ri,si,wi,yi,Sj,Tj,Uj,Vj,Wj,Yj,$j,ak,Hi,Ii,Ni,Pi,bk,jk,lk,Tk,Jk,al,kl,yl,Kl,Xl,up,Oq,Tq,Xq,br,Su,Tu,Uu,Vu,Xu,Yu,bv,cv,dv,ev,gv,hv,mv,nv,ov,pv,rv,sv,xv,yv,zv,Av,Cv,Dv,kw,pw,sx,tx,ux,zx,Ax,Bx,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB,ZB];var sb=[_B,wr,xr,yr,zr,Ar,Br,Cr,Dr,Er,Fr,Gr,ms,ns,os,ps,qs,rs,ss,ts,us,vs,ws,Ps,Rs,et,gt,qt,rt,st,tt,ut,_t,$t,au,bu,cu,Zv,dw,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B,_B];var tb=[$B,kp,lp,Yf,op,Ye,Ze,cf,ef,ff,gf,HA,rf,vf,hg,ig,mg,np,Mg,Ng,Tg,ch,fh,ph,qh,rh,sh,th,vi,Rj,Xj,ek,Li,Mi,hk,ik,fk,gk,vj,wj,xj,Qk,uk,vk,wk,xk,zk,Gk,Kk,Zk,bl,hl,ll,vl,Al,Hl,Ml,Ul,Yl,Nm,yp,zp,Bp,Cp,eq,Pq,Uq,Zq,_q,dr,er,pt,wt,xt,yt,zt,At,Bt,Ct,Zt,eu,fu,gu,hu,iu,ju,ku,Qu,Ru,Wu,$u,av,fv,kv,lv,qv,vv,wv,Bv,vw,ww,yw,Nw,Ow,Qw,qx,rx,xx,yx,Gw,Hw,Jw,Ww,Xw,Zw,zA,DA,LA,$B,$B,$B,$B,$B,$B,$B,$B,$B,$B];var ub=[aC,Hc,Ic,Jc];var vb=[bC,Yv,cw,bC];var wb=[cC,Vb,lc,oc,uc,vc,zc,Ac,le,Tz,fq,cC,cC,cC,cC,cC];var xb=[dC,eC,$z,sA];var yb=[fC,vt,du,sw,tw,Kw,Lw,Dw,Ew,Tw,Uw,fC,fC,fC,fC,fC];var zb=[gC,nh,Ih,ai,ti,Ji,lj,tj,ck,lx,Fx,Gx,Hx,Nx,gC,gC];var Ab=[hC,Xf,Xe,Ag,Sg,Lh,di,xi,Oi,mj,yj,kk,jp,xp,lr,rr,jA,qA,RA,hC,hC,hC,hC,hC,hC,hC,hC,hC,hC,hC,hC,hC];var Bb=[iC,sc,tc,xc,yc,Uy,ke,Zf,_f,_e,$e,pp,rp,Lg,Ug,Vg,Rk,Sk,yk,Ak,Hk,Ik,_k,$k,cl,il,jl,ml,wl,xl,Il,Jl,Vl,Wl,Dp,Fp,Rq,Wq,$q,fr,gx,ix,kx,Ix,Kx,Mx,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC,iC];var Cb=[jC,Ss,Ts,ht,it,jC,jC,jC];var Db=[kC,kr,qr,Ns,Os,Qs,Us,ct,dt,ft,jt,uw,xw,Mw,Pw,nx,Px,Fw,Iw,Vw,Yw,kC,kC,kC,kC,kC,kC,kC,kC,kC,kC,kC];return{_roundf:dB,_piperRequestJson:Pb,___udivdi3:mB,_bitshift64Lshr:hB,_bitshift64Shl:qB,_piperProcessRaw:Rb,_fflush:$n,___cxa_is_pointer_type:aB,_llvm_cttz_i32:kB,_sbrk:pB,_memcpy:jB,___muldi3:oB,___uremdi3:sB,_i64Subtract:cB,___udivmoddi4:lB,_i64Add:gB,_piperFreeJson:Sb,_pthread_self:uB,_pthread_mutex_unlock:tB,_pthread_cond_broadcast:iB,___errno_location:Rm,___muldsi3:nB,___cxa_can_catch:$A,_free:Wo,_round:vB,_memmove:rB,_malloc:Vo,_pthread_mutex_lock:fB,_memset:eB,__GLOBAL__I_000101:Fq,__GLOBAL__sub_I_nnls_chroma_cpp:Kc,__GLOBAL__sub_I_PluginLoader_cpp:Mj,__GLOBAL__sub_I_PluginSummarisingAdapter_cpp:Oj,__GLOBAL__sub_I_iostream_cpp:Gq,runPostSets:bB,stackAlloc:Eb,stackSave:Fb,stackRestore:Gb,establishStackSpace:Hb,setThrew:Ib,setTempRet0:Jb,getTempRet0:Kb,dynCall_iiiiiiii:wB,dynCall_iiii:xB,dynCall_viid:yB,dynCall_viiiiii:zB,dynCall_viiiii:AB,dynCall_dii:BB,dynCall_di:CB,dynCall_vi:DB,dynCall_vii:EB,dynCall_iiiiiii:FB,dynCall_ii:GB,dynCall_iid:HB,dynCall_iiiiiid:IB,dynCall_viii:JB,dynCall_v:KB,dynCall_iiiiiiiii:LB,dynCall_iiiii:MB,dynCall_viiii:NB,dynCall_iii:OB,dynCall_iiiiid:PB,dynCall_iiiiii:QB}}) // EMSCRIPTEN_END_ASM (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _roundf=Module["_roundf"]=asm["_roundf"];var _piperRequestJson=Module["_piperRequestJson"]=asm["_piperRequestJson"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _malloc=Module["_malloc"]=asm["_malloc"];var _fflush=Module["_fflush"]=asm["_fflush"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _piperFreeJson=Module["_piperFreeJson"]=asm["_piperFreeJson"];var _pthread_self=Module["_pthread_self"]=asm["_pthread_self"];var _pthread_mutex_unlock=Module["_pthread_mutex_unlock"]=asm["_pthread_mutex_unlock"];var __GLOBAL__I_000101=Module["__GLOBAL__I_000101"]=asm["__GLOBAL__I_000101"];var __GLOBAL__sub_I_nnls_chroma_cpp=Module["__GLOBAL__sub_I_nnls_chroma_cpp"]=asm["__GLOBAL__sub_I_nnls_chroma_cpp"];var __GLOBAL__sub_I_iostream_cpp=Module["__GLOBAL__sub_I_iostream_cpp"]=asm["__GLOBAL__sub_I_iostream_cpp"];var _pthread_cond_broadcast=Module["_pthread_cond_broadcast"]=asm["_pthread_cond_broadcast"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var __GLOBAL__sub_I_PluginLoader_cpp=Module["__GLOBAL__sub_I_PluginLoader_cpp"]=asm["__GLOBAL__sub_I_PluginLoader_cpp"];var _round=Module["_round"]=asm["_round"];var _memmove=Module["_memmove"]=asm["_memmove"];var _piperProcessRaw=Module["_piperProcessRaw"]=asm["_piperProcessRaw"];var __GLOBAL__sub_I_PluginSummarisingAdapter_cpp=Module["__GLOBAL__sub_I_PluginSummarisingAdapter_cpp"]=asm["__GLOBAL__sub_I_PluginSummarisingAdapter_cpp"];var _pthread_mutex_lock=Module["_pthread_mutex_lock"]=asm["_pthread_mutex_lock"];var _memset=Module["_memset"]=asm["_memset"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iiiiiid=Module["dynCall_iiiiiid"]=asm["dynCall_iiiiiid"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiid=Module["dynCall_iiiiid"]=asm["dynCall_iiiiid"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["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){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run() return Module; }; });