-
Notifications
You must be signed in to change notification settings - Fork 4
/
apriltag.js
18 lines (11 loc) · 263 KB
/
apriltag.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// autogenerated
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 shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}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 shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_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"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,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]){if(sig.length===1){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func)}}else if(sig.length===2){sigCache[func]=function dynCall_wrapper(arg){return Runtime.dynCall(sig,func,[arg])}}else{sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,Array.prototype.slice.call(arguments))}}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}Module["stackTrace"]=stackTrace;var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,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,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=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 PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY<HEAP32[DYNAMICTOP_PTR>>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;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;if(TOTAL_MEMORY<TOTAL_STACK)Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(TOTAL_MEMORY)}}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var lastChar,end;if(dontAddNull){end=buffer+lengthBytesUTF8(string);lastChar=HEAP8[end]}stringToUTF8(string,buffer,Infinity);if(dontAddNull)HEAP8[end]=lastChar}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<<bits-1)+value:Math.pow(2,bits)+value}function reSign(value,bits,ignore){if(value<=0){return value}var half=bits<=32?Math.abs(1<<bits-1):Math.pow(2,bits-1);if(value>=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+6016;__ATINIT__.push();memoryInitializer="apriltag.js.mem";var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function ___lock(){}function ___unlock(){}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);Runtime.stackRestore(ret)}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);Module["_llvm_cttz_i32"]=_llvm_cttz_i32;Module["___udivmoddi4"]=___udivmoddi4;Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}Module["_sbrk"]=_sbrk;function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(Runtime.stackSave());return self.LLVM_SAVEDSTACKS.length-1}function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function getNextArg(type){var ret;argIndex=Runtime.prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break};case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;var currArg=getNextArg("i"+argSize*8);var origArg=currArg;var argText;if(argSize==8){currArg=Runtime.makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){if(argSize==8&&i64Math)argText=i64Math.stringify(origArg[0],origArg[1],null);else argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){if(argSize==8&&i64Math)argText=i64Math.stringify(origArg[0],origArg[1],true);else argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(argSize==8&&i64Math){if(origArg[1]){argText=(origArg[1]>>>0).toString(16);var lower=(origArg[0]>>>0).toString(16);while(lower.length<8)lower="0"+lower;argText+=lower}else{argText=(origArg[0]>>>0).toString(16)}}else if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i<argText.length;i++){buffer.push((15-parseInt(argText[i],16)).toString(16))}argText=buffer.join("");while(argText.length<argSize*2)argText="f"+argText}else{argText=currAbsArg.toString(16)}if(next==88){prefix=prefix.toUpperCase();argText=argText.toUpperCase()}}else if(next==112){if(currAbsArg===0){argText="(nil)"}else{prefix="0x";argText=currAbsArg.toString(16)}}if(precisionSet){while(argText.length<precision){argText="0"+argText}}if(currArg>=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.length<width){if(flagLeftAlign){argText+=" "}else{if(flagZeroPad){argText="0"+argText}else{prefix=" "+prefix}}}argText=prefix+argText;argText.split("").forEach((function(chr){ret.push(chr.charCodeAt(0))}));break};case"f":case"F":case"e":case"E":case"g":case"G":{var currArg=getNextArg("double");var argText;if(isNaN(currArg)){argText="nan";flagZeroPad=false}else if(!isFinite(currArg)){argText=(currArg<0?"-":"")+"inf";flagZeroPad=false}else{var isGeneral=false;var effectivePrecision=Math.min(precision,20);if(next==103||next==71){isGeneral=true;precision=precision||1;var exponent=parseInt(currArg.toExponential(effectivePrecision).split("e")[1],10);if(precision>exponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length<width){if(flagLeftAlign){argText+=" "}else{if(flagZeroPad&&(argText[0]=="-"||argText[0]=="+")){argText=argText[0]+"0"+argText.slice(1)}else{argText=(flagZeroPad?"0":" ")+argText}}}if(next<97)argText=argText.toUpperCase();argText.split("").forEach((function(chr){ret.push(chr.charCodeAt(0))}));break};case"s":{var arg=getNextArg("i8*");var argLength=arg?_strlen(arg):"(null)".length;if(precisionSet)argLength=Math.min(argLength,precision);if(!flagLeftAlign){while(argLength<width--){ret.push(32)}}if(arg){for(var i=0;i<argLength;i++){ret.push(HEAPU8[arg++>>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength<width--){ret.push(32)}}break};case"c":{if(flagLeftAlign)ret.push(getNextArg("i8"));while(--width>0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break};case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break};case"%":{ret.push(curr);break};default:{for(var i=startTextIndex;i<textIndex+2;i++){ret.push(HEAP8[i>>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){Runtime.warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){var stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=" at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?" = "+jsSymbolName:" at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){Module.printErr(str)}else{Module.print(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=Math.max(Runtime.getNativeFieldSize("i32"),Runtime.getAlignSize("i32",null,true));var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i<result.length;++i){str+=String.fromCharCode(result[i])}}_emscripten_log_js(flags,str)}Module["___uremdi3"]=___uremdi3;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}Module["_llvm_bswap_i32"]=_llvm_bswap_i32;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 ___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;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 ___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 ___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}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}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)}));DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function 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;Module["setThrew"](1,0)}}function jsCall_vi(index,a1){Runtime.functionPointers[index](a1)}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function jsCall_ii(index,a1){return Runtime.functionPointers[index](a1)}function invoke_viddddddddddddddddd(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18){try{Module["dynCall_viddddddddddddddddd"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function jsCall_viddddddddddddddddd(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18){Runtime.functionPointers[index](a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18)}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function jsCall_iii(index,a1,a2){return Runtime.functionPointers[index](a1,a2)}function invoke_diiii(index,a1,a2,a3,a4){try{return Module["dynCall_diiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function jsCall_diiii(index,a1,a2,a3,a4){return Runtime.functionPointers[index](a1,a2,a3,a4)}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,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_iiii":invoke_iiii,"jsCall_iiii":jsCall_iiii,"invoke_vi":invoke_vi,"jsCall_vi":jsCall_vi,"invoke_ii":invoke_ii,"jsCall_ii":jsCall_ii,"invoke_viddddddddddddddddd":invoke_viddddddddddddddddd,"jsCall_viddddddddddddddddd":jsCall_viddddddddddddddddd,"invoke_iii":invoke_iii,"jsCall_iii":jsCall_iii,"invoke_diiii":invoke_diiii,"jsCall_diiii":jsCall_diiii,"__formatString":__formatString,"__emscripten_traverse_stack":__emscripten_traverse_stack,"__exit":__exit,"_emscripten_log_js":_emscripten_log_js,"___lock":___lock,"___syscall6":___syscall6,"___setErrNo":___setErrNo,"_llvm_stacksave":_llvm_stacksave,"___syscall140":___syscall140,"_emscripten_get_callstack_js":_emscripten_get_callstack_js,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"_abort":_abort,"_exit":_exit,"_llvm_stackrestore":_llvm_stackrestore,"___assert_fail":___assert_fail,"__reallyNegative":__reallyNegative,"___syscall146":___syscall146,"_emscripten_log":_emscripten_log,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"almost asm";var a=global.Int8Array;var b=new a(buffer);var c=global.Int16Array;var d=new c(buffer);var e=global.Int32Array;var f=new e(buffer);var g=global.Uint8Array;var h=new g(buffer);var i=global.Uint16Array;var j=new i(buffer);var k=global.Uint32Array;var l=new k(buffer);var m=global.Float32Array;var n=new m(buffer);var o=global.Float64Array;var p=new o(buffer);var q=global.byteLength;var r=env.DYNAMICTOP_PTR|0;var s=env.tempDoublePtr|0;var t=env.ABORT|0;var u=env.STACKTOP|0;var v=env.STACK_MAX|0;var w=env.cttz_i8|0;var x=0;var y=0;var z=0;var A=0;var B=global.NaN,C=global.Infinity;var D=0,E=0,F=0,G=0,H=0.0;var I=0;var J=global.Math.floor;var K=global.Math.abs;var L=global.Math.sqrt;var M=global.Math.pow;var N=global.Math.cos;var O=global.Math.sin;var P=global.Math.tan;var Q=global.Math.acos;var R=global.Math.asin;var S=global.Math.atan;var T=global.Math.atan2;var U=global.Math.exp;var V=global.Math.log;var W=global.Math.ceil;var X=global.Math.imul;var Y=global.Math.min;var Z=global.Math.max;var _=global.Math.clz32;var $=env.abort;var aa=env.assert;var ba=env.enlargeMemory;var ca=env.getTotalMemory;var da=env.abortOnCannotGrowMemory;var ea=env.invoke_iiii;var fa=env.jsCall_iiii;var ga=env.invoke_vi;var ha=env.jsCall_vi;var ia=env.invoke_ii;var ja=env.jsCall_ii;var ka=env.invoke_viddddddddddddddddd;var la=env.jsCall_viddddddddddddddddd;var ma=env.invoke_iii;var na=env.jsCall_iii;var oa=env.invoke_diiii;var pa=env.jsCall_diiii;var qa=env.__formatString;var ra=env.__emscripten_traverse_stack;var sa=env.__exit;var ta=env._emscripten_log_js;var ua=env.___lock;var va=env.___syscall6;var wa=env.___setErrNo;var xa=env._llvm_stacksave;var ya=env.___syscall140;var za=env._emscripten_get_callstack_js;var Aa=env._emscripten_memcpy_big;var Ba=env.___syscall54;var Ca=env.___unlock;var Da=env._abort;var Ea=env._exit;var Fa=env._llvm_stackrestore;var Ga=env.___assert_fail;var Ha=env.__reallyNegative;var Ia=env.___syscall146;var Ja=env._emscripten_log;var Ka=0.0;function La(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true}
// EMSCRIPTEN_START_FUNCS
function Sa(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function Ta(){return u|0}function Ua(a){a=a|0;u=a}function Va(a,b){a=a|0;b=b|0;u=a;v=b}function Wa(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function Xa(a){a=a|0;I=a}function Ya(){return I|0}function Za(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0;g=u;u=u+32|0;i=g+16|0;j=g;f[j>>2]=568;f[j+4>>2]=c;f[j+8>>2]=d;Ja(0,j|0);k=Hd(X(d,c)|0)|0;if((d|0)>0&(c|0)>0){l=c<<2;m=e;e=0;while(1){o=X(e,c)|0;q=0;r=m;while(1){s=~~((+(h[r>>0]|0)/255.0*.2126+ +(h[r+1>>0]|0)/255.0*.7152+ +(h[r+2>>0]|0)/255.0*.0722)*255.0);t=(s|0)>0?s:0;b[k+(q+o)>>0]=(t|0)<255?t:255;q=q+1|0;if((q|0)==(c|0))break;else r=r+4|0}e=e+1|0;if((e|0)==(d|0))break;else m=m+l|0}}l=Wb()|0;f[l+8>>2]=1;m=ab()|0;$a(m,l,2);n[m+4>>2]=1.0;n[m+8>>2]=0.0;f[m+12>>2]=1;f[m+16>>2]=0;f[m+20>>2]=0;f[i>>2]=593;Ja(0,i|0);f[i>>2]=c;f[i+4>>2]=d;f[i+8>>2]=c;f[i+12>>2]=k;c=ib(m,i)|0;if(!c)Ga(1764,1775,138,1793);i=c+4|0;d=c+12|0;if((f[i>>2]|0)>0){e=0;do{r=f[c>>2]|0;_d(j|0,(f[d>>2]|0)+(X(r,e)|0)|0,r|0)|0;r=f[j>>2]|0;q=f[r+20>>2]|0;Pa[a&63](f[r+4>>2]|0,+p[r+40>>3],+p[r+48>>3],+p[r+56>>3],+p[r+64>>3],+p[r+72>>3],+p[r+80>>3],+p[r+88>>3],+p[r+96>>3],+p[q+8>>3],+p[q+16>>3],+p[q+24>>3],+p[q+32>>3],+p[q+40>>3],+p[q+48>>3],+p[q+56>>3],+p[q+64>>3],+p[q+72>>3]);e=e+1|0}while((e|0)<(f[i>>2]|0))}i=f[d>>2]|0;if(!i){Id(c);bb(m);Xb(l);Id(k);u=g;return 0}Id(i);Id(c);bb(m);Xb(l);Id(k);u=g;return 0}function _a(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;e=a+24|0;if(f[e>>2]|0)Ga(609,630,195,641);g=f[a>>2]|0;if(g>>>0>=65535)Ga(659,630,196,641);h=Jd(1,8)|0;i=f[a+12>>2]|0;j=X(i,i)|0;i=(c|0)>0;k=X(j,g)|0;l=(i?k:0)+g|0;m=(c|0)>1;n=j+-1|0;o=l+(X(k,n)|0)|0;if(m)if((c|0)==2){p=o;q=1}else{p=(X(X(X(n,j)|0,j+-2|0)|0,g)|0)+o|0;q=0}else{p=l;q=1}l=p*3|0;f[h>>2]=l;o=Jd(l,16)|0;n=h+4|0;f[n>>2]=o;if(!o){Gd(682)|0;Ea(-1)}if((p|0)>0){p=0;do{k=o+(p<<4)|0;f[k>>2]=-1;f[k+4>>2]=-1;p=p+1|0}while((p|0)<(l|0))}if(!g){f[e>>2]=h;return}p=a+4|0;k=(c|0)>3;c=(j|0)<1;r=c|i^1;i=c|m^1;m=q|c;c=0;q=g;g=l;l=o;while(1){o=(f[p>>2]|0)+(c<<3)|0;s=f[o>>2]|0;t=f[o+4>>2]|0;o=((g|0)<0)<<31>>31;u=Zd(s|0,t|0,g|0,o|0)|0;v=l+(u<<4)|0;w=v;if((f[w>>2]|0)==-1?(f[w+4>>2]|0)==-1:0){x=u;y=v}else{v=u;while(1){u=((v+1|0)>>>0)%(g>>>0)|0;w=l+(u<<4)|0;z=w;if((f[z>>2]|0)==-1?(f[z+4>>2]|0)==-1:0){x=u;y=w;break}else v=u}}v=y;f[v>>2]=s;f[v+4>>2]=t;v=c&65535;d[l+(x<<4)+8>>1]=v;b[l+(x<<4)+10>>0]=0;if(!r){u=0;do{w=1<<u;z=w^s;A=((w|0)<0)<<31>>31^t;w=Zd(z|0,A|0,g|0,o|0)|0;B=l+(w<<4)|0;C=B;if((f[C>>2]|0)==-1?(f[C+4>>2]|0)==-1:0){D=w;E=B}else{B=w;while(1){w=((B+1|0)>>>0)%(g>>>0)|0;C=l+(w<<4)|0;F=C;if((f[F>>2]|0)==-1?(f[F+4>>2]|0)==-1:0){D=w;E=C;break}else B=w}}B=E;f[B>>2]=z;f[B+4>>2]=A;d[l+(D<<4)+8>>1]=v;b[l+(D<<4)+10>>0]=1;u=u+1|0}while((u|0)!=(j|0))}if(!i){u=0;do{if((u|0)>0){B=1<<u;w=B^s;C=((B|0)<0)<<31>>31^t;B=0;do{F=1<<B;G=w^F;H=C^((F|0)<0)<<31>>31;F=Zd(G|0,H|0,g|0,o|0)|0;I=l+(F<<4)|0;J=I;if((f[J>>2]|0)==-1?(f[J+4>>2]|0)==-1:0){K=F;L=I}else{I=F;while(1){F=((I+1|0)>>>0)%(g>>>0)|0;J=l+(F<<4)|0;M=J;if((f[M>>2]|0)==-1?(f[M+4>>2]|0)==-1:0){K=F;L=J;break}else I=F}}I=L;f[I>>2]=G;f[I+4>>2]=H;d[l+(K<<4)+8>>1]=v;b[l+(K<<4)+10>>0]=2;B=B+1|0}while((B|0)!=(u|0))}u=u+1|0}while((u|0)!=(j|0))}if(!m){u=0;do{if((u|0)>0){B=1<<u;C=B^s;w=((B|0)<0)<<31>>31^t;B=0;do{if((B|0)>0){A=1<<B;z=C^A;I=w^((A|0)<0)<<31>>31;A=0;do{F=1<<A;J=z^F;M=I^((F|0)<0)<<31>>31;F=Zd(J|0,M|0,g|0,o|0)|0;N=l+(F<<4)|0;O=N;if((f[O>>2]|0)==-1?(f[O+4>>2]|0)==-1:0){P=F;Q=N}else{N=F;while(1){F=((N+1|0)>>>0)%(g>>>0)|0;O=l+(F<<4)|0;R=O;if((f[R>>2]|0)==-1?(f[R+4>>2]|0)==-1:0){P=F;Q=O;break}else N=F}}N=Q;f[N>>2]=J;f[N+4>>2]=M;d[l+(P<<4)+8>>1]=v;b[l+(P<<4)+10>>0]=3;A=A+1|0}while((A|0)!=(B|0))}B=B+1|0}while((B|0)!=(u|0))}u=u+1|0}while((u|0)!=(j|0))}if(k){Gd(760)|0;S=f[a>>2]|0}else S=q;u=c+1|0;if(u>>>0>=S>>>0)break;c=u;q=S;g=f[h>>2]|0;l=f[n>>2]|0}f[e>>2]=h;return}function $a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=u;u=u+16|0;e=d;f[e>>2]=b;g=f[a+60>>2]|0;if(!g)Ga(1764,1775,187,1901);a=g+4|0;h=f[a>>2]|0;i=g+8|0;j=f[i>>2]|0;if((j|0)>(h|0)){k=g;l=h;m=f[g+12>>2]|0}else{n=j;do{j=n<<1;n=(j|0)>8?j:8}while((n|0)<=(h|0));f[i>>2]=n;i=g+12|0;h=Kd(f[i>>2]|0,X(f[g>>2]|0,n)|0)|0;f[i>>2]=h;k=g;l=f[a>>2]|0;m=h}h=f[k>>2]|0;_d(m+(X(h,l)|0)|0,e|0,h|0)|0;f[a>>2]=(f[a>>2]|0)+1;if(f[b+24>>2]|0){u=d;return}_a(b,c);u=d;return}function ab(){var a=0,b=0;a=Jd(1,68)|0;n[a+4>>2]=1.0;f[a+28>>2]=10;f[a+24>>2]=5;n[a+36>>2]=10.0;n[a+32>>2]=.1745329201221466;f[a+40>>2]=5;b=Jd(1,16)|0;f[b>>2]=4;f[a+60>>2]=b;f[a+12>>2]=1;return a|0}function bb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=u;u=u+16|0;c=b;mb(f[a+64>>2]|0);d=a+60|0;e=f[d>>2]|0;if(!e)Ga(1764,1775,138,1793);g=0;h=e;a:while(1){i=h+4|0;e=f[i>>2]|0;if((g|0)>=(e|0)){j=4;break}k=f[h+12>>2]|0;l=f[h>>2]|0;m=g;while(1){_d(c|0,k+(X(l,m)|0)|0,l|0)|0;n=(f[c>>2]|0)+24|0;o=f[n>>2]|0;if(o|0)break;p=m+1|0;if((p|0)<(e|0))m=p;else{j=10;break a}}Id(f[o+4>>2]|0);Id(o);f[n>>2]=0;e=f[d>>2]|0;if(!e){j=6;break}else{g=m+1|0;h=e}}if((j|0)==4)f[i>>2]=0;else if((j|0)==6)Ga(1764,1775,138,1793);else if((j|0)==10?(f[i>>2]=0,(h|0)==0):0){Id(a);u=b;return}i=f[h+12>>2]|0;if(i|0)Id(i);Id(h);Id(a);u=b;return}function cb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;b=u;u=u+16|0;c=b;d=Jd(1,16)|0;f[d>>2]=16;e=c+4|0;g=c+8|0;h=c+12|0;i=d+4|0;j=d+8|0;k=d+12|0;if(!d)Ga(1764,1775,187,1901);else{l=0;m=0;o=0}while(1){n[c>>2]=(l|0)==0|(l|0)==3?-1.0:1.0;n[e>>2]=(l|1|0)==1?-1.0:1.0;f[g>>2]=f[a+(l<<3)>>2];f[h>>2]=f[a+(l<<3)+4>>2];if((m|0)>(o|0)){p=o;q=f[k>>2]|0}else{r=m;do{s=r<<1;r=(s|0)>8?s:8}while((r|0)<=(o|0));f[j>>2]=r;s=Kd(f[k>>2]|0,X(f[d>>2]|0,r)|0)|0;f[k>>2]=s;p=f[i>>2]|0;q=s}s=f[d>>2]|0;_d(q+(X(s,p)|0)|0,c|0,s|0)|0;s=(f[i>>2]|0)+1|0;f[i>>2]=s;t=l+1|0;if((t|0)==4)break;l=t;m=f[j>>2]|0;o=s}o=a+32|0;j=f[o>>2]|0;if(j|0)sb(j);j=a+36|0;a=f[j>>2]|0;if(a|0)sb(a);a=Ob(d,0)|0;f[o>>2]=a;m=zb(a)|0;f[j>>2]=m;m=f[k>>2]|0;if(m|0)Id(m);Id(d);if(f[o>>2]|0?f[j>>2]|0:0){v=0;u=b;return v|0}v=-1;u=b;return v|0}function db(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0.0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,L=0,M=0,N=0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0;e=a+8|0;g=2.0/+(((f[e>>2]<<1)+(f[a+12>>2]|0)|0)>>>0);h=-1.0-g;i=g+1.0;a=f[d+32>>2]|0;j=f[a+4>>2]|0;k=+p[a+8>>3];l=+p[a+16>>3];m=+p[a+24>>3];n=+p[a+8+(j<<3)>>3];o=+p[a+8+(j+1<<3)>>3];q=+p[a+8+(j+2<<3)>>3];r=j<<1;s=+p[a+8+(r<<3)>>3];t=+p[a+8+((r|1)<<3)>>3];u=+p[a+8+(r+2<<3)>>3];v=h*k;w=h*l;x=h*n;y=h*o;z=h*s;A=h*t;h=u+(z+A);r=~~((m+(v+w))/h);a=(r|0)>0?r:0;j=~~((q+(x+y))/h);B=(j|0)>0?j:0;h=i*k;k=i*n;n=i*s;s=u+(n+A);C=~~((m+(h+w))/s);D=(r|0)<(C|0)?r:C;r=(a|0)>(C|0)?a:C;C=~~((q+(k+y))/s);a=(j|0)<(C|0)?j:C;j=(B|0)>(C|0)?B:C;s=i*l;l=i*o;o=i*t;t=u+(n+o);C=~~((m+(h+s))/t);B=(D|0)<(C|0)?D:C;D=(r|0)>(C|0)?r:C;C=~~((q+(k+l))/t);r=(a|0)<(C|0)?a:C;a=(j|0)>(C|0)?j:C;t=u+(z+o);C=~~((m+(v+s))/t);j=(B|0)<(C|0)?B:C;B=(D|0)>(C|0)?D:C;C=~~((q+(x+l))/t);D=(r|0)<(C|0)?r:C;r=(a|0)>(C|0)?a:C;C=(j|0)>0?j:0;j=(f[c>>2]|0)+-1|0;a=(j|0)<(B|0)?j:B;B=(D|0)>0?D:0;D=(f[c+4>>2]|0)+-1|0;j=(D|0)<(r|0)?D:r;r=f[d+36>>2]|0;if((B|0)>(j|0)){E=0;F=0;G=0;H=0;J=0;L=0;M=0;N=0;O=+(F>>>0)+4294967296.0*+(E|0);P=+(H>>>0)+4294967296.0*+(G|0);Q=O/P;R=+(L>>>0)+4294967296.0*+(J|0);S=+(N>>>0)+4294967296.0*+(M|0);T=R/S;U=Q-T;return +U}d=f[r+4>>2]|0;t=+p[r+8>>3];l=+(C|0)+.5;x=l*t;q=+p[r+16>>3];s=+p[r+24>>3];v=+p[r+8+(d<<3)>>3];m=l*v;o=+p[r+8+(d+1<<3)>>3];z=+p[r+8+(d+2<<3)>>3];D=d<<1;u=+p[r+8+(D<<3)>>3];k=l*u;l=+p[r+8+((D|1)<<3)>>3];h=+p[r+8+(D+2<<3)>>3];n=g+1.0;D=c+12|0;r=c+8|0;i=1.0-g*+((f[e>>2]|0)>>>0);if((C|0)>(a|0)){E=0;F=0;G=0;H=0;J=0;L=0;M=0;N=0;O=+(F>>>0)+4294967296.0*+(E|0);P=+(H>>>0)+4294967296.0*+(G|0);Q=O/P;R=+(L>>>0)+4294967296.0*+(J|0);S=+(N>>>0)+4294967296.0*+(M|0);T=R/S;U=Q-T;return +U}else{V=B;W=0;Y=0;Z=0;_=0;$=0;aa=0;ba=0;ca=0}while(1){g=+(V|0)+.5;B=C;y=h+(k+g*l);w=z+(m+g*o);A=s+(x+g*q);e=W;c=Y;d=$;da=aa;ea=ba;fa=ca;ga=Z;ha=_;while(1){g=+sd(+K(+(A/y)),+K(+(w/y)));A=A+t;w=w+v;y=y+u;do if(!(g>=n)){ia=(f[D>>2]|0)+((X(f[r>>2]|0,V)|0)+B)|0;ja=b[ia>>0]|0;if(g>=1.0){ia=Pd(ja&255|0,0,e|0,c|0)|0;ka=I;la=Pd(d|0,da|0,1,0)|0;ma=ia;na=ka;oa=ga;pa=ha;qa=la;ra=I;sa=ea;ta=fa;break}if(g>=i){la=Pd(ea|0,fa|0,1,0)|0;ka=I;ia=Pd(ja&255|0,0,ga|0,ha|0)|0;ma=e;na=c;oa=ia;pa=I;qa=d;ra=da;sa=la;ta=ka}else{ma=e;na=c;oa=ga;pa=ha;qa=d;ra=da;sa=ea;ta=fa}}else{ma=e;na=c;oa=ga;pa=ha;qa=d;ra=da;sa=ea;ta=fa}while(0);if((B|0)>=(a|0))break;else{B=B+1|0;e=ma;c=na;d=qa;da=ra;ea=sa;fa=ta;ga=oa;ha=pa}}if((V|0)<(j|0)){V=V+1|0;W=ma;Y=na;Z=oa;_=pa;$=qa;aa=ra;ba=sa;ca=ta}else{E=na;F=ma;G=ra;H=qa;J=pa;L=oa;M=ta;N=sa;break}}O=+(F>>>0)+4294967296.0*+(E|0);P=+(H>>>0)+4294967296.0*+(G|0);Q=O/P;R=+(L>>>0)+4294967296.0*+(J|0);S=+(N>>>0)+4294967296.0*+(M|0);T=R/S;U=Q-T;return +U}function eb(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,o=0.0,q=0,r=0,s=0.0,t=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,J=0.0,K=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0,T=0,U=0,V=0.0,W=0.0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0.0,la=0.0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0.0,ua=0.0,va=0.0,wa=0.0,xa=0.0,ya=0.0,za=0.0,Aa=0.0,Ba=0.0,Ca=0.0,Da=0.0,Ea=0.0,Fa=0.0,Ga=0.0,Ha=0.0,Ia=0.0,Ja=0.0,Ka=0.0,La=0,Ma=0.0,Na=0.0,Oa=0.0,Pa=0.0,Qa=0,Ra=0,Sa=0,Ta=0.0,Ua=0.0,Va=0.0,Wa=0.0,Xa=0.0,Ya=0.0,Za=0.0,_a=0.0,$a=0.0,ab=0.0,bb=0.0,cb=0.0,db=0.0,eb=0.0,fb=0.0,gb=0.0,hb=0.0,ib=0.0,jb=0.0,kb=0.0,lb=0.0,mb=0.0,nb=0.0,ob=0,pb=0,qb=0,rb=0.0,sb=0.0,tb=0.0,ub=0.0,vb=0,wb=0,xb=0.0,yb=0.0,zb=0.0,Ab=0.0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0;j=u;u=u+160|0;k=j;n[k>>2]=-.5;n[k+4>>2]=.5;n[k+8>>2]=0.0;n[k+12>>2]=1.0;n[k+16>>2]=1.0;l=a+8|0;m=f[l>>2]|0;o=+(m>>>0)*.5;n[k+20>>2]=o+0.0;n[k+24>>2]=.5;n[k+28>>2]=0.0;n[k+32>>2]=1.0;n[k+36>>2]=0.0;q=a+12|0;r=f[q>>2]|0;s=+(((m<<1)+r|0)>>>0);t=s+.5;n[k+40>>2]=t;n[k+44>>2]=.5;n[k+48>>2]=0.0;n[k+52>>2]=1.0;n[k+56>>2]=1.0;v=s-o;n[k+60>>2]=v;n[k+64>>2]=.5;n[k+68>>2]=0.0;n[k+72>>2]=1.0;n[k+76>>2]=0.0;n[k+80>>2]=.5;n[k+84>>2]=-.5;n[k+88>>2]=1.0;n[k+92>>2]=0.0;n[k+96>>2]=1.0;n[k+100>>2]=.5;n[k+104>>2]=o;n[k+108>>2]=1.0;n[k+112>>2]=0.0;n[k+116>>2]=0.0;n[k+120>>2]=.5;n[k+124>>2]=t;n[k+128>>2]=1.0;n[k+132>>2]=0.0;n[k+136>>2]=1.0;n[k+140>>2]=.5;n[k+144>>2]=v;n[k+148>>2]=1.0;n[k+152>>2]=0.0;n[k+156>>2]=0.0;w=e+32|0;e=c+4|0;x=c+12|0;y=c+8|0;z=(i|0)==0;A=i+12|0;B=i+8|0;i=0;v=0.0;t=0.0;o=0.0;s=0.0;C=0.0;D=0.0;E=0.0;F=0.0;G=0.0;H=0.0;J=0.0;K=0.0;M=0.0;N=0.0;O=0.0;P=0.0;Q=0.0;R=0.0;S=m;m=r;while(1){r=k+(i*5<<2)|0;T=~~+n[r+16>>2];U=(S<<1)+m|0;if(!U){V=v;W=t;Y=o;Z=s;_=C;$=D;aa=E;ba=F;ca=G;da=H;ea=J;fa=K;ga=M;ha=N;ia=O;ja=P;ka=Q;la=R;ma=m;na=S}else{oa=r+8|0;pa=r+4|0;qa=r+12|0;ra=(T|0)==0;sa=(1-T|0)*255&255;T=0;ta=v;ua=t;va=o;wa=s;xa=C;ya=D;za=E;Aa=F;Ba=G;Ca=H;Da=J;Ea=K;Fa=M;Ga=N;Ha=O;Ia=P;Ja=Q;Ka=R;La=U;while(1){Ma=+(T|0);Na=+(La>>>0);Oa=((+n[r>>2]+Ma*+n[oa>>2])/Na+-.5)*2.0;Pa=((+n[pa>>2]+Ma*+n[qa>>2])/Na+-.5)*2.0;U=f[w>>2]|0;Qa=f[U+4>>2]|0;Ra=Qa<<1;Na=+p[U+8+(Ra+2<<3)>>3]+(Oa*+p[U+8+(Ra<<3)>>3]+Pa*+p[U+8+((Ra|1)<<3)>>3]);Ra=~~((+p[U+24>>3]+(+p[U+8>>3]*Oa+ +p[U+16>>3]*Pa))/Na);Sa=~~((+p[U+8+(Qa+2<<3)>>3]+(Oa*+p[U+8+(Qa<<3)>>3]+Pa*+p[U+8+(Qa+1<<3)>>3]))/Na);do if(((Ra|Sa|0)>=0?(Ra|0)<(f[c>>2]|0):0)?(Sa|0)<(f[e>>2]|0):0){Qa=(f[x>>2]|0)+((X(f[y>>2]|0,Sa)|0)+Ra)|0;U=b[Qa>>0]|0;if(!z){Qa=(f[A>>2]|0)+((X(f[B>>2]|0,Sa)|0)+Ra)|0;b[Qa>>0]=sa}Na=+(U&255);Ma=Oa*Oa;if(ra){Ta=ta+Ma;Ua=ua;Va=va+Pa*Pa;Wa=wa;Xa=xa+Pa;Ya=ya;Za=za+1.0;_a=Aa;$a=Ba+Oa*Na;ab=Ca;bb=Da+Pa*Na;cb=Ea;db=Fa+Na;eb=Ga;fb=Ha+Oa*Pa;gb=Ia;hb=Ja+Oa;ib=Ka;break}else{Ta=ta;Ua=ua+Ma;Va=va;Wa=wa+Pa*Pa;Xa=xa;Ya=ya+Pa;Za=za;_a=Aa+1.0;$a=Ba;ab=Ca+Oa*Na;bb=Da;cb=Ea+Pa*Na;db=Fa;eb=Ga+Na;fb=Ha;gb=Ia+Oa*Pa;hb=Ja;ib=Ka+Oa;break}}else{Ta=ta;Ua=ua;Va=va;Wa=wa;Xa=xa;Ya=ya;Za=za;_a=Aa;$a=Ba;ab=Ca;bb=Da;cb=Ea;db=Fa;eb=Ga;fb=Ha;gb=Ia;hb=Ja;ib=Ka}while(0);T=T+1|0;Ra=f[l>>2]|0;Sa=f[q>>2]|0;La=(Ra<<1)+Sa|0;if(T>>>0>=La>>>0){V=Ta;W=Ua;Y=Va;Z=Wa;_=Xa;$=Ya;aa=Za;ba=_a;ca=$a;da=ab;ea=bb;fa=cb;ga=db;ha=eb;ia=fb;ja=gb;ka=hb;la=ib;ma=Sa;na=Ra;break}else{ta=Ta;ua=Ua;va=Va;wa=Wa;xa=Xa;ya=Ya;za=Za;Aa=_a;Ba=$a;Ca=ab;Da=bb;Ea=cb;Fa=db;Ga=eb;Ha=fb;Ia=gb;Ja=hb;Ka=ib}}}i=i+1|0;if((i|0)==8)break;else{v=V;t=W;o=Y;s=Z;C=_;D=$;E=aa;F=ba;G=ca;H=da;J=ea;K=fa;M=ga;N=ha;O=ia;P=ja;Q=ka;R=la;S=na;m=ma}}R=+L(+W);W=ja/R;ja=la/R;la=+L(+(Z-W*W));Z=($-W*ja)/la;$=+L(+(ba-ja*ja-Z*Z));ba=1.0/R;R=-(ba*W)/la;W=1.0/la;la=(-(ba*ja)-R*Z)/$;ja=-(W*Z)/$;Z=1.0/$;$=fa*W+da*R;Q=ha*Z+(fa*ja+da*la);fa=ba*(da*ba)+R*$+la*Q;la=W*$+ja*Q;ja=Z*Q;Q=+L(+V);V=ia/Q;ia=ka/Q;ka=+L(+(Y-V*V));Y=(_-V*ia)/ka;_=+L(+(aa-ia*ia-Y*Y));aa=1.0/Q;Q=-(aa*V)/ka;V=1.0/ka;ka=(-(aa*ia)-Q*Y)/_;ia=-(V*Y)/_;Y=1.0/_;_=ea*V+ca*Q;Z=ga*Y+(ea*ia+ca*ka);ea=aa*(ca*aa)+Q*_+ka*Z;ka=V*_+ia*Z;ia=Y*Z;if(ja+(fa*0.0+la*0.0)-(ia+(ea*0.0+ka*0.0))<0.0){jb=-1.0;u=j;return +jb}ma=f[q>>2]|0;if(!(X(ma,ma)|0)){kb=0.0;lb=0.0;mb=1.0;nb=1.0;ob=ma;pb=0;qb=0}else{Z=0.0;Y=0.0;_=1.0;V=1.0;m=0;na=ma;ma=0;S=0;while(1){i=f[l>>2]|0;Q=+(((i<<1)+na|0)>>>0);aa=((+((i+((m>>>0)%(na>>>0)|0)|0)>>>0)+.5)/Q+-.5)*2.0;ca=((+((i+((m>>>0)/(na>>>0)|0)|0)>>>0)+.5)/Q+-.5)*2.0;i=f[w>>2]|0;k=f[i+4>>2]|0;La=k<<1;Q=+p[i+8+(La+2<<3)>>3]+(aa*+p[i+8+(La<<3)>>3]+ca*+p[i+8+((La|1)<<3)>>3]);ga=(+p[i+24>>3]+(+p[i+8>>3]*aa+ +p[i+16>>3]*ca))/Q;$=(+p[i+8+(k+2<<3)>>3]+(+p[i+8+(k<<3)>>3]*aa+ca*+p[i+8+(k+1<<3)>>3]))/Q;k=Sd(ma|0,S|0,1)|0;i=I;La=~~ga;T=~~$;if(((La|T|0)>=0?(La|0)<(f[c>>2]|0):0)?(T|0)<(f[e>>2]|0):0){ra=(f[x>>2]|0)+((X(f[y>>2]|0,T)|0)+La)|0;$=(ia+(ea*aa+ka*ca)+(ja+(fa*aa+la*ca)))*.5;ca=+(h[ra>>0]|0);if(ca>$){rb=Z;sb=Y+(ca-$);tb=_;ub=V+1.0;vb=k|1;wb=i}else{rb=Z+($-ca);sb=Y;tb=_+1.0;ub=V;vb=k;wb=i}if(z){xb=rb;yb=sb;zb=tb;Ab=ub;Bb=na;Cb=vb;Db=wb}else{ra=Od(0,0,vb&1^1|0,0)|0;sa=(f[A>>2]|0)+((X(f[B>>2]|0,T)|0)+La)|0;b[sa>>0]=ra;xb=rb;yb=sb;zb=tb;Ab=ub;Bb=f[q>>2]|0;Cb=vb;Db=wb}}else{xb=Z;yb=Y;zb=_;Ab=V;Bb=na;Cb=k;Db=i}m=m+1|0;if(m>>>0>=(X(Bb,Bb)|0)>>>0){kb=xb;lb=yb;mb=zb;nb=Ab;ob=Bb;pb=Cb;qb=Db;break}else{Z=xb;Y=yb;_=zb;V=Ab;na=Bb;ma=Cb;S=Db}}}Db=f[a+24>>2]|0;a=f[Db>>2]|0;S=((a|0)<0)<<31>>31;Cb=f[Db+4>>2]|0;Db=ob+-1|0;ma=(Db|0)>-1;Bb=0;na=pb;pb=qb;a:while(1){qb=Zd(na|0,pb|0,a|0,S|0)|0;m=Cb+(qb<<4)|0;wb=m;vb=f[wb>>2]|0;q=f[wb+4>>2]|0;if(!((vb|0)==-1&(q|0)==-1)){wb=qb;qb=vb;vb=q;Eb=m;while(1){if((qb|0)==(na|0)&(vb|0)==(pb|0)){Fb=25;break a}wb=(wb+1|0)%(a|0)|0;m=Cb+(wb<<4)|0;q=m;qb=f[q>>2]|0;vb=f[q+4>>2]|0;if((qb|0)==-1&(vb|0)==-1)break;else Eb=m}}if(ma){vb=Db;qb=0;wb=0;while(1){m=0;q=qb;B=wb;do{A=(X(m,ob)|0)+vb|0;z=Sd(q|0,B|0,1)|0;B=I;y=Sd(1,0,A|0)|0;q=((y&na|0)!=0|(I&pb|0)!=0)&1|z;m=m+1|0}while((m|0)!=(ob|0));vb=vb+-1|0;if((vb|0)<=-1){Gb=q;Hb=B;break}else{qb=q;wb=B}}}else{Gb=0;Hb=0}wb=Bb+1|0;if((wb|0)<4){Bb=wb;na=Gb;pb=Hb}else{Fb=26;break}}if((Fb|0)==25){f[g>>2]=f[Eb>>2];f[g+4>>2]=f[Eb+4>>2];f[g+8>>2]=f[Eb+8>>2];f[g+12>>2]=f[Eb+12>>2];Ib=Bb&255}else if((Fb|0)==26){Fb=g;f[Fb>>2]=0;f[Fb+4>>2]=0;d[g+8>>1]=-1;b[g+10>>0]=-1;Ib=0}b[g+11>>0]=Ib;jb=+ud(lb/nb,kb/mb);u=j;return +jb}function fb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +(+db(a,b,c))}function gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0;d=u;u=u+16|0;e=d;f=+eb(a,b,c,e,0);u=d;return +(f-+((h[e+10>>0]|0)*1e3|0))}function hb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0.0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0,V=0,W=0,X=0,Y=0.0,Z=0,_=0.0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0,sa=0,ta=0;i=Jd(1,40)|0;j=i;k=c;l=j+40|0;do{f[j>>2]=f[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));m=c+32|0;o=f[m>>2]|0;if(o|0){p=rb(o)|0;f[i+32>>2]=p}p=c+36|0;o=f[p>>2]|0;if(o|0){q=rb(o)|0;f[i+36>>2]=q}r=+Ra[g&63](a,b,i,h);if((e|0)>0){s=0;t=i;u=r;v=i;w=i;x=i}else{y=r;z=i;A=f[m>>2]|0;sb(A);B=f[p>>2]|0;sb(B);j=c;k=z;l=j+40|0;do{f[j>>2]=f[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));Id(z);return +y}while(1){i=d+(s<<2)|0;q=0;o=t;r=u;C=v;D=w;E=x;while(1){F=0;G=0;H=o;I=r;J=C;K=D;L=E;while(1){M=+n[i>>2];N=H+32|0;O=H+36|0;P=H+(F<<3)|0;Q=H+(F<<3)+4|0;R=0;S=-1;T=I;U=0;V=0;W=0;X=0;while(1){Y=M*+(S|0);Z=-1;_=T;$=R;aa=U;ba=V;ca=W;da=X;while(1){do if(Z|S){ea=Jd(1,40)|0;j=ea;k=J;l=j+40|0;do{f[j>>2]=f[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));fa=f[N>>2]|0;if(fa|0){ga=rb(fa)|0;f[ea+32>>2]=ga}ga=f[O>>2]|0;if(ga|0){fa=rb(ga)|0;f[ea+36>>2]=fa}n[ea+(F<<3)>>2]=Y+ +n[P>>2];n[ea+(F<<3)+4>>2]=M*+(Z|0)+ +n[Q>>2];if(!(cb(ea)|0)){ha=+Ra[g&63](a,b,ea,h);if(!(ha>_)){sb(f[ea+32>>2]|0);sb(f[ea+36>>2]|0);Id(ea);ia=_;ja=$;ka=aa;la=ba;ma=ca;na=da;break}if(!$){ia=ha;ja=ea;ka=ea;la=ea;ma=ea;na=ea}else{sb(f[$+32>>2]|0);sb(f[$+36>>2]|0);Id(aa);ia=ha;ja=ea;ka=ea;la=ea;ma=ea;na=ea}}else{ia=_;ja=$;ka=aa;la=ba;ma=ca;na=da}}else{ia=_;ja=$;ka=aa;la=ba;ma=ca;na=da}while(0);Z=Z+1|0;if((Z|0)==2)break;else{_=ia;$=ja;aa=ka;ba=la;ca=ma;da=na}}S=S+1|0;if((S|0)==2)break;else{R=ja;T=ia;U=ka;V=la;W=ma;X=na}}if(ia>I)if(!H){oa=1;pa=ja;qa=ia;ra=na;sa=la;ta=ma}else{sb(f[N>>2]|0);sb(f[O>>2]|0);Id(K);oa=1;pa=ja;qa=ia;ra=na;sa=la;ta=ma}else{oa=G;pa=H;qa=I;ra=L;sa=J;ta=K}F=F+1|0;if((F|0)==4)break;else{G=oa;H=pa;I=qa;J=sa;K=ta;L=ra}}q=q+1|0;if(!((oa|0)!=0&(q|0)<2))break;else{o=pa;r=qa;C=sa;D=ta;E=ra}}s=s+1|0;if((s|0)==(e|0)){y=qa;z=ra;break}else{t=pa;u=qa;v=sa;w=ta;x=ra}}A=f[m>>2]|0;sb(A);B=f[p>>2]|0;sb(B);j=c;k=z;l=j+40|0;do{f[j>>2]=f[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));Id(z);return +y}function ib(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0.0,m=0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,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,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0;d=u;u=u+16|0;e=d+8|0;g=d+4|0;i=f[a+60>>2]|0;if(!i)Ga(1764,1775,138,1793);if(!(f[i+4>>2]|0)){i=Jd(1,16)|0;f[i>>2]=4;Fd(826,d)|0;j=i;u=d;return j|0}i=a+64|0;if(!(f[i>>2]|0)){mb(0);k=lb()|0;f[i>>2]=k}k=a+4|0;l=+n[k>>2];if(l>1.0)m=Nb(c,l)|0;else m=c;l=+n[a+8>>2];do if(l!=0.0?(o=+K(+l),q=~~(o*4.0),r=(q&1^1)+q|0,(r|0)>1):0){if(l>0.0){Mb(m,o,r);break}q=Ib(m)|0;Mb(m,o,r);r=q+4|0;s=f[r>>2]|0;if((s|0)>0){t=q+12|0;v=q+8|0;w=m+12|0;x=m+8|0;y=0;z=s;s=f[q>>2]|0;while(1){if((s|0)>0){A=0;do{B=(f[t>>2]|0)+((X(f[v>>2]|0,y)|0)+A)|0;C=(f[w>>2]|0)+((X(f[x>>2]|0,y)|0)+A)|0;D=((h[B>>0]|0)<<1)-(h[C>>0]|0)|0;B=(D|0)>0?D:0;b[C>>0]=(B|0)<255?B:255;A=A+1|0;E=f[q>>2]|0}while((A|0)<(E|0));F=E;G=f[r>>2]|0}else{F=s;G=z}y=y+1|0;if((y|0)>=(G|0))break;else{z=G;s=F}}}Jb(q)}while(0);F=cc(a,m)|0;if(+n[k>>2]>1.0){if(!F)Ga(1764,1775,138,1793);G=f[F+4>>2]|0;if((G|0)>0){E=f[F+12>>2]|0;s=f[F>>2]|0;z=0;do{y=E+(X(s,z)|0)|0;n[y>>2]=+n[k>>2]*+n[y>>2];r=y+4|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+8|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+12|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+16|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+20|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+24|0;n[r>>2]=+n[k>>2]*+n[r>>2];r=y+28|0;n[r>>2]=+n[k>>2]*+n[r>>2];z=z+1|0}while((z|0)<(G|0))}}if((m|0)!=(c|0))Jb(m);m=Jd(1,16)|0;f[m>>2]=4;if(!F)Ga(1764,1775,138,1793);G=F+4|0;z=f[G>>2]|0;f[a+56>>2]=z;k=((z|0)/10|0)+1|0;s=xa()|0;E=u;u=u+((1*((((z|0)/(k|0)|0)+1|0)*28|0)|0)+15&-16)|0;z=f[G>>2]|0;if((z|0)>0){r=0;y=0;x=z;while(1){z=E+(y*28|0)|0;f[z>>2]=r;r=r+k|0;f[E+(y*28|0)+4>>2]=(x|0)<(r|0)?x:r;f[E+(y*28|0)+8>>2]=F;f[E+(y*28|0)+12>>2]=a;f[E+(y*28|0)+16>>2]=c;f[E+(y*28|0)+20>>2]=m;f[E+(y*28|0)+24>>2]=0;nb(f[i>>2]|0,42,z);x=f[G>>2]|0;if((r|0)>=(x|0))break;else y=y+1|0}}ob(f[i>>2]|0);Fa(s|0);s=Pb(4)|0;i=Pb(4)|0;if(!m)Ga(1764,1775,138,1793);y=m+4|0;x=m+12|0;r=(s|0)==0;E=s+4|0;c=s+12|0;a=(i|0)==0;k=i+4|0;z=i+12|0;a:do if((f[y>>2]|0)>0){w=0;b:while(1){if((w|0)<=-1){H=46;break}v=f[m>>2]|0;_d(e|0,(f[x>>2]|0)+(X(v,w)|0)|0,v|0)|0;v=f[e>>2]|0;if(r){H=49;break}t=v+40|0;if((f[E>>2]|0)<=0){H=51;break}_d(f[c>>2]|0,t|0,f[s>>2]|0)|0;A=v+56|0;if((f[E>>2]|0)<=1){H=51;break}B=f[s>>2]|0;_d((f[c>>2]|0)+B|0,A|0,B|0)|0;B=v+72|0;if((f[E>>2]|0)<=2){H=51;break}C=f[s>>2]|0;_d((f[c>>2]|0)+(C<<1)|0,B|0,C|0)|0;C=v+88|0;if((f[E>>2]|0)<=3){H=51;break}D=f[s>>2]|0;_d((f[c>>2]|0)+(D*3|0)|0,C|0,D|0)|0;D=w+1|0;I=f[y>>2]|0;c:do if((D|0)<(I|0)){J=v+4|0;L=v+8|0;M=v+16|0;N=v+12|0;O=v+48|0;P=v+64|0;Q=v+80|0;R=v+96|0;S=w;T=D;U=I;d:while(1){if((S|0)<=-2){H=53;break b}if((U|0)<=(T|0)){H=55;break b}V=f[m>>2]|0;_d(g|0,(f[x>>2]|0)+(X(V,T)|0)|0,V|0)|0;V=f[g>>2]|0;do if((f[J>>2]|0)==(f[V+4>>2]|0)){if((f[v>>2]|0)!=(f[V>>2]|0)){W=T;Y=U;break}if(a){H=59;break b}Z=V+40|0;if((f[k>>2]|0)<=0){H=61;break b}_d(f[z>>2]|0,Z|0,f[i>>2]|0)|0;_=V+56|0;if((f[k>>2]|0)<=1){H=61;break b}$=f[i>>2]|0;_d((f[z>>2]|0)+$|0,_|0,$|0)|0;$=V+72|0;if((f[k>>2]|0)<=2){H=61;break b}aa=f[i>>2]|0;_d((f[z>>2]|0)+(aa<<1)|0,$|0,aa|0)|0;aa=V+88|0;if((f[k>>2]|0)<=3){H=61;break b}ba=f[i>>2]|0;_d((f[z>>2]|0)+(ba*3|0)|0,aa|0,ba|0)|0;if(!(Ub(s,i)|0)){W=T;Y=f[y>>2]|0;break}ba=f[L>>2]|0;ca=f[V+8>>2]|0;da=(ba|0)<(ca|0)?-1:(ca|0)<(ba|0)&1;l=+n[M>>2];o=+n[V+16>>2];do if(!da){if(l>o)break;ea=o>l&1;H=65}else{ea=da;H=65}while(0);do if((H|0)==65){H=0;l=+n[N>>2];o=+n[V+12>>2];if(!ea){if(l>o)break;fa=o>l&1}else fa=ea;l=+p[t>>3];o=+p[Z>>3];if(!fa){if(l<o)break;ga=o<l&1}else ga=fa;l=+p[O>>3];o=+p[V+48>>3];if(!ga){if(l<o)break;ha=o<l&1}else ha=ga;l=+p[A>>3];o=+p[_>>3];if(!ha){if(l<o)break;ia=o<l&1}else ia=ha;l=+p[P>>3];o=+p[V+64>>3];if(!ia){if(l<o)break;ja=o<l&1}else ja=ia;l=+p[B>>3];o=+p[$>>3];if(!ja){if(l<o)break;ka=o<l&1}else ka=ja;l=+p[Q>>3];o=+p[V+80>>3];if(!ka){if(l<o)break;la=o<l&1}else la=ka;l=+p[C>>3];o=+p[aa>>3];if(!la){if(l<o)break;ma=o<l&1}else ma=la;l=+p[R>>3];o=+p[V+96>>3];if(!ma){if(l<o)break;na=o<l&1}else na=ma;if(!na){H=75;break d}if((na|0)>=0)break d}while(0);sb(f[V+20>>2]|0);Id(V);aa=f[y>>2]|0;if((aa|0)<=(T|0)){H=78;break b}$=aa+-1|0;if(($|0)>(T|0)){_=f[x>>2]|0;Z=f[m>>2]|0;_d(_+(X(Z,T)|0)|0,_+(X(Z,$)|0)|0,Z|0)|0;oa=f[y>>2]|0}else oa=aa;aa=oa+-1|0;f[y>>2]=aa;W=S;Y=aa}else{W=T;Y=U}while(0);T=W+1|0;if((T|0)>=(Y|0)){pa=w;qa=Y;break c}else{S=W;U=Y}}if((H|0)==75){H=0;Gd(874)|0}sb(f[v+20>>2]|0);Id(v);U=f[y>>2]|0;if((U|0)<=(w|0)){H=83;break b}S=U+-1|0;if((S|0)>(w|0)){T=f[x>>2]|0;R=f[m>>2]|0;_d(T+(X(R,w)|0)|0,T+(X(R,S)|0)|0,R|0)|0;ra=f[y>>2]|0}else ra=U;U=ra+-1|0;f[y>>2]=U;pa=w+-1|0;qa=U}else{pa=w;qa=I}while(0);w=pa+1|0;if((w|0)>=(qa|0))break a}if((H|0)==46)Ga(1840,1775,205,1912);else if((H|0)==49)Ga(1764,1775,347,863);else if((H|0)==51)Ga(1805,1775,350,863);else if((H|0)==53)Ga(1840,1775,205,1912);else if((H|0)==55)Ga(1805,1775,206,1912);else if((H|0)==59)Ga(1764,1775,347,863);else if((H|0)==61)Ga(1805,1775,350,863);else if((H|0)==78)Ga(1805,1775,264,806);else if((H|0)==83)Ga(1805,1775,264,806)}while(0);if(!r){r=f[c>>2]|0;if(r|0)Id(r);Id(s)}if(!a){a=f[z>>2]|0;if(a|0)Id(a);Id(i)}i=F+12|0;a=f[i>>2]|0;if((f[G>>2]|0)>0){z=0;s=a;while(1){r=s+(X(f[F>>2]|0,z)|0)|0;sb(f[r+32>>2]|0);sb(f[r+36>>2]|0);z=z+1|0;r=f[i>>2]|0;if((z|0)>=(f[G>>2]|0)){sa=r;break}else s=r}}else sa=a;if(sa|0)Id(sa);Id(F);F=f[y>>2]|0;if(!F){j=m;u=d;return j|0}id(f[x>>2]|0,F,f[m>>2]|0,42);j=m;u=d;return j|0}function jb(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,M=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,U=0.0,V=0.0,W=0,Y=0.0,Z=0.0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0.0,sa=0.0,ta=0.0,ua=0.0,va=0.0,wa=0.0,xa=0.0,ya=0.0,za=0.0,Aa=0.0,Ba=0.0,Ca=0.0,Da=0.0,Ea=0,Fa=0.0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0;c=u;u=u+160|0;d=c+144|0;e=c+16|0;g=c;i=c+152|0;k=f[a+12>>2]|0;l=f[a+16>>2]|0;m=f[a>>2]|0;o=a+4|0;if((m|0)>=(f[o>>2]|0)){u=c;return}q=a+8|0;r=k+12|0;s=k+60|0;t=k+20|0;v=k+16|0;w=a+24|0;x=g+10|0;y=g+8|0;z=g+11|0;A=a+20|0;a=k+4|0;k=l+4|0;B=l+12|0;C=l+8|0;D=(m|0)>-1;E=m;a:while(1){m=f[q>>2]|0;if(!m){F=5;break}if(!D){F=7;break}if((f[m+4>>2]|0)<=(E|0)){F=9;break}G=(f[m+12>>2]|0)+(X(f[m>>2]|0,E)|0)|0;if(f[r>>2]|0){m=0;do{H=m;m=m+1|0;I=m&3;J=+n[G+(I<<3)+4>>2];M=+n[G+(H<<3)+4>>2];P=J-M;Q=+n[G+(I<<3)>>2];R=+n[G+(H<<3)>>2];S=R-Q;U=+L(+(P*P+S*S));V=P/U;P=S/U;I=~~(U*.125);W=(I|0)>16?I:16;if((W|0)>0?(U=+(W+1|0),S=R,R=Q,Q=M,M=J,J=+n[a>>2]+1.0,Y=-J,J>=Y):0){Z=0.0;_=0.0;$=0.0;aa=0.0;ba=0.0;ca=0.0;I=0;while(1){da=(+(I|0)+1.0)/U;ea=1.0-da;fa=S*da+R*ea;ga=Q*da+M*ea;ea=0.0;da=0.0;ha=Y;while(1){ia=ha+1.0;ja=~~(fa+V*ia);ka=~~(ga+P*ia);if((((((ja|0)>=0?(la=f[l>>2]|0,!((ka|0)<0|(ja|0)>=(la|0))):0)?(ma=f[k>>2]|0,(ka|0)<(ma|0)):0)?(ia=ha+-1.0,na=~~(fa+V*ia),oa=~~(ga+P*ia),(na|0)>=0):0)?(oa|0)>-1&(na|0)<(la|0)&(oa|0)<(ma|0):0)?(ma=f[B>>2]|0,la=f[C>>2]|0,pa=ma+((X(la,ka)|0)+ja)|0,ja=b[pa>>0]|0,pa=ma+((X(la,oa)|0)+na)|0,na=b[pa>>0]|0,(na&255)<=(ja&255)):0){pa=(na&255)-(ja&255)|0;ia=+(X(pa,pa)|0);qa=ea+ha*ia;ra=da+ia}else{qa=ea;ra=da}ha=ha+.25;if(!(ha<=J))break;else{ea=qa;da=ra}}if(ra==0.0){sa=Z;ta=_;ua=$;va=aa;wa=ba;xa=ca}else{da=qa/ra;ea=fa+V*da;ha=ga+P*da;sa=Z+ea;ta=_+ha;ua=$+ea*ea;va=aa+ea*ha;wa=ba+ha*ha;xa=ca+1.0}I=I+1|0;if((I|0)>=(W|0)){ya=sa;za=ta;Aa=ua;Ba=va;Ca=wa;Da=xa;break}else{Z=sa;_=ta;$=ua;aa=va;ba=wa;ca=xa}}}else{ya=0.0;za=0.0;Aa=0.0;Ba=0.0;Ca=0.0;Da=0.0}ca=ya/Da;ba=za/Da;aa=+T(+((Ba/Da-ba*ca)*-2.0),+(Ca/Da-ba*ba-(Aa/Da-ca*ca)))*.5;$=+N(+aa);_=+O(+aa);p[e+(H<<5)>>3]=ca;p[e+(H<<5)+8>>3]=ba;p[e+(H<<5)+16>>3]=$;p[e+(H<<5)+24>>3]=_}while((m|0)!=4);Ea=0;do{_=+p[e+(Ea<<5)+24>>3];m=Ea;Ea=Ea+1|0;W=Ea&3;$=+p[e+(W<<5)+24>>3];ba=+p[e+(m<<5)+16>>3];ca=+p[e+(W<<5)+16>>3];aa=+p[e+(m<<5)>>3];Z=+p[e+(m<<5)+8>>3];P=_*ca-$*ba;if(+K(+P)>.001){V=$/P*(+p[e+(W<<5)+8>>3]-Z)+ca/P*(+p[e+(W<<5)>>3]-aa);n[G+(m<<3)>>2]=aa+_*V;n[G+(m<<3)+4>>2]=Z-ba*V}}while((Ea|0)!=4)}b:do if(!(cb(G)|0)){m=f[s>>2]|0;if(!m){F=34;break a}W=G+32|0;I=G+36|0;pa=0;ja=m;while(1){if((pa|0)>=(f[ja+4>>2]|0))break b;m=f[ja>>2]|0;_d(e|0,(f[ja+12>>2]|0)+(X(m,pa)|0)|0,m|0)|0;m=Jd(1,40)|0;na=m;oa=G;la=na+40|0;do{f[na>>2]=f[oa>>2];na=na+4|0;oa=oa+4|0}while((na|0)<(la|0));oa=f[W>>2]|0;if(oa|0){na=rb(oa)|0;f[m+32>>2]=na}na=f[I>>2]|0;if(na|0){oa=rb(na)|0;f[m+36>>2]=oa}if(!(f[t>>2]|0))Fa=0.0;else{f[g>>2]=f[2];f[g+4>>2]=f[3];f[g+8>>2]=f[4];f[g+12>>2]=f[5];Fa=+hb(f[e>>2]|0,l,m,g,4,42,0)}if(!(f[v>>2]|0))Ha=f[e>>2]|0;else{n[g>>2]=.4000000059604645;oa=f[e>>2]|0;+hb(oa,l,m,g,1,43,0);Ha=oa}ga=+eb(Ha,l,m,g,f[w>>2]|0);oa=b[x>>0]|0;if(ga>=0.0&oa<<24>>24!=-1){na=Jd(1,104)|0;f[i>>2]=na;f[na>>2]=Ha;f[na+4>>2]=j[y>>1];f[na+8>>2]=oa&255;n[na+12>>2]=Fa;n[na+16>>2]=ga;ga=+(0-(h[z>>0]|0)|0)*3.141592653589793*.5;fa=+N(+ga);V=+O(+ga);oa=pb(3,3)|0;la=oa+4|0;p[oa+8>>3]=fa;p[oa+16>>3]=-V;p[oa+8+(f[la>>2]<<3)>>3]=V;p[oa+8+((f[la>>2]|0)+1<<3)>>3]=fa;p[oa+8+((f[la>>2]<<1)+2<<3)>>3]=1.0;f[d>>2]=f[m+32>>2];f[d+4>>2]=oa;la=Bb(920,d)|0;ma=na+20|0;f[ma>>2]=la;sb(oa);oa=f[ma>>2]|0;ma=f[oa+4>>2]|0;la=oa+8|0;ka=oa+16|0;Ia=oa+24|0;Ja=oa+8+(ma<<3)|0;Ka=oa+8+(ma+1<<3)|0;La=oa+8+(ma+2<<3)|0;fa=+p[La>>3]+(+p[Ja>>3]*0.0+ +p[Ka>>3]*0.0);Ma=ma<<1;ma=oa+8+(Ma<<3)|0;Na=oa+8+((Ma|1)<<3)|0;Oa=oa+8+(Ma+2<<3)|0;V=+p[Oa>>3]+(+p[ma>>3]*0.0+ +p[Na>>3]*0.0);p[na+24>>3]=(+p[Ia>>3]+(+p[la>>3]*0.0+ +p[ka>>3]*0.0))/V;p[na+32>>3]=fa/V;V=+p[Oa>>3]+(+p[Na>>3]-+p[ma>>3]);fa=(+p[La>>3]+(+p[Ka>>3]-+p[Ja>>3]))/V;p[na+40>>3]=(+p[Ia>>3]+(+p[ka>>3]-+p[la>>3]))/V;p[na+48>>3]=fa;fa=+p[Oa>>3]+(+p[ma>>3]+ +p[Na>>3]);V=(+p[La>>3]+(+p[Ja>>3]+ +p[Ka>>3]))/fa;p[na+56>>3]=(+p[Ia>>3]+(+p[la>>3]+ +p[ka>>3]))/fa;p[na+64>>3]=V;V=+p[Oa>>3]+(+p[ma>>3]-+p[Na>>3]);fa=(+p[La>>3]+(+p[Ja>>3]-+p[Ka>>3]))/V;p[na+72>>3]=(+p[Ia>>3]+(+p[la>>3]-+p[ka>>3]))/V;p[na+80>>3]=fa;fa=+p[Oa>>3]+(-+p[Na>>3]-+p[ma>>3]);V=(+p[La>>3]+(-+p[Ka>>3]-+p[Ja>>3]))/fa;p[na+88>>3]=(+p[Ia>>3]+(-+p[ka>>3]-+p[la>>3]))/fa;p[na+96>>3]=V;na=f[A>>2]|0;if(!na){F=47;break a}la=na+4|0;ka=f[la>>2]|0;Ia=na+8|0;Ja=f[Ia>>2]|0;if((Ja|0)>(ka|0)){Pa=na;Qa=ka;Ra=f[na+12>>2]|0}else{Ka=Ja;do{Ja=Ka<<1;Ka=(Ja|0)>8?Ja:8}while((Ka|0)<=(ka|0));f[Ia>>2]=Ka;ka=na+12|0;Ja=Kd(f[ka>>2]|0,X(f[na>>2]|0,Ka)|0)|0;f[ka>>2]=Ja;Pa=na;Qa=f[la>>2]|0;Ra=Ja}Ja=f[Pa>>2]|0;_d(Ra+(X(Ja,Qa)|0)|0,i|0,Ja|0)|0;f[la>>2]=(f[la>>2]|0)+1}if(m|0){sb(f[m+32>>2]|0);sb(f[m+36>>2]|0);Id(m)}ja=f[s>>2]|0;if(!ja){F=34;break a}else pa=pa+1|0}}while(0);E=E+1|0;if((E|0)>=(f[o>>2]|0)){F=3;break}}if((F|0)==3){u=c;return}else if((F|0)==5)Ga(1764,1775,220,1820);else if((F|0)==7)Ga(1840,1775,222,1820);else if((F|0)==9)Ga(1805,1775,223,1820);else if((F|0)==34)Ga(1764,1775,138,1793);else if((F|0)==47)Ga(1764,1775,187,1901)}function kb(a,b){a=a|0;b=b|0;return (f[(f[a>>2]|0)+4>>2]|0)-(f[(f[b>>2]|0)+4>>2]|0)|0}function lb(){var a=0,b=0;a=Jd(1,4)|0;b=Jd(1,16)|0;f[b>>2]=8;f[a>>2]=b;return a|0}function mb(a){a=a|0;var b=0,c=0;if(!a)return;b=f[a>>2]|0;if(b|0){c=f[b+12>>2]|0;if(c|0)Id(c);Id(b)}Id(a);return}function nb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=u;u=u+16|0;e=d;f[e>>2]=b;f[e+4>>2]=c;c=f[a>>2]|0;if(!c)Ga(1764,924,187,1901);a=c+4|0;b=f[a>>2]|0;g=c+8|0;h=f[g>>2]|0;if((h|0)>(b|0)){i=c;j=b;k=f[c+12>>2]|0}else{l=h;do{h=l<<1;l=(h|0)>8?h:8}while((l|0)<=(b|0));f[g>>2]=l;g=c+12|0;b=Kd(f[g>>2]|0,X(f[c>>2]|0,l)|0)|0;f[g>>2]=b;i=c;j=f[a>>2]|0;k=b}b=f[i>>2]|0;_d(k+(X(b,j)|0)|0,e|0,b|0)|0;f[a>>2]=(f[a>>2]|0)+1;u=d;return}function ob(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a>>2]|0;if(!b)Ga(1764,924,138,1793);else{c=0;d=b}while(1){e=d+4|0;if((c|0)>=(f[e>>2]|0)){g=5;break}b=(f[d+12>>2]|0)+(X(f[d>>2]|0,c)|0)|0;Na[f[b>>2]&63](f[b+4>>2]|0);d=f[a>>2]|0;if(!d){g=2;break}else c=c+1|0}if((g|0)==2)Ga(1764,924,138,1793);else if((g|0)==5){f[e>>2]=0;return}}function pb(a,b){a=a|0;b=b|0;var c=0,d=0;if((a|0)<=-1)Ga(940,950,52,964);if((b|0)<=-1)Ga(976,950,53,964);if((a|0)==0|(b|0)==0){c=Jd(1,16)|0;return c|0}else{d=Jd(1,(X(a<<3,b)|0)+8|0)|0;f[d>>2]=a;f[d+4>>2]=b;c=d;return c|0}return 0}function qb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if(!a){b=Jd(1,16)|0;p[b+8>>3]=1.0;c=b;return c|0}if((a|0)<=-1)Ga(940,950,52,964);b=Jd(1,(X(a<<3,a)|0)+8|0)|0;f[b>>2]=a;d=b+4|0;f[d>>2]=a;p[b+8>>3]=1.0;if((a|0)>1)e=1;else{c=b;return c|0}do{g=b+8+((X(f[d>>2]|0,e)|0)+e<<3)|0;p[g>>3]=1.0;e=e+1|0}while((e|0)<(a|0));c=b;return c|0}function rb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;if(!a)Ga(986,950,160,996);b=f[a>>2]|0;c=f[a+4>>2]|0;if((b|0)<=-1)Ga(940,950,52,964);if((c|0)<=-1)Ga(976,950,53,964);d=(b|0)==0;e=(c|0)==0;if(d|e)g=Jd(1,16)|0;else{h=Jd(1,(X(b<<3,c)|0)+8|0)|0;f[h>>2]=b;f[h+4>>2]=c;g=h}if(e|d){p[g+8>>3]=+p[a+8>>3];return g|0}else{_d(g+8|0,a+8|0,X(c<<3,b)|0)|0;return g|0}return 0}function sb(a){a=a|0;if(a|0)Id(a);return}function tb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0,x=0;if(!a)Ga(1006,950,237,1016);if(!b)Ga(1030,950,238,1016);c=f[a+4>>2]|0;if((c|0)!=0?(d=f[a>>2]|0,(d|0)!=0):0){e=f[b+4>>2]|0;if((e|0)!=0?(g=f[b>>2]|0,(g|0)!=0):0){if((c|0)!=(g|0))Ga(1040,950,245,1016);if((d|0)<=-1)Ga(940,950,52,964);if((e|0)<=-1)Ga(976,950,53,964);g=Jd(1,(X(d<<3,e)|0)+8|0)|0;f[g>>2]=d;f[g+4>>2]=e;d=g+4|0;h=0;i=e;j=c;while(1){a:do if(!i){k=j;l=0}else{if(!j){m=0;n=i;while(1){o=g+8+((X(n,h)|0)+m<<3)|0;p[o>>3]=0.0;m=m+1|0;o=f[d>>2]|0;if(m>>>0>=o>>>0){k=0;l=o;break a}else n=o}}else{q=0;r=i}while(1){s=0.0;n=0;m=j;while(1){o=a+8+((X(m,h)|0)+n<<3)|0;t=b+8+((X(e,n)|0)+q<<3)|0;u=s+ +p[o>>3]*+p[t>>3];t=n+1|0;if(t>>>0<c>>>0){s=u;n=t;m=c}else break}m=g+8+((X(r,h)|0)+q<<3)|0;p[m>>3]=u;q=q+1|0;m=f[d>>2]|0;if(q>>>0>=m>>>0){k=c;l=m;break}else r=m}}while(0);h=h+1|0;if(h>>>0>=(f[g>>2]|0)>>>0){v=g;break}else{i=l;j=k}}return v|0}else{w=a;x=b}}else{w=b;x=a}v=ub(w,+p[x+8>>3])|0;return v|0}function ub(a,b){a=a|0;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0;if(!a)Ga(1006,950,263,1061);c=f[a+4>>2]|0;if(c|0?(d=f[a>>2]|0,d|0):0){if((d|0)<=-1)Ga(940,950,52,964);if((c|0)<=-1)Ga(976,950,53,964);e=Jd(1,(X(d<<3,c)|0)+8|0)|0;f[e>>2]=d;f[e+4>>2]=c;d=e+4|0;g=0;h=c;while(1){if(!h)i=0;else{j=X(c,g)|0;k=0;l=h;while(1){m=e+8+((X(l,g)|0)+k<<3)|0;p[m>>3]=+p[a+8+(j+k<<3)>>3]*b;k=k+1|0;m=f[d>>2]|0;if(k>>>0>=m>>>0){i=m;break}else l=m}}g=g+1|0;if(g>>>0>=(f[e>>2]|0)>>>0){n=e;break}else h=i}return n|0}o=+p[a+8>>3]*b;a=Jd(1,16)|0;p[a+8>>3]=o;n=a;return n|0}function vb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;if(!a)Ga(1006,950,297,1072);if(!b)Ga(1030,950,298,1072);c=f[a>>2]|0;if((c|0)!=(f[b>>2]|0))Ga(1081,950,299,1072);d=f[a+4>>2]|0;if((d|0)!=(f[b+4>>2]|0))Ga(1102,950,300,1072);if(!((c|0)!=0&(d|0)!=0)){e=+p[a+8>>3]+ +p[b+8>>3];g=Jd(1,16)|0;p[g+8>>3]=e;h=g;return h|0}if((c|0)<=-1)Ga(940,950,52,964);if((d|0)<=-1)Ga(976,950,53,964);g=Jd(1,(X(c<<3,d)|0)+8|0)|0;f[g>>2]=c;f[g+4>>2]=d;c=g+4|0;i=0;j=d;while(1){if(!j)k=0;else{l=X(d,i)|0;m=0;n=j;while(1){o=l+m|0;q=g+8+((X(n,i)|0)+m<<3)|0;p[q>>3]=+p[a+8+(o<<3)>>3]+ +p[b+8+(o<<3)>>3];m=m+1|0;o=f[c>>2]|0;if(m>>>0>=o>>>0){k=o;break}else n=o}}i=i+1|0;if(i>>>0>=(f[g>>2]|0)>>>0){h=g;break}else j=k}return h|0}function wb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;if(!a)Ga(1006,950,338,1123);if(!b)Ga(1030,950,339,1123);c=f[a>>2]|0;if((c|0)!=(f[b>>2]|0))Ga(1081,950,340,1123);d=f[a+4>>2]|0;if((d|0)!=(f[b+4>>2]|0))Ga(1102,950,341,1123);if(!((c|0)!=0&(d|0)!=0)){e=+p[a+8>>3]-+p[b+8>>3];g=Jd(1,16)|0;p[g+8>>3]=e;h=g;return h|0}if((c|0)<=-1)Ga(940,950,52,964);if((d|0)<=-1)Ga(976,950,53,964);g=Jd(1,(X(c<<3,d)|0)+8|0)|0;f[g>>2]=c;f[g+4>>2]=d;c=g+4|0;i=0;j=d;while(1){if(!j)k=0;else{l=X(d,i)|0;m=0;n=j;while(1){o=l+m|0;q=g+8+((X(n,i)|0)+m<<3)|0;p[q>>3]=+p[a+8+(o<<3)>>3]-+p[b+8+(o<<3)>>3];m=m+1|0;o=f[c>>2]|0;if(m>>>0>=o>>>0){k=o;break}else n=o}}i=i+1|0;if(i>>>0>=(f[g>>2]|0)>>>0){h=g;break}else j=k}return h|0}function xb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0;if(!a)Ga(1006,950,379,1137);b=f[a+4>>2]|0;if(b|0?(c=f[a>>2]|0,c|0):0){if((b|0)<=-1)Ga(940,950,52,964);if((c|0)<=-1)Ga(976,950,53,964);d=Jd(1,(X(b<<3,c)|0)+8|0)|0;f[d>>2]=b;f[d+4>>2]=c;e=d+4|0;g=0;do{h=X(b,g)|0;i=0;do{j=d+8+((X(f[e>>2]|0,i)|0)+g<<3)|0;p[j>>3]=+p[a+8+(h+i<<3)>>3];i=i+1|0}while(i>>>0<b>>>0);g=g+1|0}while(g>>>0<c>>>0);k=d;return k|0}l=+p[a+8>>3];a=Jd(1,16)|0;p[a+8>>3]=l;k=a;return k|0}function yb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0.0,w=0,x=0.0,y=0.0,z=0,A=0,B=0;b=Jd(f[a>>2]|0,4)|0;c=rb(a)|0;d=f[a>>2]|0;e=a+4|0;if((d|0)!=(f[e>>2]|0))Ga(1152,950,1508,1173);g=Jd(1,16)|0;if(!d){h=1;i=g+12|0;f[i>>2]=c;j=g+4|0;f[j>>2]=b;k=g+8|0;f[k>>2]=h;return g|0}else l=0;do{f[b+(l<<2)>>2]=l;l=l+1|0}while(l>>>0<d>>>0);l=c+4|0;m=1;n=0;o=d;while(1){if(o|0){d=0;do{q=(d|0)<(n|0)?d:n;r=f[l>>2]|0;s=X(r,d)|0;if((q|0)>0){t=0;v=0.0;while(1){w=c+8+((X(r,t)|0)+n<<3)|0;x=v+ +p[c+8+(s+t<<3)>>3]*+p[w>>3];t=t+1|0;if((t|0)>=(q|0)){y=x;break}else v=x}}else y=0.0;q=c+8+(s+n<<3)|0;p[q>>3]=+p[q>>3]-y;d=d+1|0}while(d>>>0<o>>>0)}d=n+1|0;q=f[c>>2]|0;if(d>>>0<q>>>0){t=f[l>>2]|0;r=d;w=n;do{z=c+8+((X(t,r)|0)+n<<3)|0;v=+K(+(+p[z>>3]));z=c+8+((X(t,w)|0)+n<<3)|0;A=v>+K(+(+p[z>>3]));w=A?r:w;r=r+1|0}while(r>>>0<q>>>0);if((w|0)!=(n|0)){q=f[l>>2]|0;r=xa()|0;t=u;u=u+((1*(q<<3)|0)+15&-16)|0;q=f[l>>2]|0;A=c+8+((X(q,w)|0)<<3)|0;z=q<<3;_d(t|0,A|0,z|0)|0;_d(A|0,c+8+((X(q,n)|0)<<3)|0,z|0)|0;z=f[l>>2]|0;_d(c+8+((X(z,n)|0)<<3)|0,t|0,z<<3|0)|0;z=b+(w<<2)|0;t=f[z>>2]|0;q=b+(n<<2)|0;f[z>>2]=f[q>>2];f[q>>2]=t;Fa(r|0);B=0-m|0}else B=m}else B=m;r=f[l>>2]|0;t=c+8+((X(r,n)|0)+n<<3)|0;v=+p[t>>3];if(+K(+v)<1.0e-08)f[g>>2]=1;if(((n>>>0<r>>>0?(t=f[c>>2]|0,v!=0.0&n>>>0<t>>>0):0)?(x=1.0/v,d>>>0<t>>>0):0)?(t=c+8+((X(r,d)|0)+n<<3)|0,p[t>>3]=x*+p[t>>3],t=n+2|0,t>>>0<(f[c>>2]|0)>>>0):0){r=t;do{t=c+8+((X(f[l>>2]|0,r)|0)+n<<3)|0;p[t>>3]=x*+p[t>>3];r=r+1|0}while(r>>>0<(f[c>>2]|0)>>>0)}if(d>>>0>=(f[e>>2]|0)>>>0){h=B;break}m=B;n=d;o=f[a>>2]|0}i=g+12|0;f[i>>2]=c;j=g+4|0;f[j>>2]=b;k=g+8|0;f[k>>2]=h;return g|0}function zb(a){a=a|0;var b=0,c=0.0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0;if(!a)Ga(1182,950,489,1192);b=f[a>>2]|0;if((b|0)!=(f[a+4>>2]|0))Ga(1205,950,490,1192);switch(b|0){case 0:{c=+p[a+8>>3];if(c==0.0){d=0;return d|0}b=Jd(1,16)|0;p[b+8>>3]=1.0/c;d=b;return d|0}case 1:{c=+p[a+8>>3];if(c==0.0){d=0;return d|0}b=Jd(1,16)|0;f[b>>2]=1;f[b+4>>2]=1;p[b+8>>3]=1.0/c;d=b;return d|0}case 2:{c=+p[a+8>>3];e=+p[a+32>>3];g=+p[a+16>>3];h=+p[a+24>>3];i=c*e-g*h;if(i==0.0){d=0;return d|0}j=1.0/i;b=Jd(1,40)|0;f[b>>2]=2;f[b+4>>2]=2;p[b+8>>3]=j*e;p[b+16>>3]=-(j*g);p[b+24>>3]=-(j*h);p[b+32>>3]=j*c;d=b;return d|0}default:{b=yb(a)|0;do if(!(f[b>>2]|0)){k=f[a>>2]|0;if(!k){l=Jd(1,16)|0;p[l+8>>3]=1.0;m=Ab(b,l)|0;if(!l){n=m;break}else{o=l;q=m}}else{if((k|0)<=-1)Ga(940,950,52,964);m=Jd(1,(X(k<<3,k)|0)+8|0)|0;f[m>>2]=k;l=m+4|0;f[l>>2]=k;p[m+8>>3]=1.0;if((k|0)>1?(p[m+8+(k+1<<3)>>3]=1.0,(k|0)!=2):0){r=2;do{s=m+8+((X(r,f[l>>2]|0)|0)+r<<3)|0;p[s>>3]=1.0;r=r+1|0}while((r|0)!=(k|0))}o=m;q=Ab(b,m)|0}Id(o);n=q}else n=0;while(0);q=f[b+12>>2]|0;if(q|0)Id(q);Id(f[b+4>>2]|0);Id(b);d=n;return d|0}}return 0}function Ab(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c=rb(b)|0;d=f[a+12>>2]|0;e=f[d>>2]|0;a:do if(e|0){g=c+4|0;h=f[a+4>>2]|0;i=f[b+4>>2]|0;j=i<<3;k=0;do{l=c+8+((X(f[g>>2]|0,k)|0)<<3)|0;_d(l|0,b+8+((X(i,f[h+(k<<2)>>2]|0)|0)<<3)|0,j|0)|0;k=k+1|0}while(k>>>0<e>>>0);k=c+4|0;j=d+4|0;h=e>>>0>1;if(h){i=f[b+4>>2]|0;g=(i|0)==0;l=0;m=1;n=h;while(1){if(!g){h=f[j>>2]|0;o=m;do{q=d+8+((X(h,o)|0)+l<<3)|0;r=+p[q>>3];q=0;do{s=f[k>>2]|0;t=c+8+((X(s,l)|0)+q<<3)|0;u=c+8+((X(s,o)|0)+q<<3)|0;p[u>>3]=+p[u>>3]-r*+p[t>>3];q=q+1|0}while(q>>>0<i>>>0);o=o+1|0}while(o>>>0<e>>>0);if(!n)break a}o=m+1|0;n=o>>>0<e>>>0;if(!n)break;else{h=m;m=o;l=h}}}}while(0);e=f[d+4>>2]|0;a=e+-1|0;if((a|0)<=-1)return c|0;l=c+4|0;m=f[b+4>>2]|0;b=m;n=m;i=a;while(1){a=d+8+((X(e,i)|0)+i<<3)|0;r=1.0/+p[a>>3];if(!b)v=0;else{a=0;do{k=c+8+((X(f[l>>2]|0,i)|0)+a<<3)|0;p[k>>3]=r*+p[k>>3];a=a+1|0}while(a>>>0<n>>>0);v=n}if((i|0)>0){a=0;k=n;while(1){j=d+8+((X(e,a)|0)+i<<3)|0;r=+p[j>>3];if(!k)w=0;else{j=0;do{g=f[l>>2]|0;h=c+8+((X(g,i)|0)+j<<3)|0;o=c+8+((X(g,a)|0)+j<<3)|0;p[o>>3]=+p[o>>3]-r*+p[h>>3];j=j+1|0}while(j>>>0<m>>>0);w=m}a=a+1|0;if((a|0)==(i|0)){x=w;y=w;break}else k=w}}else{x=n;y=v}i=i+-1|0;if((i|0)<=-1)break;else{b=y;n=x}}return c|0}function Bb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=u;u=u+32|0;e=d+16|0;g=d+8|0;h=d+4|0;i=d;if(!a)Ga(1226,950,803,1239);else{j=0;k=0;l=a}a:while(1){switch(b[l>>0]|0){case 0:{break a;break}case 70:case 77:{m=j+1|0;break}default:m=j}j=m;k=k+1|0;l=l+1|0}if((j|0)<=0)Ga(1247,950,811,1239);if(!k){n=0;u=d;return n|0}f[e>>2]=c;c=xa()|0;l=u;u=u+((1*(j<<2)|0)+15&-16)|0;m=0;do{o=(f[e>>2]|0)+(4-1)&~(4-1);p=f[o>>2]|0;f[e>>2]=o+4;f[l+(m<<2)>>2]=p;m=m+1|0}while((m|0)!=(j|0));f[g>>2]=0;f[h>>2]=0;f[i>>2]=0;j=u;u=u+((1*(k<<1<<2)|0)+15&-16)|0;k=Cb(a,g,l,h,j,i,0)|0;if(!k)q=0;else q=rb(k)|0;k=f[i>>2]|0;if((k|0)>0){h=0;l=k;while(1){k=f[j+(h<<2)>>2]|0;if(!k)r=l;else{Id(k);r=f[i>>2]|0}h=h+1|0;if((h|0)>=(r|0))break;else l=r}}Fa(c|0);n=q;u=d;return n|0}function Cb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0.0,y=0,z=0;j=u;u=u+16|0;k=j;l=j+4|0;m=f[c>>2]|0;n=b[a+m>>0]|0;if(!(n<<24>>24)){o=0;u=j;return o|0}q=(i|0)!=0;r=0;s=n<<24>>24;n=m;a:while(1){b:do switch(s|0){case 41:{t=7;break a;break}case 40:{if(q&(r|0)!=0){o=r;t=29;break a}f[c>>2]=n+1;m=Db(a,c,Cb(a,c,d,e,g,h,0)|0,g,h)|0;if(!r)v=m;else{w=tb(r,m)|0;m=f[h>>2]|0;f[g+(m<<2)>>2]=w;f[h>>2]=m+1;v=w}break}case 42:{f[c>>2]=n+1;w=Db(a,c,Cb(a,c,d,e,g,h,1)|0,g,h)|0;if(!r)v=w;else{m=tb(r,w)|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;v=m}break}case 70:{m=f[d+(f[e>>2]<<2)>>2]|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=(f[e>>2]|0)+1;w=Db(a,c,m,g,h)|0;if(!r)v=w;else{m=tb(r,w)|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;v=m}break}case 77:{m=f[d+(f[e>>2]<<2)>>2]|0;f[c>>2]=n+1;f[e>>2]=(f[e>>2]|0)+1;w=Db(a,c,m,g,h)|0;if(!r)v=w;else{m=tb(r,w)|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;v=m}break}case 46:case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{m=a+n|0;x=+wd(m,l);f[c>>2]=(f[l>>2]|0)-m+(f[c>>2]|0);m=Jd(1,16)|0;p[m+8>>3]=x;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;w=Db(a,c,m,g,h)|0;if(!r)y=w;else{m=tb(r,w)|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;y=m}v=y;break}case 43:{m=(r|0)!=0;if(q&m){o=r;t=29;break a}if(!m){t=20;break a}f[c>>2]=n+1;m=vb(r,Db(a,c,Cb(a,c,d,e,g,h,1)|0,g,h)|0)|0;w=f[h>>2]|0;f[g+(w<<2)>>2]=m;f[h>>2]=w+1;v=m;break}case 45:{if(q&(r|0)!=0){o=r;t=29;break a}f[c>>2]=n+1;m=Db(a,c,Cb(a,c,d,e,g,h,1)|0,g,h)|0;if(!r){w=ub(m,-1.0)|0;z=f[h>>2]|0;f[g+(z<<2)>>2]=w;f[h>>2]=z+1;v=w;break b}else{w=wb(r,m)|0;m=f[h>>2]|0;f[g+(m<<2)>>2]=w;f[h>>2]=m+1;v=w;break b}break}case 32:{f[c>>2]=n+1;v=r;break}default:{t=28;break a}}while(0);w=f[c>>2]|0;m=b[a+w>>0]|0;if(!(m<<24>>24)){o=v;t=29;break}else{r=v;s=m<<24>>24;n=w}}if((t|0)==7){if(i|0){o=r;u=j;return o|0}f[c>>2]=n+1;o=r;u=j;return o|0}else if((t|0)==20)Ga(1257,950,741,1269);else if((t|0)==28){r=f[6]|0;f[k>>2]=s;qd(r,1285,k)|0;Ga(1321,950,790,1269)}else if((t|0)==29){u=j;return o|0}return 0}function Db(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=f[c>>2]|0;i=b[a+h>>0]|0;if(!(i<<24>>24)){j=d;return j|0}else{k=d;l=i;m=h}a:while(1){switch(l<<24>>24|0){case 39:{if(!k){n=4;break a}o=xb(k)|0;p=1;break}case 94:{if(!k){n=7;break a}if((b[a+(m+1)>>0]|0)!=45){n=9;break a}if((b[a+(m+2)>>0]|0)!=49){n=11;break a}o=zb(k)|0;p=3;break}default:{j=k;n=14;break a}}h=f[g>>2]|0;f[e+(h<<2)>>2]=o;f[g>>2]=h+1;m=(f[c>>2]|0)+p|0;f[c>>2]=m;l=b[a+m>>0]|0;if(!(l<<24>>24)){j=o;n=14;break}else k=o}if((n|0)==4)Ga(1257,950,563,1346);else if((n|0)==7)Ga(1257,950,575,1346);else if((n|0)==9)Ga(1367,950,576,1346);else if((n|0)==11)Ga(1387,950,577,1346);else if((n|0)==14)return j|0;return 0}function Eb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=u;u=u+32|0;e=d;g=d+12|0;if((f[b+4>>2]|0)>>>0>(f[b>>2]|0)>>>0){h=xb(b)|0;Fb(g,h,c);i=f[g+8>>2]|0;j=f[g+4>>2]|0;k=xb(j)|0;l=f[g>>2]|0;if(j|0)Id(j);if(h|0)Id(h);m=i;n=k;o=l}else{Fb(e,b,c);m=f[e>>2]|0;n=f[e+4>>2]|0;o=f[e+8>>2]|0}f[a>>2]=m;f[a+4>>2]=n;f[a+8>>2]=o;u=d;return}function Fb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,M=0,N=0.0,O=0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0,V=0,W=0,Y=0,Z=0,_=0.0,$=0.0,aa=0.0,ba=0,ca=0.0,da=0,ea=0.0,fa=0,ga=0.0,ha=0,ia=0.0,ja=0,ka=0.0,la=0,ma=0.0,na=0.0,oa=0,pa=0.0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0.0,ya=0,za=0.0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Ha=0,Ia=0,Ja=0,Ka=0;d=u;u=u+176|0;e=d+160|0;g=d+152|0;h=d+136|0;i=d+112|0;j=d+80|0;k=d+48|0;l=d+32|0;m=d;n=rb(b)|0;o=f[b>>2]|0;q=(o|0)==0;if(!q){if((o|0)<=-1)Ga(940,950,52,964);r=Jd(1,(X(o<<3,o)|0)+8|0)|0;f[r>>2]=o;s=r+4|0;f[s>>2]=o;p[r+8>>3]=1.0;if((o|0)>1?(p[r+8+(o+1<<3)>>3]=1.0,(o|0)!=2):0){t=2;do{v=r+8+((X(t,f[s>>2]|0)|0)+t<<3)|0;p[v>>3]=1.0;t=t+1|0}while((t|0)!=(o|0));w=r}else w=r}else{r=Jd(1,16)|0;p[r+8>>3]=1.0;w=r}r=b+4|0;t=f[r>>2]|0;if(t){if((t|0)<=-1)Ga(940,950,52,964);s=Jd(1,(X(t<<3,t)|0)+8|0)|0;f[s>>2]=t;v=s+4|0;f[v>>2]=t;p[s+8>>3]=1.0;if((t|0)>1?(p[s+8+(t+1<<3)>>3]=1.0,(t|0)!=2):0){x=2;do{y=s+8+((X(x,f[v>>2]|0)|0)+x<<3)|0;p[y>>3]=1.0;x=x+1|0}while((x|0)!=(t|0));z=s}else z=s}else{s=Jd(1,16)|0;p[s+8>>3]=1.0;z=s}s=n+4|0;a:do if(!q){x=w+4|0;v=z+4|0;y=n+8|0;A=0;B=t;C=o;D=0;E=-1;while(1){F=A+1|0;do if(A>>>0<B>>>0){G=C-A|0;H=xa()|0;I=u;u=u+((1*(G<<3)|0)+15&-16)|0;J=(G|0)>0;if(J){G=f[s>>2]|0;M=C+D|0;N=0.0;O=0;do{P=n+8+((X(G,O+A|0)|0)+A<<3)|0;Q=+p[P>>3];p[I+(O<<3)>>3]=Q;N=N+Q*Q;O=O+1|0}while((O|0)!=(M|0));R=N;S=+p[I>>3]}else{R=0.0;S=0.0}Q=+L(+R);T=S+(S<0.0?-Q:Q);p[I>>3]=T;Q=+L(+(R+(T*T-S*S)));if(Q==0.0){Fa(H|0);break}if(J?(M=C+D|0,p[I>>3]=T/Q,(M|0)!=1):0){O=1;do{p[I+(O<<3)>>3]=+p[I+(O<<3)>>3]/Q;O=O+1|0}while((O|0)!=(M|0))}M=f[w>>2]|0;b:do if(M|0){if(!J){O=0;while(1){O=O+1|0;if(O>>>0>=M>>>0)break b}}O=C+D|0;Q=+p[I>>3];G=(O|0)==1;P=0;do{U=f[x>>2]|0;V=X(U,P)|0;N=0.0;W=0;do{N=N+ +p[w+8+(W+A+V<<3)>>3]*+p[I+(W<<3)>>3];W=W+1|0}while((W|0)!=(O|0));T=N*2.0;W=w+8+(A+(X(U,P)|0)<<3)|0;p[W>>3]=+p[W>>3]-T*Q;if(!G){W=1;do{V=w+8+(W+A+(X(f[x>>2]|0,P)|0)<<3)|0;p[V>>3]=+p[V>>3]-T*+p[I+(W<<3)>>3];W=W+1|0}while((W|0)!=(O|0))}P=P+1|0}while(P>>>0<(f[w>>2]|0)>>>0)}while(0);M=f[s>>2]|0;c:do if(M|0){if(!J){P=0;while(1){P=P+1|0;if(P>>>0>=M>>>0)break c}}P=C+D|0;O=0;G=M;while(1){Q=0.0;W=0;do{U=n+8+((X(W+A|0,G)|0)+O<<3)|0;Q=Q+ +p[U>>3]*+p[I+(W<<3)>>3];W=W+1|0}while((W|0)!=(P|0));T=Q*2.0;W=0;U=G;do{V=n+8+((X(U,W+A|0)|0)+O<<3)|0;p[V>>3]=+p[V>>3]-T*+p[I+(W<<3)>>3];W=W+1|0;U=f[s>>2]|0}while((W|0)!=(P|0));O=O+1|0;if(O>>>0>=U>>>0)break;else G=U}}while(0);Fa(H|0);Y=f[r>>2]|0;Z=45}else{Y=B;Z=45}while(0);if((Z|0)==45?(Z=0,(A+2|0)>>>0<Y>>>0):0){I=Y-A+-1|0;M=xa()|0;J=u;u=u+((1*(I<<3)|0)+15&-16)|0;G=(I|0)>0;if(G){O=X(f[s>>2]|0,A)|0;P=Y+E|0;_d(J|0,y+(F+O<<3)|0,I<<3|0)|0;T=0.0;I=0;do{Q=+p[n+8+(F+I+O<<3)>>3];T=T+Q*Q;I=I+1|0}while((I|0)!=(P|0));_=T;$=+p[J>>3]}else{_=0.0;$=0.0}Q=+L(+_);N=$+($<0.0?-Q:Q);p[J>>3]=N;Q=+L(+(_+(N*N-$*$)));d:do if(!(Q==0.0)){if(G?(P=Y+E|0,p[J>>3]=N/Q,(P|0)!=1):0){I=1;do{p[J+(I<<3)>>3]=+p[J+(I<<3)>>3]/Q;I=I+1|0}while((I|0)!=(P|0))}P=f[z>>2]|0;e:do if(P|0){if(!G){I=0;while(1){I=I+1|0;if(I>>>0>=P>>>0)break e}}I=Y+E|0;aa=+p[J>>3];H=A+1|0;O=(I|0)==1;W=0;do{V=f[v>>2]|0;ba=X(V,W)|0;ca=0.0;da=0;do{ca=ca+ +p[z+8+(F+da+ba<<3)>>3]*+p[J+(da<<3)>>3];da=da+1|0}while((da|0)!=(I|0));ea=ca*2.0;da=z+8+(H+(X(V,W)|0)<<3)|0;p[da>>3]=+p[da>>3]-ea*aa;if(!O){da=1;do{ba=z+8+(F+da+(X(f[v>>2]|0,W)|0)<<3)|0;p[ba>>3]=+p[ba>>3]-ea*+p[J+(da<<3)>>3];da=da+1|0}while((da|0)!=(I|0))}W=W+1|0}while(W>>>0<(f[z>>2]|0)>>>0)}while(0);P=f[n>>2]|0;if(P|0){if(!G){W=0;while(1){W=W+1|0;if(W>>>0>=P>>>0)break d}}P=Y+E|0;aa=+p[J>>3];W=A+1|0;I=(P|0)==1;O=0;do{H=f[s>>2]|0;da=X(H,O)|0;V=0;ea=0.0;do{ea=ea+ +p[n+8+(F+V+da<<3)>>3]*+p[J+(V<<3)>>3];V=V+1|0}while((V|0)!=(P|0));ca=ea*2.0;V=n+8+(W+(X(H,O)|0)<<3)|0;p[V>>3]=+p[V>>3]-ca*aa;if(!I){V=1;do{da=n+8+(F+V+(X(f[s>>2]|0,O)|0)<<3)|0;p[da>>3]=+p[da>>3]-ca*+p[J+(V<<3)>>3];V=V+1|0}while((V|0)!=(P|0))}O=O+1|0}while(O>>>0<(f[n>>2]|0)>>>0)}}while(0);Fa(M|0)}J=f[b>>2]|0;if(J>>>0<=F>>>0)break a;A=F;B=f[r>>2]|0;C=J;D=D+-1|0;E=E+-1|0}}while(0);Y=f[s>>2]|0;o=u;u=u+((1*(Y<<2)|0)+15&-16)|0;if(Y>>>0>2){t=(Y|0)>0;q=2;do{if(t){E=X(Y,q)|0;D=0;$=-1.0;C=0;while(1){if((D|0)==(q|0)){fa=C;ga=$}else{_=+K(+(+p[n+8+(E+D<<3)>>3]));B=_>$;fa=B?D:C;ga=B?_:$}D=D+1|0;if((D|0)==(Y|0)){ha=fa;break}else{$=ga;C=fa}}}else ha=0;f[o+(q<<2)>>2]=ha;q=q+1|0}while(q>>>0<Y>>>0)}q=j+8|0;ha=j+16|0;fa=j+24|0;t=m+16|0;C=m+8|0;D=m+24|0;E=k+16|0;B=k+8|0;A=k+24|0;v=z+4|0;y=w+4|0;f:do if(Y>>>0>=2){x=1;J=0;G=0;O=Y;while(1){P=(O|0)>0;I=(O|0)>0;W=0;V=-1;ia=-1.0;do{do if((W|0)==(J|0)|(W|0)==(x|0)){if(P){H=X(O,W)|0;da=0;ga=-1.0;ba=0;while(1){if((da|0)==(W|0)){ja=ba;ka=ga}else{$=+K(+(+p[n+8+(H+da<<3)>>3]));U=$>ga;ja=U?da:ba;ka=U?$:ga}da=da+1|0;if((da|0)==(O|0)){la=ja;break}else{ga=ka;ba=ja}}}else la=0;f[o+(W<<2)>>2]=la;ba=n+8+((X(O,W)|0)+la<<3)|0;ma=+K(+(+p[ba>>3]))}else{ba=o+(W<<2)|0;da=f[ba>>2]|0;if(!((da|0)==(J|0)|(da|0)==(x|0))){H=X(W,O)|0;ga=+K(+(+p[n+8+(da+H<<3)>>3]));$=+K(+(+p[n+8+(H+J<<3)>>3]));if($>ga){f[ba>>2]=J;na=$}else na=ga;ga=+K(+(+p[n+8+(H+x<<3)>>3]));if(!(ga>na)){ma=na;break}f[ba>>2]=x;ma=ga;break}if(I){H=X(O,W)|0;da=0;ga=-1.0;U=0;while(1){if((da|0)==(W|0)){oa=U;pa=ga}else{$=+K(+(+p[n+8+(H+da<<3)>>3]));qa=$>ga;oa=qa?da:U;pa=qa?$:ga}da=da+1|0;if((da|0)==(O|0)){ra=oa;break}else{ga=pa;U=oa}}}else ra=0;f[ba>>2]=ra;U=n+8+((X(O,W)|0)+ra<<3)|0;ma=+K(+(+p[U>>3]))}while(0);U=ma>ia;ia=U?ma:ia;V=U?W:V;W=W+1|0}while(W>>>0<O>>>0);if((V|0)<=-1){Z=106;break}x=f[o+(V<<2)>>2]|0;if(ia<1.0e-10){sa=G;break}W=X(V,O)|0;ga=+p[n+8+(x+W<<3)>>3];I=X(x,O)|0;$=+p[n+8+(I+V<<3)>>3];_=+p[n+8+(I+x<<3)>>3];p[j>>3]=+p[n+8+(W+V<<3)>>3];p[q>>3]=ga;p[ha>>3]=$;p[fa>>3]=_;Vb(j,k,l,m);if(f[w>>2]|0){_=+p[k>>3];$=+p[E>>3];ga=+p[B>>3];S=+p[A>>3];W=0;do{I=X(f[y>>2]|0,W)|0;P=w+8+(I+V<<3)|0;R=+p[P>>3];Q=+p[w+8+(I+x<<3)>>3];p[P>>3]=R*_+Q*$;P=w+8+((X(f[y>>2]|0,W)|0)+x<<3)|0;p[P>>3]=R*ga+Q*S;W=W+1|0}while(W>>>0<(f[w>>2]|0)>>>0)}if(f[z>>2]|0){S=+p[m>>3];ga=+p[t>>3];$=+p[C>>3];_=+p[D>>3];W=0;do{P=X(f[v>>2]|0,W)|0;I=z+8+(P+V<<3)|0;Q=+p[I>>3];R=+p[z+8+(P+x<<3)>>3];p[I>>3]=Q*S+R*ga;I=z+8+((X(f[v>>2]|0,W)|0)+x<<3)|0;p[I>>3]=Q*$+R*_;W=W+1|0}while(W>>>0<(f[z>>2]|0)>>>0)}W=f[s>>2]|0;if(!W)ta=0;else{_=+p[k>>3];$=+p[E>>3];ga=+p[B>>3];S=+p[A>>3];I=0;P=W;while(1){W=n+8+((X(P,V)|0)+I<<3)|0;R=+p[W>>3];F=n+8+((X(P,x)|0)+I<<3)|0;Q=+p[F>>3];p[W>>3]=R*_+Q*$;W=n+8+((X(f[s>>2]|0,x)|0)+I<<3)|0;p[W>>3]=R*ga+Q*S;I=I+1|0;W=f[s>>2]|0;if(I>>>0>=W>>>0){ta=W;break}else P=W}}g:do if(f[n>>2]|0){S=+p[m>>3];ga=+p[t>>3];$=+p[C>>3];_=+p[D>>3];P=0;I=ta;while(1){W=X(I,P)|0;F=n+8+(W+V<<3)|0;Q=+p[F>>3];R=+p[n+8+(W+x<<3)>>3];p[F>>3]=Q*S+R*ga;F=n+8+((X(f[s>>2]|0,P)|0)+x<<3)|0;p[F>>3]=Q*$+R*_;F=P+1|0;if(F>>>0>=(f[n>>2]|0)>>>0)break g;P=F;I=f[s>>2]|0}}while(0);G=G+1|0;if((G|0)>=1073741824){sa=G;break}O=f[s>>2]|0;if(O>>>0<2)break f;else J=V}if((Z|0)==106)Ga(1407,950,1250,1417);if((c&1|0)==0&(sa|0)==1073741824){J=f[b>>2]|0;O=f[r>>2]|0;f[i>>2]=1073741824;f[i+4>>2]=J;f[i+8>>2]=O;p[i+16>>3]=ia;Fd(1431,i)|0}}while(0);i=f[r>>2]|0;r=u;u=u+((1*(i<<2)|0)+15&-16)|0;sa=u;u=u+((1*(i<<3)|0)+15&-16)|0;c=(i|0)==0;if(!c){Z=f[s>>2]|0;s=0;do{f[r+(s<<2)>>2]=s;ta=n+8+((X(Z,s)|0)+s<<3)|0;p[sa+(s<<3)>>3]=+p[ta>>3];s=s+1|0}while((s|0)!=(i|0))}do{s=0;Z=0;h:while(1){ta=s;while(1){ua=ta+1|0;if(ua>>>0>=i>>>0)break h;va=sa+(ua<<3)|0;wa=+p[va>>3];ia=+K(+wa);ya=sa+(ta<<3)|0;za=+p[ya>>3];if(ia>+K(+za))break;else ta=ua}V=r+(ta<<2)|0;D=f[V>>2]|0;C=r+(ua<<2)|0;f[V>>2]=f[C>>2];f[C>>2]=D;p[ya>>3]=wa;p[va>>3]=za;s=ua;Z=1}}while((Z|0)!=0);ua=f[b>>2]|0;if(ua){if((ua|0)<=-1)Ga(940,950,52,964);b=Jd(1,(X(ua<<3,ua)|0)+8|0)|0;f[b>>2]=ua;va=b+4|0;f[va>>2]=ua;p[b+8>>3]=1.0;if((ua|0)>1?(p[b+8+(ua+1<<3)>>3]=1.0,(ua|0)!=2):0){ya=2;do{s=b+8+((X(ya,f[va>>2]|0)|0)+ya<<3)|0;p[s>>3]=1.0;ya=ya+1|0}while((ya|0)!=(ua|0));Aa=b;Ba=b}else{Aa=b;Ba=b}}else{b=Jd(1,16)|0;p[b+8>>3]=1.0;Aa=b;Ba=b}do if(c){b=Jd(1,16)|0;p[b+8>>3]=1.0;Ca=b;Da=b}else{if((i|0)<=-1)Ga(940,950,52,964);b=Jd(1,(X(i<<3,i)|0)+8|0)|0;f[b>>2]=i;ua=b+4|0;f[ua>>2]=i;p[b+8>>3]=1.0;if((i|0)>1){p[b+8+(i+1<<3)>>3]=1.0;if((i|0)!=2){ya=2;do{va=b+8+((X(ya,f[ua>>2]|0)|0)+ya<<3)|0;p[va>>3]=1.0;ya=ya+1|0}while((ya|0)!=(i|0))}if(c){Ca=b;Da=b;break}}ya=Aa+4|0;ua=b+4|0;Z=0;do{va=f[r+(Z<<2)>>2]|0;s=Aa+8+((X(f[ya>>2]|0,va)|0)+va<<3)|0;p[s>>3]=0.0;s=b+8+((X(f[ua>>2]|0,va)|0)+va<<3)|0;p[s>>3]=0.0;s=Aa+8+((X(f[ya>>2]|0,va)|0)+Z<<3)|0;p[s>>3]=+p[sa+(Z<<3)>>3]<0.0?-1.0:1.0;s=b+8+((X(f[ua>>2]|0,va)|0)+Z<<3)|0;p[s>>3]=1.0;Z=Z+1|0}while(Z>>>0<i>>>0);Ca=b;Da=b}while(0);f[h>>2]=Aa;f[h+4>>2]=n;f[h+8>>2]=Ca;n=Bb(1497,h)|0;f[g>>2]=w;f[g+4>>2]=Aa;w=Bb(1504,g)|0;f[e>>2]=z;f[e+4>>2]=Ca;z=Bb(1504,e)|0;if(Aa|0)Id(Ba);if(Ca|0)Id(Da);if(!(f[n>>2]|0)){f[a>>2]=w;Ea=a+4|0;f[Ea>>2]=n;Ha=a+8|0;f[Ha>>2]=z;u=d;return}Da=n+4|0;Ca=f[Da>>2]|0;Ba=0;Aa=Ca;e=Ca;while(1){if(!Aa){Ia=e;Ja=0}else{Ca=0;g=Aa;h=e;while(1){if((Ba|0)==(Ca|0))Ka=h;else{i=n+8+((X(g,Ba)|0)+Ca<<3)|0;p[i>>3]=0.0;Ka=f[Da>>2]|0}Ca=Ca+1|0;if(Ca>>>0>=Ka>>>0){Ia=Ka;Ja=Ka;break}else{g=Ka;h=Ka}}}Ba=Ba+1|0;if(Ba>>>0>=(f[n>>2]|0)>>>0)break;else{Aa=Ja;e=Ia}}f[a>>2]=w;Ea=a+4|0;f[Ea>>2]=n;Ha=a+8|0;f[Ha>>2]=z;u=d;return}function Gb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=(a>>>0)%96|0;d=((c|0)==0?0:96-c|0)+a|0;c=Jd(X(d,b)|0,1)|0;e=Jd(1,16)|0;f[e>>2]=a;f[e+4>>2]=b;f[e+8>>2]=d;f[e+12>>2]=c;return e|0}function Hb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=(a>>>0)%(c>>>0)|0;e=((d|0)==0?0:c-d|0)+a|0;d=Jd(X(e,b)|0,1)|0;c=Jd(1,16)|0;f[c>>2]=a;f[c+4>>2]=b;f[c+8>>2]=e;f[c+12>>2]=d;return c|0}function Ib(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=f[a+8>>2]|0;d=X(c,b)|0;e=Hd(d)|0;_d(e|0,f[a+12>>2]|0,d|0)|0;d=f[a>>2]|0;a=Jd(1,16)|0;f[a>>2]=d;f[a+4>>2]=b;f[a+8>>2]=c;f[a+12>>2]=e;return a|0}function Jb(a){a=a|0;if(!a)return;Id(f[a+12>>2]|0);Id(a);return}function Kb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=u;if(!(d&1))Ga(1526,1508,324,1541);g=a+4|0;h=f[g>>2]|0;if((h|0)>0){i=a+8|0;j=a+12|0;k=0;do{l=f[i>>2]|0;m=xa()|0;n=u;u=u+((1*l|0)+15&-16)|0;l=f[i>>2]|0;o=(f[j>>2]|0)+(X(l,k)|0)|0;_d(n|0,o|0,l|0)|0;Lb(n,o,f[a>>2]|0,c,d);Fa(m|0);k=k+1|0;m=f[g>>2]|0}while((k|0)<(m|0));p=a;q=m}else{p=a;q=h}if((f[p>>2]|0)<=0){u=e;return}h=a+12|0;k=a+8|0;a=0;j=q;while(1){q=xa()|0;i=u;u=u+((1*j|0)+15&-16)|0;m=f[g>>2]|0;o=u;u=u+((1*m|0)+15&-16)|0;if((m|0)>0){n=f[h>>2]|0;l=f[k>>2]|0;r=0;do{s=n+((X(l,r)|0)+a)|0;b[i+r>>0]=b[s>>0]|0;r=r+1|0}while((r|0)<(m|0))}Lb(i,o,m,c,d);if((f[g>>2]|0)>0){r=0;do{l=(f[h>>2]|0)+((X(f[k>>2]|0,r)|0)+a)|0;b[l>>0]=b[o+r>>0]|0;r=r+1|0}while((r|0)<(f[g>>2]|0))}Fa(q|0);r=a+1|0;if((r|0)>=(f[p>>2]|0))break;a=r;j=f[g>>2]|0}u=e;return}function Lb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0;if(!(f&1))Ga(1562,1508,304,1573);g=(f|0)/2|0;if((f|0)>1&(d|0)>0){i=0;do{b[c+i>>0]=b[a+i>>0]|0;i=i+1|0}while((i|0)<(g|0)&(i|0)<(d|0))}i=d-f|0;do if((i|0)>0){if((f|0)>0)j=0;else{Qd(c+g|0,0,i|0)|0;break}do{k=0;l=0;do{l=(X(h[a+(k+j)>>0]|0,h[e+k>>0]|0)|0)+l|0;k=k+1|0}while((k|0)!=(f|0));b[c+(j+g)>>0]=l>>>8;j=j+1|0}while((j|0)!=(i|0))}while(0);j=i+g|0;if((j|0)<(d|0))m=j;else return;do{b[c+m>>0]=b[a+m>>0]|0;m=m+1|0}while((m|0)!=(d|0));return}function Mb(a,c,d){a=a|0;c=+c;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0;e=u;if(c==0.0){u=e;return}if(!(d&1))Ga(1526,1508,353,1582);f=xa()|0;g=u;u=u+((1*(d<<3)|0)+15&-16)|0;h=(d|0)>0;if(h){i=(d|0)/-2|0;j=0;do{k=+(j+i|0)/c;l=+U(+(k*k*-.5));p[g+(j<<3)>>3]=l;j=j+1|0}while((j|0)!=(d|0));if(h){j=0;c=0.0;do{c=c+ +p[g+(j<<3)>>3];j=j+1|0}while((j|0)!=(d|0));if(h){j=0;do{i=g+(j<<3)|0;p[i>>3]=+p[i>>3]/c;j=j+1|0}while((j|0)!=(d|0));j=u;u=u+((1*d|0)+15&-16)|0;if(h){h=0;do{b[j+h>>0]=~~(+p[g+(h<<3)>>3]*255.0);h=h+1|0}while((h|0)!=(d|0));m=j}else m=j}else n=10}else n=10}else n=10;if((n|0)==10){n=u;u=u+((1*d|0)+15&-16)|0;m=n}Kb(a,m,d);Fa(f|0);u=e;return}function Nb(a,c){a=a|0;c=+c;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0;d=u;e=f[a>>2]|0;g=f[a+4>>2]|0;if(c==1.5){i=((e|0)/3|0)<<1;j=((g|0)/3|0)<<1;k=(i>>>0)%96|0;l=((k|0)==0?0:96-k|0)+i|0;k=Jd(X(l,j)|0,1)|0;m=Jd(1,16)|0;f[m>>2]=i;f[m+4>>2]=j;n=m+8|0;f[n>>2]=l;f[m+12>>2]=k;if((g|0)<=2){o=m;u=d;return o|0}l=(e|0)>2;p=a+12|0;q=a+8|0;r=0;s=0;while(1){if(l){t=r+1|0;v=r+2|0;w=f[n>>2]|0;x=X(w,s)|0;y=X(w,s|1)|0;w=0;z=0;while(1){A=f[p>>2]|0;B=f[q>>2]|0;C=X(B,r)|0;D=w+1|0;E=w+2|0;F=b[A+(C+E)>>0]|0;G=X(B,t)|0;H=b[A+(G+E)>>0]|0;I=X(B,v)|0;B=b[A+(I+w)>>0]|0;J=b[A+(I+D)>>0]|0;K=b[A+(I+E)>>0]|0;E=(h[A+(C+D)>>0]|0)<<1;I=(h[A+(G+w)>>0]|0)<<1;L=h[A+(G+D)>>0]|0;b[k+(x+z)>>0]=((E+((h[A+(C+w)>>0]|0)<<2)+I+L|0)>>>0)/9|0;C=(H&255)<<1;H=z|1;b[k+(x+H)>>0]=((((F&255)<<2)+E+L+C|0)>>>0)/9|0;E=(J&255)<<1;b[k+(y+z)>>0]=((L+I+((B&255)<<2)+E|0)>>>0)/9|0;b[k+(y+H)>>0]=((C+L+E+((K&255)<<2)|0)>>>0)/9|0;z=z+2|0;if((z|0)>=(i|0))break;else w=w+3|0}}s=s+2|0;if((s|0)>=(j|0)){o=m;break}else r=r+3|0}u=d;return o|0}r=~~c;m=(e|0)/(r|0)|0;j=(g|0)/(r|0)|0;s=(m>>>0)%96|0;i=((s|0)==0?0:96-s|0)+m|0;s=Jd(X(i,j)|0,1)|0;k=Jd(1,16)|0;f[k>>2]=m;f[k+4>>2]=j;q=k+8|0;f[q>>2]=i;f[k+12>>2]=s;switch(r|0){case 2:{if(!((j|0)>0&(m|0)>0)){o=k;u=d;return o|0}p=f[a+8>>2]|0;n=f[a+12>>2]|0;l=0;do{w=0;z=X(l<<1,p)|0;y=X(i,l)|0;while(1){x=p+z|0;b[s+y>>0]=((h[n+(z+1)>>0]|0)+(h[n+z>>0]|0)+(h[n+x>>0]|0)+(h[n+(x+1)>>0]|0)|0)>>>2;x=w+1|0;if((x|0)==(m|0))break;w=x;z=z+2|0;y=y+1|0}l=l+1|0}while((l|0)!=(j|0));o=k;u=d;return o|0}case 3:{if(!((j|0)>0&(m|0)>0)){o=k;u=d;return o|0}l=f[a+8>>2]|0;n=f[a+12>>2]|0;p=l<<1;y=0;do{z=0;w=X(y*3|0,l)|0;x=X(i,y)|0;while(1){v=l+w|0;t=p+w|0;b[s+x>>0]=((h[n+(w+1)>>0]|0)+(h[n+w>>0]|0)+(h[n+(w+2)>>0]|0)+(h[n+v>>0]|0)+(h[n+(v+1)>>0]|0)+(h[n+(v+2)>>0]|0)+(h[n+t>>0]|0)+(h[n+(t+1)>>0]|0)|0)>>>3;t=z+1|0;if((t|0)==(m|0))break;z=t;w=w+3|0;x=x+1|0}y=y+1|0}while((y|0)!=(j|0));o=k;u=d;return o|0}case 4:{if(!((j|0)>0&(m|0)>0)){o=k;u=d;return o|0}y=f[a+8>>2]|0;n=f[a+12>>2]|0;p=y<<1;l=0;do{x=0;w=X(l<<2,y)|0;z=X(i,l)|0;while(1){t=y+w|0;v=p+w|0;b[s+z>>0]=((h[n+(w+1)>>0]|0)+(h[n+w>>0]|0)+(h[n+(w+2)>>0]|0)+(h[n+(w+3)>>0]|0)+(h[n+t>>0]|0)+(h[n+(t+2)>>0]|0)+((h[n+(t+1)>>0]|0)<<1)+(h[n+v>>0]|0)+(h[n+(v+1)>>0]|0)+(h[n+(v+2)>>0]|0)+(h[n+(v+3)>>0]|0)|0)>>>4;v=x+1|0;if((v|0)==(m|0))break;x=v;w=w+4|0;z=z+1|0}l=l+1|0}while((l|0)!=(j|0));o=k;u=d;return o|0}default:{j=xa()|0;l=u;u=u+((1*(m<<2)|0)+15&-16)|0;a:do if((g|0)>0){n=m<<2;p=(e|0)>0;y=a+12|0;i=a+8|0;z=(m|0)>0;c=+(r|0);M=c*c;if((r|0)>0)N=0;else{w=0;while(1){Qd(l|0,0,n|0)|0;if(z){x=X(f[q>>2]|0,(w|0)/(r|0)|0)|0;v=0;do{b[s+(x+v)>>0]=~~(+((f[l+(v<<2)>>2]|0)>>>0)/M);v=v+1|0}while((v|0)!=(m|0))}w=w+r|0;if((w|0)>=(g|0))break a}}do{Qd(l|0,0,n|0)|0;if(p){w=f[y>>2]|0;v=f[i>>2]|0;x=0;do{t=X(v,x+N|0)|0;K=0;do{E=l+(((K|0)/(r|0)|0)<<2)|0;f[E>>2]=(f[E>>2]|0)+(h[w+(t+K)>>0]|0);K=K+1|0}while((K|0)!=(e|0));x=x+1|0}while((x|0)!=(r|0))}if(z){x=X(f[q>>2]|0,(N|0)/(r|0)|0)|0;w=0;do{b[s+(x+w)>>0]=~~(+((f[l+(w<<2)>>2]|0)>>>0)/M);w=w+1|0}while((w|0)!=(m|0))}N=N+r|0}while((N|0)<(g|0))}while(0);Fa(j|0);o=k;u=d;return o|0}}return 0}function Ob(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,q=0,r=0.0,s=0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,M=0.0,N=0.0,O=0.0,P=0,Q=0.0,R=0,S=0,T=0,U=0.0,V=0,W=0,Y=0.0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;c=u;u=u+32|0;d=c;e=c+12|0;if(!a)Ga(1764,1775,138,1793);g=a+4|0;h=f[g>>2]|0;i=a+12|0;if((h|0)>0){j=f[i>>2]|0;k=f[a>>2]|0;l=0.0;m=0.0;o=0.0;q=0;r=0.0;while(1){s=j+(X(k,q)|0)|0;t=r+ +n[s>>2];v=l+ +n[s+4>>2];w=m+ +n[s+8>>2];x=o+ +n[s+12>>2];q=q+1|0;if((q|0)>=(h|0)){y=v;z=w;A=x;B=t;break}else{l=v;m=w;o=x;r=t}}}else{y=0.0;z=0.0;A=0.0;B=0.0}r=+(h|0);o=B/r;B=y/r;y=z/r;z=A/r;h=pb(9,9)|0;q=h+4|0;if((f[g>>2]|0)>0){k=h+8|0;j=h+16|0;s=h+24|0;C=h+56|0;D=h+64|0;E=h+72|0;F=h+32|0;G=h+40|0;H=h+48|0;I=f[i>>2]|0;i=0;do{J=I+(X(f[a>>2]|0,i)|0)|0;r=+n[J>>2]-o;A=+n[J+4>>2]-B;m=+n[J+8>>2]-y;l=+n[J+12>>2]-z;t=-r;x=-A;w=r*l;v=A*l;K=r*r;J=h+8+(((f[q>>2]|0)*3|0)+3<<3)|0;p[J>>3]=K+ +p[J>>3];M=r*A;J=h+8+(((f[q>>2]|0)*3|0)+4<<3)|0;p[J>>3]=M+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+5<<3)|0;p[J>>3]=r+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+6<<3)|0;p[J>>3]=w*t+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+7<<3)|0;p[J>>3]=v*t+ +p[J>>3];N=l*t;J=h+8+(((f[q>>2]|0)*3|0)+8<<3)|0;p[J>>3]=N+ +p[J>>3];O=A*A;J=f[q>>2]<<2;P=h+8+(J+4<<3)|0;p[P>>3]=O+ +p[P>>3];P=h+8+(J+5<<3)|0;p[P>>3]=A+ +p[P>>3];P=h+8+(J+6<<3)|0;p[P>>3]=w*x+ +p[P>>3];P=h+8+(J+7<<3)|0;p[P>>3]=v*x+ +p[P>>3];Q=l*x;P=f[q>>2]|0;J=h+8+((P<<2)+8<<3)|0;p[J>>3]=Q+ +p[J>>3];J=h+8+((P*5|0)+5<<3)|0;p[J>>3]=+p[J>>3]+1.0;J=h+8+(((f[q>>2]|0)*5|0)+6<<3)|0;p[J>>3]=+p[J>>3]-w;J=h+8+(((f[q>>2]|0)*5|0)+7<<3)|0;p[J>>3]=+p[J>>3]-v;J=h+8+(((f[q>>2]|0)*5|0)+8<<3)|0;p[J>>3]=+p[J>>3]-l;J=(f[q>>2]|0)*6|0;P=h+8+(J+6<<3)|0;p[P>>3]=w*w+ +p[P>>3];P=h+8+(J+7<<3)|0;p[P>>3]=w*v+ +p[P>>3];P=f[q>>2]|0;J=h+8+((P*6|0)+8<<3)|0;p[J>>3]=l*w+ +p[J>>3];J=h+8+((P*7|0)+7<<3)|0;p[J>>3]=v*v+ +p[J>>3];J=h+8+(((f[q>>2]|0)*7|0)+8<<3)|0;p[J>>3]=l*v+ +p[J>>3];v=l*l;J=f[q>>2]|0;P=h+8+((J<<3)+8<<3)|0;p[P>>3]=v+ +p[P>>3];w=m*t;t=m*x;x=-m;p[k>>3]=K+ +p[k>>3];p[j>>3]=M+ +p[j>>3];p[s>>3]=r+ +p[s>>3];p[C>>3]=r*w+ +p[C>>3];p[D>>3]=r*t+ +p[D>>3];p[E>>3]=r*x+ +p[E>>3];P=h+8+(J+1<<3)|0;p[P>>3]=O+ +p[P>>3];P=h+8+((f[q>>2]|0)+2<<3)|0;p[P>>3]=A+ +p[P>>3];P=h+8+((f[q>>2]|0)+6<<3)|0;p[P>>3]=A*w+ +p[P>>3];P=h+8+((f[q>>2]|0)+7<<3)|0;p[P>>3]=A*t+ +p[P>>3];P=h+8+((f[q>>2]|0)+8<<3)|0;p[P>>3]=A*x+ +p[P>>3];P=f[q>>2]<<1;J=h+8+(P+2<<3)|0;p[J>>3]=+p[J>>3]+1.0;J=h+8+(P+6<<3)|0;p[J>>3]=w+ +p[J>>3];J=h+8+(P+7<<3)|0;p[J>>3]=t+ +p[J>>3];J=f[q>>2]|0;P=h+8+((J<<1)+8<<3)|0;p[P>>3]=+p[P>>3]-m;P=J*6|0;J=h+8+(P+6<<3)|0;p[J>>3]=w*w+ +p[J>>3];J=h+8+(P+7<<3)|0;p[J>>3]=w*t+ +p[J>>3];J=f[q>>2]|0;P=h+8+((J*6|0)+8<<3)|0;p[P>>3]=w*x+ +p[P>>3];P=h+8+((J*7|0)+7<<3)|0;p[P>>3]=t*t+ +p[P>>3];P=h+8+(((f[q>>2]|0)*7|0)+8<<3)|0;p[P>>3]=t*x+ +p[P>>3];x=m*m;P=f[q>>2]|0;J=h+8+((P<<3)+8<<3)|0;p[J>>3]=x+ +p[J>>3];t=-l;l=r*m;r=A*m;p[k>>3]=N*N+ +p[k>>3];p[j>>3]=N*Q+ +p[j>>3];p[s>>3]=N*t+ +p[s>>3];p[F>>3]=l*N+ +p[F>>3];p[G>>3]=r*N+ +p[G>>3];p[H>>3]=m*N+ +p[H>>3];J=h+8+(P+1<<3)|0;p[J>>3]=Q*Q+ +p[J>>3];J=h+8+((f[q>>2]|0)+2<<3)|0;p[J>>3]=Q*t+ +p[J>>3];J=h+8+((f[q>>2]|0)+3<<3)|0;p[J>>3]=l*Q+ +p[J>>3];J=h+8+((f[q>>2]|0)+4<<3)|0;p[J>>3]=r*Q+ +p[J>>3];J=h+8+((f[q>>2]|0)+5<<3)|0;p[J>>3]=m*Q+ +p[J>>3];J=f[q>>2]<<1;P=h+8+(J+2<<3)|0;p[P>>3]=v+ +p[P>>3];P=h+8+(J+3<<3)|0;p[P>>3]=l*t+ +p[P>>3];P=f[q>>2]<<1;J=h+8+(P+4<<3)|0;p[J>>3]=r*t+ +p[J>>3];J=h+8+(P+5<<3)|0;p[J>>3]=m*t+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+3<<3)|0;p[J>>3]=l*l+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+4<<3)|0;p[J>>3]=l*r+ +p[J>>3];J=h+8+(((f[q>>2]|0)*3|0)+5<<3)|0;p[J>>3]=m*l+ +p[J>>3];J=f[q>>2]|0;P=J<<2;R=h+8+(P+4<<3)|0;p[R>>3]=r*r+ +p[R>>3];R=h+8+(P+5<<3)|0;p[R>>3]=m*r+ +p[R>>3];R=h+8+((J*5|0)+5<<3)|0;p[R>>3]=x+ +p[R>>3];i=i+1|0}while((i|0)<(f[g>>2]|0));S=0}else S=0;do{g=S;S=S+1|0;if((S|0)<9){i=S;do{H=f[q>>2]|0;G=h+8+((X(H,g)|0)+i<<3)|0;F=h+8+((X(H,i)|0)+g<<3)|0;p[F>>3]=+p[G>>3];i=i+1|0}while((i|0)!=9)}}while((S|0)!=9);S=pb(3,3)|0;if(!(b&1)){Eb(e,h,1);b=f[e>>2]|0;q=S+4|0;p[S+8>>3]=+p[b+72>>3];i=f[b+4>>2]|0;p[S+16>>3]=+p[b+8+(i+8<<3)>>3];p[S+24>>3]=+p[b+8+((i<<1)+8<<3)>>3];p[S+8+(f[q>>2]<<3)>>3]=+p[b+8+((i*3|0)+8<<3)>>3];p[S+8+((f[q>>2]|0)+1<<3)>>3]=+p[b+8+((i<<2)+8<<3)>>3];p[S+8+((f[q>>2]|0)+2<<3)>>3]=+p[b+8+((i*5|0)+8<<3)>>3];g=f[q>>2]<<1;p[S+8+(g<<3)>>3]=+p[b+8+((i*6|0)+8<<3)>>3];p[S+8+((g|1)<<3)>>3]=+p[b+8+((i*7|0)+8<<3)>>3];p[S+8+((f[q>>2]<<1)+2<<3)>>3]=+p[b+8+((i<<3)+8<<3)>>3];sb(b);sb(f[e+4>>2]|0);sb(f[e+8>>2]|0);T=qb(3)|0;U=-o;V=T+4|0;W=T+24|0;p[W>>3]=U;Y=-B;Z=f[V>>2]|0;_=Z+2|0;$=T+8+(_<<3)|0;p[$>>3]=Y;aa=qb(3)|0;ba=aa+4|0;ca=aa+24|0;p[ca>>3]=y;da=f[ba>>2]|0;ea=da+2|0;fa=aa+8+(ea<<3)|0;p[fa>>3]=z;f[d>>2]=aa;ga=d+4|0;f[ga>>2]=S;ha=d+8|0;f[ha>>2]=T;ia=Bb(1605,d)|0;sb(h);sb(T);sb(aa);sb(S);u=c;return ia|0}else{e=zb(h)|0;b=f[e+4>>2]|0;x=+p[e+8>>3];i=e+8+(b<<3)|0;r=+p[i>>3];q=e+8+(b<<1<<3)|0;m=+p[q>>3];g=e+8+(b*3<<3)|0;l=+p[g>>3];G=e+8+(b<<2<<3)|0;t=+p[G>>3];F=e+8+(b*5<<3)|0;v=+p[F>>3];H=e+8+(b*6<<3)|0;Q=+p[H>>3];s=e+8+(b*7<<3)|0;N=+p[s>>3];j=e+8+(b<<3<<3)|0;A=+p[j>>3];w=+L(+(x*x+0.0+r*r+m*m+l*l+t*t+v*v+Q*Q+N*N+A*A));b=S+4|0;p[S+8>>3]=x/w;p[S+16>>3]=+p[i>>3]/w;p[S+24>>3]=+p[q>>3]/w;p[S+8+(f[b>>2]<<3)>>3]=+p[g>>3]/w;p[S+8+((f[b>>2]|0)+1<<3)>>3]=+p[G>>3]/w;p[S+8+((f[b>>2]|0)+2<<3)>>3]=+p[F>>3]/w;F=f[b>>2]<<1;p[S+8+(F<<3)>>3]=+p[H>>3]/w;p[S+8+((F|1)<<3)>>3]=+p[s>>3]/w;p[S+8+((f[b>>2]<<1)+2<<3)>>3]=+p[j>>3]/w;sb(e);T=qb(3)|0;U=-o;V=T+4|0;W=T+24|0;p[W>>3]=U;Y=-B;Z=f[V>>2]|0;_=Z+2|0;$=T+8+(_<<3)|0;p[$>>3]=Y;aa=qb(3)|0;ba=aa+4|0;ca=aa+24|0;p[ca>>3]=y;da=f[ba>>2]|0;ea=da+2|0;fa=aa+8+(ea<<3)|0;p[fa>>3]=z;f[d>>2]=aa;ga=d+4|0;f[ga>>2]=S;ha=d+8|0;f[ha>>2]=T;ia=Bb(1605,d)|0;sb(h);sb(T);sb(aa);sb(S);u=c;return ia|0}return 0}function Pb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=u;u=u+16|0;c=b;d=Jd(1,16)|0;f[d>>2]=16;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;if((a|0)<=0){u=b;return d|0}e=d+4|0;g=d+8|0;h=d+12|0;if(!d)Ga(1764,1775,187,1901);else{i=0;j=0;k=16;l=0;m=0}while(1){if((l|0)>(m|0)){n=m;o=j;p=l}else{q=l;do{r=q<<1;q=(r|0)>8?r:8}while((q|0)<=(m|0));f[g>>2]=q;r=Kd(j,X(k,q)|0)|0;f[h>>2]=r;n=f[e>>2]|0;o=r;p=q}k=f[d>>2]|0;_d(o+(X(k,n)|0)|0,c|0,k|0)|0;m=(f[e>>2]|0)+1|0;f[e>>2]=m;i=i+1|0;if((i|0)==(a|0))break;else{j=o;l=p}}u=b;return d|0}function Qb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0;if(!a)Ga(1764,1775,138,1793);c=f[a+4>>2]|0;if((c|0)<=0)Ga(1624,1611,327,1632);d=a+12|0;e=b+8|0;g=0;h=0;i=0;a:while(1){j=(h|0)%(c|0)|0;if((j|0)<=-1){k=8;break}l=f[d>>2]|0;m=f[a>>2]|0;n=l+(X(m,j)|0)|0;o=+p[n>>3];q=+p[b>>3];r=+p[n+8>>3];s=+p[e>>3];n=r<s;j=i;i=o<q?(n?2:1):n?3:0;b:do if((h|0)>0)switch(i-j|0){case 1:case -3:{t=g+1|0;break b;break}case 3:case -1:{t=g+-1|0;break b;break}case -2:case 2:{if((c|0)<(h|0)){k=14;break a}n=l+(X(m,h+-1|0)|0)|0;t=((r-s)*(+p[n>>3]-q)+(q-o)*(+p[n+8>>3]-s)<0.0?-2:2)+g|0;break b;break}default:{t=g;break b}}else t=g;while(0);if((h|0)>=(c|0)){k=6;break}else{g=t;h=h+1|0}}if((k|0)==6)return (t+1|0)>>>0>2|0;else if((k|0)==8)Ga(1840,1775,222,1820);else if((k|0)==14)Ga(1805,1775,223,1820);return 0}function Rb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0;d=+p[a+16>>3];e=+p[b+16>>3];f=+p[a+24>>3];g=+p[b+24>>3];h=-g;i=e*f+d*h;if(+K(+i)<1.0e-08){j=0;return j|0}k=+p[b>>3];l=+p[a>>3];m=+p[b+8>>3];n=+p[a+8>>3];o=h/i*(k-l)+e/i*(m-n);i=l+d*o;h=n+f*o;o=(l-l)*d+(n-n)*f;q=d*(+p[a+32>>3]-l)+f*(+p[a+40>>3]-n);r=d*(i-l)+f*(h-n);if(r<o&r<q){j=0;return j|0}if(r>o&r>q){j=0;return j|0}q=(k-k)*e+(m-m)*g;r=e*(+p[b+32>>3]-k)+g*(+p[b+40>>3]-m);o=(i-k)*e+(h-m)*g;if(o<q&o<r){j=0;return j|0}if(o>q&o>r){j=0;return j|0}if(!c){j=1;return j|0}p[c>>3]=i;p[c+8>>3]=h;j=1;return j|0}function Sb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0,T=0;c=u;u=u+160|0;d=c+144|0;e=c+128|0;g=c+80|0;h=c+64|0;i=c+48|0;j=c;k=a+4|0;l=a+12|0;m=d+8|0;n=g+8|0;o=g+16|0;q=e+8|0;r=g+24|0;s=g+32|0;t=g+40|0;v=(b|0)==0;w=b+4|0;x=b+12|0;y=h+8|0;z=j+8|0;A=j+16|0;B=i+8|0;C=j+24|0;D=j+32|0;E=j+40|0;if(!a)Ga(1764,1775,138,1793);else F=0;a:while(1){G=f[k>>2]|0;if((F|0)>=(G|0)){H=2;I=17;break}J=f[l>>2]|0;K=f[a>>2]|0;_d(d|0,J+(X(K,F)|0)|0,K|0)|0;F=F+1|0;M=(F|0)%(G|0)|0;if((M|0)<=-1){I=5;break}if((G|0)<=-1){I=7;break}_d(e|0,J+(X(K,M)|0)|0,K|0)|0;N=+p[d>>3];p[g>>3]=N;O=+p[m>>3];p[n>>3]=O;P=+p[e>>3];Q=P-N;N=+p[q>>3];R=N-O;O=+L(+(Q*Q+R*R));p[o>>3]=Q/O;p[r>>3]=R/O;p[s>>3]=P;p[t>>3]=N;if(v){I=10;break}else S=0;while(1){K=f[w>>2]|0;if((S|0)>=(K|0)){T=5;break}M=f[x>>2]|0;J=f[b>>2]|0;_d(h|0,M+(X(J,S)|0)|0,J|0)|0;S=S+1|0;G=(S|0)%(K|0)|0;if((G|0)<=-1){I=12;break a}if((K|0)<=-1){I=14;break a}_d(i|0,M+(X(J,G)|0)|0,J|0)|0;N=+p[h>>3];p[j>>3]=N;P=+p[y>>3];p[z>>3]=P;O=+p[i>>3];R=O-N;N=+p[B>>3];Q=N-P;P=+L(+(R*R+Q*Q));p[A>>3]=R/P;p[C>>3]=Q/P;p[D>>3]=O;p[E>>3]=N;if(Rb(g,j,0)|0){T=1;break}}if((T|0)!=5){H=T;I=17;break}}if((I|0)==5)Ga(1840,1775,205,1912);else if((I|0)==7)Ga(1805,1775,206,1912);else if((I|0)==10)Ga(1764,1775,138,1793);else if((I|0)==12)Ga(1840,1775,205,1912);else if((I|0)==14)Ga(1805,1775,206,1912);else if((I|0)==17){u=c;return (H|0)!=2|0}return 0}function Tb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=u;u=u+48|0;d=c+32|0;e=c+16|0;g=c;if(!a)Ga(1764,1775,203,1912);h=f[a+4>>2]|0;if((h|0)<=0)Ga(1805,1775,206,1912);i=f[a+12>>2]|0;j=f[a>>2]|0;_d(d|0,i|0,j|0)|0;if((h|0)==1)Ga(1805,1775,206,1912);_d(e|0,i+j|0,j|0)|0;if((h|0)>2){_d(g|0,i+(j<<1)|0,j|0)|0;p[b>>3]=(+p[d>>3]+ +p[e>>3]+ +p[g>>3])/3.0;p[b+8>>3]=(+p[d+8>>3]+ +p[e+8>>3]+ +p[g+8>>3])/3.0;u=c;return}else Ga(1805,1775,206,1912)}function Ub(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=u;u=u+16|0;d=c;if(Sb(a,b)|0){e=1;u=c;return e|0}Tb(b,d);if(!(Qb(a,d)|0)){Tb(a,d);f=(Qb(b,d)|0)!=0&1}else f=1;e=f;u=c;return e|0}function Vb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0;e=+p[a>>3];f=+p[a+8>>3];g=+p[a+16>>3];h=+p[a+24>>3];i=e+h;j=e-h;h=f+g;e=f-g;g=+T(+e,+i);f=+T(+h,+j);k=(g+f)*.5;l=(f-g)*.5;g=+N(+k);f=+O(+k);m=+N(+l);n=+O(+l);p[b>>3]=m;a=b+8|0;p[a>>3]=-n;o=b+16|0;p[o>>3]=n;q=b+24|0;p[q>>3]=m;p[d>>3]=g;r=d+8|0;p[r>>3]=-f;s=d+16|0;p[s>>3]=f;t=d+24|0;p[t>>3]=g;g=k-l;f=+N(+g);m=+O(+g);if(+K(+f)>+K(+m))u=i/f;else u=e/m;m=k+l;l=+N(+m);k=+O(+m);if(+K(+l)>+K(+k))v=j/l;else v=h/k;k=(u+v)*.5;h=(u-v)*.5;if(k<0.0){p[b>>3]=-+p[b>>3];p[o>>3]=-+p[o>>3];w=-k}else w=k;if(h<0.0){p[a>>3]=-+p[a>>3];p[q>>3]=-+p[q>>3];x=-h}else x=h;if(w>x){p[c>>3]=w;p[c+8>>3]=x;return}else{p[c>>3]=x;p[c+8>>3]=w;w=+p[b>>3];x=+p[o>>3];p[b>>3]=+p[a>>3];p[o>>3]=+p[q>>3];p[a>>3]=w;p[q>>3]=x;x=+p[d>>3];w=+p[s>>3];p[d>>3]=+p[r>>3];p[s>>3]=+p[t>>3];p[r>>3]=x;p[t>>3]=w;return}}function Wb(){var a=0,b=0,c=0,d=0;a=Jd(1,28)|0;b=rd(1659)|0;f[a+20>>2]=b;f[a+8>>2]=1;f[a+12>>2]=6;f[a+16>>2]=11;f[a>>2]=587;b=Jd(587,8)|0;c=a+4|0;f[c>>2]=b;d=b;f[d>>2]=1566737796;f[d+4>>2]=13;d=b+8|0;f[d>>2]=-1745777847;f[d+4>>2]=13;d=b+16|0;f[d>>2]=-763326194;f[d+4>>2]=13;d=b+24|0;f[d>>2]=1201577112;f[d+4>>2]=14;d=b+32|0;f[d>>2]=-1128486878;f[d+4>>2]=14;d=b+40|0;f[d>>2]=836416428;f[d+4>>2]=15;d=b+48|0;f[d>>2]=1453707397;f[d+4>>2]=0;d=b+56|0;f[d>>2]=106095060;f[d+4>>2]=1;d=b+64|0;f[d>>2]=723386029;f[d+4>>2]=2;d=b+72|0;f[d>>2]=1705837682;f[d+4>>2]=2;d=b+80|0;f[d>>2]=1340676998;f[d+4>>2]=3;d=b+88|0;f[d>>2]=-6935339;f[d+4>>2]=3;d=b+96|0;f[d>>2]=975516314;f[d+4>>2]=4;d=b+104|0;f[d>>2]=1957967967;f[d+4>>2]=4;d=b+112|0;f[d>>2]=-372096023;f[d+4>>2]=4;d=b+120|0;f[d>>2]=610355630;f[d+4>>2]=5;d=b+128|0;f[d>>2]=-1719708360;f[d+4>>2]=5;d=b+136|0;f[d>>2]=-2084869044;f[d+4>>2]=6;d=b+144|0;f[d>>2]=-1102417391;f[d+4>>2]=6;d=b+152|0;f[d>>2]=-485126422;f[d+4>>2]=7;d=b+160|0;f[d>>2]=497325231;f[d+4>>2]=8;d=b+168|0;f[d>>2]=1479776884;f[d+4>>2]=8;d=b+176|0;f[d>>2]=-850287106;f[d+4>>2]=8;d=b+184|0;f[d>>2]=-232996137;f[d+4>>2]=9;d=b+192|0;f[d>>2]=749455516;f[d+4>>2]=10;d=b+200|0;f[d>>2]=-598156821;f[d+4>>2]=10;d=f[c>>2]|0;b=d+208|0;f[b>>2]=384294832;f[b+4>>2]=11;b=d+216|0;f[b>>2]=-1945769158;f[b+4>>2]=11;b=d+224|0;f[b>>2]=636425117;f[b+4>>2]=13;b=d+232|0;f[b>>2]=1618876770;f[b+4>>2]=13;b=d+240|0;f[b>>2]=1253716086;f[b+4>>2]=14;b=d+248|0;f[b>>2]=-572087334;f[b+4>>2]=2;b=d+256|0;f[b>>2]=1027655288;f[b+4>>2]=4;b=d+264|0;f[b>>2]=1644946257;f[b+4>>2]=5;b=d+272|0;f[b>>2]=1279785573;f[b+4>>2]=6;b=d+280|0;f[b>>2]=-2032730070;f[b+4>>2]=6;b=d+288|0;f[b>>2]=-1050278417;f[b+4>>2]=6;b=d+296|0;f[b>>2]=-67826764;f[b+4>>2]=6;b=d+304|0;f[b>>2]=-798148132;f[b+4>>2]=8;b=d+312|0;f[b>>2]=-180857163;f[b+4>>2]=9;b=d+320|0;f[b>>2]=-546017847;f[b+4>>2]=10;b=d+328|0;f[b>>2]=-911178531;f[b+4>>2]=11;b=d+336|0;f[b>>2]=688564091;f[b+4>>2]=13;b=d+344|0;f[b>>2]=-1641499899;f[b+4>>2]=13;b=d+352|0;f[b>>2]=1305855060;f[b+4>>2]=14;b=d+360|0;f[b>>2]=-1389369614;f[b+4>>2]=15;b=d+368|0;f[b>>2]=-2119690982;f[b+4>>2]=1;b=d+376|0;f[b>>2]=1810115630;f[b+4>>2]=2;b=d+384|0;f[b>>2]=-519948360;f[b+4>>2]=2;b=d+392|0;f[b>>2]=97342609;f[b+4>>2]=4;b=d+400|0;f[b>>2]=1949215516;f[b+4>>2]=7;b=d+408|0;f[b>>2]=1584054832;f[b+4>>2]=8;b=d+416|0;f[b>>2]=-746009158;f[b+4>>2]=8;b=d+424|0;f[b>>2]=-128718189;f[b+4>>2]=9;b=d+432|0;f[b>>2]=1105863749;f[b+4>>2]=12;b=d+440|0;f[b>>2]=-241748588;f[b+4>>2]=12;b=d+448|0;f[b>>2]=1244963635;f[b+4>>2]=1;b=d+456|0;f[b>>2]=514642267;f[b+4>>2]=3;b=d+464|0;f[b>>2]=-946000469;f[b+4>>2]=6;b=d+472|0;f[b>>2]=1018902837;f[b+4>>2]=7;b=d+480|0;f[b>>2]=-1676321837;f[b+4>>2]=8;b=d+488|0;f[b>>2]=-693870184;f[b+4>>2]=8;b=d+496|0;f[b>>2]=288581469;f[b+4>>2]=9;b=d+504|0;f[b>>2]=1888324091;f[b+4>>2]=10;b=d+512|0;f[b>>2]=-441739899;f[b+4>>2]=10;b=d+520|0;f[b>>2]=-1789352236;f[b+4>>2]=11;b=d+528|0;f[b>>2]=-1737213262;f[b+4>>2]=11;b=d+536|0;f[b>>2]=1827432666;f[b+4>>2]=13;b=d+544|0;f[b>>2]=1349241583;f[b+4>>2]=1;b=d+552|0;f[b>>2]=-1093852806;f[b+4>>2]=4;b=d+560|0;f[b>>2]=-111401153;f[b+4>>2]=4;b=d+568|0;f[b>>2]=1488341469;f[b+4>>2]=6;b=d+576|0;f[b>>2]=1992602039;f[b+4>>2]=10;b=d+584|0;f[b>>2]=-815653034;f[b+4>>2]=14;b=d+592|0;f[b>>2]=-928683433;f[b+4>>2]=1;b=d+600|0;f[b>>2]=1653510842;f[b+4>>2]=3;b=f[c>>2]|0;d=b+608|0;f[d>>2]=923189474;f[d+4>>2]=5;d=b+616|0;f[d>>2]=-424422863;f[d+4>>2]=5;d=b+624|0;f[d>>2]=-2137195884;f[d+4>>2]=7;d=b+632|0;f[d>>2]=-1745965713;f[d+4>>2]=14;d=b+640|0;f[d>>2]=-1354735542;f[d+4>>2]=5;d=b+648|0;f[d>>2]=1227458733;f[d+4>>2]=7;d=b+656|0;f[d>>2]=-711375086;f[d+4>>2]=14;d=b+664|0;f[d>>2]=-320144915;f[d+4>>2]=5;d=b+672|0;f[d>>2]=-1050466283;f[d+4>>2]=7;d=b+680|0;f[d>>2]=436245940;f[d+4>>2]=12;d=b+688|0;f[d>>2]=-1641687765;f[d+4>>2]=14;d=b+696|0;f[d>>2]=-1502587879;f[d+4>>2]=3;d=b+704|0;f[d>>2]=-2093809361;f[d+4>>2]=10;d=b+712|0;f[d>>2]=-833157936;f[d+4>>2]=4;d=b+720|0;f[d>>2]=149293717;f[d+4>>2]=5;d=b+728|0;f[d>>2]=2001166624;f[d+4>>2]=8;d=b+736|0;f[d>>2]=-2041670387;f[d+4>>2]=10;d=b+744|0;f[d>>2]=-1537409817;f[d+4>>2]=14;d=b+752|0;f[d>>2]=-1650440216;f[d+4>>2]=1;d=b+760|0;f[d>>2]=1296914743;f[d+4>>2]=2;d=b+768|0;f[d>>2]=-528888677;f[d+4>>2]=6;d=b+776|0;f[d>>2]=-1624370729;f[d+4>>2]=9;d=b+784|0;f[d>>2]=983893033;f[d+4>>2]=3;d=b+792|0;f[d>>2]=-1711331641;f[d+4>>2]=4;d=b+800|0;f[d>>2]=253571665;f[d+4>>2]=5;d=b+808|0;f[d>>2]=1853314287;f[d+4>>2]=6;d=b+816|0;f[d>>2]=1792422862;f[d+4>>2]=9;d=b+824|0;f[d>>2]=-1520092781;f[d+4>>2]=9;d=b+832|0;f[d>>2]=-902801812;f[d+4>>2]=10;d=b+840|0;f[d>>2]=696940810;f[d+4>>2]=12;d=b+848|0;f[d>>2]=-1102793123;f[d+4>>2]=8;d=b+856|0;f[d>>2]=-963693237;f[d+4>>2]=13;d=b+864|0;f[d>>2]=1870631323;f[d+4>>2]=1;d=b+872|0;f[d>>2]=-572463066;f[d+4>>2]=4;d=b+880|0;f[d>>2]=1418509727;f[d+4>>2]=13;d=b+888|0;f[d>>2]=70897390;f[d+4>>2]=14;d=b+896|0;f[d>>2]=-659423978;f[d+4>>2]=15;d=b+904|0;f[d>>2]=1696709499;f[d+4>>2]=7;d=b+912|0;f[d>>2]=-1841866942;f[d+4>>2]=13;d=b+920|0;f[d>>2]=-1424567284;f[d+4>>2]=12;d=b+928|0;f[d>>2]=818535794;f[d+4>>2]=7;d=b+936|0;f[d>>2]=-642106942;f[d+4>>2]=10;d=b+944|0;f[d>>2]=340344711;f[d+4>>2]=11;d=b+952|0;f[d>>2]=722822431;f[d+4>>2]=5;d=b+960|0;f[d>>2]=-2059363155;f[d+4>>2]=1;d=b+968|0;f[d>>2]=2061682317;f[d+4>>2]=7;d=b+976|0;f[d>>2]=1331360949;f[d+4>>2]=9;d=b+984|0;f[d>>2]=-1589924523;f[d+4>>2]=0;d=b+992|0;f[d>>2]=514078669;f[d+4>>2]=6;d=b+1e3|0;f[d>>2]=35887586;f[d+4>>2]=10;d=f[c>>2]|0;b=d+1008|0;f[b>>2]=61957073;f[b+4>>2]=2;b=d+1016|0;f[b>>2]=-1146555378;f[b+4>>2]=7;b=d+1024|0;f[b>>2]=1539916845;f[b+4>>2]=9;b=d+1032|0;f[b>>2]=470504280;f[b+4>>2]=4;b=d+1040|0;f[b>>2]=-372847487;f[b+4>>2]=8;b=d+1048|0;f[b>>2]=-346778e3;f[b+4>>2]=0;b=d+1056|0;f[b>>2]=-633730223;f[b+4>>2]=9;b=d+1064|0;f[b>>2]=-2094372959;f[b+4>>2]=13;b=d+1072|0;f[b>>2]=-851226436;f[b+4>>2]=13;b=d+1080|0;f[b>>2]=-1442447918;f[b+4>>2]=4;b=d+1088|0;f[b>>2]=209433678;f[b+4>>2]=6;b=d+1096|0;f[b>>2]=-1286030996;f[b+4>>2]=4;b=d+1104|0;f[b>>2]=1730779973;f[b+4>>2]=0;b=d+1112|0;f[b>>2]=-1668696582;f[b+4>>2]=11;b=d+1120|0;f[b>>2]=-1755657494;f[b+4>>2]=6;b=d+1128|0;f[b>>2]=730823418;f[b+4>>2]=6;b=d+1136|0;f[b>>2]=895992791;f[b+4>>2]=3;b=d+1144|0;f[b>>2]=-1408001712;f[b+4>>2]=11;b=d+1152|0;f[b>>2]=1495778858;f[b+4>>2]=10;b=d+1160|0;f[b>>2]=-921246044;f[b+4>>2]=5;b=d+1168|0;f[b>>2]=1626126293;f[b+4>>2]=2;b=d+1176|0;f[b>>2]=-1686389350;f[b+4>>2]=2;b=d+1184|0;f[b>>2]=52453158;f[b+4>>2]=9;b=d+1192|0;f[b>>2]=-417173340;f[b+4>>2]=10;b=d+1200|0;f[b>>2]=-756264537;f[b+4>>2]=3;b=d+1208|0;f[b>>2]=782586660;f[b+4>>2]=8;b=d+1216|0;f[b>>2]=443495463;f[b+4>>2]=1;b=d+1224|0;f[b>>2]=-904116874;f[b+4>>2]=1;b=d+1232|0;f[b>>2]=1086855919;f[b+4>>2]=10;b=d+1240|0;f[b>>2]=-573778128;f[b+4>>2]=11;b=d+1248|0;f[b>>2]=-434678242;f[b+4>>2]=0;b=d+1256|0;f[b>>2]=1764850447;f[b+4>>2]=9;b=d+1264|0;f[b>>2]=2138575716;f[b+4>>2]=6;b=d+1272|0;f[b>>2]=277950358;f[b+4>>2]=6;b=d+1280|0;f[b>>2]=625606140;f[b+4>>2]=11;b=d+1288|0;f[b>>2]=1851435627;f[b+4>>2]=0;b=d+1296|0;f[b>>2]=1816613689;f[b+4>>2]=11;b=d+1304|0;f[b>>2]=1451453005;f[b+4>>2]=12;b=d+1312|0;f[b>>2]=1155748331;f[b+4>>2]=8;b=d+1320|0;f[b>>2]=1686078388;f[b+4>>2]=4;b=d+1328|0;f[b>>2]=-1870002955;f[b+4>>2]=0;b=d+1336|0;f[b>>2]=-183487287;f[b+4>>2]=7;b=d+1344|0;f[b>>2]=-296517686;f[b+4>>2]=10;b=d+1352|0;f[b>>2]=-383478598;f[b+4>>2]=5;b=d+1360|0;f[b>>2]=1146620148;f[b+4>>2]=13;b=d+1368|0;f[b>>2]=-1922517661;f[b+4>>2]=2;b=d+1376|0;f[b>>2]=1294284619;f[b+4>>2]=0;b=d+1384|0;f[b>>2]=-1140433051;f[b+4>>2]=2;b=d+1392|0;f[b>>2]=1841555980;f[b+4>>2]=9;b=d+1400|0;f[b>>2]=-1297225705;f[b+4>>2]=4;b=f[c>>2]|0;d=b+1408|0;f[d>>2]=2084558082;f[d+4>>2]=0;d=b+1416|0;f[d>>2]=1988844719;f[d+4>>2]=14;d=b+1424|0;f[d>>2]=1980092268;f[d+4>>2]=1;d=b+1432|0;f[d>>2]=-2106319132;f[d+4>>2]=1;d=b+1440|0;f[d>>2]=675678588;f[d+4>>2]=6;d=b+1448|0;f[d>>2]=727629696;f[d+4>>2]=7;d=b+1456|0;f[d>>2]=1675259411;f[d+4>>2]=2;d=b+1464|0;f[d>>2]=-1472086859;f[d+4>>2]=15;d=b+1472|0;f[d>>2]=-463565719;f[d+4>>2]=7;d=b+1480|0;f[d>>2]=1405624224;f[d+4>>2]=6;d=b+1488|0;f[d>>2]=1144741488;f[d+4>>2]=7;d=b+1496|0;f[d>>2]=-1524413699;f[d+4>>2]=0;d=b+1504|0;f[d>>2]=1196880462;f[d+4>>2]=7;d=b+1512|0;f[d>>2]=1475080234;f[d+4>>2]=1;d=b+1520|0;f[d>>2]=787769657;f[d+4>>2]=8;d=b+1528|0;f[d>>2]=222429796;f[d+4>>2]=8;d=b+1536|0;f[d>>2]=-1360183656;f[d+4>>2]=2;d=b+1544|0;f[d>>2]=169727224;f[d+4>>2]=11;d=b+1552|0;f[d>>2]=1412873747;f[d+4>>2]=11;d=b+1560|0;f[d>>2]=-1212894917;f[d+4>>2]=7;d=b+1568|0;f[d>>2]=-830417197;f[d+4>>2]=1;d=b+1576|0;f[d>>2]=1812480637;f[d+4>>2]=1;d=b+1584|0;f[d>>2]=-448503075;f[d+4>>2]=14;d=b+1592|0;f[d>>2]=-144421682;f[d+4>>2]=1;d=b+1600|0;f[d>>2]=-944386926;f[d+4>>2]=9;d=b+1608|0;f[d>>2]=915486968;f[d+4>>2]=14;d=b+1616|0;f[d>>2]=-710513007;f[d+4>>2]=5;d=b+1624|0;f[d>>2]=-2049560759;f[d+4>>2]=4;d=b+1632|0;f[d>>2]=1853988500;f[d+4>>2]=14;d=b+1640|0;f[d>>2]=523505333;f[d+4>>2]=11;d=b+1648|0;f[d>>2]=-1659269918;f[d+4>>2]=0;d=b+1656|0;f[d>>2]=1618048055;f[d+4>>2]=13;d=b+1664|0;f[d>>2]=426476908;f[d+4>>2]=0;d=b+1672|0;f[d>>2]=174158757;f[d+4>>2]=15;d=b+1680|0;f[d>>2]=739122886;f[d+4>>2]=1;d=b+1688|0;f[d>>2]=729994703;f[d+4>>2]=6;d=b+1696|0;f[d>>2]=-782974873;f[d+4>>2]=10;d=b+1704|0;f[d>>2]=-478705614;f[d+4>>2]=12;d=b+1712|0;f[d>>2]=-1331185564;f[d+4>>2]=6;d=b+1720|0;f[d>>2]=-949459308;f[d+4>>2]=4;d=b+1728|0;f[d>>2]=93320172;f[d+4>>2]=5;d=b+1736|0;f[d>>2]=1579280931;f[d+4>>2]=13;d=b+1744|0;f[d>>2]=-11897106;f[d+4>>2]=9;d=b+1752|0;f[d>>2]=-577236967;f[d+4>>2]=9;d=b+1760|0;f[d>>2]=-1160457462;f[d+4>>2]=1;d=b+1768|0;f[d>>2]=1612224209;f[d+4>>2]=12;d=b+1776|0;f[d>>2]=1933810504;f[d+4>>2]=9;d=b+1784|0;f[d>>2]=-831245912;f[d+4>>2]=1;d=b+1792|0;f[d>>2]=2055217622;f[d+4>>2]=5;d=b+1800|0;f[d>>2]=-1648716058;f[d+4>>2]=15;d=f[c>>2]|0;b=d+1808|0;f[b>>2]=976113276;f[b+4>>2]=8;b=d+1816|0;f[b>>2]=-363310208;f[b+4>>2]=8;b=d+1824|0;f[b>>2]=-155130044;f[b+4>>2]=10;b=d+1832|0;f[b>>2]=1974942635;f[b+4>>2]=8;b=d+1840|0;f[b>>2]=-1555257087;f[b+4>>2]=13;b=d+1848|0;f[b>>2]=-1416157201;f[b+4>>2]=2;b=d+1856|0;f[b>>2]=972168090;f[b+4>>2]=13;b=d+1864|0;f[b>>2]=-1593084881;f[b+4>>2]=8;b=d+1872|0;f[b>>2]=-124441158;f[b+4>>2]=5;b=d+1880|0;f[b>>2]=-1918428496;f[b+4>>2]=15;b=d+1888|0;f[b>>2]=637132694;f[b+4>>2]=12;b=d+1896|0;f[b>>2]=1871338900;f[b+4>>2]=0;b=d+1904|0;f[b>>2]=1122385434;f[b+4>>2]=14;b=d+1912|0;f[b>>2]=2017500443;f[b+4>>2]=11;b=d+1920|0;f[b>>2]=-1843225891;f[b+4>>2]=7;b=d+1928|0;f[b>>2]=-1392982955;f[b+4>>2]=5;b=d+1936|0;f[b>>2]=-64378448;f[b+4>>2]=2;b=d+1944|0;f[b>>2]=-1534712965;f[b+4>>2]=14;b=d+1952|0;f[b>>2]=211191200;f[b+4>>2]=11;b=d+1960|0;f[b>>2]=-1384871353;f[b+4>>2]=1;b=d+1968|0;f[b>>2]=994513621;f[b+4>>2]=0;b=d+1976|0;f[b>>2]=690056496;f[b+4>>2]=15;b=d+1984|0;f[b>>2]=-623485367;f[b+4>>2]=8;b=d+1992|0;f[b>>2]=-1563489827;f[b+4>>2]=0;b=d+2e3|0;f[b>>2]=-1242467130;f[b+4>>2]=0;b=d+2008|0;f[b>>2]=1425372995;f[b+4>>2]=14;b=d+2016|0;f[b>>2]=-1661645448;f[b+4>>2]=11;b=d+2024|0;f[b>>2]=-1559058294;f[b+4>>2]=4;b=d+2032|0;f[b>>2]=2074855778;f[b+4>>2]=2;b=d+2040|0;f[b>>2]=-2037812975;f[b+4>>2]=11;b=d+2048|0;f[b>>2]=804700438;f[b+4>>2]=15;b=d+2056|0;f[b>>2]=578076042;f[b+4>>2]=8;b=d+2064|0;f[b>>2]=1881362526;f[b+4>>2]=9;b=d+2072|0;f[b>>2]=759623121;f[b+4>>2]=5;b=d+2080|0;f[b>>2]=-2050886344;f[b+4>>2]=5;b=d+2088|0;f[b>>2]=-573567421;f[b+4>>2]=11;b=d+2096|0;f[b>>2]=1493923039;f[b+4>>2]=5;b=d+2104|0;f[b>>2]=692079135;f[b+4>>2]=7;b=d+2112|0;f[b>>2]=1394640222;f[b+4>>2]=6;b=d+2120|0;f[b>>2]=1028352342;f[b+4>>2]=13;b=d+2128|0;f[b>>2]=-1372106988;f[b+4>>2]=7;b=d+2136|0;f[b>>2]=-676983290;f[b+4>>2]=2;b=d+2144|0;f[b>>2]=365796190;f[b+4>>2]=3;b=d+2152|0;f[b>>2]=-747942228;f[b+4>>2]=15;b=d+2160|0;f[b>>2]=502752299;f[b+4>>2]=15;b=d+2168|0;f[b>>2]=1571976998;f[b+4>>2]=5;b=d+2176|0;f[b>>2]=-245449703;f[b+4>>2]=8;b=d+2184|0;f[b>>2]=-1829190351;f[b+4>>2]=9;b=d+2192|0;f[b>>2]=770320960;f[b+4>>2]=6;b=d+2200|0;f[b>>2]=673668267;f[b+4>>2]=9;b=f[c>>2]|0;d=b+2208|0;f[d>>2]=-1675215687;f[d+4>>2]=6;d=b+2216|0;f[d>>2]=2001521310;f[d+4>>2]=10;d=b+2224|0;f[d>>2]=1722945806;f[d+4>>2]=2;d=b+2232|0;f[d>>2]=-1320498248;f[d+4>>2]=1;d=b+2240|0;f[d>>2]=616081179;f[d+4>>2]=6;d=b+2248|0;f[d>>2]=-986103701;f[d+4>>2]=1;d=b+2256|0;f[d>>2]=141382299;f[d+4>>2]=3;d=b+2264|0;f[d>>2]=287168110;f[d+4>>2]=0;d=b+2272|0;f[d>>2]=-1932119873;f[d+4>>2]=9;d=b+2280|0;f[d>>2]=-1177419812;f[d+4>>2]=8;d=b+2288|0;f[d>>2]=724525543;f[d+4>>2]=7;d=b+2296|0;f[d>>2]=-308451541;f[d+4>>2]=9;d=b+2304|0;f[d>>2]=1826428403;f[d+4>>2]=9;d=b+2312|0;f[d>>2]=913057028;f[d+4>>2]=6;d=b+2320|0;f[d>>2]=-895617222;f[d+4>>2]=6;d=b+2328|0;f[d>>2]=107831536;f[d+4>>2]=10;d=b+2336|0;f[d>>2]=2051771101;f[d+4>>2]=14;d=b+2344|0;f[d>>2]=642140143;f[d+4>>2]=8;d=b+2352|0;f[d>>2]=-1584021631;f[d+4>>2]=10;d=b+2360|0;f[d>>2]=-1545895356;f[d+4>>2]=9;d=b+2368|0;f[d>>2]=349364074;f[d+4>>2]=0;d=b+2376|0;f[d>>2]=-1238211145;f[d+4>>2]=0;d=b+2384|0;f[d>>2]=-267329933;f[d+4>>2]=2;d=b+2392|0;f[d>>2]=2121746822;f[d+4>>2]=9;d=b+2400|0;f[d>>2]=1219492905;f[d+4>>2]=2;d=b+2408|0;f[d>>2]=-1250046703;f[d+4>>2]=15;d=b+2416|0;f[d>>2]=-1314396967;f[d+4>>2]=0;d=b+2424|0;f[d>>2]=-1079848835;f[d+4>>2]=4;d=b+2432|0;f[d>>2]=1314709398;f[d+4>>2]=5;d=b+2440|0;f[d>>2]=-1050927994;f[d+4>>2]=4;d=b+2448|0;f[d>>2]=-641330842;f[d+4>>2]=12;d=b+2456|0;f[d>>2]=-1724380374;f[d+4>>2]=4;d=b+2464|0;f[d>>2]=1076923657;f[d+4>>2]=5;d=b+2472|0;f[d>>2]=-1237326225;f[d+4>>2]=8;d=b+2480|0;f[d>>2]=-2119257250;f[d+4>>2]=12;d=b+2488|0;f[d>>2]=1876999516;f[d+4>>2]=8;d=b+2496|0;f[d>>2]=-498594774;f[d+4>>2]=12;d=b+2504|0;f[d>>2]=-1423315360;f[d+4>>2]=1;d=b+2512|0;f[d>>2]=76392981;f[d+4>>2]=8;d=b+2520|0;f[d>>2]=-1075106503;f[d+4>>2]=13;d=b+2528|0;f[d>>2]=1741260172;f[d+4>>2]=5;d=b+2536|0;f[d>>2]=-1225931332;f[d+4>>2]=2;d=b+2544|0;f[d>>2]=126864002;f[d+4>>2]=2;d=b+2552|0;f[d>>2]=-624155990;f[d+4>>2]=10;d=b+2560|0;f[d>>2]=-1840746679;f[d+4>>2]=11;d=b+2568|0;f[d>>2]=531388772;f[d+4>>2]=5;d=b+2576|0;f[d>>2]=-1846647776;f[d+4>>2]=6;d=b+2584|0;f[d>>2]=1672732969;f[d+4>>2]=15;d=b+2592|0;f[d>>2]=-1679301262;f[d+4>>2]=3;d=b+2600|0;f[d>>2]=-1563530124;f[d+4>>2]=13;d=f[c>>2]|0;b=d+2608|0;f[b>>2]=217152092;f[b+4>>2]=2;b=d+2616|0;f[b>>2]=-446719122;f[b+4>>2]=14;b=d+2624|0;f[b>>2]=-1202247898;f[b+4>>2]=15;b=d+2632|0;f[b>>2]=741205320;f[b+4>>2]=11;b=d+2640|0;f[b>>2]=-1432629614;f[b+4>>2]=12;b=d+2648|0;f[b>>2]=-384291405;f[b+4>>2]=10;b=d+2656|0;f[b>>2]=1265523665;f[b+4>>2]=7;b=d+2664|0;f[b>>2]=934433455;f[b+4>>2]=1;b=d+2672|0;f[b>>2]=526936193;f[b+4>>2]=5;b=d+2680|0;f[b>>2]=1731161090;f[b+4>>2]=13;b=d+2688|0;f[b>>2]=1410624740;f[b+4>>2]=6;b=d+2696|0;f[b>>2]=-1806972891;f[b+4>>2]=15;b=d+2704|0;f[b>>2]=-2094532599;f[b+4>>2]=14;b=d+2712|0;f[b>>2]=1785986393;f[b+4>>2]=7;b=d+2720|0;f[b>>2]=2044349620;f[b+4>>2]=15;b=d+2728|0;f[b>>2]=1459095963;f[b+4>>2]=9;b=d+2736|0;f[b>>2]=-1242405540;f[b+4>>2]=7;b=d+2744|0;f[b>>2]=112268454;f[b+4>>2]=13;b=d+2752|0;f[b>>2]=110611024;f[b+4>>2]=13;b=d+2760|0;f[b>>2]=2084112279;f[b+4>>2]=2;b=d+2768|0;f[b>>2]=-971056718;f[b+4>>2]=11;b=d+2776|0;f[b>>2]=-1053961829;f[b+4>>2]=12;b=d+2784|0;f[b>>2]=-1216246484;f[b+4>>2]=14;b=d+2792|0;f[b>>2]=-1828918054;f[b+4>>2]=0;b=d+2800|0;f[b>>2]=-1645392223;f[b+4>>2]=8;b=d+2808|0;f[b>>2]=1453374004;f[b+4>>2]=2;b=d+2816|0;f[b>>2]=1766385191;f[b+4>>2]=11;b=d+2824|0;f[b>>2]=-278196140;f[b+4>>2]=1;b=d+2832|0;f[b>>2]=1670550690;f[b+4>>2]=8;b=d+2840|0;f[b>>2]=-633896796;f[b+4>>2]=14;b=d+2848|0;f[b>>2]=-1629311203;f[b+4>>2]=3;b=d+2856|0;f[b>>2]=-765989435;f[b+4>>2]=12;b=d+2864|0;f[b>>2]=-640238558;f[b+4>>2]=2;b=d+2872|0;f[b>>2]=567522429;f[b+4>>2]=1;b=d+2880|0;f[b>>2]=2116286637;f[b+4>>2]=3;b=d+2888|0;f[b>>2]=435363062;f[b+4>>2]=1;b=d+2896|0;f[b>>2]=-914403575;f[b+4>>2]=2;b=d+2904|0;f[b>>2]=1344978912;f[b+4>>2]=13;b=d+2912|0;f[b>>2]=197380727;f[b+4>>2]=1;b=d+2920|0;f[b>>2]=1030852847;f[b+4>>2]=5;b=d+2928|0;f[b>>2]=205415078;f[b+4>>2]=9;b=d+2936|0;f[b>>2]=-370411915;f[b+4>>2]=7;b=d+2944|0;f[b>>2]=2043552721;f[b+4>>2]=9;b=d+2952|0;f[b>>2]=2131532009;f[b+4>>2]=2;b=d+2960|0;f[b>>2]=-1347113383;f[b+4>>2]=14;b=d+2968|0;f[b>>2]=-897588547;f[b+4>>2]=7;b=d+2976|0;f[b>>2]=1225566454;f[b+4>>2]=1;b=d+2984|0;f[b>>2]=305366970;f[b+4>>2]=9;b=d+2992|0;f[b>>2]=1002911880;f[b+4>>2]=11;b=d+3e3|0;f[b>>2]=-360193243;f[b+4>>2]=3;b=f[c>>2]|0;d=b+3008|0;f[d>>2]=-2004261718;f[d+4>>2]=4;d=b+3016|0;f[d>>2]=25732793;f[d+4>>2]=10;d=b+3024|0;f[d>>2]=-746338714;f[d+4>>2]=12;d=b+3032|0;f[d>>2]=2728957;f[d+4>>2]=4;d=b+3040|0;f[d>>2]=469806172;f[d+4>>2]=14;d=b+3048|0;f[d>>2]=-1636881554;f[d+4>>2]=3;d=b+3056|0;f[d>>2]=-429591006;f[d+4>>2]=13;d=b+3064|0;f[d>>2]=-1751484952;f[d+4>>2]=14;d=b+3072|0;f[d>>2]=-961230740;f[d+4>>2]=7;d=b+3080|0;f[d>>2]=-728571791;f[d+4>>2]=15;d=b+3088|0;f[d>>2]=-72134376;f[d+4>>2]=8;d=b+3096|0;f[d>>2]=189401527;f[d+4>>2]=4;d=b+3104|0;f[d>>2]=-133441830;f[d+4>>2]=10;d=b+3112|0;f[d>>2]=235611425;f[d+4>>2]=7;d=b+3120|0;f[d>>2]=-171618925;f[d+4>>2]=2;d=b+3128|0;f[d>>2]=-190768939;f[d+4>>2]=3;d=b+3136|0;f[d>>2]=-1676109895;f[d+4>>2]=0;d=b+3144|0;f[d>>2]=2037870252;f[d+4>>2]=0;d=b+3152|0;f[d>>2]=-2068837609;f[d+4>>2]=0;d=b+3160|0;f[d>>2]=-1453663986;f[d+4>>2]=3;d=b+3168|0;f[d>>2]=-1940635499;f[d+4>>2]=2;d=b+3176|0;f[d>>2]=-1656390651;f[d+4>>2]=3;d=b+3184|0;f[d>>2]=-1552344456;f[d+4>>2]=7;d=b+3192|0;f[d>>2]=-1217338834;f[d+4>>2]=11;d=b+3200|0;f[d>>2]=-1474118292;f[d+4>>2]=9;d=b+3208|0;f[d>>2]=-1974788115;f[d+4>>2]=6;d=b+3216|0;f[d>>2]=1607629627;f[d+4>>2]=10;d=b+3224|0;f[d>>2]=-1013359751;f[d+4>>2]=0;d=b+3232|0;f[d>>2]=354017265;f[d+4>>2]=13;d=b+3240|0;f[d>>2]=-403774631;f[d+4>>2]=8;d=b+3248|0;f[d>>2]=-741715791;f[d+4>>2]=12;d=b+3256|0;f[d>>2]=1941485459;f[d+4>>2]=11;d=b+3264|0;f[d>>2]=2060065859;f[d+4>>2]=5;d=b+3272|0;f[d>>2]=-1033547145;f[d+4>>2]=14;d=b+3280|0;f[d>>2]=-2052931149;f[d+4>>2]=7;d=b+3288|0;f[d>>2]=1510447194;f[d+4>>2]=7;d=b+3296|0;f[d>>2]=1258417001;f[d+4>>2]=10;d=b+3304|0;f[d>>2]=413209415;f[d+4>>2]=10;d=b+3312|0;f[d>>2]=-1309504349;f[d+4>>2]=13;d=b+3320|0;f[d>>2]=2011971109;f[d+4>>2]=8;d=b+3328|0;f[d>>2]=526598584;f[d+4>>2]=3;d=b+3336|0;f[d>>2]=909785676;f[d+4>>2]=1;d=b+3344|0;f[d>>2]=1977137594;f[d+4>>2]=0;d=b+3352|0;f[d>>2]=-1375235415;f[d+4>>2]=7;d=b+3360|0;f[d>>2]=-2086529455;f[d+4>>2]=10;d=b+3368|0;f[d>>2]=-259022923;f[d+4>>2]=7;d=b+3376|0;f[d>>2]=-791710807;f[d+4>>2]=0;d=b+3384|0;f[d>>2]=81578382;f[d+4>>2]=11;d=b+3392|0;f[d>>2]=1707585784;f[d+4>>2]=15;d=b+3400|0;f[d>>2]=1574631066;f[d+4>>2]=6;d=f[c>>2]|0;b=d+3408|0;f[b>>2]=-811891021;f[b+4>>2]=2;b=d+3416|0;f[b>>2]=1286938149;f[b+4>>2]=1;b=d+3424|0;f[b>>2]=1208122203;f[b+4>>2]=15;b=d+3432|0;f[b>>2]=-332993909;f[b+4>>2]=0;b=d+3440|0;f[b>>2]=1269814364;f[b+4>>2]=4;b=d+3448|0;f[b>>2]=315080900;f[b+4>>2]=11;b=d+3456|0;f[b>>2]=1509793154;f[b+4>>2]=9;b=d+3464|0;f[b>>2]=2009690714;f[b+4>>2]=12;b=d+3472|0;f[b>>2]=-1977428894;f[b+4>>2]=4;b=d+3480|0;f[b>>2]=965640306;f[b+4>>2]=8;b=d+3488|0;f[b>>2]=-929364530;f[b+4>>2]=14;b=d+3496|0;f[b>>2]=-1232939831;f[b+4>>2]=11;b=d+3504|0;f[b>>2]=1518785279;f[b+4>>2]=14;b=d+3512|0;f[b>>2]=1492128052;f[b+4>>2]=3;b=d+3520|0;f[b>>2]=1433263350;f[b+4>>2]=8;b=d+3528|0;f[b>>2]=1971631842;f[b+4>>2]=6;b=d+3536|0;f[b>>2]=369705887;f[b+4>>2]=1;b=d+3544|0;f[b>>2]=-2071428754;f[b+4>>2]=0;b=d+3552|0;f[b>>2]=-1357239226;f[b+4>>2]=10;b=d+3560|0;f[b>>2]=-2020042545;f[b+4>>2]=15;b=d+3568|0;f[b>>2]=-1142562057;f[b+4>>2]=8;b=d+3576|0;f[b>>2]=32432995;f[b+4>>2]=1;b=d+3584|0;f[b>>2]=-1862888585;f[b+4>>2]=6;b=d+3592|0;f[b>>2]=1540963545;f[b+4>>2]=15;b=d+3600|0;f[b>>2]=-364106762;f[b+4>>2]=12;b=d+3608|0;f[b>>2]=1426843398;f[b+4>>2]=9;b=d+3616|0;f[b>>2]=-978089376;f[b+4>>2]=2;b=d+3624|0;f[b>>2]=1912812871;f[b+4>>2]=14;b=d+3632|0;f[b>>2]=1166738985;f[b+4>>2]=4;b=d+3640|0;f[b>>2]=-388371135;f[b+4>>2]=14;b=d+3648|0;f[b>>2]=798068082;f[b+4>>2]=13;b=d+3656|0;f[b>>2]=-1916559405;f[b+4>>2]=7;b=d+3664|0;f[b>>2]=556152566;f[b+4>>2]=8;b=d+3672|0;f[b>>2]=1158312615;f[b+4>>2]=7;b=d+3680|0;f[b>>2]=1326249158;f[b+4>>2]=12;b=d+3688|0;f[b>>2]=1740430797;f[b+4>>2]=3;b=d+3696|0;f[b>>2]=481266886;f[b+4>>2]=12;b=d+3704|0;f[b>>2]=2136704317;f[b+4>>2]=10;b=d+3712|0;f[b>>2]=-717848181;f[b+4>>2]=9;b=d+3720|0;f[b>>2]=903881136;f[b+4>>2]=5;b=d+3728|0;f[b>>2]=2126017182;f[b+4>>2]=10;b=d+3736|0;f[b>>2]=581335881;f[b+4>>2]=4;b=d+3744|0;f[b>>2]=703146150;f[b+4>>2]=9;b=d+3752|0;f[b>>2]=-1903497268;f[b+4>>2]=4;b=d+3760|0;f[b>>2]=-1734919876;f[b+4>>2]=10;b=d+3768|0;f[b>>2]=-343813250;f[b+4>>2]=5;b=d+3776|0;f[b>>2]=-402487369;f[b+4>>2]=1;b=d+3784|0;f[b>>2]=1198577923;f[b+4>>2]=3;b=d+3792|0;f[b>>2]=-285710552;f[b+4>>2]=2;b=d+3800|0;f[b>>2]=-1838756682;f[b+4>>2]=5;b=f[c>>2]|0;d=b+3808|0;f[d>>2]=285981281;f[d+4>>2]=0;d=b+3816|0;f[d>>2]=-539851537;f[d+4>>2]=1;d=b+3824|0;f[d>>2]=1195613467;f[d+4>>2]=4;d=b+3832|0;f[d>>2]=-320805479;f[d+4>>2]=15;d=b+3840|0;f[d>>2]=815740675;f[d+4>>2]=9;d=b+3848|0;f[d>>2]=124047837;f[d+4>>2]=8;d=b+3856|0;f[d>>2]=1408362144;f[d+4>>2]=3;d=b+3864|0;f[d>>2]=-1044304436;f[d+4>>2]=2;d=b+3872|0;f[d>>2]=488749527;f[d+4>>2]=12;d=b+3880|0;f[d>>2]=1475233086;f[d+4>>2]=4;d=b+3888|0;f[d>>2]=1727722816;f[d+4>>2]=13;d=b+3896|0;f[d>>2]=1211229778;f[d+4>>2]=4;d=b+3904|0;f[d>>2]=-45504440;f[d+4>>2]=12;d=b+3912|0;f[d>>2]=825049395;f[d+4>>2]=9;d=b+3920|0;f[d>>2]=-258485266;f[d+4>>2]=3;d=b+3928|0;f[d>>2]=-907284614;f[d+4>>2]=8;d=b+3936|0;f[d>>2]=-1713201528;f[d+4>>2]=10;d=b+3944|0;f[d>>2]=-369446356;f[d+4>>2]=0;d=b+3952|0;f[d>>2]=-414649093;f[d+4>>2]=4;d=b+3960|0;f[d>>2]=-840023416;f[d+4>>2]=14;d=b+3968|0;f[d>>2]=-1125781040;f[d+4>>2]=10;d=b+3976|0;f[d>>2]=1123452780;f[d+4>>2]=12;d=b+3984|0;f[d>>2]=-314560864;f[d+4>>2]=7;d=b+3992|0;f[d>>2]=1547846339;f[d+4>>2]=14;d=b+4e3|0;f[d>>2]=1529622958;f[d+4>>2]=13;d=b+4008|0;f[d>>2]=-2038023194;f[d+4>>2]=2;d=b+4016|0;f[d>>2]=1615089044;f[d+4>>2]=1;d=b+4024|0;f[d>>2]=-252346226;f[d+4>>2]=5;d=b+4032|0;f[d>>2]=-472626390;f[d+4>>2]=10;d=b+4040|0;f[d>>2]=-171585271;f[d+4>>2]=9;d=b+4048|0;f[d>>2]=-1382869289;f[d+4>>2]=8;d=b+4056|0;f[d>>2]=1110155364;f[d+4>>2]=3;d=b+4064|0;f[d>>2]=-19849898;f[d+4>>2]=2;d=b+4072|0;f[d>>2]=-361873916;f[d+4>>2]=11;d=b+4080|0;f[d>>2]=1258462956;f[d+4>>2]=0;d=b+4088|0;f[d>>2]=-554863563;f[d+4>>2]=6;d=b+4096|0;f[d>>2]=1905058172;f[d+4>>2]=3;d=b+4104|0;f[d>>2]=1482159586;f[d+4>>2]=5;d=b+4112|0;f[d>>2]=-307463326;f[d+4>>2]=2;d=b+4120|0;f[d>>2]=-2049522414;f[d+4>>2]=0;d=b+4128|0;f[d>>2]=1822985743;f[d+4>>2]=13;d=b+4136|0;f[d>>2]=-1209926551;f[d+4>>2]=2;d=b+4144|0;f[d>>2]=1771920411;f[d+4>>2]=10;d=b+4152|0;f[d>>2]=95253726;f[d+4>>2]=15;d=b+4160|0;f[d>>2]=-815811219;f[d+4>>2]=4;d=b+4168|0;f[d>>2]=1918765025;f[d+4>>2]=5;d=b+4176|0;f[d>>2]=790143710;f[d+4>>2]=7;d=b+4184|0;f[d>>2]=-825940471;f[d+4>>2]=1;d=b+4192|0;f[d>>2]=-2060180420;f[d+4>>2]=4;d=b+4200|0;f[d>>2]=1379552617;f[d+4>>2]=2;d=f[c>>2]|0;b=d+4208|0;f[b>>2]=1545306321;f[b+4>>2]=3;b=d+4216|0;f[b>>2]=1299396775;f[b+4>>2]=10;b=d+4224|0;f[b>>2]=-618991598;f[b+4>>2]=0;b=d+4232|0;f[b>>2]=1638483805;f[b+4>>2]=14;b=d+4240|0;f[b>>2]=1576026001;f[b+4>>2]=0;b=d+4248|0;f[b>>2]=2061656251;f[b+4>>2]=9;b=d+4256|0;f[b>>2]=761429999;f[b+4>>2]=3;b=d+4264|0;f[b>>2]=1678734274;f[b+4>>2]=11;b=d+4272|0;f[b>>2]=1511705030;f[b+4>>2]=4;b=d+4280|0;f[b>>2]=-1574949407;f[b+4>>2]=6;b=d+4288|0;f[b>>2]=2101224946;f[b+4>>2]=5;b=d+4296|0;f[b>>2]=-1432381330;f[b+4>>2]=5;b=d+4304|0;f[b>>2]=-863658614;f[b+4>>2]=0;b=d+4312|0;f[b>>2]=1053215912;f[b+4>>2]=14;b=d+4320|0;f[b>>2]=1318445486;f[b+4>>2]=5;b=d+4328|0;f[b>>2]=1183349510;f[b+4>>2]=4;b=d+4336|0;f[b>>2]=1365717694;f[b+4>>2]=7;b=d+4344|0;f[b>>2]=-2122659595;f[b+4>>2]=3;b=d+4352|0;f[b>>2]=-496135284;f[b+4>>2]=3;b=d+4360|0;f[b>>2]=-1474575819;f[b+4>>2]=10;b=d+4368|0;f[b>>2]=-209204709;f[b+4>>2]=13;b=d+4376|0;f[b>>2]=-207375374;f[b+4>>2]=0;b=d+4384|0;f[b>>2]=1274451575;f[b+4>>2]=11;b=d+4392|0;f[b>>2]=-501716755;f[b+4>>2]=10;b=d+4400|0;f[b>>2]=505228701;f[b+4>>2]=8;b=d+4408|0;f[b>>2]=178168140;f[b+4>>2]=10;b=d+4416|0;f[b>>2]=-287139927;f[b+4>>2]=8;b=d+4424|0;f[b>>2]=1946944857;f[b+4>>2]=4;b=d+4432|0;f[b>>2]=-1961617353;f[b+4>>2]=14;b=d+4440|0;f[b>>2]=-962721219;f[b+4>>2]=10;b=d+4448|0;f[b>>2]=-310140447;f[b+4>>2]=9;b=d+4456|0;f[b>>2]=-306880821;f[b+4>>2]=5;b=d+4464|0;f[b>>2]=1933639297;f[b+4>>2]=0;b=d+4472|0;f[b>>2]=234604223;f[b+4>>2]=5;b=d+4480|0;f[b>>2]=-175943542;f[b+4>>2]=4;b=d+4488|0;f[b>>2]=-1308919620;f[b+4>>2]=12;b=d+4496|0;f[b>>2]=39644463;f[b+4>>2]=4;b=d+4504|0;f[b>>2]=-1752044564;f[b+4>>2]=3;b=d+4512|0;f[b>>2]=1055099121;f[b+4>>2]=5;b=d+4520|0;f[b>>2]=-692011741;f[b+4>>2]=7;b=d+4528|0;f[b>>2]=983130046;f[b+4>>2]=9;b=d+4536|0;f[b>>2]=-1541986082;f[b+4>>2]=8;b=d+4544|0;f[b>>2]=-26156973;f[b+4>>2]=2;b=d+4552|0;f[b>>2]=-1277475782;f[b+4>>2]=10;b=d+4560|0;f[b>>2]=911137541;f[b+4>>2]=1;b=d+4568|0;f[b>>2]=2070867670;f[b+4>>2]=4;b=d+4576|0;f[b>>2]=779202305;f[b+4>>2]=1;b=d+4584|0;f[b>>2]=804795783;f[b+4>>2]=5;b=d+4592|0;f[b>>2]=-1588109864;f[b+4>>2]=3;b=d+4600|0;f[b>>2]=-22399644;f[b+4>>2]=3;b=f[c>>2]|0;c=b+4608|0;f[c>>2]=-1393063001;f[c+4>>2]=14;c=b+4616|0;f[c>>2]=-2027186952;f[c+4>>2]=0;c=b+4624|0;f[c>>2]=-1461847646;f[c+4>>2]=13;c=b+4632|0;f[c>>2]=-1433268949;f[c+4>>2]=9;c=b+4640|0;f[c>>2]=-212800202;f[c+4>>2]=1;c=b+4648|0;f[c>>2]=-1973516769;f[c+4>>2]=1;c=b+4656|0;f[c>>2]=-1017411133;f[c+4>>2]=2;c=b+4664|0;f[c>>2]=880460938;f[c+4>>2]=3;c=b+4672|0;f[c>>2]=-230817234;f[c+4>>2]=7;c=b+4680|0;f[c>>2]=1167091963;f[c+4>>2]=2;c=b+4688|0;f[c>>2]=-2084680845;f[c+4>>2]=14;return a|0}function Xb(a){a=a|0;Id(f[a+20>>2]|0);Id(f[a+4>>2]|0);Id(a);return}function Yb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0;if((d|0)==(c|0))Ga(1668,1677,232,1700);if(!((d|0)<(b|0)&((b|0)>(c|0)&(d|c|0)>-1)))Ga(1709,1677,233,1700);h=(c|0)>0;do if((d|0)>(c|0)){i=d-c+1|0;j=+p[a+(d*48|0)>>3];k=+p[a+(d*48|0)+8>>3];l=+p[a+(d*48|0)+16>>3];m=+p[a+(d*48|0)+32>>3];n=+p[a+(d*48|0)+24>>3];o=+p[a+(d*48|0)+40>>3];if(h){q=c+-1|0;r=j-+p[a+(q*48|0)>>3];s=k-+p[a+(q*48|0)+8>>3];t=l-+p[a+(q*48|0)+16>>3];u=n-+p[a+(q*48|0)+24>>3];v=m-+p[a+(q*48|0)+32>>3];w=o-+p[a+(q*48|0)+40>>3];x=i}else{r=j;s=k;t=l;u=n;v=m;w=o;x=i}}else if(h){i=b+-1|0;q=c+-1|0;r=+p[a+(i*48|0)>>3]-+p[a+(q*48|0)>>3]+ +p[a+(d*48|0)>>3];s=+p[a+(i*48|0)+8>>3]-+p[a+(q*48|0)+8>>3]+ +p[a+(d*48|0)+8>>3];t=+p[a+(i*48|0)+16>>3]-+p[a+(q*48|0)+16>>3]+ +p[a+(d*48|0)+16>>3];u=+p[a+(i*48|0)+24>>3]-+p[a+(q*48|0)+24>>3]+ +p[a+(d*48|0)+24>>3];v=+p[a+(i*48|0)+32>>3]-+p[a+(q*48|0)+32>>3]+ +p[a+(d*48|0)+32>>3];w=+p[a+(i*48|0)+40>>3]-+p[a+(q*48|0)+40>>3]+ +p[a+(d*48|0)+40>>3];x=b+1-c+d|0;break}else Ga(1750,1677,259,1700);while(0);if((x|0)<=1)Ga(1757,1677,278,1700);o=r/w;r=s/w;s=t/w-o*o;t=v/w-r*o;v=u/w-r*r;w=+T(+(t*-2.0),+(v-s))*.5;u=+N(+w);m=+O(+w);if(e|0){p[e>>3]=o;p[e+8>>3]=r;p[e+16>>3]=u;p[e+24>>3]=m}if(f|0){r=+(x|0);p[f>>3]=v*(r*(m*m))+(s*(r*(u*u))+t*(r*(u*2.0*m)))}if(!g)return;p[g>>3]=v*(m*m)+(s*(u*u)+t*(u*2.0*m));return}function Zb(a,b){a=a|0;b=b|0;return (+p[a>>3]<+p[b>>3]?1:-1)|0}function _b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,L=0,M=0,O=0,P=0,Q=0,R=0.0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0.0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0.0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0.0,qa=0,ra=0,sa=0,ta=0,ua=0.0,va=0,wa=0,ya=0,za=0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Ha=0.0,Ia=0.0,Ja=0,Ka=0,La=0,Ma=0,Na=0.0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0;e=u;u=u+208|0;g=e+192|0;h=e+184|0;i=e+176|0;j=e+168|0;k=e+160|0;l=e+152|0;m=e+144|0;o=e+136|0;q=e+128|0;r=e+96|0;s=e+64|0;t=e+32|0;v=e;if(!b)Ga(1764,1775,138,1793);w=f[b+4>>2]|0;b=(w|0)/12|0;x=(b|0)<20?b:20;if((x|0)<2){y=0;u=e;return y|0}b=xa()|0;z=u;u=u+((1*(w<<3)|0)+15&-16)|0;A=(w|0)>0;if(A){B=w-x|0;D=0;do{Yb(c,w,(B+D|0)%(w|0)|0,(D+x|0)%(w|0)|0,0,z+(D<<3)|0,0);D=D+1|0}while((D|0)!=(w|0));D=xa()|0;x=u;u=u+((1*(w<<3)|0)+15&-16)|0;if(A){B=w+-3|0;E=0;do{F=B+E|0;p[x+(E<<3)>>3]=+p[z+(((F|0)%(w|0)|0)<<3)>>3]*.011108996346592903+0.0+ +p[z+(((F+1|0)%(w|0)|0)<<3)>>3]*.1353352814912796+ +p[z+(((F+2|0)%(w|0)|0)<<3)>>3]*.6065306663513184+ +p[z+(((w+E|0)%(w|0)|0)<<3)>>3]+ +p[z+(((F+4|0)%(w|0)|0)<<3)>>3]*.6065306663513184+ +p[z+(((F+5|0)%(w|0)|0)<<3)>>3]*.1353352814912796+ +p[z+(((F+6|0)%(w|0)|0)<<3)>>3]*.011108996346592903;E=E+1|0}while((E|0)!=(w|0));G=x;H=D}else{G=x;H=D}}else{D=xa()|0;x=u;u=u+((1*(w<<3)|0)+15&-16)|0;G=x;H=D}_d(z|0,G|0,w<<3|0)|0;Fa(H|0);H=u;u=u+((1*(w<<2)|0)+15&-16)|0;G=u;u=u+((1*(w<<3)|0)+15&-16)|0;if(A){A=w+-1|0;D=0;x=0;a:while(1){E=x;while(1){I=+p[z+(E<<3)>>3];J=E+1|0;if(I>+p[z+(((J|0)%(w|0)|0)<<3)>>3]?I>+p[z+(((A+E|0)%(w|0)|0)<<3)>>3]:0)break;if((J|0)<(w|0))E=J;else{L=D;break a}}B=D+1|0;f[H+(D<<2)>>2]=E;p[G+(D<<3)>>3]=I;if((J|0)<(w|0)){D=B;x=J}else{L=B;break}}if((L|0)>=4){J=f[a+28>>2]|0;if((L|0)>(J|0)){x=xa()|0;D=u;u=u+((1*(L<<3)|0)+15&-16)|0;_d(D|0,G|0,L<<3|0)|0;id(D,L,8,43);I=+p[D+(J<<3)>>3];J=0;D=0;while(1){if(!(+p[G+(J<<3)>>3]<=I)){f[H+(D<<2)>>2]=f[H+(J<<2)>>2];M=D+1|0}else M=D;J=J+1|0;if((J|0)==(L|0))break;else D=M}Fa(x|0);O=M}else O=L;I=+N(+(+n[a+32>>2]));L=O+-3|0;if((O|0)>3){M=O+-2|0;x=a+36|0;D=O+-1|0;J=r+16|0;G=s+16|0;A=r+24|0;z=s+24|0;B=g+4|0;F=g+8|0;P=g+12|0;Q=0;R=C;S=0;T=0;U=0;V=0;while(1){W=f[H+(Q<<2)>>2]|0;Q=Q+1|0;if((Q|0)<(M|0)){X=Q;Y=R;Z=S;_=T;$=U;aa=V;while(1){ba=f[H+(X<<2)>>2]|0;Yb(c,w,W,ba,r,h,l);ca=X;X=X+1|0;b:do if((X|0)<(D|0)?!(+p[l>>3]>+n[x>>2]):0){da=ca;ea=X;fa=Y;ga=Z;ha=_;ia=$;ja=aa;while(1){ka=da;la=ea;while(1){ma=f[H+(la<<2)>>2]|0;Yb(c,w,ba,ma,s,i,m);if(!(+p[m>>3]>+n[x>>2])?!(+K(+(+p[J>>3]*+p[G>>3]+ +p[A>>3]*+p[z>>3]))>I):0)break;na=la+1|0;if((na|0)<(D|0)){oa=la;la=na;ka=oa}else{pa=fa;qa=ga;ra=ha;sa=ia;ta=ja;break b}}oa=ka+2|0;if((oa|0)<(O|0)){na=oa;ua=fa;oa=ia;va=ja;wa=ha;ya=ga;while(1){za=f[H+(na<<2)>>2]|0;Yb(c,w,ma,za,t,j,o);do if(+p[o>>3]>+n[x>>2]){Aa=ua;Ba=oa;Ca=va;Da=wa;Ea=ya}else{Yb(c,w,za,W,v,k,q);if(+p[q>>3]>+n[x>>2]){Aa=ua;Ba=oa;Ca=va;Da=wa;Ea=ya;break}Ha=+p[h>>3]+ +p[i>>3]+ +p[j>>3]+ +p[k>>3];if(!(Ha<ua)){Aa=ua;Ba=oa;Ca=va;Da=wa;Ea=ya;break}Aa=Ha;Ba=ma;Ca=za;Da=ba;Ea=W}while(0);na=na+1|0;if((na|0)==(O|0)){Ia=Aa;Ja=Ea;Ka=Da;La=Ba;Ma=Ca;break}else{ua=Aa;oa=Ba;va=Ca;wa=Da;ya=Ea}}}else{Ia=fa;Ja=ga;Ka=ha;La=ia;Ma=ja}ea=la+1|0;if((ea|0)>=(D|0)){pa=Ia;qa=Ja;ra=Ka;sa=La;ta=Ma;break}else{da=la;fa=Ia;ga=Ja;ha=Ka;ia=La;ja=Ma}}}else{pa=Y;qa=Z;ra=_;sa=$;ta=aa}while(0);if((X|0)==(M|0)){Na=pa;Oa=qa;Pa=ra;Qa=sa;Ra=ta;break}else{Y=pa;Z=qa;_=ra;$=sa;aa=ta}}}else{Na=R;Oa=S;Pa=T;Qa=U;Ra=V}if((Q|0)==(L|0))break;else{R=Na;S=Oa;T=Pa;U=Qa;V=Ra}}f[g>>2]=Oa;f[B>>2]=Pa;f[F>>2]=Qa;f[P>>2]=Ra;if(!(Na==C)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];Sa=Na/+(w|0)<+n[a+36>>2]&1}else Sa=0}else Sa=0;Ta=Sa}else Ta=0}else Ta=0;Fa(b|0);y=Ta;u=e;return y|0}function $b(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var g=0,i=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0,J=0,M=0,N=0,O=0.0,P=0,Q=0,R=0.0,S=0.0,U=0.0,V=0,W=0.0;g=u;u=u+160|0;i=g+136|0;k=g+8|0;l=g;if(!c)Ga(1764,1775,138,1793);m=c+4|0;o=f[m>>2]|0;if((o|0)<4){q=0;u=g;return q|0}r=f[c+12>>2]|0;s=f[c>>2]|0;t=0;v=2147483647;w=0;x=2147483647;y=0;do{z=r+(X(s,y)|0)|0;A=j[z>>1]|0;t=(t|0)>(A|0)?t:A;v=(v|0)<(A|0)?v:A;A=j[z+2>>1]|0;w=(w|0)>(A|0)?w:A;x=(x|0)<(A|0)?x:A;y=y+1|0}while((y|0)<(o|0));B=+(t+v|0)*.5+.05118;C=+(w+x|0)*.5+-.028581;x=f[c+12>>2]|0;w=f[c>>2]|0;D=0.0;v=0;do{t=x+(X(w,v)|0)|0;E=+(j[t>>1]|0)-B;F=+(j[t+2>>1]|0)-C;G=+T(+F,+E);n[t+4>>2]=G;D=D+(E*+(d[t+8>>1]|0)+F*+(d[t+10>>1]|0));v=v+1|0}while((v|0)<(o|0));if(D<0.0){q=0;u=g;return q|0}v=c+12|0;ac(f[v>>2]|0,o);if((f[m>>2]|0)<=0)Ga(1805,1775,223,1820);if((o|0)<=1){f[m>>2]=1;q=0;u=g;return q|0}w=1;x=1;t=f[v>>2]|0;while(1){y=f[m>>2]|0;if((y|0)<=(x|0)){H=16;break}s=f[v>>2]|0;r=f[c>>2]|0;A=s+(X(r,x)|0)|0;z=t;t=A;if((d[A>>1]|0)==(d[z>>1]|0)?(d[A+2>>1]|0)==(d[z+2>>1]|0):0)I=w;else{if((x|0)!=(w|0)){if((w|0)<=-1){H=21;break}if((y|0)<=(w|0)){H=23;break}y=s+(X(r,w)|0)|0;f[y>>2]=f[A>>2];f[y+4>>2]=f[A+4>>2];f[y+8>>2]=f[A+8>>2]}I=w+1|0}x=x+1|0;if((x|0)>=(o|0)){H=14;break}else w=I}if((H|0)==14){f[m>>2]=I;if((I|0)<4){q=0;u=g;return q|0}m=Jd(I,48)|0;w=b+4|0;o=b+12|0;x=b+8|0;t=0;do{if((I|0)<=(t|0)){H=30;break}A=(f[v>>2]|0)+(X(f[c>>2]|0,t)|0)|0;if((t|0)>0){y=m+(t*48|0)|0;r=m+((t+-1|0)*48|0)|0;s=y+48|0;do{f[y>>2]=f[r>>2];y=y+4|0;r=r+4|0}while((y|0)<(s|0))}D=+(j[A>>1]|0)*.5+.5;C=+(j[A+2>>1]|0)*.5+.5;r=~~D;y=~~C;if(((r|0)>0?((y|0)>0?(r+1|0)<(f[b>>2]|0):0):0)?(s=y+1|0,(s|0)<(f[w>>2]|0)):0){z=f[o>>2]|0;J=f[x>>2]|0;M=(X(J,y)|0)+r|0;N=(h[z+(M+1)>>0]|0)-(h[z+(M+-1)>>0]|0)|0;M=z+((X(J,s)|0)+r)|0;s=z+((X(J,y+-1|0)|0)+r)|0;r=(h[M>>0]|0)-(h[s>>0]|0)|0;O=+L(+(+((X(r,r)|0)+(X(N,N)|0)|0)))+1.0}else O=1.0;B=D*O;N=m+(t*48|0)|0;p[N>>3]=+p[N>>3]+B;F=C*O;N=m+(t*48|0)+8|0;p[N>>3]=F+ +p[N>>3];N=m+(t*48|0)+16|0;p[N>>3]=D*B+ +p[N>>3];N=m+(t*48|0)+32|0;p[N>>3]=C*B+ +p[N>>3];N=m+(t*48|0)+24|0;p[N>>3]=C*F+ +p[N>>3];N=m+(t*48|0)+40|0;p[N>>3]=O+ +p[N>>3];t=t+1|0}while((t|0)<(I|0));if((H|0)==30)Ga(1805,1775,223,1820);do if(_b(a,c,m,i)|0){t=a+36|0;x=0;while(1){if((x|0)>=4){P=0;break}o=x;x=x+1|0;Yb(m,I,f[i+(o<<2)>>2]|0,f[i+((x&3)<<2)>>2]|0,k+(o<<5)|0,0,l);if(+p[l>>3]>+n[t>>2]){H=41;break}}if((H|0)==41){Q=0;break}do{O=+p[k+(P<<5)+24>>3];t=P;P=P+1|0;x=P&3;F=+p[k+(x<<5)+24>>3];C=+p[k+(t<<5)+16>>3];B=+p[k+(x<<5)+16>>3];D=+p[k+(t<<5)>>3];E=+p[k+(t<<5)+8>>3];G=O*B-F*C;if(+K(+G)<.001){H=45;break}R=F/G*(+p[k+(x<<5)+8>>3]-E)+B/G*(+p[k+(x<<5)>>3]-D);n[e+(t<<3)>>2]=D+O*R;n[e+(t<<3)+4>>2]=E-C*R}while((P|0)<4);if((H|0)==45){Q=0;break}R=+n[e+8>>2];C=+n[e>>2];E=R-C;O=+n[e+12>>2];D=+n[e+4>>2];G=O-D;B=+L(+(E*E+G*G));G=+n[e+16>>2];E=G-R;R=+n[e+20>>2];F=R-O;O=+L(+(E*E+F*F));F=C-G;E=D-R;S=+L(+(F*F+E*E));E=(B+O+S)*.5;F=+L(+((E-S)*((E-O)*(E*(E-B)))));B=+n[e+24>>2];E=B-G;O=+n[e+28>>2];S=O-R;U=+L(+(E*E+S*S));S=C-B;B=D-O;O=+L(+(S*S+B*B));B=G-C;G=R-D;R=+L(+(B*B+G*G));G=(U+O+R)*.5;if(!(F+0.0+ +L(+((G-R)*((G-O)*(G*(G-U)))))<64.0)){U=+n[a+32>>2];G=3.141592653589793-U;t=0;O=0.0;x=1;R=D;D=C;while(1){A=t+1|0;o=A&3;w=t+2&3;C=+n[e+(o<<3)+4>>2];F=+n[e+(o<<3)>>2];B=+T(+(R-C),+(D-F));S=B-+T(+(+n[e+(w<<3)+4>>2]-C),+(+n[e+(w<<3)>>2]-F));F=S<0.0?S+6.283185307179586:S;V=F<U|F>G?0:x;W=O+F;if((A|0)==4)break;t=A;O=W;x=V;R=+n[e+(A<<3)+4>>2];D=+n[e+(A<<3)>>2]}Q=W<6.2|W>6.4?0:V}else Q=0}else Q=0;while(0);Id(m);q=Q;u=g;return q|0}else if((H|0)==16)Ga(1805,1775,223,1820);else if((H|0)==21)Ga(1840,1775,222,1820);else if((H|0)==23)Ga(1805,1775,223,1820);return 0}function ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0.0,m=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0,H=0,I=0.0,J=0.0,K=0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0.0,R=0.0,S=0,T=0,U=0.0,V=0.0,W=0,X=0,Y=0.0,Z=0.0,_=0,$=0,aa=0.0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;c=u;u=u+16|0;d=c;if((b|0)<2){u=c;return}switch(b|0){case 2:{if(+n[a+4>>2]>+n[a+16>>2]){e=a+12|0;f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2]}u=c;return}case 3:{e=a+4|0;g=a+12|0;h=a+16|0;i=+n[h>>2];if(+n[e>>2]>i){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];j=+n[h>>2]}else j=i;if(j>+n[a+28>>2]){k=a+24|0;f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2];l=+n[h>>2]}else l=j;if(+n[e>>2]>l){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2]}u=c;return}case 4:{g=a+4|0;e=a+12|0;h=a+16|0;if(+n[g>>2]>+n[h>>2]){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2]}k=a+24|0;m=a+28|0;l=+n[m>>2];o=a+36|0;p=a+40|0;if(l>+n[p>>2]){f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];f[o>>2]=f[d>>2];f[o+4>>2]=f[d+4>>2];f[o+8>>2]=f[d+8>>2];q=+n[m>>2]}else q=l;if(+n[g>>2]>q){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[k>>2];f[a+4>>2]=f[k+4>>2];f[a+8>>2]=f[k+8>>2];f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2]}q=+n[h>>2];if(q>+n[p>>2]){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[o>>2];f[e+4>>2]=f[o+4>>2];f[e+8>>2]=f[o+8>>2];f[o>>2]=f[d>>2];f[o+4>>2]=f[d+4>>2];f[o+8>>2]=f[d+8>>2];r=+n[h>>2]}else r=q;if(r>+n[m>>2]){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[k>>2];f[e+4>>2]=f[k+4>>2];f[e+8>>2]=f[k+8>>2];f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2]}u=c;return}case 5:{k=a+4|0;e=a+12|0;m=a+16|0;if(+n[k>>2]>+n[m>>2]){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2]}h=a+36|0;o=a+40|0;p=a+48|0;g=a+52|0;if(+n[o>>2]>+n[g>>2]){f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[p>>2]=f[d>>2];f[p+4>>2]=f[d+4>>2];f[p+8>>2]=f[d+8>>2]}r=+n[m>>2];s=a+24|0;t=a+28|0;if(r>+n[t>>2]){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[s>>2];f[e+4>>2]=f[s+4>>2];f[e+8>>2]=f[s+8>>2];f[s>>2]=f[d>>2];f[s+4>>2]=f[d+4>>2];f[s+8>>2]=f[d+8>>2];v=+n[m>>2]}else v=r;r=+n[k>>2];if(r>v){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];w=+n[k>>2]}else w=r;if(w>+n[o>>2]){f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[h>>2]=f[d>>2];f[h+4>>2]=f[d+4>>2];f[h+8>>2]=f[d+8>>2]}w=+n[t>>2];if(w>+n[g>>2]){f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[s>>2]=f[p>>2];f[s+4>>2]=f[p+4>>2];f[s+8>>2]=f[p+8>>2];f[p>>2]=f[d>>2];f[p+4>>2]=f[d+4>>2];f[p+8>>2]=f[d+8>>2];x=+n[t>>2]}else x=w;if(+n[m>>2]>x){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[s>>2];f[e+4>>2]=f[s+4>>2];f[e+8>>2]=f[s+8>>2];f[s>>2]=f[d>>2];f[s+4>>2]=f[d+4>>2];f[s+8>>2]=f[d+8>>2];y=+n[t>>2]}else y=x;if(y>+n[o>>2]){f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[s>>2]=f[h>>2];f[s+4>>2]=f[h+4>>2];f[s+8>>2]=f[h+8>>2];f[h>>2]=f[d>>2];f[h+4>>2]=f[d+4>>2];f[h+8>>2]=f[d+8>>2];z=+n[t>>2]}else z=y;if(+n[m>>2]>z){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[e>>2]=f[s>>2];f[e+4>>2]=f[s+4>>2];f[e+8>>2]=f[s+8>>2];f[s>>2]=f[d>>2];f[s+4>>2]=f[d+4>>2];f[s+8>>2]=f[d+8>>2]}u=c;return}default:{d=(b|0)>1024?0:b;s=xa()|0;e=u;u=u+((1*(d*12|0)|0)+15&-16)|0;m=(d|0)==0;d=b*12|0;if(m)A=Hd(d)|0;else A=e;_d(A|0,a|0,d|0)|0;d=b>>>1;e=b-d|0;t=A+(d*12|0)|0;ac(A,d);ac(t,e);if(b>>>0>17&(e|0)>8){b=0;h=0;o=0;while(1){z=+n[A+(h*12|0)+4>>2];p=t+(b*12|0)|0;y=+n[p+4>>2];g=a+(o*12|0)|0;if(z<y){k=A+(h*12|0)|0;B=h+1|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];C=b;D=B;E=y;F=+n[A+(B*12|0)+4>>2]}else{B=b+1|0;f[g>>2]=f[p>>2];f[g+4>>2]=f[p+4>>2];f[g+8>>2]=f[p+8>>2];C=B;D=h;E=+n[t+(B*12|0)+4>>2];F=z}B=a+((o|1)*12|0)|0;if(F<E){p=A+(D*12|0)|0;g=D+1|0;f[B>>2]=f[p>>2];f[B+4>>2]=f[p+4>>2];f[B+8>>2]=f[p+8>>2];G=C;H=g;I=E;J=+n[A+(g*12|0)+4>>2]}else{g=t+(C*12|0)|0;p=C+1|0;f[B>>2]=f[g>>2];f[B+4>>2]=f[g+4>>2];f[B+8>>2]=f[g+8>>2];G=p;H=D;I=+n[t+(p*12|0)+4>>2];J=F}p=a+((o|2)*12|0)|0;if(J<I){g=A+(H*12|0)|0;B=H+1|0;f[p>>2]=f[g>>2];f[p+4>>2]=f[g+4>>2];f[p+8>>2]=f[g+8>>2];K=G;L=B;M=I;N=+n[A+(B*12|0)+4>>2]}else{B=t+(G*12|0)|0;g=G+1|0;f[p>>2]=f[B>>2];f[p+4>>2]=f[B+4>>2];f[p+8>>2]=f[B+8>>2];K=g;L=H;M=+n[t+(g*12|0)+4>>2];N=J}g=a+((o|3)*12|0)|0;if(N<M){B=A+(L*12|0)|0;p=L+1|0;f[g>>2]=f[B>>2];f[g+4>>2]=f[B+4>>2];f[g+8>>2]=f[B+8>>2];O=K;P=p;Q=M;R=+n[A+(p*12|0)+4>>2]}else{p=t+(K*12|0)|0;B=K+1|0;f[g>>2]=f[p>>2];f[g+4>>2]=f[p+4>>2];f[g+8>>2]=f[p+8>>2];O=B;P=L;Q=+n[t+(B*12|0)+4>>2];R=N}B=a+((o|4)*12|0)|0;if(R<Q){p=A+(P*12|0)|0;g=P+1|0;f[B>>2]=f[p>>2];f[B+4>>2]=f[p+4>>2];f[B+8>>2]=f[p+8>>2];S=O;T=g;U=Q;V=+n[A+(g*12|0)+4>>2]}else{g=t+(O*12|0)|0;p=O+1|0;f[B>>2]=f[g>>2];f[B+4>>2]=f[g+4>>2];f[B+8>>2]=f[g+8>>2];S=p;T=P;U=+n[t+(p*12|0)+4>>2];V=R}p=a+((o|5)*12|0)|0;if(V<U){g=A+(T*12|0)|0;B=T+1|0;f[p>>2]=f[g>>2];f[p+4>>2]=f[g+4>>2];f[p+8>>2]=f[g+8>>2];W=S;X=B;Y=U;Z=+n[A+(B*12|0)+4>>2]}else{B=t+(S*12|0)|0;g=S+1|0;f[p>>2]=f[B>>2];f[p+4>>2]=f[B+4>>2];f[p+8>>2]=f[B+8>>2];W=g;X=T;Y=+n[t+(g*12|0)+4>>2];Z=V}g=a+((o|6)*12|0)|0;if(Z<Y){B=A+(X*12|0)|0;p=X+1|0;f[g>>2]=f[B>>2];f[g+4>>2]=f[B+4>>2];f[g+8>>2]=f[B+8>>2];_=W;$=p;aa=Y;ba=+n[A+(p*12|0)+4>>2]}else{p=t+(W*12|0)|0;B=W+1|0;f[g>>2]=f[p>>2];f[g+4>>2]=f[p+4>>2];f[g+8>>2]=f[p+8>>2];_=B;$=X;aa=+n[t+(B*12|0)+4>>2];ba=Z}B=o+8|0;p=a+((o|7)*12|0)|0;if(ba<aa){g=A+($*12|0)|0;f[p>>2]=f[g>>2];f[p+4>>2]=f[g+4>>2];f[p+8>>2]=f[g+8>>2];ca=_;da=$+1|0}else{g=t+(_*12|0)|0;f[p>>2]=f[g>>2];f[p+4>>2]=f[g+4>>2];f[p+8>>2]=f[g+8>>2];ca=_+1|0;da=$}if((da+8|0)<(d|0)&(ca+8|0)<(e|0)){b=ca;h=da;o=B}else{ea=B;fa=ca;ga=da;break}}}else{ea=0;fa=0;ga=0}da=(d|0)>(ga|0);ca=(e|0)>(fa|0);a:do if(da&ca){o=ea;h=fa;b=ga;b:while(1){aa=+n[A+(b*12|0)+4>>2];ha=o;$=h;while(1){_=t+($*12|0)|0;X=ha;ha=ha+1|0;ia=a+(X*12|0)|0;if(aa<+n[_+4>>2])break;X=$+1|0;f[ia>>2]=f[_>>2];f[ia+4>>2]=f[_+4>>2];f[ia+8>>2]=f[_+8>>2];if((e|0)<=(X|0))break b;else $=X}X=A+(b*12|0)|0;_=b+1|0;f[ia>>2]=f[X>>2];f[ia+4>>2]=f[X+4>>2];f[ia+8>>2]=f[X+8>>2];X=(d|0)>(_|0);W=(e|0)>($|0);if(X&W){o=ha;h=$;b=_}else{ja=ha;ka=$;la=_;ma=W;na=X;oa=77;break a}}_d(a+(ha*12|0)|0,A+(b*12|0)|0,(d-b|0)*12|0)|0}else{ja=ea;ka=fa;la=ga;ma=ca;na=da;oa=77}while(0);do if((oa|0)==77){if(na){_d(a+(ja*12|0)|0,A+(la*12|0)|0,(d-la|0)*12|0)|0;if(!ma)break}else if(!ma)break;_d(a+(ja*12|0)|0,t+(ka*12|0)|0,(e-ka|0)*12|0)|0}while(0);if(m)Id(A);Fa(s|0);u=c;return}}}
function bc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;d=f[c>>2]|0;e=f[c+4>>2]|0;g=f[c+8>>2]|0;if((d|0)>=32768)Ga(1849,1677,1165,1859);if((e|0)>=32768)Ga(1869,1677,1166,1859);i=Hb(d,e,g)|0;if((f[i+8>>2]|0)!=(g|0))Ga(1879,1677,1169,1859);j=(d|0)/4|0;k=(e|0)/4|0;l=X(k,j)|0;m=Jd(l,1)|0;n=Jd(l,1)|0;o=(e|0)>3;if(o&(d|0)>3){p=f[c+12>>2]|0;q=0;do{r=q<<2;s=X(q,j)|0;t=X(r|3,g)|0;u=X(r,g)|0;v=X(r|1,g)|0;w=X(r|2,g)|0;r=0;do{x=r<<2;y=u+x|0;z=b[p+y>>0]|0;A=b[p+(y|1)>>0]|0;B=(A&255)<(z&255)?A:z;C=(A&255)>(z&255)?A:z;z=b[p+(y|2)>>0]|0;A=(z&255)<(B&255)?z:B;B=(z&255)>(C&255)?z:C;C=b[p+(y|3)>>0]|0;y=(C&255)<(A&255)?C:A;A=(C&255)>(B&255)?C:B;B=v+x|0;C=b[p+B>>0]|0;z=(C&255)<(y&255)?C:y;y=(C&255)>(A&255)?C:A;A=b[p+(B+1)>>0]|0;C=(A&255)<(z&255)?A:z;z=(A&255)>(y&255)?A:y;y=b[p+(B+2)>>0]|0;A=(y&255)<(C&255)?y:C;C=(y&255)>(z&255)?y:z;z=b[p+(B+3)>>0]|0;B=(z&255)<(A&255)?z:A;A=(z&255)>(C&255)?z:C;C=w+x|0;z=b[p+C>>0]|0;y=(z&255)<(B&255)?z:B;B=(z&255)>(A&255)?z:A;A=b[p+(C|1)>>0]|0;z=(A&255)<(y&255)?A:y;y=(A&255)>(B&255)?A:B;B=b[p+(C+2)>>0]|0;A=(B&255)<(z&255)?B:z;z=(B&255)>(y&255)?B:y;y=b[p+(C+3)>>0]|0;C=(y&255)<(A&255)?y:A;A=(y&255)>(z&255)?y:z;z=t+x|0;x=b[p+z>>0]|0;y=(x&255)<(C&255)?x:C;C=(x&255)>(A&255)?x:A;A=b[p+(z+1)>>0]|0;x=(A&255)<(y&255)?A:y;y=(A&255)>(C&255)?A:C;C=b[p+(z+2)>>0]|0;A=(C&255)<(x&255)?C:x;x=(C&255)>(y&255)?C:y;y=b[p+(z+3)>>0]|0;z=r+s|0;b[m+z>>0]=(y&255)>(x&255)?y:x;b[n+z>>0]=(y&255)<(A&255)?y:A;r=r+1|0}while((r|0)<(j|0));q=q+1|0}while((q|0)<(k|0))}q=Jd(l,1)|0;p=Jd(l,1)|0;if(o&(d|0)>3){l=0;do{r=X(l,j)|0;s=(l|0)>0&(l|0)<=(k|0);t=X(l+-1|0,j)|0;w=(l|0)<(k|0);l=l+1|0;v=(l|0)<(k|0);u=X(l,j)|0;A=0;while(1){if(s){y=t+A|0;if((A|0)>0&(A|0)<=(j|0)){z=y+-1|0;D=b[m+z>>0]|0;E=b[n+z>>0]|0}else{D=0;E=-1}if((A|0)<(j|0)){z=b[m+y>>0]|0;x=b[n+y>>0]|0;F=(z&255)>(D&255)?z:D;G=(x&255)<(E&255)?x:E}else{F=D;G=E}if((A+1|0)<(j|0)){x=y+1|0;y=b[m+x>>0]|0;z=b[n+x>>0]|0;H=(y&255)>(F&255)?y:F;I=(z&255)<(G&255)?z:G}else{H=F;I=G}}else{H=0;I=-1}if(w){z=r+A|0;if((A|0)>0&(A|0)<=(j|0)){y=z+-1|0;x=b[m+y>>0]|0;C=b[n+y>>0]|0;J=(x&255)>(H&255)?x:H;K=(C&255)<(I&255)?C:I}else{J=H;K=I}if((A|0)<(j|0)){C=b[m+z>>0]|0;x=b[n+z>>0]|0;L=(C&255)>(J&255)?C:J;M=(x&255)<(K&255)?x:K}else{L=J;M=K}if((A+1|0)<(j|0)){x=z+1|0;z=b[m+x>>0]|0;C=b[n+x>>0]|0;N=(z&255)>(L&255)?z:L;O=(C&255)<(M&255)?C:M}else{N=L;O=M}}else{N=H;O=I}if(v){C=u+A|0;if((A|0)>0&(A|0)<=(j|0)){z=C+-1|0;x=b[m+z>>0]|0;y=b[n+z>>0]|0;P=(x&255)>(N&255)?x:N;Q=(y&255)<(O&255)?y:O}else{P=N;Q=O}if((A|0)<(j|0)){y=b[m+C>>0]|0;x=b[n+C>>0]|0;R=(y&255)>(P&255)?y:P;S=(x&255)<(Q&255)?x:Q}else{R=P;S=Q}x=A+1|0;if((x|0)<(j|0)){y=C+1|0;C=b[m+y>>0]|0;z=b[n+y>>0]|0;T=(C&255)>(R&255)?C:R;U=(z&255)<(S&255)?z:S;V=x}else{T=R;U=S;V=x}}else{T=N;U=O;V=A+1|0}x=A+r|0;b[q+x>>0]=T;b[p+x>>0]=U;if((V|0)<(j|0))A=V;else break}}while(v)}Id(m);Id(n);if(o){o=a+40|0;n=i+12|0;m=c+12|0;if((d|0)>3){V=0;do{U=X(V,j)|0;T=V<<2;O=X(T,g)|0;N=X(T|1,g)|0;S=X(T|2,g)|0;R=X(T|3,g)|0;Q=X(T,g)|0;P=X(T|1,g)|0;I=X(T|2,g)|0;H=X(T|3,g)|0;T=0;do{M=T+U|0;L=h[p+M>>0]|0;K=(h[q+M>>0]|0)-L|0;if((K|0)<(f[o>>2]|0)){M=T<<2;J=O+M|0;b[(f[n>>2]|0)+J>>0]=127;b[(f[n>>2]|0)+(J|1)>>0]=127;b[(f[n>>2]|0)+(J|2)>>0]=127;b[(f[n>>2]|0)+(J|3)>>0]=127;J=N+M|0;b[(f[n>>2]|0)+J>>0]=127;b[(f[n>>2]|0)+(J+1)>>0]=127;b[(f[n>>2]|0)+(J+2)>>0]=127;b[(f[n>>2]|0)+(J+3)>>0]=127;J=S+M|0;b[(f[n>>2]|0)+J>>0]=127;b[(f[n>>2]|0)+(J|1)>>0]=127;b[(f[n>>2]|0)+(J+2)>>0]=127;b[(f[n>>2]|0)+(J+3)>>0]=127;J=R+M|0;b[(f[n>>2]|0)+J>>0]=127;b[(f[n>>2]|0)+(J+1)>>0]=127;b[(f[n>>2]|0)+(J+2)>>0]=127;b[(f[n>>2]|0)+(J+3)>>0]=127}else{J=T<<2;M=((K|0)/2|0)+L&255;L=Q+J|0;b[(f[n>>2]|0)+L>>0]=((h[(f[m>>2]|0)+L>>0]|0)>>>0>M>>>0)<<31>>31;K=L|1;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=L|2;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=L|3;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=P+J|0;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;L=K+1|0;b[(f[n>>2]|0)+L>>0]=((h[(f[m>>2]|0)+L>>0]|0)>>>0>M>>>0)<<31>>31;L=K+2|0;b[(f[n>>2]|0)+L>>0]=((h[(f[m>>2]|0)+L>>0]|0)>>>0>M>>>0)<<31>>31;L=K+3|0;b[(f[n>>2]|0)+L>>0]=((h[(f[m>>2]|0)+L>>0]|0)>>>0>M>>>0)<<31>>31;L=I+J|0;b[(f[n>>2]|0)+L>>0]=((h[(f[m>>2]|0)+L>>0]|0)>>>0>M>>>0)<<31>>31;K=L|1;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=L+2|0;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=L+3|0;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;K=H+J|0;b[(f[n>>2]|0)+K>>0]=((h[(f[m>>2]|0)+K>>0]|0)>>>0>M>>>0)<<31>>31;J=K+1|0;b[(f[n>>2]|0)+J>>0]=((h[(f[m>>2]|0)+J>>0]|0)>>>0>M>>>0)<<31>>31;J=K+2|0;b[(f[n>>2]|0)+J>>0]=((h[(f[m>>2]|0)+J>>0]|0)>>>0>M>>>0)<<31>>31;J=K+3|0;b[(f[n>>2]|0)+J>>0]=((h[(f[m>>2]|0)+J>>0]|0)>>>0>M>>>0)<<31>>31}T=T+1|0}while((T|0)<(j|0));V=V+1|0}while((V|0)<(k|0));W=28}else W=29}else W=28;if((W|0)==28?(e|0)>0:0)W=29;if((W|0)==29){W=k<<2;V=j<<2;m=k+-1|0;n=j+-1|0;o=c+12|0;c=i+12|0;T=0;do{H=(T|0)<(W|0)?V:0;I=(T|0)/4|0;if((H|0)<(d|0)){P=X((I|0)<(k|0)?I:m,j)|0;I=X(T,g)|0;Q=H;do{H=(Q|0)/4|0;R=((H|0)<(j|0)?H:n)+P|0;H=h[p+R>>0]|0;S=Q+I|0;b[(f[c>>2]|0)+S>>0]=((h[(f[o>>2]|0)+S>>0]|0|0)>((((h[q+R>>0]|0)-H|0)/2|0)+H|0))<<31>>31;Q=Q+1|0}while((Q|0)!=(d|0))}T=T+1|0}while((T|0)!=(e|0))}Id(p);Id(q);if(!(f[a+44>>2]|0))return i|0;a=Gb(d,e)|0;q=(e|0)>2;if(q?(p=i+12|0,T=a+12|0,(d|0)>2):0){o=1;c=2;while(1){n=X(o,g)|0;j=X(o+1|0,g)|0;m=X(o+-1|0,g)|0;k=1;V=2;while(1){W=f[p>>2]|0;Q=m+k|0;I=b[W+(Q+-1)>>0]|0;P=b[W+Q>>0]|0;H=(P&255)>(I&255)?P:I;I=b[W+(Q+1)>>0]|0;Q=(I&255)>(H&255)?I:H;H=n+k|0;I=b[W+(H+-1)>>0]|0;P=(I&255)>(Q&255)?I:Q;Q=b[W+H>>0]|0;I=(Q&255)>(P&255)?Q:P;P=b[W+(H+1)>>0]|0;Q=(P&255)>(I&255)?P:I;I=j+k|0;P=b[W+(I+-1)>>0]|0;R=(P&255)>(Q&255)?P:Q;Q=b[W+I>>0]|0;P=(Q&255)>(R&255)?Q:R;R=b[W+(I+1)>>0]|0;b[(f[T>>2]|0)+H>>0]=(R&255)>(P&255)?R:P;P=V+1|0;if((P|0)==(d|0))break;else{R=V;V=P;k=R}}k=c+1|0;if((k|0)==(e|0))break;else{V=c;c=k;o=V}}if(q?(q=a+12|0,o=i+12|0,(d|0)>2):0){c=1;T=2;while(1){p=X(c,g)|0;V=X(c+1|0,g)|0;k=X(c+-1|0,g)|0;j=1;n=2;while(1){m=f[q>>2]|0;R=k+j|0;P=b[m+(R+-1)>>0]|0;H=b[m+R>>0]|0;I=(H&255)<(P&255)?H:P;P=b[m+(R+1)>>0]|0;R=(P&255)<(I&255)?P:I;I=p+j|0;P=b[m+(I+-1)>>0]|0;H=(P&255)<(R&255)?P:R;R=b[m+I>>0]|0;P=(R&255)<(H&255)?R:H;H=b[m+(I+1)>>0]|0;R=(H&255)<(P&255)?H:P;P=V+j|0;H=b[m+(P+-1)>>0]|0;W=(H&255)<(R&255)?H:R;R=b[m+P>>0]|0;H=(R&255)<(W&255)?R:W;W=b[m+(P+1)>>0]|0;b[(f[o>>2]|0)+I>>0]=(W&255)<(H&255)?W:H;H=n+1|0;if((H|0)==(d|0))break;else{W=n;n=H;j=W}}j=T+1|0;if((j|0)==(e|0))break;else{n=T;T=j;c=n}}}}Jb(a);return i|0}function cc(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0;e=u;u=u+16|0;g=e;i=f[c>>2]|0;j=f[c+4>>2]|0;k=bc(a,c)|0;l=f[k+8>>2]|0;m=X(j,i)|0;o=Jd(1,8)|0;f[o>>2]=m;p=Hd((m<<3)+8|0)|0;q=o+4|0;f[q>>2]=p;r=0;while(1){f[p+(r<<3)+4>>2]=1;f[p+(r<<3)>>2]=r;if((r|0)==(m|0))break;else r=r+1|0}r=f[a>>2]|0;m=j+-1|0;if((r|0)<2){if((j|0)>1){p=0;do{dc(o,k,i,l,p);p=p+1|0}while((p|0)!=(m|0))}}else{p=(m|0)/(r*10|0)|0;r=p+1|0;s=xa()|0;t=u;u=u+((1*((((m|0)/(r|0)|0)+1|0)*28|0)|0)+15&-16)|0;v=a+64|0;if((j|0)>1){w=0;x=0;while(1){y=t+(w*28|0)|0;f[y>>2]=x;z=x+p|0;x=x+r|0;f[t+(w*28|0)+4>>2]=(m|0)<(z|0)?m:z;f[t+(w*28|0)+12>>2]=j;f[t+(w*28|0)+8>>2]=i;f[t+(w*28|0)+16>>2]=l;f[t+(w*28|0)+20>>2]=o;f[t+(w*28|0)+24>>2]=k;nb(f[v>>2]|0,43,y);A=w+1|0;if((x|0)>=(m|0))break;else w=A}ob(f[v>>2]|0);if((w|0)>0){w=0;x=1;while(1){dc(o,k,i,l,f[t+(w*28|0)+4>>2]|0);r=x+1|0;if((r|0)==(A|0))break;else{p=x;x=r;w=p}}}}else ob(f[v>>2]|0);Fa(s|0)}s=X(i<<1,j)|0;v=s+-1|0;w=Jd(v,4)|0;a:do if((m|0)>1){x=i+-1|0;A=(x|0)>1;t=k+12|0;p=g+2|0;r=g+4|0;y=g+8|0;z=g+10|0;B=g+2|0;C=g+4|0;D=g+8|0;E=g+10|0;F=g+2|0;G=g+4|0;H=g+8|0;J=g+10|0;K=i+1|0;L=g+2|0;M=g+4|0;N=g+8|0;O=g+10|0;P=1;b:while(1){if(A){Q=X(P,l)|0;R=X(P,i)|0;S=P<<1;T=S&65535;U=Q+l|0;V=R+i|0;W=(S|1)&65535;S=x+R|0;Y=K+R|0;Z=1;do{_=f[t>>2]|0;$=Z+Q|0;aa=b[_+$>>0]|0;ba=aa&255;if(aa<<24>>24!=127){aa=Z+R|0;ca=f[q>>2]|0;da=aa;while(1){ea=f[ca+(da<<3)>>2]|0;if((ea|0)==(da|0))break;else da=ea}ea=ca+(aa<<3)|0;fa=f[ea>>2]|0;if((fa|0)!=(da|0)){ga=ea;ea=fa;do{f[ga>>2]=da;ga=ca+(ea<<3)|0;ea=f[ga>>2]|0}while((ea|0)!=(da|0))}ea=h[_+($+1)>>0]|0;if((ea+ba|0)==255){ga=aa+1|0;fa=ga;while(1){ha=f[ca+(fa<<3)>>2]|0;if((ha|0)==(fa|0))break;else fa=ha}aa=ca+(ga<<3)|0;$=f[aa>>2]|0;if(($|0)!=(fa|0)){ha=aa;aa=$;do{f[ha>>2]=fa;ha=ca+(aa<<3)|0;aa=f[ha>>2]|0}while((aa|0)!=(fa|0))}aa=da>>>0>fa>>>0?da:fa;ha=da>>>0<fa>>>0?da:fa;Xd(ha|0,aa|0,-1640531535,0)|0;ca=w+(((I>>>0)%(v>>>0)|0)<<2)|0;ga=f[ca>>2]|0;$=ga;c:do if(!ga)ia=34;else{ja=ga;while(1){ka=ja;if((f[ka>>2]|0)==(ha|0)?(f[ka+4>>2]|0)==(aa|0):0){la=ja;break c}ja=f[ja+12>>2]|0;if(!ja){ia=34;break}}}while(0);if((ia|0)==34){ia=0;ga=Jd(1,16)|0;fa=ga;f[fa>>2]=ha;f[fa+4>>2]=aa;fa=Jd(1,16)|0;f[fa>>2]=12;f[ga+8>>2]=fa;f[ga+12>>2]=$;f[ca>>2]=ga;la=ga}d[g>>1]=Z<<1|1;d[p>>1]=T;n[r>>2]=0.0;d[y>>1]=ea-ba;d[z>>1]=0;ga=f[la+8>>2]|0;if(!ga){ia=36;break b}fa=ga+4|0;ja=f[fa>>2]|0;ka=ga+8|0;ma=f[ka>>2]|0;if((ma|0)>(ja|0)){na=ga;oa=ja;pa=f[ga+12>>2]|0}else{qa=ma;do{ma=qa<<1;qa=(ma|0)>8?ma:8}while((qa|0)<=(ja|0));f[ka>>2]=qa;ja=ga+12|0;ea=Kd(f[ja>>2]|0,X(f[ga>>2]|0,qa)|0)|0;f[ja>>2]=ea;na=ga;oa=f[fa>>2]|0;pa=ea}ea=f[na>>2]|0;_d(pa+(X(ea,oa)|0)|0,g|0,ea|0)|0;f[fa>>2]=(f[fa>>2]|0)+1;ra=f[t>>2]|0}else ra=_;ea=U+Z|0;ja=h[ra+ea>>0]|0;if((ja+ba|0)==255){ca=V+Z|0;$=f[q>>2]|0;aa=ca;while(1){ha=f[$+(aa<<3)>>2]|0;if((ha|0)==(aa|0))break;else aa=ha}_=$+(ca<<3)|0;fa=f[_>>2]|0;if((fa|0)!=(aa|0)){ga=_;_=fa;do{f[ga>>2]=aa;ga=$+(_<<3)|0;_=f[ga>>2]|0}while((_|0)!=(aa|0))}_=da>>>0>aa>>>0?da:aa;ga=da>>>0<aa>>>0?da:aa;Xd(ga|0,_|0,-1640531535,0)|0;$=w+(((I>>>0)%(v>>>0)|0)<<2)|0;ca=f[$>>2]|0;fa=ca;d:do if(!ca)ia=50;else{qa=ca;while(1){ka=qa;if((f[ka>>2]|0)==(ga|0)?(f[ka+4>>2]|0)==(_|0):0){sa=qa;break d}qa=f[qa+12>>2]|0;if(!qa){ia=50;break}}}while(0);if((ia|0)==50){ia=0;ca=Jd(1,16)|0;aa=ca;f[aa>>2]=ga;f[aa+4>>2]=_;aa=Jd(1,16)|0;f[aa>>2]=12;f[ca+8>>2]=aa;f[ca+12>>2]=fa;f[$>>2]=ca;sa=ca}d[g>>1]=Z<<1;d[B>>1]=W;n[C>>2]=0.0;d[D>>1]=0;d[E>>1]=ja-ba;ca=f[sa+8>>2]|0;if(!ca){ia=52;break b}aa=ca+4|0;qa=f[aa>>2]|0;ka=ca+8|0;ha=f[ka>>2]|0;if((ha|0)>(qa|0)){ta=ca;ua=qa;va=f[ca+12>>2]|0}else{ma=ha;do{ha=ma<<1;ma=(ha|0)>8?ha:8}while((ma|0)<=(qa|0));f[ka>>2]=ma;qa=ca+12|0;ja=Kd(f[qa>>2]|0,X(f[ca>>2]|0,ma)|0)|0;f[qa>>2]=ja;ta=ca;ua=f[aa>>2]|0;va=ja}ja=f[ta>>2]|0;_d(va+(X(ja,ua)|0)|0,g|0,ja|0)|0;f[aa>>2]=(f[aa>>2]|0)+1;wa=f[t>>2]|0}else wa=ra;ja=h[wa+(ea+-1)>>0]|0;if((ja+ba|0)==255){qa=S+Z|0;$=f[q>>2]|0;fa=qa;while(1){_=f[$+(fa<<3)>>2]|0;if((_|0)==(fa|0))break;else fa=_}aa=$+(qa<<3)|0;ca=f[aa>>2]|0;if((ca|0)!=(fa|0)){ma=aa;aa=ca;do{f[ma>>2]=fa;ma=$+(aa<<3)|0;aa=f[ma>>2]|0}while((aa|0)!=(fa|0))}aa=da>>>0>fa>>>0?da:fa;ma=da>>>0<fa>>>0?da:fa;Xd(ma|0,aa|0,-1640531535,0)|0;$=w+(((I>>>0)%(v>>>0)|0)<<2)|0;qa=f[$>>2]|0;ca=qa;e:do if(!qa)ia=66;else{ka=qa;while(1){_=ka;if((f[_>>2]|0)==(ma|0)?(f[_+4>>2]|0)==(aa|0):0){ya=ka;break e}ka=f[ka+12>>2]|0;if(!ka){ia=66;break}}}while(0);if((ia|0)==66){ia=0;qa=Jd(1,16)|0;fa=qa;f[fa>>2]=ma;f[fa+4>>2]=aa;fa=Jd(1,16)|0;f[fa>>2]=12;f[qa+8>>2]=fa;f[qa+12>>2]=ca;f[$>>2]=qa;ya=qa}d[g>>1]=(Z<<1)+65535;d[F>>1]=W;n[G>>2]=0.0;qa=ja-ba|0;d[H>>1]=0-qa;d[J>>1]=qa;qa=f[ya+8>>2]|0;if(!qa){ia=68;break b}fa=qa+4|0;ka=f[fa>>2]|0;_=qa+8|0;ga=f[_>>2]|0;if((ga|0)>(ka|0)){za=qa;Aa=ka;Ba=f[qa+12>>2]|0}else{ha=ga;do{ga=ha<<1;ha=(ga|0)>8?ga:8}while((ha|0)<=(ka|0));f[_>>2]=ha;ka=qa+12|0;ja=Kd(f[ka>>2]|0,X(f[qa>>2]|0,ha)|0)|0;f[ka>>2]=ja;za=qa;Aa=f[fa>>2]|0;Ba=ja}ja=f[za>>2]|0;_d(Ba+(X(ja,Aa)|0)|0,g|0,ja|0)|0;f[fa>>2]=(f[fa>>2]|0)+1;Ca=f[t>>2]|0}else Ca=wa;ja=h[Ca+(ea+1)>>0]|0;if((ja+ba|0)==255){ka=Y+Z|0;$=f[q>>2]|0;ca=ka;while(1){aa=f[$+(ca<<3)>>2]|0;if((aa|0)==(ca|0))break;else ca=aa}ea=$+(ka<<3)|0;fa=f[ea>>2]|0;if((fa|0)!=(ca|0)){qa=ea;ea=fa;do{f[qa>>2]=ca;qa=$+(ea<<3)|0;ea=f[qa>>2]|0}while((ea|0)!=(ca|0))}ea=da>>>0>ca>>>0?da:ca;qa=da>>>0<ca>>>0?da:ca;Xd(qa|0,ea|0,-1640531535,0)|0;$=w+(((I>>>0)%(v>>>0)|0)<<2)|0;ka=f[$>>2]|0;fa=ka;f:do if(!ka)ia=82;else{ha=ka;while(1){_=ha;if((f[_>>2]|0)==(qa|0)?(f[_+4>>2]|0)==(ea|0):0){Da=ha;break f}ha=f[ha+12>>2]|0;if(!ha){ia=82;break}}}while(0);if((ia|0)==82){ia=0;ka=Jd(1,16)|0;ca=ka;f[ca>>2]=qa;f[ca+4>>2]=ea;ca=Jd(1,16)|0;f[ca>>2]=12;f[ka+8>>2]=ca;f[ka+12>>2]=fa;f[$>>2]=ka;Da=ka}d[g>>1]=Z<<1|1;d[L>>1]=W;n[M>>2]=0.0;ka=ja-ba&65535;d[N>>1]=ka;d[O>>1]=ka;ka=f[Da+8>>2]|0;if(!ka){ia=84;break b}ca=ka+4|0;da=f[ca>>2]|0;ha=ka+8|0;_=f[ha>>2]|0;if((_|0)>(da|0)){Ea=ka;Ha=da;Ia=f[ka+12>>2]|0}else{aa=_;do{_=aa<<1;aa=(_|0)>8?_:8}while((aa|0)<=(da|0));f[ha>>2]=aa;da=ka+12|0;ba=Kd(f[da>>2]|0,X(f[ka>>2]|0,aa)|0)|0;f[da>>2]=ba;Ea=ka;Ha=f[ca>>2]|0;Ia=ba}ba=f[Ea>>2]|0;_d(Ia+(X(ba,Ha)|0)|0,g|0,ba|0)|0;f[ca>>2]=(f[ca>>2]|0)+1}}Z=Z+1|0}while((Z|0)<(x|0))}P=P+1|0;if((P|0)>=(m|0))break a}if((ia|0)==36)Ga(1764,1775,187,1901);else if((ia|0)==52)Ga(1764,1775,187,1901);else if((ia|0)==68)Ga(1764,1775,187,1901);else if((ia|0)==84)Ga(1764,1775,187,1901)}while(0);Jb(k);k=Jd(1,16)|0;f[k>>2]=4;ia=(s|0)>1;if(ia){s=k+4|0;m=k+8|0;Ha=k+12|0;g:do if(!k){Ia=0;while(1){if(f[w+(Ia<<2)>>2]|0)break;Ia=Ia+1|0;if((Ia|0)>=(v|0))break g}Ga(1764,1775,187,1901)}else{Ia=0;Ea=0;while(1){Da=f[w+(Ia<<2)>>2]|0;if(!Da)Ja=Ea;else{Ca=Da;Da=Ea;while(1){wa=Ca+8|0;Aa=f[m>>2]|0;if((Aa|0)>(Da|0)){Ka=Da;La=f[Ha>>2]|0}else{Ba=Aa;do{Aa=Ba<<1;Ba=(Aa|0)>8?Aa:8}while((Ba|0)<=(Da|0));f[m>>2]=Ba;ca=Kd(f[Ha>>2]|0,X(f[k>>2]|0,Ba)|0)|0;f[Ha>>2]=ca;Ka=f[s>>2]|0;La=ca}ca=f[k>>2]|0;_d(La+(X(ca,Ka)|0)|0,wa|0,ca|0)|0;ca=(f[s>>2]|0)+1|0;f[s>>2]=ca;Ca=f[Ca+12>>2]|0;if(!Ca){Ja=ca;break}else Da=ca}}Ia=Ia+1|0;if((Ia|0)==(v|0))break;else Ea=Ja}}while(0);if(ia){ia=0;do{Ja=f[w+(ia<<2)>>2]|0;if(Ja|0){s=Ja;do{Ja=s;s=f[s+12>>2]|0;Id(Ja)}while((s|0)!=0)}ia=ia+1|0}while((ia|0)!=(v|0))}}Id(w);w=Jd(1,16)|0;f[w>>2]=40;if(!k)Ga(1764,1775,138,1793);v=k+4|0;ia=f[v>>2]|0;s=((ia|0)/((f[a>>2]|0)*10|0)|0)+1|0;Ja=u;u=u+((1*(((ia|0)/(s|0)|0)+1<<5)|0)+15&-16)|0;Ka=a+64|0;if((ia|0)>0){La=0;Ha=0;while(1){m=Ja+(Ha<<5)|0;f[Ja+(Ha<<5)+16>>2]=a;f[Ja+(Ha<<5)+4>>2]=La;La=La+s|0;f[Ja+(Ha<<5)+8>>2]=(ia|0)<(La|0)?ia:La;f[Ja+(Ha<<5)+24>>2]=j;f[Ja+(Ha<<5)+20>>2]=i;f[Ja+(Ha<<5)+12>>2]=w;f[m>>2]=k;f[Ja+(Ha<<5)+28>>2]=c;nb(f[Ka>>2]|0,44,m);if((La|0)>=(ia|0))break;else Ha=Ha+1|0}}ob(f[Ka>>2]|0);Id(f[q>>2]|0);Id(o);o=f[v>>2]|0;h:do if((o|0)>0){q=k+12|0;Ka=0;Ha=o;while(1){if((Ha|0)<=(Ka|0))break;ia=f[k>>2]|0;_d(g|0,(f[q>>2]|0)+(X(ia,Ka)|0)|0,ia|0)|0;ia=f[g>>2]|0;if(!ia)Ma=Ha;else{La=f[ia+12>>2]|0;if(La|0)Id(La);Id(ia);Ma=f[v>>2]|0}Ka=Ka+1|0;if((Ka|0)>=(Ma|0)){Na=q;break h}else Ha=Ma}Ga(1805,1775,206,1912)}else Na=k+12|0;while(0);Ma=f[Na>>2]|0;if(!Ma){Id(k);u=e;return w|0}Id(Ma);Id(k);u=e;return w|0}function dc(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((g+1|0)>=(f[c+4>>2]|0))Ga(1923,1677,1095,1940);h=d+-1|0;if((h|0)<=1)return;i=X(g,e)|0;j=X(g,d)|0;g=a+4|0;a=i+e|0;e=j+d|0;k=h+j|0;l=d+1+j|0;d=f[c+12>>2]|0;c=1;do{m=c+i|0;n=b[d+m>>0]|0;if(n<<24>>24!=127){if((b[d+(m+1)>>0]|0)==n<<24>>24){m=c+j|0;o=f[g>>2]|0;p=m;while(1){q=f[o+(p<<3)>>2]|0;if((q|0)==(p|0))break;else p=q}q=m+1|0;r=o+(m<<3)|0;s=f[r>>2]|0;if((s|0)==(p|0))t=q;else{u=r;r=s;do{f[u>>2]=p;u=o+(r<<3)|0;r=f[u>>2]|0}while((r|0)!=(p|0));t=q}while(1){r=f[o+(t<<3)>>2]|0;if((r|0)==(t|0))break;else t=r}r=o+(q<<3)|0;u=f[r>>2]|0;if((u|0)!=(t|0)){m=r;r=u;do{f[m>>2]=t;m=o+(r<<3)|0;r=f[m>>2]|0}while((r|0)!=(t|0))}if((p|0)!=(t|0)){r=f[o+(p<<3)+4>>2]|0;m=f[o+(t<<3)+4>>2]|0;q=r>>>0>m>>>0;u=q?p:t;f[o+((q?t:p)<<3)>>2]=u;f[o+(u<<3)+4>>2]=m+r}}r=a+c|0;if((b[d+r>>0]|0)==n<<24>>24){m=c+j|0;u=f[g>>2]|0;q=m;while(1){s=f[u+(q<<3)>>2]|0;if((s|0)==(q|0))break;else q=s}o=e+c|0;p=u+(m<<3)|0;s=f[p>>2]|0;if((s|0)==(q|0))v=o;else{w=p;p=s;do{f[w>>2]=q;w=u+(p<<3)|0;p=f[w>>2]|0}while((p|0)!=(q|0));v=o}while(1){p=f[u+(v<<3)>>2]|0;if((p|0)==(v|0))break;else v=p}p=u+(o<<3)|0;w=f[p>>2]|0;if((w|0)!=(v|0)){m=p;p=w;do{f[m>>2]=v;m=u+(p<<3)|0;p=f[m>>2]|0}while((p|0)!=(v|0))}if((q|0)!=(v|0)){p=f[u+(q<<3)+4>>2]|0;m=f[u+(v<<3)+4>>2]|0;o=p>>>0>m>>>0;w=o?q:v;f[u+((o?v:q)<<3)>>2]=w;f[u+(w<<3)+4>>2]=m+p}}if(n<<24>>24==-1){if((b[d+(r+-1)>>0]|0)==-1){p=c+j|0;m=f[g>>2]|0;w=p;while(1){o=f[m+(w<<3)>>2]|0;if((o|0)==(w|0))break;else w=o}n=k+c|0;u=m+(p<<3)|0;q=f[u>>2]|0;if((q|0)==(w|0))x=n;else{o=u;u=q;do{f[o>>2]=w;o=m+(u<<3)|0;u=f[o>>2]|0}while((u|0)!=(w|0));x=n}while(1){u=f[m+(x<<3)>>2]|0;if((u|0)==(x|0))break;else x=u}u=m+(n<<3)|0;o=f[u>>2]|0;if((o|0)!=(x|0)){p=u;u=o;do{f[p>>2]=x;p=m+(u<<3)|0;u=f[p>>2]|0}while((u|0)!=(x|0))}if((w|0)!=(x|0)){u=f[m+(w<<3)+4>>2]|0;p=f[m+(x<<3)+4>>2]|0;n=u>>>0>p>>>0;o=n?w:x;f[m+((n?x:w)<<3)>>2]=o;f[m+(o<<3)+4>>2]=p+u}}if((b[d+(r+1)>>0]|0)==-1){u=c+j|0;p=f[g>>2]|0;o=u;while(1){n=f[p+(o<<3)>>2]|0;if((n|0)==(o|0))break;else o=n}r=l+c|0;m=p+(u<<3)|0;w=f[m>>2]|0;if((w|0)==(o|0))y=r;else{n=m;m=w;do{f[n>>2]=o;n=p+(m<<3)|0;m=f[n>>2]|0}while((m|0)!=(o|0));y=r}while(1){m=f[p+(y<<3)>>2]|0;if((m|0)==(y|0))break;else y=m}m=p+(r<<3)|0;n=f[m>>2]|0;if((n|0)!=(y|0)){u=m;m=n;do{f[u>>2]=y;u=p+(m<<3)|0;m=f[u>>2]|0}while((m|0)!=(y|0))}if((o|0)!=(y|0)){m=f[p+(o<<3)+4>>2]|0;u=f[p+(y<<3)+4>>2]|0;r=m>>>0>u>>>0;n=r?o:y;f[p+((r?y:o)<<3)>>2]=n;f[p+(n<<3)+4>>2]=u+m}}}}c=c+1|0}while((c|0)!=(h|0));return}function ec(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;c=a+4|0;if((b|0)>=(f[c>>2]|0))return;d=a+20|0;e=a+24|0;g=a+8|0;h=a+16|0;a=b;do{dc(f[d>>2]|0,f[e>>2]|0,f[g>>2]|0,f[h>>2]|0,a);a=a+1|0}while((a|0)<(f[c>>2]|0));return}function fc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=u;u=u+48|0;c=b+40|0;d=b;e=f[a>>2]|0;g=f[a+12>>2]|0;h=f[a+16>>2]|0;i=f[a+4>>2]|0;j=a+8|0;k=f[j>>2]|0;if((i|0)>=(k|0)){u=b;return}l=e+4|0;m=e+12|0;n=h+24|0;o=((f[a+24>>2]|0)+(f[a+20>>2]|0)|0)*6|0;p=a+28|0;a=(g|0)==0;q=g+4|0;r=g+8|0;s=g+12|0;if(!e)Ga(1764,1775,203,1912);t=(i|0)>-1;v=i;i=k;while(1){if(!t){w=7;break}if((f[l>>2]|0)<=(v|0)){w=9;break}k=f[e>>2]|0;_d(c|0,(f[m>>2]|0)+(X(k,v)|0)|0,k|0)|0;k=f[c>>2]|0;if(!k){w=11;break}x=f[k+4>>2]|0;if((x|0)>(o|0)?1:(x|0)<(f[n>>2]|0))y=i;else{x=d;z=x+40|0;do{f[x>>2]=0;x=x+4|0}while((x|0)<(z|0));if($b(h,f[p>>2]|0,k,d)|0){if(a){w=15;break}x=f[q>>2]|0;z=f[r>>2]|0;if((z|0)>(x|0)){A=x;B=f[s>>2]|0}else{C=z;do{z=C<<1;C=(z|0)>8?z:8}while((C|0)<=(x|0));f[r>>2]=C;x=Kd(f[s>>2]|0,X(f[g>>2]|0,C)|0)|0;f[s>>2]=x;A=f[q>>2]|0;B=x}x=f[g>>2]|0;_d(B+(X(x,A)|0)|0,d|0,x|0)|0;f[q>>2]=(f[q>>2]|0)+1}y=f[j>>2]|0}v=v+1|0;if((v|0)>=(y|0)){w=5;break}else i=y}if((w|0)==5){u=b;return}else if((w|0)==7)Ga(1840,1775,205,1912);else if((w|0)==9)Ga(1805,1775,206,1912);else if((w|0)==11)Ga(1764,1775,138,1793);else if((w|0)==15)Ga(1764,1775,187,1901)}function gc(){return 4396}function hc(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=oc(f[a+60>>2]|0)|0;f[c>>2]=d;d=kc(va(6,c|0)|0)|0;u=b;return d|0}function ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;d=u;u=u+48|0;e=d+16|0;g=d;h=d+32|0;i=a+28|0;j=f[i>>2]|0;f[h>>2]=j;k=a+20|0;l=(f[k>>2]|0)-j|0;f[h+4>>2]=l;f[h+8>>2]=b;f[h+12>>2]=c;b=l+c|0;l=a+60|0;f[g>>2]=f[l>>2];f[g+4>>2]=h;f[g+8>>2]=2;j=kc(Ia(146,g|0)|0)|0;a:do if((b|0)!=(j|0)){g=2;m=b;n=h;o=j;while(1){if((o|0)<0)break;m=m-o|0;p=f[n+4>>2]|0;q=o>>>0>p>>>0;r=q?n+8|0:n;s=(q<<31>>31)+g|0;t=o-(q?p:0)|0;f[r>>2]=(f[r>>2]|0)+t;p=r+4|0;f[p>>2]=(f[p>>2]|0)-t;f[e>>2]=f[l>>2];f[e+4>>2]=r;f[e+8>>2]=s;o=kc(Ia(146,e|0)|0)|0;if((m|0)==(o|0)){v=3;break a}else{g=s;n=r}}f[a+16>>2]=0;f[i>>2]=0;f[k>>2]=0;f[a>>2]=f[a>>2]|32;if((g|0)==2)w=0;else w=c-(f[n+4>>2]|0)|0}else v=3;while(0);if((v|0)==3){v=f[a+44>>2]|0;f[a+16>>2]=v+(f[a+48>>2]|0);f[i>>2]=v;f[k>>2]=v;w=c}u=d;return w|0}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+32|0;e=d;g=d+20|0;f[e>>2]=f[a+60>>2];f[e+4>>2]=0;f[e+8>>2]=b;f[e+12>>2]=g;f[e+16>>2]=c;if((kc(ya(140,e|0)|0)|0)<0){f[g>>2]=-1;h=-1}else h=f[g>>2]|0;u=d;return h|0}function kc(a){a=a|0;var b=0,c=0;if(a>>>0>4294963200){b=lc()|0;f[b>>2]=0-a;c=-1}else c=a;return c|0}function lc(){return (mc()|0)+64|0}function mc(){return nc()|0}function nc(){return 152}function oc(a){a=a|0;return a|0}function pc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+32|0;g=e;f[a+36>>2]=42;if((f[a>>2]&64|0)==0?(f[g>>2]=f[a+60>>2],f[g+4>>2]=21523,f[g+8>>2]=e+16,Ba(54,g|0)|0):0)b[a+75>>0]=-1;g=ic(a,c,d)|0;u=e;return g|0}function qc(a,b){a=+a;b=+b;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;p[s>>3]=b;e=f[s+4>>2]&-2147483648|d&2147483647;f[s>>2]=c;f[s+4>>2]=e;return +(+p[s>>3])}function rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a+104>>2]=b;c=f[a+8>>2]|0;d=f[a+4>>2]|0;e=c-d|0;f[a+108>>2]=e;f[a+100>>2]=(b|0)!=0&(e|0)>(b|0)?d+b|0:c;return}function sc(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;c=a+104|0;d=f[c>>2]|0;if((d|0)!=0?(f[a+108>>2]|0)>=(d|0):0)e=4;else{d=uc(a)|0;if((d|0)>=0){g=f[c>>2]|0;c=a+8|0;if(g){i=f[c>>2]|0;j=f[a+4>>2]|0;k=a+108|0;l=g-(f[k>>2]|0)|0;g=i;if((i-j|0)<(l|0)){m=k;n=g;o=g;p=j}else{m=k;n=j+(l+-1)|0;o=g;p=j}}else{j=f[c>>2]|0;m=a+108|0;n=j;o=j;p=f[a+4>>2]|0}f[a+100>>2]=n;if(o|0)f[m>>2]=o+1-p+(f[m>>2]|0);m=p+-1|0;if((h[m>>0]|0|0)==(d|0))q=d;else{b[m>>0]=d;q=d}}else e=4}if((e|0)==4){f[a+100>>2]=0;q=-1}return q|0}function tc(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function uc(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;if((vc(a)|0)==0?(Ma[f[a+32>>2]&63](a,c,1)|0)==1:0)d=h[c>>0]|0;else d=-1;u=b;return d|0}function vc(a){a=a|0;var c=0,d=0,e=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;d=a+20|0;c=a+28|0;if((f[d>>2]|0)>>>0>(f[c>>2]|0)>>>0)Ma[f[a+36>>2]&63](a,0,0)|0;f[a+16>>2]=0;f[c>>2]=0;f[d>>2]=0;d=f[a>>2]|0;if(!(d&4)){c=(f[a+44>>2]|0)+(f[a+48>>2]|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;e=d<<27>>31}else{f[a>>2]=d|32;e=-1}return e|0}function wc(a,b){a=a|0;b=b|0;var c=0;if(!b)c=0;else c=xc(f[b>>2]|0,f[b+4>>2]|0,a)|0;return (c|0?c:a)|0}function xc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=(f[a>>2]|0)+1794895138|0;g=yc(f[a+8>>2]|0,e)|0;h=yc(f[a+12>>2]|0,e)|0;i=yc(f[a+16>>2]|0,e)|0;a:do if((g>>>0<c>>>2>>>0?(j=c-(g<<2)|0,h>>>0<j>>>0&i>>>0<j>>>0):0)?((i|h)&3|0)==0:0){j=h>>>2;k=i>>>2;l=0;m=g;while(1){n=m>>>1;o=l+n|0;p=o<<1;q=p+j|0;r=yc(f[a+(q<<2)>>2]|0,e)|0;s=yc(f[a+(q+1<<2)>>2]|0,e)|0;if(!(s>>>0<c>>>0&r>>>0<(c-s|0)>>>0)){t=0;break a}if(b[a+(s+r)>>0]|0){t=0;break a}r=zc(d,a+s|0)|0;if(!r)break;s=(r|0)<0;if((m|0)==1){t=0;break a}else{l=s?l:o;m=s?n:m-n|0}}m=p+k|0;l=yc(f[a+(m<<2)>>2]|0,e)|0;j=yc(f[a+(m+1<<2)>>2]|0,e)|0;if(j>>>0<c>>>0&l>>>0<(c-j|0)>>>0)t=(b[a+(j+l)>>0]|0)==0?a+j|0:0;else t=0}else t=0;while(0);return t|0}function yc(a,b){a=a|0;b=b|0;var c=0;c=$d(a|0)|0;return ((b|0)==0?a:c)|0}function zc(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0;d=b[a>>0]|0;e=b[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=e;g=d}else{d=c;c=a;do{c=c+1|0;d=d+1|0;a=b[c>>0]|0;e=b[d>>0]|0}while(!(a<<24>>24==0?1:a<<24>>24!=e<<24>>24));f=e;g=a}return (g&255)-(f&255)|0}function Ac(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;c=a;a:do if(!(c&3)){d=a;e=4}else{g=a;h=c;while(1){if(!(b[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){d=j;e=4;break}else g=j}}while(0);if((e|0)==4){e=d;while(1){k=f[e>>2]|0;if(!((k&-2139062144^-2139062144)&k+-16843009))e=e+4|0;else break}if(!((k&255)<<24>>24))l=e;else{k=e;while(1){e=k+1|0;if(!(b[e>>0]|0)){l=e;break}else k=e}}i=l}return i-c|0}function Bc(a){a=a|0;var b=0;b=(Cc()|0)+188|0;return Dc(a,f[b>>2]|0)|0}function Cc(){return nc()|0}function Dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;d=0;while(1){if((h[1958+d>>0]|0)==(a|0)){e=2;break}g=d+1|0;if((g|0)==87){i=2046;j=87;e=5;break}else d=g}if((e|0)==2)if(!d)k=2046;else{i=2046;j=d;e=5}if((e|0)==5)while(1){e=0;d=i;do{a=d;d=d+1|0}while((b[a>>0]|0)!=0);j=j+-1|0;if(!j){k=d;break}else{i=d;e=5}}return Ec(k,f[c+20>>2]|0)|0}function Ec(a,b){a=a|0;b=b|0;return wc(a,b)|0}function Fc(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Gc(a,b,0)|0;return c|0}function Gc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;do if(a){if(c>>>0<128){b[a>>0]=c;e=1;break}d=(Hc()|0)+188|0;if(!(f[f[d>>2]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;e=1;break}else{d=lc()|0;f[d>>2]=84;e=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;e=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;e=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;e=4;break}else{d=lc()|0;f[d>>2]=84;e=-1;break}}else e=1;while(0);return e|0}function Hc(){return nc()|0}function Ic(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=u;u=u+224|0;g=e+120|0;h=e+80|0;i=e;j=e+136|0;k=h;l=k+40|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));f[g>>2]=f[d>>2];if((Jc(0,c,g,i,h)|0)<0)m=-1;else{if((f[a+76>>2]|0)>-1)n=Kc(a)|0;else n=0;d=f[a>>2]|0;k=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;d=a+48|0;if(!(f[d>>2]|0)){l=a+44|0;o=f[l>>2]|0;f[l>>2]=j;p=a+28|0;f[p>>2]=j;q=a+20|0;f[q>>2]=j;f[d>>2]=80;r=a+16|0;f[r>>2]=j+80;j=Jc(a,c,g,i,h)|0;if(!o)s=j;else{Ma[f[a+36>>2]&63](a,0,0)|0;t=(f[q>>2]|0)==0?-1:j;f[l>>2]=o;f[d>>2]=0;f[r>>2]=0;f[p>>2]=0;f[q>>2]=0;s=t}}else s=Jc(a,c,g,i,h)|0;h=f[a>>2]|0;f[a>>2]=h|k;if(n|0)Lc(a);m=(h&32|0)==0?s:-1}u=e;return m|0}function Jc(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0;i=u;u=u+64|0;j=i+16|0;k=i;l=i+24|0;m=i+8|0;n=i+20|0;f[j>>2]=c;o=(a|0)!=0;q=l+40|0;r=q;s=l+39|0;l=m+4|0;t=0;v=0;w=0;x=c;a:while(1){do if((v|0)>-1)if((t|0)>(2147483647-v|0)){c=lc()|0;f[c>>2]=75;y=-1;break}else{y=t+v|0;break}else y=v;while(0);c=b[x>>0]|0;if(!(c<<24>>24)){z=87;break}else{A=c;B=x}b:while(1){switch(A<<24>>24){case 37:{C=B;D=B;z=9;break b;break}case 0:{E=B;F=B;break b;break}default:{}}c=B+1|0;f[j>>2]=c;A=b[c>>0]|0;B=c}c:do if((z|0)==9)while(1){z=0;if((b[D+1>>0]|0)!=37){E=C;F=D;break c}c=C+1|0;G=D+2|0;f[j>>2]=G;if((b[G>>0]|0)==37){C=c;D=G;z=9}else{E=c;F=G;break}}while(0);G=E-x|0;if(o)Mc(a,x,G);if(G|0){t=G;v=y;x=F;continue}G=F+1|0;c=(b[G>>0]|0)+-48|0;if(c>>>0<10){H=(b[F+2>>0]|0)==36;J=H?c:-1;K=H?1:w;L=H?F+3|0:G}else{J=-1;K=w;L=G}f[j>>2]=L;G=b[L>>0]|0;H=(G<<24>>24)+-32|0;d:do if(H>>>0<32){c=0;M=G;N=H;O=L;while(1){P=1<<N;if(!(P&75913)){Q=c;R=M;S=O;break d}T=P|c;P=O+1|0;f[j>>2]=P;U=b[P>>0]|0;N=(U<<24>>24)+-32|0;if(N>>>0>=32){Q=T;R=U;S=P;break}else{c=T;M=U;O=P}}}else{Q=0;R=G;S=L}while(0);if(R<<24>>24==42){G=S+1|0;H=(b[G>>0]|0)+-48|0;if(H>>>0<10?(b[S+2>>0]|0)==36:0){f[h+(H<<2)>>2]=10;V=f[g+((b[G>>0]|0)+-48<<3)>>2]|0;W=1;X=S+3|0}else{if(K|0){Y=-1;break}if(o){H=(f[e>>2]|0)+(4-1)&~(4-1);O=f[H>>2]|0;f[e>>2]=H+4;V=O;W=0;X=G}else{V=0;W=0;X=G}}f[j>>2]=X;G=(V|0)<0;Z=G?0-V|0:V;_=G?Q|8192:Q;$=W;aa=X}else{G=Nc(j)|0;if((G|0)<0){Y=-1;break}Z=G;_=Q;$=K;aa=f[j>>2]|0}do if((b[aa>>0]|0)==46){if((b[aa+1>>0]|0)!=42){f[j>>2]=aa+1;G=Nc(j)|0;ba=G;ca=f[j>>2]|0;break}G=aa+2|0;O=(b[G>>0]|0)+-48|0;if(O>>>0<10?(b[aa+3>>0]|0)==36:0){f[h+(O<<2)>>2]=10;O=f[g+((b[G>>0]|0)+-48<<3)>>2]|0;H=aa+4|0;f[j>>2]=H;ba=O;ca=H;break}if($|0){Y=-1;break a}if(o){H=(f[e>>2]|0)+(4-1)&~(4-1);O=f[H>>2]|0;f[e>>2]=H+4;da=O}else da=0;f[j>>2]=G;ba=da;ca=G}else{ba=-1;ca=aa}while(0);G=0;O=ca;while(1){if(((b[O>>0]|0)+-65|0)>>>0>57){Y=-1;break a}ea=O+1|0;f[j>>2]=ea;fa=b[(b[O>>0]|0)+-65+(3850+(G*58|0))>>0]|0;ga=fa&255;if((ga+-1|0)>>>0<8){G=ga;O=ea}else break}if(!(fa<<24>>24)){Y=-1;break}H=(J|0)>-1;do if(fa<<24>>24==19)if(H){Y=-1;break a}else z=49;else{if(H){f[h+(J<<2)>>2]=ga;M=g+(J<<3)|0;c=f[M+4>>2]|0;N=k;f[N>>2]=f[M>>2];f[N+4>>2]=c;z=49;break}if(!o){Y=0;break a}Oc(k,ga,e)}while(0);if((z|0)==49?(z=0,!o):0){t=0;v=y;w=$;x=ea;continue}H=b[O>>0]|0;c=(G|0)!=0&(H&15|0)==3?H&-33:H;H=_&-65537;N=(_&8192|0)==0?_:H;e:do switch(c|0){case 110:{switch((G&255)<<24>>24){case 0:{f[f[k>>2]>>2]=y;t=0;v=y;w=$;x=ea;continue a;break}case 1:{f[f[k>>2]>>2]=y;t=0;v=y;w=$;x=ea;continue a;break}case 2:{M=f[k>>2]|0;f[M>>2]=y;f[M+4>>2]=((y|0)<0)<<31>>31;t=0;v=y;w=$;x=ea;continue a;break}case 3:{d[f[k>>2]>>1]=y;t=0;v=y;w=$;x=ea;continue a;break}case 4:{b[f[k>>2]>>0]=y;t=0;v=y;w=$;x=ea;continue a;break}case 6:{f[f[k>>2]>>2]=y;t=0;v=y;w=$;x=ea;continue a;break}case 7:{M=f[k>>2]|0;f[M>>2]=y;f[M+4>>2]=((y|0)<0)<<31>>31;t=0;v=y;w=$;x=ea;continue a;break}default:{t=0;v=y;w=$;x=ea;continue a}}break}case 112:{ha=120;ia=ba>>>0>8?ba:8;ja=N|8;z=61;break}case 88:case 120:{ha=c;ia=ba;ja=N;z=61;break}case 111:{M=k;P=f[M>>2]|0;U=f[M+4>>2]|0;M=Qc(P,U,q)|0;T=r-M|0;ka=M;la=0;ma=4314;na=(N&8|0)==0|(ba|0)>(T|0)?ba:T+1|0;oa=N;pa=P;qa=U;z=67;break}case 105:case 100:{U=k;P=f[U>>2]|0;T=f[U+4>>2]|0;if((T|0)<0){U=Od(0,0,P|0,T|0)|0;M=I;ra=k;f[ra>>2]=U;f[ra+4>>2]=M;sa=1;ta=4314;ua=U;va=M;z=66;break e}else{sa=(N&2049|0)!=0&1;ta=(N&2048|0)==0?((N&1|0)==0?4314:4316):4315;ua=P;va=T;z=66;break e}break}case 117:{T=k;sa=0;ta=4314;ua=f[T>>2]|0;va=f[T+4>>2]|0;z=66;break}case 99:{b[s>>0]=f[k>>2];wa=s;xa=0;ya=4314;za=q;Aa=1;Ba=H;break}case 109:{T=lc()|0;Ca=Bc(f[T>>2]|0)|0;z=71;break}case 115:{T=f[k>>2]|0;Ca=T|0?T:4324;z=71;break}case 67:{f[m>>2]=f[k>>2];f[l>>2]=0;f[k>>2]=m;Da=-1;Ea=m;z=75;break}case 83:{T=f[k>>2]|0;if(!ba){Tc(a,32,Z,0,N);Fa=0;z=84}else{Da=ba;Ea=T;z=75}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{t=Uc(a,+p[k>>3],Z,ba,N,c)|0;v=y;w=$;x=ea;continue a;break}default:{wa=x;xa=0;ya=4314;za=q;Aa=ba;Ba=N}}while(0);f:do if((z|0)==61){z=0;c=k;G=f[c>>2]|0;O=f[c+4>>2]|0;c=Pc(G,O,q,ha&32)|0;T=(ja&8|0)==0|(G|0)==0&(O|0)==0;ka=c;la=T?0:2;ma=T?4314:4314+(ha>>4)|0;na=ia;oa=ja;pa=G;qa=O;z=67}else if((z|0)==66){z=0;ka=Rc(ua,va,q)|0;la=sa;ma=ta;na=ba;oa=N;pa=ua;qa=va;z=67}else if((z|0)==71){z=0;O=Sc(Ca,0,ba)|0;G=(O|0)==0;wa=Ca;xa=0;ya=4314;za=G?Ca+ba|0:O;Aa=G?ba:O-Ca|0;Ba=H}else if((z|0)==75){z=0;O=Ea;G=0;T=0;while(1){c=f[O>>2]|0;if(!c){Ga=G;Ha=T;break}P=Fc(n,c)|0;if((P|0)<0|P>>>0>(Da-G|0)>>>0){Ga=G;Ha=P;break}c=P+G|0;if(Da>>>0>c>>>0){O=O+4|0;G=c;T=P}else{Ga=c;Ha=P;break}}if((Ha|0)<0){Y=-1;break a}Tc(a,32,Z,Ga,N);if(!Ga){Fa=0;z=84}else{T=Ea;G=0;while(1){O=f[T>>2]|0;if(!O){Fa=Ga;z=84;break f}P=Fc(n,O)|0;G=P+G|0;if((G|0)>(Ga|0)){Fa=Ga;z=84;break f}Mc(a,n,P);if(G>>>0>=Ga>>>0){Fa=Ga;z=84;break}else T=T+4|0}}}while(0);if((z|0)==67){z=0;H=(pa|0)!=0|(qa|0)!=0;T=(na|0)!=0|H;G=((H^1)&1)+(r-ka)|0;wa=T?ka:q;xa=la;ya=ma;za=q;Aa=T?((na|0)>(G|0)?na:G):na;Ba=(na|0)>-1?oa&-65537:oa}else if((z|0)==84){z=0;Tc(a,32,Z,Fa,N^8192);t=(Z|0)>(Fa|0)?Z:Fa;v=y;w=$;x=ea;continue}G=za-wa|0;T=(Aa|0)<(G|0)?G:Aa;H=T+xa|0;P=(Z|0)<(H|0)?H:Z;Tc(a,32,P,H,Ba);Mc(a,ya,xa);Tc(a,48,P,H,Ba^65536);Tc(a,48,T,G,0);Mc(a,wa,G);Tc(a,32,P,H,Ba^8192);t=P;v=y;w=$;x=ea}g:do if((z|0)==87)if(!a)if(!w)Y=0;else{ea=1;while(1){x=f[h+(ea<<2)>>2]|0;if(!x){Ia=ea;break}Oc(g+(ea<<3)|0,x,e);ea=ea+1|0;if((ea|0)>=10){Y=1;break g}}while(1){if(f[h+(Ia<<2)>>2]|0){Y=-1;break g}Ia=Ia+1|0;if((Ia|0)>=10){Y=1;break}}}else Y=y;while(0);u=i;return Y|0}function Kc(a){a=a|0;return 0}function Lc(a){a=a|0;return}function Mc(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))Yc(b,c,a)|0;return}function Nc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a>>2]|0;d=(b[c>>0]|0)+-48|0;if(d>>>0<10){e=0;g=c;c=d;while(1){d=c+(e*10|0)|0;g=g+1|0;f[a>>2]=g;c=(b[g>>0]|0)+-48|0;if(c>>>0>=10){h=d;break}else e=d}}else h=0;return h|0}function Oc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);e=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=e;break a;break}case 10:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a;break}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);e=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=e;f[d+4>>2]=0;break a;break}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);e=d;g=f[e>>2]|0;h=f[e+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=g;f[d+4>>2]=h;break a;break}case 13:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=(d&65535)<<16>>16;d=a;f[d>>2]=h;f[d+4>>2]=((h|0)<0)<<31>>31;break a;break}case 14:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=a;f[h>>2]=d&65535;f[h+4>>2]=0;break a;break}case 15:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=(d&255)<<24>>24;d=a;f[d>>2]=h;f[d+4>>2]=((h|0)<0)<<31>>31;break a;break}case 16:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=a;f[h>>2]=d&255;f[h+4>>2]=0;break a;break}case 17:{h=(f[c>>2]|0)+(8-1)&~(8-1);i=+p[h>>3];f[c>>2]=h+8;p[a>>3]=i;break a;break}case 18:{h=(f[c>>2]|0)+(8-1)&~(8-1);i=+p[h>>3];f[c>>2]=h+8;p[a>>3]=i;break a;break}default:break a}while(0);while(0);return}function Pc(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;if((a|0)==0&(c|0)==0)f=d;else{g=d;d=c;c=a;while(1){a=g+-1|0;b[a>>0]=h[4362+(c&15)>>0]|0|e;c=Rd(c|0,d|0,4)|0;d=I;if((c|0)==0&(d|0)==0){f=a;break}else g=a}}return f|0}function Qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((a|0)==0&(c|0)==0)e=d;else{f=d;d=c;c=a;while(1){a=f+-1|0;b[a>>0]=c&7|48;c=Rd(c|0,d|0,3)|0;d=I;if((c|0)==0&(d|0)==0){e=a;break}else f=a}}return e|0}function Rc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295){e=d;f=a;g=c;while(1){c=Zd(f|0,g|0,10,0)|0;e=e+-1|0;b[e>>0]=c&255|48;c=f;f=Vd(f|0,g|0,10,0)|0;if(!(g>>>0>9|(g|0)==9&c>>>0>4294967295))break;else g=I}h=f;i=e}else{h=a;i=d}if(!h)j=i;else{d=h;h=i;while(1){i=h+-1|0;b[i>>0]=(d>>>0)%10|0|48;if(d>>>0<10){j=i;break}else{d=(d>>>0)/10|0;h=i}}}return j|0}function Sc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=c&255;g=(d|0)!=0;a:do if(g&(a&3|0)!=0){h=c&255;i=a;j=d;while(1){if((b[i>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=i+1|0;o=j+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=n;j=o}else{q=n;r=o;s=p;m=5;break}}}else{q=a;r=d;s=g;m=5}while(0);if((m|0)==5)if(s){k=q;l=r;m=6}else{t=q;u=0}b:do if((m|0)==6){q=c&255;if((b[k>>0]|0)==q<<24>>24){t=k;u=l}else{r=X(e,16843009)|0;c:do if(l>>>0>3){s=k;g=l;while(1){d=f[s>>2]^r;if((d&-2139062144^-2139062144)&d+-16843009|0)break;d=s+4|0;a=g+-4|0;if(a>>>0>3){s=d;g=a}else{v=d;w=a;m=11;break c}}x=s;y=g}else{v=k;w=l;m=11}while(0);if((m|0)==11)if(!w){t=v;u=0;break}else{x=v;y=w}while(1){if((b[x>>0]|0)==q<<24>>24){t=x;u=y;break b}r=x+1|0;y=y+-1|0;if(!y){t=r;u=0;break}else x=r}}}while(0);return (u|0?t:0)|0}function Tc(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;f=u;u=u+256|0;g=f;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;Qd(g|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;d=e;do{Mc(a,g,256);d=d+-256|0}while(d>>>0>255);h=b&255}else h=e;Mc(a,g,h)}u=f;return}function Uc(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0.0,E=0,F=0,G=0,H=0.0,J=0,K=0,L=0,M=0,N=0.0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0;j=u;u=u+560|0;k=j+8|0;l=j;m=j+524|0;n=m;o=j+512|0;f[l>>2]=0;p=o+12|0;Vc(c)|0;if((I|0)<0){q=-c;r=1;s=4331}else{q=c;r=(g&2049|0)!=0&1;s=(g&2048|0)==0?((g&1|0)==0?4332:4337):4334}Vc(q)|0;t=I&2146435072;do if(t>>>0<2146435072|(t|0)==2146435072&0<0){c=+Wc(q,l)*2.0;v=c!=0.0;if(v)f[l>>2]=(f[l>>2]|0)+-1;w=i|32;if((w|0)==97){x=i&32;y=(x|0)==0?s:s+9|0;z=r|2;A=12-e|0;do if(!(e>>>0>11|(A|0)==0)){B=8.0;C=A;do{C=C+-1|0;B=B*16.0}while((C|0)!=0);if((b[y>>0]|0)==45){D=-(B+(-c-B));break}else{D=c+B-B;break}}else D=c;while(0);A=f[l>>2]|0;C=(A|0)<0?0-A|0:A;E=Rc(C,((C|0)<0)<<31>>31,p)|0;if((E|0)==(p|0)){C=o+11|0;b[C>>0]=48;F=C}else F=E;b[F+-1>>0]=(A>>31&2)+43;A=F+-2|0;b[A>>0]=i+15;E=(e|0)<1;C=(g&8|0)==0;G=m;H=D;while(1){J=~~H;K=G+1|0;b[G>>0]=h[4362+J>>0]|x;H=(H-+(J|0))*16.0;if((K-n|0)==1?!(C&(E&H==0.0)):0){b[K>>0]=46;L=G+2|0}else L=K;if(!(H!=0.0))break;else G=L}G=L-n|0;E=p-A|0;C=(e|0)!=0&(G+-2|0)<(e|0)?e+2|0:G;x=E+z+C|0;Tc(a,32,d,x,g);Mc(a,y,z);Tc(a,48,d,x,g^65536);Mc(a,m,G);Tc(a,48,C-G|0,0,0);Mc(a,A,E);Tc(a,32,d,x,g^8192);M=x;break}x=(e|0)<0?6:e;if(v){E=(f[l>>2]|0)+-28|0;f[l>>2]=E;N=c*268435456.0;O=E}else{N=c;O=f[l>>2]|0}E=(O|0)<0?k:k+288|0;G=E;H=N;do{C=~~H>>>0;f[G>>2]=C;G=G+4|0;H=(H-+(C>>>0))*1.0e9}while(H!=0.0);if((O|0)>0){v=E;A=G;z=O;while(1){y=(z|0)<29?z:29;C=A+-4|0;if(C>>>0>=v>>>0){K=C;C=0;do{J=Sd(f[K>>2]|0,0,y|0)|0;P=Pd(J|0,I|0,C|0,0)|0;J=I;Q=Zd(P|0,J|0,1e9,0)|0;f[K>>2]=Q;C=Vd(P|0,J|0,1e9,0)|0;K=K+-4|0}while(K>>>0>=v>>>0);if(C){K=v+-4|0;f[K>>2]=C;R=K}else R=v}else R=v;K=A;while(1){if(K>>>0<=R>>>0)break;J=K+-4|0;if(!(f[J>>2]|0))K=J;else break}C=(f[l>>2]|0)-y|0;f[l>>2]=C;if((C|0)>0){v=R;A=K;z=C}else{S=R;T=K;U=C;break}}}else{S=E;T=G;U=O}if((U|0)<0){z=((x+25|0)/9|0)+1|0;A=(w|0)==102;v=S;C=T;J=U;while(1){P=0-J|0;Q=(P|0)<9?P:9;if(v>>>0<C>>>0){P=(1<<Q)+-1|0;V=1e9>>>Q;W=0;Y=v;do{Z=f[Y>>2]|0;f[Y>>2]=(Z>>>Q)+W;W=X(Z&P,V)|0;Y=Y+4|0}while(Y>>>0<C>>>0);Y=(f[v>>2]|0)==0?v+4|0:v;if(!W){_=Y;$=C}else{f[C>>2]=W;_=Y;$=C+4|0}}else{_=(f[v>>2]|0)==0?v+4|0:v;$=C}Y=A?E:_;V=($-Y>>2|0)>(z|0)?Y+(z<<2)|0:$;J=(f[l>>2]|0)+Q|0;f[l>>2]=J;if((J|0)>=0){aa=_;ba=V;break}else{v=_;C=V}}}else{aa=S;ba=T}C=E;if(aa>>>0<ba>>>0){v=(C-aa>>2)*9|0;J=f[aa>>2]|0;if(J>>>0<10)ca=v;else{z=v;v=10;while(1){v=v*10|0;A=z+1|0;if(J>>>0<v>>>0){ca=A;break}else z=A}}}else ca=0;z=(w|0)==103;v=(x|0)!=0;J=x-((w|0)!=102?ca:0)+((v&z)<<31>>31)|0;if((J|0)<(((ba-C>>2)*9|0)+-9|0)){A=J+9216|0;J=E+4+(((A|0)/9|0)+-1024<<2)|0;G=((A|0)%9|0)+1|0;if((G|0)<9){A=G;G=10;while(1){V=G*10|0;A=A+1|0;if((A|0)==9){da=V;break}else G=V}}else da=10;G=f[J>>2]|0;A=(G>>>0)%(da>>>0)|0;w=(J+4|0)==(ba|0);if(!(w&(A|0)==0)){B=(((G>>>0)/(da>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;V=(da|0)/2|0;H=A>>>0<V>>>0?.5:w&(A|0)==(V|0)?1.0:1.5;if(!r){ea=H;fa=B}else{V=(b[s>>0]|0)==45;ea=V?-H:H;fa=V?-B:B}V=G-A|0;f[J>>2]=V;if(fa+ea!=fa){A=V+da|0;f[J>>2]=A;if(A>>>0>999999999){A=aa;V=J;while(1){G=V+-4|0;f[V>>2]=0;if(G>>>0<A>>>0){w=A+-4|0;f[w>>2]=0;ga=w}else ga=A;w=(f[G>>2]|0)+1|0;f[G>>2]=w;if(w>>>0>999999999){A=ga;V=G}else{ha=ga;ia=G;break}}}else{ha=aa;ia=J}V=(C-ha>>2)*9|0;A=f[ha>>2]|0;if(A>>>0<10){ja=ia;ka=V;la=ha}else{G=V;V=10;while(1){V=V*10|0;w=G+1|0;if(A>>>0<V>>>0){ja=ia;ka=w;la=ha;break}else G=w}}}else{ja=J;ka=ca;la=aa}}else{ja=J;ka=ca;la=aa}G=ja+4|0;ma=ka;na=ba>>>0>G>>>0?G:ba;oa=la}else{ma=ca;na=ba;oa=aa}G=na;while(1){if(G>>>0<=oa>>>0){pa=0;break}V=G+-4|0;if(!(f[V>>2]|0))G=V;else{pa=1;break}}J=0-ma|0;do if(z){V=((v^1)&1)+x|0;if((V|0)>(ma|0)&(ma|0)>-5){qa=i+-1|0;ra=V+-1-ma|0}else{qa=i+-2|0;ra=V+-1|0}V=g&8;if(!V){if(pa?(A=f[G+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){w=0;Y=10;while(1){Y=Y*10|0;P=w+1|0;if((A>>>0)%(Y>>>0)|0|0){sa=P;break}else w=P}}else sa=0;else sa=9;w=((G-C>>2)*9|0)+-9|0;if((qa|32|0)==102){Y=w-sa|0;A=(Y|0)>0?Y:0;ta=qa;ua=(ra|0)<(A|0)?ra:A;va=0;break}else{A=w+ma-sa|0;w=(A|0)>0?A:0;ta=qa;ua=(ra|0)<(w|0)?ra:w;va=0;break}}else{ta=qa;ua=ra;va=V}}else{ta=i;ua=x;va=g&8}while(0);x=ua|va;C=(x|0)!=0&1;v=(ta|32|0)==102;if(v){wa=0;xa=(ma|0)>0?ma:0}else{z=(ma|0)<0?J:ma;w=Rc(z,((z|0)<0)<<31>>31,p)|0;z=p;if((z-w|0)<2){A=w;while(1){Y=A+-1|0;b[Y>>0]=48;if((z-Y|0)<2)A=Y;else{ya=Y;break}}}else ya=w;b[ya+-1>>0]=(ma>>31&2)+43;A=ya+-2|0;b[A>>0]=ta;wa=A;xa=z-A|0}A=r+1+ua+C+xa|0;Tc(a,32,d,A,g);Mc(a,s,r);Tc(a,48,d,A,g^65536);if(v){J=oa>>>0>E>>>0?E:oa;Y=m+9|0;Q=Y;W=m+8|0;P=J;do{K=Rc(f[P>>2]|0,0,Y)|0;if((P|0)==(J|0))if((K|0)==(Y|0)){b[W>>0]=48;za=W}else za=K;else if(K>>>0>m>>>0){Qd(m|0,48,K-n|0)|0;y=K;while(1){Z=y+-1|0;if(Z>>>0>m>>>0)y=Z;else{za=Z;break}}}else za=K;Mc(a,za,Q-za|0);P=P+4|0}while(P>>>0<=E>>>0);if(x|0)Mc(a,4378,1);if(P>>>0<G>>>0&(ua|0)>0){E=ua;Q=P;while(1){W=Rc(f[Q>>2]|0,0,Y)|0;if(W>>>0>m>>>0){Qd(m|0,48,W-n|0)|0;J=W;while(1){v=J+-1|0;if(v>>>0>m>>>0)J=v;else{Aa=v;break}}}else Aa=W;Mc(a,Aa,(E|0)<9?E:9);Q=Q+4|0;J=E+-9|0;if(!(Q>>>0<G>>>0&(E|0)>9)){Ba=J;break}else E=J}}else Ba=ua;Tc(a,48,Ba+9|0,9,0)}else{E=pa?G:oa+4|0;if((ua|0)>-1){Q=m+9|0;Y=(va|0)==0;P=Q;x=0-n|0;J=m+8|0;K=ua;v=oa;while(1){C=Rc(f[v>>2]|0,0,Q)|0;if((C|0)==(Q|0)){b[J>>0]=48;Ca=J}else Ca=C;do if((v|0)==(oa|0)){C=Ca+1|0;Mc(a,Ca,1);if(Y&(K|0)<1){Da=C;break}Mc(a,4378,1);Da=C}else{if(Ca>>>0<=m>>>0){Da=Ca;break}Qd(m|0,48,Ca+x|0)|0;C=Ca;while(1){z=C+-1|0;if(z>>>0>m>>>0)C=z;else{Da=z;break}}}while(0);W=P-Da|0;Mc(a,Da,(K|0)>(W|0)?W:K);C=K-W|0;v=v+4|0;if(!(v>>>0<E>>>0&(C|0)>-1)){Ea=C;break}else K=C}}else Ea=ua;Tc(a,48,Ea+18|0,18,0);Mc(a,wa,p-wa|0)}Tc(a,32,d,A,g^8192);M=A}else{K=(i&32|0)!=0;E=r+3|0;Tc(a,32,d,E,g&-65537);Mc(a,s,r);Mc(a,q!=q|0.0!=0.0?(K?4389:4358):K?4350:4354,3);Tc(a,32,d,E,g^8192);M=E}while(0);u=j;return ((M|0)<(d|0)?d:M)|0}function Vc(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function Wc(a,b){a=+a;b=b|0;return +(+Xc(a,b))}function Xc(a,b){a=+a;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0.0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=Rd(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){g=+Xc(a*18446744073709551616.0,b);h=g;i=(f[b>>2]|0)+-64|0}else{h=a;i=0}f[b>>2]=i;j=h;break}case 2047:{j=a;break}default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;j=+p[s>>3]}}return +j}function Yc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=d+16|0;g=f[e>>2]|0;if(!g)if(!(Zc(d)|0)){h=f[e>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=d+20|0;e=f[g>>2]|0;k=e;if((h-e|0)>>>0<c>>>0){j=Ma[f[d+36>>2]&63](d,a,c)|0;break}b:do if((b[d+75>>0]|0)>-1){e=c;while(1){if(!e){l=0;m=a;n=c;o=k;break b}p=e+-1|0;if((b[a+p>>0]|0)==10)break;else e=p}p=Ma[f[d+36>>2]&63](d,a,e)|0;if(p>>>0<e>>>0){j=p;break a}l=e;m=a+e|0;n=c-e|0;o=f[g>>2]|0}else{l=0;m=a;n=c;o=k}while(0);_d(o|0,m|0,n|0)|0;f[g>>2]=(f[g>>2]|0)+n;j=l+n|0}while(0);return j|0}function Zc(a){a=a|0;var c=0,d=0,e=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;d=f[a>>2]|0;if(!(d&8)){f[a+8>>2]=0;f[a+4>>2]=0;c=f[a+44>>2]|0;f[a+28>>2]=c;f[a+20>>2]=c;f[a+16>>2]=c+(f[a+48>>2]|0);e=0}else{f[a>>2]=d|32;e=-1}return e|0}function _c(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,D=0,E=0,F=0;switch(c|0){case 0:{e=-149;g=24;i=4;break}case 1:{e=-1074;g=53;i=4;break}case 2:{e=-1074;g=53;i=4;break}default:j=0.0}a:do if((i|0)==4){c=a+4|0;k=a+100|0;do{l=f[c>>2]|0;if(l>>>0<(f[k>>2]|0)>>>0){f[c>>2]=l+1;m=h[l>>0]|0}else m=sc(a)|0}while((tc(m)|0)!=0);b:do switch(m|0){case 43:case 45:{l=1-(((m|0)==45&1)<<1)|0;n=f[c>>2]|0;if(n>>>0<(f[k>>2]|0)>>>0){f[c>>2]=n+1;o=h[n>>0]|0;p=l;break b}else{o=sc(a)|0;p=l;break b}break}default:{o=m;p=1}}while(0);l=0;n=o;while(1){if((n|32|0)!=(b[4380+l>>0]|0)){q=l;r=n;break}do if(l>>>0<7){s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;t=h[s>>0]|0;break}else{t=sc(a)|0;break}}else t=n;while(0);s=l+1|0;if(s>>>0<8){l=s;n=t}else{q=s;r=t;break}}c:do switch(q|0){case 8:break;case 3:{i=23;break}default:{n=(d|0)!=0;if(n&q>>>0>3)if((q|0)==8)break c;else{i=23;break c}d:do if(!q){l=0;s=r;while(1){if((s|32|0)!=(b[4389+l>>0]|0)){u=l;v=s;break d}do if(l>>>0<2){w=f[c>>2]|0;if(w>>>0<(f[k>>2]|0)>>>0){f[c>>2]=w+1;x=h[w>>0]|0;break}else{x=sc(a)|0;break}}else x=s;while(0);w=l+1|0;if(w>>>0<3){l=w;s=x}else{u=w;v=x;break}}}else{u=q;v=r}while(0);switch(u|0){case 3:{s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;y=h[s>>0]|0}else y=sc(a)|0;if((y|0)==40)z=1;else{if(!(f[k>>2]|0)){j=B;break a}f[c>>2]=(f[c>>2]|0)+-1;j=B;break a}while(1){s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;A=h[s>>0]|0}else A=sc(a)|0;if(!((A+-48|0)>>>0<10|(A+-65|0)>>>0<26)?!((A|0)==95|(A+-97|0)>>>0<26):0)break;z=z+1|0}if((A|0)==41){j=B;break a}s=(f[k>>2]|0)==0;if(!s)f[c>>2]=(f[c>>2]|0)+-1;if(!n){l=lc()|0;f[l>>2]=22;rc(a,0);j=0.0;break a}if(!z){j=B;break a}else D=z;while(1){D=D+-1|0;if(!s)f[c>>2]=(f[c>>2]|0)+-1;if(!D){j=B;break a}}break}case 0:{if((v|0)==48){s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;E=h[s>>0]|0}else E=sc(a)|0;if((E|32|0)==120){j=+$c(a,g,e,p,d);break a}if(!(f[k>>2]|0))F=48;else{f[c>>2]=(f[c>>2]|0)+-1;F=48}}else F=v;j=+ad(a,F,g,e,p,d);break a;break}default:{if(f[k>>2]|0)f[c>>2]=(f[c>>2]|0)+-1;s=lc()|0;f[s>>2]=22;rc(a,0);j=0.0;break a}}}}while(0);if((i|0)==23){s=(f[k>>2]|0)==0;if(!s)f[c>>2]=(f[c>>2]|0)+-1;if((d|0)!=0&q>>>0>3){n=q;do{if(!s)f[c>>2]=(f[c>>2]|0)+-1;n=n+-1|0}while(n>>>0>3)}}j=+(p|0)*C}while(0);return +j}function $c(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,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.0,G=0.0,H=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0,Q=0.0,R=0.0,S=0,T=0.0,U=0,V=0,W=0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0.0,da=0,ea=0.0;g=a+4|0;i=f[g>>2]|0;j=a+100|0;if(i>>>0<(f[j>>2]|0)>>>0){f[g>>2]=i+1;k=h[i>>0]|0;l=0}else{k=sc(a)|0;l=0}a:while(1){switch(k|0){case 46:{m=8;break a;break}case 48:break;default:{n=0;o=0;p=1.0;q=0.0;r=0;s=k;t=l;u=0;v=0;w=0;x=0;break a}}i=f[g>>2]|0;if(i>>>0<(f[j>>2]|0)>>>0){f[g>>2]=i+1;k=h[i>>0]|0;l=1;continue}else{k=sc(a)|0;l=1;continue}}if((m|0)==8){k=f[g>>2]|0;if(k>>>0<(f[j>>2]|0)>>>0){f[g>>2]=k+1;y=h[k>>0]|0}else y=sc(a)|0;if((y|0)==48){k=0;i=0;while(1){z=f[g>>2]|0;if(z>>>0<(f[j>>2]|0)>>>0){f[g>>2]=z+1;A=h[z>>0]|0}else A=sc(a)|0;z=Pd(k|0,i|0,-1,-1)|0;B=I;if((A|0)==48){k=z;i=B}else{n=1;o=0;p=1.0;q=0.0;r=0;s=A;t=1;u=B;v=0;w=0;x=z;break}}}else{n=1;o=0;p=1.0;q=0.0;r=0;s=y;t=l;u=0;v=0;w=0;x=0}}while(1){l=s+-48|0;y=(s|0)==46;if(l>>>0>=10?!(y|((s|32)+-97|0)>>>0<6):0){C=s;break}if(y)if(!n){D=1;E=o;F=p;G=q;H=r;J=t;K=w;L=v;M=w;N=v}else{C=46;break}else{y=(s|0)>57?(s|32)+-87|0:l;do if(!((v|0)<0|(v|0)==0&w>>>0<8))if((v|0)<0|(v|0)==0&w>>>0<14){O=p*.0625;P=o;Q=O;R=q+O*+(y|0);S=r;break}else{l=(o|0)!=0|(y|0)==0;P=l?o:1;Q=p;R=l?q:q+p*.5;S=r;break}else{P=o;Q=p;R=q;S=y+(r<<4)|0}while(0);y=Pd(w|0,v|0,1,0)|0;D=n;E=P;F=Q;G=R;H=S;J=1;K=x;L=u;M=y;N=I}y=f[g>>2]|0;if(y>>>0<(f[j>>2]|0)>>>0){f[g>>2]=y+1;n=D;o=E;p=F;q=G;r=H;s=h[y>>0]|0;t=J;u=L;v=N;w=M;x=K;continue}else{n=D;o=E;p=F;q=G;r=H;s=sc(a)|0;t=J;u=L;v=N;w=M;x=K;continue}}do if(!t){K=f[j>>2]|0;M=(K|0)!=0;if(M)f[g>>2]=(f[g>>2]|0)+-1;if(e){if(M)f[g>>2]=(f[g>>2]|0)+-1;if(!((n|0)==0|(K|0)==0))f[g>>2]=(f[g>>2]|0)+-1}else rc(a,0);T=+(d|0)*0.0}else{K=(n|0)==0;M=K?w:x;N=K?v:u;if((v|0)<0|(v|0)==0&w>>>0<8){K=r;L=w;J=v;while(1){s=K<<4;L=Pd(L|0,J|0,1,0)|0;J=I;if(!((J|0)<0|(J|0)==0&L>>>0<8)){U=s;break}else K=s}}else U=r;if((C|32|0)==112){K=bd(a,e)|0;L=I;if((K|0)==0&(L|0)==-2147483648){if(!e){rc(a,0);T=0.0;break}if(!(f[j>>2]|0)){V=0;W=0}else{f[g>>2]=(f[g>>2]|0)+-1;V=0;W=0}}else{V=K;W=L}}else if(!(f[j>>2]|0)){V=0;W=0}else{f[g>>2]=(f[g>>2]|0)+-1;V=0;W=0}L=Sd(M|0,N|0,2)|0;K=Pd(L|0,I|0,-32,-1)|0;L=Pd(K|0,I|0,V|0,W|0)|0;K=I;if(!U){T=+(d|0)*0.0;break}J=0-c|0;s=((J|0)<0)<<31>>31;if((K|0)>(s|0)|(K|0)==(s|0)&L>>>0>J>>>0){J=lc()|0;f[J>>2]=34;T=+(d|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}J=c+-106|0;s=((J|0)<0)<<31>>31;if((K|0)<(s|0)|(K|0)==(s|0)&L>>>0<J>>>0){J=lc()|0;f[J>>2]=34;T=+(d|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((U|0)>-1){G=q;J=U;s=L;H=K;while(1){E=!(G>=.5);o=J<<1|(E^1)&1;F=G+(E?G:G+-1.0);E=Pd(s|0,H|0,-1,-1)|0;D=I;if((o|0)>-1){G=F;J=o;s=E;H=D}else{X=F;Y=o;Z=E;_=D;break}}}else{X=q;Y=U;Z=L;_=K}H=((b|0)<0)<<31>>31;s=Od(32,0,c|0,((c|0)<0)<<31>>31|0)|0;J=Pd(s|0,I|0,Z|0,_|0)|0;s=I;if((H|0)>(s|0)|(H|0)==(s|0)&b>>>0>J>>>0)if((J|0)>0){$=J;m=59}else{aa=0;ba=84;m=61}else{$=b;m=59}if((m|0)==59)if(($|0)<53){aa=$;ba=84-$|0;m=61}else{ca=0.0;da=$;ea=+(d|0)}if((m|0)==61){G=+(d|0);ca=+dd(+cd(1.0,ba),G);da=aa;ea=G}J=(Y&1|0)==0&(X!=0.0&(da|0)<32);G=ea*(J?0.0:X)+(ca+ea*+(((J&1)+Y|0)>>>0))-ca;if(!(G!=0.0)){J=lc()|0;f[J>>2]=34}T=+fd(G,Z)}while(0);return +T}function ad(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,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,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,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0.0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0.0,kb=0.0,lb=0.0,mb=0.0,nb=0.0,ob=0.0,pb=0.0,qb=0.0,rb=0.0,sb=0.0,tb=0;i=u;u=u+512|0;j=i;k=d+c|0;l=0-k|0;m=a+4|0;n=a+100|0;o=b;b=0;a:while(1){switch(o|0){case 46:{p=6;break a;break}case 48:break;default:{q=0;r=o;s=b;t=0;v=0;break a}}w=f[m>>2]|0;if(w>>>0<(f[n>>2]|0)>>>0){f[m>>2]=w+1;o=h[w>>0]|0;b=1;continue}else{o=sc(a)|0;b=1;continue}}if((p|0)==6){o=f[m>>2]|0;if(o>>>0<(f[n>>2]|0)>>>0){f[m>>2]=o+1;x=h[o>>0]|0}else x=sc(a)|0;if((x|0)==48){o=0;w=0;while(1){y=Pd(o|0,w|0,-1,-1)|0;z=I;A=f[m>>2]|0;if(A>>>0<(f[n>>2]|0)>>>0){f[m>>2]=A+1;B=h[A>>0]|0}else B=sc(a)|0;if((B|0)==48){o=y;w=z}else{q=1;r=B;s=1;t=y;v=z;break}}}else{q=1;r=x;s=b;t=0;v=0}}f[j>>2]=0;b=r+-48|0;x=(r|0)==46;b:do if(x|b>>>0<10){B=j+496|0;w=0;o=0;z=0;y=q;A=s;C=r;D=x;E=b;F=t;G=v;H=0;J=0;c:while(1){do if(D)if(!y){L=w;M=o;N=1;O=z;P=A;Q=H;R=J;S=H;T=J}else break c;else{U=Pd(H|0,J|0,1,0)|0;V=I;W=(C|0)!=48;if((o|0)>=125){if(!W){L=w;M=o;N=y;O=z;P=A;Q=F;R=G;S=U;T=V;break}f[B>>2]=f[B>>2]|1;L=w;M=o;N=y;O=z;P=A;Q=F;R=G;S=U;T=V;break}Y=j+(o<<2)|0;if(!w)Z=E;else Z=C+-48+((f[Y>>2]|0)*10|0)|0;f[Y>>2]=Z;Y=w+1|0;_=(Y|0)==9;L=_?0:Y;M=(_&1)+o|0;N=y;O=W?U:z;P=1;Q=F;R=G;S=U;T=V}while(0);V=f[m>>2]|0;if(V>>>0<(f[n>>2]|0)>>>0){f[m>>2]=V+1;$=h[V>>0]|0}else $=sc(a)|0;E=$+-48|0;D=($|0)==46;if(!(D|E>>>0<10)){aa=L;ba=M;ca=O;da=N;ea=$;fa=P;ga=Q;ha=S;ia=R;ja=T;p=29;break b}else{w=L;o=M;z=O;y=N;A=P;C=$;F=Q;G=R;H=S;J=T}}ka=w;la=o;ma=z;na=H;oa=J;pa=F;qa=G;ra=(A|0)!=0;p=37}else{aa=0;ba=0;ca=0;da=q;ea=r;fa=s;ga=t;ha=0;ia=v;ja=0;p=29}while(0);do if((p|0)==29){v=(da|0)==0;t=v?ha:ga;s=v?ja:ia;v=(fa|0)!=0;if(!(v&(ea|32|0)==101))if((ea|0)>-1){ka=aa;la=ba;ma=ca;na=ha;oa=ja;pa=t;qa=s;ra=v;p=37;break}else{sa=aa;ta=ba;ua=ca;va=ha;wa=ja;xa=v;ya=t;za=s;p=39;break}v=bd(a,g)|0;r=I;if((v|0)==0&(r|0)==-2147483648){if(!g){rc(a,0);Aa=0.0;break}if(!(f[n>>2]|0)){Ba=0;Ca=0}else{f[m>>2]=(f[m>>2]|0)+-1;Ba=0;Ca=0}}else{Ba=v;Ca=r}r=Pd(Ba|0,Ca|0,t|0,s|0)|0;Da=aa;Ea=ba;Fa=ca;Ga=r;Ha=ha;Ia=I;Ja=ja;p=41}while(0);if((p|0)==37)if(f[n>>2]|0){f[m>>2]=(f[m>>2]|0)+-1;if(ra){Da=ka;Ea=la;Fa=ma;Ga=pa;Ha=na;Ia=qa;Ja=oa;p=41}else p=40}else{sa=ka;ta=la;ua=ma;va=na;wa=oa;xa=ra;ya=pa;za=qa;p=39}if((p|0)==39)if(xa){Da=sa;Ea=ta;Fa=ua;Ga=ya;Ha=va;Ia=za;Ja=wa;p=41}else p=40;do if((p|0)==40){wa=lc()|0;f[wa>>2]=22;rc(a,0);Aa=0.0}else if((p|0)==41){wa=f[j>>2]|0;if(!wa){Aa=+(e|0)*0.0;break}if(((Ja|0)<0|(Ja|0)==0&Ha>>>0<10)&((Ga|0)==(Ha|0)&(Ia|0)==(Ja|0))?(c|0)>30|(wa>>>c|0)==0:0){Aa=+(e|0)*+(wa>>>0);break}wa=(d|0)/-2|0;za=((wa|0)<0)<<31>>31;if((Ia|0)>(za|0)|(Ia|0)==(za|0)&Ga>>>0>wa>>>0){wa=lc()|0;f[wa>>2]=34;Aa=+(e|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}wa=d+-106|0;za=((wa|0)<0)<<31>>31;if((Ia|0)<(za|0)|(Ia|0)==(za|0)&Ga>>>0<wa>>>0){wa=lc()|0;f[wa>>2]=34;Aa=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(!Da)Ka=Ea;else{if((Da|0)<9){wa=j+(Ea<<2)|0;za=Da;va=f[wa>>2]|0;do{va=va*10|0;za=za+1|0}while((za|0)!=9);f[wa>>2]=va}Ka=Ea+1|0}if((Fa|0)<9?(Fa|0)<=(Ga|0)&(Ga|0)<18:0){za=f[j>>2]|0;if((Ga|0)==9){Aa=+(e|0)*+(za>>>0);break}if((Ga|0)<9){Aa=+(e|0)*+(za>>>0)/+(f[528+(8-Ga<<2)>>2]|0);break}A=c+27+(X(Ga,-3)|0)|0;if((A|0)>30|(za>>>A|0)==0){Aa=+(e|0)*+(za>>>0)*+(f[528+(Ga+-10<<2)>>2]|0);break}}za=(Ga|0)%9|0;if(!za){La=0;Ma=Ka;Na=0;Oa=Ga}else{A=(Ga|0)>-1?za:za+9|0;za=f[528+(8-A<<2)>>2]|0;if(Ka){G=1e9/(za|0)|0;F=0;J=0;H=Ga;z=0;do{o=j+(z<<2)|0;w=f[o>>2]|0;ya=((w>>>0)/(za>>>0)|0)+F|0;f[o>>2]=ya;F=X(G,(w>>>0)%(za>>>0)|0)|0;w=(z|0)==(J|0)&(ya|0)==0;H=w?H+-9|0:H;J=w?J+1&127:J;z=z+1|0}while((z|0)!=(Ka|0));if(!F){Pa=J;Qa=Ka;Ra=H}else{f[j+(Ka<<2)>>2]=F;Pa=J;Qa=Ka+1|0;Ra=H}}else{Pa=0;Qa=0;Ra=Ga}La=0;Ma=Qa;Na=Pa;Oa=9-A+Ra|0}d:while(1){z=(Oa|0)<18;za=(Oa|0)==18;G=j+(Na<<2)|0;va=La;wa=Ma;while(1){if(!z){if(!za){Sa=va;Ta=Na;Ua=Oa;Va=wa;break d}if((f[G>>2]|0)>>>0>=9007199){Sa=va;Ta=Na;Ua=18;Va=wa;break d}}w=0;Wa=wa;ya=wa+127|0;while(1){o=ya&127;ua=j+(o<<2)|0;ta=Sd(f[ua>>2]|0,0,29)|0;sa=Pd(ta|0,I|0,w|0,0)|0;ta=I;if(ta>>>0>0|(ta|0)==0&sa>>>0>1e9){xa=Vd(sa|0,ta|0,1e9,0)|0;qa=Zd(sa|0,ta|0,1e9,0)|0;Xa=xa;Ya=qa}else{Xa=0;Ya=sa}f[ua>>2]=Ya;ua=(o|0)==(Na|0);Wa=(Ya|0)==0&(((o|0)!=(Wa+127&127|0)|ua)^1)?o:Wa;if(ua)break;else{w=Xa;ya=o+-1|0}}va=va+-29|0;if(Xa|0)break;else wa=Wa}wa=Na+127&127;G=Wa+127&127;za=j+((Wa+126&127)<<2)|0;if((wa|0)==(Wa|0)){f[za>>2]=f[za>>2]|f[j+(G<<2)>>2];Za=G}else Za=Wa;f[j+(wa<<2)>>2]=Xa;La=va;Ma=Za;Na=wa;Oa=Oa+9|0}e:while(1){A=Va+1&127;H=j+((Va+127&127)<<2)|0;J=Sa;F=Ta;wa=Ua;while(1){G=(wa|0)==18;za=(wa|0)>27?9:1;_a=J;$a=F;while(1){z=0;while(1){ya=z+$a&127;if((ya|0)==(Va|0)){ab=2;p=88;break}w=f[j+(ya<<2)>>2]|0;ya=f[560+(z<<2)>>2]|0;if(w>>>0<ya>>>0){ab=2;p=88;break}if(w>>>0>ya>>>0)break;ya=z+1|0;if((ya|0)<2)z=ya;else{ab=ya;p=88;break}}if((p|0)==88?(p=0,G&(ab|0)==2):0){bb=0.0;cb=0;db=Va;break e}eb=za+_a|0;if(($a|0)==(Va|0)){_a=eb;$a=Va}else break}G=(1<<za)+-1|0;z=1e9>>>za;fb=0;gb=$a;hb=wa;ya=$a;do{w=j+(ya<<2)|0;o=f[w>>2]|0;ua=(o>>>za)+fb|0;f[w>>2]=ua;fb=X(o&G,z)|0;o=(ya|0)==(gb|0)&(ua|0)==0;hb=o?hb+-9|0:hb;gb=o?gb+1&127:gb;ya=ya+1&127}while((ya|0)!=(Va|0));if(!fb){J=eb;F=gb;wa=hb;continue}if((A|0)!=(gb|0))break;f[H>>2]=f[H>>2]|1;J=eb;F=gb;wa=hb}f[j+(Va<<2)>>2]=fb;Sa=eb;Ta=gb;Ua=hb;Va=A}while(1){wa=cb+$a&127;F=db+1&127;if((wa|0)==(db|0)){f[j+(F+-1<<2)>>2]=0;ib=F}else ib=db;bb=bb*1.0e9+ +((f[j+(wa<<2)>>2]|0)>>>0);cb=cb+1|0;if((cb|0)==2)break;else db=ib}jb=+(e|0);kb=jb*bb;wa=_a+53|0;F=wa-d|0;J=(F|0)<(c|0);H=J?((F|0)>0?F:0):c;if((H|0)<53){lb=+dd(+cd(1.0,105-H|0),kb);mb=+ed(kb,+cd(1.0,53-H|0));nb=lb;ob=mb;pb=lb+(kb-mb)}else{nb=0.0;ob=0.0;pb=kb}va=$a+2&127;if((va|0)!=(ib|0)){ya=f[j+(va<<2)>>2]|0;do if(ya>>>0>=5e8){if((ya|0)!=5e8){qb=jb*.75+ob;break}if(($a+3&127|0)==(ib|0)){qb=jb*.5+ob;break}else{qb=jb*.75+ob;break}}else{if((ya|0)==0?($a+3&127|0)==(ib|0):0){qb=ob;break}qb=jb*.25+ob}while(0);if((53-H|0)>1?!(+ed(qb,1.0)!=0.0):0)rb=qb+1.0;else rb=qb}else rb=ob;jb=pb+rb-nb;do if((wa&2147483647|0)>(-2-k|0)){ya=!(+K(+jb)>=9007199254740992.0);va=((ya^1)&1)+_a|0;kb=ya?jb:jb*.5;if((va+50|0)<=(l|0)?!(rb!=0.0&(J&((H|0)!=(F|0)|ya))):0){sb=kb;tb=va;break}ya=lc()|0;f[ya>>2]=34;sb=kb;tb=va}else{sb=jb;tb=_a}while(0);Aa=+fd(sb,tb)}while(0);u=i;return +Aa}function bd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c=a+4|0;d=f[c>>2]|0;e=a+100|0;if(d>>>0<(f[e>>2]|0)>>>0){f[c>>2]=d+1;g=h[d>>0]|0}else g=sc(a)|0;switch(g|0){case 43:case 45:{d=(g|0)==45&1;i=f[c>>2]|0;if(i>>>0<(f[e>>2]|0)>>>0){f[c>>2]=i+1;j=h[i>>0]|0}else j=sc(a)|0;if((b|0)!=0&(j+-48|0)>>>0>9?(f[e>>2]|0)!=0:0){f[c>>2]=(f[c>>2]|0)+-1;k=d;l=j}else{k=d;l=j}break}default:{k=0;l=g}}if((l+-48|0)>>>0>9)if(!(f[e>>2]|0)){m=-2147483648;n=0}else{f[c>>2]=(f[c>>2]|0)+-1;m=-2147483648;n=0}else{g=0;j=l;while(1){g=j+-48+(g*10|0)|0;l=f[c>>2]|0;if(l>>>0<(f[e>>2]|0)>>>0){f[c>>2]=l+1;o=h[l>>0]|0}else o=sc(a)|0;if(!((o+-48|0)>>>0<10&(g|0)<214748364))break;else j=o}j=((g|0)<0)<<31>>31;if((o+-48|0)>>>0<10){l=o;d=g;b=j;while(1){i=Xd(d|0,b|0,10,0)|0;p=I;q=Pd(l|0,((l|0)<0)<<31>>31|0,-48,-1)|0;r=Pd(q|0,I|0,i|0,p|0)|0;p=I;i=f[c>>2]|0;if(i>>>0<(f[e>>2]|0)>>>0){f[c>>2]=i+1;s=h[i>>0]|0}else s=sc(a)|0;if((s+-48|0)>>>0<10&((p|0)<21474836|(p|0)==21474836&r>>>0<2061584302)){l=s;d=r;b=p}else{t=s;u=r;v=p;break}}}else{t=o;u=g;v=j}j=f[e>>2]|0;if((t+-48|0)>>>0<10){t=j;while(1){g=f[c>>2]|0;if(g>>>0<t>>>0){f[c>>2]=g+1;w=h[g>>0]|0;x=t}else{g=sc(a)|0;w=g;x=f[e>>2]|0}if((w+-48|0)>>>0<10)t=x;else{y=x;break}}}else y=j;if(y|0)f[c>>2]=(f[c>>2]|0)+-1;c=(k|0)!=0;k=Od(0,0,u|0,v|0)|0;m=c?I:v;n=c?k:u}I=m;return n|0}function cd(a,b){a=+a;b=b|0;var c=0.0,d=0,e=0,g=0,h=0.0,i=0;if((b|0)<=1023)if((b|0)<-1022){c=a*2.2250738585072014e-308;d=b+1022|0;e=(d|0)<-1022;g=b+2044|0;h=e?c*2.2250738585072014e-308:c;i=e?((g|0)>-1022?g:-1022):d}else{h=a;i=b}else{c=a*8988465674311579538646525.0e283;d=b+-1023|0;g=(d|0)>1023;e=b+-2046|0;h=g?c*8988465674311579538646525.0e283:c;i=g?((e|0)<1023?e:1023):d}d=Sd(i+1023|0,0,52)|0;i=I;f[s>>2]=d;f[s+4>>2]=i;return +(h*+p[s>>3])}function dd(a,b){a=+a;b=+b;return +(+qc(a,b))}function ed(a,b){a=+a;b=+b;return +(+gd(a,b))}function fd(a,b){a=+a;b=b|0;return +(+cd(a,b))}function gd(a,b){a=+a;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=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,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;p[s>>3]=b;e=f[s>>2]|0;g=f[s+4>>2]|0;h=Rd(c|0,d|0,52)|0;i=h&2047;h=Rd(e|0,g|0,52)|0;j=h&2047;h=d&-2147483648;k=Sd(e|0,g|0,1)|0;l=I;a:do if(!((k|0)==0&(l|0)==0)?(m=hd(b)|0,n=I&2147483647,!((i|0)==2047|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0))):0){m=Sd(c|0,d|0,1)|0;n=I;if(!(n>>>0>l>>>0|(n|0)==(l|0)&m>>>0>k>>>0))return +((m|0)==(k|0)&(n|0)==(l|0)?a*0.0:a);if(!i){n=Sd(c|0,d|0,12)|0;m=I;if((m|0)>-1|(m|0)==-1&n>>>0>4294967295){o=0;q=n;n=m;while(1){m=o+-1|0;q=Sd(q|0,n|0,1)|0;n=I;if(!((n|0)>-1|(n|0)==-1&q>>>0>4294967295)){r=m;break}else o=m}}else r=0;o=Sd(c|0,d|0,1-r|0)|0;t=r;u=o;v=I}else{t=i;u=c;v=d&1048575|1048576}if(!j){o=Sd(e|0,g|0,12)|0;q=I;if((q|0)>-1|(q|0)==-1&o>>>0>4294967295){n=0;m=o;o=q;while(1){q=n+-1|0;m=Sd(m|0,o|0,1)|0;o=I;if(!((o|0)>-1|(o|0)==-1&m>>>0>4294967295)){w=q;break}else n=q}}else w=0;n=Sd(e|0,g|0,1-w|0)|0;x=w;y=n;z=I}else{x=j;y=e;z=g&1048575|1048576}n=Od(u|0,v|0,y|0,z|0)|0;m=I;o=(m|0)>-1|(m|0)==-1&n>>>0>4294967295;b:do if((t|0)>(x|0)){q=t;A=m;B=o;C=u;D=v;E=n;while(1){if(B)if((E|0)==0&(A|0)==0)break;else{F=E;G=A}else{F=C;G=D}H=Sd(F|0,G|0,1)|0;J=I;K=q+-1|0;L=Od(H|0,J|0,y|0,z|0)|0;M=I;N=(M|0)>-1|(M|0)==-1&L>>>0>4294967295;if((K|0)>(x|0)){q=K;A=M;B=N;C=H;D=J;E=L}else{O=K;P=N;Q=L;R=M;S=H;T=J;break b}}U=a*0.0;break a}else{O=t;P=o;Q=n;R=m;S=u;T=v}while(0);if(P)if((Q|0)==0&(R|0)==0){U=a*0.0;break}else{V=R;W=Q}else{V=T;W=S}if(V>>>0<1048576|(V|0)==1048576&W>>>0<0){m=O;n=W;o=V;while(1){E=Sd(n|0,o|0,1)|0;D=I;C=m+-1|0;if(D>>>0<1048576|(D|0)==1048576&E>>>0<0){m=C;n=E;o=D}else{X=C;Y=E;Z=D;break}}}else{X=O;Y=W;Z=V}if((X|0)>0){o=Pd(Y|0,Z|0,0,-1048576)|0;n=I;m=Sd(X|0,0,52)|0;_=n|I;$=o|m}else{m=Rd(Y|0,Z|0,1-X|0)|0;_=I;$=m}f[s>>2]=$;f[s+4>>2]=_|h;U=+p[s>>3]}else aa=3;while(0);if((aa|0)==3){ba=a*b;U=ba/ba}return +U}function hd(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function id(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=u;u=u+208|0;g=e+8|0;h=e;i=X(c,b)|0;b=h;f[b>>2]=1;f[b+4>>2]=0;a:do if(i|0){b=0-c|0;f[g+4>>2]=c;f[g>>2]=c;j=2;k=c;l=c;while(1){m=k+c+l|0;f[g+(j<<2)>>2]=m;if(m>>>0<i>>>0){n=l;j=j+1|0;l=m;k=n}else break}k=a+i+b|0;if(k>>>0>a>>>0){l=k;j=1;n=a;m=1;while(1){do if((m&3|0)!=3){o=j+-1|0;if((f[g+(o<<2)>>2]|0)>>>0<(l-n|0)>>>0)jd(n,c,d,j,g);else ld(n,c,d,h,j,0,g);if((j|0)==1){md(h,1);p=0;break}else{md(h,o);p=1;break}}else{jd(n,c,d,j,g);kd(h,2);p=j+2|0}while(0);o=f[h>>2]|1;f[h>>2]=o;q=n+c|0;if(q>>>0<k>>>0){j=p;n=q;m=o}else{r=p;s=q;t=o;break}}}else{r=1;s=a;t=1}ld(s,c,d,h,r,0,g);m=h+4|0;n=s;j=r;k=t;while(1){if((j|0)==1&(k|0)==1){if(!(f[m>>2]|0))break a}else if((j|0)>=2){md(h,2);l=j+-2|0;f[h>>2]=f[h>>2]^7;kd(h,1);ld(n+(0-(f[g+(l<<2)>>2]|0))+b|0,c,d,h,j+-1|0,1,g);md(h,1);o=f[h>>2]|1;f[h>>2]=o;q=n+b|0;ld(q,c,d,h,l,1,g);n=q;j=l;k=o;continue}o=nd(h)|0;kd(h,o);n=n+b|0;j=o+j|0;k=f[h>>2]|0}}while(0);u=e;return}function jd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;g=u;u=u+240|0;h=g;f[h>>2]=a;a:do if((d|0)>1){i=0-b|0;j=a;k=d;l=1;m=a;while(1){n=j+i|0;o=k+-2|0;p=n+(0-(f[e+(o<<2)>>2]|0))|0;if((Qa[c&63](m,p)|0)>-1?(Qa[c&63](m,n)|0)>-1:0){q=l;break a}r=l+1|0;s=h+(l<<2)|0;if((Qa[c&63](p,n)|0)>-1){f[s>>2]=p;t=p;v=k+-1|0}else{f[s>>2]=n;t=n;v=o}if((v|0)<=1){q=r;break a}j=t;k=v;l=r;m=f[h>>2]|0}}else q=1;while(0);pd(b,h,q);u=g;return}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=a+4|0;if(b>>>0>31){d=f[c>>2]|0;f[a>>2]=d;f[c>>2]=0;e=b+-32|0;g=0;h=d}else{e=b;g=f[c>>2]|0;h=f[a>>2]|0}f[a>>2]=g<<32-e|h>>>e;f[c>>2]=g>>>e;return}function ld(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;i=u;u=u+240|0;j=i+232|0;k=i;l=f[d>>2]|0;f[j>>2]=l;m=f[d+4>>2]|0;d=j+4|0;f[d>>2]=m;f[k>>2]=a;a:do if((l|0)!=1|(m|0)!=0?(n=0-b|0,o=a+(0-(f[h+(e<<2)>>2]|0))|0,(Qa[c&63](o,a)|0)>=1):0){p=1;q=e;r=(g|0)==0;s=a;t=o;while(1){if(r&(q|0)>1){o=s+n|0;v=f[h+(q+-2<<2)>>2]|0;if((Qa[c&63](o,t)|0)>-1){w=p;x=q;y=s;z=10;break a}if((Qa[c&63](o+(0-v)|0,t)|0)>-1){w=p;x=q;y=s;z=10;break a}}v=p+1|0;f[k+(p<<2)>>2]=t;o=nd(j)|0;kd(j,o);A=o+q|0;if(!((f[j>>2]|0)!=1|(f[d>>2]|0)!=0)){w=v;x=A;y=t;z=10;break a}o=t+(0-(f[h+(A<<2)>>2]|0))|0;if((Qa[c&63](o,f[k>>2]|0)|0)<1){B=t;C=v;D=A;E=0;z=9;break}else{F=t;p=v;q=A;r=1;t=o;s=F}}}else{B=a;C=1;D=e;E=g;z=9}while(0);if((z|0)==9?(E|0)==0:0){w=C;x=D;y=B;z=10}if((z|0)==10){pd(b,k,w);jd(y,b,c,x,h)}u=i;return}function md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=a+4|0;if(b>>>0>31){d=f[a>>2]|0;f[c>>2]=d;f[a>>2]=0;e=b+-32|0;g=0;h=d}else{e=b;g=f[a>>2]|0;h=f[c>>2]|0}f[c>>2]=g>>>(32-e|0)|h<<e;f[a>>2]=g<<e;return}function nd(a){a=a|0;var b=0,c=0;b=od((f[a>>2]|0)+-1|0)|0;if(!b){c=od(f[a+4>>2]|0)|0;return ((c|0)==0?0:c+32|0)|0}else return b|0;return 0}function od(a){a=a|0;var b=0,c=0,d=0;if(a)if(!(a&1)){b=a;a=0;while(1){c=a+1|0;b=b>>>1;if(b&1|0){d=c;break}else a=c}}else d=0;else d=32;return d|0}function pd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=u;u=u+256|0;e=d;a:do if((c|0)>=2?(g=b+(c<<2)|0,f[g>>2]=e,a|0):0){h=a;i=e;while(1){j=h>>>0<256?h:256;_d(i|0,f[b>>2]|0,j|0)|0;k=0;do{l=b+(k<<2)|0;k=k+1|0;_d(f[l>>2]|0,f[b+(k<<2)>>2]|0,j|0)|0;f[l>>2]=(f[l>>2]|0)+j}while((k|0)!=(c|0));k=h-j|0;if(!k)break a;h=k;i=f[g>>2]|0}}while(0);u=d;return}function qd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=Ic(a,b,e)|0;u=d;return c|0}function rd(a){a=a|0;var b=0,c=0,d=0;b=(Ac(a)|0)+1|0;c=Hd(b)|0;if(!c)d=0;else{_d(c|0,a|0,b|0)|0;d=c}return d|0}function sd(a,b){a=+a;b=+b;var c=0,d=0,e=0.0;c=td(a)|0;do if((c&2147483647)>>>0<=2139095040){d=td(b)|0;if((d&2147483647)>>>0<=2139095040)if((d^c|0)<0){e=(c|0)<0?b:a;break}else{e=a<b?b:a;break}else e=a}else e=b;while(0);return +e}function td(a){a=+a;return (n[s>>2]=a,f[s>>2]|0)|0}function ud(a,b){a=+a;b=+b;var c=0,d=0,e=0.0;c=vd(a)|0;do if((c&2147483647)>>>0<=2139095040){d=vd(b)|0;if((d&2147483647)>>>0<=2139095040)if((d^c|0)<0){e=(c|0)<0?a:b;break}else{e=a<b?a:b;break}else e=a}else e=b;while(0);return +e}function vd(a){a=+a;return (n[s>>2]=a,f[s>>2]|0)|0}function wd(a,b){a=a|0;b=b|0;return +(+xd(a,b,1))}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0;d=u;u=u+128|0;e=d;g=e;h=g+124|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));g=e+4|0;f[g>>2]=a;h=e+8|0;f[h>>2]=-1;f[e+44>>2]=a;f[e+76>>2]=-1;rc(e,0);i=+_c(e,c,1);c=(f[g>>2]|0)-(f[h>>2]|0)+(f[e+108>>2]|0)|0;if(b|0)f[b>>2]=c|0?a+c|0:a;u=d;return +i}function yd(){ua(4460);return 4468}function zd(){Ca(4460);return}function Ad(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;do if(a){if((f[a+76>>2]|0)<=-1){b=Bd(a)|0;break}c=(Kc(a)|0)==0;d=Bd(a)|0;if(c)b=d;else{Lc(a);b=d}}else{if(!(f[131]|0))e=0;else e=Ad(f[131]|0)|0;d=yd()|0;c=f[d>>2]|0;if(!c)g=e;else{d=c;c=e;while(1){if((f[d+76>>2]|0)>-1)h=Kc(d)|0;else h=0;if((f[d+20>>2]|0)>>>0>(f[d+28>>2]|0)>>>0)i=Bd(d)|0|c;else i=c;if(h|0)Lc(d);d=f[d+56>>2]|0;if(!d){g=i;break}else c=i}}zd();b=g}while(0);return b|0}function Bd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=a+20|0;c=a+28|0;if((f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0?(Ma[f[a+36>>2]&63](a,0,0)|0,(f[b>>2]|0)==0):0)d=-1;else{e=a+4|0;g=f[e>>2]|0;h=a+8|0;i=f[h>>2]|0;if(g>>>0<i>>>0)Ma[f[a+40>>2]&63](a,g-i|0,1)|0;f[a+16>>2]=0;f[c>>2]=0;f[b>>2]=0;f[h>>2]=0;f[e>>2]=0;d=0}return d|0}function Cd(a,b){a=a|0;b=b|0;var c=0;c=Ac(a)|0;return ((Dd(a,1,c,b)|0)!=(c|0))<<31>>31|0}function Dd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=X(c,b)|0;g=(b|0)==0?0:c;if((f[d+76>>2]|0)>-1){c=(Kc(d)|0)==0;h=Yc(a,e,d)|0;if(c)i=h;else{Lc(d);i=h}}else i=Yc(a,e,d)|0;if((i|0)==(e|0))j=g;else j=(i>>>0)/(b>>>0)|0;return j|0}function Ed(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=u;u=u+16|0;e=d;g=c&255;b[e>>0]=g;i=a+16|0;j=f[i>>2]|0;if(!j)if(!(Zc(a)|0)){k=f[i>>2]|0;l=4}else m=-1;else{k=j;l=4}do if((l|0)==4){j=a+20|0;i=f[j>>2]|0;if(i>>>0<k>>>0?(n=c&255,(n|0)!=(b[a+75>>0]|0)):0){f[j>>2]=i+1;b[i>>0]=g;m=n;break}if((Ma[f[a+36>>2]&63](a,e,1)|0)==1)m=h[e>>0]|0;else m=-1}while(0);u=d;return m|0}function Fd(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=Ic(f[99]|0,a,d)|0;u=c;return b|0}function Gd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[99]|0;if((f[c+76>>2]|0)>-1)d=Kc(c)|0;else d=0;do if((Cd(a,c)|0)<0)e=1;else{if((b[c+75>>0]|0)!=10?(g=c+20|0,h=f[g>>2]|0,h>>>0<(f[c+16>>2]|0)>>>0):0){f[g>>2]=h+1;b[h>>0]=10;e=0;break}e=(Ed(c,10)|0)<0}while(0);if(d|0)Lc(c);return e<<31>>31|0}function Hd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0;b=u;u=u+16|0;c=b;do if(a>>>0<245){d=a>>>0<11?16:a+11&-8;e=d>>>3;g=f[1118]|0;h=g>>>e;if(h&3|0){i=(h&1^1)+e|0;j=4512+(i<<1<<2)|0;k=j+8|0;l=f[k>>2]|0;m=l+8|0;n=f[m>>2]|0;do if((j|0)!=(n|0)){if(n>>>0<(f[1122]|0)>>>0)Da();o=n+12|0;if((f[o>>2]|0)==(l|0)){f[o>>2]=j;f[k>>2]=n;break}else Da()}else f[1118]=g&~(1<<i);while(0);n=i<<3;f[l+4>>2]=n|3;k=l+n+4|0;f[k>>2]=f[k>>2]|1;p=m;u=b;return p|0}k=f[1120]|0;if(d>>>0>k>>>0){if(h|0){n=2<<e;j=h<<e&(n|0-n);n=(j&0-j)+-1|0;j=n>>>12&16;o=n>>>j;n=o>>>5&8;q=o>>>n;o=q>>>2&4;r=q>>>o;q=r>>>1&2;s=r>>>q;r=s>>>1&1;t=(n|j|o|q|r)+(s>>>r)|0;r=4512+(t<<1<<2)|0;s=r+8|0;q=f[s>>2]|0;o=q+8|0;j=f[o>>2]|0;do if((r|0)!=(j|0)){if(j>>>0<(f[1122]|0)>>>0)Da();n=j+12|0;if((f[n>>2]|0)==(q|0)){f[n>>2]=r;f[s>>2]=j;v=g;break}else Da()}else{n=g&~(1<<t);f[1118]=n;v=n}while(0);j=(t<<3)-d|0;f[q+4>>2]=d|3;s=q+d|0;f[s+4>>2]=j|1;f[s+j>>2]=j;if(k|0){r=f[1123]|0;e=k>>>3;h=4512+(e<<1<<2)|0;m=1<<e;if(v&m){e=h+8|0;l=f[e>>2]|0;if(l>>>0<(f[1122]|0)>>>0)Da();else{w=l;x=e}}else{f[1118]=v|m;w=h;x=h+8|0}f[x>>2]=r;f[w+12>>2]=r;f[r+8>>2]=w;f[r+12>>2]=h}f[1120]=j;f[1123]=s;p=o;u=b;return p|0}s=f[1119]|0;if(s){j=(s&0-s)+-1|0;h=j>>>12&16;r=j>>>h;j=r>>>5&8;m=r>>>j;r=m>>>2&4;e=m>>>r;m=e>>>1&2;l=e>>>m;e=l>>>1&1;i=f[4776+((j|h|r|m|e)+(l>>>e)<<2)>>2]|0;e=(f[i+4>>2]&-8)-d|0;l=f[i+16+(((f[i+16>>2]|0)==0&1)<<2)>>2]|0;if(!l){y=i;z=e}else{m=i;i=e;e=l;while(1){l=(f[e+4>>2]&-8)-d|0;r=l>>>0<i>>>0;h=r?l:i;l=r?e:m;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){y=l;z=h;break}else{m=l;i=h}}}i=f[1122]|0;if(y>>>0<i>>>0)Da();m=y+d|0;if(y>>>0>=m>>>0)Da();e=f[y+24>>2]|0;o=f[y+12>>2]|0;do if((o|0)==(y|0)){q=y+20|0;t=f[q>>2]|0;if(!t){h=y+16|0;l=f[h>>2]|0;if(!l){A=0;break}else{B=l;C=h}}else{B=t;C=q}while(1){q=B+20|0;t=f[q>>2]|0;if(t|0){B=t;C=q;continue}q=B+16|0;t=f[q>>2]|0;if(!t)break;else{B=t;C=q}}if(C>>>0<i>>>0)Da();else{f[C>>2]=0;A=B;break}}else{q=f[y+8>>2]|0;if(q>>>0<i>>>0)Da();t=q+12|0;if((f[t>>2]|0)!=(y|0))Da();h=o+8|0;if((f[h>>2]|0)==(y|0)){f[t>>2]=o;f[h>>2]=q;A=o;break}else Da()}while(0);a:do if(e|0){o=f[y+28>>2]|0;i=4776+(o<<2)|0;do if((y|0)==(f[i>>2]|0)){f[i>>2]=A;if(!A){f[1119]=s&~(1<<o);break a}}else if(e>>>0>=(f[1122]|0)>>>0){f[e+16+(((f[e+16>>2]|0)!=(y|0)&1)<<2)>>2]=A;if(!A)break a;else break}else Da();while(0);o=f[1122]|0;if(A>>>0<o>>>0)Da();f[A+24>>2]=e;i=f[y+16>>2]|0;do if(i|0)if(i>>>0<o>>>0)Da();else{f[A+16>>2]=i;f[i+24>>2]=A;break}while(0);i=f[y+20>>2]|0;if(i|0)if(i>>>0<(f[1122]|0)>>>0)Da();else{f[A+20>>2]=i;f[i+24>>2]=A;break}}while(0);if(z>>>0<16){e=z+d|0;f[y+4>>2]=e|3;s=y+e+4|0;f[s>>2]=f[s>>2]|1}else{f[y+4>>2]=d|3;f[m+4>>2]=z|1;f[m+z>>2]=z;if(k|0){s=f[1123]|0;e=k>>>3;i=4512+(e<<1<<2)|0;o=1<<e;if(g&o){e=i+8|0;q=f[e>>2]|0;if(q>>>0<(f[1122]|0)>>>0)Da();else{D=q;E=e}}else{f[1118]=g|o;D=i;E=i+8|0}f[E>>2]=s;f[D+12>>2]=s;f[s+8>>2]=D;f[s+12>>2]=i}f[1120]=z;f[1123]=m}p=y+8|0;u=b;return p|0}else F=d}else F=d}else if(a>>>0<=4294967231){i=a+11|0;s=i&-8;o=f[1119]|0;if(o){e=0-s|0;q=i>>>8;if(q)if(s>>>0>16777215)G=31;else{i=(q+1048320|0)>>>16&8;h=q<<i;q=(h+520192|0)>>>16&4;t=h<<q;h=(t+245760|0)>>>16&2;l=14-(q|i|h)+(t<<h>>>15)|0;G=s>>>(l+7|0)&1|l<<1}else G=0;l=f[4776+(G<<2)>>2]|0;b:do if(!l){H=0;I=0;J=e;K=81}else{h=0;t=e;i=l;q=s<<((G|0)==31?0:25-(G>>>1)|0);r=0;while(1){j=(f[i+4>>2]&-8)-s|0;if(j>>>0<t>>>0)if(!j){L=i;M=0;N=i;K=85;break b}else{O=i;P=j}else{O=h;P=t}j=f[i+20>>2]|0;i=f[i+16+(q>>>31<<2)>>2]|0;n=(j|0)==0|(j|0)==(i|0)?r:j;j=(i|0)==0;if(j){H=n;I=O;J=P;K=81;break}else{h=O;t=P;q=q<<((j^1)&1);r=n}}}while(0);if((K|0)==81){if((H|0)==0&(I|0)==0){l=2<<G;e=o&(l|0-l);if(!e){F=s;break}l=(e&0-e)+-1|0;e=l>>>12&16;d=l>>>e;l=d>>>5&8;m=d>>>l;d=m>>>2&4;g=m>>>d;m=g>>>1&2;k=g>>>m;g=k>>>1&1;Q=0;R=f[4776+((l|e|d|m|g)+(k>>>g)<<2)>>2]|0}else{Q=I;R=H}if(!R){S=Q;T=J}else{L=Q;M=J;N=R;K=85}}if((K|0)==85)while(1){K=0;g=(f[N+4>>2]&-8)-s|0;k=g>>>0<M>>>0;m=k?g:M;g=k?N:L;N=f[N+16+(((f[N+16>>2]|0)==0&1)<<2)>>2]|0;if(!N){S=g;T=m;break}else{L=g;M=m;K=85}}if((S|0)!=0?T>>>0<((f[1120]|0)-s|0)>>>0:0){m=f[1122]|0;if(S>>>0<m>>>0)Da();g=S+s|0;if(S>>>0>=g>>>0)Da();k=f[S+24>>2]|0;d=f[S+12>>2]|0;do if((d|0)==(S|0)){e=S+20|0;l=f[e>>2]|0;if(!l){r=S+16|0;q=f[r>>2]|0;if(!q){U=0;break}else{V=q;W=r}}else{V=l;W=e}while(1){e=V+20|0;l=f[e>>2]|0;if(l|0){V=l;W=e;continue}e=V+16|0;l=f[e>>2]|0;if(!l)break;else{V=l;W=e}}if(W>>>0<m>>>0)Da();else{f[W>>2]=0;U=V;break}}else{e=f[S+8>>2]|0;if(e>>>0<m>>>0)Da();l=e+12|0;if((f[l>>2]|0)!=(S|0))Da();r=d+8|0;if((f[r>>2]|0)==(S|0)){f[l>>2]=d;f[r>>2]=e;U=d;break}else Da()}while(0);c:do if(k){d=f[S+28>>2]|0;m=4776+(d<<2)|0;do if((S|0)==(f[m>>2]|0)){f[m>>2]=U;if(!U){e=o&~(1<<d);f[1119]=e;X=e;break c}}else if(k>>>0>=(f[1122]|0)>>>0){f[k+16+(((f[k+16>>2]|0)!=(S|0)&1)<<2)>>2]=U;if(!U){X=o;break c}else break}else Da();while(0);d=f[1122]|0;if(U>>>0<d>>>0)Da();f[U+24>>2]=k;m=f[S+16>>2]|0;do if(m|0)if(m>>>0<d>>>0)Da();else{f[U+16>>2]=m;f[m+24>>2]=U;break}while(0);m=f[S+20>>2]|0;if(m)if(m>>>0<(f[1122]|0)>>>0)Da();else{f[U+20>>2]=m;f[m+24>>2]=U;X=o;break}else X=o}else X=o;while(0);do if(T>>>0>=16){f[S+4>>2]=s|3;f[g+4>>2]=T|1;f[g+T>>2]=T;o=T>>>3;if(T>>>0<256){k=4512+(o<<1<<2)|0;m=f[1118]|0;d=1<<o;if(m&d){o=k+8|0;e=f[o>>2]|0;if(e>>>0<(f[1122]|0)>>>0)Da();else{Y=e;Z=o}}else{f[1118]=m|d;Y=k;Z=k+8|0}f[Z>>2]=g;f[Y+12>>2]=g;f[g+8>>2]=Y;f[g+12>>2]=k;break}k=T>>>8;if(k)if(T>>>0>16777215)_=31;else{d=(k+1048320|0)>>>16&8;m=k<<d;k=(m+520192|0)>>>16&4;o=m<<k;m=(o+245760|0)>>>16&2;e=14-(k|d|m)+(o<<m>>>15)|0;_=T>>>(e+7|0)&1|e<<1}else _=0;e=4776+(_<<2)|0;f[g+28>>2]=_;m=g+16|0;f[m+4>>2]=0;f[m>>2]=0;m=1<<_;if(!(X&m)){f[1119]=X|m;f[e>>2]=g;f[g+24>>2]=e;f[g+12>>2]=g;f[g+8>>2]=g;break}m=T<<((_|0)==31?0:25-(_>>>1)|0);o=f[e>>2]|0;while(1){if((f[o+4>>2]&-8|0)==(T|0)){K=139;break}$=o+16+(m>>>31<<2)|0;e=f[$>>2]|0;if(!e){K=136;break}else{m=m<<1;o=e}}if((K|0)==136)if($>>>0<(f[1122]|0)>>>0)Da();else{f[$>>2]=g;f[g+24>>2]=o;f[g+12>>2]=g;f[g+8>>2]=g;break}else if((K|0)==139){m=o+8|0;e=f[m>>2]|0;d=f[1122]|0;if(e>>>0>=d>>>0&o>>>0>=d>>>0){f[e+12>>2]=g;f[m>>2]=g;f[g+8>>2]=e;f[g+12>>2]=o;f[g+24>>2]=0;break}else Da()}}else{e=T+s|0;f[S+4>>2]=e|3;m=S+e+4|0;f[m>>2]=f[m>>2]|1}while(0);p=S+8|0;u=b;return p|0}else F=s}else F=s}else F=-1;while(0);S=f[1120]|0;if(S>>>0>=F>>>0){T=S-F|0;$=f[1123]|0;if(T>>>0>15){_=$+F|0;f[1123]=_;f[1120]=T;f[_+4>>2]=T|1;f[_+T>>2]=T;f[$+4>>2]=F|3}else{f[1120]=0;f[1123]=0;f[$+4>>2]=S|3;T=$+S+4|0;f[T>>2]=f[T>>2]|1}p=$+8|0;u=b;return p|0}$=f[1121]|0;if($>>>0>F>>>0){T=$-F|0;f[1121]=T;S=f[1124]|0;_=S+F|0;f[1124]=_;f[_+4>>2]=T|1;f[S+4>>2]=F|3;p=S+8|0;u=b;return p|0}if(!(f[1236]|0)){f[1238]=4096;f[1237]=4096;f[1239]=-1;f[1240]=-1;f[1241]=0;f[1229]=0;S=c&-16^1431655768;f[c>>2]=S;f[1236]=S;aa=4096}else aa=f[1238]|0;S=F+48|0;c=F+47|0;T=aa+c|0;_=0-aa|0;aa=T&_;if(aa>>>0<=F>>>0){p=0;u=b;return p|0}X=f[1228]|0;if(X|0?(Y=f[1226]|0,Z=Y+aa|0,Z>>>0<=Y>>>0|Z>>>0>X>>>0):0){p=0;u=b;return p|0}d:do if(!(f[1229]&4)){X=f[1124]|0;e:do if(X){Z=4920;while(1){Y=f[Z>>2]|0;if(Y>>>0<=X>>>0?(ba=Z+4|0,(Y+(f[ba>>2]|0)|0)>>>0>X>>>0):0)break;Y=f[Z+8>>2]|0;if(!Y){K=163;break e}else Z=Y}o=T-$&_;if(o>>>0<2147483647){Y=Yd(o|0)|0;if((Y|0)==((f[Z>>2]|0)+(f[ba>>2]|0)|0))if((Y|0)==(-1|0))ca=o;else{da=o;ea=Y;K=180;break d}else{fa=Y;ga=o;K=171}}else ca=0}else K=163;while(0);do if((K|0)==163){X=Yd(0)|0;if((X|0)!=(-1|0)?(s=X,o=f[1237]|0,Y=o+-1|0,U=((Y&s|0)==0?0:(Y+s&0-o)-s|0)+aa|0,s=f[1226]|0,o=U+s|0,U>>>0>F>>>0&U>>>0<2147483647):0){Y=f[1228]|0;if(Y|0?o>>>0<=s>>>0|o>>>0>Y>>>0:0){ca=0;break}Y=Yd(U|0)|0;if((Y|0)==(X|0)){da=U;ea=X;K=180;break d}else{fa=Y;ga=U;K=171}}else ca=0}while(0);do if((K|0)==171){U=0-ga|0;if(!(S>>>0>ga>>>0&(ga>>>0<2147483647&(fa|0)!=(-1|0))))if((fa|0)==(-1|0)){ca=0;break}else{da=ga;ea=fa;K=180;break d}Y=f[1238]|0;X=c-ga+Y&0-Y;if(X>>>0>=2147483647){da=ga;ea=fa;K=180;break d}if((Yd(X|0)|0)==(-1|0)){Yd(U|0)|0;ca=0;break}else{da=X+ga|0;ea=fa;K=180;break d}}while(0);f[1229]=f[1229]|4;ha=ca;K=178}else{ha=0;K=178}while(0);if(((K|0)==178?aa>>>0<2147483647:0)?(ca=Yd(aa|0)|0,aa=Yd(0)|0,fa=aa-ca|0,ga=fa>>>0>(F+40|0)>>>0,!((ca|0)==(-1|0)|ga^1|ca>>>0<aa>>>0&((ca|0)!=(-1|0)&(aa|0)!=(-1|0))^1)):0){da=ga?fa:ha;ea=ca;K=180}if((K|0)==180){ca=(f[1226]|0)+da|0;f[1226]=ca;if(ca>>>0>(f[1227]|0)>>>0)f[1227]=ca;ca=f[1124]|0;do if(ca){ha=4920;while(1){ia=f[ha>>2]|0;ja=ha+4|0;ka=f[ja>>2]|0;if((ea|0)==(ia+ka|0)){K=190;break}fa=f[ha+8>>2]|0;if(!fa)break;else ha=fa}if(((K|0)==190?(f[ha+12>>2]&8|0)==0:0)?ca>>>0<ea>>>0&ca>>>0>=ia>>>0:0){f[ja>>2]=ka+da;fa=ca+8|0;ga=(fa&7|0)==0?0:0-fa&7;fa=ca+ga|0;aa=(f[1121]|0)+(da-ga)|0;f[1124]=fa;f[1121]=aa;f[fa+4>>2]=aa|1;f[fa+aa+4>>2]=40;f[1125]=f[1240];break}aa=f[1122]|0;if(ea>>>0<aa>>>0){f[1122]=ea;la=ea}else la=aa;aa=ea+da|0;fa=4920;while(1){if((f[fa>>2]|0)==(aa|0)){K=198;break}ga=f[fa+8>>2]|0;if(!ga)break;else fa=ga}if((K|0)==198?(f[fa+12>>2]&8|0)==0:0){f[fa>>2]=ea;ha=fa+4|0;f[ha>>2]=(f[ha>>2]|0)+da;ha=ea+8|0;ga=ea+((ha&7|0)==0?0:0-ha&7)|0;ha=aa+8|0;c=aa+((ha&7|0)==0?0:0-ha&7)|0;ha=ga+F|0;S=c-ga-F|0;f[ga+4>>2]=F|3;do if((c|0)!=(ca|0)){if((c|0)==(f[1123]|0)){ba=(f[1120]|0)+S|0;f[1120]=ba;f[1123]=ha;f[ha+4>>2]=ba|1;f[ha+ba>>2]=ba;break}ba=f[c+4>>2]|0;if((ba&3|0)==1){_=ba&-8;$=ba>>>3;f:do if(ba>>>0>=256){T=f[c+24>>2]|0;X=f[c+12>>2]|0;do if((X|0)==(c|0)){U=c+16|0;Y=U+4|0;o=f[Y>>2]|0;if(!o){s=f[U>>2]|0;if(!s){ma=0;break}else{na=s;oa=U}}else{na=o;oa=Y}while(1){Y=na+20|0;o=f[Y>>2]|0;if(o|0){na=o;oa=Y;continue}Y=na+16|0;o=f[Y>>2]|0;if(!o)break;else{na=o;oa=Y}}if(oa>>>0<la>>>0)Da();else{f[oa>>2]=0;ma=na;break}}else{Y=f[c+8>>2]|0;if(Y>>>0<la>>>0)Da();o=Y+12|0;if((f[o>>2]|0)!=(c|0))Da();U=X+8|0;if((f[U>>2]|0)==(c|0)){f[o>>2]=X;f[U>>2]=Y;ma=X;break}else Da()}while(0);if(!T)break;X=f[c+28>>2]|0;Y=4776+(X<<2)|0;do if((c|0)!=(f[Y>>2]|0))if(T>>>0>=(f[1122]|0)>>>0){f[T+16+(((f[T+16>>2]|0)!=(c|0)&1)<<2)>>2]=ma;if(!ma)break f;else break}else Da();else{f[Y>>2]=ma;if(ma|0)break;f[1119]=f[1119]&~(1<<X);break f}while(0);X=f[1122]|0;if(ma>>>0<X>>>0)Da();f[ma+24>>2]=T;Y=c+16|0;U=f[Y>>2]|0;do if(U|0)if(U>>>0<X>>>0)Da();else{f[ma+16>>2]=U;f[U+24>>2]=ma;break}while(0);U=f[Y+4>>2]|0;if(!U)break;if(U>>>0<(f[1122]|0)>>>0)Da();else{f[ma+20>>2]=U;f[U+24>>2]=ma;break}}else{U=f[c+8>>2]|0;X=f[c+12>>2]|0;T=4512+($<<1<<2)|0;do if((U|0)!=(T|0)){if(U>>>0<la>>>0)Da();if((f[U+12>>2]|0)==(c|0))break;Da()}while(0);if((X|0)==(U|0)){f[1118]=f[1118]&~(1<<$);break}do if((X|0)==(T|0))pa=X+8|0;else{if(X>>>0<la>>>0)Da();Y=X+8|0;if((f[Y>>2]|0)==(c|0)){pa=Y;break}Da()}while(0);f[U+12>>2]=X;f[pa>>2]=U}while(0);qa=c+_|0;ra=_+S|0}else{qa=c;ra=S}$=qa+4|0;f[$>>2]=f[$>>2]&-2;f[ha+4>>2]=ra|1;f[ha+ra>>2]=ra;$=ra>>>3;if(ra>>>0<256){ba=4512+($<<1<<2)|0;Z=f[1118]|0;T=1<<$;do if(!(Z&T)){f[1118]=Z|T;sa=ba;ta=ba+8|0}else{$=ba+8|0;Y=f[$>>2]|0;if(Y>>>0>=(f[1122]|0)>>>0){sa=Y;ta=$;break}Da()}while(0);f[ta>>2]=ha;f[sa+12>>2]=ha;f[ha+8>>2]=sa;f[ha+12>>2]=ba;break}T=ra>>>8;do if(!T)ua=0;else{if(ra>>>0>16777215){ua=31;break}Z=(T+1048320|0)>>>16&8;_=T<<Z;$=(_+520192|0)>>>16&4;Y=_<<$;_=(Y+245760|0)>>>16&2;o=14-($|Z|_)+(Y<<_>>>15)|0;ua=ra>>>(o+7|0)&1|o<<1}while(0);T=4776+(ua<<2)|0;f[ha+28>>2]=ua;ba=ha+16|0;f[ba+4>>2]=0;f[ba>>2]=0;ba=f[1119]|0;o=1<<ua;if(!(ba&o)){f[1119]=ba|o;f[T>>2]=ha;f[ha+24>>2]=T;f[ha+12>>2]=ha;f[ha+8>>2]=ha;break}o=ra<<((ua|0)==31?0:25-(ua>>>1)|0);ba=f[T>>2]|0;while(1){if((f[ba+4>>2]&-8|0)==(ra|0)){K=265;break}va=ba+16+(o>>>31<<2)|0;T=f[va>>2]|0;if(!T){K=262;break}else{o=o<<1;ba=T}}if((K|0)==262)if(va>>>0<(f[1122]|0)>>>0)Da();else{f[va>>2]=ha;f[ha+24>>2]=ba;f[ha+12>>2]=ha;f[ha+8>>2]=ha;break}else if((K|0)==265){o=ba+8|0;T=f[o>>2]|0;_=f[1122]|0;if(T>>>0>=_>>>0&ba>>>0>=_>>>0){f[T+12>>2]=ha;f[o>>2]=ha;f[ha+8>>2]=T;f[ha+12>>2]=ba;f[ha+24>>2]=0;break}else Da()}}else{T=(f[1121]|0)+S|0;f[1121]=T;f[1124]=ha;f[ha+4>>2]=T|1}while(0);p=ga+8|0;u=b;return p|0}ha=4920;while(1){S=f[ha>>2]|0;if(S>>>0<=ca>>>0?(wa=S+(f[ha+4>>2]|0)|0,wa>>>0>ca>>>0):0)break;ha=f[ha+8>>2]|0}ha=wa+-47|0;ga=ha+8|0;S=ha+((ga&7|0)==0?0:0-ga&7)|0;ga=ca+16|0;ha=S>>>0<ga>>>0?ca:S;S=ha+8|0;c=ea+8|0;aa=(c&7|0)==0?0:0-c&7;c=ea+aa|0;fa=da+-40-aa|0;f[1124]=c;f[1121]=fa;f[c+4>>2]=fa|1;f[c+fa+4>>2]=40;f[1125]=f[1240];fa=ha+4|0;f[fa>>2]=27;f[S>>2]=f[1230];f[S+4>>2]=f[1231];f[S+8>>2]=f[1232];f[S+12>>2]=f[1233];f[1230]=ea;f[1231]=da;f[1233]=0;f[1232]=S;S=ha+24|0;do{c=S;S=S+4|0;f[S>>2]=7}while((c+8|0)>>>0<wa>>>0);if((ha|0)!=(ca|0)){S=ha-ca|0;f[fa>>2]=f[fa>>2]&-2;f[ca+4>>2]=S|1;f[ha>>2]=S;c=S>>>3;if(S>>>0<256){aa=4512+(c<<1<<2)|0;T=f[1118]|0;o=1<<c;if(T&o){c=aa+8|0;_=f[c>>2]|0;if(_>>>0<(f[1122]|0)>>>0)Da();else{xa=_;ya=c}}else{f[1118]=T|o;xa=aa;ya=aa+8|0}f[ya>>2]=ca;f[xa+12>>2]=ca;f[ca+8>>2]=xa;f[ca+12>>2]=aa;break}aa=S>>>8;if(aa)if(S>>>0>16777215)za=31;else{o=(aa+1048320|0)>>>16&8;T=aa<<o;aa=(T+520192|0)>>>16&4;c=T<<aa;T=(c+245760|0)>>>16&2;_=14-(aa|o|T)+(c<<T>>>15)|0;za=S>>>(_+7|0)&1|_<<1}else za=0;_=4776+(za<<2)|0;f[ca+28>>2]=za;f[ca+20>>2]=0;f[ga>>2]=0;T=f[1119]|0;c=1<<za;if(!(T&c)){f[1119]=T|c;f[_>>2]=ca;f[ca+24>>2]=_;f[ca+12>>2]=ca;f[ca+8>>2]=ca;break}c=S<<((za|0)==31?0:25-(za>>>1)|0);T=f[_>>2]|0;while(1){if((f[T+4>>2]&-8|0)==(S|0)){K=292;break}Aa=T+16+(c>>>31<<2)|0;_=f[Aa>>2]|0;if(!_){K=289;break}else{c=c<<1;T=_}}if((K|0)==289)if(Aa>>>0<(f[1122]|0)>>>0)Da();else{f[Aa>>2]=ca;f[ca+24>>2]=T;f[ca+12>>2]=ca;f[ca+8>>2]=ca;break}else if((K|0)==292){c=T+8|0;S=f[c>>2]|0;ga=f[1122]|0;if(S>>>0>=ga>>>0&T>>>0>=ga>>>0){f[S+12>>2]=ca;f[c>>2]=ca;f[ca+8>>2]=S;f[ca+12>>2]=T;f[ca+24>>2]=0;break}else Da()}}}else{S=f[1122]|0;if((S|0)==0|ea>>>0<S>>>0)f[1122]=ea;f[1230]=ea;f[1231]=da;f[1233]=0;f[1127]=f[1236];f[1126]=-1;S=0;do{c=4512+(S<<1<<2)|0;f[c+12>>2]=c;f[c+8>>2]=c;S=S+1|0}while((S|0)!=32);S=ea+8|0;T=(S&7|0)==0?0:0-S&7;S=ea+T|0;c=da+-40-T|0;f[1124]=S;f[1121]=c;f[S+4>>2]=c|1;f[S+c+4>>2]=40;f[1125]=f[1240]}while(0);da=f[1121]|0;if(da>>>0>F>>>0){ea=da-F|0;f[1121]=ea;da=f[1124]|0;ca=da+F|0;f[1124]=ca;f[ca+4>>2]=ea|1;f[da+4>>2]=F|3;p=da+8|0;u=b;return p|0}}da=lc()|0;f[da>>2]=12;p=0;u=b;return p|0}function Id(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;if(!a)return;b=a+-8|0;c=f[1122]|0;if(b>>>0<c>>>0)Da();d=f[a+-4>>2]|0;a=d&3;if((a|0)==1)Da();e=d&-8;g=b+e|0;a:do if(!(d&1)){h=f[b>>2]|0;if(!a)return;i=b+(0-h)|0;j=h+e|0;if(i>>>0<c>>>0)Da();if((i|0)==(f[1123]|0)){k=g+4|0;l=f[k>>2]|0;if((l&3|0)!=3){m=i;n=j;o=i;break}f[1120]=j;f[k>>2]=l&-2;f[i+4>>2]=j|1;f[i+j>>2]=j;return}l=h>>>3;if(h>>>0<256){h=f[i+8>>2]|0;k=f[i+12>>2]|0;p=4512+(l<<1<<2)|0;if((h|0)!=(p|0)){if(h>>>0<c>>>0)Da();if((f[h+12>>2]|0)!=(i|0))Da()}if((k|0)==(h|0)){f[1118]=f[1118]&~(1<<l);m=i;n=j;o=i;break}if((k|0)!=(p|0)){if(k>>>0<c>>>0)Da();p=k+8|0;if((f[p>>2]|0)==(i|0))q=p;else Da()}else q=k+8|0;f[h+12>>2]=k;f[q>>2]=h;m=i;n=j;o=i;break}h=f[i+24>>2]|0;k=f[i+12>>2]|0;do if((k|0)==(i|0)){p=i+16|0;l=p+4|0;r=f[l>>2]|0;if(!r){s=f[p>>2]|0;if(!s){t=0;break}else{u=s;v=p}}else{u=r;v=l}while(1){l=u+20|0;r=f[l>>2]|0;if(r|0){u=r;v=l;continue}l=u+16|0;r=f[l>>2]|0;if(!r)break;else{u=r;v=l}}if(v>>>0<c>>>0)Da();else{f[v>>2]=0;t=u;break}}else{l=f[i+8>>2]|0;if(l>>>0<c>>>0)Da();r=l+12|0;if((f[r>>2]|0)!=(i|0))Da();p=k+8|0;if((f[p>>2]|0)==(i|0)){f[r>>2]=k;f[p>>2]=l;t=k;break}else Da()}while(0);if(h){k=f[i+28>>2]|0;l=4776+(k<<2)|0;do if((i|0)==(f[l>>2]|0)){f[l>>2]=t;if(!t){f[1119]=f[1119]&~(1<<k);m=i;n=j;o=i;break a}}else if(h>>>0>=(f[1122]|0)>>>0){f[h+16+(((f[h+16>>2]|0)!=(i|0)&1)<<2)>>2]=t;if(!t){m=i;n=j;o=i;break a}else break}else Da();while(0);k=f[1122]|0;if(t>>>0<k>>>0)Da();f[t+24>>2]=h;l=i+16|0;p=f[l>>2]|0;do if(p|0)if(p>>>0<k>>>0)Da();else{f[t+16>>2]=p;f[p+24>>2]=t;break}while(0);p=f[l+4>>2]|0;if(p)if(p>>>0<(f[1122]|0)>>>0)Da();else{f[t+20>>2]=p;f[p+24>>2]=t;m=i;n=j;o=i;break}else{m=i;n=j;o=i}}else{m=i;n=j;o=i}}else{m=b;n=e;o=b}while(0);if(o>>>0>=g>>>0)Da();b=g+4|0;e=f[b>>2]|0;if(!(e&1))Da();if(!(e&2)){t=f[1123]|0;if((g|0)==(f[1124]|0)){c=(f[1121]|0)+n|0;f[1121]=c;f[1124]=m;f[m+4>>2]=c|1;if((m|0)!=(t|0))return;f[1123]=0;f[1120]=0;return}if((g|0)==(t|0)){t=(f[1120]|0)+n|0;f[1120]=t;f[1123]=o;f[m+4>>2]=t|1;f[o+t>>2]=t;return}t=(e&-8)+n|0;c=e>>>3;b:do if(e>>>0>=256){u=f[g+24>>2]|0;v=f[g+12>>2]|0;do if((v|0)==(g|0)){q=g+16|0;a=q+4|0;d=f[a>>2]|0;if(!d){p=f[q>>2]|0;if(!p){w=0;break}else{x=p;y=q}}else{x=d;y=a}while(1){a=x+20|0;d=f[a>>2]|0;if(d|0){x=d;y=a;continue}a=x+16|0;d=f[a>>2]|0;if(!d)break;else{x=d;y=a}}if(y>>>0<(f[1122]|0)>>>0)Da();else{f[y>>2]=0;w=x;break}}else{a=f[g+8>>2]|0;if(a>>>0<(f[1122]|0)>>>0)Da();d=a+12|0;if((f[d>>2]|0)!=(g|0))Da();q=v+8|0;if((f[q>>2]|0)==(g|0)){f[d>>2]=v;f[q>>2]=a;w=v;break}else Da()}while(0);if(u|0){v=f[g+28>>2]|0;i=4776+(v<<2)|0;do if((g|0)==(f[i>>2]|0)){f[i>>2]=w;if(!w){f[1119]=f[1119]&~(1<<v);break b}}else if(u>>>0>=(f[1122]|0)>>>0){f[u+16+(((f[u+16>>2]|0)!=(g|0)&1)<<2)>>2]=w;if(!w)break b;else break}else Da();while(0);v=f[1122]|0;if(w>>>0<v>>>0)Da();f[w+24>>2]=u;i=g+16|0;j=f[i>>2]|0;do if(j|0)if(j>>>0<v>>>0)Da();else{f[w+16>>2]=j;f[j+24>>2]=w;break}while(0);j=f[i+4>>2]|0;if(j|0)if(j>>>0<(f[1122]|0)>>>0)Da();else{f[w+20>>2]=j;f[j+24>>2]=w;break}}}else{j=f[g+8>>2]|0;v=f[g+12>>2]|0;u=4512+(c<<1<<2)|0;if((j|0)!=(u|0)){if(j>>>0<(f[1122]|0)>>>0)Da();if((f[j+12>>2]|0)!=(g|0))Da()}if((v|0)==(j|0)){f[1118]=f[1118]&~(1<<c);break}if((v|0)!=(u|0)){if(v>>>0<(f[1122]|0)>>>0)Da();u=v+8|0;if((f[u>>2]|0)==(g|0))z=u;else Da()}else z=v+8|0;f[j+12>>2]=v;f[z>>2]=j}while(0);f[m+4>>2]=t|1;f[o+t>>2]=t;if((m|0)==(f[1123]|0)){f[1120]=t;return}else A=t}else{f[b>>2]=e&-2;f[m+4>>2]=n|1;f[o+n>>2]=n;A=n}n=A>>>3;if(A>>>0<256){o=4512+(n<<1<<2)|0;e=f[1118]|0;b=1<<n;if(e&b){n=o+8|0;t=f[n>>2]|0;if(t>>>0<(f[1122]|0)>>>0)Da();else{B=t;C=n}}else{f[1118]=e|b;B=o;C=o+8|0}f[C>>2]=m;f[B+12>>2]=m;f[m+8>>2]=B;f[m+12>>2]=o;return}o=A>>>8;if(o)if(A>>>0>16777215)D=31;else{B=(o+1048320|0)>>>16&8;C=o<<B;o=(C+520192|0)>>>16&4;b=C<<o;C=(b+245760|0)>>>16&2;e=14-(o|B|C)+(b<<C>>>15)|0;D=A>>>(e+7|0)&1|e<<1}else D=0;e=4776+(D<<2)|0;f[m+28>>2]=D;f[m+20>>2]=0;f[m+16>>2]=0;C=f[1119]|0;b=1<<D;do if(C&b){B=A<<((D|0)==31?0:25-(D>>>1)|0);o=f[e>>2]|0;while(1){if((f[o+4>>2]&-8|0)==(A|0)){E=124;break}F=o+16+(B>>>31<<2)|0;n=f[F>>2]|0;if(!n){E=121;break}else{B=B<<1;o=n}}if((E|0)==121)if(F>>>0<(f[1122]|0)>>>0)Da();else{f[F>>2]=m;f[m+24>>2]=o;f[m+12>>2]=m;f[m+8>>2]=m;break}else if((E|0)==124){B=o+8|0;i=f[B>>2]|0;n=f[1122]|0;if(i>>>0>=n>>>0&o>>>0>=n>>>0){f[i+12>>2]=m;f[B>>2]=m;f[m+8>>2]=i;f[m+12>>2]=o;f[m+24>>2]=0;break}else Da()}}else{f[1119]=C|b;f[e>>2]=m;f[m+24>>2]=e;f[m+12>>2]=m;f[m+8>>2]=m}while(0);m=(f[1126]|0)+-1|0;f[1126]=m;if(!m)G=4928;else return;while(1){m=f[G>>2]|0;if(!m)break;else G=m+8|0}f[1126]=-1;return}function Jd(a,b){a=a|0;b=b|0;var c=0,d=0;if(a){c=X(b,a)|0;if((b|a)>>>0>65535)d=((c>>>0)/(a>>>0)|0|0)==(b|0)?c:-1;else d=c}else d=0;c=Hd(d)|0;if(!c)return c|0;if(!(f[c+-4>>2]&3))return c|0;Qd(c|0,0,d|0)|0;return c|0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;if(!a){c=Hd(b)|0;return c|0}if(b>>>0>4294967231){d=lc()|0;f[d>>2]=12;c=0;return c|0}d=Ld(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){c=d+8|0;return c|0}d=Hd(b)|0;if(!d){c=0;return c|0}e=f[a+-4>>2]|0;g=(e&-8)-((e&3|0)==0?8:4)|0;_d(d|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;Id(a);c=d;return c|0}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c=a+4|0;d=f[c>>2]|0;e=d&-8;g=a+e|0;h=f[1122]|0;i=d&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0<g>>>0))Da();j=f[g+4>>2]|0;if(!(j&1))Da();if(!i){if(b>>>0<256){k=0;return k|0}if(e>>>0>=(b+4|0)>>>0?(e-b|0)>>>0<=f[1238]<<1>>>0:0){k=a;return k|0}k=0;return k|0}if(e>>>0>=b>>>0){i=e-b|0;if(i>>>0<=15){k=a;return k|0}l=a+b|0;f[c>>2]=d&1|b|2;f[l+4>>2]=i|3;m=l+i+4|0;f[m>>2]=f[m>>2]|1;Md(l,i);k=a;return k|0}if((g|0)==(f[1124]|0)){i=(f[1121]|0)+e|0;l=i-b|0;m=a+b|0;if(i>>>0<=b>>>0){k=0;return k|0}f[c>>2]=d&1|b|2;f[m+4>>2]=l|1;f[1124]=m;f[1121]=l;k=a;return k|0}if((g|0)==(f[1123]|0)){l=(f[1120]|0)+e|0;if(l>>>0<b>>>0){k=0;return k|0}m=l-b|0;i=d&1;if(m>>>0>15){n=a+b|0;o=n+m|0;f[c>>2]=i|b|2;f[n+4>>2]=m|1;f[o>>2]=m;p=o+4|0;f[p>>2]=f[p>>2]&-2;q=n;r=m}else{f[c>>2]=i|l|2;i=a+l+4|0;f[i>>2]=f[i>>2]|1;q=0;r=0}f[1120]=r;f[1123]=q;k=a;return k|0}if(j&2|0){k=0;return k|0}q=(j&-8)+e|0;if(q>>>0<b>>>0){k=0;return k|0}e=q-b|0;r=j>>>3;a:do if(j>>>0>=256){i=f[g+24>>2]|0;l=f[g+12>>2]|0;do if((l|0)==(g|0)){m=g+16|0;n=m+4|0;p=f[n>>2]|0;if(!p){o=f[m>>2]|0;if(!o){s=0;break}else{t=o;u=m}}else{t=p;u=n}while(1){n=t+20|0;p=f[n>>2]|0;if(p|0){t=p;u=n;continue}n=t+16|0;p=f[n>>2]|0;if(!p)break;else{t=p;u=n}}if(u>>>0<h>>>0)Da();else{f[u>>2]=0;s=t;break}}else{n=f[g+8>>2]|0;if(n>>>0<h>>>0)Da();p=n+12|0;if((f[p>>2]|0)!=(g|0))Da();m=l+8|0;if((f[m>>2]|0)==(g|0)){f[p>>2]=l;f[m>>2]=n;s=l;break}else Da()}while(0);if(i|0){l=f[g+28>>2]|0;n=4776+(l<<2)|0;do if((g|0)==(f[n>>2]|0)){f[n>>2]=s;if(!s){f[1119]=f[1119]&~(1<<l);break a}}else if(i>>>0>=(f[1122]|0)>>>0){f[i+16+(((f[i+16>>2]|0)!=(g|0)&1)<<2)>>2]=s;if(!s)break a;else break}else Da();while(0);l=f[1122]|0;if(s>>>0<l>>>0)Da();f[s+24>>2]=i;n=g+16|0;m=f[n>>2]|0;do if(m|0)if(m>>>0<l>>>0)Da();else{f[s+16>>2]=m;f[m+24>>2]=s;break}while(0);m=f[n+4>>2]|0;if(m|0)if(m>>>0<(f[1122]|0)>>>0)Da();else{f[s+20>>2]=m;f[m+24>>2]=s;break}}}else{m=f[g+8>>2]|0;l=f[g+12>>2]|0;i=4512+(r<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0<h>>>0)Da();if((f[m+12>>2]|0)!=(g|0))Da()}if((l|0)==(m|0)){f[1118]=f[1118]&~(1<<r);break}if((l|0)!=(i|0)){if(l>>>0<h>>>0)Da();i=l+8|0;if((f[i>>2]|0)==(g|0))v=i;else Da()}else v=l+8|0;f[m+12>>2]=l;f[v>>2]=m}while(0);v=d&1;if(e>>>0<16){f[c>>2]=q|v|2;d=a+q+4|0;f[d>>2]=f[d>>2]|1;k=a;return k|0}else{d=a+b|0;f[c>>2]=v|b|2;f[d+4>>2]=e|3;b=d+e+4|0;f[b>>2]=f[b>>2]|1;Md(d,e);k=a;return k|0}return 0}function Md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;c=a+b|0;d=f[a+4>>2]|0;a:do if(!(d&1)){e=f[a>>2]|0;if(!(d&3))return;g=a+(0-e)|0;h=e+b|0;i=f[1122]|0;if(g>>>0<i>>>0)Da();if((g|0)==(f[1123]|0)){j=c+4|0;k=f[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}f[1120]=h;f[j>>2]=k&-2;f[g+4>>2]=h|1;f[g+h>>2]=h;return}k=e>>>3;if(e>>>0<256){e=f[g+8>>2]|0;j=f[g+12>>2]|0;n=4512+(k<<1<<2)|0;if((e|0)!=(n|0)){if(e>>>0<i>>>0)Da();if((f[e+12>>2]|0)!=(g|0))Da()}if((j|0)==(e|0)){f[1118]=f[1118]&~(1<<k);l=g;m=h;break}if((j|0)!=(n|0)){if(j>>>0<i>>>0)Da();n=j+8|0;if((f[n>>2]|0)==(g|0))o=n;else Da()}else o=j+8|0;f[e+12>>2]=j;f[o>>2]=e;l=g;m=h;break}e=f[g+24>>2]|0;j=f[g+12>>2]|0;do if((j|0)==(g|0)){n=g+16|0;k=n+4|0;p=f[k>>2]|0;if(!p){q=f[n>>2]|0;if(!q){r=0;break}else{s=q;t=n}}else{s=p;t=k}while(1){k=s+20|0;p=f[k>>2]|0;if(p|0){s=p;t=k;continue}k=s+16|0;p=f[k>>2]|0;if(!p)break;else{s=p;t=k}}if(t>>>0<i>>>0)Da();else{f[t>>2]=0;r=s;break}}else{k=f[g+8>>2]|0;if(k>>>0<i>>>0)Da();p=k+12|0;if((f[p>>2]|0)!=(g|0))Da();n=j+8|0;if((f[n>>2]|0)==(g|0)){f[p>>2]=j;f[n>>2]=k;r=j;break}else Da()}while(0);if(e){j=f[g+28>>2]|0;i=4776+(j<<2)|0;do if((g|0)==(f[i>>2]|0)){f[i>>2]=r;if(!r){f[1119]=f[1119]&~(1<<j);l=g;m=h;break a}}else if(e>>>0>=(f[1122]|0)>>>0){f[e+16+(((f[e+16>>2]|0)!=(g|0)&1)<<2)>>2]=r;if(!r){l=g;m=h;break a}else break}else Da();while(0);j=f[1122]|0;if(r>>>0<j>>>0)Da();f[r+24>>2]=e;i=g+16|0;k=f[i>>2]|0;do if(k|0)if(k>>>0<j>>>0)Da();else{f[r+16>>2]=k;f[k+24>>2]=r;break}while(0);k=f[i+4>>2]|0;if(k)if(k>>>0<(f[1122]|0)>>>0)Da();else{f[r+20>>2]=k;f[k+24>>2]=r;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);b=f[1122]|0;if(c>>>0<b>>>0)Da();a=c+4|0;r=f[a>>2]|0;if(!(r&2)){s=f[1123]|0;if((c|0)==(f[1124]|0)){t=(f[1121]|0)+m|0;f[1121]=t;f[1124]=l;f[l+4>>2]=t|1;if((l|0)!=(s|0))return;f[1123]=0;f[1120]=0;return}if((c|0)==(s|0)){s=(f[1120]|0)+m|0;f[1120]=s;f[1123]=l;f[l+4>>2]=s|1;f[l+s>>2]=s;return}s=(r&-8)+m|0;t=r>>>3;b:do if(r>>>0>=256){o=f[c+24>>2]|0;d=f[c+12>>2]|0;do if((d|0)==(c|0)){k=c+16|0;j=k+4|0;e=f[j>>2]|0;if(!e){n=f[k>>2]|0;if(!n){u=0;break}else{v=n;w=k}}else{v=e;w=j}while(1){j=v+20|0;e=f[j>>2]|0;if(e|0){v=e;w=j;continue}j=v+16|0;e=f[j>>2]|0;if(!e)break;else{v=e;w=j}}if(w>>>0<b>>>0)Da();else{f[w>>2]=0;u=v;break}}else{j=f[c+8>>2]|0;if(j>>>0<b>>>0)Da();e=j+12|0;if((f[e>>2]|0)!=(c|0))Da();k=d+8|0;if((f[k>>2]|0)==(c|0)){f[e>>2]=d;f[k>>2]=j;u=d;break}else Da()}while(0);if(o|0){d=f[c+28>>2]|0;h=4776+(d<<2)|0;do if((c|0)==(f[h>>2]|0)){f[h>>2]=u;if(!u){f[1119]=f[1119]&~(1<<d);break b}}else if(o>>>0>=(f[1122]|0)>>>0){f[o+16+(((f[o+16>>2]|0)!=(c|0)&1)<<2)>>2]=u;if(!u)break b;else break}else Da();while(0);d=f[1122]|0;if(u>>>0<d>>>0)Da();f[u+24>>2]=o;h=c+16|0;g=f[h>>2]|0;do if(g|0)if(g>>>0<d>>>0)Da();else{f[u+16>>2]=g;f[g+24>>2]=u;break}while(0);g=f[h+4>>2]|0;if(g|0)if(g>>>0<(f[1122]|0)>>>0)Da();else{f[u+20>>2]=g;f[g+24>>2]=u;break}}}else{g=f[c+8>>2]|0;d=f[c+12>>2]|0;o=4512+(t<<1<<2)|0;if((g|0)!=(o|0)){if(g>>>0<b>>>0)Da();if((f[g+12>>2]|0)!=(c|0))Da()}if((d|0)==(g|0)){f[1118]=f[1118]&~(1<<t);break}if((d|0)!=(o|0)){if(d>>>0<b>>>0)Da();o=d+8|0;if((f[o>>2]|0)==(c|0))x=o;else Da()}else x=d+8|0;f[g+12>>2]=d;f[x>>2]=g}while(0);f[l+4>>2]=s|1;f[l+s>>2]=s;if((l|0)==(f[1123]|0)){f[1120]=s;return}else y=s}else{f[a>>2]=r&-2;f[l+4>>2]=m|1;f[l+m>>2]=m;y=m}m=y>>>3;if(y>>>0<256){r=4512+(m<<1<<2)|0;a=f[1118]|0;s=1<<m;if(a&s){m=r+8|0;x=f[m>>2]|0;if(x>>>0<(f[1122]|0)>>>0)Da();else{z=x;A=m}}else{f[1118]=a|s;z=r;A=r+8|0}f[A>>2]=l;f[z+12>>2]=l;f[l+8>>2]=z;f[l+12>>2]=r;return}r=y>>>8;if(r)if(y>>>0>16777215)B=31;else{z=(r+1048320|0)>>>16&8;A=r<<z;r=(A+520192|0)>>>16&4;s=A<<r;A=(s+245760|0)>>>16&2;a=14-(r|z|A)+(s<<A>>>15)|0;B=y>>>(a+7|0)&1|a<<1}else B=0;a=4776+(B<<2)|0;f[l+28>>2]=B;f[l+20>>2]=0;f[l+16>>2]=0;A=f[1119]|0;s=1<<B;if(!(A&s)){f[1119]=A|s;f[a>>2]=l;f[l+24>>2]=a;f[l+12>>2]=l;f[l+8>>2]=l;return}s=y<<((B|0)==31?0:25-(B>>>1)|0);B=f[a>>2]|0;while(1){if((f[B+4>>2]&-8|0)==(y|0)){C=121;break}D=B+16+(s>>>31<<2)|0;a=f[D>>2]|0;if(!a){C=118;break}else{s=s<<1;B=a}}if((C|0)==118){if(D>>>0<(f[1122]|0)>>>0)Da();f[D>>2]=l;f[l+24>>2]=B;f[l+12>>2]=l;f[l+8>>2]=l;return}else if((C|0)==121){C=B+8|0;D=f[C>>2]|0;s=f[1122]|0;if(!(D>>>0>=s>>>0&B>>>0>=s>>>0))Da();f[D+12>>2]=l;f[C>>2]=l;f[l+8>>2]=D;f[l+12>>2]=B;f[l+24>>2]=0;return}}function Nd(){}function Od(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (I=e,a-c>>>0|0)|0}function Pd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (I=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function Qd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}g=e&-4|0;h=g-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(h|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(g|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(e|0)){b[a>>0]=c;a=a+1|0}return e-d|0}function Rd(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}I=0;return b>>>c-32|0}function Sd(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}I=a<<c-32;return 0}function Td(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function Ud(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;g=a;h=b;i=h;j=c;k=d;l=k;if(!i){m=(e|0)!=0;if(!l){if(m){f[e>>2]=(g>>>0)%(j>>>0);f[e+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (I=n,o)|0}else{if(!m){n=0;o=0;return (I=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;o=0;return (I=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(_(l|0)|0)-(_(i|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=g>>>(q>>>0)&s|i<<r;v=i>>>(q>>>0)&s;w=0;x=g<<r;break}if(!e){n=0;o=0;return (I=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=h|b&0;n=0;o=0;return (I=n,o)|0}r=j-1|0;if(r&j|0){s=(_(j|0)|0)+33-(_(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<<p|g>>>(s>>>0))&A;v=A&i>>>(s>>>0);w=g<<q&y;x=(i<<q|g>>>(z>>>0))&y|g<<p&s-33>>31;break}if(e|0){f[e>>2]=r&g;f[e+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (I=n,o)|0}else{r=Td(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (I=n,o)|0}}else{if(m){if(e|0){f[e>>2]=(i>>>0)%(j>>>0);f[e+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (I=n,o)|0}if(!g){if(e|0){f[e>>2]=0;f[e+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (I=n,o)|0}r=l-1|0;if(!(r&l)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=r&i|b&0}n=0;o=i>>>((Td(l|0)|0)>>>0);return (I=n,o)|0}r=(_(l|0)|0)-(_(i|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=i<<p|g>>>(s>>>0);v=i>>>(s>>>0);w=0;x=g<<p;break}if(!e){n=0;o=0;return (I=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=h|b&0;n=0;o=0;return (I=n,o)|0}while(0);if(!t){B=x;C=w;D=v;E=u;F=0;G=0}else{b=c|0|0;c=k|d&0;d=Pd(b|0,c|0,-1,-1)|0;k=I;h=x;x=w;w=v;v=u;u=t;t=0;do{a=h;h=x>>>31|h<<1;x=t|x<<1;g=v<<1|a>>>31|0;a=v>>>31|w<<1|0;Od(d|0,k|0,g|0,a|0)|0;i=I;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=Od(g|0,a|0,l&b|0,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&c|0)|0;w=I;u=u-1|0}while((u|0)!=0);B=h;C=x;D=w;E=v;F=0;G=t}t=C;C=0;if(e|0){f[e>>2]=E;f[e+4>>2]=D}n=(t|0)>>>31|(B|C)<<1|(C<<1|t>>>31)&0|F;o=(t<<1|0>>>31)&-2|G;return (I=n,o)|0}function Vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ud(a,b,c,d,0)|0}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=X(d,c)|0;f=a>>>16;a=(e>>>16)+(X(d,f)|0)|0;d=b>>>16;b=X(d,c)|0;return (I=(a>>>16)+(X(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function Xd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=Wd(e,a)|0;f=I;return (I=(X(b,a)|0)+(X(d,e)|0)+f|f&0,c|0|0)|0}function Yd(a){a=a|0;var b=0,c=0;a=a+15&-16|0;b=f[r>>2]|0;c=b+a|0;if((a|0)>0&(c|0)<(b|0)|(c|0)<0){da()|0;wa(12);return -1}f[r>>2]=c;if((c|0)>(ca()|0)?(ba()|0)==0:0){f[r>>2]=b;wa(12);return -1}return b|0}function Zd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e|0;Ud(a,b,c,d,g)|0;u=e;return (I=f[g+4>>2]|0,f[g>>2]|0)|0}function _d(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Aa(a|0,c|0,d|0)|0;e=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return e|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}h=g&-4|0;d=h-64|0;while((a|0)<=(d|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(h|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{h=g-4|0;while((a|0)<(h|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return e|0}function $d(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function ae(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ma[a&63](b|0,c|0,d|0)|0}function be(a,b,c){a=a|0;b=b|0;c=c|0;return fa(0,a|0,b|0,c|0)|0}function ce(a,b,c){a=a|0;b=b|0;c=c|0;return fa(1,a|0,b|0,c|0)|0}function de(a,b,c){a=a|0;b=b|0;c=c|0;return fa(2,a|0,b|0,c|0)|0}function ee(a,b,c){a=a|0;b=b|0;c=c|0;return fa(3,a|0,b|0,c|0)|0}function fe(a,b,c){a=a|0;b=b|0;c=c|0;return fa(4,a|0,b|0,c|0)|0}function ge(a,b,c){a=a|0;b=b|0;c=c|0;return fa(5,a|0,b|0,c|0)|0}function he(a,b,c){a=a|0;b=b|0;c=c|0;return fa(6,a|0,b|0,c|0)|0}function ie(a,b,c){a=a|0;b=b|0;c=c|0;return fa(7,a|0,b|0,c|0)|0}function je(a,b,c){a=a|0;b=b|0;c=c|0;return fa(8,a|0,b|0,c|0)|0}function ke(a,b,c){a=a|0;b=b|0;c=c|0;return fa(9,a|0,b|0,c|0)|0}function le(a,b,c){a=a|0;b=b|0;c=c|0;return fa(10,a|0,b|0,c|0)|0}function me(a,b,c){a=a|0;b=b|0;c=c|0;return fa(11,a|0,b|0,c|0)|0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;return fa(12,a|0,b|0,c|0)|0}function oe(a,b,c){a=a|0;b=b|0;c=c|0;return fa(13,a|0,b|0,c|0)|0}function pe(a,b,c){a=a|0;b=b|0;c=c|0;return fa(14,a|0,b|0,c|0)|0}function qe(a,b,c){a=a|0;b=b|0;c=c|0;return fa(15,a|0,b|0,c|0)|0}function re(a,b,c){a=a|0;b=b|0;c=c|0;return fa(16,a|0,b|0,c|0)|0}function se(a,b,c){a=a|0;b=b|0;c=c|0;return fa(17,a|0,b|0,c|0)|0}function te(a,b,c){a=a|0;b=b|0;c=c|0;return fa(18,a|0,b|0,c|0)|0}function ue(a,b,c){a=a|0;b=b|0;c=c|0;return fa(19,a|0,b|0,c|0)|0}function ve(a,b){a=a|0;b=b|0;Na[a&63](b|0)}function we(a){a=a|0;ha(0,a|0)}function xe(a){a=a|0;ha(1,a|0)}function ye(a){a=a|0;ha(2,a|0)}function ze(a){a=a|0;ha(3,a|0)}function Ae(a){a=a|0;ha(4,a|0)}function Be(a){a=a|0;ha(5,a|0)}function Ce(a){a=a|0;ha(6,a|0)}function De(a){a=a|0;ha(7,a|0)}function Ee(a){a=a|0;ha(8,a|0)}function Fe(a){a=a|0;ha(9,a|0)}function Ge(a){a=a|0;ha(10,a|0)}function He(a){a=a|0;ha(11,a|0)}function Ie(a){a=a|0;ha(12,a|0)}function Je(a){a=a|0;ha(13,a|0)}function Ke(a){a=a|0;ha(14,a|0)}function Le(a){a=a|0;ha(15,a|0)}function Me(a){a=a|0;ha(16,a|0)}function Ne(a){a=a|0;ha(17,a|0)}function Oe(a){a=a|0;ha(18,a|0)}function Pe(a){a=a|0;ha(19,a|0)}function Qe(a,b){a=a|0;b=b|0;return Oa[a&63](b|0)|0}function Re(a){a=a|0;return ja(0,a|0)|0}function Se(a){a=a|0;return ja(1,a|0)|0}function Te(a){a=a|0;return ja(2,a|0)|0}function Ue(a){a=a|0;return ja(3,a|0)|0}function Ve(a){a=a|0;return ja(4,a|0)|0}function We(a){a=a|0;return ja(5,a|0)|0}function Xe(a){a=a|0;return ja(6,a|0)|0}function Ye(a){a=a|0;return ja(7,a|0)|0}function Ze(a){a=a|0;return ja(8,a|0)|0}function _e(a){a=a|0;return ja(9,a|0)|0}function $e(a){a=a|0;return ja(10,a|0)|0}function af(a){a=a|0;return ja(11,a|0)|0}function bf(a){a=a|0;return ja(12,a|0)|0}function cf(a){a=a|0;return ja(13,a|0)|0}function df(a){a=a|0;return ja(14,a|0)|0}function ef(a){a=a|0;return ja(15,a|0)|0}function ff(a){a=a|0;return ja(16,a|0)|0}function gf(a){a=a|0;return ja(17,a|0)|0}function hf(a){a=a|0;return ja(18,a|0)|0}function jf(a){a=a|0;return ja(19,a|0)|0}function kf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;s=+s;Pa[a&63](b|0,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r,+s)}function lf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(0,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function mf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(1,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function nf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(2,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function of(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(3,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function pf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(4,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function qf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(5,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function rf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(6,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function sf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(7,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function tf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(8,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function uf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(9,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function vf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(10,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function wf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(11,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function xf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(12,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function yf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(13,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function zf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(14,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Af(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(15,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Bf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(16,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Cf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(17,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Df(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(18,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Ef(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;la(19,a|0,+b,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,+o,+p,+q,+r)}function Ff(a,b,c){a=a|0;b=b|0;c=c|0;return Qa[a&63](b|0,c|0)|0}function Gf(a,b){a=a|0;b=b|0;return na(0,a|0,b|0)|0}function Hf(a,b){a=a|0;b=b|0;return na(1,a|0,b|0)|0}function If(a,b){a=a|0;b=b|0;return na(2,a|0,b|0)|0}function Jf(a,b){a=a|0;b=b|0;return na(3,a|0,b|0)|0}function Kf(a,b){a=a|0;b=b|0;return na(4,a|0,b|0)|0}function Lf(a,b){a=a|0;b=b|0;return na(5,a|0,b|0)|0}function Mf(a,b){a=a|0;b=b|0;return na(6,a|0,b|0)|0}function Nf(a,b){a=a|0;b=b|0;return na(7,a|0,b|0)|0}function Of(a,b){a=a|0;b=b|0;return na(8,a|0,b|0)|0}function Pf(a,b){a=a|0;b=b|0;return na(9,a|0,b|0)|0}function Qf(a,b){a=a|0;b=b|0;return na(10,a|0,b|0)|0}function Rf(a,b){a=a|0;b=b|0;return na(11,a|0,b|0)|0}function Sf(a,b){a=a|0;b=b|0;return na(12,a|0,b|0)|0}function Tf(a,b){a=a|0;b=b|0;return na(13,a|0,b|0)|0}function Uf(a,b){a=a|0;b=b|0;return na(14,a|0,b|0)|0}function Vf(a,b){a=a|0;b=b|0;return na(15,a|0,b|0)|0}function Wf(a,b){a=a|0;b=b|0;return na(16,a|0,b|0)|0}function Xf(a,b){a=a|0;b=b|0;return na(17,a|0,b|0)|0}function Yf(a,b){a=a|0;b=b|0;return na(18,a|0,b|0)|0}function Zf(a,b){a=a|0;b=b|0;return na(19,a|0,b|0)|0}function _f(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return +Ra[a&63](b|0,c|0,d|0,e|0)}function $f(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(0,a|0,b|0,c|0,d|0)}function ag(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(1,a|0,b|0,c|0,d|0)}function bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(2,a|0,b|0,c|0,d|0)}function cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(3,a|0,b|0,c|0,d|0)}function dg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(4,a|0,b|0,c|0,d|0)}function eg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(5,a|0,b|0,c|0,d|0)}function fg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(6,a|0,b|0,c|0,d|0)}function gg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(7,a|0,b|0,c|0,d|0)}function hg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(8,a|0,b|0,c|0,d|0)}function ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(9,a|0,b|0,c|0,d|0)}function jg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(10,a|0,b|0,c|0,d|0)}function kg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(11,a|0,b|0,c|0,d|0)}function lg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(12,a|0,b|0,c|0,d|0)}function mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(13,a|0,b|0,c|0,d|0)}function ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(14,a|0,b|0,c|0,d|0)}function og(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(15,a|0,b|0,c|0,d|0)}function pg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(16,a|0,b|0,c|0,d|0)}function qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(17,a|0,b|0,c|0,d|0)}function rg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(18,a|0,b|0,c|0,d|0)}function sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +pa(19,a|0,b|0,c|0,d|0)}function tg(a,b,c){a=a|0;b=b|0;c=c|0;$(0);return 0}function ug(a){a=a|0;$(1)}function vg(a){a=a|0;$(2);return 0}function wg(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;$(3)}function xg(a,b){a=a|0;b=b|0;$(4);return 0}function yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(5);return 0.0}
// EMSCRIPTEN_END_FUNCS
var Ma=[tg,tg,be,tg,ce,tg,de,tg,ee,tg,fe,tg,ge,tg,he,tg,ie,tg,je,tg,ke,tg,le,tg,me,tg,ne,tg,oe,tg,pe,tg,qe,tg,re,tg,se,tg,te,tg,ue,tg,ic,jc,pc,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg,tg];var Na=[ug,ug,we,ug,xe,ug,ye,ug,ze,ug,Ae,ug,Be,ug,Ce,ug,De,ug,Ee,ug,Fe,ug,Ge,ug,He,ug,Ie,ug,Je,ug,Ke,ug,Le,ug,Me,ug,Ne,ug,Oe,ug,Pe,ug,jb,ec,fc,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug,ug];var Oa=[vg,vg,Re,vg,Se,vg,Te,vg,Ue,vg,Ve,vg,We,vg,Xe,vg,Ye,vg,Ze,vg,_e,vg,$e,vg,af,vg,bf,vg,cf,vg,df,vg,ef,vg,ff,vg,gf,vg,hf,vg,jf,vg,hc,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg,vg];var Pa=[wg,wg,lf,wg,mf,wg,nf,wg,of,wg,pf,wg,qf,wg,rf,wg,sf,wg,tf,wg,uf,wg,vf,wg,wf,wg,xf,wg,yf,wg,zf,wg,Af,wg,Bf,wg,Cf,wg,Df,wg,Ef,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg,wg];var Qa=[xg,xg,Gf,xg,Hf,xg,If,xg,Jf,xg,Kf,xg,Lf,xg,Mf,xg,Nf,xg,Of,xg,Pf,xg,Qf,xg,Rf,xg,Sf,xg,Tf,xg,Uf,xg,Vf,xg,Wf,xg,Xf,xg,Yf,xg,Zf,xg,kb,Zb,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg,xg];var Ra=[yg,yg,$f,yg,ag,yg,bg,yg,cg,yg,dg,yg,eg,yg,fg,yg,gg,yg,hg,yg,ig,yg,jg,yg,kg,yg,lg,yg,mg,yg,ng,yg,og,yg,pg,yg,qg,yg,rg,yg,sg,yg,fb,gb,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg,yg];return{_strlen:Ac,stackSave:Ta,getTempRet0:Ya,_memset:Qd,setThrew:Wa,_bitshift64Lshr:Rd,_bitshift64Shl:Sd,_fflush:Ad,_llvm_cttz_i32:Td,_sbrk:Yd,_memcpy:_d,_llvm_bswap_i32:$d,___muldi3:Xd,___uremdi3:Zd,stackAlloc:Sa,_i64Subtract:Od,___udivmoddi4:Ud,setTempRet0:Xa,_i64Add:Pd,_emscripten_get_global_libc:gc,___udivdi3:Vd,___errno_location:lc,___muldsi3:Wd,_free:Id,runPostSets:Nd,establishStackSpace:Va,_detect:Za,stackRestore:Ua,_malloc:Hd,_emscripten_replace_memory:La,stackAlloc:Sa,stackSave:Ta,stackRestore:Ua,establishStackSpace:Va,setThrew:Wa,setTempRet0:Xa,getTempRet0:Ya,dynCall_iiii:ae,dynCall_vi:ve,dynCall_ii:Qe,dynCall_viddddddddddddddddd:kf,dynCall_iii:Ff,dynCall_diiii:_f}})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _strlen=Module["_strlen"]=asm["_strlen"];var stackSave=Module["stackSave"]=asm["stackSave"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var _memset=Module["_memset"]=asm["_memset"];var setThrew=Module["setThrew"]=asm["setThrew"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _fflush=Module["_fflush"]=asm["_fflush"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _detect=Module["_detect"]=asm["_detect"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var _malloc=Module["_malloc"]=asm["_malloc"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viddddddddddddddddd=Module["dynCall_viddddddddddddddddd"]=asm["dynCall_viddddddddddddddddd"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_diiii=Module["dynCall_diiii"]=asm["dynCall_diiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;if(memoryInitializer){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,Runtime.GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,Runtime.GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];if(request.status!==200&&request.status!==0){console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}applyMemoryInitializer(request.response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}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{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}Module.printErr("exception thrown: "+toLog);Module["quit"](1,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)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](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()