-
Notifications
You must be signed in to change notification settings - Fork 0
/
libspeexdsp_jitter.js
16 lines (9 loc) · 97 KB
/
libspeexdsp_jitter.js
1
2
3
4
5
6
7
8
9
10
11
12
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[null],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();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_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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}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)}function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}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}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}function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement)return false;updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}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}function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}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}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+3456;__ATINIT__.push();allocate([5,0,0,0,0,0,0,0,0,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,4,0,0,0,5,0,0,0,116,13,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,119,97,114,110,105,110,103,58,32,37,115,32,37,100,10,0,85,110,107,110,111,119,110,32,106,105,116,116,101,114,95,98,117,102,102,101,114,95,99,116,108,32,114,101,113,117,101,115,116,58,32,0,70,97,116,97,108,32,40,105,110,116,101,114,110,97,108,41,32,101,114,114,111,114,32,105,110,32,37,115,44,32,108,105,110,101,32,37,100,58,32,37,115,10,0,106,105,116,116,101,114,46,99,0,97,115,115,101,114,116,105,111,110,32,102,97,105,108,101,100,58,32,112,111,115,32,60,61,32,116,98,45,62,102,105,108,108,101,100,32,38,38,32,112,111,115,32,60,32,77,65,88,95,84,73,77,73,78,71,83,0,106,105,116,116,101,114,95,98,117,102,102,101,114,95,103,101,116,40,41,58,32,112,97,99,107,101,116,32,116,111,111,32,108,97,114,103,101,32,116,111,32,102,105,116,46,32,83,105,122,101,32,105,115,0,106,105,116,116,101,114,95,98,117,102,102,101,114,95,103,101,116,40,41,32,100,105,115,99,97,114,100,105,110,103,32,110,111,110,45,122,101,114,111,32,115,116,97,114,116,95,111,102,102,115,101,116,0,106,105,116,116,101,114,32,98,117,102,102,101,114,32,115,101,101,115,32,110,101,103,97,116,105,118,101,32,98,117,102,102,101,114,105,110,103,44,32,121,111,117,114,32,99,111,100,101,32,109,105,103,104,116,32,98,101,32,98,114,111,107,101,110,46,32,86,97,108,117,101,32,105,115,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,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,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;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 _abort(){Module["abort"]()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;var SYSCALLS={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}),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 ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_memmove"]=_memmove;function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j<len;j++){___syscall146.printChar(stream,HEAPU8[ptr+j])}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}__ATEXIT__.push((function(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}));STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_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 jsCall_ii(index,a1){return Runtime.functionPointers[index](a1)}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 jsCall_iiii(index,a1,a2,a3){return Runtime.functionPointers[index](a1,a2,a3)}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 jsCall_vi(index,a1){Runtime.functionPointers[index](a1)}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_ii":invoke_ii,"jsCall_ii":jsCall_ii,"invoke_iiii":invoke_iiii,"jsCall_iiii":jsCall_iiii,"invoke_vi":invoke_vi,"jsCall_vi":jsCall_vi,"_pthread_cleanup_pop":_pthread_cleanup_pop,"_sysconf":_sysconf,"_pthread_self":_pthread_self,"_abort":_abort,"___setErrNo":___setErrNo,"___syscall6":___syscall6,"_sbrk":_sbrk,"_time":_time,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall140":___syscall140,"_exit":_exit,"__exit":__exit,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"almost asm";var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0.0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_ii;var na=env.jsCall_ii;var oa=env.invoke_iiii;var pa=env.jsCall_iiii;var qa=env.invoke_vi;var ra=env.jsCall_vi;var sa=env._pthread_cleanup_pop;var ta=env._sysconf;var ua=env._pthread_self;var va=env._abort;var wa=env.___setErrNo;var xa=env.___syscall6;var ya=env._sbrk;var za=env._time;var Aa=env._pthread_cleanup_push;var Ba=env._emscripten_memcpy_big;var Ca=env.___syscall140;var Da=env._exit;var Ea=env.__exit;var Fa=env.___syscall146;var Ga=0.0;function Ha(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
// EMSCRIPTEN_START_FUNCS
function La(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function Ma(){return r|0}function Na(a){a=a|0;r=a}function Oa(a,b){a=a|0;b=b|0;r=a;s=b}function Pa(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function Qa(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function Ra(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function Sa(a){a=a|0;L=a}function Ta(){return L|0}function Ua(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=sb(6428)|0;if(!f){f=0;return f|0}if(k[f+-4>>2]&3|0)xb(f|0,0,6428)|0;k[f+5620>>2]=a;k[f+5624>>2]=a;k[f+5636>>2]=50;d=f+5616|0;k[f+5644>>2]=1;k[f+6412>>2]=4;k[f+6404>>2]=1e3;k[f+6408>>2]=333;e=0;do{c=f+16+(e*24|0)|0;a=k[c>>2]|0;if(a|0){b=k[d>>2]|0;if(!b)tb(a);else Ka[b&7](a);k[c>>2]=0}e=e+1|0}while((e|0)!=200);k[f>>2]=0;k[f+8>>2]=0;k[f+5628>>2]=1;k[f+6424>>2]=0;k[f+12>>2]=0;k[f+6420>>2]=32e3;e=f+5648|0;k[e>>2]=0;k[f+5652>>2]=0;k[f+6392>>2]=e;e=f+5896|0;k[e>>2]=0;k[f+5900>>2]=0;k[f+6396>>2]=e;e=f+6144|0;k[e>>2]=0;k[f+6148>>2]=0;k[f+6400>>2]=e;return f|0}function Va(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;d=e;do switch(b|0){case 0:{k[a+5632>>2]=k[c>>2];b=0;break}case 1:{k[c>>2]=k[a+5632>>2];b=0;break}case 3:{b=0;d=0;do{if(k[a+16+(d*24|0)>>2]|0)b=(((k[a>>2]|0)-(k[a+16+(d*24|0)+8>>2]|0)|0)<1&1)+b|0;d=d+1|0}while((d|0)!=200);k[c>>2]=b;b=0;break}case 4:{k[a+5616>>2]=c;b=0;break}case 5:{k[c>>2]=k[a+5616>>2];b=0;break}case 6:{k[a+5620>>2]=k[c>>2];b=0;break}case 7:{k[c>>2]=k[a+5620>>2];b=0;break}case 8:{k[a+5624>>2]=k[c>>2];b=0;break}case 9:{k[c>>2]=k[a+5624>>2];b=0;break}case 10:{b=k[c>>2]|0;k[a+6412>>2]=b;b=4e3/(b|0)|0;k[a+6404>>2]=b;k[a+6408>>2]=(b|0)/3|0;b=0;break}case 11:{k[c>>2]=k[a+6412>>2];b=0;break}case 12:{k[a+6416>>2]=k[c>>2];b=0;break}case 13:{k[c>>2]=k[a+6416>>2];b=0;break}default:{k[d>>2]=136;k[d+4>>2]=b;jb(0,120,d);b=-1}}while(0);r=e;return b|0}function Wa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+5616|0;f=0;do{d=a+16+(f*24|0)|0;b=k[d>>2]|0;if(b|0){c=k[e>>2]|0;if(!c)tb(b);else Ka[c&7](b);k[d>>2]=0}f=f+1|0}while((f|0)!=200);k[a>>2]=0;k[a+8>>2]=0;k[a+5628>>2]=1;k[a+6424>>2]=0;k[a+12>>2]=0;k[a+6420>>2]=32e3;f=a+5648|0;k[f>>2]=0;k[a+5652>>2]=0;k[a+6392>>2]=f;f=a+5896|0;k[f>>2]=0;k[a+5900>>2]=0;k[a+6396>>2]=f;f=a+6144|0;k[f>>2]=0;k[a+6148>>2]=0;k[a+6400>>2]=f;return}function Xa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+5616|0;f=0;do{d=a+16+(f*24|0)|0;b=k[d>>2]|0;if(b|0){c=k[e>>2]|0;if(!c)tb(b);else Ka[c&7](b);k[d>>2]=0}f=f+1|0}while((f|0)!=200);tb(a);return}function Ya(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0;n=a+5628|0;if(!(k[n>>2]|0)){f=a+5616|0;g=0;do{e=a+16+(g*24|0)|0;c=k[e>>2]|0;if(c|0?((k[a+16+(g*24|0)+12>>2]|0)+(k[a+16+(g*24|0)+8>>2]|0)-(k[a>>2]|0)|0)<1:0){d=k[f>>2]|0;if(!d)tb(c);else Ka[d&7](c);k[e>>2]=0}g=g+1|0}while((g|0)!=200);if((k[n>>2]|0)==0?(h=(k[b+8>>2]|0)-(k[a+8>>2]|0)|0,(h|0)<0):0){Za(a,h-(k[a+5632>>2]|0)|0);m=1}else m=0}else m=0;h=a+6424|0;if((k[h>>2]|0)<=20)if((k[n>>2]|0)==0?((k[b+12>>2]|0)+(k[b+8>>2]|0)+(k[a+5620>>2]|0)-(k[a>>2]|0)|0)<=-1:0)return;else c=0;else{f=a+5616|0;g=0;do{e=a+16+(g*24|0)|0;c=k[e>>2]|0;if(c|0){d=k[f>>2]|0;if(!d)tb(c);else Ka[d&7](c);k[e>>2]=0}g=g+1|0}while((g|0)!=200);k[a>>2]=0;k[a+8>>2]=0;k[n>>2]=1;k[h>>2]=0;k[a+12>>2]=0;k[a+6420>>2]=32e3;c=a+5648|0;k[c>>2]=0;k[a+5652>>2]=0;k[a+6392>>2]=c;c=a+5896|0;k[c>>2]=0;k[a+5900>>2]=0;k[a+6396>>2]=c;c=a+6144|0;k[c>>2]=0;k[a+6148>>2]=0;k[a+6400>>2]=c;c=0}while(1){if(!(k[a+16+(c*24|0)>>2]|0)){g=c;break}c=c+1|0;if((c|0)>=200){l=26;break}}if((l|0)==26)if((c|0)==200){d=k[a+24>>2]|0;g=0;e=1;while(1){c=k[a+16+(e*24|0)+8>>2]|0;f=(c-d|0)<0?1:(k[a+16+(g*24|0)>>2]|0)==0;g=f?e:g;e=e+1|0;if((e|0)==200)break;else d=f?c:d}c=k[a+5616>>2]|0;e=a+16+(g*24|0)|0;d=k[e>>2]|0;if(!c)tb(d);else Ka[c&7](d);k[e>>2]=0}else g=c;if(!(k[a+5616>>2]|0)){h=b+4|0;c=k[h>>2]|0;e=(c|0)==0;d=sb(c)|0;if(d|0?k[d+-4>>2]&3|0:0)xb(d|0,0,c|0)|0;f=a+16+(g*24|0)|0;k[f>>2]=d;if(!e){i[d>>0]=i[k[b>>2]>>0]|0;c=k[h>>2]|0;if(c>>>0>1){d=1;do{i[(k[f>>2]|0)+d>>0]=i[(k[b>>2]|0)+d>>0]|0;d=d+1|0;c=k[h>>2]|0}while(d>>>0<c>>>0)}}else c=0}else{k[a+16+(g*24|0)>>2]=k[b>>2];c=k[b+4>>2]|0}k[a+16+(g*24|0)+8>>2]=k[b+8>>2];k[a+16+(g*24|0)+12>>2]=k[b+12>>2];k[a+16+(g*24|0)+4>>2]=c;j[a+16+(g*24|0)+16>>1]=j[b+16>>1]|0;k[a+16+(g*24|0)+20>>2]=k[b+20>>2];if(!(k[n>>2]|m)){k[a+4816+(g<<2)>>2]=k[a+8>>2];return}else{k[a+4816+(g<<2)>>2]=0;return}}function Za(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;e=(b|0)<-32767?-32767:b;e=(e|0)>32767?32767:e;b=a+6392|0;g=k[b>>2]|0;d=g+4|0;c=k[d>>2]|0;a:do if((c|0)<(k[a+6408>>2]|0)){a=k[g>>2]|0;b=c+1|0;c=e<<16>>16;if((a|0)>39)if((c|0)<(k[g+8+(a+-1<<2)>>2]|0))b=0;else{k[d>>2]=b;r=i;return}else if((a|0)>0)b=0;else{f=g;d=c;e=g;b=0;break}while(1){if((c|0)<(k[g+8+(b<<2)>>2]|0)){f=g;d=c;e=g;break a}b=b+1|0;if((b|0)>=(a|0)){f=g;d=c;e=g;break}}}else{f=a+6400|0;c=k[f>>2]|0;a=a+6396|0;k[f>>2]=k[a>>2];k[a>>2]=g;k[b>>2]=c;k[c>>2]=0;k[c+4>>2]=0;a=0;f=c;d=e<<16>>16;e=c;b=0}while(0);if(!((b|0)<40&(a|0)>=(b|0))){k[h>>2]=215;k[h+4>>2]=113;k[h+8>>2]=224;jb(0,172,h);Da(1)}if((a|0)>(b|0)){h=a-b+(((a|0)==40)<<31>>31)|0;g=b+1|0;c=f+8+(b<<2)|0;Bb(f+8+(g<<2)|0,c|0,h<<2|0)|0;b=f+168+(b<<1)|0;Bb(f+168+(g<<1)|0,b|0,h<<1|0)|0}else{c=f+8+(b<<2)|0;b=f+168+(b<<1)|0}k[c>>2]=d;h=f+4|0;g=k[h>>2]|0;j[b>>1]=g;k[h>>2]=g+1;b=k[e>>2]|0;if((b|0)>=40){r=i;return}k[e>>2]=b+1;r=i;return}function _a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;t=w+8|0;q=w;u=(d|0)!=0;if(u)k[d>>2]=0;h=a+5628|0;do if(!(k[h>>2]|0)){n=k[a>>2]|0;v=a}else{e=0;g=0;f=0;do{if(k[a+16+(g*24|0)>>2]|0){v=k[a+16+(g*24|0)+8>>2]|0;s=(e|0)==0|(v-f|0)<0;e=s?1:e;f=s?v:f}g=g+1|0}while((g|0)!=200);if(e|0){k[h>>2]=0;k[a>>2]=f;k[a+8>>2]=f;n=f;v=a;break}k[b+8>>2]=0;k[b+12>>2]=k[a+5640>>2];a=1;r=w;return a|0}while(0);s=a+4|0;k[s>>2]=n;f=a+5640|0;e=k[f>>2]|0;if(!e)e=0;else{k[b+8>>2]=n;k[b+12>>2]=e;k[v>>2]=n+e;k[b+4>>2]=0;k[f>>2]=0;k[a+12>>2]=e-c;a=2;r=w;return a|0}while(1){if((k[a+16+(e*24|0)>>2]|0?(k[a+16+(e*24|0)+8>>2]|0)==(n|0):0)?((k[a+16+(e*24|0)+12>>2]|0)-c|0)>-1:0){o=36;break}e=e+1|0;if((e|0)>=200){o=17;break}}a:do if((o|0)==17)if((e|0)==200){e=0;do{if((k[a+16+(e*24|0)>>2]|0?(l=k[a+16+(e*24|0)+8>>2]|0,(l-n|0)<1):0)?(l-c-n+(k[a+16+(e*24|0)+12>>2]|0)|0)>-1:0){o=36;break a}e=e+1|0}while((e|0)<200);if((e|0)==200){e=0;do{if((k[a+16+(e*24|0)>>2]|0?(m=(k[a+16+(e*24|0)+8>>2]|0)-n|0,(m|0)<1):0)?(m+(k[a+16+(e*24|0)+12>>2]|0)|0)>0:0){o=36;break a}e=e+1|0}while((e|0)<200);if((e|0)==200){l=0;f=0;g=0;h=0;m=0;while(1){do if((k[a+16+(m*24|0)>>2]|0)!=0?(p=k[a+16+(m*24|0)+8>>2]|0,(p-c-n|0)<0&(p-n|0)>-1):0){if(!((h|0)==0|(p-f|0)<0)){if((p|0)!=(f|0)){e=l;break}e=k[a+16+(m*24|0)+12>>2]|0;if((e-l|0)<=0){e=l;break}}else e=k[a+16+(m*24|0)+12>>2]|0;f=p;g=m;h=1}else e=l;while(0);m=m+1|0;if((m|0)==200)break;else l=e}e=(h|0)==0?200:g;f=a+6424|0;if((e|0)==200){k[f>>2]=(k[f>>2]|0)+1;e=$a(a)|0;if(e<<16>>16>=0){f=k[v>>2]|0;k[b+8>>2]=f;e=k[a+5624>>2]|0;if((c|0)<0){c=c-e+1|0;e=c-((c|0)%(e|0)|0)|0}else e=c-((c|0)%(e|0)|0)|0;k[b+12>>2]=e;k[v>>2]=f+e;k[b+4>>2]=0;k[a+12>>2]=0;a=1;r=w;return a|0}h=0-(e<<16>>16)|0;g=h<<16>>16;e=k[a+6392>>2]|0;if((k[e>>2]|0)>0){f=0;do{d=e+8+(f<<2)|0;k[d>>2]=(k[d>>2]|0)+g;f=f+1|0}while((f|0)<(k[e>>2]|0))}e=k[a+6396>>2]|0;if((k[e>>2]|0)>0){f=0;do{d=e+8+(f<<2)|0;k[d>>2]=(k[d>>2]|0)+g;f=f+1|0}while((f|0)<(k[e>>2]|0))}e=k[a+6400>>2]|0;if((k[e>>2]|0)>0){f=0;do{d=e+8+(f<<2)|0;k[d>>2]=(k[d>>2]|0)+g;f=f+1|0}while((f|0)<(k[e>>2]|0))}k[b+8>>2]=k[v>>2];k[b+12>>2]=h;k[b+4>>2]=0;k[a+12>>2]=h-c;a=2;r=w;return a|0}else{l=e;e=f}}else o=36}else o=36}else o=36;while(0);if((o|0)==36){l=e;e=a+6424|0}k[e>>2]=0;e=k[a+4816+(l<<2)>>2]|0;if(e|0)Za(a,(k[a+16+(l*24|0)+8>>2]|0)-e-(k[a+5632>>2]|0)|0);e=a+16+(l*24|0)|0;if(!(k[a+5616>>2]|0)){f=k[a+16+(l*24|0)+4>>2]|0;h=b+4|0;if(f>>>0>(k[h>>2]|0)>>>0){k[q>>2]=281;k[q+4>>2]=f;jb(0,120,q);g=k[h>>2]|0}else{k[h>>2]=f;g=f}f=k[e>>2]|0;if(g){g=0;do{i[(k[b>>2]|0)+g>>0]=i[f+g>>0]|0;g=g+1|0;f=k[e>>2]|0}while(g>>>0<(k[h>>2]|0)>>>0)}tb(f)}else{k[b>>2]=k[e>>2];k[b+4>>2]=k[a+16+(l*24|0)+4>>2]}k[e>>2]=0;h=a+16+(l*24|0)+8|0;e=k[h>>2]|0;f=k[v>>2]|0;g=e-f|0;if(!u){if((e|0)!=(f|0)){k[t>>2]=335;k[t+4>>2]=g;jb(0,120,t)}}else k[d>>2]=g;e=k[h>>2]|0;k[b+8>>2]=e;k[s>>2]=e;e=a+16+(l*24|0)+12|0;f=k[e>>2]|0;k[b+12>>2]=f;j[b+16>>1]=j[a+16+(l*24|0)+16>>1]|0;k[b+20>>2]=k[a+16+(l*24|0)+20>>2];k[v>>2]=(k[e>>2]|0)+(k[h>>2]|0);f=f-c|0;e=a+12|0;k[e>>2]=f;if(!u){a=0;r=w;return a|0}k[e>>2]=(k[d>>2]|0)+f;a=0;r=w;return a|0}function $a(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+16|0;x=z;y=(k[a+6148>>2]|0)+((k[a+5900>>2]|0)+(k[a+5652>>2]|0))|0;if(!y){a=0;r=z;return a|0}b=k[a+6416>>2]|0;if(!b)u=+((ha(k[a+6404>>2]|0,k[a+6420>>2]|0)|0)/(y|0)|0|0);else u=+(b|0)*100.0/+(y|0);k[x>>2]=0;k[x+4>>2]=0;k[x+8>>2]=0;s=a+5620|0;l=k[a+5648>>2]|0;o=x+4|0;m=k[a+5896>>2]|0;p=x+8|0;n=k[a+6144>>2]|0;g=0;d=0;q=2147483647;j=0;t=0;c=0;v=0;b=0;while(1){if((g|0)<(l|0)){f=k[a+5656+(g<<2)>>2]|0;g=(f|0)<32767;f=g?f:32767;g=(g^1)<<31>>31}else{f=32767;g=-1}e=k[o>>2]|0;if((e|0)<(m|0)){h=k[a+5904+(e<<2)>>2]|0;i=(h|0)<(f|0);f=i?h:f;g=i?1:g}e=k[p>>2]|0;if((e|0)<(n|0)?(w=k[a+6152+(e<<2)>>2]|0,(w|0)<(f|0)):0){d=w;g=2}else if((g|0)==-1)break;else d=f;b=(j|0)==0?d:b;e=k[s>>2]|0;if((d|0)<0){i=d-e+1|0;e=i-((i|0)%(e|0)|0)|0}else e=d-((d|0)%(e|0)|0)|0;i=x+(g<<2)|0;k[i>>2]=(k[i>>2]|0)+1;i=~~(u*+(t|0)+ +(0-e|0));h=(i|0)<(q|0);c=h?e&65535:c;f=(v|0)!=0|(e|0)<0;e=j+1|0;if((e|0)>=40)break;g=k[x>>2]|0;q=h?i:q;j=e;t=(f?1:5)+t|0;v=f?v:1}k[a+6420>>2]=((d-b|0)/40|0)+1;a=(y|0)<40&c<<16>>16>0?0:c;r=z;return a|0}function ab(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=a+4|0;c=0;while(1){if(k[a+16+(c*24|0)>>2]|0?(k[a+16+(c*24|0)+8>>2]|0)==(k[d>>2]|0):0){g=c;break}c=c+1|0;if((c|0)>=200){e=5;break}}if((e|0)==5)if((c|0)==200){k[b>>2]=0;k[b+4>>2]=0;k[b+12>>2]=0;b=1;return b|0}else g=c;c=a+16+(g*24|0)|0;e=k[a+16+(g*24|0)+4>>2]|0;f=b+4|0;k[f>>2]=e;if(!(k[a+5616>>2]|0)){d=k[c>>2]|0;if(e){e=0;do{i[(k[b>>2]|0)+e>>0]=i[d+e>>0]|0;e=e+1|0;d=k[c>>2]|0}while(e>>>0<(k[f>>2]|0)>>>0)}tb(d)}else k[b>>2]=k[c>>2];k[c>>2]=0;k[b+8>>2]=k[a+16+(g*24|0)+8>>2];k[b+12>>2]=k[a+16+(g*24|0)+12>>2];j[b+16>>1]=j[a+16+(g*24|0)+16>>1]|0;k[b+20>>2]=k[a+16+(g*24|0)+20>>2];b=0;return b|0}function bb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;k[a+5644>>2]=0;b=$a(a)|0;f=b<<16>>16;if(b<<16>>16<0){e=0-f|0;d=e<<16>>16;b=k[a+6392>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6396>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6400>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}k[a>>2]=(k[a>>2]|0)+f;k[a+5640>>2]=e;return f|0}if(b<<16>>16<=0)return f|0;d=0-f<<16>>16;b=k[a+6392>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6396>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6400>>2]|0;if((k[b>>2]|0)>0){c=0;do{g=b+8+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}k[a>>2]=(k[a>>2]|0)+f;return f|0}function cb(a){a=a|0;return k[a>>2]|0}function db(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;h=r;r=r+16|0;g=h;do if(k[a+5644>>2]|0){b=$a(a)|0;f=b<<16>>16;if(b<<16>>16<0){e=0-f|0;d=e<<16>>16;b=k[a+6392>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6396>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6400>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}k[a>>2]=(k[a>>2]|0)+f;k[a+5640>>2]=e;break}if(b<<16>>16>0){d=0-f<<16>>16;b=k[a+6392>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6396>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}b=k[a+6400>>2]|0;if((k[b>>2]|0)>0){c=0;do{i=b+8+(c<<2)|0;k[i>>2]=(k[i>>2]|0)+d;c=c+1|0}while((c|0)<(k[b>>2]|0))}k[a>>2]=(k[a>>2]|0)+f}}while(0);d=a+12|0;b=k[d>>2]|0;c=k[a>>2]|0;if((b|0)>-1){k[a+8>>2]=c-b;k[d>>2]=0;r=h;return}else{k[a+8>>2]=c;k[g>>2]=388;k[g+4>>2]=b;jb(0,120,g);k[d>>2]=0;r=h;return}}function eb(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;k[b>>2]=k[a+60>>2];a=xa(6,b|0)|0;if(a>>>0>4294963200){if(!(k[723]|0))b=2936;else{b=(ua()|0)+64|0;b=k[b>>2]|0}k[b>>2]=0-a;a=-1}r=c;return a|0}function fb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=r;r=r+32|0;g=f;d=f+20|0;k[g>>2]=k[a+60>>2];k[g+4>>2]=0;k[g+8>>2]=b;k[g+12>>2]=d;k[g+16>>2]=c;b=Ca(140,g|0)|0;if(b>>>0<=4294963200)if((b|0)<0)e=7;else a=k[d>>2]|0;else{if(!(k[723]|0))a=2936;else{a=(ua()|0)+64|0;a=k[a>>2]|0}k[a>>2]=0-b;e=7}if((e|0)==7){k[d>>2]=-1;a=-1}r=f;return a|0}function gb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;i=p+32|0;n=a+28|0;f=k[n>>2]|0;k[i>>2]=f;o=a+20|0;f=(k[o>>2]|0)-f|0;k[i+4>>2]=f;k[i+8>>2]=b;k[i+12>>2]=c;h=a+60|0;j=a+44|0;e=2;f=f+c|0;while(1){if(!(k[723]|0)){k[m>>2]=k[h>>2];k[m+4>>2]=i;k[m+8>>2]=e;b=Fa(146,m|0)|0;if(b>>>0>4294963200){if(!(k[723]|0))d=2936;else{d=(ua()|0)+64|0;d=k[d>>2]|0}k[d>>2]=0-b;b=-1}}else{Aa(4,a|0);k[l>>2]=k[h>>2];k[l+4>>2]=i;k[l+8>>2]=e;b=Fa(146,l|0)|0;if(b>>>0>4294963200){if(!(k[723]|0))d=2936;else{d=(ua()|0)+64|0;d=k[d>>2]|0}k[d>>2]=0-b;b=-1}sa(0)}if((f|0)==(b|0)){b=13;break}if((b|0)<0){b=15;break}g=f-b|0;d=k[i+4>>2]|0;if(b>>>0<=d>>>0)if((e|0)==2){k[n>>2]=(k[n>>2]|0)+b;f=d;d=i;e=2}else{f=d;d=i}else{f=k[j>>2]|0;k[n>>2]=f;k[o>>2]=f;f=k[i+12>>2]|0;b=b-d|0;d=i+8|0;e=e+-1|0}k[d>>2]=(k[d>>2]|0)+b;k[d+4>>2]=f-b;i=d;f=g}if((b|0)==13){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((b|0)==15){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((e|0)==2)c=0;else c=c-(k[i+4>>2]|0)|0}r=p;return c|0}function hb(a){a=a|0;return}function ib(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24)break a;a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);b:do if((g|0)==5)if(d){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=ha(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009|0)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}else c=0;while(0);return (c|0?a:0)|0}function jb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+240|0;e=j+136|0;h=j+96|0;g=j;f=j+152|0;d=j+80|0;k[d>>2]=c;a=h;c=a+40|0;do{k[a>>2]=0;a=a+4|0}while((a|0)<(c|0));k[e>>2]=k[d>>2];if((kb(0,b,e,g,h)|0)>=0){a=k[2]|0;c=a&32;if((i[82]|0)<1)k[2]=a&-33;if(!(k[14]|0)){a=k[13]|0;k[13]=f;k[9]=f;k[7]=f;k[14]=80;k[6]=f+80;kb(8,b,e,g,h)|0;if(a|0){Ja[k[44>>2]&7](8,0,0)|0;k[13]=a;k[14]=0;k[6]=0;k[9]=0;k[7]=0}}else kb(8,b,e,g,h)|0;k[2]=k[2]|c}r=j;return}function kb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0.0,o=0,q=0,s=0,u=0,v=0,w=0.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,M=0,N=0,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,ia=0;ia=r;r=r+624|0;U=ia+24|0;W=ia+16|0;V=ia+588|0;X=ia+576|0;R=ia;P=ia+536|0;ga=ia+8|0;Z=ia+528|0;fa=(a|0)!=0;N=P+40|0;$=N;P=P+39|0;T=ga+4|0;ba=V;M=0-ba|0;S=X+12|0;X=X+11|0;_=S;ea=_-ba|0;ca=-2-ba|0;da=_+2|0;O=U+288|0;Q=V+9|0;aa=Q;Y=V+8|0;f=0;g=0;o=0;x=b;a:while(1){do if((f|0)>-1){if((g|0)<=(2147483647-f|0)){f=g+f|0;break}if(!(k[723]|0))f=2936;else{f=(ua()|0)+64|0;f=k[f>>2]|0}k[f>>2]=75;f=-1}while(0);b=i[x>>0]|0;if(!(b<<24>>24)){K=254;break}else g=x;b:while(1){switch(b<<24>>24){case 37:{b=g;K=11;break b}case 0:{b=g;break b}default:{}}J=g+1|0;b=i[J>>0]|0;g=J}c:do if((K|0)==11)while(1){K=0;if((i[b+1>>0]|0)!=37)break c;g=g+1|0;b=b+2|0;if((i[b>>0]|0)==37)K=11;else break}while(0);v=g-x|0;if(fa?(k[a>>2]&32|0)==0:0)lb(x,v,a);if((g|0)!=(x|0)){g=v;x=b;continue}m=b+1|0;g=i[m>>0]|0;h=(g<<24>>24)+-48|0;if(h>>>0<10){J=(i[b+2>>0]|0)==36;m=J?b+3|0:m;g=i[m>>0]|0;s=J?h:-1;o=J?1:o}else s=-1;b=g<<24>>24;d:do if((b&-32|0)==32){h=0;do{if(!(1<<b+-32&75913))break d;h=1<<(g<<24>>24)+-32|h;m=m+1|0;g=i[m>>0]|0;b=g<<24>>24}while((b&-32|0)==32)}else h=0;while(0);do if(g<<24>>24==42){g=m+1|0;b=(i[g>>0]|0)+-48|0;if(b>>>0<10?(i[m+2>>0]|0)==36:0){k[e+(b<<2)>>2]=10;b=1;m=m+3|0;g=k[d+((i[g>>0]|0)+-48<<3)>>2]|0}else{if(o|0){f=-1;break a}if(!fa){u=h;J=0;m=g;I=0;break}b=(k[c>>2]|0)+(4-1)&~(4-1);J=k[b>>2]|0;k[c>>2]=b+4;b=0;m=g;g=J}if((g|0)<0){u=h|8192;J=b;I=0-g|0}else{u=h;J=b;I=g}}else{b=(g<<24>>24)+-48|0;if(b>>>0<10){g=0;do{g=(g*10|0)+b|0;m=m+1|0;b=(i[m>>0]|0)+-48|0}while(b>>>0<10);if((g|0)<0){f=-1;break a}else{u=h;J=o;I=g}}else{u=h;J=o;I=0}}while(0);e:do if((i[m>>0]|0)==46){b=m+1|0;g=i[b>>0]|0;if(g<<24>>24!=42){h=(g<<24>>24)+-48|0;if(h>>>0<10)g=0;else{o=0;break}while(1){g=(g*10|0)+h|0;b=b+1|0;h=(i[b>>0]|0)+-48|0;if(h>>>0>=10){o=g;break e}}}b=m+2|0;g=(i[b>>0]|0)+-48|0;if(g>>>0<10?(i[m+3>>0]|0)==36:0){k[e+(g<<2)>>2]=10;o=k[d+((i[b>>0]|0)+-48<<3)>>2]|0;b=m+4|0;break}if(J|0){f=-1;break a}if(fa){H=(k[c>>2]|0)+(4-1)&~(4-1);o=k[H>>2]|0;k[c>>2]=H+4}else o=0}else{o=-1;b=m}while(0);q=0;while(1){g=(i[b>>0]|0)+-65|0;if(g>>>0>57){f=-1;break a}H=b+1|0;g=i[464+(q*58|0)+g>>0]|0;m=g&255;if((m+-1|0)>>>0<8){b=H;q=m}else break}if(!(g<<24>>24)){f=-1;break}h=(s|0)>-1;do if(g<<24>>24==19)if(h){f=-1;break a}else K=54;else{if(h){k[e+(s<<2)>>2]=m;F=d+(s<<3)|0;G=k[F+4>>2]|0;K=R;k[K>>2]=k[F>>2];k[K+4>>2]=G;K=54;break}if(!fa){f=0;break a}nb(R,m,c)}while(0);if((K|0)==54?(K=0,!fa):0){g=v;o=J;x=H;continue}s=i[b>>0]|0;s=(q|0)!=0&(s&15|0)==3?s&-33:s;h=u&-65537;G=(u&8192|0)==0?u:h;f:do switch(s|0){case 110:switch(q|0){case 0:{k[k[R>>2]>>2]=f;g=v;o=J;x=H;continue a}case 1:{k[k[R>>2]>>2]=f;g=v;o=J;x=H;continue a}case 2:{g=k[R>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=v;o=J;x=H;continue a}case 3:{j[k[R>>2]>>1]=f;g=v;o=J;x=H;continue a}case 4:{i[k[R>>2]>>0]=f;g=v;o=J;x=H;continue a}case 6:{k[k[R>>2]>>2]=f;g=v;o=J;x=H;continue a}case 7:{g=k[R>>2]|0;k[g>>2]=f;k[g+4>>2]=((f|0)<0)<<31>>31;g=v;o=J;x=H;continue a}default:{g=v;o=J;x=H;continue a}}case 112:{q=G|8;o=o>>>0>8?o:8;s=120;K=66;break}case 88:case 120:{q=G;K=66;break}case 111:{g=R;b=k[g>>2]|0;g=k[g+4>>2]|0;if((b|0)==0&(g|0)==0)b=N;else{h=b;b=N;do{b=b+-1|0;i[b>>0]=h&7|48;h=yb(h|0,g|0,3)|0;g=L}while(!((h|0)==0&(g|0)==0))}if(!(G&8)){g=G;q=0;m=944;K=79}else{q=$-b|0;g=G;o=(o|0)>(q|0)?o:q+1|0;q=0;m=944;K=79}break}case 105:case 100:{g=R;b=k[g>>2]|0;g=k[g+4>>2]|0;if((g|0)<0){b=vb(0,0,b|0,g|0)|0;g=L;h=R;k[h>>2]=b;k[h+4>>2]=g;h=1;m=944;K=78;break f}if(!(G&2048)){m=G&1;h=m;m=(m|0)==0?944:946;K=78}else{h=1;m=945;K=78}break}case 117:{g=R;b=k[g>>2]|0;g=k[g+4>>2]|0;h=0;m=944;K=78;break}case 99:{i[P>>0]=k[R>>2];b=P;s=1;v=0;u=944;g=N;break}case 109:{if(!(k[723]|0))b=2936;else{b=(ua()|0)+64|0;b=k[b>>2]|0}g=k[b>>2]|0;b=0;while(1){if((l[954+b>>0]|0)==(g|0)){K=85;break}b=b+1|0;if((b|0)==87){g=87;b=1042;break}}if((K|0)==85)if(!b){g=1042;K=92;break f}else{g=b;b=1042}do{do{K=b;b=b+1|0}while((i[K>>0]|0)!=0);g=g+-1|0}while((g|0)!=0);g=b;K=92;break}case 115:{g=k[R>>2]|0;g=g|0?g:2846;K=92;break}case 67:{k[ga>>2]=k[R>>2];k[T>>2]=0;k[R>>2]=ga;b=ga;o=-1;K=96;break}case 83:{b=k[R>>2]|0;if(!o){pb(a,32,I,0,G);b=0;K=107}else K=96;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{n=+p[R>>3];k[W>>2]=0;p[t>>3]=n;if((k[t+4>>2]|0)>=0)if(!(G&2048)){F=G&1;E=F;F=(F|0)==0?2854:2859}else{E=1;F=2856}else{E=1;F=2853;n=-n}p[t>>3]=n;D=k[t+4>>2]&2146435072;do if(D>>>0<2146435072|(D|0)==2146435072&0<0){w=+rb(n,W)*2.0;g=w!=0.0;if(g)k[W>>2]=(k[W>>2]|0)+-1;B=s|32;if((B|0)==97){q=s&32;x=(q|0)==0?F:F+9|0;v=E|2;b=12-o|0;do if(!(o>>>0>11|(b|0)==0)){n=8.0;do{b=b+-1|0;n=n*16.0}while((b|0)!=0);if((i[x>>0]|0)==45){n=-(n+(-w-n));break}else{n=w+n-n;break}}else n=w;while(0);g=k[W>>2]|0;b=(g|0)<0?0-g|0:g;b=ob(b,((b|0)<0)<<31>>31,S)|0;if((b|0)==(S|0)){i[X>>0]=48;b=X}i[b+-1>>0]=(g>>31&2)+43;u=b+-2|0;i[u>>0]=s+15;h=(o|0)<1;m=(G&8|0)==0;g=V;while(1){F=~~n;b=g+1|0;i[g>>0]=l[928+F>>0]|q;n=(n-+(F|0))*16.0;do if((b-ba|0)==1){if(m&(h&n==0.0))break;i[b>>0]=46;b=g+2|0}while(0);if(!(n!=0.0))break;else g=b}q=u;m=(o|0)!=0&(ca+b|0)<(o|0)?da+o-q|0:ea-q+b|0;h=m+v|0;pb(a,32,I,h,G);if(!(k[a>>2]&32))lb(x,v,a);pb(a,48,I,h,G^65536);g=b-ba|0;if(!(k[a>>2]&32))lb(V,g,a);b=_-q|0;pb(a,48,m-(g+b)|0,0,0);if(!(k[a>>2]&32))lb(u,b,a);pb(a,32,I,h,G^8192);b=(h|0)<(I|0)?I:h;break}b=(o|0)<0?6:o;if(g){g=(k[W>>2]|0)+-28|0;k[W>>2]=g;n=w*268435456.0}else{g=k[W>>2]|0;n=w}D=(g|0)<0?U:O;C=D;h=D;do{A=~~n>>>0;k[h>>2]=A;h=h+4|0;n=(n-+(A>>>0))*1.0e9}while(n!=0.0);g=k[W>>2]|0;if((g|0)>0){m=D;o=h;while(1){q=(g|0)>29?29:g;g=o+-4|0;do if(g>>>0>=m>>>0){h=0;do{z=zb(k[g>>2]|0,0,q|0)|0;z=wb(z|0,L|0,h|0,0)|0;A=L;y=Jb(z|0,A|0,1e9,0)|0;k[g>>2]=y;h=Ib(z|0,A|0,1e9,0)|0;g=g+-4|0}while(g>>>0>=m>>>0);if(!h)break;m=m+-4|0;k[m>>2]=h}while(0);h=o;while(1){if(h>>>0<=m>>>0)break;g=h+-4|0;if(!(k[g>>2]|0))h=g;else break}g=(k[W>>2]|0)-q|0;k[W>>2]=g;if((g|0)>0)o=h;else break}}else m=D;if((g|0)<0){x=((b+25|0)/9|0)+1|0;y=(B|0)==102;do{v=0-g|0;v=(v|0)>9?9:v;do if(m>>>0<h>>>0){q=(1<<v)+-1|0;o=1e9>>>v;u=0;g=m;do{A=k[g>>2]|0;k[g>>2]=(A>>>v)+u;u=ha(A&q,o)|0;g=g+4|0}while(g>>>0<h>>>0);g=(k[m>>2]|0)==0?m+4|0:m;if(!u){m=g;g=h;break}k[h>>2]=u;m=g;g=h+4|0}else{m=(k[m>>2]|0)==0?m+4|0:m;g=h}while(0);h=y?D:m;h=(g-h>>2|0)>(x|0)?h+(x<<2)|0:g;g=(k[W>>2]|0)+v|0;k[W>>2]=g}while((g|0)<0);g=m;A=h}else{g=m;A=h}do if(g>>>0<A>>>0){h=(C-g>>2)*9|0;o=k[g>>2]|0;if(o>>>0<10)break;else m=10;do{m=m*10|0;h=h+1|0}while(o>>>0>=m>>>0)}else h=0;while(0);y=(B|0)==103;z=(b|0)!=0;m=b-((B|0)!=102?h:0)+((z&y)<<31>>31)|0;if((m|0)<(((A-C>>2)*9|0)+-9|0)){o=m+9216|0;m=D+4+(((o|0)/9|0)+-1024<<2)|0;o=((o|0)%9|0)+1|0;if((o|0)<9){q=10;do{q=q*10|0;o=o+1|0}while((o|0)!=9)}else q=10;v=k[m>>2]|0;x=(v>>>0)%(q>>>0)|0;o=(m+4|0)==(A|0);do if(!(o&(x|0)==0)){w=(((v>>>0)/(q>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;u=(q|0)/2|0;if(x>>>0<u>>>0)n=.5;else n=o&(x|0)==(u|0)?1.0:1.5;do if(E){if((i[F>>0]|0)!=45)break;w=-w;n=-n}while(0);o=v-x|0;k[m>>2]=o;if(!(w+n!=w))break;B=o+q|0;k[m>>2]=B;if(B>>>0>999999999){h=m;while(1){m=h+-4|0;k[h>>2]=0;if(m>>>0<g>>>0){g=g+-4|0;k[g>>2]=0}B=(k[m>>2]|0)+1|0;k[m>>2]=B;if(B>>>0>999999999)h=m;else break}}h=(C-g>>2)*9|0;q=k[g>>2]|0;if(q>>>0<10)break;else o=10;do{o=o*10|0;h=h+1|0}while(q>>>0>=o>>>0)}while(0);x=m+4|0;B=g;g=A>>>0>x>>>0?x:A}else{B=g;g=A}v=0-h|0;A=g;while(1){if(A>>>0<=B>>>0){x=0;break}g=A+-4|0;if(!(k[g>>2]|0))A=g;else{x=1;break}}do if(y){b=(z&1^1)+b|0;if((b|0)>(h|0)&(h|0)>-5){b=b+-1-h|0;s=s+-1|0}else{b=b+-1|0;s=s+-2|0}g=G&8;if(g|0)break;do if(x){g=k[A+-4>>2]|0;if(!g){m=9;break}if(!((g>>>0)%10|0)){o=10;m=0}else{m=0;break}do{o=o*10|0;m=m+1|0}while(!((g>>>0)%(o>>>0)|0|0))}else m=9;while(0);g=((A-C>>2)*9|0)+-9|0;if((s|32|0)==102){C=g-m|0;C=(C|0)<0?0:C;g=0;b=(b|0)<(C|0)?b:C;break}else{C=g+h-m|0;C=(C|0)<0?0:C;g=0;b=(b|0)<(C|0)?b:C;break}}else g=G&8;while(0);u=b|g;o=(u|0)!=0&1;q=(s|32|0)==102;if(q){s=0;h=(h|0)>0?h:0}else{m=(h|0)<0?v:h;m=ob(m,((m|0)<0)<<31>>31,S)|0;if((_-m|0)<2)do{m=m+-1|0;i[m>>0]=48}while((_-m|0)<2);i[m+-1>>0]=(h>>31&2)+43;h=m+-2|0;i[h>>0]=s;s=h;h=_-h|0}v=E+1+b+o+h|0;pb(a,32,I,v,G);if(!(k[a>>2]&32))lb(F,E,a);pb(a,48,I,v,G^65536);do if(q){m=B>>>0>D>>>0?D:B;h=m;do{g=ob(k[h>>2]|0,0,Q)|0;do if((h|0)==(m|0)){if((g|0)!=(Q|0))break;i[Y>>0]=48;g=Y}else{if(g>>>0<=V>>>0)break;xb(V|0,48,g-ba|0)|0;do g=g+-1|0;while(g>>>0>V>>>0)}while(0);if(!(k[a>>2]&32))lb(g,aa-g|0,a);h=h+4|0}while(h>>>0<=D>>>0);do if(u|0){if(k[a>>2]&32|0)break;lb(2888,1,a)}while(0);if((b|0)>0&h>>>0<A>>>0)while(1){g=ob(k[h>>2]|0,0,Q)|0;if(g>>>0>V>>>0){xb(V|0,48,g-ba|0)|0;do g=g+-1|0;while(g>>>0>V>>>0)}if(!(k[a>>2]&32))lb(g,(b|0)>9?9:b,a);h=h+4|0;g=b+-9|0;if(!((b|0)>9&h>>>0<A>>>0)){b=g;break}else b=g}pb(a,48,b+9|0,9,0)}else{q=x?A:B+4|0;if((b|0)>-1){o=(g|0)==0;m=B;do{g=ob(k[m>>2]|0,0,Q)|0;if((g|0)==(Q|0)){i[Y>>0]=48;g=Y}do if((m|0)==(B|0)){h=g+1|0;if(!(k[a>>2]&32))lb(g,1,a);if(o&(b|0)<1){g=h;break}if(k[a>>2]&32|0){g=h;break}lb(2888,1,a);g=h}else{if(g>>>0<=V>>>0)break;xb(V|0,48,g+M|0)|0;do g=g+-1|0;while(g>>>0>V>>>0)}while(0);h=aa-g|0;if(!(k[a>>2]&32))lb(g,(b|0)>(h|0)?h:b,a);b=b-h|0;m=m+4|0}while(m>>>0<q>>>0&(b|0)>-1)}pb(a,48,b+18|0,18,0);if(k[a>>2]&32|0)break;lb(s,_-s|0,a)}while(0);pb(a,32,I,v,G^8192);b=(v|0)<(I|0)?I:v}else{q=(s&32|0)!=0;o=n!=n|0.0!=0.0;g=o?0:E;m=g+3|0;pb(a,32,I,m,h);b=k[a>>2]|0;if(!(b&32)){lb(F,g,a);b=k[a>>2]|0}if(!(b&32))lb(o?(q?2880:2884):q?2872:2876,3,a);pb(a,32,I,m,G^8192);b=(m|0)<(I|0)?I:m}while(0);g=b;o=J;x=H;continue a}default:{b=x;h=G;s=o;v=0;u=944;g=N}}while(0);g:do if((K|0)==66){g=R;b=k[g>>2]|0;g=k[g+4>>2]|0;m=s&32;if(!((b|0)==0&(g|0)==0)){h=b;b=N;do{b=b+-1|0;i[b>>0]=l[928+(h&15)>>0]|m;h=yb(h|0,g|0,4)|0;g=L}while(!((h|0)==0&(g|0)==0));K=R;if((q&8|0)==0|(k[K>>2]|0)==0&(k[K+4>>2]|0)==0){g=q;q=0;m=944;K=79}else{g=q;q=2;m=944+(s>>4)|0;K=79}}else{b=N;g=q;q=0;m=944;K=79}}else if((K|0)==78){b=ob(b,g,N)|0;g=G;q=h;K=79}else if((K|0)==92){K=0;G=ib(g,0,o)|0;F=(G|0)==0;b=g;s=F?o:G-g|0;v=0;u=944;g=F?g+o|0:G}else if((K|0)==96){K=0;h=0;g=0;q=b;while(1){m=k[q>>2]|0;if(!m)break;g=qb(Z,m)|0;if((g|0)<0|g>>>0>(o-h|0)>>>0)break;h=g+h|0;if(o>>>0>h>>>0)q=q+4|0;else break}if((g|0)<0){f=-1;break a}pb(a,32,I,h,G);if(!h){b=0;K=107}else{m=0;while(1){g=k[b>>2]|0;if(!g){b=h;K=107;break g}g=qb(Z,g)|0;m=g+m|0;if((m|0)>(h|0)){b=h;K=107;break g}if(!(k[a>>2]&32))lb(Z,g,a);if(m>>>0>=h>>>0){b=h;K=107;break}else b=b+4|0}}}while(0);if((K|0)==107){K=0;pb(a,32,I,b,G^8192);g=(I|0)>(b|0)?I:b;o=J;x=H;continue}if((K|0)==79){K=0;h=(o|0)>-1?g&-65537:g;g=R;g=(k[g>>2]|0)!=0|(k[g+4>>2]|0)!=0;if((o|0)!=0|g){s=(g&1^1)+($-b)|0;s=(o|0)>(s|0)?o:s;v=q;u=m;g=N}else{b=N;s=0;v=q;u=m;g=N}}q=g-b|0;o=(s|0)<(q|0)?q:s;m=v+o|0;g=(I|0)<(m|0)?m:I;pb(a,32,g,m,h);if(!(k[a>>2]&32))lb(u,v,a);pb(a,48,g,m,h^65536);pb(a,48,o,q,0);if(!(k[a>>2]&32))lb(b,q,a);pb(a,32,g,m,h^8192);o=J;x=H}h:do if((K|0)==254)if(!a)if(!o)f=0;else{f=1;while(1){b=k[e+(f<<2)>>2]|0;if(!b){b=0;break}nb(d+(f<<3)|0,b,c);f=f+1|0;if((f|0)>=10){f=1;break h}}while(1){f=f+1|0;if(b|0){f=-1;break h}if((f|0)>=10){f=1;break h}b=k[e+(f<<2)>>2]|0}}while(0);r=ia;return f|0}function lb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=c+16|0;d=k[e>>2]|0;if(!d){if(!(mb(c)|0)){d=k[e>>2]|0;f=5}}else f=5;a:do if((f|0)==5){g=c+20|0;f=k[g>>2]|0;e=f;if((d-f|0)>>>0<b>>>0){Ja[k[c+36>>2]&7](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){f=b;while(1){if(!f){d=b;break b}d=f+-1|0;if((i[a+d>>0]|0)==10)break;else f=d}if((Ja[k[c+36>>2]&7](c,a,f)|0)>>>0<f>>>0)break a;e=k[g>>2]|0;d=b-f|0;a=a+f|0}else d=b;while(0);Ab(e|0,a|0,d|0)|0;k[g>>2]=(k[g>>2]|0)+d}while(0);return}function mb(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);b=0}else{k[a>>2]=b|32;b=-1}return b|0}function nb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}function ob(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295)while(1){d=Jb(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=a;a=Ib(a|0,b|0,10,0)|0;if(!(b>>>0>9|(b|0)==9&d>>>0>4294967295))break;else b=L}if(a)while(1){c=c+-1|0;i[c>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return c|0}function pb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=r;r=r+256|0;f=g;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;xb(f|0,b|0,(e>>>0>256?256:e)|0)|0;d=k[a>>2]|0;c=(d&32|0)==0;if(e>>>0>255){b=e;do{if(c){lb(f,256,a);d=k[a>>2]|0}b=b+-256|0;c=(d&32|0)==0}while(b>>>0>255);if(c)e=e&255;else break}else if(!c)break;lb(f,e,a)}while(0);r=g;return}function qb(a,b){a=a|0;b=b|0;do if(!a)a=0;else{if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}if(!(k[723]|0))a=2936;else{a=(ua()|0)+64|0;a=k[a>>2]|0}k[a>>2]=84;a=-1}while(0);return a|0}function rb(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=yb(c|0,d|0,52)|0;e=e&2047;switch(e|0){case 0:{if(a!=0.0){a=+rb(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=e+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;a=+p[t>>3]}}return +a}function sb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=k[735]|0;b=i>>>a;if(b&3|0){e=(b&1^1)+a|0;f=2980+(e<<1<<2)|0;b=f+8|0;c=k[b>>2]|0;g=c+8|0;d=k[g>>2]|0;do if((f|0)!=(d|0)){if(d>>>0<(k[739]|0)>>>0)va();a=d+12|0;if((k[a>>2]|0)==(c|0)){k[a>>2]=f;k[b>>2]=d;break}else va()}else k[735]=i&~(1<<e);while(0);H=e<<3;k[c+4>>2]=H|3;H=c+H+4|0;k[H>>2]=k[H>>2]|1;H=g;return H|0}g=k[737]|0;if(o>>>0>g>>>0){if(b|0){e=2<<a;e=b<<a&(e|0-e);e=(e&0-e)+-1|0;h=e>>>12&16;e=e>>>h;b=e>>>5&8;e=e>>>b;f=e>>>2&4;e=e>>>f;c=e>>>1&2;e=e>>>c;d=e>>>1&1;d=(b|h|f|c|d)+(e>>>d)|0;e=2980+(d<<1<<2)|0;c=e+8|0;f=k[c>>2]|0;h=f+8|0;b=k[h>>2]|0;do if((e|0)!=(b|0)){if(b>>>0<(k[739]|0)>>>0)va();a=b+12|0;if((k[a>>2]|0)==(f|0)){k[a>>2]=e;k[c>>2]=b;j=k[737]|0;break}else va()}else{k[735]=i&~(1<<d);j=g}while(0);g=(d<<3)-o|0;k[f+4>>2]=o|3;e=f+o|0;k[e+4>>2]=g|1;k[e+g>>2]=g;if(j|0){d=k[740]|0;b=j>>>3;c=2980+(b<<1<<2)|0;a=k[735]|0;b=1<<b;if(a&b){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();else{l=a;m=b}}else{k[735]=a|b;l=c+8|0;m=c}k[l>>2]=d;k[m+12>>2]=d;k[d+8>>2]=m;k[d+12>>2]=c}k[737]=g;k[740]=e;H=h;return H|0}a=k[736]|0;if(a){h=(a&0-a)+-1|0;G=h>>>12&16;h=h>>>G;F=h>>>5&8;h=h>>>F;H=h>>>2&4;h=h>>>H;b=h>>>1&2;h=h>>>b;i=h>>>1&1;i=k[3244+((F|G|H|b|i)+(h>>>i)<<2)>>2]|0;h=(k[i+4>>2]&-8)-o|0;b=i;while(1){a=k[b+16>>2]|0;if(!a){a=k[b+20>>2]|0;if(!a)break}b=(k[a+4>>2]&-8)-o|0;H=b>>>0<h>>>0;h=H?b:h;b=a;i=H?a:i}e=k[739]|0;if(i>>>0<e>>>0)va();g=i+o|0;if(i>>>0>=g>>>0)va();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){n=0;break}}while(1){d=a+20|0;c=k[d>>2]|0;if(c|0){a=c;b=d;continue}d=a+16|0;c=k[d>>2]|0;if(!c)break;else{a=c;b=d}}if(b>>>0<e>>>0)va();else{k[b>>2]=0;n=a;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)va();a=d+12|0;if((k[a>>2]|0)!=(i|0))va();b=c+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=c;k[b>>2]=d;n=c;break}else va()}while(0);do if(f|0){a=k[i+28>>2]|0;b=3244+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=n;if(!n){k[736]=k[736]&~(1<<a);break}}else{if(f>>>0<(k[739]|0)>>>0)va();a=f+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=n;else k[f+20>>2]=n;if(!n)break}b=k[739]|0;if(n>>>0<b>>>0)va();k[n+24>>2]=f;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)va();else{k[n+16>>2]=a;k[a+24>>2]=n;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[739]|0)>>>0)va();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}while(0);if(h>>>0<16){H=h+o|0;k[i+4>>2]=H|3;H=i+H+4|0;k[H>>2]=k[H>>2]|1}else{k[i+4>>2]=o|3;k[g+4>>2]=h|1;k[g+h>>2]=h;a=k[737]|0;if(a|0){d=k[740]|0;b=a>>>3;c=2980+(b<<1<<2)|0;a=k[735]|0;b=1<<b;if(a&b){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();else{p=a;q=b}}else{k[735]=a|b;p=c+8|0;q=c}k[p>>2]=d;k[q+12>>2]=d;k[d+8>>2]=q;k[d+12>>2]=c}k[737]=h;k[740]=g}H=i+8|0;return H|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;i=k[736]|0;if(i){b=0-o|0;a=a>>>8;if(a)if(o>>>0>16777215)h=31;else{q=(a+1048320|0)>>>16&8;A=a<<q;p=(A+520192|0)>>>16&4;A=A<<p;h=(A+245760|0)>>>16&2;h=14-(p|q|h)+(A<<h>>>15)|0;h=o>>>(h+7|0)&1|h<<1}else h=0;c=k[3244+(h<<2)>>2]|0;a:do if(!c){d=b;a=0;b=0;A=86}else{d=b;a=0;g=o<<((h|0)==31?0:25-(h>>>1)|0);b=0;while(1){e=k[c+4>>2]&-8;f=e-o|0;if(f>>>0<d>>>0)if((e|0)==(o|0)){d=f;a=c;b=c;A=90;break a}else{d=f;b=c}e=k[c+20>>2]|0;c=k[c+16+(g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(c|0)?a:e;e=(c|0)==0;if(e){A=86;break}else g=g<<(e&1^1)}}while(0);if((A|0)==86){if((a|0)==0&(b|0)==0){a=2<<h;a=i&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=k[3244+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){h=d;i=b}else A=90}if((A|0)==90)while(1){A=0;q=(k[a+4>>2]&-8)-o|0;c=q>>>0<d>>>0;d=c?q:d;b=c?a:b;c=k[a+16>>2]|0;if(c|0){a=c;A=90;continue}a=k[a+20>>2]|0;if(!a){h=d;i=b;break}else A=90}if((i|0)!=0?h>>>0<((k[737]|0)-o|0)>>>0:0){e=k[739]|0;if(i>>>0<e>>>0)va();g=i+o|0;if(i>>>0>=g>>>0)va();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;c=k[d>>2]|0;if(c|0){a=c;b=d;continue}d=a+16|0;c=k[d>>2]|0;if(!c)break;else{a=c;b=d}}if(b>>>0<e>>>0)va();else{k[b>>2]=0;s=a;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)va();a=d+12|0;if((k[a>>2]|0)!=(i|0))va();b=c+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=c;k[b>>2]=d;s=c;break}else va()}while(0);do if(f|0){a=k[i+28>>2]|0;b=3244+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=s;if(!s){k[736]=k[736]&~(1<<a);break}}else{if(f>>>0<(k[739]|0)>>>0)va();a=f+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=s;else k[f+20>>2]=s;if(!s)break}b=k[739]|0;if(s>>>0<b>>>0)va();k[s+24>>2]=f;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)va();else{k[s+16>>2]=a;k[a+24>>2]=s;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[739]|0)>>>0)va();else{k[s+20>>2]=a;k[a+24>>2]=s;break}}while(0);do if(h>>>0>=16){k[i+4>>2]=o|3;k[g+4>>2]=h|1;k[g+h>>2]=h;a=h>>>3;if(h>>>0<256){c=2980+(a<<1<<2)|0;b=k[735]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();else{t=a;u=b}}else{k[735]=b|a;t=c+8|0;u=c}k[t>>2]=g;k[u+12>>2]=g;k[g+8>>2]=u;k[g+12>>2]=c;break}a=h>>>8;if(a)if(h>>>0>16777215)b=31;else{G=(a+1048320|0)>>>16&8;H=a<<G;F=(H+520192|0)>>>16&4;H=H<<F;b=(H+245760|0)>>>16&2;b=14-(F|G|b)+(H<<b>>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=3244+(b<<2)|0;k[g+28>>2]=b;a=g+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[736]|0;c=1<<b;if(!(a&c)){k[736]=a|c;k[d>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}b=h<<((b|0)==31?0:25-(b>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(h|0)){A=148;break}c=d+16+(b>>>31<<2)|0;a=k[c>>2]|0;if(!a){A=145;break}else{b=b<<1;d=a}}if((A|0)==145)if(c>>>0<(k[739]|0)>>>0)va();else{k[c>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}else if((A|0)==148){b=d+8|0;a=k[b>>2]|0;H=k[739]|0;if(a>>>0>=H>>>0&d>>>0>=H>>>0){k[a+12>>2]=g;k[b>>2]=g;k[g+8>>2]=a;k[g+12>>2]=d;k[g+24>>2]=0;break}else va()}}else{H=h+o|0;k[i+4>>2]=H|3;H=i+H+4|0;k[H>>2]=k[H>>2]|1}while(0);H=i+8|0;return H|0}}}else o=-1;while(0);c=k[737]|0;if(c>>>0>=o>>>0){b=c-o|0;a=k[740]|0;if(b>>>0>15){H=a+o|0;k[740]=H;k[737]=b;k[H+4>>2]=b|1;k[H+b>>2]=b;k[a+4>>2]=o|3}else{k[737]=0;k[740]=0;k[a+4>>2]=c|3;H=a+c+4|0;k[H>>2]=k[H>>2]|1}H=a+8|0;return H|0}a=k[738]|0;if(a>>>0>o>>>0){F=a-o|0;k[738]=F;H=k[741]|0;G=H+o|0;k[741]=G;k[G+4>>2]=F|1;k[H+4>>2]=o|3;H=H+8|0;return H|0}do if(!(k[853]|0)){a=ta(30)|0;if(!(a+-1&a)){k[855]=a;k[854]=a;k[856]=-1;k[857]=-1;k[858]=0;k[846]=0;u=(za(0)|0)&-16^1431655768;k[853]=u;break}else va()}while(0);f=o+48|0;d=k[855]|0;g=o+47|0;c=d+g|0;d=0-d|0;h=c&d;if(h>>>0<=o>>>0){H=0;return H|0}a=k[845]|0;if(a|0?(t=k[843]|0,u=t+h|0,u>>>0<=t>>>0|u>>>0>a>>>0):0){H=0;return H|0}b:do if(!(k[846]&4)){b=k[741]|0;c:do if(b){e=3388;while(1){a=k[e>>2]|0;if(a>>>0<=b>>>0?(r=e+4|0,(a+(k[r>>2]|0)|0)>>>0>b>>>0):0)break;a=k[e+8>>2]|0;if(!a){A=173;break c}else e=a}a=c-(k[738]|0)&d;if(a>>>0<2147483647){b=ya(a|0)|0;if((b|0)==((k[e>>2]|0)+(k[r>>2]|0)|0)){if((b|0)!=(-1|0)){g=b;f=a;A=193;break b}}else A=183}}else A=173;while(0);do if((A|0)==173?(v=ya(0)|0,(v|0)!=(-1|0)):0){a=v;b=k[854]|0;c=b+-1|0;if(!(c&a))a=h;else a=h-a+(c+a&0-b)|0;b=k[843]|0;c=b+a|0;if(a>>>0>o>>>0&a>>>0<2147483647){u=k[845]|0;if(u|0?c>>>0<=b>>>0|c>>>0>u>>>0:0)break;b=ya(a|0)|0;if((b|0)==(v|0)){g=v;f=a;A=193;break b}else A=183}}while(0);d:do if((A|0)==183){c=0-a|0;do if(f>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=k[855]|0,w=g-a+w&0-w,w>>>0<2147483647):0)if((ya(w|0)|0)==(-1|0)){ya(c|0)|0;break d}else{a=w+a|0;break}while(0);if((b|0)!=(-1|0)){g=b;f=a;A=193;break b}}while(0);k[846]=k[846]|4;A=190}else A=190;while(0);if((((A|0)==190?h>>>0<2147483647:0)?(x=ya(h|0)|0,y=ya(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){g=x;f=z;A=193}if((A|0)==193){a=(k[843]|0)+f|0;k[843]=a;if(a>>>0>(k[844]|0)>>>0)k[844]=a;j=k[741]|0;do if(j){e=3388;while(1){a=k[e>>2]|0;d=e+4|0;b=k[d>>2]|0;if((g|0)==(a+b|0)){A=203;break}c=k[e+8>>2]|0;if(!c)break;else e=c}if(((A|0)==203?(k[e+12>>2]&8|0)==0:0)?j>>>0<g>>>0&j>>>0>=a>>>0:0){k[d>>2]=b+f;H=j+8|0;H=(H&7|0)==0?0:0-H&7;G=j+H|0;H=f-H+(k[738]|0)|0;k[741]=G;k[738]=H;k[G+4>>2]=H|1;k[G+H+4>>2]=40;k[742]=k[857];break}a=k[739]|0;if(g>>>0<a>>>0){k[739]=g;h=g}else h=a;b=g+f|0;a=3388;while(1){if((k[a>>2]|0)==(b|0)){A=211;break}a=k[a+8>>2]|0;if(!a){b=3388;break}}if((A|0)==211)if(!(k[a+12>>2]&8)){k[a>>2]=g;m=a+4|0;k[m>>2]=(k[m>>2]|0)+f;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=b+8|0;a=b+((a&7|0)==0?0:0-a&7)|0;l=m+o|0;i=a-m-o|0;k[m+4>>2]=o|3;do if((a|0)!=(j|0)){if((a|0)==(k[740]|0)){H=(k[737]|0)+i|0;k[737]=H;k[740]=l;k[l+4>>2]=H|1;k[l+H>>2]=H;break}b=k[a+4>>2]|0;if((b&3|0)==1){g=b&-8;e=b>>>3;e:do if(b>>>0>=256){f=k[a+24>>2]|0;d=k[a+12>>2]|0;do if((d|0)==(a|0)){d=a+16|0;c=d+4|0;b=k[c>>2]|0;if(!b){b=k[d>>2]|0;if(!b){F=0;break}else e=d}else e=c;while(1){d=b+20|0;c=k[d>>2]|0;if(c|0){b=c;e=d;continue}d=b+16|0;c=k[d>>2]|0;if(!c)break;else{b=c;e=d}}if(e>>>0<h>>>0)va();else{k[e>>2]=0;F=b;break}}else{e=k[a+8>>2]|0;if(e>>>0<h>>>0)va();b=e+12|0;if((k[b>>2]|0)!=(a|0))va();c=d+8|0;if((k[c>>2]|0)==(a|0)){k[b>>2]=d;k[c>>2]=e;F=d;break}else va()}while(0);if(!f)break;b=k[a+28>>2]|0;c=3244+(b<<2)|0;do if((a|0)!=(k[c>>2]|0)){if(f>>>0<(k[739]|0)>>>0)va();b=f+16|0;if((k[b>>2]|0)==(a|0))k[b>>2]=F;else k[f+20>>2]=F;if(!F)break e}else{k[c>>2]=F;if(F|0)break;k[736]=k[736]&~(1<<b);break e}while(0);d=k[739]|0;if(F>>>0<d>>>0)va();k[F+24>>2]=f;c=a+16|0;b=k[c>>2]|0;do if(b|0)if(b>>>0<d>>>0)va();else{k[F+16>>2]=b;k[b+24>>2]=F;break}while(0);b=k[c+4>>2]|0;if(!b)break;if(b>>>0<(k[739]|0)>>>0)va();else{k[F+20>>2]=b;k[b+24>>2]=F;break}}else{c=k[a+8>>2]|0;d=k[a+12>>2]|0;b=2980+(e<<1<<2)|0;do if((c|0)!=(b|0)){if(c>>>0<h>>>0)va();if((k[c+12>>2]|0)==(a|0))break;va()}while(0);if((d|0)==(c|0)){k[735]=k[735]&~(1<<e);break}do if((d|0)==(b|0))C=d+8|0;else{if(d>>>0<h>>>0)va();b=d+8|0;if((k[b>>2]|0)==(a|0)){C=b;break}va()}while(0);k[c+12>>2]=d;k[C>>2]=c}while(0);a=a+g|0;e=g+i|0}else e=i;a=a+4|0;k[a>>2]=k[a>>2]&-2;k[l+4>>2]=e|1;k[l+e>>2]=e;a=e>>>3;if(e>>>0<256){c=2980+(a<<1<<2)|0;b=k[735]|0;a=1<<a;do if(!(b&a)){k[735]=b|a;G=c+8|0;H=c}else{a=c+8|0;b=k[a>>2]|0;if(b>>>0>=(k[739]|0)>>>0){G=a;H=b;break}va()}while(0);k[G>>2]=l;k[H+12>>2]=l;k[l+8>>2]=H;k[l+12>>2]=c;break}a=e>>>8;do if(!a)b=0;else{if(e>>>0>16777215){b=31;break}G=(a+1048320|0)>>>16&8;H=a<<G;F=(H+520192|0)>>>16&4;H=H<<F;b=(H+245760|0)>>>16&2;b=14-(F|G|b)+(H<<b>>>15)|0;b=e>>>(b+7|0)&1|b<<1}while(0);d=3244+(b<<2)|0;k[l+28>>2]=b;a=l+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[736]|0;c=1<<b;if(!(a&c)){k[736]=a|c;k[d>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}b=e<<((b|0)==31?0:25-(b>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){A=281;break}c=d+16+(b>>>31<<2)|0;a=k[c>>2]|0;if(!a){A=278;break}else{b=b<<1;d=a}}if((A|0)==278)if(c>>>0<(k[739]|0)>>>0)va();else{k[c>>2]=l;k[l+24>>2]=d;k[l+12>>2]=l;k[l+8>>2]=l;break}else if((A|0)==281){b=d+8|0;a=k[b>>2]|0;H=k[739]|0;if(a>>>0>=H>>>0&d>>>0>=H>>>0){k[a+12>>2]=l;k[b>>2]=l;k[l+8>>2]=a;k[l+12>>2]=d;k[l+24>>2]=0;break}else va()}}else{H=(k[738]|0)+i|0;k[738]=H;k[741]=l;k[l+4>>2]=H|1}while(0);H=m+8|0;return H|0}else b=3388;while(1){a=k[b>>2]|0;if(a>>>0<=j>>>0?(B=a+(k[b+4>>2]|0)|0,B>>>0>j>>>0):0)break;b=k[b+8>>2]|0}e=B+-47|0;b=e+8|0;b=e+((b&7|0)==0?0:0-b&7)|0;e=j+16|0;b=b>>>0<e>>>0?j:b;a=b+8|0;c=g+8|0;c=(c&7|0)==0?0:0-c&7;H=g+c|0;c=f+-40-c|0;k[741]=H;k[738]=c;k[H+4>>2]=c|1;k[H+c+4>>2]=40;k[742]=k[857];c=b+4|0;k[c>>2]=27;k[a>>2]=k[847];k[a+4>>2]=k[848];k[a+8>>2]=k[849];k[a+12>>2]=k[850];k[847]=g;k[848]=f;k[850]=0;k[849]=a;a=b+24|0;do{a=a+4|0;k[a>>2]=7}while((a+4|0)>>>0<B>>>0);if((b|0)!=(j|0)){f=b-j|0;k[c>>2]=k[c>>2]&-2;k[j+4>>2]=f|1;k[b>>2]=f;a=f>>>3;if(f>>>0<256){c=2980+(a<<1<<2)|0;b=k[735]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();else{D=a;E=b}}else{k[735]=b|a;D=c+8|0;E=c}k[D>>2]=j;k[E+12>>2]=j;k[j+8>>2]=E;k[j+12>>2]=c;break}a=f>>>8;if(a)if(f>>>0>16777215)c=31;else{G=(a+1048320|0)>>>16&8;H=a<<G;F=(H+520192|0)>>>16&4;H=H<<F;c=(H+245760|0)>>>16&2;c=14-(F|G|c)+(H<<c>>>15)|0;c=f>>>(c+7|0)&1|c<<1}else c=0;d=3244+(c<<2)|0;k[j+28>>2]=c;k[j+20>>2]=0;k[e>>2]=0;a=k[736]|0;b=1<<c;if(!(a&b)){k[736]=a|b;k[d>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}b=f<<((c|0)==31?0:25-(c>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(f|0)){A=307;break}c=d+16+(b>>>31<<2)|0;a=k[c>>2]|0;if(!a){A=304;break}else{b=b<<1;d=a}}if((A|0)==304)if(c>>>0<(k[739]|0)>>>0)va();else{k[c>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}else if((A|0)==307){b=d+8|0;a=k[b>>2]|0;H=k[739]|0;if(a>>>0>=H>>>0&d>>>0>=H>>>0){k[a+12>>2]=j;k[b>>2]=j;k[j+8>>2]=a;k[j+12>>2]=d;k[j+24>>2]=0;break}else va()}}}else{H=k[739]|0;if((H|0)==0|g>>>0<H>>>0)k[739]=g;k[847]=g;k[848]=f;k[850]=0;k[744]=k[853];k[743]=-1;a=0;do{H=2980+(a<<1<<2)|0;k[H+12>>2]=H;k[H+8>>2]=H;a=a+1|0}while((a|0)!=32);H=g+8|0;H=(H&7|0)==0?0:0-H&7;G=g+H|0;H=f+-40-H|0;k[741]=G;k[738]=H;k[G+4>>2]=H|1;k[G+H+4>>2]=40;k[742]=k[857]}while(0);a=k[738]|0;if(a>>>0>o>>>0){F=a-o|0;k[738]=F;H=k[741]|0;G=H+o|0;k[741]=G;k[G+4>>2]=F|1;k[H+4>>2]=o|3;H=H+8|0;return H|0}}if(!(k[723]|0))a=2936;else{a=(ua()|0)+64|0;a=k[a>>2]|0}k[a>>2]=12;H=0;return H|0}function tb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;c=a+-8|0;g=k[739]|0;if(c>>>0<g>>>0)va();a=k[a+-4>>2]|0;b=a&3;if((b|0)==1)va();d=a&-8;n=c+d|0;do if(!(a&1)){a=k[c>>2]|0;if(!b)return;j=c+(0-a)|0;i=a+d|0;if(j>>>0<g>>>0)va();if((j|0)==(k[740]|0)){b=n+4|0;a=k[b>>2]|0;if((a&3|0)!=3){q=j;e=i;break}k[737]=i;k[b>>2]=a&-2;k[j+4>>2]=i|1;k[j+i>>2]=i;return}d=a>>>3;if(a>>>0<256){b=k[j+8>>2]|0;c=k[j+12>>2]|0;a=2980+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<g>>>0)va();if((k[b+12>>2]|0)!=(j|0))va()}if((c|0)==(b|0)){k[735]=k[735]&~(1<<d);q=j;e=i;break}if((c|0)!=(a|0)){if(c>>>0<g>>>0)va();a=c+8|0;if((k[a>>2]|0)==(j|0))f=a;else va()}else f=c+8|0;k[b+12>>2]=c;k[f>>2]=b;q=j;e=i;break}f=k[j+24>>2]|0;c=k[j+12>>2]|0;do if((c|0)==(j|0)){c=j+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){h=0;break}else d=c}else d=b;while(1){c=a+20|0;b=k[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=k[c>>2]|0;if(!b)break;else{a=b;d=c}}if(d>>>0<g>>>0)va();else{k[d>>2]=0;h=a;break}}else{d=k[j+8>>2]|0;if(d>>>0<g>>>0)va();a=d+12|0;if((k[a>>2]|0)!=(j|0))va();b=c+8|0;if((k[b>>2]|0)==(j|0)){k[a>>2]=c;k[b>>2]=d;h=c;break}else va()}while(0);if(f){a=k[j+28>>2]|0;b=3244+(a<<2)|0;if((j|0)==(k[b>>2]|0)){k[b>>2]=h;if(!h){k[736]=k[736]&~(1<<a);q=j;e=i;break}}else{if(f>>>0<(k[739]|0)>>>0)va();a=f+16|0;if((k[a>>2]|0)==(j|0))k[a>>2]=h;else k[f+20>>2]=h;if(!h){q=j;e=i;break}}c=k[739]|0;if(h>>>0<c>>>0)va();k[h+24>>2]=f;b=j+16|0;a=k[b>>2]|0;do if(a|0)if(a>>>0<c>>>0)va();else{k[h+16>>2]=a;k[a+24>>2]=h;break}while(0);a=k[b+4>>2]|0;if(a)if(a>>>0<(k[739]|0)>>>0)va();else{k[h+20>>2]=a;k[a+24>>2]=h;q=j;e=i;break}else{q=j;e=i}}else{q=j;e=i}}else{q=c;e=d}while(0);if(q>>>0>=n>>>0)va();a=n+4|0;b=k[a>>2]|0;if(!(b&1))va();if(!(b&2)){if((n|0)==(k[741]|0)){p=(k[738]|0)+e|0;k[738]=p;k[741]=q;k[q+4>>2]=p|1;if((q|0)!=(k[740]|0))return;k[740]=0;k[737]=0;return}if((n|0)==(k[740]|0)){p=(k[737]|0)+e|0;k[737]=p;k[740]=q;k[q+4>>2]=p|1;k[q+p>>2]=p;return}e=(b&-8)+e|0;d=b>>>3;do if(b>>>0>=256){f=k[n+24>>2]|0;a=k[n+12>>2]|0;do if((a|0)==(n|0)){c=n+16|0;b=c+4|0;a=k[b>>2]|0;if(!a){a=k[c>>2]|0;if(!a){m=0;break}else d=c}else d=b;while(1){c=a+20|0;b=k[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=k[c>>2]|0;if(!b)break;else{a=b;d=c}}if(d>>>0<(k[739]|0)>>>0)va();else{k[d>>2]=0;m=a;break}}else{b=k[n+8>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();c=b+12|0;if((k[c>>2]|0)!=(n|0))va();d=a+8|0;if((k[d>>2]|0)==(n|0)){k[c>>2]=a;k[d>>2]=b;m=a;break}else va()}while(0);if(f|0){a=k[n+28>>2]|0;b=3244+(a<<2)|0;if((n|0)==(k[b>>2]|0)){k[b>>2]=m;if(!m){k[736]=k[736]&~(1<<a);break}}else{if(f>>>0<(k[739]|0)>>>0)va();a=f+16|0;if((k[a>>2]|0)==(n|0))k[a>>2]=m;else k[f+20>>2]=m;if(!m)break}c=k[739]|0;if(m>>>0<c>>>0)va();k[m+24>>2]=f;b=n+16|0;a=k[b>>2]|0;do if(a|0)if(a>>>0<c>>>0)va();else{k[m+16>>2]=a;k[a+24>>2]=m;break}while(0);a=k[b+4>>2]|0;if(a|0)if(a>>>0<(k[739]|0)>>>0)va();else{k[m+20>>2]=a;k[a+24>>2]=m;break}}}else{b=k[n+8>>2]|0;c=k[n+12>>2]|0;a=2980+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(k[739]|0)>>>0)va();if((k[b+12>>2]|0)!=(n|0))va()}if((c|0)==(b|0)){k[735]=k[735]&~(1<<d);break}if((c|0)!=(a|0)){if(c>>>0<(k[739]|0)>>>0)va();a=c+8|0;if((k[a>>2]|0)==(n|0))l=a;else va()}else l=c+8|0;k[b+12>>2]=c;k[l>>2]=b}while(0);k[q+4>>2]=e|1;k[q+e>>2]=e;if((q|0)==(k[740]|0)){k[737]=e;return}}else{k[a>>2]=b&-2;k[q+4>>2]=e|1;k[q+e>>2]=e}a=e>>>3;if(e>>>0<256){c=2980+(a<<1<<2)|0;b=k[735]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)va();else{o=a;p=b}}else{k[735]=b|a;o=c+8|0;p=c}k[o>>2]=q;k[p+12>>2]=q;k[q+8>>2]=p;k[q+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)b=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;b=(p+245760|0)>>>16&2;b=14-(n|o|b)+(p<<b>>>15)|0;b=e>>>(b+7|0)&1|b<<1}else b=0;d=3244+(b<<2)|0;k[q+28>>2]=b;k[q+20>>2]=0;k[q+16>>2]=0;a=k[736]|0;c=1<<b;do if(a&c){b=e<<((b|0)==31?0:25-(b>>>1)|0);d=k[d>>2]|0;while(1){if((k[d+4>>2]&-8|0)==(e|0)){a=130;break}c=d+16+(b>>>31<<2)|0;a=k[c>>2]|0;if(!a){a=127;break}else{b=b<<1;d=a}}if((a|0)==127)if(c>>>0<(k[739]|0)>>>0)va();else{k[c>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q;break}else if((a|0)==130){b=d+8|0;a=k[b>>2]|0;p=k[739]|0;if(a>>>0>=p>>>0&d>>>0>=p>>>0){k[a+12>>2]=q;k[b>>2]=q;k[q+8>>2]=a;k[q+12>>2]=d;k[q+24>>2]=0;break}else va()}}else{k[736]=a|c;k[d>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q}while(0);q=(k[743]|0)+-1|0;k[743]=q;if(!q)a=3396;else return;while(1){a=k[a>>2]|0;if(!a)break;else a=a+8|0}k[743]=-1;return}function ub(){}function vb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (L=d,a-c>>>0|0)|0}function wb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function xb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function yb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function zb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Ba(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function Bb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)<(a|0)&(a|0)<(b+c|0)){d=a;b=b+c|0;a=a+c|0;while((c|0)>0){a=a-1|0;b=b-1|0;c=c-1|0;i[a>>0]=i[b>>0]|0}a=d}else Ab(a,b,c)|0;return a|0}function Cb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function Db(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function Eb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=ha(e,f)|0;d=a>>>16;a=(c>>>16)+(ha(e,d)|0)|0;e=b>>>16;b=ha(e,f)|0;return (L=(a>>>16)+(ha(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Fb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=vb(j^a|0,i^b|0,j|0,i|0)|0;g=L;a=f^j;b=e^i;return vb((Kb(h,g,vb(f^c|0,e^d|0,f|0,e|0)|0,L,0)|0)^a|0,L^b|0,a|0,b|0)|0}function Gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=r;r=r+16|0;h=e|0;g=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;j=d>>31|((d|0)<0?-1:0)<<1;i=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=vb(g^a|0,f^b|0,g|0,f|0)|0;b=L;Kb(a,b,vb(j^c|0,i^d|0,j|0,i|0)|0,L,h)|0;d=vb(k[h>>2]^g|0,k[h+4>>2]^f|0,g|0,f|0)|0;c=L;r=e;return (L=c,d)|0}function Hb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Eb(e,f)|0;a=L;return (L=(ha(b,f)|0)+(ha(d,e)|0)+a|a&0,c|0|0)|0}function Ib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Kb(a,b,c,d,0)|0}function Jb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;Kb(a,b,c,d,e)|0;r=f;return (L=k[e+4>>2]|0,k[e>>2]|0)|0}function Kb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (L=n,e)|0}else{if(!f){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (L=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (L=n,e)|0}f=g-1|0;if(f&g|0){h=(ja(g|0)|0)+33-(ja(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e|0){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (L=o,p)|0}else{p=Db(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (L=o,p)|0}}else{if(f){if(e|0){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (L=o,p)|0}if(!l){if(e|0){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (L=o,p)|0}f=h-1|0;if(!(f&h)){if(e|0){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((Db(h|0)|0)>>>0);return (L=o,p)|0}f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (L=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (L=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=wb(m|0,l|0,-1,-1)|0;c=L;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;vb(j|0,c|0,d|0,n|0)|0;p=L;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=vb(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=L;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e|0){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (L=o,p)|0}function Lb(a,b){a=a|0;b=b|0;return Ia[a&7](b|0)|0}function Mb(a){a=a|0;return na(0,a|0)|0}function Nb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ja[a&7](b|0,c|0,d|0)|0}function Ob(a,b,c){a=a|0;b=b|0;c=c|0;return pa(0,a|0,b|0,c|0)|0}function Pb(a,b){a=a|0;b=b|0;Ka[a&7](b|0)}function Qb(a){a=a|0;ra(0,a|0)}function Rb(a){a=a|0;ka(0);return 0}function Sb(a,b,c){a=a|0;b=b|0;c=c|0;ka(1);return 0}function Tb(a){a=a|0;ka(2)}
// EMSCRIPTEN_END_FUNCS
var Ia=[Rb,Rb,Mb,Rb,eb,Rb,Rb,Rb];var Ja=[Sb,Sb,Ob,Sb,gb,fb,Sb,Sb];var Ka=[Tb,Tb,Qb,Tb,hb,Tb,Tb,Tb];return{_jitter_buffer_update_delay:bb,_i64Subtract:vb,_jitter_buffer_init:Ua,_jitter_buffer_destroy:Xa,_i64Add:wb,_memmove:Bb,_jitter_buffer_ctl:Va,_jitter_buffer_get_pointer_timestamp:cb,_memset:xb,_malloc:sb,_free:tb,_memcpy:Ab,_jitter_buffer_get:_a,_bitshift64Lshr:yb,_jitter_buffer_get_another:ab,_jitter_buffer_put:Ya,_bitshift64Shl:zb,_jitter_buffer_reset:Wa,_jitter_buffer_tick:db,runPostSets:ub,_emscripten_replace_memory:Ha,stackAlloc:La,stackSave:Ma,stackRestore:Na,establishStackSpace:Oa,setThrew:Pa,setTempRet0:Sa,getTempRet0:Ta,dynCall_ii:Lb,dynCall_iiii:Nb,dynCall_vi:Pb}})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _jitter_buffer_update_delay=Module["_jitter_buffer_update_delay"]=asm["_jitter_buffer_update_delay"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _jitter_buffer_init=Module["_jitter_buffer_init"]=asm["_jitter_buffer_init"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _jitter_buffer_tick=Module["_jitter_buffer_tick"]=asm["_jitter_buffer_tick"];var _jitter_buffer_destroy=Module["_jitter_buffer_destroy"]=asm["_jitter_buffer_destroy"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _memmove=Module["_memmove"]=asm["_memmove"];var _jitter_buffer_ctl=Module["_jitter_buffer_ctl"]=asm["_jitter_buffer_ctl"];var _jitter_buffer_get_pointer_timestamp=Module["_jitter_buffer_get_pointer_timestamp"]=asm["_jitter_buffer_get_pointer_timestamp"];var _memset=Module["_memset"]=asm["_memset"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _jitter_buffer_get=Module["_jitter_buffer_get"]=asm["_jitter_buffer_get"];var _jitter_buffer_get_another=Module["_jitter_buffer_get_another"]=asm["_jitter_buffer_get_another"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _free=Module["_free"]=asm["_free"];var _jitter_buffer_put=Module["_jitter_buffer_put"]=asm["_jitter_buffer_put"];var _jitter_buffer_reset=Module["_jitter_buffer_reset"]=asm["_jitter_buffer_reset"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){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()