x_ite 12.1.8 → 12.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/assets/components/AnnotationComponent.js +2 -2
- package/dist/assets/components/AnnotationComponent.min.js +2 -2
- package/dist/assets/components/CADGeometryComponent.js +2 -2
- package/dist/assets/components/CADGeometryComponent.min.js +2 -2
- package/dist/assets/components/CubeMapTexturingComponent.js +2 -2
- package/dist/assets/components/CubeMapTexturingComponent.min.js +2 -2
- package/dist/assets/components/DISComponent.js +2 -2
- package/dist/assets/components/DISComponent.min.js +2 -2
- package/dist/assets/components/EventUtilitiesComponent.js +2 -2
- package/dist/assets/components/EventUtilitiesComponent.min.js +2 -2
- package/dist/assets/components/Geometry2DComponent.js +2 -2
- package/dist/assets/components/Geometry2DComponent.min.js +2 -2
- package/dist/assets/components/GeospatialComponent.js +2 -2
- package/dist/assets/components/GeospatialComponent.min.js +2 -2
- package/dist/assets/components/HAnimComponent.js +2 -2
- package/dist/assets/components/HAnimComponent.min.js +2 -2
- package/dist/assets/components/KeyDeviceSensorComponent.js +2 -2
- package/dist/assets/components/KeyDeviceSensorComponent.min.js +2 -2
- package/dist/assets/components/LayoutComponent.js +2 -2
- package/dist/assets/components/LayoutComponent.min.js +2 -2
- package/dist/assets/components/NURBSComponent.js +2 -2
- package/dist/assets/components/NURBSComponent.min.js +2 -2
- package/dist/assets/components/ParticleSystemsComponent.js +2 -2
- package/dist/assets/components/ParticleSystemsComponent.min.js +2 -2
- package/dist/assets/components/PickingComponent.js +2 -2
- package/dist/assets/components/PickingComponent.min.js +2 -2
- package/dist/assets/components/RigidBodyPhysicsComponent.js +4 -4
- package/dist/assets/components/RigidBodyPhysicsComponent.min.js +2 -2
- package/dist/assets/components/ScriptingComponent.js +2 -2
- package/dist/assets/components/ScriptingComponent.min.js +2 -2
- package/dist/assets/components/TextComponent.js +2 -2
- package/dist/assets/components/TextComponent.min.js +2 -2
- package/dist/assets/components/TextureProjectionComponent.js +2 -2
- package/dist/assets/components/TextureProjectionComponent.min.js +2 -2
- package/dist/assets/components/Texturing3DComponent.js +71 -71
- package/dist/assets/components/Texturing3DComponent.min.js +2 -2
- package/dist/assets/components/VolumeRenderingComponent.js +2 -2
- package/dist/assets/components/VolumeRenderingComponent.min.js +2 -2
- package/dist/assets/components/WebXRComponent.js +8 -4
- package/dist/assets/components/WebXRComponent.min.js +2 -2
- package/dist/assets/components/X_ITEComponent.js +2 -2
- package/dist/assets/components/X_ITEComponent.min.js +2 -2
- package/dist/assets/images/no_sound.svg +1 -0
- package/dist/example.html +36 -9
- package/dist/x_ite.css +1 -1
- package/dist/x_ite.js +49316 -49473
- package/dist/x_ite.min.js +2 -2
- package/dist/x_ite.min.mjs +2 -2
- package/dist/x_ite.mjs +51661 -51818
- package/dist/x_ite.zip +0 -0
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/* X_ITE v12.1.
|
|
2
|
-
const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.1.
|
|
1
|
+
/* X_ITE v12.1.9 */
|
|
2
|
+
const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.1.9")];
|
|
3
3
|
/******/ (() => { // webpackBootstrap
|
|
4
4
|
/******/ var __webpack_modules__ = ({
|
|
5
5
|
|
|
@@ -10,23 +10,15 @@ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.1.8")];
|
|
|
10
10
|
|
|
11
11
|
/***/ }),
|
|
12
12
|
|
|
13
|
-
/***/
|
|
14
|
-
/***/ ((module) => {
|
|
15
|
-
|
|
16
|
-
"use strict";
|
|
17
|
-
module.exports = __X_ITE_X3D__ .jquery;
|
|
18
|
-
|
|
19
|
-
/***/ }),
|
|
20
|
-
|
|
21
|
-
/***/ 344:
|
|
13
|
+
/***/ 119:
|
|
22
14
|
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
|
23
15
|
|
|
24
|
-
var
|
|
16
|
+
var __webpack_dirname__ = "/";
|
|
25
17
|
/*! CharLS.js - v2.0.1 - 2016-06-08 | (c) 2016 Chris Hafey | https://github.com/chafey/charls */
|
|
26
18
|
;module.exports=function(Module) {
|
|
27
19
|
Module = Module || {};
|
|
28
20
|
|
|
29
|
-
var Module;if(!Module)Module=(typeof CharLS!=="undefined"?CharLS:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&"function"==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=__webpack_require__(497);var nodePath=__webpack_require__(13);Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*\(([^)]*)\)\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={};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){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){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=[_malloc,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(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a<i;a++)pre+=" ";Module.print(pre+"^")}function parseNested(){i++;if(func[i]==="K")i++;var parts=[];while(func[i]!=="E"){if(func[i]==="S"){i++;var next=func.indexOf("_",i);var num=func.substring(i,next)||0;parts.push(subs[num]||"?");i=next+1;continue}if(func[i]==="C"){parts.push(parts[parts.length-1]);i+=2;continue}var size=parseInt(func.substr(i));var pre=size.toString().length;if(!size||!pre){i--;break}var curr=func.substr(i+pre,size);parts.push(curr);subs.push(curr);i+=pre+size}i++;return parts}function parse(rawList,limit,allowVoid){limit=limit||Infinity;var ret="",list=[];function flushList(){return"("+list.join(", ")+")"}var name;if(func[i]==="N"){name=parseNested().join("::");limit--;if(limit===0)return rawList?[name]:name}else{if(func[i]==="K"||first&&func[i]==="L")i++;var size=parseInt(func.substr(i));if(size){var pre=size.toString().length;name=func.substr(i+pre,size);i+=pre+size}}first=false;if(func[i]==="I"){i++;var iList=parse(true);var iRet=parse(true,1,true);ret+=iRet[0]+" "+name+"<"+iList.join(", ")+">"}else{ret=name}paramLoop:while(i<func.length&&limit-->0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function enlargeMemory(){var OLD_TOTAL_MEMORY=TOTAL_MEMORY;var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;try{if(ArrayBuffer.transfer){buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY)}else{var oldHEAP8=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return false}var success=_emscripten_replace_memory(buffer);if(!success)return false;Module["buffer"]=buffer;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);if(!ArrayBuffer.transfer){HEAP8.set(oldHEAP8)}return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY);HEAP8=new Int8Array(buffer);HEAP16=new Int16Array(buffer);HEAP32=new Int32Array(buffer);HEAPU8=new Uint8Array(buffer);HEAPU16=new Uint16Array(buffer);HEAPU32=new Uint32Array(buffer);HEAPF32=new Float32Array(buffer);HEAPF64=new Float64Array(buffer);HEAP32[0]=255;assert(HEAPU8[0]===255&&HEAPU8[3]===0,"Typed arrays 2 must be run on a little-endian system");Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){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"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+59744;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_jpegls_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35640);allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39844);allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+42396);allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52636);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0){if(info.destructor){Runtime.dynCall("vi",info.destructor,[ptr])}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(ptr));throw ptr}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm["setTempRet0"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm["setTempRet0"](0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i<typeArray.length;i++){if(typeArray[i]&&Module["___cxa_can_catch"](typeArray[i],throwntype,thrown)){thrown=HEAP32[thrown>>2];info.adjusted=thrown;return(asm["setTempRet0"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr}Module["_memset"]=_memset;var _BDtoILow=true;var _emscripten_resume=true;function ___gxx_personality_v0(){}var _emscripten_landingpad=true;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){return leadingNulls(date.tm_hour<13?date.tm_hour:date.tm_hour-12,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>0&&date.tm_hour<13){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)}),"%w":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()}),"%W":(function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"}),"%y":(function(date){return(date.tm_year+1900).toString().substring(2)}),"%Y":(function(date){return date.tm_year+1900}),"%z":(function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _free(){}Module["_free"]=_free;function ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown){___cxa_end_catch.rethrown=false;return}asm["setThrew"](0);var ptr=EXCEPTIONS.caught.pop();if(ptr){EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));EXCEPTIONS.last=0}}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Runtime.dynCall("v",func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _fabs=Math_abs;var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(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)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}function _malloc(bytes){var ptr=Runtime.dynamicAlloc(bytes+8);return ptr+8&4294967288}Module["_malloc"]=_malloc;function ___cxa_allocate_exception(size){return _malloc(size)}var 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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_i64Add"]=_i64Add;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(variable){if(!HEAP8[variable>>0]){HEAP8[variable>>0]=1;return 1}return 0}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _llvm_eh_typeid_for(type){return type}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _pthread_mutex_lock(){}var _emscripten_postinvoke=true;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_bitshift64Shl"]=_bitshift64Shl;function ___cxa_guard_abort(){}Module["_memmove"]=_memmove;var _emscripten_preinvoke=true;var _BItoD=true;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=true;var ptr=EXCEPTIONS.caught.pop();EXCEPTIONS.last=ptr;throw ptr}function _pthread_mutex_unlock(){}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;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++){var curr=HEAPU8[ptr+j];if(curr===0||curr===10){Module["print"](UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___dso_handle=allocate(1,"i32*",ALLOC_STATIC);Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiid(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){try{return Module["dynCall_iiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){try{Module["dynCall_viiiiiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{Module["dynCall_viiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){try{Module["dynCall_viiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_diii(index,a1,a2,a3){try{return Module["dynCall_diii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_i(index){try{return Module["dynCall_i"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiid"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiid":invoke_iiiiiid,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_iiiiiiiiiiii":invoke_iiiiiiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiiiiiiiiiiiii":invoke_viiiiiiiiiiiiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiiiii":invoke_viiiiiii,"invoke_viiiiiiiiii":invoke_viiiiiiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_diii":invoke_diii,"invoke_i":invoke_i,"invoke_iiiii":invoke_iiiii,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiiid":invoke_iiiiid,"invoke_viiii":invoke_viiii,"_fabs":_fabs,"_strftime":_strftime,"_pthread_cond_wait":_pthread_cond_wait,"___lock":___lock,"_pthread_key_create":_pthread_key_create,"_abort":_abort,"___cxa_guard_acquire":___cxa_guard_acquire,"___setErrNo":___setErrNo,"___gxx_personality_v0":___gxx_personality_v0,"___assert_fail":___assert_fail,"___cxa_free_exception":___cxa_free_exception,"___cxa_allocate_exception":___cxa_allocate_exception,"___cxa_find_matching_catch":___cxa_find_matching_catch,"__isLeapYear":__isLeapYear,"___cxa_guard_release":___cxa_guard_release,"__addDays":__addDays,"_strftime_l":_strftime_l,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_llvm_eh_typeid_for":_llvm_eh_typeid_for,"_sbrk":_sbrk,"___cxa_begin_catch":___cxa_begin_catch,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___cxa_end_catch":___cxa_end_catch,"___resumeException":___resumeException,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"_sysconf":_sysconf,"_pthread_getspecific":_pthread_getspecific,"__arraySum":__arraySum,"_pthread_self":_pthread_self,"_pthread_mutex_unlock":_pthread_mutex_unlock,"_pthread_once":_pthread_once,"___syscall54":___syscall54,"___unlock":___unlock,"_pthread_cleanup_pop":_pthread_cleanup_pop,"_pthread_cond_broadcast":_pthread_cond_broadcast,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_setspecific":_pthread_setspecific,"___cxa_atexit":___cxa_atexit,"___cxa_throw":___cxa_throw,"___cxa_rethrow":___cxa_rethrow,"___syscall6":___syscall6,"_pthread_cleanup_push":_pthread_cleanup_push,"___cxa_pure_virtual":___cxa_pure_virtual,"_time":_time,"_pthread_mutex_lock":_pthread_mutex_lock,"___cxa_guard_abort":___cxa_guard_abort,"_atexit":_atexit,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8,"___dso_handle":___dso_handle};// EMSCRIPTEN_START_ASM
|
|
21
|
+
var Module;if(!Module)Module=(typeof CharLS!=="undefined"?CharLS:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&"function"==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=__webpack_require__(497);var nodePath=__webpack_require__(13);Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__webpack_dirname__,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*\(([^)]*)\)\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={};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){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){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=[_malloc,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(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a<i;a++)pre+=" ";Module.print(pre+"^")}function parseNested(){i++;if(func[i]==="K")i++;var parts=[];while(func[i]!=="E"){if(func[i]==="S"){i++;var next=func.indexOf("_",i);var num=func.substring(i,next)||0;parts.push(subs[num]||"?");i=next+1;continue}if(func[i]==="C"){parts.push(parts[parts.length-1]);i+=2;continue}var size=parseInt(func.substr(i));var pre=size.toString().length;if(!size||!pre){i--;break}var curr=func.substr(i+pre,size);parts.push(curr);subs.push(curr);i+=pre+size}i++;return parts}function parse(rawList,limit,allowVoid){limit=limit||Infinity;var ret="",list=[];function flushList(){return"("+list.join(", ")+")"}var name;if(func[i]==="N"){name=parseNested().join("::");limit--;if(limit===0)return rawList?[name]:name}else{if(func[i]==="K"||first&&func[i]==="L")i++;var size=parseInt(func.substr(i));if(size){var pre=size.toString().length;name=func.substr(i+pre,size);i+=pre+size}}first=false;if(func[i]==="I"){i++;var iList=parse(true);var iRet=parse(true,1,true);ret+=iRet[0]+" "+name+"<"+iList.join(", ")+">"}else{ret=name}paramLoop:while(i<func.length&&limit-->0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function enlargeMemory(){var OLD_TOTAL_MEMORY=TOTAL_MEMORY;var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;try{if(ArrayBuffer.transfer){buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY)}else{var oldHEAP8=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return false}var success=_emscripten_replace_memory(buffer);if(!success)return false;Module["buffer"]=buffer;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);if(!ArrayBuffer.transfer){HEAP8.set(oldHEAP8)}return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY);HEAP8=new Int8Array(buffer);HEAP16=new Int16Array(buffer);HEAP32=new Int32Array(buffer);HEAPU8=new Uint8Array(buffer);HEAPU16=new Uint16Array(buffer);HEAPU32=new Uint32Array(buffer);HEAPF32=new Float32Array(buffer);HEAPF64=new Float64Array(buffer);HEAP32[0]=255;assert(HEAPU8[0]===255&&HEAPU8[3]===0,"Typed arrays 2 must be run on a little-endian system");Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){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"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+59744;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_jpegls_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35640);allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39844);allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+42396);allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52636);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0){if(info.destructor){Runtime.dynCall("vi",info.destructor,[ptr])}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(ptr));throw ptr}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm["setTempRet0"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm["setTempRet0"](0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i<typeArray.length;i++){if(typeArray[i]&&Module["___cxa_can_catch"](typeArray[i],throwntype,thrown)){thrown=HEAP32[thrown>>2];info.adjusted=thrown;return(asm["setTempRet0"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr}Module["_memset"]=_memset;var _BDtoILow=true;var _emscripten_resume=true;function ___gxx_personality_v0(){}var _emscripten_landingpad=true;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){return leadingNulls(date.tm_hour<13?date.tm_hour:date.tm_hour-12,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>0&&date.tm_hour<13){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)}),"%w":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()}),"%W":(function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"}),"%y":(function(date){return(date.tm_year+1900).toString().substring(2)}),"%Y":(function(date){return date.tm_year+1900}),"%z":(function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _free(){}Module["_free"]=_free;function ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown){___cxa_end_catch.rethrown=false;return}asm["setThrew"](0);var ptr=EXCEPTIONS.caught.pop();if(ptr){EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));EXCEPTIONS.last=0}}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Runtime.dynCall("v",func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _fabs=Math_abs;var PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(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)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}function _malloc(bytes){var ptr=Runtime.dynamicAlloc(bytes+8);return ptr+8&4294967288}Module["_malloc"]=_malloc;function ___cxa_allocate_exception(size){return _malloc(size)}var 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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_i64Add"]=_i64Add;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(variable){if(!HEAP8[variable>>0]){HEAP8[variable>>0]=1;return 1}return 0}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _llvm_eh_typeid_for(type){return type}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _pthread_mutex_lock(){}var _emscripten_postinvoke=true;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_bitshift64Shl"]=_bitshift64Shl;function ___cxa_guard_abort(){}Module["_memmove"]=_memmove;var _emscripten_preinvoke=true;var _BItoD=true;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=true;var ptr=EXCEPTIONS.caught.pop();EXCEPTIONS.last=ptr;throw ptr}function _pthread_mutex_unlock(){}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;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++){var curr=HEAPU8[ptr+j];if(curr===0||curr===10){Module["print"](UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___dso_handle=allocate(1,"i32*",ALLOC_STATIC);Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiid(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){try{return Module["dynCall_iiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){try{Module["dynCall_viiiiiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{Module["dynCall_viiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){try{Module["dynCall_viiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_diii(index,a1,a2,a3){try{return Module["dynCall_diii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_i(index){try{return Module["dynCall_i"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiid"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiid":invoke_iiiiiid,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_iiiiiiiiiiii":invoke_iiiiiiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiiiiiiiiiiiii":invoke_viiiiiiiiiiiiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiiiii":invoke_viiiiiii,"invoke_viiiiiiiiii":invoke_viiiiiiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_diii":invoke_diii,"invoke_i":invoke_i,"invoke_iiiii":invoke_iiiii,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiiid":invoke_iiiiid,"invoke_viiii":invoke_viiii,"_fabs":_fabs,"_strftime":_strftime,"_pthread_cond_wait":_pthread_cond_wait,"___lock":___lock,"_pthread_key_create":_pthread_key_create,"_abort":_abort,"___cxa_guard_acquire":___cxa_guard_acquire,"___setErrNo":___setErrNo,"___gxx_personality_v0":___gxx_personality_v0,"___assert_fail":___assert_fail,"___cxa_free_exception":___cxa_free_exception,"___cxa_allocate_exception":___cxa_allocate_exception,"___cxa_find_matching_catch":___cxa_find_matching_catch,"__isLeapYear":__isLeapYear,"___cxa_guard_release":___cxa_guard_release,"__addDays":__addDays,"_strftime_l":_strftime_l,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_llvm_eh_typeid_for":_llvm_eh_typeid_for,"_sbrk":_sbrk,"___cxa_begin_catch":___cxa_begin_catch,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___cxa_end_catch":___cxa_end_catch,"___resumeException":___resumeException,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"_sysconf":_sysconf,"_pthread_getspecific":_pthread_getspecific,"__arraySum":__arraySum,"_pthread_self":_pthread_self,"_pthread_mutex_unlock":_pthread_mutex_unlock,"_pthread_once":_pthread_once,"___syscall54":___syscall54,"___unlock":___unlock,"_pthread_cleanup_pop":_pthread_cleanup_pop,"_pthread_cond_broadcast":_pthread_cond_broadcast,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_setspecific":_pthread_setspecific,"___cxa_atexit":___cxa_atexit,"___cxa_throw":___cxa_throw,"___cxa_rethrow":___cxa_rethrow,"___syscall6":___syscall6,"_pthread_cleanup_push":_pthread_cleanup_push,"___cxa_pure_virtual":___cxa_pure_virtual,"_time":_time,"_pthread_mutex_lock":_pthread_mutex_lock,"___cxa_guard_abort":___cxa_guard_abort,"_atexit":_atexit,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8,"___dso_handle":___dso_handle};// EMSCRIPTEN_START_ASM
|
|
30
22
|
var asm=(function(global,env,buffer) {
|
|
31
23
|
var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=env.___dso_handle|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,I=0,J=0,K=0,L=0.0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=0;var W=global.Math.floor;var X=global.Math.abs;var Y=global.Math.sqrt;var Z=global.Math.pow;var _=global.Math.cos;var $=global.Math.sin;var aa=global.Math.tan;var ba=global.Math.acos;var ca=global.Math.asin;var da=global.Math.atan;var ea=global.Math.atan2;var fa=global.Math.exp;var ga=global.Math.log;var ha=global.Math.ceil;var ia=global.Math.imul;var ja=global.Math.min;var ka=global.Math.clz32;var la=env.abort;var ma=env.assert;var na=env.invoke_iiiiiiii;var oa=env.invoke_viiiii;var pa=env.invoke_iiiiiid;var qa=env.invoke_vi;var ra=env.invoke_vii;var sa=env.invoke_iiiiiii;var ta=env.invoke_ii;var ua=env.invoke_iiiiiiiiiiii;var va=env.invoke_iiii;var wa=env.invoke_viiiiiiiiiiiiiii;var xa=env.invoke_viiiiii;var ya=env.invoke_viiiiiii;var za=env.invoke_viiiiiiiiii;var Aa=env.invoke_iii;var Ba=env.invoke_iiiiii;var Ca=env.invoke_diii;var Da=env.invoke_i;var Ea=env.invoke_iiiii;var Fa=env.invoke_viii;var Ga=env.invoke_v;var Ha=env.invoke_iiiiiiiii;var Ia=env.invoke_iiiiid;var Ja=env.invoke_viiii;var Ka=env._fabs;var La=env._strftime;var Ma=env._pthread_cond_wait;var Na=env.___lock;var Oa=env._pthread_key_create;var Pa=env._abort;var Qa=env.___cxa_guard_acquire;var Ra=env.___setErrNo;var Sa=env.___gxx_personality_v0;var Ta=env.___assert_fail;var Ua=env.___cxa_free_exception;var Va=env.___cxa_allocate_exception;var Wa=env.___cxa_find_matching_catch;var Xa=env.__isLeapYear;var Ya=env.___cxa_guard_release;var Za=env.__addDays;var _a=env._strftime_l;var $a=env._emscripten_set_main_loop_timing;var ab=env._llvm_eh_typeid_for;var bb=env._sbrk;var cb=env.___cxa_begin_catch;var db=env._emscripten_memcpy_big;var eb=env.___cxa_end_catch;var fb=env.___resumeException;var gb=env.__ZSt18uncaught_exceptionv;var hb=env._sysconf;var ib=env._pthread_getspecific;var jb=env.__arraySum;var kb=env._pthread_self;var lb=env._pthread_mutex_unlock;var mb=env._pthread_once;var nb=env.___syscall54;var ob=env.___unlock;var pb=env._pthread_cleanup_pop;var qb=env._pthread_cond_broadcast;var rb=env._emscripten_set_main_loop;var sb=env._pthread_setspecific;var tb=env.___cxa_atexit;var ub=env.___cxa_throw;var vb=env.___cxa_rethrow;var wb=env.___syscall6;var xb=env._pthread_cleanup_push;var yb=env.___cxa_pure_virtual;var zb=env._time;var Ab=env._pthread_mutex_lock;var Bb=env.___cxa_guard_abort;var Cb=env._atexit;var Db=env.___syscall140;var Eb=env.___syscall145;var Fb=env.___syscall146;var Gb=0.0;function Hb(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
|
|
32
24
|
// EMSCRIPTEN_START_FUNCS
|
|
@@ -55,58 +47,7 @@ var Ib=[cx,_q,cr,Yr,as,fs,hs,Hu,Su,cx,cx,cx,cx,cx,cx,cx];var Jb=[dx,si,gi,Wh,Kh,
|
|
|
55
47
|
|
|
56
48
|
/***/ }),
|
|
57
49
|
|
|
58
|
-
/***/
|
|
59
|
-
/***/ (() => {
|
|
60
|
-
|
|
61
|
-
/* (ignored) */
|
|
62
|
-
|
|
63
|
-
/***/ }),
|
|
64
|
-
|
|
65
|
-
/***/ 554:
|
|
66
|
-
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
|
67
|
-
|
|
68
|
-
var __dirname = "/";
|
|
69
|
-
/*! OpenJPEG.js - v0.10.2 - 2016-07-11 | (c) 2016 Chris Hafey | https://github.com/chafey/openjpeg */
|
|
70
|
-
;module.exports=function(Module) {
|
|
71
|
-
Module = Module || {};
|
|
72
|
-
|
|
73
|
-
var Module;if(!Module)Module=(typeof OpenJPEG!=="undefined"?OpenJPEG:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&"function"==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=__webpack_require__(722);var nodePath=__webpack_require__(978);Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*\(([^)]*)\)\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={};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){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){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=[_malloc,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(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a<i;a++)pre+=" ";Module.print(pre+"^")}function parseNested(){i++;if(func[i]==="K")i++;var parts=[];while(func[i]!=="E"){if(func[i]==="S"){i++;var next=func.indexOf("_",i);var num=func.substring(i,next)||0;parts.push(subs[num]||"?");i=next+1;continue}if(func[i]==="C"){parts.push(parts[parts.length-1]);i+=2;continue}var size=parseInt(func.substr(i));var pre=size.toString().length;if(!size||!pre){i--;break}var curr=func.substr(i+pre,size);parts.push(curr);subs.push(curr);i+=pre+size}i++;return parts}function parse(rawList,limit,allowVoid){limit=limit||Infinity;var ret="",list=[];function flushList(){return"("+list.join(", ")+")"}var name;if(func[i]==="N"){name=parseNested().join("::");limit--;if(limit===0)return rawList?[name]:name}else{if(func[i]==="K"||first&&func[i]==="L")i++;var size=parseInt(func.substr(i));if(size){var pre=size.toString().length;name=func.substr(i+pre,size);i+=pre+size}}first=false;if(func[i]==="I"){i++;var iList=parse(true);var iRet=parse(true,1,true);ret+=iRet[0]+" "+name+"<"+iList.join(", ")+">"}else{ret=name}paramLoop:while(i<func.length&&limit-->0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function enlargeMemory(){var OLD_TOTAL_MEMORY=TOTAL_MEMORY;var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;try{if(ArrayBuffer.transfer){buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY)}else{var oldHEAP8=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return false}var success=_emscripten_replace_memory(buffer);if(!success)return false;Module["buffer"]=buffer;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);if(!ArrayBuffer.transfer){HEAP8.set(oldHEAP8)}return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY);HEAP8=new Int8Array(buffer);HEAP16=new Int16Array(buffer);HEAP32=new Int32Array(buffer);HEAPU8=new Uint8Array(buffer);HEAPU16=new Uint16Array(buffer);HEAPU32=new Uint32Array(buffer);HEAPF32=new Float32Array(buffer);HEAPF64=new Float64Array(buffer);HEAP32[0]=255;assert(HEAPU8[0]===255&&HEAPU8[3]===0,"Typed arrays 2 must be run on a little-endian system");Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){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"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+25664;__ATINIT__.push();allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}Module["_i64Subtract"]=_i64Subtract;var _floorf=Math_floor;Module["_bitshift64Ashr"]=_bitshift64Ashr;var _SItoF=true;Module["_memset"]=_memset;var _BDtoILow=true;var _ceilf=Math_ceil;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function ___lock(){}function ___unlock(){}Module["_i64Add"]=_i64Add;var _floor=Math_floor;var _sqrt=Math_sqrt;var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(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)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module["_bitshift64Lshr"]=_bitshift64Lshr;var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}var _BItoD=true;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;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++){var curr=HEAPU8[ptr+j];if(curr===0||curr===10){Module["print"](UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}// removed by dead control flow
|
|
74
|
-
case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}// removed by dead control flow
|
|
75
|
-
case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}// removed by dead control flow
|
|
76
|
-
case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){try{return Module["dynCall_iiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_di":invoke_di,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_iiiiiiiiiiii":invoke_iiiiiiiiiiii,"invoke_iiiii":invoke_iiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_llvm_pow_f64":_llvm_pow_f64,"_abort":_abort,"_pthread_cleanup_push":_pthread_cleanup_push,"_ceilf":_ceilf,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_sbrk":_sbrk,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_sysconf":_sysconf,"___setErrNo":___setErrNo,"_floor":_floor,"_pthread_self":_pthread_self,"_sqrt":_sqrt,"_floorf":_floorf,"___syscall54":___syscall54,"___unlock":___unlock,"_emscripten_set_main_loop":_emscripten_set_main_loop,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"_time":_time,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
|
|
77
|
-
var asm=(function(global,env,buffer) {
|
|
78
|
-
var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0.0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_iiiiiiii;var na=env.invoke_iiii;var oa=env.invoke_di;var pa=env.invoke_vi;var qa=env.invoke_vii;var ra=env.invoke_iiiiiii;var sa=env.invoke_ii;var ta=env.invoke_viii;var ua=env.invoke_iiiiiiiiiiii;var va=env.invoke_iiiii;var wa=env.invoke_iii;var xa=env.invoke_iiiiii;var ya=env.invoke_viiii;var za=env._pthread_cleanup_pop;var Aa=env.___syscall221;var Ba=env._llvm_pow_f64;var Ca=env._abort;var Da=env._pthread_cleanup_push;var Ea=env._ceilf;var Fa=env._emscripten_set_main_loop_timing;var Ga=env._sbrk;var Ha=env._emscripten_memcpy_big;var Ia=env._sysconf;var Ja=env.___setErrNo;var Ka=env._floor;var La=env._pthread_self;var Ma=env._sqrt;var Na=env._floorf;var Oa=env.___syscall54;var Pa=env.___unlock;var Qa=env._emscripten_set_main_loop;var Ra=env.___lock;var Sa=env.___syscall6;var Ta=env.___syscall5;var Ua=env._time;var Va=env.___syscall140;var Wa=env.___syscall145;var Xa=env.___syscall146;var Ya=0.0;function Za(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
|
|
79
|
-
// EMSCRIPTEN_START_FUNCS
|
|
80
|
-
function pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+48|0;e=l+32|0;j=l+28|0;k[e>>2]=c;if((k[a+8>>2]|0)==16)i=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else i=k[a+12>>2]|0;f=(k[a+80>>2]|0)+16|0;g=(k[f>>2]|0)>>>0<257?1:2;h=g+1|0;if(h>>>0>c>>>0){cc(d,1,14585,l)|0;d=0;r=l;return d|0}k[e>>2]=c-h;Ab(b,j,g);c=k[j>>2]|0;if(c>>>0>=(k[f>>2]|0)>>>0){cc(d,1,14611,l+8|0)|0;d=0;r=l;return d|0}Ab(b+g|0,(k[i+5584>>2]|0)+(c*1080|0)|0,1);if(!(Pe(a,k[j>>2]|0,b+h|0,e,d)|0)){cc(d,1,14585,l+16|0)|0;d=0;r=l;return d|0}if(!(k[e>>2]|0)){d=1;r=l;return d|0}cc(d,1,14585,l+24|0)|0;d=0;r=l;return d|0}function qe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i+8|0;e=i+20|0;g=k[(k[a+80>>2]|0)+16>>2]|0;f=g>>>0<257?1:2;if((f+2|0)!=(c|0)){cc(d,1,14502,i)|0;h=0;r=i;return h|0}if((k[a+8>>2]|0)==16)a=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else a=k[a+12>>2]|0;Ab(b,e,f);Ab(b+f|0,i+16|0,1);c=k[e>>2]|0;if(c>>>0<g>>>0){Ab(b+(f+1)|0,(k[a+5584>>2]|0)+(c*1080|0)+808|0,1);h=1;r=i;return h|0}else{k[h>>2]=c;k[h+4>>2]=g;cc(d,1,14528,h)|0;h=0;r=i;return h|0}return 0}function re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+16|0;e=g+12|0;k[e>>2]=c;if(!(Oe(a,0,b,e,d)|0)){cc(d,1,14476,g)|0;f=0;r=g;return f|0}if(k[e>>2]|0){cc(d,1,14476,g+8|0)|0;f=0;r=g;return f|0}if((k[a+8>>2]|0)==16)e=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else e=k[a+12>>2]|0;e=k[e+5584>>2]|0;c=a+80|0;if((k[(k[c>>2]|0)+16>>2]|0)>>>0<=1){f=1;r=g;return f|0}d=e+24|0;a=e+804|0;f=e+28|0;b=1;while(1){k[e+1104>>2]=k[d>>2];k[e+1884>>2]=k[a>>2];cj(e+1108|0,f|0,776)|0;b=b+1|0;if(b>>>0>=(k[(k[c>>2]|0)+16>>2]|0)>>>0){e=1;break}else e=e+1080|0}r=g;return e|0}function se(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+48|0;m=n+32|0;l=n+24|0;j=n+16|0;f=n+8|0;e=n;i=n+40|0;g=n+36|0;k[i>>2]=c;h=a+80|0;do if((k[(k[h>>2]|0)+16>>2]|0)>>>0<257){if(c){Ab(b,g,1);f=b+1|0;b=c+-1|0;break}cc(d,1,14129,e)|0;m=0;r=n;return m|0}else{if(c>>>0>=2){Ab(b,g,2);f=b+2|0;b=c+-2|0;break}cc(d,1,14129,f)|0;m=0;r=n;return m|0}while(0);k[i>>2]=b;e=k[g>>2]|0;b=k[(k[h>>2]|0)+16>>2]|0;if(e>>>0>=b>>>0){k[j>>2]=e;k[j+4>>2]=b;cc(d,1,14155,j)|0;m=0;r=n;return m|0}if(!(Oe(a,e,f,i,d)|0)){cc(d,1,14129,l)|0;m=0;r=n;return m|0}if(!(k[i>>2]|0)){m=1;r=n;return m|0}cc(d,1,14129,m)|0;m=0;r=n;return m|0}function te(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+16|0;f=t+8|0;s=t+12|0;q=k[(k[a+80>>2]|0)+16>>2]|0;p=q>>>0<257?1:2;o=(p<<1)+5|0;e=(c>>>0)/(o>>>0)|0;if((e|0)==0|((c>>>0)%(o>>>0)|0|0)!=0){cc(d,1,14085,t)|0;s=0;r=t;return s|0}if((k[a+8>>2]|0)==16)o=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else o=k[a+12>>2]|0;c=o+5636|0;a=i[c>>0]|0;if(!(a&4))n=0;else n=(k[o+420>>2]|0)+1|0;m=n+e|0;if(m>>>0>31){k[f>>2]=m;cc(d,1,14111,f)|0;s=0;r=t;return s|0}i[c>>0]=a|4;if(n>>>0<m>>>0){d=p+1|0;l=o+8|0;f=p+3|0;g=p|4;h=g+p|0;j=h+1|0;a=b;e=n;c=o+424+(n*148|0)|0;while(1){Ab(a,c,1);Ab(a+1|0,c+4|0,p);b=c+8|0;Ab(a+d|0,b,2);u=k[b>>2]|0;n=k[l>>2]|0;k[b>>2]=u>>>0<n>>>0?u:n;Ab(a+f|0,c+12|0,1);b=c+16|0;Ab(a+g|0,b,p);Ab(a+h|0,s,1);k[c+36>>2]=k[s>>2];n=k[b>>2]|0;k[b>>2]=n>>>0<q>>>0?n:q;e=e+1|0;if(e>>>0>=m>>>0)break;else{a=a+j|0;c=c+148|0}}}k[o+420>>2]=m+-1;u=1;r=t;return u|0}function ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,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;M=r;r=r+144|0;K=M+128|0;G=M+120|0;F=M+112|0;E=M+104|0;D=M+96|0;C=M+88|0;A=M+72|0;t=M+64|0;q=M+56|0;p=M+48|0;o=M+40|0;s=M+32|0;h=M+24|0;f=M+16|0;e=M+136|0;w=M+132|0;I=k[a+80>>2]|0;J=a+88|0;if(c>>>0<36){cc(d,1,13440,M)|0;d=0;r=M;return d|0}H=c+-36|0;n=(H>>>0)/3|0;if((H>>>0)%3|0){cc(d,1,13440,M+8|0)|0;d=0;r=M;return d|0}Ab(b,e,2);j[J>>1]=k[e>>2];x=I+8|0;Ab(b+2|0,x,4);B=I+12|0;Ab(b+6|0,B,4);Ab(b+10|0,I,4);m=I+4|0;Ab(b+14|0,m,4);v=a+100|0;Ab(b+18|0,v,4);z=a+104|0;Ab(b+22|0,z,4);u=a+92|0;Ab(b+26|0,u,4);y=a+96|0;Ab(b+30|0,y,4);Ab(b+34|0,e,2);g=b+36|0;c=k[e>>2]|0;if(c>>>0>=16385){k[f>>2]=c;cc(d,1,13468,f)|0;d=0;r=M;return d|0}c=c&65535;H=I+16|0;k[H>>2]=c;if((c|0)!=(n|0)){k[h>>2]=c;k[h+4>>2]=n;cc(d,1,13529,h)|0;d=0;r=M;return d|0}h=k[I>>2]|0;l=k[x>>2]|0;if(l>>>0>h>>>0){c=k[m>>2]|0;b=k[B>>2]|0;if(c>>>0<b>>>0){e=k[v>>2]|0;f=k[z>>2]|0;if(!(ha(f,e)|0)){k[o>>2]=e;k[o+4>>2]=f;cc(d,1,13705,o)|0;d=0;r=M;return d|0}s=hj(b|0,0,l|0,0)|0;if(!((s|0)==(ha(b,l)|0)&(L|0)==0)){k[p>>2]=l;k[p+4>>2]=b;cc(d,1,13766,p)|0;d=0;r=M;return d|0}l=k[u>>2]|0;o=aj(l|0,0,e|0,0)|0;p=L;m=k[y>>2]|0;s=aj(m|0,0,f|0,0)|0;if(l>>>0<=h>>>0?m>>>0<=c>>>0&(o|0-p)>>>0>h>>>0&(s|0-L)>>>0>c>>>0:0){b=_c(n,52)|0;n=I+24|0;k[n>>2]=b;if(!b){k[H>>2]=0;cc(d,1,13852,t)|0;d=0;r=M;return d|0}a:do if(k[H>>2]|0){h=a+168|0;c=0;f=b;while(1){Ab(g,w,1);k[f+24>>2]=(k[w>>2]&127)+1;k[f+32>>2]=(k[w>>2]|0)>>>7;Ab(g+1|0,w,1);k[f>>2]=k[w>>2];Ab(g+2|0,w,1);e=k[w>>2]|0;k[f+4>>2]=e;b=k[f>>2]|0;if((e+-1|0)>>>0>254|(b+-1|0)>>>0>254)break;k[f+36>>2]=0;k[f+40>>2]=k[h>>2];c=c+1|0;if(c>>>0>=(k[H>>2]|0)>>>0)break a;else{g=g+3|0;f=f+52|0}}k[A>>2]=c;k[A+4>>2]=b;k[A+8>>2]=e;cc(d,1,13900,A)|0;d=0;r=M;return d|0}while(0);l=k[u>>2]|0;h=k[v>>2]|0;g=((k[x>>2]|0)+-1-l+h|0)/(h|0)|0;k[a+112>>2]=g;f=k[y>>2]|0;e=k[z>>2]|0;b=((k[B>>2]|0)+-1-f+e|0)/(e|0)|0;k[a+116>>2]=b;if(!((b|0)==0|(g|0)==0)?g>>>0<=(65535/(b>>>0)|0)>>>0:0){m=ha(g,b)|0;c=a+28|0;if(!(i[a+76>>0]&2)){k[c>>2]=0;k[a+32>>2]=0;k[a+36>>2]=g;k[a+40>>2]=b}else{k[c>>2]=(((k[c>>2]|0)-l|0)>>>0)/(h>>>0)|0;C=a+32|0;k[C>>2]=(((k[C>>2]|0)-f|0)>>>0)/(e>>>0)|0;C=a+36|0;k[C>>2]=((k[C>>2]|0)+-1-l+h|0)/(h|0)|0;C=a+40|0;k[C>>2]=((k[C>>2]|0)+-1-f+e|0)/(e|0)|0}C=_c(m,5640)|0;g=a+164|0;k[g>>2]=C;if(!C){cc(d,1,13852,D)|0;d=0;r=M;return d|0}D=_c(k[H>>2]|0,1080)|0;b=a+12|0;k[(k[b>>2]|0)+5584>>2]=D;if(!D){cc(d,1,13852,E)|0;d=0;r=M;return d|0}E=_c(10,20)|0;c=k[b>>2]|0;k[c+5612>>2]=E;if(!E){cc(d,1,13852,F)|0;d=0;r=M;return d|0}k[c+5620>>2]=10;F=_c(10,20)|0;c=k[b>>2]|0;k[c+5624>>2]=F;if(!F){cc(d,1,13852,G)|0;d=0;r=M;return d|0}k[c+5632>>2]=10;f=k[H>>2]|0;if(f){e=k[n>>2]|0;c=c+5584|0;b=0;do{if(!(k[e+(b*52|0)+32>>2]|0))k[(k[c>>2]|0)+(b*1080|0)+1076>>2]=1<<(k[e+(b*52|0)+24>>2]|0)+-1;b=b+1|0}while(b>>>0<f>>>0)}b:do if(m){c=k[g>>2]|0;G=_c(f,1080)|0;k[c+5584>>2]=G;if(G){b=0;while(1){b=b+1|0;if(b>>>0>=m>>>0)break b;G=_c(k[H>>2]|0,1080)|0;k[c+11224>>2]=G;if(!G)break;else c=c+5640|0}}cc(d,1,13852,K)|0;d=0;r=M;return d|0}while(0);k[a+8>>2]=4;ic(I,J);d=1;r=M;return d|0}k[C>>2]=g;k[C+4>>2]=b;cc(d,1,14002,C)|0;d=0;r=M;return d|0}cc(d,1,13808,q)|0;d=0;r=M;return d|0}}else{b=k[B>>2]|0;c=k[m>>2]|0}k[s>>2]=l-h;k[s+4>>2]=b-c;cc(d,1,13643,s)|0;d=0;r=M;return d|0}function ve(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=r;r=r+32|0;a=e+12|0;if(c>>>0<2){cc(d,1,13414,e)|0;d=0;r=e;return d|0}Ab(b,e+16|0,1);Ab(b+1|0,a,1);b=k[a>>2]|0;if(!(((c+-2|0)>>>0)%(((b>>>5&2)+2+(b>>>4&3)|0)>>>0)|0)){d=1;r=e;return d|0}cc(d,1,13414,e+8|0)|0;d=0;r=e;return d|0}function we(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=r;r=r+16|0;if(!c){cc(d,1,13388,a)|0;b=0}else b=1;r=a;return b|0}function xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i+8|0;g=i+12|0;if(!c){cc(d,1,13362,i)|0;d=0;r=i;return d|0}Ab(b,i+16|0,1);e=c+-1|0;if(!e){d=1;r=i;return d|0}else{f=0;a=0}do{b=b+1|0;Ab(b,g,1);c=k[g>>2]|0;if(!(c&128))a=0;else a=(c&127|a)<<7;f=f+1|0}while((f|0)!=(e|0));if(!a){d=1;r=i;return d|0}cc(d,1,13362,h)|0;d=0;r=i;return d|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+48|0;n=o+32|0;j=o+24|0;f=o+16|0;e=o+8|0;m=o+36|0;if(c>>>0<2){cc(d,1,13276,o)|0;n=0;r=o;return n|0}l=a+184|0;i[l>>0]=i[l>>0]|1;Ab(b,m,1);l=b+1|0;h=c+-1|0;g=a+124|0;c=k[g>>2]|0;do if(c){e=a+120|0;b=k[m>>2]|0;if((k[e>>2]|0)>>>0<=b>>>0){a=b+1|0;b=bd(c,a<<3)|0;if(b){k[g>>2]=b;c=k[e>>2]|0;_i(b+(c<<3)|0,0,a-c<<3|0)|0;k[e>>2]=a;c=k[g>>2]|0;break}cc(d,1,13302,f)|0;n=0;r=o;return n|0}}else{b=(k[m>>2]|0)+1|0;c=_c(b,8)|0;k[g>>2]=c;if(c){k[a+120>>2]=b;break}cc(d,1,13302,e)|0;n=0;r=o;return n|0}while(0);b=k[m>>2]|0;if(k[c+(b<<3)>>2]|0){k[j>>2]=b;cc(d,1,13340,j)|0;n=0;r=o;return n|0}j=Zc(h)|0;c=k[m>>2]|0;b=k[g>>2]|0;k[b+(c<<3)>>2]=j;if(!j){cc(d,1,13302,n)|0;n=0;r=o;return n|0}else{k[b+(c<<3)+4>>2]=h;cj(k[b+(k[m>>2]<<3)>>2]|0,l|0,h|0)|0;n=1;r=o;return n|0}return 0}function ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+48|0;p=q+40|0;n=q+32|0;h=q+24|0;g=q+16|0;o=q+44|0;if(c>>>0<2){cc(d,1,13127,q)|0;p=0;r=q;return p|0}if(i[a+184>>0]&1){cc(d,1,13153,q+8|0)|0;p=0;r=q;return p|0}f=k[a+200>>2]|0;e=k[a+164>>2]|0;m=e+(f*5640|0)+5636|0;i[m>>0]=i[m>>0]|2;Ab(b,o,1);m=b+1|0;l=c+-1|0;j=e+(f*5640|0)+5164|0;b=k[j>>2]|0;do if(b){e=e+(f*5640|0)+5160|0;a=k[o>>2]|0;if((k[e>>2]|0)>>>0<=a>>>0){c=a+1|0;a=bd(b,c<<3)|0;if(a){k[j>>2]=a;b=k[e>>2]|0;_i(a+(b<<3)|0,0,c-b<<3|0)|0;k[e>>2]=c;b=k[j>>2]|0;break}cc(d,1,8775,h)|0;p=0;r=q;return p|0}}else{a=(k[o>>2]|0)+1|0;b=_c(a,8)|0;k[j>>2]=b;if(b){k[e+(f*5640|0)+5160>>2]=a;break}cc(d,1,8775,g)|0;p=0;r=q;return p|0}while(0);a=k[o>>2]|0;if(k[b+(a<<3)>>2]|0){k[n>>2]=a;cc(d,1,13254,n)|0;p=0;r=q;return p|0}n=Zc(l)|0;b=k[o>>2]|0;a=k[j>>2]|0;k[a+(b<<3)>>2]=n;if(!n){cc(d,1,8775,p)|0;p=0;r=q;return p|0}else{k[a+(b<<3)+4>>2]=l;cj(k[a+(k[o>>2]<<3)>>2]|0,m|0,l|0)|0;p=1;r=q;return p|0}return 0}function Ae(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=r;r=r+16|0;if((k[(k[a+80>>2]|0)+16>>2]<<2|0)==(c|0)){d=1;r=b;return d|0}cc(d,1,13101,b)|0;d=0;r=b;return d|0}function Be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 1}function Ce(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+48|0;q=s+40|0;p=s+32|0;j=s+24|0;o=s+44|0;if((k[a+8>>2]|0)==16)h=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else h=k[a+12>>2]|0;if(c>>>0<2){cc(d,1,12933,s)|0;q=0;r=s;return q|0}Ab(b,o,2);if(k[o>>2]|0){cc(d,2,12959,s+8|0)|0;q=1;r=s;return q|0}if(c>>>0<7){cc(d,1,12933,s+16|0)|0;q=0;r=s;return q|0}Ab(b+2|0,o,2);m=b+4|0;n=k[o>>2]&255;i=h+5612|0;e=k[i>>2]|0;l=h+5616|0;a=k[l>>2]|0;a:do if(!a){f=0;g=e}else{f=0;g=e;do{if((k[g+8>>2]|0)==(n|0))break a;g=g+20|0;f=f+1|0}while(f>>>0<a>>>0)}while(0);if((f|0)==(a|0)){f=h+5620|0;do if((a|0)==(k[f>>2]|0)){a=a+10|0;k[f>>2]=a;a=bd(e,a*20|0)|0;if(a){k[i>>2]=a;e=k[l>>2]|0;_i(a+(e*20|0)|0,0,((k[f>>2]|0)-e|0)*20|0)|0;e=k[i>>2]|0;a=k[l>>2]|0;break}cd(k[i>>2]|0);k[i>>2]=0;k[f>>2]=0;k[l>>2]=0;cc(d,1,13019,j)|0;q=0;r=s;return q|0}while(0);k[l>>2]=a+1;g=e+(a*20|0)|0}f=g+12|0;a=k[f>>2]|0;if(a){cd(a);k[f>>2]=0}k[g+8>>2]=n;n=k[o>>2]|0;k[g+4>>2]=n>>>8&3;k[g>>2]=n>>>10&3;Ab(m,o,2);if(k[o>>2]|0){cc(d,2,13057,p)|0;q=1;r=s;return q|0}a=c+-6|0;e=Zc(a)|0;k[f>>2]=e;if(!e){cc(d,1,12933,q)|0;q=0;r=s;return q|0}else{cj(e|0,b+6|0,a|0)|0;k[g+16>>2]=a;q=1;r=s;return q|0}return 0}function De(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;e=h+16|0;g=h+12|0;a=a+80|0;f=k[(k[a>>2]|0)+16>>2]|0;if((f+2|0)!=(c|0)){cc(d,1,12907,h)|0;g=0;r=h;return g|0}Ab(b,e,2);if((k[e>>2]|0)!=(f|0)){cc(d,1,12907,h+8|0)|0;g=0;r=h;return g|0}if(!f){g=1;r=h;return g|0}e=b+2|0;b=0;a=k[(k[a>>2]|0)+24>>2]|0;while(1){Ab(e,g,1);k[a+32>>2]=(k[g>>2]|0)>>>7&1;k[a+24>>2]=(k[g>>2]&127)+1;b=b+1|0;if((b|0)==(f|0)){a=1;break}else{e=e+1|0;a=a+52|0}}r=h;return a|0}function Ee(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=r;r=r+144|0;I=J+120|0;H=J+112|0;G=J+104|0;F=J+96|0;E=J+88|0;D=J+80|0;C=J+72|0;B=J+64|0;A=J+56|0;z=J+48|0;o=J+40|0;n=J+32|0;l=J+24|0;x=J+136|0;u=J+132|0;v=J+128|0;w=J+124|0;if((k[a+8>>2]|0)==16)p=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else p=k[a+12>>2]|0;if(c>>>0<2){cc(d,1,12567,J)|0;I=0;r=J;return I|0}Ab(b,x,2);if(k[x>>2]|0){cc(d,2,12593,J+8|0)|0;I=1;r=J;return I|0}if(c>>>0<7){cc(d,1,12567,J+16|0)|0;I=0;r=J;return I|0}Ab(b+2|0,u,1);m=b+3|0;j=p+5624|0;e=k[j>>2]|0;y=p+5628|0;a=k[y>>2]|0;a:do if(!a){g=0;f=e}else{h=k[u>>2]|0;g=0;f=e;do{if((k[f>>2]|0)==(h|0))break a;f=f+20|0;g=g+1|0}while(g>>>0<a>>>0)}while(0);if((g|0)==(a|0)){f=p+5632|0;do if((a|0)==(k[f>>2]|0)){a=a+10|0;k[f>>2]=a;a=bd(e,a*20|0)|0;if(a){k[j>>2]=a;e=k[y>>2]|0;_i(a+(e*20|0)|0,0,((k[f>>2]|0)-e|0)*20|0)|0;e=k[j>>2]|0;a=k[y>>2]|0;break}cd(k[j>>2]|0);k[j>>2]=0;k[f>>2]=0;k[y>>2]=0;cc(d,1,12639,l)|0;I=0;r=J;return I|0}while(0);f=e+(a*20|0)|0}k[f>>2]=k[u>>2];Ab(m,x,2);if(k[x>>2]|0){cc(d,2,12593,n)|0;I=1;r=J;return I|0}Ab(b+5|0,v,2);e=k[v>>2]|0;if(e>>>0>1){cc(d,2,12677,o)|0;I=1;r=J;return I|0}a=c+-7|0;b:do if(e){q=f+4|0;s=f+16|0;t=f+8|0;c=f+12|0;o=p+5612|0;n=p+5616|0;l=b+7|0;m=0;c:while(1){if(a>>>0<3){e=27;break}Ab(l,x,1);if((k[x>>2]|0)!=1){e=29;break}Ab(l+1|0,w,2);e=a+-3|0;g=k[w>>2]|0;h=(g>>>15)+1|0;g=g&32767;k[q>>2]=g;f=(ha(h,g)|0)+2|0;if(e>>>0<f>>>0){e=31;break}a=l+3|0;j=e-f|0;if(g){e=0;do{Ab(a,x,h);if((k[x>>2]|0)!=(e|0)){e=34;break c}a=a+h|0;e=e+1|0}while(e>>>0<(k[q>>2]|0)>>>0)}Ab(a,w,2);e=a+2|0;f=k[w>>2]|0;g=(f>>>15)+1|0;f=f&32767;k[w>>2]=f;if((f|0)!=(k[q>>2]|0)){e=37;break}a=(ha(g,f)|0)+3|0;if(j>>>0<a>>>0){e=39;break}a=j-a|0;if(f){f=0;do{Ab(e,x,g);if((k[x>>2]|0)!=(f|0)){e=42;break c}e=e+g|0;f=f+1|0}while(f>>>0<(k[q>>2]|0)>>>0)}Ab(e,x,3);l=e+3|0;i[s>>0]=((k[x>>2]|0)>>>16^1)&1|i[s>>0]&-2;k[t>>2]=0;k[c>>2]=0;j=k[x>>2]|0;f=j&255;k[u>>2]=f;if(f){g=k[n>>2]|0;if(!g){e=50;break}h=0;e=k[o>>2]|0;while(1){if((k[e+8>>2]|0)==(f|0))break;h=h+1|0;if(h>>>0>=g>>>0){e=50;break c}else e=e+20|0}k[t>>2]=e}f=j>>>8&255;k[u>>2]=f;if(f){g=k[n>>2]|0;if(!g){e=57;break}h=0;e=k[o>>2]|0;while(1){if((k[e+8>>2]|0)==(f|0))break;h=h+1|0;if(h>>>0>=g>>>0){e=57;break c}else e=e+20|0}k[c>>2]=e}m=m+1|0;if(m>>>0>=(k[v>>2]|0)>>>0)break b}if((e|0)==27){cc(d,1,12567,z)|0;I=0;r=J;return I|0}else if((e|0)==29){cc(d,2,12721,A)|0;I=1;r=J;return I|0}else if((e|0)==31){cc(d,1,12567,B)|0;I=0;r=J;return I|0}else if((e|0)==34){cc(d,2,12787,C)|0;I=1;r=J;return I|0}else if((e|0)==37){cc(d,2,12841,D)|0;I=1;r=J;return I|0}else if((e|0)==39){cc(d,1,12567,E)|0;I=0;r=J;return I|0}else if((e|0)==42){cc(d,2,12787,F)|0;I=1;r=J;return I|0}else if((e|0)==50){cc(d,1,12567,G)|0;I=0;r=J;return I|0}else if((e|0)==57){cc(d,1,12567,H)|0;I=0;r=J;return I|0}}while(0);if(!a){k[y>>2]=(k[y>>2]|0)+1;I=1;r=J;return I|0}else{cc(d,1,12567,I)|0;I=0;r=J;return I|0}return 0}function Fe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+32|0;q=s+24|0;p=s+20|0;m=a+80|0;e=k[m>>2]|0;if((k[a+8>>2]|0)==16)f=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else f=k[a+12>>2]|0;if(!c){cc(d,1,12486,s)|0;q=0;r=s;return q|0}Ab(b,p,1);a=k[p>>2]|0;if(a>>>0>1){cc(d,2,12512,s+8|0)|0;q=1;r=s;return q|0}if((a+1|0)!=(c|0)){cc(d,2,12486,s+16|0)|0;q=0;r=s;return q|0}l=f+5584|0;a=k[e+16>>2]|0;if(a){c=0;d=k[l>>2]|0;while(1){k[d+1076>>2]=0;c=c+1|0;if(c>>>0>=a>>>0)break;else d=d+1080|0}}j=f+5604|0;a=k[j>>2]|0;if(a){cd(a);k[j>>2]=0}if(!(k[p>>2]|0)){q=1;r=s;return q|0}i=f+5624|0;g=f+5628|0;h=0;while(1){b=b+1|0;Ab(b,q,1);a=k[m>>2]|0;e=k[i>>2]|0;f=k[g>>2]|0;if(((f|0)!=0?!((f|0)==0?1:(k[e>>2]|0)!=(k[q>>2]|0)):0)?(n=k[e+4>>2]|0,o=a+16|0,(n|0)==(k[o>>2]|0)):0){a=k[e+8>>2]|0;if(a){c=ha(n,n)|0;f=ha(k[1036+(k[a>>2]<<2)>>2]|0,c)|0;if((k[a+16>>2]|0)!=(f|0)){a=0;c=32;break}d=Zc(c<<2)|0;k[j>>2]=d;if(!d){a=0;c=32;break}fb[k[1052+(k[a>>2]<<2)>>2]&15](k[a+12>>2]|0,d,c)}a=k[e+12>>2]|0;if(a){c=k[o>>2]|0;f=ha(c,k[1036+(k[a>>2]<<2)>>2]|0)|0;if((k[a+16>>2]|0)!=(f|0)){a=0;c=32;break}f=Zc(c<<2)|0;if(!f){a=0;c=32;break}fb[k[1068+(k[a>>2]<<2)>>2]&15](k[a+12>>2]|0,f,c);a=k[o>>2]|0;if(a){c=0;d=f;e=k[l>>2]|0;while(1){k[e+1076>>2]=k[d>>2];c=c+1|0;if((c|0)==(a|0))break;else{d=d+4|0;e=e+1080|0}}}cd(f)}}h=h+1|0;if(h>>>0>=(k[p>>2]|0)>>>0){a=1;c=32;break}}if((c|0)==32){r=s;return a|0}return 0}function Ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,2);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+2|0}}r=f;return}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,4);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Eb(a,e);k[b>>2]=~~+o[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Cb(a,e);k[b>>2]=~~+p[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}r=f;return}function Ke(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,2);o[b>>2]=+((k[e>>2]|0)>>>0);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+2|0}}r=f;return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,4);o[b>>2]=+((k[e>>2]|0)>>>0);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Me(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Eb(a,e);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Cb(a,e);o[b>>2]=+p[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}r=f;return}function Oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+32|0;g=m+8|0;i=m+20|0;if((k[a+8>>2]|0)==16)a=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else a=k[a+12>>2]|0;l=k[a+5584>>2]|0;a=k[d>>2]|0;if(!a){cc(e,1,14224,m)|0;b=0;r=m;return b|0}k[d>>2]=a+-1;Ab(c,i,1);c=c+1|0;f=k[i>>2]&31;h=l+(b*1080|0)+24|0;k[h>>2]=f;k[l+(b*1080|0)+804>>2]=(k[i>>2]|0)>>>5;do if((f|0)==1){a=1;j=8}else{a=(k[d>>2]|0)>>>((f|0)!=0&1);if(a>>>0>97){k[g>>2]=a;k[g+4>>2]=97;k[g+8>>2]=97;cc(e,2,14260,g)|0;f=k[h>>2]|0}e=(a|0)==0;if(f)if(e){a=0;j=20;break}else{j=8;break}if(!e){f=0;while(1){Ab(c,i,1);if(f>>>0<97){k[l+(b*1080|0)+28+(f<<3)>>2]=(k[i>>2]|0)>>>3;k[l+(b*1080|0)+28+(f<<3)+4>>2]=0}f=f+1|0;if((f|0)==(a|0))break;else c=c+1|0}}a=(k[d>>2]|0)-a|0}while(0);if((j|0)==8){f=0;while(1){Ab(c,i,2);if(f>>>0<97){k[l+(b*1080|0)+28+(f<<3)>>2]=(k[i>>2]|0)>>>11;k[l+(b*1080|0)+28+(f<<3)+4>>2]=k[i>>2]&2047}f=f+1|0;if((f|0)==(a|0)){j=20;break}else c=c+2|0}}if((j|0)==20)a=(k[d>>2]|0)-(a<<1)|0;k[d>>2]=a;if((k[h>>2]|0)!=1){b=1;r=m;return b|0}a=l+(b*1080|0)+28|0;c=l+(b*1080|0)+32|0;f=1;do{d=(k[a>>2]|0)-(((f+-1|0)>>>0)/3|0)|0;k[l+(b*1080|0)+28+(f<<3)>>2]=(d|0)>0?d:0;k[l+(b*1080|0)+28+(f<<3)+4>>2]=k[c>>2];f=f+1|0}while((f|0)!=97);a=1;r=m;return a|0}function Pe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+48|0;o=q+40|0;j=q+32|0;i=q+16|0;h=q+8|0;n=q+44|0;g=a+8|0;if((k[g>>2]|0)==16)f=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else f=k[a+12>>2]|0;l=k[f+5584>>2]|0;if((k[d>>2]|0)>>>0<5){cc(e,1,14664,q)|0;d=0;r=q;return d|0}m=l+(b*1080|0)+4|0;Ab(c,m,1);f=(k[m>>2]|0)+1|0;k[m>>2]=f;if(f>>>0>33){k[h>>2]=f;k[h+4>>2]=33;cc(e,1,14699,h)|0;d=0;r=q;return d|0}if((k[a+168>>2]|0)>>>0>=f>>>0){k[i>>2]=b;cc(e,1,14776,i)|0;k[g>>2]=k[g>>2]|32768;d=0;r=q;return d|0}h=l+(b*1080|0)+8|0;Ab(c+1|0,h,1);k[h>>2]=(k[h>>2]|0)+2;a=l+(b*1080|0)+12|0;Ab(c+2|0,a,1);i=(k[a>>2]|0)+2|0;k[a>>2]=i;h=k[h>>2]|0;if(h>>>0>10|i>>>0>10|(h+i|0)>>>0>12){cc(e,1,14934,q+24|0)|0;d=0;r=q;return d|0}Ab(c+3|0,l+(b*1080|0)+16|0,1);Ab(c+4|0,l+(b*1080|0)+20|0,1);g=(k[d>>2]|0)+-5|0;k[d>>2]=g;f=k[m>>2]|0;if(!(k[l+(b*1080|0)>>2]&1)){if(!f){d=1;r=q;return d|0}else f=0;do{k[l+(b*1080|0)+812+(f<<2)>>2]=15;k[l+(b*1080|0)+944+(f<<2)>>2]=15;f=f+1|0}while(f>>>0<(k[m>>2]|0)>>>0);f=1;r=q;return f|0}if(g>>>0<f>>>0){cc(e,1,14664,j)|0;d=0;r=q;return d|0}do if(!f)f=0;else{a=0;g=c+5|0;while(1){Ab(g,n,1);g=g+1|0;f=k[n>>2]|0;if((a|0)!=0?f>>>0<16|(f&15|0)==0:0)break;k[l+(b*1080|0)+812+(a<<2)>>2]=f&15;k[l+(b*1080|0)+944+(a<<2)>>2]=(k[n>>2]|0)>>>4;a=a+1|0;f=k[m>>2]|0;if(a>>>0>=f>>>0){p=22;break}}if((p|0)==22){g=k[d>>2]|0;break}cc(e,1,15002,o)|0;d=0;r=q;return d|0}while(0);k[d>>2]=g-f;d=1;r=q;return d|0}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){zb(b,~~+o[a>>2]>>>0,2);d=d+1|0;if((d|0)==(c|0))break;else{b=b+2|0;a=a+4|0}}return}function Re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){zb(b,~~+o[a>>2]>>>0,4);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){Db(b,+o[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Te(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){Bb(b,+o[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+8|0;a=a+4|0}}return}function Ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;if(!c){c=0;r=h;return c|0}if(!(vd(k[a>>2]|0,b,c,d)|0)){cc(d,1,16303,h)|0;c=0;r=h;return c|0}if(k[a+128>>2]|0){c=1;r=h;return c|0}g=a+108|0;if(!(mf(c,g,d)|0)){c=0;r=h;return c|0}b=k[a+48>>2]|0;a:do switch(b|0){case 16:{k[c+20>>2]=1;break}case 17:{k[c+20>>2]=2;break}case 18:{k[c+20>>2]=3;break}case 24:{k[c+20>>2]=4;break}default:{e=c+20|0;if((b|0)==12){k[e>>2]=5;break a}else{k[e>>2]=-1;break a}}}while(0);f=a+120|0;b=k[f>>2]|0;do if(b){if(k[b+12>>2]|0){nf(c,g);break}cd(k[b+4>>2]|0);cd(k[(k[f>>2]|0)+8>>2]|0);cd(k[k[f>>2]>>2]|0);b=k[f>>2]|0;e=k[b+12>>2]|0;if(e){cd(e);b=k[f>>2]|0}cd(b);k[f>>2]=0}while(0);if(k[a+116>>2]|0)of(c,g,d);b=k[g>>2]|0;if(!b){c=1;r=h;return c|0}k[c+28>>2]=b;k[c+32>>2]=k[a+112>>2];k[g>>2]=0;c=1;r=h;return c|0}function Ve(a,b){a=a|0;b=b|0;ed(k[a>>2]|0,b);i[a+124>>0]=0;k[a+128>>2]=k[b+8248>>2]&1;return}function We(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+80|0;v=w+64|0;s=w+56|0;n=w+48|0;q=w+40|0;p=w+32|0;o=w+24|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){b=0;r=w;return b|0}t=c+16|0;if(((k[t>>2]|0)+-1|0)>>>0>16383){cc(d,1,16352,w)|0;b=0;r=w;return b|0}if(!(hd(k[a>>2]|0,b,c,d)|0)){b=0;r=w;return b|0}k[a+56>>2]=1785737760;k[a+60>>2]=0;k[a+64>>2]=1;e=Zc(4)|0;f=a+68|0;k[f>>2]=e;if(!e){k[f>>2]=0;cc(d,1,16421,w+8|0)|0;b=0;r=w;return b|0}k[e>>2]=1785737760;i=k[t>>2]|0;k[a+20>>2]=i;i=Zc(i*12|0)|0;e=a+72|0;k[e>>2]=i;if(!i){k[e>>2]=0;cc(d,1,16421,w+16|0)|0;b=0;r=w;return b|0}k[a+16>>2]=(k[c+12>>2]|0)-(k[c+4>>2]|0);k[a+12>>2]=(k[c+8>>2]|0)-(k[c>>2]|0);u=c+24|0;l=k[u>>2]|0;g=k[l+24>>2]|0;h=k[l+32>>2]|0;e=a+24|0;k[e>>2]=g+-1+(h<<7);m=k[t>>2]|0;if(m>>>0>1){f=1;do{if((g|0)!=(k[l+(f*52|0)+24>>2]|0))k[e>>2]=255;f=f+1|0}while(f>>>0<m>>>0)}k[a+28>>2]=7;k[a+32>>2]=0;k[a+36>>2]=0;f=(m|0)==0;if(!f?(k[i+8>>2]=g+-1+(h<<7),m>>>0>1):0){e=1;do{k[i+(e*12|0)+8>>2]=(k[l+(e*52|0)+24>>2]|0)+-1+(k[l+(e*52|0)+32>>2]<<7);e=e+1|0}while(e>>>0<m>>>0)}e=a+40|0;a:do if(!(k[c+32>>2]|0)){k[e>>2]=1;switch(k[c+20>>2]|0){case 1:{k[a+48>>2]=16;break a}case 2:{k[a+48>>2]=17;break a}case 3:{k[a+48>>2]=18;break a}default:break a}}else{k[e>>2]=2;k[a+48>>2]=0}while(0);b:do if(!f){f=0;e=0;g=0;do{c=(j[l+(g*52|0)+48>>1]|0)==0;e=(c&1^1)+e|0;f=c?f:g;g=g+1|0}while(g>>>0<m>>>0);g=f;if((e|0)!=1){if(e>>>0<=1)break;cc(d,2,16717,n)|0;break}switch(k[a+48>>2]|0){case 18:case 16:{f=3;break}case 17:{f=1;break}default:{cc(d,2,16467,o)|0;break b}}if(m>>>0<(f+1|0)>>>0){cc(d,2,16541,p)|0;break}if(g>>>0<f>>>0){cc(d,2,16634,q)|0;break}q=Zc(8)|0;e=a+116|0;k[e>>2]=q;if(!q){cc(d,1,16782,s)|0;b=0;r=w;return b|0}s=Zc((k[t>>2]|0)*6|0)|0;c=k[e>>2]|0;k[c>>2]=s;if(!s){cc(d,1,16782,v)|0;b=0;r=w;return b|0}i=k[t>>2]|0;j[c+4>>1]=i;h=k[c>>2]|0;e=0;do{j[h+(e*6|0)>>1]=e;j[h+(e*6|0)+2>>1]=0;v=e;e=e+1|0;j[h+(v*6|0)+4>>1]=e}while((e|0)!=(f|0));if(f>>>0<i>>>0){g=k[u>>2]|0;do{v=(j[g+(f*52|0)+48>>1]|0)==0;j[h+(f*6|0)>>1]=f;e=h+(f*6|0)+2|0;if(v){j[e>>1]=-1;j[h+(f*6|0)+4>>1]=-1}else{j[e>>1]=1;j[(k[c>>2]|0)+(f*6|0)+4>>1]=0}f=f+1|0}while(f>>>0<i>>>0)}}while(0);k[a+52>>2]=0;k[a+44>>2]=0;k[a+96>>2]=k[b+18692>>2];b=1;r=w;return b|0}function Xe(a,b,c){a=a|0;b=b|0;c=c|0;return yd(k[a>>2]|0,b,c)|0}function Ye(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+8|0;if(!(Cg(k[d>>2]|0,52,c)|0)){c=0;return c|0}f=k[d>>2]|0;g=Dg(f)|0;d=Eg(f)|0;if(g){h=0;e=1;while(1){if(!e)e=0;else e=($a[k[d>>2]&63](a,b,c)|0)!=0;h=h+1|0;if((h|0)==(g|0))break;else{d=d+4|0;e=e&1}}Fg(f);if(!e){c=0;return c|0}}else Fg(f);c=jd(k[a>>2]|0,b,c)|0;return c|0}function Ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+8|0;if(!(Cg(k[d>>2]|0,53,c)|0)){c=0;return c|0}if(!(zd(k[a>>2]|0,b,c)|0)){c=0;return c|0}h=k[d>>2]|0;f=Dg(h)|0;d=Eg(h)|0;if(!f)d=1;else{g=0;e=d;d=1;while(1){if(!d)d=0;else d=($a[k[e>>2]&63](a,b,c)|0)!=0;d=d&1;g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}Fg(h);c=d;return c|0}function _e(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+4|0;if(!(Cg(k[e>>2]|0,54,d)|0)){b=0;return b|0}g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){b=0;return b|0}}else Fg(g);e=a+8|0;if(!(Cg(k[e>>2]|0,55,d)|0)){b=0;return b|0}if(!(Cg(k[e>>2]|0,56,d)|0)){b=0;return b|0}if(!(Cg(k[e>>2]|0,57,d)|0)){b=0;return b|0}if((k[a+96>>2]|0)!=0?(Cg(k[e>>2]|0,58,d)|0)==0:0){b=0;return b|0}if(!(Cg(k[e>>2]|0,59,d)|0)){b=0;return b|0}g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){b=0;return b|0}}else Fg(g);b=Ad(k[a>>2]|0,b,c,d)|0;return b|0}function $e(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b+8|0;if(!(Cg(k[j>>2]|0,52,d)|0)){a=0;return a|0}g=k[b+4>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){a=0;return a|0}}else Fg(g);g=k[j>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){a=0;return a|0}}else Fg(g);a=kd(a,k[b>>2]|0,c,d)|0;return a|0}function af(a,b,c,d,e,f,g,h,i,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;l=l|0;return md(k[a>>2]|0,b,c,d,e,f,g,h,i,j,l)|0}function bf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Bd(k[a>>2]|0,b,c,d,e,f)|0}function cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return nd(k[a>>2]|0,b,c,d,e,f)|0}function df(a){a=a|0;var b=0,c=0,d=0;if(!a)return;gd(k[a>>2]|0);k[a>>2]=0;b=a+72|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+68|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+108|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}d=a+116|0;b=k[d>>2]|0;if(b){c=k[b>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b>>2]=0}cd(b);k[d>>2]=0}d=a+120|0;b=k[d>>2]|0;if(b){c=k[b+12>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+12>>2]=0}c=k[b+4>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+4>>2]=0}c=k[b+8>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+8>>2]=0}c=k[b>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b>>2]=0}cd(b);k[d>>2]=0}b=a+4|0;c=k[b>>2]|0;if(c){Bg(c);k[b>>2]=0}b=a+8|0;c=k[b>>2]|0;if(c){Bg(c);k[b>>2]=0}cd(a);return}function ef(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return od(k[a>>2]|0,b,c,d,e,f,g)|0}function ff(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;h=r;r=r+16|0;if(!c){a=0;r=h;return a|0}cc(d,2,16826,h)|0;if(!(wd(k[a>>2]|0,b,c,d,e)|0)){cc(d,1,16303,h+8|0)|0;a=0;r=h;return a|0}g=a+108|0;if(!(mf(c,g,d)|0)){a=0;r=h;return a|0}e=k[a+48>>2]|0;a:do switch(e|0){case 16:{k[c+20>>2]=1;break}case 17:{k[c+20>>2]=2;break}case 18:{k[c+20>>2]=3;break}case 24:{k[c+20>>2]=4;break}default:{b=c+20|0;if((e|0)==12){k[b>>2]=5;break a}else{k[b>>2]=-1;break a}}}while(0);f=a+120|0;b=k[f>>2]|0;do if(b){if(k[b+12>>2]|0){nf(c,g);break}cd(k[b+4>>2]|0);cd(k[(k[f>>2]|0)+8>>2]|0);cd(k[k[f>>2]>>2]|0);b=k[f>>2]|0;e=k[b+12>>2]|0;if(e){cd(e);b=k[f>>2]|0}cd(b);k[f>>2]=0}while(0);if(k[a+116>>2]|0)of(c,g,d);b=k[g>>2]|0;if(!b){a=1;r=h;return a|0}k[c+28>>2]=b;k[c+32>>2]=k[a+112>>2];k[g>>2]=0;a=1;r=h;return a|0}function gf(a){a=a|0;var b=0;b=_c(1,136)|0;if(!b)return b|0;if(!a){a=fd()|0;k[b>>2]=a}else{a=pd()|0;k[b>>2]=a}if(!a){df(b);b=0;return b|0}a=b+108|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;i[a+16>>0]=0;a=Ag()|0;k[b+4>>2]=a;if(!a){df(b);b=0;return b|0}a=Ag()|0;k[b+8>>2]=a;if(a)return b|0;df(b);b=0;return b|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;qd(k[a>>2]|0,b,c);return}function jf(a){a=a|0;return ud(k[a>>2]|0)|0}function kf(a){a=a|0;return td(k[a>>2]|0)|0}function lf(a,b,c){a=a|0;b=b|0;c=c|0;return xd(k[a>>2]|0,b,c)|0}function mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+80|0;A=B+72|0;z=B+64|0;y=B+56|0;x=B+48|0;w=B+40|0;v=B+32|0;u=B+24|0;s=B+16|0;n=B+8|0;h=B;d=k[b+8>>2]|0;a:do if(d){q=k[d>>2]|0;p=j[d+4>>1]|0;d=k[a+16>>2]|0;o=k[b+12>>2]|0;if((o|0)!=0?(k[o+12>>2]|0)!=0:0)b=l[o+18>>0]|0;else b=d;g=p<<16>>16==0;b:do if(!g){f=0;c:while(1){e=f&65535;d=m[q+(e*6|0)>>1]|0;if(d>>>0>=b>>>0){e=15;break}d=j[q+(e*6|0)+4>>1]|0;switch(d<<16>>16){case 0:case -1:break;default:{d=(d&65535)+-1|0;if(d>>>0>=b>>>0){e=18;break c}}}f=f+1<<16>>16;if((f&65535)>=(p&65535))break b}if((e|0)==15){k[h>>2]=d;k[h+4>>2]=b;cc(c,1,19343,h)|0;c=0;r=B;return c|0}else if((e|0)==18){k[n>>2]=d;k[n+4>>2]=b;cc(c,1,19343,n)|0;c=0;r=B;return c|0}}while(0);if(!b)d=o;else{d:do if(!g)while(1){b=b+-1|0;d=0;do{if((m[q+((d&65535)*6|0)>>1]|0)==(b|0))break;d=d+1<<16>>16}while((d&65535)<(p&65535));if(d<<16>>16==p<<16>>16)break d;if(!b){d=o;break a}}while(0);cc(c,1,19380,s)|0;c=0;r=B;return c|0}}else d=k[b+12>>2]|0;while(0);if(!d){c=1;r=B;return c|0}t=k[d+12>>2]|0;if(!t){c=1;r=B;return c|0}o=i[d+18>>0]|0;s=o&255;q=o<<24>>24==0;if(q)d=1;else{f=a+16|0;b=0;g=0;d=1;do{b=m[t+(b<<2)>>1]|0;e=k[f>>2]|0;if(b>>>0>=e>>>0){k[u>>2]=b;k[u+4>>2]=e;cc(c,1,19343,u)|0;d=0}g=g+1<<16>>16;b=g&65535}while(b>>>0<s>>>0)}p=_c(s,4)|0;if(!p){cc(c,1,19413,v)|0;c=0;r=B;return c|0}if(!q){h=0;n=0;do{e=i[t+(h<<2)+3>>0]|0;f=e&255;do if((e&255)<(o&255)){g=p+(f<<2)|0;b=i[t+(h<<2)+2>>0]|0;if((k[g>>2]|0)!=0&b<<24>>24==1){k[x>>2]=f;cc(c,1,19486,x)|0;d=0;break}if(b<<24>>24!=0|e<<24>>24==0){k[g>>2]=1;break}else{k[y>>2]=h;k[y+4>>2]=f;cc(c,1,19517,y)|0;d=0;break}}else{k[w>>2]=f;cc(c,1,19430,w)|0;d=0}while(0);n=n+1<<16>>16;h=n&65535}while(h>>>0<s>>>0);if(!q){b=0;e=0;do{if((k[p+(b<<2)>>2]|0)==0?(i[t+(b<<2)+2>>0]|0)!=0:0){k[z>>2]=b;cc(c,1,19553,z)|0;d=0}e=e+1<<16>>16;b=e&65535}while(b>>>0<s>>>0)}}if(!d){cd(p);c=0;r=B;return c|0}e:do if(!((k[a+16>>2]|0)!=1|q)){d=0;b=0;while(1){b=b+1<<16>>16;if(!(k[p+(d<<2)>>2]|0))break;d=b&65535;if(d>>>0>=s>>>0)break e}k[A>>2]=d;cc(c,2,19591,A)|0;if(!q){d=0;b=0;do{i[t+(d<<2)+2>>0]=1;i[t+(d<<2)+3>>0]=b;b=b+1<<16>>16;d=b&65535}while(d>>>0<s>>>0)}}while(0);cd(p);c=1;r=B;return c|0}function nf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=b+12|0;b=k[w>>2]|0;h=k[b+8>>2]|0;o=k[b+4>>2]|0;q=k[b>>2]|0;r=k[b+12>>2]|0;b=i[b+18>>0]|0;s=a+24|0;t=k[s>>2]|0;u=b&255;v=Zc(u*52|0)|0;if(!v)return;n=b<<24>>24==0;if(!n){f=0;g=0;do{b=j[r+(f<<2)>>1]|0;if(!(i[r+(f<<2)+2>>0]|0)){b=b&65535;c=v+(f*52|0)|0;d=t+(b*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0))}else{b=b&65535;c=v+((l[r+(f<<2)+3>>0]|0)*52|0)|0;d=t+(b*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0))}e=Zc(ha(k[t+(b*52|0)+8>>2]<<2,k[t+(b*52|0)+12>>2]|0)|0)|0;k[v+(f*52|0)+44>>2]=e;if(!e){p=7;break}k[v+(f*52|0)+24>>2]=l[h+f>>0];k[v+(f*52|0)+32>>2]=l[o+f>>0];g=g+1<<16>>16;f=g&65535}while(f>>>0<u>>>0);if((p|0)==7){cd(v);return}h=(m[(k[w>>2]|0)+16>>1]|0)+-1|0;if(!n){b=0;g=0;do{e=k[t+((m[r+(b<<2)>>1]|0)*52|0)+44>>2]|0;d=l[r+(b<<2)+3>>0]|0;f=ha(k[v+(d*52|0)+12>>2]|0,k[v+(d*52|0)+8>>2]|0)|0;if(!(i[r+(b<<2)+2>>0]|0)){b=k[v+(b*52|0)+44>>2]|0;if(f){c=0;do{k[b+(c<<2)>>2]=k[e+(c<<2)>>2];c=c+1|0}while((c|0)!=(f|0))}}else{b=k[v+(d*52|0)+44>>2]|0;if(f){c=0;do{p=k[e+(c<<2)>>2]|0;p=q+((ha((p|0)<0?0:(p|0)>(h|0)?h:p,u)|0)+d<<2)|0;k[b+(c<<2)>>2]=k[p>>2];c=c+1|0}while((c|0)!=(f|0))}}g=g+1<<16>>16;b=g&65535}while(b>>>0<u>>>0)}}c=a+16|0;d=k[c>>2]|0;if(d){b=0;e=0;do{b=k[t+(b*52|0)+44>>2]|0;if(b)cd(b);e=e+1<<16>>16;b=e&65535}while(b>>>0<d>>>0)}cd(t);k[s>>2]=v;k[c>>2]=u;cd(k[(k[w>>2]|0)+4>>2]|0);cd(k[(k[w>>2]|0)+8>>2]|0);cd(k[k[w>>2]>>2]|0);b=k[w>>2]|0;c=k[b+12>>2]|0;if(c){cd(c);b=k[w>>2]|0}cd(b);k[w>>2]=0;return}function of(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+80|0;w=y+8|0;v=y;u=y+16|0;x=b+8|0;d=k[x>>2]|0;b=k[d>>2]|0;t=j[d+4>>1]|0;if(t<<16>>16){s=a+16|0;n=a+24|0;p=1;q=0;while(1){o=j[b+(q*6|0)>>1]|0;m=o&65535;a=k[s>>2]|0;a:do if(m>>>0<a>>>0){d=j[b+(q*6|0)+4>>1]|0;switch(d<<16>>16){case -1:case 0:{j[(k[n>>2]|0)+(m*52|0)+48>>1]=j[b+(q*6|0)+2>>1]|0;break a}default:{}}h=(d&65535)+65535|0;l=h&65535;h=h&65535;if(h>>>0>=a>>>0){k[w>>2]=h;k[w+4>>2]=a;cc(c,2,19302,w)|0;break}i=b+(q*6|0)+2|0;if((m|0)!=(h|0)?(j[i>>1]|0)==0:0){d=k[n>>2]|0;a=d+(m*52|0)|0;e=u;f=a;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=a;f=d+(h*52|0)|0;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=(k[n>>2]|0)+(h*52|0)|0;f=u;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if((q+1&65535)<(t&65535)){e=p;do{d=b+(e*6|0)|0;a=j[d>>1]|0;if(a<<16>>16!=o<<16>>16){if(a<<16>>16==l<<16>>16)j[d>>1]=o}else j[d>>1]=l;e=e+1|0}while((e&65535)<<16>>16!=t<<16>>16)}}j[(k[n>>2]|0)+(m*52|0)+48>>1]=j[i>>1]|0}else{k[v>>2]=m;k[v+4>>2]=a;cc(c,2,19262,v)|0}while(0);q=q+1|0;if((q&65535)<<16>>16==t<<16>>16)break;else p=p+1|0}b=k[x>>2]|0;d=b;b=k[b>>2]|0}if(!b){w=d;cd(w);k[x>>2]=0;r=y;return}else{cd(b);w=k[x>>2]|0;cd(w);k[x>>2]=0;r=y;return}}function pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=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;H=r;r=r+192|0;y=H+152|0;x=H+144|0;w=H+136|0;v=H+128|0;u=H+120|0;D=H+88|0;s=H+80|0;p=H+64|0;o=H+48|0;F=H+40|0;z=H+32|0;E=H+24|0;t=H+16|0;q=H+8|0;m=H+176|0;n=H+168|0;C=H+156|0;d=_c(1,1024)|0;if(!d){cc(c,1,17098,H)|0;G=0;r=H;return G|0}l=m+4|0;A=C+4|0;B=a+100|0;j=1024;a:while(1){if((Wb(b,m,8,c)|0)!=8)break;while(1){Ab(m,C,4);Ab(l,A,4);switch(k[C>>2]|0){case 0:{e=_b(b)|0;i=L;if((i|0)>0|(i|0)==0&e>>>0>4294967287){G=6;break a}k[C>>2]=e+8;h=8;break}case 1:{if((Wb(b,m,8,c)|0)!=8)break a;Ab(m,n,4);if(k[n>>2]|0){G=10;break a}Ab(l,C,4);h=16;break}default:h=8}f=k[A>>2]|0;if((f|0)==1785737827){G=13;break a}e=k[C>>2]|0;if(!e){G=17;break a}if(e>>>0<h>>>0){G=19;break a}if((f|0)==1783636e3){g=1084;f=h;G=22;break}if((f|0)==1718909296){g=1092;f=h;G=22;break}i=(f|0)==1785737832;b:do if((f|0)!=1768449138)if((f|0)!=1668246642)if((f|0)!=1651532643)if((f|0)!=1885564018)if((f|0)!=1668112752){g=(f|0)==1667523942?1148:0;e=e-h|0;if((f|0)<1785737832)switch(f|0){case 1667523942:{G=30;break b}default:{}}else switch(f|0){case 1785737832:{G=30;break b}default:{}}f=k[B>>2]|0;if(!(f&1)){G=45;break a}if(!(f&2)){G=47;break a}k[B>>2]=f|2147483647;i=$b(b,e,0,c)|0;if(!((i|0)==(e|0)&(L|0)==0)){G=50;break a}}else{g=1140;G=28}else{g=1132;G=28}else{g=1124;G=28}else{g=1116;G=28}else{g=1108;G=28}while(0);if((G|0)==28){e=e-h|0;G=30}if((G|0)==30){G=0;if(i){g=1100;break}k[o>>2]=f>>>24;k[o+4>>2]=f>>>16&255;k[o+8>>2]=f>>>8&255;k[o+12>>2]=f&255;cc(c,2,17282,o)|0;if(k[B>>2]&4)break;i=k[A>>2]|0;k[p>>2]=i>>>24;k[p+4>>2]=i>>>16&255;k[p+8>>2]=i>>>8&255;k[p+12>>2]=i&255;cc(c,2,17333,p)|0;k[B>>2]=k[B>>2]|2147483647;i=$b(b,e,0,c)|0;if(!((i|0)==(e|0)&(L|0)==0)){G=33;break a}}if((Wb(b,m,8,c)|0)!=8)break a}if((G|0)==22){G=0;e=e-f|0}i=_b(b)|0;h=L;if(0>(h|0)|0==(h|0)&e>>>0>i>>>0){G=35;break}if(e>>>0>j>>>0){f=bd(d,e)|0;if(!f){G=38;break}else{d=f;f=e}}else f=j;if((Wb(b,d,e,c)|0)!=(e|0)){G=40;break}if(!(hb[k[g+4>>2]&63](a,d,e,c)|0)){G=43;break}else j=f}switch(G|0){case 6:{cc(c,1,17148,q)|0;break}case 10:{cc(c,1,17148,t)|0;break}case 13:{e=k[B>>2]|0;if(!(e&4)){cc(c,1,17190,E)|0;cd(d);G=0;r=H;return G|0}else{k[B>>2]=e|8;cd(d);G=1;r=H;return G|0}}case 17:{cc(c,1,17218,z)|0;cd(d);G=0;r=H;return G|0}case 19:{k[F>>2]=e;k[F+4>>2]=f;cc(c,1,17256,F)|0;cd(d);G=0;r=H;return G|0}case 33:{cc(c,1,17399,s)|0;cd(d);G=0;r=H;return G|0}case 35:{E=k[C>>2]|0;F=k[A>>2]|0;G=_b(b)|0;k[D>>2]=E;k[D+4>>2]=F>>>24;k[D+8>>2]=F>>>16&255;k[D+12>>2]=F>>>8&255;k[D+16>>2]=F&255;k[D+20>>2]=e;k[D+24>>2]=G;cc(c,1,17449,D)|0;cd(d);G=0;r=H;return G|0}case 38:{cd(d);cc(c,1,17525,u)|0;G=0;r=H;return G|0}case 40:{cc(c,1,17567,v)|0;cd(d);G=0;r=H;return G|0}case 43:{cd(d);G=0;r=H;return G|0}case 45:{cc(c,1,17616,w)|0;cd(d);G=0;r=H;return G|0}case 47:{cc(c,1,17686,x)|0;cd(d);G=0;r=H;return G|0}case 50:{cc(c,1,17399,y)|0;cd(d);G=0;r=H;return G|0}}cd(d);G=1;r=H;return G|0}function qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;f=g+24|0;d=Zb(b)|0;e=L;a=a+80|0;h=a;h=Yi(d|0,e|0,k[h>>2]|0,k[h+4>>2]|0)|0;zb(f,h,4);zb(f+4|0,1785737827,4);if(!(ac(b,k[a>>2]|0,k[a+4>>2]|0,c)|0)){cc(c,1,17067,g)|0;h=0;r=g;return h|0}if((Xb(b,f,8,c)|0)!=8){cc(c,1,17067,g+8|0)|0;h=0;r=g;return h|0}if(ac(b,d,e,c)|0){h=1;r=g;return h|0}cc(c,1,17067,g+16|0)|0;h=0;r=g;return h|0}function rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;c=((k[a>>2]|0)!=0?(k[a+104>>2]|k[a+100>>2]|0)==0:0)&(k[a+8>>2]|0)!=0&(k[a+4>>2]|0)!=0&(k[a+64>>2]|0)!=0&(k[a+16>>2]|0)!=0&(k[a+12>>2]|0)!=0&1;d=k[a+20>>2]|0;if(!d){f=c;a=a+40|0;a=k[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=bc(b)|0;b=b&f;a=b&a;return a|0}e=k[a+72>>2]|0;f=0;do{c=(k[e+(f*12|0)+8>>2]&126)>>>0<38&c;f=f+1|0}while(f>>>0<d>>>0);a=a+40|0;a=k[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=bc(b)|0;b=b&c;a=b&a;return a|0}function sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;zb(d,12,4);zb(d+4|0,1783636e3,4);zb(d+8|0,218793738,4);c=(Xb(b,d,12,c)|0)==12&1;r=a;return c|0}function tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;i=j+8|0;e=a+64|0;g=(k[e>>2]<<2)+16|0;h=_c(1,g)|0;if(!h){cc(c,1,16987,j)|0;i=0;r=j;return i|0}zb(h,g,4);zb(h+4|0,1718909296,4);zb(h+8|0,k[a+56>>2]|0,4);zb(h+12|0,k[a+60>>2]|0,4);f=h+16|0;if(k[e>>2]|0){a=a+68|0;d=0;do{zb(f,k[(k[a>>2]|0)+(d<<2)>>2]|0,4);d=d+1|0}while(d>>>0<(k[e>>2]|0)>>>0)}a=(Xb(b,h,g,c)|0)==(g|0);if(!a)cc(c,1,17026,i)|0;cd(h);i=a&1;r=j;return i|0}function uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;p=r;r=r+80|0;n=p+16|0;l=p+8|0;i=p;e=p+24|0;j=p+72|0;d=e;f=d+48|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(f|0));o=(k[a+24>>2]|0)==255;k[e>>2]=2;d=e+12|0;if(o){k[d>>2]=3;k[e+24>>2]=4;d=3}else{k[d>>2]=4;d=2}if(!(k[a+116>>2]|0))o=d;else{k[e+(d*12|0)>>2]=5;o=d+1|0}zb(j+4|0,1785737832,4);g=0;h=e;d=8;while(1){f=h+8|0;q=ib[k[h>>2]&7](a,f)|0;k[h+4>>2]=q;if(!q){m=8;break}d=(k[f>>2]|0)+d|0;g=g+1|0;if((g|0)>=(o|0))break;else h=h+12|0}if((m|0)==8){cc(c,1,16901,i)|0;f=0;while(1){d=k[e+4>>2]|0;if(d)cd(d);f=f+1|0;if((f|0)>=(o|0)){d=0;break}else e=e+12|0}r=p;return d|0}zb(j,d,4);a:do if((Xb(b,j,8,c)|0)==8){d=0;f=e;while(1){q=f+8|0;m=Xb(b,k[f+4>>2]|0,k[q>>2]|0,c)|0;if((m|0)!=(k[q>>2]|0))break;d=d+1|0;if((d|0)>=(o|0)){d=1;break a}else f=f+12|0}cc(c,1,16944,n)|0;d=0}else{cc(c,1,16944,l)|0;d=0}while(0);g=0;while(1){f=k[e+4>>2]|0;if(f)cd(f);g=g+1|0;if((g|0)>=(o|0))break;else e=e+12|0}r=p;return d|0}function vf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Zb(b)|0;a=a+88|0;k[a>>2]=d;k[a+4>>2]=L;b=$b(b,24,0,c)|0;return (b|0)==24&(L|0)==0&1|0}function wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Zb(b)|0;a=a+80|0;k[a>>2]=d;k[a+4>>2]=L;b=$b(b,8,0,c)|0;return (b|0)==8&(L|0)==0&1|0}function xf(a,b){a=a|0;b=b|0;var c=0;c=_c(1,22)|0;if(!c){b=0;return b|0}zb(c,22,4);zb(c+4|0,1768449138,4);zb(c+8|0,k[a+16>>2]|0,4);zb(c+12|0,k[a+12>>2]|0,4);zb(c+16|0,k[a+20>>2]|0,2);zb(c+18|0,k[a+24>>2]|0,1);zb(c+19|0,k[a+28>>2]|0,1);zb(c+20|0,k[a+32>>2]|0,1);zb(c+21|0,k[a+36>>2]|0,1);k[b>>2]=22;b=c;return b|0}function yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=a+20|0;f=(k[e>>2]|0)+8|0;g=_c(1,f)|0;if(!g){b=0;return b|0}zb(g,f,4);zb(g+4|0,1651532643,4);if(k[e>>2]|0){a=a+72|0;c=0;d=g+8|0;while(1){zb(d,k[(k[a>>2]|0)+(c*12|0)+8>>2]|0,1);c=c+1|0;if(c>>>0>=(k[e>>2]|0)>>>0)break;else d=d+1|0}}k[b>>2]=f;b=g;return b|0}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=a+40|0;switch(k[c>>2]|0){case 1:{h=15;break}case 2:{h=(k[a+112>>2]|0)+11|0;break}default:{b=0;return b|0}}g=_c(1,h)|0;if(!g){b=0;return b|0}zb(g,h,4);zb(g+4|0,1668246642,4);zb(g+8|0,k[c>>2]|0,1);zb(g+9|0,k[a+52>>2]|0,1);zb(g+10|0,k[a+44>>2]|0,1);e=g+11|0;switch(k[c>>2]|0){case 1:{zb(e,k[a+48>>2]|0,4);break}case 2:{f=a+112|0;if(k[f>>2]|0){a=a+108|0;d=0;c=e;while(1){zb(c,l[(k[a>>2]|0)+d>>0]|0,1);d=d+1|0;if(d>>>0>=(k[f>>2]|0)>>>0)break;else c=c+1|0}}break}default:{}}k[b>>2]=h;b=g;return b|0}function Af(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=a+116|0;g=((m[(k[f>>2]|0)+4>>1]|0)*6|0)+10|0;h=Zc(g)|0;if(!h){b=0;return b|0}zb(h,g,4);zb(h+4|0,1667523942,4);zb(h+8|0,m[(k[f>>2]|0)+4>>1]|0,2);a=k[f>>2]|0;if(j[a+4>>1]|0){d=0;c=0;e=h+10|0;while(1){zb(e,m[(k[a>>2]|0)+(d*6|0)>>1]|0,2);zb(e+2|0,m[(k[k[f>>2]>>2]|0)+(d*6|0)+2>>1]|0,2);zb(e+4|0,m[(k[k[f>>2]>>2]|0)+(d*6|0)+4>>1]|0,2);c=c+1<<16>>16;a=k[f>>2]|0;if((c&65535)>=(m[a+4>>1]|0))break;else{d=c&65535;e=e+6|0}}}k[b>>2]=g;b=h;return b|0}function Bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+32|0;e=f+16|0;if((c|0)!=14){cc(d,1,18507,f)|0;e=0;r=f;return e|0}Ab(b,a+16|0,4);Ab(b+4|0,a+12|0,4);c=a+20|0;Ab(b+8|0,c,2);c=_c(k[c>>2]|0,12)|0;k[a+72>>2]=c;if(!c){cc(d,1,18540,f+8|0)|0;e=0;r=f;return e|0}Ab(b+10|0,a+24|0,1);c=a+28|0;Ab(b+11|0,c,1);c=k[c>>2]|0;if((c|0)!=7){k[e>>2]=c;cc(d,4,18589,e)|0}Ab(b+12|0,a+32|0,1);Ab(b+13|0,a+36|0,1);e=1;r=f;return e|0}function Cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+80|0;g=x+40|0;t=x+32|0;j=x+24|0;h=x+16|0;u=x+72|0;s=x+68|0;o=x+64|0;p=x+60|0;m=x+56|0;q=x+52|0;n=x+48|0;l=x+44|0;if(c>>>0<3){cc(d,1,18180,x)|0;w=0;r=x;return w|0}v=a+108|0;w=a+124|0;if(i[w>>0]|0){cc(d,4,18212,x+8|0)|0;w=1;r=x;return w|0}f=a+40|0;Ab(b,f,1);Ab(b+1|0,a+52|0,1);Ab(b+2|0,a+44|0,1);e=b+3|0;f=k[f>>2]|0;switch(f|0){case 1:{if(c>>>0<7){k[h>>2]=c;cc(d,1,18321,h)|0;w=0;r=x;return w|0}f=a+48|0;if(c>>>0>7?(k[f>>2]|0)!=14:0){k[j>>2]=c;cc(d,2,18321,j)|0}Ab(e,f,4);if((k[f>>2]|0)==14){e=Zc(36)|0;k[e>>2]=14;k[n>>2]=0;k[m>>2]=0;k[o>>2]=0;k[q>>2]=0;k[p>>2]=0;k[s>>2]=0;k[l>>2]=4470064;f=e+4|0;k[f>>2]=1145390592;switch(c|0){case 35:{Ab(b+7|0,s,4);Ab(b+11|0,o,4);Ab(b+15|0,p,4);Ab(b+19|0,m,4);Ab(b+23|0,q,4);Ab(b+27|0,n,4);Ab(b+31|0,l,4);k[f>>2]=0;break}case 7:break;default:{k[t>>2]=c;cc(d,2,18357,t)|0}}k[e+8>>2]=k[s>>2];k[e+16>>2]=k[p>>2];k[e+24>>2]=k[q>>2];k[e+12>>2]=k[o>>2];k[e+20>>2]=k[m>>2];k[e+28>>2]=k[n>>2];k[e+32>>2]=k[l>>2];k[v>>2]=e;k[a+112>>2]=0}i[w>>0]=1;w=1;r=x;return w|0}case 2:{g=c+-3|0;f=a+112|0;k[f>>2]=g;a=_c(1,g)|0;k[v>>2]=a;if(!a){k[f>>2]=0;w=0;r=x;return w|0}if((c|0)>3){f=0;while(1){Ab(e,u,1);i[(k[v>>2]|0)+f>>0]=k[u>>2];f=f+1|0;if((f|0)==(g|0))break;else e=e+1|0}}i[w>>0]=1;w=1;r=x;return w|0}default:{if(f>>>0<=2){w=1;r=x;return w|0}k[g>>2]=f;cc(d,4,18401,g)|0;w=1;r=x;return w|0}}return 0}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;f=h;e=k[a+24>>2]|0;if((e|0)!=255){k[f>>2]=e;cc(d,2,18034,f)|0}g=a+20|0;if((k[g>>2]|0)!=(c|0)){cc(d,1,18148,h+8|0)|0;g=0;r=h;return g|0}if(!c){g=1;r=h;return g|0}f=a+72|0;e=0;while(1){Ab(b,(k[f>>2]|0)+(e*12|0)+8|0,1);e=e+1|0;if(e>>>0>=(k[g>>2]|0)>>>0){b=1;break}else b=b+1|0}r=h;return b|0}function Ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+16|0;e=q;p=q+12|0;f=a+120|0;if(c>>>0<3|(k[f>>2]|0)!=0){c=0;r=q;return c|0}Ab(b,p,2);g=k[p>>2]|0;o=g&65535;if((o+-1|0)>>>0>1023){k[e>>2]=o;cc(d,1,17951,e)|0;c=0;r=q;return c|0}Ab(b+2|0,p,1);n=k[p>>2]&65535;if(!n){cc(d,1,17989,q+8|0)|0;c=0;r=q;return c|0}if((n+3|0)>>>0>c>>>0){c=0;r=q;return c|0}e=Zc(ha(o<<2,n)|0)|0;if(!e){c=0;r=q;return c|0}m=Zc(n)|0;if(!m){cd(e);c=0;r=q;return c|0}h=Zc(n)|0;if(!h){cd(e);cd(m);c=0;r=q;return c|0}a=Zc(20)|0;if(!a){cd(e);cd(m);cd(h);c=0;r=q;return c|0}k[a+4>>2]=h;k[a+8>>2]=m;k[a>>2]=e;j[a+16>>1]=g;i[a+18>>0]=k[p>>2];k[a+12>>2]=0;k[f>>2]=a;a=b+3|0;d=0;f=0;do{Ab(a,p,1);a=a+1|0;i[m+d>>0]=(k[p>>2]&127)+1;i[h+d>>0]=(k[p>>2]|0)>>>7&1;f=f+1<<16>>16;d=f&65535}while(d>>>0<n>>>0);if(!o){c=1;r=q;return c|0}d=0;a:while(1){g=0;f=e;h=0;while(1){e=((l[m+g>>0]|0)+7|0)>>>3;e=e>>>0>4?4:e;if((a-b+e|0)>(c|0)){a=0;e=22;break a}Ab(a,p,e);a=a+e|0;k[f>>2]=k[p>>2];e=f+4|0;h=h+1<<16>>16;g=h&65535;if(g>>>0>=n>>>0)break;else f=e}d=d+1<<16>>16;if((d&65535)>>>0>=o>>>0){a=1;e=22;break}}if((e|0)==22){r=q;return a|0}return 0}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h+20|0;f=a+120|0;a=k[f>>2]|0;if(!a){cc(d,1,17841,h)|0;g=0;r=h;return g|0}if(k[a+12>>2]|0){cc(d,1,17887,h+8|0)|0;g=0;r=h;return g|0}e=i[a+18>>0]|0;a=(e&255)<<2;if(a>>>0>c>>>0){cc(d,1,17918,h+16|0)|0;g=0;r=h;return g|0}d=Zc(a)|0;if(!d){g=0;r=h;return g|0}if(e<<24>>24){a=b;c=0;while(1){Ab(a,g,2);j[d+(c<<2)>>1]=k[g>>2];Ab(a+2|0,g,1);i[d+(c<<2)+2>>0]=k[g>>2];Ab(a+3|0,g,1);i[d+(c<<2)+3>>0]=k[g>>2];c=c+1|0;if((c&255)<<24>>24==e<<24>>24)break;else a=a+4|0}}k[(k[f>>2]|0)+12>>2]=d;g=1;r=h;return g|0}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h+20|0;f=a+116|0;if(k[f>>2]|0){g=0;r=h;return g|0}if(c>>>0<2){cc(d,1,17747,h)|0;g=0;r=h;return g|0}Ab(b,g,2);a=k[g>>2]|0;e=a&65535;if(!e){cc(d,1,17780,h+8|0)|0;g=0;r=h;return g|0}if(((e*6|0)+2|0)>>>0>c>>>0){cc(d,1,17747,h+16|0)|0;g=0;r=h;return g|0}c=Zc(a*6|0)|0;if(!c){g=0;r=h;return g|0}a=Zc(8)|0;k[f>>2]=a;if(!a){cd(c);g=0;r=h;return g|0}k[a>>2]=c;d=k[g>>2]&65535;j[a+4>>1]=d;if(!(d<<16>>16)){g=1;r=h;return g|0}else{e=0;a=b}do{b=e&65535;Ab(a+2|0,g,2);j[c+(b*6|0)>>1]=k[g>>2];Ab(a+4|0,g,2);a=a+6|0;j[c+(b*6|0)+2>>1]=k[g>>2];Ab(a,g,2);j[c+(b*6|0)+4>>1]=k[g>>2];e=e+1<<16>>16}while((e&65535)<(m[(k[f>>2]|0)+4>>1]|0));a=1;r=h;return a|0}function Hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+32|0;e=f+20|0;a=a+100|0;if(k[a>>2]|0){cc(d,1,19130,f)|0;d=0;r=f;return d|0}if((c|0)!=4){cc(d,1,19184,f+8|0)|0;d=0;r=f;return d|0}Ab(b,e,4);if((k[e>>2]|0)==218793738){k[a>>2]=k[a>>2]|1;d=1;r=f;return d|0}else{cc(d,1,19218,f+16|0)|0;d=0;r=f;return d|0}return 0}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;f=h+24|0;g=a+100|0;if((k[g>>2]|0)!=1){cc(d,1,19011,h)|0;g=0;r=h;return g|0}if(c>>>0<8){cc(d,1,19061,h+8|0)|0;g=0;r=h;return g|0}Ab(b,a+56|0,4);Ab(b+4|0,a+60|0,4);b=b+8|0;c=c+-8|0;if(c&3){cc(d,1,19061,h+16|0)|0;g=0;r=h;return g|0}c=c>>>2;e=a+64|0;k[e>>2]=c;if(c){c=_c(c,4)|0;k[a+68>>2]=c;if(!c){cc(d,1,19097,f)|0;g=0;r=h;return g|0}if(k[e>>2]|0){a=a+68|0;c=0;while(1){Ab(b,(k[a>>2]|0)+(c<<2)|0,4);c=c+1|0;if(c>>>0>=(k[e>>2]|0)>>>0)break;else b=b+4|0}}}k[g>>2]=k[g>>2]|2;g=1;r=h;return g|0}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+96|0;y=A+72|0;s=A+64|0;q=A+56|0;p=A+48|0;w=A+40|0;v=A+32|0;u=A+24|0;t=A+16|0;o=A+8|0;m=A+80|0;n=A+76|0;x=a+100|0;if(!(k[x>>2]&2)){cc(d,1,18679,A)|0;z=0;r=A;return z|0}l=a+104|0;k[l>>2]=0;do if(c){i=b;b=0;a:while(1){if(c>>>0<8){z=6;break}Ab(i,m,4);e=k[m>>2]|0;Ab(i+4|0,m,4);h=k[m>>2]|0;switch(e|0){case 0:{z=14;break a}case 1:{if(c>>>0<16){z=9;break a}Ab(i+8|0,n,4);if(k[n>>2]|0){z=11;break a}Ab(i+12|0,m,4);e=k[m>>2]|0;if(!e){z=13;break a}else f=16;break}default:f=8}if(e>>>0<f>>>0){z=16;break}if(c>>>0<e>>>0){z=19;break}g=(h|0)==1768449138;if(!g)if((h|0)!=1668246642)if((h|0)!=1651532643)if((h|0)!=1885564018)if((h|0)!=1668112752)if((h|0)==1667523942){j=1148;z=26}else k[l>>2]=k[l>>2]|2147483647;else{j=1140;z=26}else{j=1132;z=26}else{j=1124;z=26}else{j=1116;z=26}else{j=1108;z=26}if((z|0)==26?(z=0,(hb[k[j+4>>2]&63](a,i+f|0,e-f|0,d)|0)==0):0){b=0;z=32;break}b=g?1:b;if((c|0)==(e|0)){z=29;break}else{i=i+e|0;c=c-e|0}}if((z|0)==6)cc(d,1,18724,o)|0;else if((z|0)==9)cc(d,1,18764,t)|0;else if((z|0)==11)cc(d,1,17148,u)|0;else if((z|0)==13)cc(d,1,17218,v)|0;else if((z|0)==14)cc(d,1,17218,w)|0;else if((z|0)==16)cc(d,1,18808,p)|0;else if((z|0)==19){cc(d,1,18880,s)|0;z=0;r=A;return z|0}else if((z|0)==29){if(!b)break;k[x>>2]=k[x>>2]|4;z=1;r=A;return z|0}else if((z|0)==32){r=A;return b|0}cc(d,1,18837,q)|0;z=0;r=A;return z|0}while(0);cc(d,1,18952,y)|0;z=0;r=A;return z|0}function Kf(){return 8}function Lf(){return 32}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!d)return;else e=0;do{l=a+(e<<2)|0;h=k[l>>2]|0;i=b+(e<<2)|0;g=k[i>>2]|0;f=c+(e<<2)|0;j=k[f>>2]|0;k[l>>2]=(g<<1)+h+j>>2;k[i>>2]=j-g;k[f>>2]=h-g;e=e+1|0}while((e|0)!=(d|0));return}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!d)return;else e=0;do{j=a+(e<<2)|0;i=b+(e<<2)|0;g=k[i>>2]|0;f=c+(e<<2)|0;l=k[f>>2]|0;h=(k[j>>2]|0)-(l+g>>2)|0;k[j>>2]=h+l;k[i>>2]=h;k[f>>2]=h+g;e=e+1|0}while((e|0)!=(d|0));return}function Of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!d)return;else e=0;do{o=a+(e<<2)|0;u=k[o>>2]|0;j=b+(e<<2)|0;t=k[j>>2]|0;f=c+(e<<2)|0;s=k[f>>2]|0;i=((u|0)<0)<<31>>31;q=hj(u|0,i|0,2449,0)|0;q=aj(q|0,L|0,4096,0)|0;q=bj(q|0,L|0,13)|0;h=((t|0)<0)<<31>>31;r=hj(t|0,h|0,4809,0)|0;r=aj(r|0,L|0,4096,0)|0;r=bj(r|0,L|0,13)|0;g=((s|0)<0)<<31>>31;p=hj(s|0,g|0,934,0)|0;p=aj(p|0,L|0,4096,0)|0;p=bj(p|0,L|0,13)|0;l=hj(u|0,i|0,1382,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=hj(t|0,h|0,2714,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;n=$i(s|0,g|0,12)|0;n=aj(n|0,L|0,4096,0)|0;n=bj(n|0,L|0,13)|0;i=$i(u|0,i|0,12)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;h=hj(t|0,h|0,3430,0)|0;h=aj(h|0,L|0,4096,0)|0;h=bj(h|0,L|0,13)|0;g=hj(s|0,g|0,666,0)|0;g=aj(g|0,L|0,4096,0)|0;g=bj(g|0,L|0,13)|0;k[o>>2]=r+q+p;k[j>>2]=n-(m+l);k[f>>2]=i-h-g;e=e+1|0}while((e|0)!=(d|0));return}function Pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0.0,h=0.0,i=0,j=0.0,k=0;if(!d)return;else e=0;do{k=a+(e<<2)|0;h=+o[k>>2];i=b+(e<<2)|0;g=+o[i>>2];f=c+(e<<2)|0;j=+o[f>>2];o[k>>2]=h+j*1.4019999504089355;o[i>>2]=h-g*.3441300094127655-j*.714139997959137;o[f>>2]=h+g*1.7719999551773071;e=e+1|0}while((e|0)!=(d|0));return}function Qf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,p=0,q=0;f=ha(d,d)|0;n=Zc(f+d<<2)|0;if(!n){d=0;return d|0}if(f){g=0;e=a;while(1){k[n+(g+d<<2)>>2]=~~(+o[e>>2]*8192.0);g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}if(b){l=(d|0)==0;m=0;do{if(!l){e=0;do{k[n+(e<<2)>>2]=k[k[c+(e<<2)>>2]>>2];e=e+1|0}while((e|0)!=(d|0));if(!l){a=0;i=n;do{i=i+(d<<2)|0;f=c+(a<<2)|0;e=k[f>>2]|0;k[e>>2]=0;g=0;h=0;j=i;while(1){p=k[j>>2]|0;q=k[n+(h<<2)>>2]|0;p=hj(q|0,((q|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;p=aj(p|0,L|0,4096,0)|0;p=bj(p|0,L|0,13)|0;g=p+g|0;k[e>>2]=g;h=h+1|0;if((h|0)==(d|0))break;else j=j+4|0}k[f>>2]=e+4;a=a+1|0}while((a|0)!=(d|0))}}m=m+1|0}while((m|0)!=(b|0))}cd(n);q=1;return q|0}function Rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;l=Zc(d<<3)|0;if(!l){d=0;return d|0}if(b){m=(d|0)==0;n=0;do{if(!m){e=0;do{k[l+(e<<2)>>2]=k[k[c+(e<<2)>>2]>>2];e=e+1|0}while((e|0)!=(d|0));if(!m){i=0;j=a;while(1){e=l+(i+d<<2)|0;o[e>>2]=0.0;f=0.0;g=0;h=j;while(1){f=f+ +o[h>>2]*+o[l+(g<<2)>>2];o[e>>2]=f;g=g+1|0;if((g|0)==(d|0))break;else h=h+4|0}g=c+(i<<2)|0;h=k[g>>2]|0;k[g>>2]=h+4;o[h>>2]=f;i=i+1|0;if((i|0)==(d|0))break;else j=j+(d<<2)|0}}}n=n+1|0}while((n|0)!=(b|0))}cd(l);d=1;return d|0}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0,i=0.0;if(!b)return;else h=0;do{g=a+(h<<3)|0;p[g>>3]=0.0;d=0.0;e=0;f=h;while(1){i=+o[c+(f<<2)>>2];d=d+i*i;e=e+1|0;if((e|0)==(b|0))break;else f=f+b|0}i=+X(+d);p[g>>3]=i;h=h+1|0}while((h|0)!=(b|0));return}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+32|0;B=F+28|0;w=F+24|0;x=F+20|0;y=F+16|0;z=F+12|0;A=F+8|0;h=F+4|0;j=F;d=b+76|0;D=k[d>>2]|0;C=D+(c*5640|0)+420|0;E=(k[C>>2]|0)+1|0;l=a+16|0;v=Zc((k[l>>2]|0)*528|0)|0;if(!v){E=0;r=F;return E|0}u=Zc(k[l>>2]<<2)|0;if(!u){cd(v);E=0;r=F;return E|0}d=Zf(a,k[d>>2]|0,c)|0;if(!d){cd(v);cd(u);E=0;r=F;return E|0}e=k[l>>2]|0;if(e){f=0;g=v;while(1){k[u+(f<<2)>>2]=g;f=f+1|0;if(f>>>0>=e>>>0)break;else g=g+528|0}}_f(a,b,c,x,y,z,A,h,j,w,B,u);s=k[w>>2]|0;p=ha(k[l>>2]|0,s)|0;q=ha(k[B>>2]|0,p)|0;t=D+(c*5640|0)+8|0;o=_c(ha((k[t>>2]|0)+1|0,q)|0,2)|0;f=d+4|0;k[f>>2]=o;if(!o){cd(v);cd(u);e=k[f>>2]|0;if(e){cd(e);k[f>>2]=0}if(E){a=d;m=0;while(1){l=a+196|0;e=k[l>>2]|0;if(e){b=a+192|0;f=k[b>>2]|0;if(f){j=0;while(1){g=e+12|0;h=k[g>>2]|0;if(h){cd(h);k[g>>2]=0;f=k[b>>2]|0}j=j+1|0;if(j>>>0>=f>>>0)break;else e=e+16|0}e=k[l>>2]|0}cd(e);k[l>>2]=0}m=m+1|0;if((m|0)==(E|0))break;else a=a+232|0}}cd(d);E=0;r=F;return E|0}e=k[d+196>>2]|0;o=k[a+24>>2]|0;k[d+200>>2]=k[x>>2];k[d+204>>2]=k[z>>2];k[d+208>>2]=k[y>>2];k[d+212>>2]=k[A>>2];k[d+20>>2]=1;k[d+16>>2]=s;k[d+12>>2]=p;k[d+8>>2]=q;l=k[d+192>>2]|0;if(l){a=0;b=o;while(1){g=k[e+12>>2]|0;f=k[u+(a<<2)>>2]|0;k[e>>2]=k[b>>2];k[e+4>>2]=k[b+4>>2];j=k[e+8>>2]|0;if(j){h=0;while(1){k[g>>2]=k[f>>2];k[g+4>>2]=k[f+4>>2];k[g+8>>2]=k[f+8>>2];k[g+12>>2]=k[f+12>>2];h=h+1|0;if(h>>>0>=j>>>0)break;else{f=f+16|0;g=g+16|0}}}a=a+1|0;if(a>>>0>=l>>>0)break;else{e=e+16|0;b=b+52|0}}}if(E>>>0>1){l=d;n=1;do{e=k[l+428>>2]|0;k[l+432>>2]=k[x>>2];k[l+436>>2]=k[z>>2];k[l+440>>2]=k[y>>2];k[l+444>>2]=k[A>>2];k[l+252>>2]=1;k[l+248>>2]=s;k[l+244>>2]=p;k[l+240>>2]=q;a=k[l+424>>2]|0;if(a){m=0;b=o;while(1){g=k[e+12>>2]|0;f=k[u+(m<<2)>>2]|0;k[e>>2]=k[b>>2];k[e+4>>2]=k[b+4>>2];j=k[e+8>>2]|0;if(j){h=0;while(1){k[g>>2]=k[f>>2];k[g+4>>2]=k[f+4>>2];k[g+8>>2]=k[f+8>>2];k[g+12>>2]=k[f+12>>2];h=h+1|0;if(h>>>0>=j>>>0)break;else{f=f+16|0;g=g+16|0}}}m=m+1|0;if(m>>>0>=a>>>0)break;else{e=e+16|0;b=b+52|0}}}k[l+236>>2]=k[l+4>>2];l=l+232|0;n=n+1|0}while((n|0)!=(E|0))}cd(v);cd(u);l=k[w>>2]|0;if(!(i[D+(c*5640|0)+5636>>0]&4)){b=k[B>>2]|0;j=(k[C>>2]|0)+1|0;if(!j){E=d;r=F;return E|0}h=k[D+(c*5640|0)+4>>2]|0;e=k[t>>2]|0;f=d;g=0;while(1){k[f+80>>2]=h;k[f+40>>2]=1;k[f+44>>2]=0;k[f+48>>2]=0;k[f+64>>2]=0;k[f+68>>2]=0;k[f+56>>2]=b;k[f+60>>2]=k[f+192>>2];k[f+52>>2]=e;k[f+72>>2]=l;g=g+1|0;if((g|0)==(j|0))break;else f=f+232|0}r=F;return d|0}else{g=(k[C>>2]|0)+1|0;if(!g){E=d;r=F;return E|0}h=d;e=D+(c*5640|0)+424|0;f=0;while(1){k[h+80>>2]=k[e+36>>2];k[h+40>>2]=1;k[h+44>>2]=k[e>>2];k[h+48>>2]=k[e+4>>2];k[h+64>>2]=0;k[h+68>>2]=0;k[h+56>>2]=k[e+12>>2];k[h+60>>2]=k[e+16>>2];k[h+52>>2]=k[e+8>>2];k[h+72>>2]=l;f=f+1|0;if((f|0)==(g|0))break;else{h=h+232|0;e=e+148|0}}r=F;return d|0}return 0}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!a)return;c=a+4|0;d=k[c>>2]|0;if(d){cd(d);k[c>>2]=0}if(b){j=a;l=0;while(1){i=j+196|0;c=k[i>>2]|0;if(c){h=j+192|0;d=k[h>>2]|0;if(d){g=0;while(1){e=c+12|0;f=k[e>>2]|0;if(f){cd(f);k[e>>2]=0;d=k[h>>2]|0}g=g+1|0;if(g>>>0>=d>>>0)break;else c=c+16|0}c=k[i>>2]|0}cd(c);k[i>>2]=0}l=l+1|0;if((l|0)==(b|0))break;else j=j+232|0}}cd(a);return}function Vf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=r;r=r+32|0;G=L+28|0;F=L+24|0;B=L+20|0;C=L+16|0;D=L+12|0;E=L+8|0;H=L+4|0;I=L;J=b+76|0;x=k[J>>2]|0;K=(k[x+(c*5640|0)+420>>2]|0)+1|0;A=a+16|0;z=Zc((k[A>>2]|0)*528|0)|0;if(!z){c=0;r=L;return c|0}y=Zc(k[A>>2]<<2)|0;if(!y){cd(z);c=0;r=L;return c|0}e=Zf(a,k[J>>2]|0,c)|0;if(!e){cd(z);cd(y);c=0;r=L;return c|0}f=k[A>>2]|0;if(f){g=0;h=z;while(1){k[y+(g<<2)>>2]=h;g=g+1|0;if(g>>>0>=f>>>0)break;else h=h+528|0}}_f(a,b,c,B,C,D,E,H,I,F,G,y);u=k[F>>2]|0;v=ha(k[A>>2]|0,u)|0;w=ha(k[G>>2]|0,v)|0;i[e>>0]=(l[b+93>>0]|0)>>>3&1;t=_c(ha(k[x+(c*5640|0)+8>>2]|0,w)|0,2)|0;g=e+4|0;k[g>>2]=t;if(!t){cd(z);cd(y);f=k[g>>2]|0;if(f){cd(f);k[g>>2]=0}if(K){p=e;q=0;while(1){o=p+196|0;f=k[o>>2]|0;if(f){n=p+192|0;g=k[n>>2]|0;if(g){m=0;while(1){h=f+12|0;a=k[h>>2]|0;if(a){cd(a);k[h>>2]=0;g=k[n>>2]|0}m=m+1|0;if(m>>>0>=g>>>0)break;else f=f+16|0}f=k[o>>2]|0}cd(f);k[o>>2]=0}q=q+1|0;if((q|0)==(K|0))break;else p=p+232|0}}cd(e);c=0;r=L;return c|0}f=k[e+196>>2]|0;t=k[a+24>>2]|0;k[e+200>>2]=k[B>>2];k[e+204>>2]=k[D>>2];k[e+208>>2]=k[C>>2];k[e+212>>2]=k[E>>2];k[e+224>>2]=k[H>>2];k[e+228>>2]=k[I>>2];k[e+20>>2]=1;k[e+16>>2]=u;k[e+12>>2]=v;k[e+8>>2]=w;o=k[e+192>>2]|0;if(o){p=0;n=t;while(1){h=k[f+12>>2]|0;g=k[y+(p<<2)>>2]|0;k[f>>2]=k[n>>2];k[f+4>>2]=k[n+4>>2];m=k[f+8>>2]|0;if(m){a=0;while(1){k[h>>2]=k[g>>2];k[h+4>>2]=k[g+4>>2];k[h+8>>2]=k[g+8>>2];k[h+12>>2]=k[g+12>>2];a=a+1|0;if(a>>>0>=m>>>0)break;else{g=g+16|0;h=h+16|0}}}p=p+1|0;if(p>>>0>=o>>>0)break;else{f=f+16|0;n=n+52|0}}}if(K>>>0>1){o=e;s=1;do{f=k[o+428>>2]|0;k[o+432>>2]=k[B>>2];k[o+436>>2]=k[D>>2];k[o+440>>2]=k[C>>2];k[o+444>>2]=k[E>>2];k[o+456>>2]=k[H>>2];k[o+460>>2]=k[I>>2];k[o+252>>2]=1;k[o+248>>2]=u;k[o+244>>2]=v;k[o+240>>2]=w;p=k[o+424>>2]|0;if(p){q=0;n=t;while(1){h=k[f+12>>2]|0;g=k[y+(q<<2)>>2]|0;k[f>>2]=k[n>>2];k[f+4>>2]=k[n+4>>2];m=k[f+8>>2]|0;if(m){a=0;while(1){k[h>>2]=k[g>>2];k[h+4>>2]=k[g+4>>2];k[h+8>>2]=k[g+8>>2];k[h+12>>2]=k[g+12>>2];a=a+1|0;if(a>>>0>=m>>>0)break;else{g=g+16|0;h=h+16|0}}}q=q+1|0;if(q>>>0>=p>>>0)break;else{f=f+16|0;n=n+52|0}}}k[o+236>>2]=k[o+4>>2];o=o+232|0;s=s+1|0}while((s|0)!=(K|0))}cd(z);cd(y);do if(i[x+(c*5640|0)+5636>>0]&4){f=j[b>>1]|0;if((f&65535)>2){if(!((d|0)==1|(f&65535)<7))break}else if((d|0)!=1)break;$f(k[J>>2]|0,c,k[B>>2]|0,k[C>>2]|0,k[D>>2]|0,k[E>>2]|0,k[F>>2]|0,k[H>>2]|0,k[I>>2]|0);c=e;r=L;return c|0}while(0);w=k[A>>2]|0;v=k[B>>2]|0;u=k[C>>2]|0;t=k[D>>2]|0;s=k[E>>2]|0;q=k[F>>2]|0;p=k[G>>2]|0;o=k[H>>2]|0;n=k[I>>2]|0;f=k[J>>2]|0;h=(k[f+(c*5640|0)+420>>2]|0)+1|0;if(!h){c=e;r=L;return c|0}a=k[f+(c*5640|0)+8>>2]|0;m=k[f+(c*5640|0)+4>>2]|0;f=f+(c*5640|0)+424|0;g=0;while(1){k[f+76>>2]=0;k[f+92>>2]=w;k[f+72>>2]=0;k[f+88>>2]=p;k[f+68>>2]=0;k[f+84>>2]=a;k[f+36>>2]=m;k[f+80>>2]=0;k[f+96>>2]=q;k[f+100>>2]=v;k[f+104>>2]=u;k[f+108>>2]=t;k[f+112>>2]=s;k[f+116>>2]=o;k[f+120>>2]=n;g=g+1|0;if((g|0)==(h|0))break;else f=f+148|0}r=L;return e|0}function Wf(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,l=0,m=0,n=0,o=0,p=0,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;Q=k[b+76>>2]|0;R=Q+(c*5640|0)+424+(d*148|0)+36|0;S=dd(k[R>>2]|0)|0;k[a+(d*232|0)+40>>2]=1;T=a+(d*232|0)+44|0;k[a+(d*232|0)+80>>2]=k[R>>2];do if(i[b+93>>0]&8){h=j[b>>1]|0;if((h&65535)>2){if(!((g|0)==1&(h&65535)>6|(h+-3&65535)<4))break}else if(!((g|0)==1|(h+-3&65535)<4))break;h=f+1|0;a:do if((h|0)<4){g=Q+(c*5640|0)+424+(d*148|0)+72|0;l=Q+(c*5640|0)+424+(d*148|0)+88|0;m=a+(d*232|0)+56|0;n=Q+(c*5640|0)+424+(d*148|0)+76|0;o=a+(d*232|0)+48|0;p=Q+(c*5640|0)+424+(d*148|0)+92|0;q=a+(d*232|0)+60|0;r=Q+(c*5640|0)+424+(d*148|0)+68|0;s=a+(d*232|0)+64|0;t=Q+(c*5640|0)+424+(d*148|0)+84|0;u=a+(d*232|0)+52|0;v=Q+(c*5640|0)+424+(d*148|0)+80|0;w=a+(d*232|0)+68|0;x=Q+(c*5640|0)+424+(d*148|0)+96|0;y=a+(d*232|0)+72|0;z=Q+(c*5640|0)+424+(d*148|0)+100|0;A=a+(d*232|0)+96|0;B=Q+(c*5640|0)+424+(d*148|0)+108|0;C=a+(d*232|0)+104|0;D=Q+(c*5640|0)+424+(d*148|0)+104|0;E=a+(d*232|0)+100|0;F=Q+(c*5640|0)+424+(d*148|0)+112|0;G=a+(d*232|0)+108|0;while(1){b:do switch(i[S+h>>0]|0){case 82:{k[T>>2]=k[g>>2];k[m>>2]=k[l>>2];break}case 67:{k[o>>2]=k[n>>2];k[q>>2]=k[p>>2];break}case 76:{k[s>>2]=k[r>>2];k[u>>2]=k[t>>2];break}case 80:if((k[R>>2]|0)>>>0<2){k[w>>2]=k[v>>2];k[y>>2]=k[x>>2];break b}else{k[A>>2]=k[z>>2];k[C>>2]=k[B>>2];k[E>>2]=k[D>>2];k[G>>2]=k[F>>2];break b}default:{}}while(0);h=h+1|0;if((h|0)==4)break a}}while(0);h=(f|0)>-1;if(!e){if(!h)return;m=Q+(c*5640|0)+424+(d*148|0)+76|0;n=Q+(c*5640|0)+424+(d*148|0)+132|0;o=a+(d*232|0)+48|0;p=a+(d*232|0)+60|0;q=Q+(c*5640|0)+424+(d*148|0)+72|0;r=Q+(c*5640|0)+424+(d*148|0)+128|0;s=a+(d*232|0)+56|0;t=Q+(c*5640|0)+424+(d*148|0)+68|0;u=Q+(c*5640|0)+424+(d*148|0)+124|0;v=a+(d*232|0)+64|0;w=a+(d*232|0)+52|0;x=Q+(c*5640|0)+424+(d*148|0)+80|0;y=Q+(c*5640|0)+424+(d*148|0)+136|0;z=a+(d*232|0)+68|0;A=a+(d*232|0)+72|0;B=Q+(c*5640|0)+424+(d*148|0)+100|0;C=Q+(c*5640|0)+424+(d*148|0)+140|0;D=Q+(c*5640|0)+424+(d*148|0)+108|0;E=Q+(c*5640|0)+424+(d*148|0)+144|0;F=a+(d*232|0)+96|0;G=Q+(c*5640|0)+424+(d*148|0)+116|0;e=a+(d*232|0)+100|0;H=a+(d*232|0)+104|0;l=Q+(c*5640|0)+424+(d*148|0)+120|0;g=a+(d*232|0)+108|0;h=f;while(1){c:do switch(i[S+h>>0]|0){case 67:{d=k[m>>2]|0;k[o>>2]=d;d=d+1|0;k[p>>2]=d;k[n>>2]=d;break}case 82:{d=k[q>>2]|0;k[T>>2]=d;d=d+1|0;k[s>>2]=d;k[r>>2]=d;break}case 76:{d=k[t>>2]|0;k[v>>2]=d;d=d+1|0;k[w>>2]=d;k[u>>2]=d;break}case 80:if((k[R>>2]|0)>>>0<2){d=k[x>>2]|0;k[z>>2]=d;d=d+1|0;k[A>>2]=d;k[y>>2]=d;break c}else{d=k[B>>2]|0;f=k[D>>2]|0;k[F>>2]=d;c=k[G>>2]|0;c=c+d-((d>>>0)%(c>>>0)|0)|0;k[e>>2]=c;k[H>>2]=f;d=k[l>>2]|0;d=d+f-((f>>>0)%(d>>>0)|0)|0;k[g>>2]=d;k[C>>2]=c;k[E>>2]=d;break c}default:{}}while(0);if((h|0)>0)h=h+-1|0;else break}return}if(!h)return;L=Q+(c*5640|0)+424+(d*148|0)+128|0;M=Q+(c*5640|0)+424+(d*148|0)+88|0;N=Q+(c*5640|0)+424+(d*148|0)+72|0;O=a+(d*232|0)+56|0;P=Q+(c*5640|0)+424+(d*148|0)+132|0;p=Q+(c*5640|0)+424+(d*148|0)+92|0;q=Q+(c*5640|0)+424+(d*148|0)+76|0;r=a+(d*232|0)+48|0;s=a+(d*232|0)+60|0;t=Q+(c*5640|0)+424+(d*148|0)+124|0;u=Q+(c*5640|0)+424+(d*148|0)+84|0;v=Q+(c*5640|0)+424+(d*148|0)+68|0;w=a+(d*232|0)+64|0;x=a+(d*232|0)+52|0;y=Q+(c*5640|0)+424+(d*148|0)+136|0;z=Q+(c*5640|0)+424+(d*148|0)+96|0;A=Q+(c*5640|0)+424+(d*148|0)+80|0;B=a+(d*232|0)+68|0;C=a+(d*232|0)+72|0;D=Q+(c*5640|0)+424+(d*148|0)+140|0;E=Q+(c*5640|0)+424+(d*148|0)+104|0;F=a+(d*232|0)+96|0;G=Q+(c*5640|0)+424+(d*148|0)+116|0;e=a+(d*232|0)+100|0;H=Q+(c*5640|0)+424+(d*148|0)+144|0;I=Q+(c*5640|0)+424+(d*148|0)+112|0;J=a+(d*232|0)+104|0;K=Q+(c*5640|0)+424+(d*148|0)+120|0;n=a+(d*232|0)+108|0;o=Q+(c*5640|0)+424+(d*148|0)+100|0;m=Q+(c*5640|0)+424+(d*148|0)+108|0;l=f;h=1;while(1){g=S+l|0;d:do switch(i[g>>0]|0){case 67:{f=k[P>>2]|0;k[r>>2]=f+-1;k[s>>2]=f;break}case 82:{f=k[L>>2]|0;k[T>>2]=f+-1;k[O>>2]=f;break}case 76:{f=k[t>>2]|0;k[w>>2]=f+-1;k[x>>2]=f;break}case 80:if((k[R>>2]|0)>>>0<2){f=k[y>>2]|0;k[B>>2]=f+-1;k[C>>2]=f;break d}else{f=k[D>>2]|0;Q=k[G>>2]|0;k[F>>2]=f-Q-((f>>>0)%(Q>>>0)|0);k[e>>2]=f;f=k[H>>2]|0;Q=k[K>>2]|0;k[J>>2]=f-Q-((f>>>0)%(Q>>>0)|0);k[n>>2]=f;break d}default:{}}while(0);e:do if((h|0)==1)switch(i[g>>0]|0){case 82:{h=k[L>>2]|0;if((h|0)!=(k[M>>2]|0)){k[T>>2]=h;h=h+1|0;k[O>>2]=h;k[L>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[N>>2]|0;k[T>>2]=h;h=h+1|0;k[O>>2]=h;k[L>>2]=h;h=1;break e}case 67:{h=k[P>>2]|0;if((h|0)!=(k[p>>2]|0)){k[r>>2]=h;h=h+1|0;k[s>>2]=h;k[P>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[q>>2]|0;k[r>>2]=h;h=h+1|0;k[s>>2]=h;k[P>>2]=h;h=1;break e}case 76:{h=k[t>>2]|0;if((h|0)!=(k[u>>2]|0)){k[w>>2]=h;h=h+1|0;k[x>>2]=h;k[t>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[v>>2]|0;k[w>>2]=h;h=h+1|0;k[x>>2]=h;k[t>>2]=h;h=1;break e}case 80:{if((k[R>>2]|0)>>>0<2){h=k[y>>2]|0;if((h|0)!=(k[z>>2]|0)){k[B>>2]=h;h=h+1|0;k[C>>2]=h;k[y>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[A>>2]|0;k[B>>2]=h;h=h+1|0;k[C>>2]=h;k[y>>2]=h;h=1;break e}h=k[D>>2]|0;if(h>>>0<(k[E>>2]|0)>>>0){k[F>>2]=h;f=k[G>>2]|0;h=f+h-((h>>>0)%(f>>>0)|0)|0;k[e>>2]=h;k[D>>2]=h;h=0;break e}g=k[H>>2]|0;if(g>>>0<(k[I>>2]|0)>>>0){k[J>>2]=g;f=k[K>>2]|0;h=0;g=f+g-((g>>>0)%(f>>>0)|0)|0}else{if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}f=k[m>>2]|0;k[H>>2]=f;k[J>>2]=f;g=k[K>>2]|0;h=1;g=g+f-((f>>>0)%(g>>>0)|0)|0}k[n>>2]=g;k[H>>2]=g;Q=k[o>>2]|0;k[F>>2]=Q;f=k[G>>2]|0;f=f+Q-((Q>>>0)%(f>>>0)|0)|0;k[e>>2]=f;k[D>>2]=f;break e}default:{h=1;break e}}while(0);if((l|0)>0)l=l+-1|0;else break}return}while(0);k[T>>2]=k[Q+(c*5640|0)+424+(d*148|0)+72>>2];k[a+(d*232|0)+56>>2]=k[Q+(c*5640|0)+424+(d*148|0)+88>>2];k[a+(d*232|0)+48>>2]=k[Q+(c*5640|0)+424+(d*148|0)+76>>2];k[a+(d*232|0)+60>>2]=k[Q+(c*5640|0)+424+(d*148|0)+92>>2];k[a+(d*232|0)+64>>2]=k[Q+(c*5640|0)+424+(d*148|0)+68>>2];k[a+(d*232|0)+52>>2]=k[Q+(c*5640|0)+424+(d*148|0)+84>>2];k[a+(d*232|0)+68>>2]=k[Q+(c*5640|0)+424+(d*148|0)+80>>2];k[a+(d*232|0)+72>>2]=k[Q+(c*5640|0)+424+(d*148|0)+96>>2];k[a+(d*232|0)+96>>2]=k[Q+(c*5640|0)+424+(d*148|0)+100>>2];k[a+(d*232|0)+104>>2]=k[Q+(c*5640|0)+424+(d*148|0)+108>>2];k[a+(d*232|0)+100>>2]=k[Q+(c*5640|0)+424+(d*148|0)+104>>2];k[a+(d*232|0)+108>>2]=k[Q+(c*5640|0)+424+(d*148|0)+112>>2];return}function Xf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,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,M=0,N=0,O=0;H=k[b+76>>2]|0;J=k[b+24>>2]|0;N=(c>>>0)%(J>>>0)|0;J=(c>>>0)/(J>>>0)|0;K=k[b+4>>2]|0;G=k[b+12>>2]|0;F=(ha(G,N)|0)+K|0;M=k[a>>2]|0;M=(F|0)>(M|0)?F:M;K=(ha(G,N+1|0)|0)+K|0;N=k[a+8>>2]|0;N=(K|0)<(N|0)?K:N;K=k[b+8>>2]|0;G=k[b+16>>2]|0;F=(ha(G,J)|0)+K|0;I=k[a+4>>2]|0;I=(F|0)>(I|0)?F:I;K=(ha(G,J+1|0)|0)+K|0;J=k[a+12>>2]|0;J=(K|0)<(J|0)?K:J;K=k[a+16>>2]|0;if(!K){l=0;j=2147483647;h=2147483647;g=0}else{C=J+-1|0;D=N+-1|0;E=I+-1|0;F=M+-1|0;l=0;j=2147483647;h=2147483647;g=0;G=0;A=k[a+24>>2]|0;B=k[H+(c*5640|0)+5584>>2]|0;while(1){x=k[A>>2]|0;y=k[A+4>>2]|0;z=k[B+4>>2]|0;g=z>>>0>g>>>0?z:g;if(z){v=(C+y|0)/(y|0)|0;t=(D+x|0)/(x|0)|0;r=(E+y|0)/(y|0)|0;p=(F+x|0)/(x|0)|0;p=aj(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;q=L;r=aj(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;s=L;t=aj(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;u=L;v=aj(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;w=L;b=0;o=0;while(1){m=k[B+812+(o<<2)>>2]|0;n=k[B+944+(o<<2)>>2]|0;e=b+-1+z|0;f=x<<e+m;O=y<<n+e;j=j>>>0<f>>>0?j:f;h=h>>>0<O>>>0?h:O;O=$i(1,0,e|0)|0;f=L;b=aj(p|0,q|0,O|0,f|0)|0;b=Zi(b|0,L|0,e|0)|0;d=aj(r|0,s|0,O|0,f|0)|0;d=Zi(d|0,L|0,e|0)|0;a=aj(t|0,u|0,O|0,f|0)|0;a=Zi(a|0,L|0,e|0)|0;f=aj(v|0,w|0,O|0,f|0)|0;e=Zi(f|0,L|0,e|0)|0;f=$i(1,0,n|0)|0;f=aj(f|0,L|0,-1,-1)|0;f=aj(f|0,L|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Zi(f|0,L|0,n|0)|0;if((b|0)==(a|0))b=0;else{O=$i(1,0,m|0)|0;O=aj(O|0,L|0,-1,-1)|0;O=aj(O|0,L|0,a|0,((a|0)<0)<<31>>31|0)|0;O=Zi(O|0,L|0,m|0)|0;b=(O<<m)-(b>>m<<m)>>m}a=ha(b,(d|0)==(e|0)?0:(f<<n)-(d>>n<<n)>>n)|0;l=a>>>0>l>>>0?a:l;a=o+1|0;if(a>>>0<z>>>0){b=~o;o=a}else break}}G=G+1|0;if(G>>>0>=K>>>0)break;else{A=A+52|0;B=B+1080|0}}}if(i[H+(c*5640|0)+5636>>0]&4){$f(H,c,M,N,I,J,l,j,h);return}d=(k[H+(c*5640|0)+420>>2]|0)+1|0;if(!d)return;e=k[H+(c*5640|0)+8>>2]|0;f=k[H+(c*5640|0)+4>>2]|0;b=H+(c*5640|0)+424|0;a=0;while(1){k[b+76>>2]=0;k[b+92>>2]=K;k[b+72>>2]=0;k[b+88>>2]=g;k[b+68>>2]=0;k[b+84>>2]=e;k[b+36>>2]=f;k[b+80>>2]=0;k[b+96>>2]=l;k[b+100>>2]=M;k[b+104>>2]=N;k[b+108>>2]=I;k[b+112>>2]=J;k[b+116>>2]=j;k[b+120>>2]=h;a=a+1|0;if((a|0)==(d|0))break;else b=b+148|0}return}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;switch(k[a+80>>2]|0){case 0:{b=a+40|0;if(!(k[b>>2]|0)){E=a+32|0;l=E;E=k[E>>2]|0;c=18}else{k[b>>2]=0;t=k[a+64>>2]|0;k[a+36>>2]=t;c=5}while(1){if((c|0)==5){if(t>>>0>=(k[a+52>>2]|0)>>>0){nb=0;c=153;break}z=k[a+44>>2]|0;k[a+28>>2]=z;c=7}else if((c|0)==18){g=E+1|0;k[l>>2]=g;e=l;c=14}while(1){if((c|0)==7){c=0;if(z>>>0>=(k[a+56>>2]|0)>>>0){c=21;break}A=k[a+48>>2]|0;p=a+24|0;k[p>>2]=A}else if((c|0)==14){if(g>>>0<(k[a+72>>2]|0)>>>0){c=16;break}F=a+24|0;n=F;F=k[F>>2]|0;c=19}while(1){if((c|0)==19){c=0;A=F+1|0;k[n>>2]=A;p=n}if(A>>>0>=(k[a+60>>2]|0)>>>0){c=20;break}B=k[a+196>>2]|0;C=k[a+28>>2]|0;if(C>>>0<(k[B+(A<<4)+8>>2]|0)>>>0)break;else{n=p;F=A;c=19}}if((c|0)==20){c=a+28|0;z=(k[c>>2]|0)+1|0;k[c>>2]=z;c=7;continue}b=k[B+(A<<4)+12>>2]|0;if(!(i[a>>0]|0)){mb=ha(k[b+(C<<4)+12>>2]|0,k[b+(C<<4)+8>>2]|0)|0;k[a+72>>2]=mb}g=k[a+68>>2]|0;e=a+32|0;k[e>>2]=g;c=14}if((c|0)==16){c=0;D=ha(k[a+8>>2]|0,k[a+36>>2]|0)|0;D=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+D|0;D=D+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;D=D+(ha(k[a+20>>2]|0,g)|0)|0;D=(k[a+4>>2]|0)+(D<<1)|0;if(!(j[D>>1]|0))break;else{l=e;E=g;c=18;continue}}else if((c|0)==21){c=a+36|0;t=(k[c>>2]|0)+1|0;k[c>>2]=t;c=5;continue}}if((c|0)==153)return nb|0;j[D>>1]=1;a=1;return a|0}case 1:{b=a+40|0;if(!(k[b>>2]|0)){x=a+32|0;h=x;x=k[x>>2]|0;c=38}else{k[b>>2]=0;G=k[a+44>>2]|0;k[a+28>>2]=G;c=25}while(1){if((c|0)==25){if(G>>>0>=(k[a+56>>2]|0)>>>0){nb=0;c=153;break}r=k[a+64>>2]|0;k[a+36>>2]=r;c=27}else if((c|0)==38){f=x+1|0;k[h>>2]=f;d=h;c=34}while(1){if((c|0)==27){c=0;if(r>>>0>=(k[a+52>>2]|0)>>>0){c=41;break}s=k[a+48>>2]|0;o=a+24|0;k[o>>2]=s}else if((c|0)==34){if(f>>>0<(k[a+72>>2]|0)>>>0){c=36;break}y=a+24|0;m=y;y=k[y>>2]|0;c=39}while(1){if((c|0)==39){c=0;s=y+1|0;k[m>>2]=s;o=m}if(s>>>0>=(k[a+60>>2]|0)>>>0){c=40;break}u=k[a+196>>2]|0;v=k[a+28>>2]|0;if(v>>>0<(k[u+(s<<4)+8>>2]|0)>>>0)break;else{m=o;y=s;c=39}}if((c|0)==40){c=a+36|0;r=(k[c>>2]|0)+1|0;k[c>>2]=r;c=27;continue}b=k[u+(s<<4)+12>>2]|0;if(!(i[a>>0]|0)){mb=ha(k[b+(v<<4)+12>>2]|0,k[b+(v<<4)+8>>2]|0)|0;k[a+72>>2]=mb}f=k[a+68>>2]|0;d=a+32|0;k[d>>2]=f;c=34}if((c|0)==36){c=0;w=ha(k[a+8>>2]|0,k[a+36>>2]|0)|0;w=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+w|0;w=w+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;w=w+(ha(k[a+20>>2]|0,f)|0)|0;w=(k[a+4>>2]|0)+(w<<1)|0;if(!(j[w>>1]|0))break;else{h=d;x=f;c=38;continue}}else if((c|0)==41){c=a+28|0;G=(k[c>>2]|0)+1|0;k[c>>2]=G;c=25;continue}}if((c|0)==153)return nb|0;j[w>>1]=1;a=1;return a|0}case 2:{b=a+40|0;if(!(k[b>>2]|0)){lb=a+36|0;Ta=lb;lb=k[lb>>2]|0;c=75}else{k[b>>2]=0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;q=k[a+192>>2]|0;if(q){r=k[a+196>>2]|0;b=0;c=0;s=0;do{g=k[r+(s<<4)+8>>2]|0;if(g){h=k[r+(s<<4)+12>>2]|0;l=k[r+(s<<4)>>2]|0;m=k[r+(s<<4)+4>>2]|0;n=g+-1|0;d=0;f=0;while(1){e=n+d|0;Sa=l<<e+(k[h+(f<<4)>>2]|0);e=m<<(k[h+(f<<4)+4>>2]|0)+e;b=(b|0)==0?Sa:b>>>0<Sa>>>0?b:Sa;c=(c|0)==0?e:c>>>0<e>>>0?c:e;e=f+1|0;if((e|0)==(g|0))break;else{d=~f;f=e}}k[o>>2]=b;k[p>>2]=c}s=s+1|0}while((s|0)!=(q|0))}if(!(i[a>>0]|0)){k[a+104>>2]=k[a+204>>2];k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}J=k[a+44>>2]|0;k[a+28>>2]=J;c=54}while(1){if((c|0)==54){if(J>>>0>=(k[a+56>>2]|0)>>>0){nb=0;c=153;break}Xa=k[a+104>>2]|0;k[a+220>>2]=Xa;c=56}else if((c|0)==75){jb=lb+1|0;k[Ta>>2]=jb;Ua=Ta;c=71}while(1){if((c|0)==56){if((Xa|0)>=(k[a+108>>2]|0)){c=79;break}Ya=k[a+96>>2]|0;k[a+216>>2]=Ya;c=58}else if((c|0)==71){if(jb>>>0<(k[a+52>>2]|0)>>>0){c=73;break}mb=a+24|0;Va=mb;mb=k[mb>>2]|0;c=76}while(1){if((c|0)==58){if((Ya|0)>=(k[a+100>>2]|0)){c=78;break}Za=k[a+48>>2]|0;Wa=a+24|0;k[Wa>>2]=Za}else if((c|0)==76){Za=mb+1|0;k[Va>>2]=Za;Wa=Va}if(Za>>>0>=(k[a+60>>2]|0)>>>0){Ya=k[a+224>>2]|0;c=a+216|0;Sa=k[c>>2]|0;Ya=Sa+Ya-((Sa|0)%(Ya|0)|0)|0;k[c>>2]=Ya;c=58;continue}c=k[a+196>>2]|0;m=k[a+28>>2]|0;b=k[c+(Za<<4)+8>>2]|0;if(m>>>0>=b>>>0){Va=Wa;mb=Za;c=76;continue}n=k[c+(Za<<4)+12>>2]|0;f=b+~m|0;g=k[a+200>>2]|0;h=k[c+(Za<<4)>>2]|0;_a=h<<f;$a=(g+-1+_a|0)/(_a|0)|0;l=k[a+204>>2]|0;Sa=k[c+(Za<<4)+4>>2]|0;ab=Sa<<f;bb=(l+-1+ab|0)/(ab|0)|0;cb=_a+-1|0;b=(cb+(k[a+208>>2]|0)|0)/(_a|0)|0;db=ab+-1|0;c=(db+(k[a+212>>2]|0)|0)/(ab|0)|0;eb=k[n+(m<<4)>>2]|0;d=eb+f|0;fb=k[n+(m<<4)+4>>2]|0;e=fb+f|0;gb=k[a+220>>2]|0;if((gb|0)%(Sa<<e|0)|0){if((gb|0)!=(l|0)){Va=Wa;mb=Za;c=76;continue}if(!((bb<<f|0)%(1<<e|0)|0)){Va=Wa;mb=Za;c=76;continue}}hb=k[a+216>>2]|0;if((hb|0)%(h<<d|0)|0){if((hb|0)!=(g|0)){Va=Wa;mb=Za;c=76;continue}if(!(($a<<f|0)%(1<<d|0)|0)){Va=Wa;mb=Za;c=76;continue}}ib=k[n+(m<<4)+8>>2]|0;if(!ib){Va=Wa;mb=Za;c=76;continue}if((bb|0)==(c|0)|(($a|0)==(b|0)?1:(k[n+(m<<4)+12>>2]|0)==0)){Va=Wa;mb=Za;c=76}else{c=70;break}}if((c|0)==70){jb=(((cb+hb|0)/(_a|0)|0)>>eb)-($a>>eb)+(ha((((db+gb|0)/(ab|0)|0)>>fb)-(bb>>fb)|0,ib)|0)|0;k[a+32>>2]=jb;jb=k[a+64>>2]|0;Ua=a+36|0;k[Ua>>2]=jb;c=71;continue}else if((c|0)==78){Xa=k[a+228>>2]|0;c=a+220|0;Sa=k[c>>2]|0;Xa=Sa+Xa-((Sa|0)%(Xa|0)|0)|0;k[c>>2]=Xa;c=56;continue}}if((c|0)==73){c=0;kb=ha(k[a+8>>2]|0,jb)|0;kb=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+kb|0;kb=kb+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;kb=kb+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;kb=(k[a+4>>2]|0)+(kb<<1)|0;if(!(j[kb>>1]|0))break;else{Ta=Ua;lb=jb;c=75;continue}}else if((c|0)==79){c=a+28|0;J=(k[c>>2]|0)+1|0;k[c>>2]=J;c=54;continue}}if((c|0)==153)return nb|0;j[kb>>1]=1;a=1;return a|0}case 3:{c=a+40|0;if(!(k[c>>2]|0)){Ra=k[a+24>>2]|0;Ka=a+36|0;pa=Ka;Ka=k[Ka>>2]|0;Na=Ra;Ra=(k[a+196>>2]|0)+(Ra<<4)|0;c=113}else{k[c>>2]=0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;q=k[a+192>>2]|0;if(q){r=k[a+196>>2]|0;b=0;c=0;s=0;do{g=k[r+(s<<4)+8>>2]|0;if(g){h=k[r+(s<<4)+12>>2]|0;l=k[r+(s<<4)>>2]|0;m=k[r+(s<<4)+4>>2]|0;n=g+-1|0;d=0;f=0;while(1){e=n+d|0;mb=l<<e+(k[h+(f<<4)>>2]|0);e=m<<(k[h+(f<<4)+4>>2]|0)+e;b=(b|0)==0?mb:b>>>0<mb>>>0?b:mb;c=(c|0)==0?e:c>>>0<e>>>0?c:e;e=f+1|0;if((e|0)==(g|0))break;else{d=~f;f=e}}k[o>>2]=b;k[p>>2]=c}s=s+1|0}while((s|0)!=(q|0))}if(!(i[a>>0]|0)){b=k[a+204>>2]|0;k[a+104>>2]=b;k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}else b=k[a+104>>2]|0;k[a+220>>2]=b;c=93}while(1){if((c|0)==93){if((b|0)>=(k[a+108>>2]|0)){nb=0;c=153;break}ta=k[a+96>>2]|0;k[a+216>>2]=ta;c=95}else if((c|0)==113){Ha=Ka+1|0;k[pa>>2]=Ha;qa=pa;Ia=Na;Qa=Ra;c=109}while(1){if((c|0)==95){if((ta|0)>=(k[a+100>>2]|0)){c=117;break}ua=k[a+48>>2]|0;k[a+24>>2]=ua;c=97}else if((c|0)==109){if(Ha>>>0<(k[a+52>>2]|0)>>>0){c=111;break}La=a+28|0;ra=La;La=k[La>>2]|0;Oa=Ia;Sa=Qa;c=114}while(1){if((c|0)==97){if(ua>>>0>=(k[a+60>>2]|0)>>>0){c=116;break}Pa=(k[a+196>>2]|0)+(ua<<4)|0;va=k[a+44>>2]|0;sa=a+28|0;k[sa>>2]=va;Ma=ua}else if((c|0)==114){va=La+1|0;k[ra>>2]=va;sa=ra;Ma=Oa;Pa=Sa}mb=k[a+56>>2]|0;c=k[Pa+8>>2]|0;if(va>>>0>=(mb>>>0<c>>>0?mb:c)>>>0){ua=Ma+1|0;k[a+24>>2]=ua;c=97;continue}n=k[Pa+12>>2]|0;c=c+~va|0;d=k[a+200>>2]|0;e=k[Pa>>2]|0;wa=e<<c;xa=(d+-1+wa|0)/(wa|0)|0;f=k[a+204>>2]|0;mb=k[Pa+4>>2]|0;ya=mb<<c;za=(f+-1+ya|0)/(ya|0)|0;Aa=wa+-1|0;g=(Aa+(k[a+208>>2]|0)|0)/(wa|0)|0;Ba=ya+-1|0;h=(Ba+(k[a+212>>2]|0)|0)/(ya|0)|0;Ca=k[n+(va<<4)>>2]|0;l=Ca+c|0;Da=k[n+(va<<4)+4>>2]|0;m=Da+c|0;Ea=k[a+220>>2]|0;if((Ea|0)%(mb<<m|0)|0){if((Ea|0)!=(f|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if(!((za<<c|0)%(1<<m|0)|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}}Fa=k[a+216>>2]|0;if((Fa|0)%(e<<l|0)|0){if((Fa|0)!=(d|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if(!((xa<<c|0)%(1<<l|0)|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}}Ga=k[n+(va<<4)+8>>2]|0;if(!Ga){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if((za|0)==(h|0)|((xa|0)==(g|0)?1:(k[n+(va<<4)+12>>2]|0)==0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114}else{c=108;break}}if((c|0)==108){Ha=(((Aa+Fa|0)/(wa|0)|0)>>Ca)-(xa>>Ca)+(ha((((Ba+Ea|0)/(ya|0)|0)>>Da)-(za>>Da)|0,Ga)|0)|0;k[a+32>>2]=Ha;Ha=k[a+64>>2]|0;qa=a+36|0;k[qa>>2]=Ha;Ia=Ma;Qa=Pa;c=109;continue}else if((c|0)==116){ta=k[a+224>>2]|0;c=a+216|0;mb=k[c>>2]|0;ta=mb+ta-((mb|0)%(ta|0)|0)|0;k[c>>2]=ta;c=95;continue}}if((c|0)==111){c=0;Ja=ha(k[a+8>>2]|0,Ha)|0;Ja=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+Ja|0;Ja=Ja+(ha(k[a+16>>2]|0,Ia)|0)|0;Ja=Ja+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;Ja=(k[a+4>>2]|0)+(Ja<<1)|0;if(!(j[Ja>>1]|0))break;else{pa=qa;Ka=Ha;Na=Ia;Ra=Qa;c=113;continue}}else if((c|0)==117){b=k[a+228>>2]|0;c=a+220|0;mb=k[c>>2]|0;b=mb+b-((mb|0)%(b|0)|0)|0;k[c>>2]=b;c=93;continue}}if((c|0)==153)return nb|0;j[Ja>>1]=1;a=1;return a|0}case 4:{b=a+40|0;if(!(k[b>>2]|0)){na=k[a+24>>2]|0;da=a+36|0;K=da;da=k[da>>2]|0;fa=na;na=(k[a+196>>2]|0)+(na<<4)|0;c=148}else{k[b>>2]=0;O=k[a+48>>2]|0;k[a+24>>2]=O;c=121}while(1){if((c|0)==121){if(O>>>0>=(k[a+60>>2]|0)>>>0){nb=0;c=153;break}b=k[a+196>>2]|0;q=b+(O<<4)|0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;l=k[b+(O<<4)+8>>2]|0;if(l){m=k[b+(O<<4)+12>>2]|0;n=k[q>>2]|0;e=k[b+(O<<4)+4>>2]|0;f=l+-1|0;c=0;b=0;d=0;h=0;while(1){g=f+d|0;mb=n<<g+(k[m+(h<<4)>>2]|0);g=e<<(k[m+(h<<4)+4>>2]|0)+g;c=(c|0)==0?mb:c>>>0<mb>>>0?c:mb;b=(b|0)==0?g:b>>>0<g>>>0?b:g;g=h+1|0;if((g|0)==(l|0))break;else{d=~h;h=g}}k[o>>2]=c;k[p>>2]=b}if(!(i[a>>0]|0)){b=k[a+204>>2]|0;k[a+104>>2]=b;k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}else b=k[a+104>>2]|0;k[a+220>>2]=b;H=b;I=O;c=130}else if((c|0)==148){aa=da+1|0;k[K>>2]=aa;L=K;ba=fa;ma=na;c=144}while(1){if((c|0)==130){if((H|0)>=(k[a+108>>2]|0)){c=152;break}P=k[a+96>>2]|0;k[a+216>>2]=P;ga=I;ka=q;c=132}else if((c|0)==144){if(aa>>>0<(k[a+52>>2]|0)>>>0){c=146;break}ea=a+28|0;M=ea;ea=k[ea>>2]|0;ja=ba;oa=ma;c=149}while(1){if((c|0)==132){if((P|0)>=(k[a+100>>2]|0)){c=151;break}Q=k[a+44>>2]|0;N=a+28|0;k[N>>2]=Q;ia=ga;la=ka}else if((c|0)==149){Q=ea+1|0;k[M>>2]=Q;N=M;ia=ja;la=oa}mb=k[a+56>>2]|0;b=k[la+8>>2]|0;if(Q>>>0>=(mb>>>0<b>>>0?mb:b)>>>0){P=k[a+224>>2]|0;ga=a+216|0;ka=k[ga>>2]|0;P=ka+P-((ka|0)%(P|0)|0)|0;k[ga>>2]=P;ga=ia;ka=la;c=132;continue}m=k[la+12>>2]|0;b=b+~Q|0;c=k[a+200>>2]|0;d=k[la>>2]|0;R=d<<b;S=(c+-1+R|0)/(R|0)|0;e=k[a+204>>2]|0;mb=k[la+4>>2]|0;T=mb<<b;U=(e+-1+T|0)/(T|0)|0;V=R+-1|0;f=(V+(k[a+208>>2]|0)|0)/(R|0)|0;W=T+-1|0;g=(W+(k[a+212>>2]|0)|0)/(T|0)|0;X=k[m+(Q<<4)>>2]|0;h=X+b|0;Y=k[m+(Q<<4)+4>>2]|0;l=Y+b|0;Z=k[a+220>>2]|0;if((Z|0)%(mb<<l|0)|0){if((Z|0)!=(e|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if(!((U<<b|0)%(1<<l|0)|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}}_=k[a+216>>2]|0;if((_|0)%(d<<h|0)|0){if((_|0)!=(c|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if(!((S<<b|0)%(1<<h|0)|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}}$=k[m+(Q<<4)+8>>2]|0;if(!$){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if((U|0)==(g|0)|((S|0)==(f|0)?1:(k[m+(Q<<4)+12>>2]|0)==0)){M=N;ea=Q;ja=ia;oa=la;c=149}else{c=143;break}}if((c|0)==143){aa=(((V+_|0)/(R|0)|0)>>X)-(S>>X)+(ha((((W+Z|0)/(T|0)|0)>>Y)-(U>>Y)|0,$)|0)|0;k[a+32>>2]=aa;aa=k[a+64>>2]|0;L=a+36|0;k[L>>2]=aa;ba=ia;ma=la;c=144;continue}else if((c|0)==151){H=k[a+228>>2]|0;I=a+220|0;q=k[I>>2]|0;H=q+H-((q|0)%(H|0)|0)|0;k[I>>2]=H;I=ga;q=ka;c=130;continue}}if((c|0)==146){c=0;ca=ha(k[a+8>>2]|0,aa)|0;ca=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+ca|0;ca=ca+(ha(k[a+16>>2]|0,ba)|0)|0;ca=ca+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;ca=(k[a+4>>2]|0)+(ca<<1)|0;if(!(j[ca>>1]|0))break;else{K=L;da=aa;fa=ba;na=ma;c=148;continue}}else if((c|0)==152){O=I+1|0;k[a+24>>2]=O;c=121;continue}}if((c|0)==153)return nb|0;j[ca>>1]=1;a=1;return a|0}default:{a=0;return a|0}}return 0}function Zf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=(k[b+(c*5640|0)+420>>2]|0)+1|0;d=_c(l,232)|0;if(!d){l=0;return l|0}if(!l){l=d;return l|0}i=a+16|0;f=b+(c*5640|0)+5584|0;a=k[i>>2]|0;g=d;h=0;a:while(1){b=_c(a,16)|0;e=g+196|0;k[e>>2]=b;if(!b){a=5;break}j=k[i>>2]|0;k[g+192>>2]=j;b:do if(!j)a=0;else{a=(k[f>>2]|0)+4|0;j=_c(k[a>>2]|0,16)|0;k[b+12>>2]=j;if(!j){a=18;break a}else c=0;while(1){k[b+(c<<4)+8>>2]=k[a>>2];c=c+1|0;a=k[i>>2]|0;if(c>>>0>=a>>>0)break b;b=k[e>>2]|0;a=(k[f>>2]|0)+(c*1080|0)+4|0;j=_c(k[a>>2]|0,16)|0;k[b+(c<<4)+12>>2]=j;if(!j){a=18;break a}}}while(0);h=h+1|0;if(h>>>0>=l>>>0){a=32;break}else g=g+232|0}if((a|0)==5){a=d+4|0;b=k[a>>2]|0;if(!b){i=d;j=0}else{cd(b);k[a>>2]=0;i=d;j=0}while(1){h=i+196|0;a=k[h>>2]|0;if(a){g=i+192|0;b=k[g>>2]|0;if(b){f=0;while(1){c=a+12|0;e=k[c>>2]|0;if(e){cd(e);k[c>>2]=0;b=k[g>>2]|0}f=f+1|0;if(f>>>0>=b>>>0)break;else a=a+16|0}a=k[h>>2]|0}cd(a);k[h>>2]=0}j=j+1|0;if((j|0)==(l|0))break;else i=i+232|0}cd(d);l=0;return l|0}else if((a|0)==18){a=d+4|0;b=k[a>>2]|0;if(!b){i=d;j=0}else{cd(b);k[a>>2]=0;i=d;j=0}while(1){h=i+196|0;a=k[h>>2]|0;if(a){g=i+192|0;b=k[g>>2]|0;if(b){f=0;while(1){c=a+12|0;e=k[c>>2]|0;if(e){cd(e);k[c>>2]=0;b=k[g>>2]|0}f=f+1|0;if(f>>>0>=b>>>0)break;else a=a+16|0}a=k[h>>2]|0}cd(a);k[h>>2]=0}j=j+1|0;if((j|0)==(l|0))break;else i=i+232|0}cd(d);l=0;return l|0}else if((a|0)==32)return d|0;return 0}function _f(a,b,c,d,e,f,g,h,i,j,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;o=k[(k[b+76>>2]|0)+(c*5640|0)+5584>>2]|0;n=k[a+24>>2]|0;H=k[b+24>>2]|0;G=b+12|0;F=(ha(k[G>>2]|0,(c>>>0)%(H>>>0)|0)|0)+(k[b+4>>2]|0)|0;E=k[a>>2]|0;k[d>>2]=F>>>0>E>>>0?F:E;F=aj(k[G>>2]|0,0,F|0,0)|0;F=F|0-L;G=k[a+8>>2]|0;k[e>>2]=F>>>0<G>>>0?F:G;G=b+16|0;H=(ha(k[G>>2]|0,(c>>>0)/(H>>>0)|0)|0)+(k[b+8>>2]|0)|0;F=k[a+4>>2]|0;k[f>>2]=H>>>0>F>>>0?H:F;H=aj(k[G>>2]|0,0,H|0,0)|0;H=H|0-L;G=k[a+12>>2]|0;k[g>>2]=H>>>0<G>>>0?H:G;k[j>>2]=0;k[l>>2]=0;k[h>>2]=2147483647;k[i>>2]=2147483647;G=a+16|0;if(!(k[G>>2]|0))return;else H=0;while(1){r=k[m+(H<<2)>>2]|0;p=k[n>>2]|0;a=((k[d>>2]|0)+-1+p|0)/(p|0)|0;E=n+4|0;q=k[E>>2]|0;c=((k[f>>2]|0)+-1+q|0)/(q|0)|0;p=(p+-1+(k[e>>2]|0)|0)/(p|0)|0;q=(q+-1+(k[g>>2]|0)|0)/(q|0)|0;F=o+4|0;b=k[F>>2]|0;if(b>>>0>(k[l>>2]|0)>>>0){k[l>>2]=b;b=k[F>>2]|0}if(b){C=aj(a|0,((a|0)<0)<<31>>31|0,-1,-1)|0;D=L;A=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;B=L;y=aj(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;z=L;w=aj(q|0,((q|0)<0)<<31>>31|0,-1,-1)|0;x=L;v=0;while(1){b=b+-1|0;p=k[o+812+(v<<2)>>2]|0;u=k[o+944+(v<<2)>>2]|0;k[r>>2]=p;k[r+4>>2]=u;s=k[n>>2]<<p+b;I=k[E>>2]<<u+b;a=k[h>>2]|0;k[h>>2]=(a|0)<(s|0)?a:s;s=k[i>>2]|0;k[i>>2]=(s|0)<(I|0)?s:I;I=$i(1,0,b|0)|0;s=L;a=aj(C|0,D|0,I|0,s|0)|0;a=Zi(a|0,L|0,b|0)|0;q=aj(A|0,B|0,I|0,s|0)|0;q=Zi(q|0,L|0,b|0)|0;c=aj(y|0,z|0,I|0,s|0)|0;c=Zi(c|0,L|0,b|0)|0;s=aj(w|0,x|0,I|0,s|0)|0;s=Zi(s|0,L|0,b|0)|0;I=$i(1,0,u|0)|0;t=L;J=aj(s|0,((s|0)<0)<<31>>31|0,-1,-1)|0;t=aj(J|0,L|0,I|0,t|0)|0;t=Zi(t|0,L|0,u|0)|0;if((a|0)==(c|0))a=0;else{c=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;I=L;J=$i(1,0,p|0)|0;J=aj(c|0,I|0,J|0,L|0)|0;J=Zi(J|0,L|0,p|0)|0;a=(J<<p)-(a>>p<<p)>>p}J=(q|0)==(s|0)?0:(t<<u)-(q>>u<<u)>>u;k[r+8>>2]=a;k[r+12>>2]=J;a=ha(a,J)|0;if(a>>>0>(k[j>>2]|0)>>>0)k[j>>2]=a;v=v+1|0;if(v>>>0>=(k[F>>2]|0)>>>0)break;else r=r+16|0}}H=H+1|0;if(H>>>0>=(k[G>>2]|0)>>>0)break;else{n=n+52|0;o=o+1080|0}}return}function $f(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,l=0;j=(k[a+(b*5640|0)+420>>2]|0)+1|0;k[a+(b*5640|0)+500>>2]=k[a+(b*5640|0)+428>>2];k[a+(b*5640|0)+516>>2]=k[a+(b*5640|0)+440>>2];k[a+(b*5640|0)+496>>2]=k[a+(b*5640|0)+424>>2];k[a+(b*5640|0)+512>>2]=k[a+(b*5640|0)+436>>2];k[a+(b*5640|0)+508>>2]=k[a+(b*5640|0)+432>>2];k[a+(b*5640|0)+492>>2]=0;k[a+(b*5640|0)+460>>2]=k[a+(b*5640|0)+456>>2];k[a+(b*5640|0)+504>>2]=0;k[a+(b*5640|0)+520>>2]=g;k[a+(b*5640|0)+524>>2]=c;k[a+(b*5640|0)+528>>2]=d;k[a+(b*5640|0)+532>>2]=e;k[a+(b*5640|0)+536>>2]=f;k[a+(b*5640|0)+540>>2]=h;k[a+(b*5640|0)+544>>2]=i;if(j>>>0<=1)return;a=a+(b*5640|0)+572|0;b=1;while(1){k[a+76>>2]=k[a+4>>2];k[a+92>>2]=k[a+16>>2];k[a+72>>2]=k[a>>2];k[a+88>>2]=k[a+12>>2];l=k[a+8>>2]|0;k[a+84>>2]=l;k[a+36>>2]=k[a+32>>2];k[a+80>>2]=0;k[a+68>>2]=l>>>0>(k[a+-64>>2]|0)>>>0?l:0;k[a+96>>2]=g;k[a+100>>2]=c;k[a+104>>2]=d;k[a+108>>2]=e;k[a+112>>2]=f;k[a+116>>2]=h;k[a+120>>2]=i;b=b+1|0;if((b|0)==(j|0))break;else a=a+148|0}return}function ag(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;h=k[b+76>>2]|0;if((a|0)>-1)f=a;else{c=0;return c|0}a:while(1){switch(i[e+f>>0]|0){case 82:{g=3;break a}case 67:{g=5;break a}case 76:{g=7;break a}case 80:{g=9;break a}default:{}}f=f+-1|0}if((g|0)==3)if((k[h+(c*5640|0)+424+(d*148|0)+128>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+88>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==5)if((k[h+(c*5640|0)+424+(d*148|0)+132>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+92>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==7)if((k[h+(c*5640|0)+424+(d*148|0)+124>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+84>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==9){if((k[h+(c*5640|0)+424+(d*148|0)+36>>2]|0)>>>0<2)if((k[h+(c*5640|0)+424+(d*148|0)+136>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+96>>2]|0))return (ag(f+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}if((k[h+(c*5640|0)+424+(d*148|0)+140>>2]|0)!=(k[h+(c*5640|0)+424+(d*148|0)+104>>2]|0)){c=1;return c|0}if((k[h+(c*5640|0)+424+(d*148|0)+144>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+112>>2]|0))return (ag(f+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}}return 0}function bg(a){a=a|0;var b=0,c=0;b=_c(1,44)|0;if(!b){a=0;return a|0}c=b+40|0;i[c>>0]=i[c>>0]&-2|(a|0)!=0;a=_c(1,4)|0;k[b+20>>2]=a;if(a){c=b;return c|0}cd(b);c=0;return c|0}function cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,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;O=r;r=r+1200|0;N=O;d=k[k[a+20>>2]>>2]|0;M=d+16|0;e=k[M>>2]|0;if(!e){r=O;return}J=d+20|0;K=(k[a+32>>2]|0)+8|0;L=(k[a+28>>2]|0)+88|0;H=a+24|0;I=(b|0)==0;F=(c|0)==0;G=b+-1|0;d=e;E=0;do{h=k[J>>2]|0;i=k[K>>2]|0;C=k[h+(E*52|0)+16>>2]|0;if(i){if(C){a=k[L>>2]|0;f=+((k[(k[(k[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)>>>0)*.0625;e=0;do{c=ha(C,e)|0;g=0;do{D=(c+g|0)*3|0;k[N+(e*120|0)+(g*12|0)>>2]=~~(+(k[a+(D<<2)>>2]|0)*f);k[N+(e*120|0)+(g*12|0)+4>>2]=~~(+(k[a+(D+1<<2)>>2]|0)*f);k[N+(e*120|0)+(g*12|0)+8>>2]=~~(+(k[a+(D+2<<2)>>2]|0)*f);g=g+1|0}while(g>>>0<C>>>0);e=e+1|0}while(e>>>0<i>>>0);D=9}}else D=9;if((D|0)==9){D=0;if(C){w=h+(E*52|0)+24|0;B=0;do{x=k[w>>2]|0;y=x+(B*136|0)+24|0;d=k[y>>2]|0;if(d){z=x+(B*136|0)+16|0;A=x+(B*136|0)+20|0;a=k[A>>2]|0;c=k[z>>2]|0;v=0;do{if(ha(a,c)|0){s=x+(B*136|0)+28+(v*36|0)+20|0;t=N+(b*120|0)+(B*12|0)+(v<<2)|0;u=N+(G*120|0)+(B*12|0)+(v<<2)|0;q=0;do{d=k[s>>2]|0;p=ha(k[d+(q*40|0)+20>>2]|0,k[d+(q*40|0)+16>>2]|0)|0;if(p){l=d+(q*40|0)+24|0;m=k[t>>2]|0;o=0;do{i=k[l>>2]|0;j=i+(o*52|0)|0;n=k[i+(o*52|0)+4>>2]|0;d=(k[(k[(k[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)-(k[i+(o*52|0)+28>>2]|0)|0;if(!I){a=k[u>>2]|0;c=m-a|0;if((a|0)<=(d|0)){c=c+(a-d)|0;c=(c|0)<0?0:c}}else{k[i+(o*52|0)+44>>2]=0;c=(m|0)>(d|0)?m-d|0:0}h=i+(o*52|0)+44|0;e=k[h>>2]|0;g=(e|0)==0;if(g)if(!c)c=0;else c=(c*3|0)+-2|0;else c=(c*3|0)+e|0;k[n+(b*24|0)>>2]=c-e;do if((c|0)!=(e|0)){a=k[i+(o*52|0)+8>>2]|0;d=k[a+((c+-1|0)*24|0)>>2]|0;if(g)k[n+(b*24|0)+16>>2]=k[j>>2];else{i=k[a+((e+-1|0)*24|0)>>2]|0;k[n+(b*24|0)+16>>2]=(k[j>>2]|0)+i;d=d-i|0}k[n+(b*24|0)+4>>2]=d;if(F)break;k[h>>2]=c}while(0);o=o+1|0}while(o>>>0<p>>>0);a=k[A>>2]|0;c=k[z>>2]|0}q=q+1|0}while(q>>>0<(ha(a,c)|0)>>>0);d=k[y>>2]|0}v=v+1|0}while(v>>>0<d>>>0)}B=B+1|0}while(B>>>0<C>>>0);d=k[M>>2]|0}}E=E+1|0}while(E>>>0<d>>>0);r=O;return}function dg(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,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;a=k[k[a+20>>2]>>2]|0;G=a+40+(b<<3)|0;p[G>>3]=0.0;H=a+16|0;e=k[H>>2]|0;if(!e)return;E=a+20|0;F=(b|0)==0;D=(d|0)==0;a=e;C=0;do{e=k[E>>2]|0;B=k[e+(C*52|0)+16>>2]|0;if(B){v=e+(C*52|0)+24|0;A=0;do{w=k[v>>2]|0;x=w+(A*136|0)+24|0;a=k[x>>2]|0;if(a){y=w+(A*136|0)+16|0;z=w+(A*136|0)+20|0;e=k[z>>2]|0;d=k[y>>2]|0;u=0;do{if(ha(e,d)|0){t=w+(A*136|0)+28+(u*36|0)+20|0;s=0;do{a=k[t>>2]|0;r=ha(k[a+(s*40|0)+20>>2]|0,k[a+(s*40|0)+16>>2]|0)|0;if(r){m=a+(s*40|0)+24|0;q=0;do{i=k[m>>2]|0;j=i+(q*52|0)|0;n=k[i+(q*52|0)+4>>2]|0;o=i+(q*52|0)+44|0;if(F){k[o>>2]=0;l=0}else l=k[o>>2]|0;d=k[i+(q*52|0)+48>>2]|0;if(l>>>0<d>>>0){g=k[i+(q*52|0)+8>>2]|0;a=l;h=l;do{e=k[g+(h*24|0)>>2]|0;f=+p[g+(h*24|0)+8>>3];if(a){J=a+-1|0;f=f-+p[g+(J*24|0)+8>>3];e=e-(k[g+(J*24|0)>>2]|0)|0}do if(!e){if(!(f!=0.0))break;a=h+1|0}else{if(!(c-f/+(e>>>0)<2.220446049250313e-16))break;a=h+1|0}while(0);h=h+1|0}while(h>>>0<d>>>0);g=a;k[n+(b*24|0)>>2]=g-l;if((g|0)!=(l|0)){d=g+-1|0;e=k[i+(q*52|0)+8>>2]|0;a=k[e+(d*24|0)>>2]|0;if(!l){k[n+(b*24|0)+16>>2]=k[j>>2];f=+p[e+(d*24|0)+8>>3]}else{l=l+-1|0;J=k[e+(l*24|0)>>2]|0;k[n+(b*24|0)+16>>2]=(k[j>>2]|0)+J;f=+p[e+(d*24|0)+8>>3]-+p[e+(l*24|0)+8>>3];a=a-J|0}k[n+(b*24|0)+4>>2]=a;p[n+(b*24|0)+8>>3]=f;p[G>>3]=f+ +p[G>>3];if(!D)k[o>>2]=g}else I=26}else{k[n+(b*24|0)>>2]=0;I=26}if((I|0)==26){I=0;p[n+(b*24|0)+8>>3]=0.0}q=q+1|0}while(q>>>0<r>>>0);e=k[z>>2]|0;d=k[y>>2]|0}s=s+1|0}while(s>>>0<(ha(e,d)|0)>>>0);a=k[x>>2]|0}u=u+1|0}while(u>>>0<a>>>0)}A=A+1|0}while(A>>>0<B>>>0);a=k[H>>2]|0}C=C+1|0}while(C>>>0<a>>>0);return}function eg(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.0,l=0.0,m=0.0,n=0.0,q=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;V=r;r=r+800|0;U=V;R=k[a+28>>2]|0;S=k[k[a+20>>2]>>2]|0;T=k[a+32>>2]|0;O=S+24|0;k[O>>2]=0;P=k[S+16>>2]|0;if(!P){f=0;J=0.0;h=0.0;m=1797693134862315708145274.0e284}else{M=k[S+20>>2]|0;N=k[(k[a+24>>2]|0)+24>>2]|0;f=0;Q=0;l=0.0;h=0.0;m=1797693134862315708145274.0e284;do{I=M+(Q*52|0)+48|0;k[I>>2]=0;K=k[M+(Q*52|0)+16>>2]|0;if(!K)g=0;else{L=k[M+(Q*52|0)+24>>2]|0;g=0;H=0;do{E=k[L+(H*136|0)+24>>2]|0;if(E){F=ha(k[L+(H*136|0)+20>>2]|0,k[L+(H*136|0)+16>>2]|0)|0;G=(F|0)==0;D=0;do{if(!G){C=k[L+(H*136|0)+28+(D*36|0)+20>>2]|0;B=0;do{z=ha(k[C+(B*40|0)+20>>2]|0,k[C+(B*40|0)+16>>2]|0)|0;if(z){A=k[C+(B*40|0)+24>>2]|0;y=0;do{v=k[A+(y*52|0)+48>>2]|0;if(v){w=k[A+(y*52|0)+8>>2]|0;u=0;do{t=k[w+(u*24|0)>>2]|0;n=+p[w+(u*24|0)+8>>3];if(u){W=u+-1|0;n=n-+p[w+(W*24|0)+8>>3];t=t-(k[w+(W*24|0)>>2]|0)|0}do if(t){n=n/+(t|0);m=n<m?n:m;if(!(n>l))break;l=n}while(0);u=u+1|0}while(u>>>0<v>>>0)}W=ha((k[A+(y*52|0)+24>>2]|0)-(k[A+(y*52|0)+16>>2]|0)|0,(k[A+(y*52|0)+20>>2]|0)-(k[A+(y*52|0)+12>>2]|0)|0)|0;f=W+f|0;g=W+g|0;y=y+1|0}while(y>>>0<z>>>0);k[O>>2]=f;k[I>>2]=g}B=B+1|0}while(B>>>0<F>>>0)}D=D+1|0}while(D>>>0<E>>>0)}H=H+1|0}while(H>>>0<K>>>0)}J=+(1<<k[N+(Q*52|0)+24>>2]|0)+-1.0;h=h+ +(g|0)*(J*J);Q=Q+1|0}while(Q>>>0<P>>>0);J=l}I=(e|0)!=0;if(I){Q=k[a+36>>2]|0;P=k[e+88>>2]|0;k[P+(Q*592|0)+552>>2]=f;p[P+(Q*592|0)+560>>3]=+p[S+32>>3];f=T+8|0;W=Zc(k[f>>2]<<3)|0;k[P+(Q*592|0)>>2]=W;if(!W){W=0;r=V;return W|0}}else f=T+8|0;if(!(k[f>>2]|0)){W=1;r=V;return W|0}z=S+32|0;A=R+93|0;B=a+36|0;C=e+88|0;D=S+40|0;E=a+24|0;F=a+8|0;G=a+16|0;H=0;while(1){l=+o[T+20+(H<<2)>>2];if(l!=0.0){w=~~+ga(+l)>>>0;w=w>>>0<d>>>0?w:d}else w=d;s=+o[T+5184+(H<<2)>>2];x=+p[z>>3]-h/+Y(10.0,+(s/10.0));W=i[A>>0]|0;if(!((W&1)!=0&l>0.0)?!((W&4)!=0&s>0.0):0)l=m;else{y=nh(k[E>>2]|0,R)|0;if(!y){f=0;g=57;break}v=H+1|0;g=U+(H+-1<<3)|0;t=S+40+(H<<3)|0;if(!H){q=J;g=0;s=m;n=0.0;do{l=(s+q)*.5;dg(a,0,l,0);do if(i[A>>0]&4){if(((j[R>>1]|0)+-3&65535)>=4){W=+p[D>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n;break}if(!(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0))s=l;else{W=+p[D>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n}}else{W=(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0)==0;q=W?q:l;s=W?l:s;n=W?n:l}while(0);g=g+1|0}while((g|0)!=128)}else{q=J;u=0;s=m;n=0.0;do{l=(s+q)*.5;dg(a,H,l,0);do if(i[A>>0]&4){if(((j[R>>1]|0)+-3&65535)>=4){W=+p[g>>3]+ +p[t>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n;break}if(!(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0))s=l;else{W=+p[g>>3]+ +p[t>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n}}else{W=(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0)==0;q=W?q:l;s=W?l:s;n=W?n:l}while(0);u=u+1|0}while((u|0)!=128)}oh(y);l=n==0.0?l:n}if(I)p[(k[(k[C>>2]|0)+((k[B>>2]|0)*592|0)>>2]|0)+(H<<3)>>3]=l;dg(a,H,l,1);if(!H)l=+p[D>>3];else l=+p[U+(H+-1<<3)>>3]+ +p[S+40+(H<<3)>>3];p[U+(H<<3)>>3]=l;H=H+1|0;if(H>>>0>=(k[f>>2]|0)>>>0){f=1;g=57;break}}if((g|0)==57){r=V;return f|0}return 0}function fg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a+24>>2]=b;k[a+28>>2]=c;e=_c(1,848)|0;d=a+20|0;k[k[d>>2]>>2]=e;if(!e){a=0;return a|0}e=b+16|0;f=_c(k[e>>2]|0,52)|0;b=k[k[d>>2]>>2]|0;k[b+20>>2]=f;if(!f){f=0;return f|0}k[b+16>>2]=k[e>>2];k[a>>2]=k[c+84>>2];f=1;return f|0}function gg(a){a=a|0;var 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;if(!a)return;s=a+20|0;b=k[s>>2]|0;do if(b){r=(i[a+40>>0]&1)==0?3:4;c=k[b>>2]|0;if(c){o=c+20|0;j=c+16|0;if(k[j>>2]|0){m=0;n=k[o>>2]|0;while(1){l=n+24|0;b=k[l>>2]|0;if(b){g=k[n+28>>2]|0;h=(g>>>0)/136|0;if(g>>>0>135){g=0;while(1){f=b+48|0;c=k[f>>2]|0;if(c){d=k[b+52>>2]|0;e=(d>>>0)/40|0;if(d>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=b+84|0;c=k[f>>2]|0;if(c){t=k[b+88>>2]|0;e=(t>>>0)/40|0;if(t>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=b+120|0;c=k[f>>2]|0;if(c){t=k[b+124>>2]|0;e=(t>>>0)/40|0;if(t>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}g=g+1|0;if(g>>>0>=h>>>0)break;else b=b+136|0}b=k[l>>2]|0}cd(b);k[l>>2]=0}if((k[n+36>>2]|0)!=0?(p=n+32|0,q=k[p>>2]|0,(q|0)!=0):0){ad(q);k[p>>2]=0;k[p+4>>2]=0;k[p+8>>2]=0;k[p+12>>2]=0}m=m+1|0;if(m>>>0>=(k[j>>2]|0)>>>0)break;else n=n+52|0}}cd(k[o>>2]|0);k[o>>2]=0;cd(k[k[s>>2]>>2]|0);b=k[s>>2]|0;k[b>>2]=0;if(!b)break}cd(b);k[s>>2]=0}while(0);cd(a);return}function hg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+32|0;e=k[d>>2]|0;b=a+40|0;c=k[b>>2]|0;if(e){f=a+44|0;if(c>>>0<=(k[f>>2]|0)>>>0){a=1;return a|0}if(k[a+36>>2]|0){ad(e);e=$c(k[b>>2]|0)|0;k[d>>2]=e;if(!e){k[f>>2]=0;k[b>>2]=0;k[a+36>>2]=0;a=0;return a|0}else{k[f>>2]=k[b>>2];k[a+36>>2]=1;a=1;return a|0}}}f=$c(c)|0;k[d>>2]=f;if(!f){a=0;return a|0}k[a+44>>2]=k[b>>2];k[a+36>>2]=1;a=1;return a|0}function ig(a,b,c){a=a|0;b=b|0;c=c|0;return sg(a,b,1,1.0,52,c)|0}function jg(a,b,c){a=a|0;b=b|0;c=c|0;return sg(a,b,0,.5,56,c)|0}function kg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=k[a+24>>2]|0;e=k[c+16>>2]|0;if(!e){f=0;return f|0}f=0;b=0;d=k[c+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){h=k[d+24>>2]|0;h=((h&7|0)!=0&1)+(h>>>3)|0;g=k[c+24>>2]|0;a=(k[c+20>>2]|0)+-1|0;b=(ha(ha((h|0)==3?4:h,(k[g+(a*136|0)+8>>2]|0)-(k[g+(a*136|0)>>2]|0)|0)|0,(k[g+(a*136|0)+12>>2]|0)-(k[g+(a*136|0)+4>>2]|0)|0)|0)+b|0;f=f+1|0;if(f>>>0>=e>>>0)break;else{d=d+52|0;c=c+52|0}}return b|0}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+16|0;w=y;if(!(k[a+8>>2]|0)){k[a+36>>2]=b;u=a+28|0;g=k[(k[u>>2]|0)+76>>2]|0;x=a+32|0;k[x>>2]=g+(b*5640|0);v=(f|0)==0;t=a+20|0;if(!v){h=k[(k[k[t>>2]>>2]|0)+20>>2]|0;n=k[g+(b*5640|0)+5584>>2]|0;o=h+16|0;if(!(k[o>>2]|0)){h=f+88|0;g=0}else{j=k[h+24>>2]|0;h=f+88|0;l=k[h>>2]|0;m=0;g=0;do{s=j+(m*136|0)+16|0;k[l+(b*592|0)+20+(m<<2)>>2]=k[s>>2];q=j+(m*136|0)+20|0;k[l+(b*592|0)+152+(m<<2)>>2]=k[q>>2];g=(ha(k[q>>2]|0,k[s>>2]|0)|0)+g|0;k[l+(b*592|0)+284+(m<<2)>>2]=k[n+812+(m<<2)>>2];k[l+(b*592|0)+416+(m<<2)>>2]=k[n+944+(m<<2)>>2];m=m+1|0}while(m>>>0<(k[o>>2]|0)>>>0)}s=_c(ha(ha(k[f+52>>2]|0,g)|0,k[f+56>>2]|0)|0,32)|0;k[(k[h>>2]|0)+(b*592|0)+548>>2]=s;if(!s){a=0;r=y;return a|0}}g=k[k[t>>2]>>2]|0;s=g+16|0;if(!(k[s>>2]|0)){m=k[x>>2]|0;j=0;h=k[g+20>>2]|0}else{m=k[x>>2]|0;h=k[g+20>>2]|0;b=0;p=k[m+5584>>2]|0;q=h;while(1){n=k[q+32>>2]|0;o=ha((k[q+12>>2]|0)-(k[q+4>>2]|0)|0,(k[q+8>>2]|0)-(k[q>>2]|0)|0)|0;g=(o|0)==0;if((k[p+20>>2]|0)==1){if(!g){j=p+1076|0;l=0;g=n;while(1){k[g>>2]=(k[g>>2]|0)-(k[j>>2]|0);l=l+1|0;if((l|0)==(o|0))break;else g=g+4|0}}}else if(!g){j=p+1076|0;l=0;g=n;while(1){k[g>>2]=(k[g>>2]|0)-(k[j>>2]|0)<<11;l=l+1|0;if((l|0)==(o|0))break;else g=g+4|0}}b=b+1|0;j=k[s>>2]|0;if(b>>>0>=j>>>0)break;else{p=p+1080|0;q=q+52|0}}}n=ha((k[h+12>>2]|0)-(k[h+4>>2]|0)|0,(k[h+8>>2]|0)-(k[h>>2]|0)|0)|0;a:do switch(k[m+16>>2]|0){case 0:break;case 2:{if(k[m+5608>>2]|0){l=Zc(j<<2)|0;if(!l){a=0;r=y;return a|0}g=k[s>>2]|0;if(!g)g=0;else{j=0;while(1){k[l+(j<<2)>>2]=k[h+32>>2];j=j+1|0;if((j|0)==(g|0))break;else h=h+52|0}}s=(Qf(k[(k[x>>2]|0)+5608>>2]|0,n,l,g,k[(k[(k[a+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;cd(l);if(s){a=0;r=y;return a|0}}break}default:{j=k[h+32>>2]|0;l=k[h+84>>2]|0;g=k[h+136>>2]|0;if(!(k[(k[m+5584>>2]|0)+20>>2]|0)){Of(j,l,g,n);break a}else{Mf(j,l,g,n);break a}}}while(0);g=k[k[t>>2]>>2]|0;h=g+16|0;b:do if(k[h>>2]|0){j=0;l=k[(k[x>>2]|0)+5584>>2]|0;g=k[g+20>>2]|0;c:while(1){switch(k[l+20>>2]|0){case 1:{if(!(Pg(g)|0)){g=0;h=54;break c}break}case 0:{if(!(Tg(g)|0)){g=0;h=54;break c}break}default:{}}j=j+1|0;if(j>>>0>=(k[h>>2]|0)>>>0)break b;else{l=l+1080|0;g=g+52|0}}if((h|0)==54){r=y;return g|0}}while(0);g=k[x>>2]|0;h=eh(1)|0;if(!h){a=0;r=y;return a|0}do if((k[g+16>>2]|0)==1)if(!(k[(k[g+5584>>2]|0)+20>>2]|0)){j=Lf()|0;l=3;break}else{j=Kf()|0;l=3;break}else{j=k[g+5600>>2]|0;l=k[(k[a+24>>2]|0)+16>>2]|0}while(0);t=hh(h,k[k[t>>2]>>2]|0,g,j,l)|0;fh(h);if(!t){a=0;r=y;return a|0}g=k[u>>2]|0;k[w>>2]=0;if(!v)k[f+12>>2]=0;if(!(i[g+93>>0]&5)){if(k[(k[x>>2]|0)+8>>2]|0){g=0;do{cg(a,g,1);g=g+1|0}while(g>>>0<(k[(k[x>>2]|0)+8>>2]|0)>>>0)}}else if(!(eg(a,c,w,e,f)|0)){a=0;r=y;return a|0}}if(f)k[f+12>>2]=1;g=nh(k[a+24>>2]|0,k[a+28>>2]|0)|0;if(!g)g=1;else{a=lh(g,k[a+36>>2]|0,k[k[a+20>>2]>>2]|0,k[(k[a+32>>2]|0)+8>>2]|0,c,d,e,f,k[a+4>>2]|0,k[a>>2]|0,k[a+16>>2]|0,1)|0;oh(g);g=(a|0)==0}a=g&1^1;r=y;return a|0}function mg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+16|0;j=u+8|0;i=u;h=u+12|0;g=a+36|0;k[g>>2]=d;t=k[a+28>>2]|0;n=a+32|0;k[n>>2]=(k[t+76>>2]|0)+(d*5640|0);k[h>>2]=0;m=a+24|0;d=nh(k[m>>2]|0,t)|0;if(!d){t=0;r=u;return t|0}l=a+20|0;t=mh(d,k[g>>2]|0,k[k[l>>2]>>2]|0,b,h,c,e,f)|0;oh(d);if(!t){t=0;r=u;return t|0}d=k[k[l>>2]>>2]|0;a=k[(k[n>>2]|0)+5584>>2]|0;g=k[d+20>>2]|0;c=eh(0)|0;if(!c){t=0;r=u;return t|0}h=d+16|0;a:do if(k[h>>2]|0){e=0;d=g;while(1){if(!(gh(c,d,a)|0))break;e=e+1|0;if(e>>>0>=(k[h>>2]|0)>>>0)break a;else{a=a+1080|0;d=d+52|0}}fh(c);t=0;r=u;return t|0}while(0);fh(c);d=k[k[l>>2]>>2]|0;g=d+16|0;do if(k[g>>2]|0){h=0;e=k[(k[m>>2]|0)+24>>2]|0;c=k[(k[n>>2]|0)+5584>>2]|0;a=k[d+20>>2]|0;while(1){d=(k[e+36>>2]|0)+1|0;if((k[c+20>>2]|0)==1){if(!(Qg(a,d)|0)){d=0;a=49;break}}else if(!(Xg(a,d)|0)){d=0;a=49;break}h=h+1|0;if(h>>>0>=(k[g>>2]|0)>>>0){a=14;break}else{e=e+52|0;c=c+1080|0;a=a+52|0}}if((a|0)==14){d=k[k[l>>2]>>2]|0;break}else if((a|0)==49){r=u;return d|0}}while(0);h=k[n>>2]|0;a=k[d+20>>2]|0;g=k[h+16>>2]|0;do if(g){b=ha((k[a+12>>2]|0)-(k[a+4>>2]|0)|0,(k[a+8>>2]|0)-(k[a>>2]|0)|0)|0;c=d+16|0;d=k[c>>2]|0;if(d>>>0<=2){k[j>>2]=d;cc(f,1,19703,j)|0;break}if((ha((k[a+64>>2]|0)-(k[a+56>>2]|0)|0,(k[a+60>>2]|0)-(k[a+52>>2]|0)|0)|0)>=(b|0)?(ha((k[a+116>>2]|0)-(k[a+108>>2]|0)|0,(k[a+112>>2]|0)-(k[a+104>>2]|0)|0)|0)>=(b|0):0){if((g|0)!=2){d=k[a+32>>2]|0;if((k[(k[h+5584>>2]|0)+20>>2]|0)==1){Nf(d,k[a+84>>2]|0,k[a+136>>2]|0,b);break}else{Pf(d,k[a+84>>2]|0,k[a+136>>2]|0,b);break}}e=h+5604|0;if(!(k[e>>2]|0))break;h=Zc(d<<2)|0;if(!h){t=0;r=u;return t|0}d=k[c>>2]|0;if(!d)d=0;else{g=0;while(1){k[h+(g<<2)>>2]=k[a+32>>2];g=g+1|0;if((g|0)==(d|0))break;else a=a+52|0}}t=(Rf(k[e>>2]|0,b,h,d,k[(k[(k[m>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;cd(h);if(t)d=0;else break;r=u;return d|0}cc(f,1,19642,i)|0;t=0;r=u;return t|0}while(0);d=k[k[l>>2]>>2]|0;s=d+16|0;if(!(k[s>>2]|0)){t=1;r=u;return t|0}t=0;q=k[(k[m>>2]|0)+24>>2]|0;p=k[(k[n>>2]|0)+5584>>2]|0;n=k[d+20>>2]|0;while(1){m=k[n+24>>2]|0;f=k[q+36>>2]|0;g=k[m+(f*136|0)+8>>2]|0;h=k[m+(f*136|0)>>2]|0;l=g-h|0;e=k[m+(f*136|0)+12>>2]|0;f=k[m+(f*136|0)+4>>2]|0;m=(k[n+8>>2]|0)-(k[n>>2]|0)-l|0;d=k[q+24>>2]|0;if(!(k[q+32>>2]|0)){d=1<<d;j=0}else{j=1<<d+-1;d=j;j=0-j|0}i=d+-1|0;d=k[n+32>>2]|0;a=(e|0)==(f|0);if((k[p+20>>2]|0)==1){if(!a){c=(g|0)==(h|0);b=p+1076|0;h=e-f|0;e=0;while(1){if(!c){a=0;g=d;while(1){f=(k[b>>2]|0)+(k[g>>2]|0)|0;k[g>>2]=(f|0)<(j|0)?j:(f|0)>(i|0)?i:f;a=a+1|0;if((a|0)==(l|0))break;else g=g+4|0}d=d+(l<<2)|0}e=e+1|0;if((e|0)==(h|0))break;else d=d+(m<<2)|0}}}else if(!a){c=(g|0)==(h|0);b=p+1076|0;h=e-f|0;e=0;while(1){if(!c){a=0;g=d;while(1){f=Rh(+o[g>>2])|0;f=(k[b>>2]|0)+f|0;k[g>>2]=(f|0)<(j|0)?j:(f|0)>(i|0)?i:f;a=a+1|0;if((a|0)==(l|0))break;else g=g+4|0}d=d+(l<<2)|0}e=e+1|0;if((e|0)==(h|0))break;else d=d+(m<<2)|0}}t=t+1|0;if(t>>>0>=(k[s>>2]|0)>>>0){d=1;break}else{q=q+52|0;p=p+1080|0;n=n+52|0}}r=u;return d|0}function ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+24|0;m=k[q>>2]|0;e=k[m+16>>2]|0;l=(e|0)==0;if(l){q=1;return q|0}f=0;d=0;g=k[m+24>>2]|0;h=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){n=k[g+24>>2]|0;n=((n&7|0)!=0&1)+(n>>>3)|0;o=k[h+24>>2]|0;p=(k[h+20>>2]|0)+-1|0;d=(ha(ha((n|0)==3?4:n,(k[o+(p*136|0)+8>>2]|0)-(k[o+(p*136|0)>>2]|0)|0)|0,(k[o+(p*136|0)+12>>2]|0)-(k[o+(p*136|0)+4>>2]|0)|0)|0)+d|0;f=f+1|0;if((f|0)==(e|0))break;else{g=g+52|0;h=h+52|0}}d=d>>>0>c>>>0;if(d|l){q=d&1^1;return q|0}p=0;o=k[m+24>>2]|0;n=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){l=k[o+24>>2]|0;a=k[n+24>>2]|0;c=k[o+36>>2]|0;f=k[a+(c*136|0)+8>>2]|0;g=k[a+(c*136|0)>>2]|0;m=f-g|0;h=k[a+(c*136|0)+12>>2]|0;c=k[a+(c*136|0)+4>>2]|0;a=(k[n+8>>2]|0)-(k[n>>2]|0)-m|0;l=((l&7|0)!=0&1)+(l>>>3)|0;a:do switch(((l|0)==3?4:l)|0){case 1:{d=k[n+32>>2]|0;e=(h|0)==(c|0);if(!(k[o+32>>2]|0)){if(e)break a;l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+m|0;f=0;e=d;while(1){i[b>>0]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+1|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}else{if(e)break a;l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+m|0;f=0;e=d;while(1){i[b>>0]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+1|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}case 2:{d=k[n+32>>2]|0;e=(h|0)==(c|0);if(!(k[o+32>>2]|0)){if(!e){l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+(m<<1)|0;f=0;e=d;while(1){j[b>>1]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+2|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}}else if(!e){l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+(m<<1)|0;f=0;e=d;while(1){j[b>>1]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+2|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}case 4:{if((h|0)!=(c|0)){l=(f|0)==(g|0);h=h-c|0;c=0;d=k[n+32>>2]|0;while(1){if(!l){g=b+(m<<2)|0;f=0;e=d;while(1){k[b>>2]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+4|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(k[(k[q>>2]|0)+16>>2]|0)>>>0){b=1;break}else{o=o+52|0;n=n+52|0}}return b|0}function og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=k[a+24>>2]|0;e=k[c+16>>2]|0;if(!e){f=0;return f|0}f=0;b=0;d=k[c+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=k[d+24>>2]|0;a=((a&7|0)!=0&1)+(a>>>3)|0;b=(ha(ha((k[c+12>>2]|0)-(k[c+4>>2]|0)|0,(k[c+8>>2]|0)-(k[c>>2]|0)|0)|0,(a|0)==3?4:a)|0)+b|0;f=f+1|0;if(f>>>0>=e>>>0)break;else{d=d+52|0;c=c+52|0}}return b|0}function pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0;o=k[a+24>>2]|0;q=o+16|0;e=k[q>>2]|0;n=(e|0)==0;if(n)d=0;else{f=0;d=0;g=k[o+24>>2]|0;h=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){p=k[g+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;d=(ha(ha((k[h+12>>2]|0)-(k[h+4>>2]|0)|0,(k[h+8>>2]|0)-(k[h>>2]|0)|0)|0,(p|0)==3?4:p)|0)+d|0;f=f+1|0;if((f|0)==(e|0))break;else{g=g+52|0;h=h+52|0}}}d=(d|0)!=(c|0);if(d|n){q=d&1^1;return q|0}p=0;n=k[o+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=k[n+24>>2]|0;d=(k[c+8>>2]|0)-(k[c>>2]|0)|0;e=(k[c+12>>2]|0)-(k[c+4>>2]|0)|0;h=ha(e,d)|0;a=((a&7|0)!=0&1)+(a>>>3)|0;a:do switch(((a|0)==3?4:a)|0){case 1:{e=k[c+32>>2]|0;d=(h|0)==0;if(!(k[n+32>>2]|0)){if(d)break a;else{f=0;d=e;e=b}while(1){k[d>>2]=l[e>>0];f=f+1|0;if((f|0)==(h|0))break;else{d=d+4|0;e=e+1|0}}b=b+h|0;break a}else{if(d)break a;else{f=0;d=e;e=b}while(1){k[d>>2]=i[e>>0];f=f+1|0;if((f|0)==(h|0))break;else{d=d+4|0;e=e+1|0}}b=b+h|0;break a}}case 2:{g=k[c+32>>2]|0;f=(h|0)==0;if(!(k[n+32>>2]|0)){if(!f){f=b+(ha(e<<1,d)|0)|0;e=0;d=g;while(1){k[d>>2]=m[b>>1];e=e+1|0;if((e|0)==(h|0))break;else{d=d+4|0;b=b+2|0}}b=f}}else if(!f){f=b+(ha(e<<1,d)|0)|0;e=0;d=g;while(1){k[d>>2]=j[b>>1];e=e+1|0;if((e|0)==(h|0))break;else{d=d+4|0;b=b+2|0}}b=f}break}case 4:{if(h){f=b+(ha(e<<2,d)|0)|0;d=0;e=k[c+32>>2]|0;while(1){k[e>>2]=k[b>>2];d=d+1|0;if((d|0)==(h|0))break;else{e=e+4|0;b=b+4|0}}b=f}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(k[q>>2]|0)>>>0){b=1;break}else{n=n+52|0;c=c+52|0}}return b|0}function qg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+24|0;b=k[f>>2]|0;if(!b)return;e=k[a+28>>2]|0;d=(e>>>0)/52|0;if(e>>>0>51){e=0;while(1){a=k[b>>2]|0;if(a){cd(a+-1|0);k[b>>2]=0}a=b+4|0;c=k[a>>2]|0;if(c){cd(c);k[a>>2]=0}a=b+8|0;c=k[a>>2]|0;if(c){cd(c);k[a>>2]=0}e=e+1|0;if(e>>>0>=d>>>0)break;else b=b+52|0}b=k[f>>2]|0}cd(b);k[f>>2]=0;return}function rg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+24|0;b=k[f>>2]|0;if(!b)return;e=k[a+28>>2]|0;d=(e>>>0)/56|0;if(e>>>0>55){e=0;while(1){a=k[b>>2]|0;if(a){cd(a);k[b>>2]=0}c=b+4|0;a=k[c>>2]|0;if(a){cd(a);k[c>>2]=0}e=e+1|0;if(e>>>0>=d>>>0)break;else b=b+56|0}b=k[f>>2]|0}cd(b);k[f>>2]=0;return}function sg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0.0;Sa=r;r=r+80|0;La=Sa+64|0;Ka=Sa+56|0;Na=Sa+48|0;Pa=Sa+40|0;Oa=Sa+32|0;Qa=Sa+24|0;Ma=Sa+16|0;Ja=Sa+8|0;g=k[a+28>>2]|0;Ia=k[k[a+20>>2]>>2]|0;n=k[(k[g+76>>2]|0)+(b*5640|0)+5584>>2]|0;p=k[Ia+20>>2]|0;l=k[a+24>>2]|0;m=k[l+24>>2]|0;Fa=k[g+24>>2]|0;j=k[g+12>>2]|0;Ha=(ha(j,(b>>>0)%(Fa>>>0)|0)|0)+(k[g+4>>2]|0)|0;h=k[l>>2]|0;h=Ha>>>0>h>>>0?Ha:h;k[Ia>>2]=h;Ha=aj(j|0,0,Ha|0,0)|0;Ha=Ha|0-L;j=k[l+8>>2]|0;j=Ha>>>0<j>>>0?Ha:j;Ha=Ia+8|0;k[Ha>>2]=j;Ga=k[g+16>>2]|0;Fa=(ha(Ga,(b>>>0)/(Fa>>>0)|0)|0)+(k[g+8>>2]|0)|0;b=k[l+4>>2]|0;b=Fa>>>0>b>>>0?Fa:b;Ea=Ia+4|0;k[Ea>>2]=b;Fa=aj(Ga|0,0,Fa|0,0)|0;Fa=Fa|0-L;l=k[l+12>>2]|0;l=Fa>>>0<l>>>0?Fa:l;Fa=Ia+12|0;k[Fa>>2]=l;if(!(k[n+4>>2]|0)){cc(f,1,19777,Sa)|0;Ra=0;r=Sa;return Ra|0}Ga=Ia+16|0;if(!(k[Ga>>2]|0)){Ra=1;r=Sa;return Ra|0}Da=g+80|0;Ca=a+40|0;Ba=(c|0)==0;g=b;Aa=0;a:while(1){k[m+36>>2]=0;va=k[m>>2]|0;b=(h+-1+va|0)/(va|0)|0;k[p>>2]=b;wa=k[m+4>>2]|0;g=(g+-1+wa|0)/(wa|0)|0;za=p+4|0;k[za>>2]=g;va=(j+-1+va|0)/(va|0)|0;ya=p+8|0;k[ya>>2]=va;wa=(l+-1+wa|0)/(wa|0)|0;xa=p+12|0;k[xa>>2]=wa;b=va-b|0;g=wa-g|0;if((4294967295/(b>>>0)|0)>>>0<g>>>0){Ra=6;break}b=ha(g,b)|0;if(b>>>0>1073741823){Ra=8;break}j=b<<2;va=k[n+4>>2]|0;wa=p+16|0;k[wa>>2]=va;a=k[Da>>2]|0;k[p+20>>2]=va>>>0<a>>>0?1:va-a|0;a=p+40|0;k[a>>2]=j;do if(i[Ca>>0]&1){c=p+32|0;h=k[c>>2]|0;if(h){g=p+44|0;if(j>>>0<=(k[g>>2]|0)>>>0)break;b=p+36|0;if(k[b>>2]|0){ad(h);va=$c(k[a>>2]|0)|0;k[c>>2]=va;if(!va){Ra=16;break a}k[g>>2]=k[a>>2];k[b>>2]=1;break}}va=$c(j)|0;k[c>>2]=va;if(!va)break a;k[p+44>>2]=k[a>>2];k[p+36>>2]=1}while(0);c=(k[wa>>2]|0)*136|0;g=p+24|0;a=k[g>>2]|0;if(a){b=p+28|0;if(c>>>0>(k[b>>2]|0)>>>0){a=bd(a,c)|0;if(!a){Ra=24;break}k[g>>2]=a;va=k[b>>2]|0;_i(a+va|0,0,c-va|0)|0;k[b>>2]=c}}else{b=Zc(c)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break}k[p+28>>2]=c;_i(b|0,0,c|0)|0}b=k[wa>>2]|0;va=(k[n+20>>2]|0)==0?7:8;if(b){ra=n+8|0;sa=n+12|0;ta=m+24|0;ua=n+804|0;qa=k[g>>2]|0;g=n+28|0;a=0;while(1){oa=b;pa=b+-1|0;la=k[p>>2]|0;ma=$i(1,0,pa|0)|0;ma=aj(ma|0,L|0,-1,-1)|0;na=L;la=aj(ma|0,na|0,la|0,((la|0)<0)<<31>>31|0)|0;la=Zi(la|0,L|0,pa|0)|0;k[qa>>2]=la;c=k[za>>2]|0;c=aj(ma|0,na|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,pa|0)|0;k[qa+4>>2]=c;b=k[ya>>2]|0;b=aj(ma|0,na|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,pa|0)|0;k[qa+8>>2]=b;h=k[xa>>2]|0;h=aj(ma|0,na|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Zi(h|0,L|0,pa|0)|0;k[qa+12>>2]=h;q=k[n+812+(a<<2)>>2]|0;l=k[n+944+(a<<2)>>2]|0;s=la>>q<<q;t=c>>l<<l;j=$i(1,0,l|0)|0;j=aj(j|0,L|0,-1,-1)|0;j=aj(j|0,L|0,h|0,((h|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,l|0)|0;if((la|0)==(b|0))b=0;else{la=$i(1,0,q|0)|0;la=aj(la|0,L|0,-1,-1)|0;b=aj(la|0,L|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,q|0)|0;b=(b<<q)-s>>q}la=qa+16|0;k[la>>2]=b;ia=(c|0)==(h|0)?0:(j<<l)-t>>l;k[qa+20>>2]=ia;ia=ha(ia,b)|0;ja=ia*40|0;ka=(a|0)==0;if(ka)b=1;else{s=aj(s|0,((s|0)<0)<<31>>31|0,1,0)|0;s=bj(s|0,L|0,1)|0;t=aj(t|0,((t|0)<0)<<31>>31|0,1,0)|0;t=bj(t|0,L|0,1)|0;b=3;l=l+-1|0;q=q+-1|0}ga=qa+24|0;k[ga>>2]=b;S=k[ra>>2]|0;S=S>>>0<q>>>0?S:q;T=k[sa>>2]|0;T=T>>>0<l>>>0?T:l;U=(ia|0)!=0;V=(ia|0)==0;W=1<<q;X=1<<l;Y=$i(1,0,S|0)|0;Y=aj(Y|0,L|0,-1,-1)|0;Z=L;_=$i(1,0,T|0)|0;_=aj(_|0,L|0,-1,-1)|0;$=L;aa=1<<S;ba=1<<T;ca=$i(1,0,oa|0)|0;ca=aj(ca|0,L|0,-1,-1)|0;da=L;ea=0;fa=qa+28|0;R=g;while(1){if(ka){b=k[p>>2]|0;b=aj(ma|0,na|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,pa|0)|0;g=k[za>>2]|0;g=aj(ma|0,na|0,g|0,((g|0)<0)<<31>>31|0)|0;g=Zi(g|0,L|0,pa|0)|0;c=k[ya>>2]|0;c=aj(ma|0,na|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,pa|0)|0;j=k[xa>>2]|0;j=aj(ma|0,na|0,j|0,((j|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,pa|0)|0;h=0}else{h=ea+1|0;b=k[p>>2]|0;O=$i(h&1|0,0,pa|0)|0;O=Yi(ca|0,da|0,O|0,L|0)|0;j=L;b=aj(O|0,j|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,oa|0)|0;g=k[za>>2]|0;P=$i(h>>>1|0,0,pa|0)|0;P=Yi(ca|0,da|0,P|0,L|0)|0;Q=L;g=aj(P|0,Q|0,g|0,((g|0)<0)<<31>>31|0)|0;g=Zi(g|0,L|0,oa|0)|0;c=k[ya>>2]|0;c=aj(O|0,j|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,oa|0)|0;j=k[xa>>2]|0;j=aj(P|0,Q|0,j|0,((j|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,oa|0)|0}k[fa+16>>2]=h;k[fa>>2]=b;Q=fa+4|0;k[Q>>2]=g;P=fa+8|0;k[P>>2]=c;O=fa+12|0;k[O>>2]=j;g=eb[va&15](h)|0;Ta=+(k[R+4>>2]|0)*.00048828125+1.0;Ta=+Qh(1.0,(k[ta>>2]|0)+g-(k[R>>2]|0)|0)*Ta*d;o[fa+32>>2]=Ta;k[fa+28>>2]=(k[R>>2]|0)+-1+(k[ua>>2]|0);g=fa+20|0;c=k[g>>2]|0;if(!(U&(c|0)==0)){b=fa+24|0;if((k[b>>2]|0)>>>0<ja>>>0){c=bd(c,ja)|0;if(!c){Ra=41;break a}k[g>>2]=c;N=k[b>>2]|0;_i(c+N|0,0,ja-N|0)|0;k[b>>2]=ja}}else{b=Zc(ja)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break a}_i(b|0,0,ja|0)|0;k[fa+24>>2]=ja}if(!V){M=k[g>>2]|0;N=0;while(1){E=k[la>>2]|0;I=(((N>>>0)%(E>>>0)|0)<<q)+s|0;E=(((N>>>0)/(E>>>0)|0)<<l)+t|0;F=I+W|0;G=E+X|0;H=k[fa>>2]|0;H=(I|0)>(H|0)?I:H;k[M>>2]=H;I=k[Q>>2]|0;I=(E|0)>(I|0)?E:I;E=M+4|0;k[E>>2]=I;K=k[P>>2]|0;K=(F|0)<(K|0)?F:K;F=M+8|0;k[F>>2]=K;h=k[O>>2]|0;h=(G|0)<(h|0)?G:h;G=M+12|0;k[G>>2]=h;H=H>>S<<S;I=I>>T<<T;K=aj(Y|0,Z|0,K|0,((K|0)<0)<<31>>31|0)|0;K=Zi(K|0,L|0,S|0)|0;h=aj(_|0,$|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Zi(h|0,L|0,T|0)|0;K=(K<<S)-H>>S;J=M+16|0;k[J>>2]=K;h=(h<<T)-I>>T;u=M+20|0;k[u>>2]=h;K=ha(h,K)|0;h=ha(K,e)|0;g=M+24|0;c=k[g>>2]|0;do if((c|0)==0&(K|0)!=0){b=Zc(h)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break a}_i(b|0,0,h|0)|0;k[M+28>>2]=h}else{b=M+28|0;if(h>>>0<=(k[b>>2]|0)>>>0)break;c=bd(c,h)|0;if(!c){Ra=50;break a}k[g>>2]=c;D=k[b>>2]|0;_i(c+D|0,0,h-D|0)|0;k[b>>2]=h}while(0);j=M+32|0;b=k[j>>2]|0;c=k[J>>2]|0;h=k[u>>2]|0;if(!b)b=tg(c,h,f)|0;else b=vg(b,c,h,f)|0;k[j>>2]=b;if(!b)cc(f,2,19990,Ka)|0;j=M+36|0;c=k[j>>2]|0;h=k[J>>2]|0;b=k[u>>2]|0;if(!c)b=tg(h,b,f)|0;else b=vg(c,h,b,f)|0;k[j>>2]=b;if(!b)cc(f,2,20012,La)|0;if(K){D=0;do{A=k[J>>2]|0;z=(((D>>>0)%(A>>>0)|0)<<S)+H|0;A=(((D>>>0)/(A>>>0)|0)<<T)+I|0;B=z+aa|0;C=A+ba|0;do if(Ba){b=k[g>>2]|0;c=b+(D*56|0)|0;h=k[c>>2]|0;if(!h){y=Zc(8192)|0;k[c>>2]=y;if(!y){b=0;Ra=87;break a}k[b+(D*56|0)+32>>2]=8192;y=_c(10,32)|0;k[b+(D*56|0)+4>>2]=y;if(!y){b=0;Ra=87;break a}k[b+(D*56|0)+52>>2]=10}else{j=b+(D*56|0)+32|0;u=k[j>>2]|0;v=b+(D*56|0)+4|0;w=k[v>>2]|0;x=c;y=x+52|0;do{k[x>>2]=0;x=x+4|0}while((x|0)<(y|0));k[c>>2]=h;k[j>>2]=u;k[v>>2]=w}y=k[M>>2]|0;k[b+(D*56|0)+8>>2]=(z|0)>(y|0)?z:y;z=k[E>>2]|0;k[b+(D*56|0)+12>>2]=(A|0)>(z|0)?A:z;A=k[F>>2]|0;k[b+(D*56|0)+16>>2]=(B|0)<(A|0)?B:A;B=k[G>>2]|0;k[b+(D*56|0)+20>>2]=(C|0)<(B|0)?C:B}else{c=k[g>>2]|0;b=c+(D*52|0)+4|0;if((k[b>>2]|0)==0?(y=_c(100,24)|0,k[b>>2]=y,(y|0)==0):0){b=0;Ra=87;break a}b=c+(D*52|0)+8|0;if((k[b>>2]|0)==0?(y=_c(100,24)|0,k[b>>2]=y,(y|0)==0):0){b=0;Ra=87;break a}j=k[M>>2]|0;j=(z|0)>(j|0)?z:j;k[c+(D*52|0)+12>>2]=j;b=k[E>>2]|0;A=(A|0)>(b|0)?A:b;k[c+(D*52|0)+16>>2]=A;b=k[F>>2]|0;b=(B|0)<(b|0)?B:b;k[c+(D*52|0)+20>>2]=b;B=k[G>>2]|0;C=(C|0)<(B|0)?C:B;k[c+(D*52|0)+24>>2]=C;j=ha(C-A|0,b-j<<2)|0;b=c+(D*52|0)+36|0;if(j>>>0<=(k[b>>2]|0)>>>0)break;h=c+(D*52|0)|0;c=k[h>>2]|0;if(c)cd(c+-1|0);c=Zc(j|1)|0;k[h>>2]=c;if(!c){Ra=74;break a}k[b>>2]=j;i[c>>0]=0;k[h>>2]=(k[h>>2]|0)+1}while(0);D=D+1|0}while(D>>>0<K>>>0)}N=N+1|0;if(N>>>0>=ia>>>0)break;else M=M+40|0}}g=R+8|0;ea=ea+1|0;if(ea>>>0>=(k[ga>>2]|0)>>>0)break;else{fa=fa+36|0;R=g}}a=a+1|0;if(a>>>0<(k[wa>>2]|0)>>>0){b=pa;qa=qa+136|0}else break}}b=Aa+1|0;if(b>>>0>=(k[Ga>>2]|0)>>>0){b=1;Ra=87;break}h=k[Ia>>2]|0;g=k[Ea>>2]|0;j=k[Ha>>2]|0;l=k[Fa>>2]|0;Aa=b;m=m+52|0;n=n+1080|0;p=p+52|0}if((Ra|0)==6){cc(f,1,19816,Ja)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==8){cc(f,1,19816,Ma)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==16){k[g>>2]=0;k[a>>2]=0;k[b>>2]=0}else if((Ra|0)==24){cc(f,1,19849,Oa)|0;cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==41){cc(f,1,19889,Pa)|0;cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==50){cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;cc(f,1,19932,Na)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==74){k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==87){r=Sa;return b|0}cc(f,1,19816,Qa)|0;Ra=0;r=Sa;return Ra|0}function tg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+288|0;j=v+16|0;h=v+8|0;t=v+152|0;u=v+24|0;d=_c(1,20)|0;if(!d){cc(c,1,20034,v)|0;u=0;r=v;return u|0}k[d>>2]=a;l=d+4|0;k[l>>2]=b;k[t>>2]=a;k[u>>2]=b;i=d+8|0;k[i>>2]=0;e=0;g=0;while(1){s=ha(b,a)|0;a=(a+1|0)/2|0;f=g+1|0;k[t+(f<<2)>>2]=a;b=(b+1|0)/2|0;k[u+(f<<2)>>2]=b;e=e+s|0;if(s>>>0<=1)break;else g=f}k[i>>2]=e;if(!e){cd(d);cc(c,2,20072,h)|0;u=0;r=v;return u|0}e=_c(e,16)|0;k[d+12>>2]=e;if(!e){cc(c,1,20122,j)|0;cd(d);u=0;r=v;return u|0}s=k[i>>2]|0;k[d+16>>2]=s<<4;b=e+((ha(k[l>>2]|0,k[d>>2]|0)|0)<<4)|0;if(!g)b=e;else{q=0;f=b;a=b;b=e;do{o=k[u+(q<<2)>>2]|0;a:do if((o|0)>0){p=k[t+(q<<2)>>2]|0;if((p|0)<=0){i=o+-1|0;c=0;while(1){n=(c&1|0)!=0|(c|0)==(i|0);h=n?f:a;a=n?f:a+(p<<4)|0;c=c+1|0;if((c|0)>=(o|0)){f=h;break a}else f=h}}n=((p+2+((p|0)<2?~p:-3)|0)>>>1)+1|0;l=o+-1|0;m=0;do{c=p;j=f;while(1){k[b>>2]=j;h=b+16|0;i=c;c=c+-2|0;if((c|0)>-1){k[h>>2]=j;b=b+32|0}else b=h;if((i|0)<=2)break;else j=j+16|0}j=f+(n<<4)|0;c=(m&1|0)!=0|(m|0)==(l|0);f=c?j:a;a=c?j:a+(p<<4)|0;m=m+1|0}while((m|0)<(o|0))}while(0);q=q+1|0}while((q|0)!=(g|0))}k[b>>2]=0;if(!s){u=d;r=v;return u|0}else b=0;while(1){k[e+4>>2]=999;k[e+8>>2]=0;k[e+12>>2]=0;b=b+1|0;if((b|0)==(s|0))break;else e=e+16|0}r=v;return d|0}function ug(a){a=a|0;var b=0,c=0;if(!a)return;b=k[a+8>>2]|0;if(!b)return;c=0;a=k[a+12>>2]|0;while(1){k[a+4>>2]=999;k[a+8>>2]=0;k[a+12>>2]=0;c=c+1|0;if(c>>>0>=b>>>0)break;else a=a+16|0}return}
|
|
81
|
-
function lb(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function mb(){return r|0}function nb(a){a=a|0;r=a}function ob(a,b){a=a|0;b=b|0;r=a;s=b}function pb(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function qb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function rb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function sb(a){a=a|0;L=a}function tb(){return L|0}function ub(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,l=0,m=0,n=0;n=r;r=r+8272|0;i=n+16|0;l=n+12|0;h=n;k[l>>2]=0;if((k[a>>2]|0)==1375686655)m=qc(0)|0;else m=qc(2)|0;lc(m,1,0)|0;mc(m,2,0)|0;nc(m,3,0)|0;rc(i);k[h>>2]=a;k[h+4>>2]=a;k[h+8>>2]=b;j=oc(h,1)|0;if(!(sc(m,i)|0)){wi(4476)|0;Pb(j);Jc(m);f=1;r=n;return f|0}if(!(tc(j,m,l)|0)){wi(4528)|0;Pb(j);Jc(m);hc(k[l>>2]|0);f=1;r=n;return f|0}if(!(yc(m,j,k[l>>2]|0,k[i+8228>>2]|0)|0)){wi(4578)|0;Jc(m);Pb(j);hc(k[l>>2]|0);f=1;r=n;return f|0}h=k[l>>2]|0;k[e>>2]=k[h+8>>2];k[f>>2]=k[h+12>>2];a=k[h+16>>2]|0;k[g>>2]=a;a=ha(ha(a<<2,k[e>>2]|0)|0,k[f>>2]|0)|0;k[d>>2]=a;d=Pi(a)|0;k[c>>2]=d;switch(k[g>>2]|0){case 1:{cj(d|0,k[(k[h+24>>2]|0)+44>>2]|0,a|0)|0;break}case 3:{if((ha(k[f>>2]|0,k[e>>2]|0)|0)>0){b=k[h+24>>2]|0;h=k[b+44>>2]|0;a=k[b+96>>2]|0;b=k[b+148>>2]|0;i=0;do{g=i*3|0;k[d+(g<<2)>>2]=k[h+(i<<2)>>2];k[d+(g+1<<2)>>2]=k[a+(i<<2)>>2];k[d+(g+2<<2)>>2]=k[b+(i<<2)>>2];i=i+1|0}while((i|0)<(ha(k[f>>2]|0,k[e>>2]|0)|0))}break}default:{}}Pb(j);Jc(m);hc(k[l>>2]|0);f=0;r=n;return f|0}function vb(){return pc()|0}function wb(a,b){a=a|0;b=b|0;return}function xb(a,b){a=a|0;b=b|0;return}function yb(a,b){a=a|0;b=b|0;var c=0;b=r;r=r+16|0;c=b;k[c>>2]=a;vi(4625,c)|0;r=b;return}function zb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;k[e>>2]=b;if(!c){r=f;return}b=a;d=0;a=e+(c+-1)|0;while(1){i[b>>0]=i[a>>0]|0;d=d+1|0;if((d|0)==(c|0))break;else{b=b+1|0;a=a+-1|0}}r=f;return}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;k[b>>2]=0;if(!c)return;d=0;b=b+(c+-1)|0;while(1){i[b>>0]=i[a>>0]|0;d=d+1|0;if((d|0)==(c|0))break;else{a=a+1|0;b=b+-1|0}}return}function Bb(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;f=c;p[f>>3]=b;f=f+8|0;p[t>>3]=b;d=k[t>>2]|0;e=k[t+4>>2]|0;g=bj(d|0,e|0,56)|0;i[a>>0]=g;g=bj(d|0,e|0,48)|0;i[a+1>>0]=g;g=bj(d|0,e|0,40)|0;i[a+2>>0]=g;i[a+3>>0]=e;i[a+4>>0]=i[f+-5>>0]|0;i[a+5>>0]=i[f+-6>>0]|0;e=bj(d|0,e|0,8)|0;i[a+6>>0]=e;i[a+7>>0]=d;r=c;return}function Cb(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;i[c+-1>>0]=i[a>>0]|0;i[c+-2>>0]=i[a+1>>0]|0;i[c+-3>>0]=i[a+2>>0]|0;i[c+-4>>0]=i[a+3>>0]|0;i[c+-5>>0]=i[a+4>>0]|0;i[c+-6>>0]=i[a+5>>0]|0;i[c+-7>>0]=i[a+6>>0]|0;i[b>>0]=i[a+7>>0]|0;return}function Db(a,b){a=a|0;b=+b;var c=0;c=(o[t>>2]=b,k[t>>2]|0);i[a>>0]=c>>>24;i[a+1>>0]=c>>>16;i[a+2>>0]=c>>>8;i[a+3>>0]=c;return}function Eb(a,b){a=a|0;b=b|0;var c=0;c=b+4|0;i[c+-1>>0]=i[a>>0]|0;i[c+-2>>0]=i[a+1>>0]|0;i[c+-3>>0]=i[a+2>>0]|0;i[b>>0]=i[a+3>>0]|0;return}function Fb(a,b){a=a|0;b=b|0;var c=0,d=0;d=_c(1,72)|0;if(!d){b=0;return b|0}k[d+64>>2]=a;a=Zc(a)|0;k[d+32>>2]=a;if(!a){cd(d);b=0;return b|0}k[d+36>>2]=a;a=d+68|0;c=k[a>>2]|0;if(!b){k[a>>2]=c|1;k[d+40>>2]=31;k[d+44>>2]=32}else{k[a>>2]=c|2;k[d+40>>2]=29;k[d+44>>2]=30}k[d+16>>2]=4;k[d+20>>2]=5;k[d+24>>2]=6;k[d+28>>2]=7;b=d;return b|0}function Gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+16|0;l=m;e=a+48|0;f=k[e>>2]|0;if(f>>>0>=b>>>0){l=a+36|0;k[l>>2]=(k[l>>2]|0)+b;k[e>>2]=f-b;l=a+56|0;a=l;a=aj(k[a>>2]|0,k[a+4>>2]|0,b|0,c|0)|0;k[l>>2]=a;k[l+4>>2]=L;l=c;a=b;L=l;r=m;return a|0}j=a+68|0;if(k[j>>2]&4){l=a+36|0;k[l>>2]=(k[l>>2]|0)+f;k[e>>2]=0;a=a+56|0;l=a;l=aj(k[l>>2]|0,k[l+4>>2]|0,f|0,0)|0;k[a>>2]=l;k[a+4>>2]=L;a=(f|0)!=0;l=a?0:-1;a=a?f:-1;L=l;r=m;return a|0}if(!f){f=0;e=0}else{k[a+36>>2]=k[a+32>>2];b=Yi(b|0,c|0,f|0,0)|0;k[e>>2]=0;e=0;c=L}a:do if((c|0)>0|(c|0)==0&b>>>0>0){i=a+24|0;while(1){g=$a[k[i>>2]&63](b,c,k[a>>2]|0)|0;h=L;if((g|0)==-1&(h|0)==-1)break;b=Yi(b|0,c|0,g|0,h|0)|0;c=L;f=aj(g|0,h|0,f|0,e|0)|0;e=L;if(!((c|0)>0|(c|0)==0&b>>>0>0))break a}cc(d,4,4636,l)|0;k[j>>2]=k[j>>2]|4;a=a+56|0;l=a;l=aj(k[l>>2]|0,k[l+4>>2]|0,f|0,e|0)|0;k[a>>2]=l;k[a+4>>2]=L;a=(f|0)!=0|(e|0)!=0;l=a?e:-1;a=a?f:-1;L=l;r=m;return a|0}while(0);l=a+56|0;a=l;a=aj(k[a>>2]|0,k[a+4>>2]|0,f|0,e|0)|0;k[l>>2]=a;k[l+4>>2]=L;l=e;a=f;L=l;r=m;return a|0}function Hb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;k[a+36>>2]=k[a+32>>2];k[a+48>>2]=0;f=($a[k[a+28>>2]&63](b,c,k[a>>2]|0)|0)==0;d=a+68|0;e=k[d>>2]|0;if(f){k[d>>2]=e|4;f=0;return f|0}else{k[d>>2]=e&-5;f=a+56|0;k[f>>2]=b;k[f+4>>2]=c;f=1;return f|0}return 0}function Ib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;q=r;r=r+16|0;p=q+8|0;l=q;o=a+68|0;if(k[o>>2]&8){p=-1;a=-1;L=p;r=q;return a|0}i=a+32|0;e=k[i>>2]|0;n=a+36|0;k[n>>2]=e;j=a+48|0;f=k[j>>2]|0;do if(f){h=a+20|0;while(1){g=$a[k[h>>2]&63](e,f,k[a>>2]|0)|0;if((g|0)==-1)break;e=(k[n>>2]|0)+g|0;k[n>>2]=e;s=k[j>>2]|0;f=s-g|0;k[j>>2]=f;if((s|0)==(g|0)){m=6;break}}if((m|0)==6){e=k[i>>2]|0;break}k[o>>2]=k[o>>2]|8;cc(d,4,4662,l)|0;k[o>>2]=k[o>>2]|8;k[j>>2]=0;a=-1;s=-1;L=a;r=q;return s|0}while(0);k[n>>2]=e;a:do if((c|0)>0|(c|0)==0&b>>>0>0){i=a+24|0;f=0;e=0;while(1){g=$a[k[i>>2]&63](b,c,k[a>>2]|0)|0;h=L;if((g|0)==-1&(h|0)==-1)break;b=Yi(b|0,c|0,g|0,h|0)|0;c=L;f=aj(g|0,h|0,f|0,e|0)|0;e=L;if(!((c|0)>0|(c|0)==0&b>>>0>0))break a}cc(d,4,4688,p)|0;k[o>>2]=k[o>>2]|8;s=a+56|0;a=s;a=aj(k[a>>2]|0,k[a+4>>2]|0,f|0,e|0)|0;k[s>>2]=a;k[s+4>>2]=L;s=(f|0)!=0|(e|0)!=0;a=s?e:-1;s=s?f:-1;L=a;r=q;return s|0}else{f=0;e=0}while(0);a=a+56|0;s=a;s=aj(k[s>>2]|0,k[s+4>>2]|0,f|0,e|0)|0;k[a>>2]=s;k[a+4>>2]=L;a=e;s=f;L=a;r=q;return s|0}function Jb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;o=r;r=r+16|0;i=o;l=a+32|0;e=k[l>>2]|0;m=a+36|0;k[m>>2]=e;n=a+48|0;f=k[n>>2]|0;do if(!f)f=a;else{h=a+20|0;while(1){g=$a[k[h>>2]&63](e,f,k[a>>2]|0)|0;if((g|0)==-1)break;e=(k[m>>2]|0)+g|0;k[m>>2]=e;p=k[n>>2]|0;f=p-g|0;k[n>>2]=f;if((p|0)==(g|0)){j=6;break}}if((j|0)==6){f=a;e=k[l>>2]|0;break}p=a+68|0;k[p>>2]=k[p>>2]|8;cc(d,4,4662,i)|0;k[p>>2]=k[p>>2]|8;p=0;r=o;return p|0}while(0);k[m>>2]=e;k[n>>2]=0;if(!($a[k[a+28>>2]&63](b,c,k[f>>2]|0)|0)){p=a+68|0;k[p>>2]=k[p>>2]|8;p=0;r=o;return p|0}else{p=a+56|0;k[p>>2]=b;k[p+4>>2]=c;p=1;r=o;return p|0}return 0}function Kb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Lb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Mb(a,b,c){a=a|0;b=b|0;c=c|0;L=-1;return -1}function Nb(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Ob(a){a=a|0;var b=0,c=0,d=0;d=_c(1,72)|0;if(!d){a=0;return a|0}k[d+64>>2]=1048576;b=Zc(1048576)|0;k[d+32>>2]=b;if(!b){cd(d);a=0;return a|0}k[d+36>>2]=b;b=d+68|0;c=k[b>>2]|0;if(!a){k[b>>2]=c|1;k[d+40>>2]=31;k[d+44>>2]=32}else{k[b>>2]=c|2;k[d+40>>2]=29;k[d+44>>2]=30}k[d+16>>2]=4;k[d+20>>2]=5;k[d+24>>2]=6;k[d+28>>2]=7;a=d;return a|0}function Pb(a){a=a|0;var b=0;if(!a)return;b=k[a+4>>2]|0;if(b)bb[b&7](k[a>>2]|0);b=a+32|0;cd(k[b>>2]|0);k[b>>2]=0;cd(a);return}function Qb(a,b){a=a|0;b=b|0;if(!a)return;if(!(k[a+68>>2]&2))return;k[a+16>>2]=b;return}function Rb(a,b){a=a|0;b=b|0;if(!a)return;k[a+28>>2]=b;return}function Sb(a,b){a=a|0;b=b|0;if(!a)return;if(!(k[a+68>>2]&1))return;k[a+20>>2]=b;return}function Tb(a,b){a=a|0;b=b|0;if(!a)return;k[a+24>>2]=b;return}function Ub(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;k[a>>2]=b;k[a+4>>2]=c;return}function Vb(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;a=a+8|0;k[a>>2]=b;k[a+4>>2]=c;return}function Wb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;s=w+8|0;q=w;v=a+48|0;e=k[v>>2]|0;if(e>>>0>=c>>>0){u=a+36|0;cj(b|0,k[u>>2]|0,c|0)|0;k[u>>2]=(k[u>>2]|0)+c;k[v>>2]=(k[v>>2]|0)-c;v=a+56|0;u=v;u=aj(k[u>>2]|0,k[u+4>>2]|0,c|0,0)|0;k[v>>2]=u;k[v+4>>2]=L;v=c;r=w;return v|0}t=a+68|0;if(k[t>>2]&4){u=a+36|0;cj(b|0,k[u>>2]|0,e|0)|0;d=k[v>>2]|0;k[u>>2]=(k[u>>2]|0)+d;u=a+56|0;t=u;d=aj(k[t>>2]|0,k[t+4>>2]|0,d|0,0)|0;k[u>>2]=d;k[u+4>>2]=L;k[v>>2]=0;v=(e|0)!=0?e:-1;r=w;return v|0}if(!e){n=a+32|0;f=k[n>>2]|0;o=a+36|0;k[o>>2]=f;p=o;u=a+56|0;e=0}else{o=a+36|0;cj(b|0,k[o>>2]|0,e|0)|0;n=a+32|0;f=k[n>>2]|0;k[o>>2]=f;p=k[v>>2]|0;u=a+56|0;l=u;l=aj(k[l>>2]|0,k[l+4>>2]|0,p|0,0)|0;m=u;k[m>>2]=l;k[m+4>>2]=L;k[v>>2]=0;c=c-p|0;b=b+p|0;p=o}l=a+64|0;m=a+16|0;j=b;g=f;while(1){b=k[l>>2]|0;f=k[m>>2]|0;if(c>>>0<b>>>0){f=$a[f&63](g,b,k[a>>2]|0)|0;k[v>>2]=f;if((f|0)==-1){f=11;break}if(f>>>0>=c>>>0){b=j;f=14;break}cj(j|0,k[p>>2]|0,f|0)|0;g=k[n>>2]|0;k[o>>2]=g;b=k[v>>2]|0;h=u;h=aj(k[h>>2]|0,k[h+4>>2]|0,b|0,0)|0;i=L;e=f+e|0}else{b=$a[f&63](j,c,k[a>>2]|0)|0;k[v>>2]=b;if((b|0)==-1){f=16;break}e=b+e|0;if(b>>>0>=c>>>0){f=20;break}g=k[n>>2]|0;k[o>>2]=g;h=u;h=aj(k[h>>2]|0,k[h+4>>2]|0,b|0,0)|0;i=L}f=u;k[f>>2]=h;k[f+4>>2]=i;k[v>>2]=0;c=c-b|0;j=j+b|0}if((f|0)==11){cc(d,4,4636,q)|0;k[v>>2]=0;k[t>>2]=k[t>>2]|4;v=(e|0)!=0?e:-1;r=w;return v|0}else if((f|0)==14){cj(b|0,k[p>>2]|0,c|0)|0;k[p>>2]=(k[p>>2]|0)+c;k[v>>2]=(k[v>>2]|0)-c;d=u;d=aj(k[d>>2]|0,k[d+4>>2]|0,c|0,0)|0;v=u;k[v>>2]=d;k[v+4>>2]=L;v=e+c|0;r=w;return v|0}else if((f|0)==16){cc(d,4,4636,s)|0;k[v>>2]=0;k[t>>2]=k[t>>2]|4;v=(e|0)!=0?e:-1;r=w;return v|0}else if((f|0)==20){d=u;d=aj(k[d>>2]|0,k[d+4>>2]|0,b|0,0)|0;k[u>>2]=d;k[u+4>>2]=L;k[o>>2]=k[n>>2];k[v>>2]=0;v=e;r=w;return v|0}return 0}function Xb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;u=r;r=r+16|0;q=u;m=a+68|0;if(k[m>>2]&8){t=-1;r=u;return t|0}p=a+64|0;e=k[p>>2]|0;t=a+48|0;i=k[t>>2]|0;f=e-i|0;do if(f>>>0<c>>>0){n=a+32|0;g=a+36|0;o=a+20|0;h=a+56|0;j=e;l=f;e=0;a:while(1){if((j|0)==(i|0))f=k[n>>2]|0;else{cj(k[g>>2]|0,b|0,l|0)|0;f=k[n>>2]|0;k[g>>2]=f;i=(k[t>>2]|0)+l|0;k[t>>2]=i;v=h;v=aj(k[v>>2]|0,k[v+4>>2]|0,l|0,0)|0;j=h;k[j>>2]=v;k[j+4>>2]=L;c=c-l|0;b=b+l|0;e=l+e|0}k[g>>2]=f;if(!i)i=0;else{do{j=$a[k[o>>2]&63](f,i,k[a>>2]|0)|0;if((j|0)==-1)break a;f=(k[g>>2]|0)+j|0;k[g>>2]=f;v=k[t>>2]|0;i=v-j|0;k[t>>2]=i}while((v|0)!=(j|0));f=k[n>>2]|0}k[g>>2]=f;j=k[p>>2]|0;l=j-i|0;if(c>>>0<=l>>>0){s=5;break}}if((s|0)==5)break;k[m>>2]=k[m>>2]|8;cc(d,4,4662,q)|0;v=-1;r=u;return v|0}else{f=a+36|0;h=a+56|0;g=f;f=k[f>>2]|0;e=0}while(0);cj(f|0,b|0,c|0)|0;k[g>>2]=(k[g>>2]|0)+c;k[t>>2]=(k[t>>2]|0)+c;t=h;t=aj(k[t>>2]|0,k[t+4>>2]|0,c|0,0)|0;v=h;k[v>>2]=t;k[v+4>>2]=L;v=e+c|0;r=u;return v|0}function Yb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;m=r;r=r+16|0;i=m;f=a+32|0;c=k[f>>2]|0;l=a+36|0;k[l>>2]=c;g=a+48|0;d=k[g>>2]|0;do if(d){h=a+20|0;while(1){e=$a[k[h>>2]&63](c,d,k[a>>2]|0)|0;if((e|0)==-1)break;c=(k[l>>2]|0)+e|0;k[l>>2]=c;n=k[g>>2]|0;d=n-e|0;k[g>>2]=d;if((n|0)==(e|0)){j=6;break}}if((j|0)==6){c=k[f>>2]|0;break}n=a+68|0;k[n>>2]=k[n>>2]|8;cc(b,4,4662,i)|0;n=0;r=m;return n|0}while(0);k[l>>2]=c;n=1;r=m;return n|0}function Zb(a){a=a|0;a=a+56|0;L=k[a+4>>2]|0;return k[a>>2]|0}function _b(a){a=a|0;var b=0,c=0;c=a+8|0;b=k[c>>2]|0;c=k[c+4>>2]|0;if((b|0)==0&(c|0)==0){c=0;a=0;L=c;return a|0}a=a+56|0;a=Yi(b|0,c|0,k[a>>2]|0,k[a+4>>2]|0)|0;c=L;L=c;return a|0}function $b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=hb[k[a+40>>2]&63](a,b,c,d)|0;return a|0}function ac(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return hb[k[a+44>>2]&63](a,b,c,d)|0}function bc(a){a=a|0;return (k[a+28>>2]|0)!=7|0}function cc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+528|0;f=h;g=h+16|0;a:do if(a){switch(b|0){case 1:{b=a;e=a+12|0;break}case 2:{b=a+4|0;e=a+16|0;break}case 4:{b=a+8|0;e=a+20|0;break}default:{b=0;break a}}a=k[b>>2]|0;b=k[e>>2]|0;if(b)if(!c)b=1;else{_i(g|0,0,512)|0;k[f>>2]=d;zi(g,512,c,f)|0;cb[b&7](g,a);b=1}else b=0}else b=0;while(0);r=h;return b|0}function dc(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=4;k[a+20>>2]=4;k[a+16>>2]=4;return}function ec(a,b){a=a|0;b=b|0;return}function fc(){return _c(1,36)|0}function gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=_c(1,36)|0;if(!d){h=d;return h|0}k[d+20>>2]=c;g=d+16|0;k[g>>2]=a;c=_c(1,a*52|0)|0;h=d+24|0;k[h>>2]=c;if(!c){c=k[d+28>>2]|0;if(c)cd(c);cd(d);h=0;return h|0}if(!a){h=d;return h|0}e=0;while(1){k[c+(e*52|0)>>2]=k[b+(e*36|0)>>2];k[c+(e*52|0)+4>>2]=k[b+(e*36|0)+4>>2];i=k[b+(e*36|0)+8>>2]|0;k[c+(e*52|0)+8>>2]=i;j=k[b+(e*36|0)+12>>2]|0;k[c+(e*52|0)+12>>2]=j;k[c+(e*52|0)+16>>2]=k[b+(e*36|0)+16>>2];k[c+(e*52|0)+20>>2]=k[b+(e*36|0)+20>>2];k[c+(e*52|0)+24>>2]=k[b+(e*36|0)+24>>2];k[c+(e*52|0)+28>>2]=k[b+(e*36|0)+28>>2];k[c+(e*52|0)+32>>2]=k[b+(e*36|0)+32>>2];i=_c(ha(j,i)|0,4)|0;k[c+(e*52|0)+44>>2]=i;e=e+1|0;if(!i)break;if(e>>>0>=a>>>0){f=22;break}c=k[h>>2]|0}if((f|0)==22)return d|0;c=k[h>>2]|0;if(c){e=k[g>>2]|0;if(e){b=0;while(1){c=k[c+(b*52|0)+44>>2]|0;if(c){cd(c);e=k[g>>2]|0}b=b+1|0;if(b>>>0>=e>>>0)break;c=k[h>>2]|0}c=k[h>>2]|0}cd(c)}c=k[d+28>>2]|0;if(c)cd(c);cd(d);j=0;return j|0}function hc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(!a)return;e=a+24|0;b=k[e>>2]|0;if(b){f=a+16|0;c=k[f>>2]|0;if(c){d=0;while(1){b=k[b+(d*52|0)+44>>2]|0;if(b){cd(b);c=k[f>>2]|0}d=d+1|0;if(d>>>0>=c>>>0)break;b=k[e>>2]|0}b=k[e>>2]|0}cd(b)}b=k[a+28>>2]|0;if(b)cd(b);cd(a);return}function ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;c=k[b+4>>2]|0;d=k[a>>2]|0;f=k[b+8>>2]|0;g=k[a+4>>2]|0;e=k[b+12>>2]|0;l=(ha((k[b+24>>2]|0)+-1|0,e)|0)+c|0;h=k[b+16>>2]|0;i=(ha((k[b+28>>2]|0)+-1|0,h)|0)+f|0;b=aj(l|0,0,e|0,0)|0;b=b|0-L;e=k[a+8>>2]|0;h=aj(i|0,0,h|0,0)|0;h=h|0-L;i=k[a+12>>2]|0;l=k[a+16>>2]|0;if(!l)return;j=(c>>>0>d>>>0?c:d)+-1|0;f=(f>>>0>g>>>0?f:g)+-1|0;e=(b>>>0<e>>>0?b:e)+-1|0;c=(h>>>0<i>>>0?h:i)+-1|0;d=0;b=k[a+24>>2]|0;while(1){g=k[b>>2]|0;i=((j+g|0)>>>0)/(g>>>0)|0;o=k[b+4>>2]|0;a=((f+o|0)>>>0)/(o>>>0)|0;h=k[b+40>>2]|0;n=$i(1,0,h|0)|0;m=L;g=aj((((e+g|0)>>>0)/(g>>>0)|0)-i|0,0,-1,-1)|0;g=aj(g|0,L|0,n|0,m|0)|0;g=bj(g|0,L|0,h|0)|0;o=aj((((c+o|0)>>>0)/(o>>>0)|0)-a|0,0,-1,-1)|0;m=aj(o|0,L|0,n|0,m|0)|0;h=bj(m|0,L|0,h|0)|0;k[b+8>>2]=g;k[b+12>>2]=h;k[b+16>>2]=i;k[b+20>>2]=a;d=d+1|0;if(d>>>0>=l>>>0)break;else b=b+52|0}return}function jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;k[b>>2]=k[a>>2];k[b+4>>2]=k[a+4>>2];k[b+8>>2]=k[a+8>>2];k[b+12>>2]=k[a+12>>2];i=b+24|0;d=k[i>>2]|0;h=b+16|0;if(!d)c=i;else{c=k[h>>2]|0;if(!c)c=i;else{e=0;while(1){d=k[d+(e*52|0)+44>>2]|0;if(d){cd(d);c=k[h>>2]|0}e=e+1|0;if(e>>>0>=c>>>0)break;d=k[i>>2]|0}c=i;d=k[i>>2]|0}cd(d);k[i>>2]=0}d=k[a+16>>2]|0;k[h>>2]=d;d=Zc(d*52|0)|0;k[c>>2]=d;if(!d){k[i>>2]=0;k[h>>2]=0;return}if(k[h>>2]|0){g=a+24|0;f=0;do{c=d+(f*52|0)|0;d=(k[g>>2]|0)+(f*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));d=k[i>>2]|0;k[d+(f*52|0)+44>>2]=0;f=f+1|0}while(f>>>0<(k[h>>2]|0)>>>0)}k[b+20>>2]=k[a+20>>2];e=a+32|0;c=k[e>>2]|0;f=b+32|0;k[f>>2]=c;if(!c){k[b+28>>2]=0;return}d=Zc(c)|0;c=b+28|0;k[c>>2]=d;if(!d){k[c>>2]=0;k[f>>2]=0;return}else{cj(d|0,k[a+28>>2]|0,k[e>>2]|0)|0;return}}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=_c(1,36)|0;if(!d){a=d;return a|0}k[d+20>>2]=c;k[d+16>>2]=a;c=_c(a,52)|0;k[d+24>>2]=c;if(!c){c=k[d+28>>2]|0;if(c)cd(c);cd(d);a=0;return a|0}else{if(!a){a=d;return a|0}else e=0;do{k[c+(e*52|0)>>2]=k[b+(e*36|0)>>2];k[c+(e*52|0)+4>>2]=k[b+(e*36|0)+4>>2];k[c+(e*52|0)+8>>2]=k[b+(e*36|0)+8>>2];k[c+(e*52|0)+12>>2]=k[b+(e*36|0)+12>>2];k[c+(e*52|0)+16>>2]=k[b+(e*36|0)+16>>2];k[c+(e*52|0)+20>>2]=k[b+(e*36|0)+20>>2];k[c+(e*52|0)+24>>2]=k[b+(e*36|0)+24>>2];k[c+(e*52|0)+32>>2]=k[b+(e*36|0)+32>>2];k[c+(e*52|0)+44>>2]=0;e=e+1|0}while((e|0)!=(a|0));return d|0}return 0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+64>>2]=b;k[a+52>>2]=c;c=1;return c|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+60>>2]=b;k[a+48>>2]=c;c=1;return c|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+56>>2]=b;k[a+44>>2]=c;c=1;return c|0}function oc(a,b){a=a|0;b=b|0;var c=0;if(!a){a=0;return a|0}c=Ob(b)|0;if(!c){a=0;return a|0}Ub(c,a,0);Vb(c,k[a+8>>2]|0,0);if(!b)Sb(c,9);else Qb(c,8);Tb(c,1);Rb(c,10);a=c;return a|0}function pc(){return 4703}function qc(a){a=a|0;var b=0;b=_c(1,84)|0;if(!b){a=0;return a|0}k[b+68>>2]=1;switch(a|0){case 0:{k[b+72>>2]=13;k[b+76>>2]=2;k[b+80>>2]=3;k[b+4>>2]=33;k[b+16>>2]=11;k[b>>2]=34;k[b+20>>2]=1;k[b+24>>2]=5;k[b+8>>2]=1;k[b+12>>2]=1;k[b+28>>2]=1;k[b+32>>2]=1;k[b+36>>2]=12;a=pd()|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}case 2:{k[b+72>>2]=14;k[b+76>>2]=4;k[b+80>>2]=5;k[b+4>>2]=35;k[b+16>>2]=13;k[b>>2]=36;k[b+8>>2]=2;k[b+12>>2]=2;k[b+20>>2]=2;k[b+24>>2]=6;k[b+28>>2]=2;k[b+32>>2]=2;k[b+36>>2]=14;a=gf(1)|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}default:{cd(b);a=0;return a|0}}dc(b+44|0);a=b;return a|0}function rc(a){a=a|0;if(!a)return;_i(a|0,0,8248)|0;k[a+8200>>2]=-1;k[a+8204>>2]=-1;k[a+8248>>2]=0;return}function sc(a,b){a=a|0;b=b|0;var c=0;c=r;r=r+16|0;if(!((a|0)!=0&(b|0)!=0)){b=0;r=c;return b|0}if(!(k[a+68>>2]|0)){cc(a+44|0,1,4709,c)|0;b=0;r=c;return b|0}else{cb[k[a+24>>2]&7](k[a+40>>2]|0,b);b=1;r=c;return b|0}return 0}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=r;r=r+16|0;if(!((a|0)!=0&(b|0)!=0)){a=0;r=d;return a|0}if(!(k[b+68>>2]|0)){cc(b+44|0,1,4790,d)|0;a=0;r=d;return a|0}else{a=hb[k[b>>2]&63](a,k[b+40>>2]|0,c,b+44|0)|0;r=d;return a|0}return 0}function uc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=hb[k[a+4>>2]&63](k[a+40>>2]|0,b,c,a+44|0)|0;return b|0}function vc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(!a){d=0;return d|0}if(!(k[a+68>>2]|0)){d=0;return d|0}d=_a[k[a+28>>2]&3](k[a+40>>2]|0,b,c,d,e,f,a+44|0)|0;return d|0}function wc(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;if(!((c|0)!=0&((a|0)!=0&(b|0)!=0&(d|0)!=0))){h=0;return h|0}if(!(k[a+68>>2]|0)){h=0;return h|0}h=gb[k[a+8>>2]&3](k[a+40>>2]|0,c,d,e,f,g,h,i,j,b,a+44|0)|0;return h|0}function xc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!((a|0)!=0&(c|0)!=0&(e|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=db[k[a+12>>2]&7](k[a+40>>2]|0,b,c,d,e,a+44|0)|0;return b|0}function yc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!((a|0)!=0&(b|0)!=0)){d=0;return d|0}if(!(k[a+68>>2]|0)){d=0;return d|0}d=jb[k[a+32>>2]&3](k[a+40>>2]|0,b,c,a+44|0,d)|0;return d|0}function zc(a,b){a=a|0;b=b|0;if(!a){b=0;return b|0}b=$a[k[a+36>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Ac(a){a=a|0;var b=0;b=_c(1,84)|0;if(!b){a=0;return a|0}k[b+68>>2]=0;switch(a|0){case 0:{k[b+4>>2]=15;k[b+12>>2]=16;k[b>>2]=37;k[b+8>>2]=3;k[b+16>>2]=1;k[b+20>>2]=38;a=fd()|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}case 2:{k[b+4>>2]=17;k[b+12>>2]=18;k[b>>2]=39;k[b+8>>2]=4;k[b+16>>2]=2;k[b+20>>2]=40;a=gf(0)|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}default:{cd(b);a=0;return a|0}}dc(b+44|0);a=b;return a|0}function Bc(a){a=a|0;if(!a)return;_i(a|0,0,18708)|0;k[a+5592>>2]=6;k[a+18684>>2]=0;k[a+5596>>2]=64;k[a+5600>>2]=64;k[a+44>>2]=0;k[a+5612>>2]=-1;k[a+18188>>2]=1;k[a+18192>>2]=1;i[a+18688>>0]=0;k[a+18196>>2]=-1;k[a+18200>>2]=-1;o[a+4792>>2]=0.0;k[a+4788>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+28>>2]=0;k[a+18692>>2]=0;return}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=hb[k[a+20>>2]&63](k[a+40>>2]|0,b,c,a+44|0)|0;return b|0}function Dc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(c|0)!=0)){c=0;return c|0}if(k[a+68>>2]|0){c=0;return c|0}c=hb[k[a>>2]&63](k[a+40>>2]|0,c,b,a+44|0)|0;return c|0}function Ec(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=$a[k[a+4>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Fc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=$a[k[a+12>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Gc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=$a[k[a+16>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Hc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=d<<2;e=ha(g,d)|0;f=a+18704|0;d=m[f>>1]|0;j[f>>1]=(d&32768|0)==0?-32512:(d|256)&65535;k[a+5608>>2]=1;i[a+18690>>0]=2;f=Zc(e+g|0)|0;d=a+18696|0;k[d>>2]=f;if(!f){c=0;return c|0}cj(f|0,b|0,e|0)|0;cj((k[d>>2]|0)+e|0,c|0,g|0)|0;c=1;return c|0}function Ic(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!((c|0)!=0&((a|0)!=0&(e|0)!=0))){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=db[k[a+8>>2]&7](k[a+40>>2]|0,b,c,d,e,a+44|0)|0;return b|0}function Jc(a){a=a|0;var b=0,c=0;if(!a)return;b=a+40|0;c=k[b>>2]|0;if(!(k[a+68>>2]|0))bb[k[a+16>>2]&7](c);else bb[k[a+20>>2]&7](c);k[b>>2]=0;cd(a);return}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;fb[k[a+72>>2]&15](k[a+40>>2]|0,b,c);return}function Lc(a){a=a|0;if(!a){a=0;return a|0}a=eb[k[a+76>>2]&15](k[a+40>>2]|0)|0;return a|0}function Mc(a){a=a|0;var b=0,c=0;if(!a)return;b=k[a>>2]|0;c=k[b+48>>2]|0;if(c){cd(c);b=k[a>>2]|0}cd(b);k[a>>2]=0;return}function Nc(a){a=a|0;if(!a){a=0;return a|0}a=eb[k[a+80>>2]&15](k[a+40>>2]|0)|0;return a|0}function Oc(a){a=a|0;var b=0;b=k[a>>2]|0;if(!b)return;ld(b);k[a>>2]=0;return}function Pc(a,b){a=a|0;b=b|0;return Qc(a,1048576,b)|0}function Qc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!a){b=0;return b|0}d=ii(a,(c|0)==0?4869:4872)|0;if(!d){b=0;return b|0}a=Fb(b,c)|0;if(!a){gi(d)|0;b=0;return b|0}else{Ub(a,d,6);pi(d,0,2)|0;b=si(d)|0;pi(d,0,0)|0;Vb(a,b,((b|0)<0)<<31>>31);Qb(a,19);Sb(a,20);Tb(a,21);Rb(a,22);b=a;return b|0}return 0}function Rc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=(k[c>>2]|0)+(k[c+8>>2]|0)|0;c=c+4|0;d=k[c>>2]|0;e=f-d|0;if((f|0)==(d|0)){f=-1;return f|0}f=e>>>0>b>>>0?b:e;cj(a|0,d|0,f|0)|0;k[c>>2]=(k[c>>2]|0)+f;return f|0}function Sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=c+4|0;d=k[j>>2]|0;h=c+8|0;f=k[h>>2]|0;i=d-(k[c>>2]|0)|0;e=(f|0)==0?1:f;while(1)if((e-i|0)>>>0<b>>>0)e=e<<1;else{g=e;break}if((g|0)!=(f|0)){d=Zc(g)|0;if(!d){b=-1;return b|0}e=k[c>>2]|0;if(e){cj(d|0,e|0,i|0)|0;cd(k[c>>2]|0)}k[c>>2]=d;d=d+i|0;k[j>>2]=d;k[h>>2]=g}cj(d|0,a|0,b|0)|0;k[j>>2]=(k[j>>2]|0)+b;return b|0}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=(k[b>>2]|0)+(k[b+8>>2]|0)|0;b=b+4|0;c=k[b>>2]|0;d=e-c|0;if((e|0)==(c|0)){e=-1;return e|0}k[b>>2]=c+a;e=d>>>0>a>>>0?a:d;return e|0}function Uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[c+8>>2]|0;k[c+4>>2]=(k[c>>2]|0)+(0>(b|0)|0==(b|0)&d>>>0>a>>>0?a:d);return 1}function Vc(a,b,c){a=a|0;b=b|0;c=c|0;b=mi(a,1,b,c)|0;return ((b|0)!=0?b:-1)|0}function Wc(a,b,c){a=a|0;b=b|0;c=c|0;return ui(a,1,b,c)|0}function Xc(a,b,c){a=a|0;b=b|0;c=c|0;c=(pi(c,a,1)|0)==0;L=c?b:-1;return (c?a:-1)|0}function Yc(a,b,c){a=a|0;b=b|0;c=c|0;return (pi(c,a,0)|0)==0|0}function Zc(a){a=a|0;if(!a)a=0;else a=Pi(a)|0;return a|0}function _c(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Ri(a,b)|0;return a|0}function $c(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;do if(a)if(!(Ti(b,16,a)|0)){b=k[b>>2]|0;break}else{k[b>>2]=0;b=0;break}else b=0;while(0);r=c;return b|0}function ad(a){a=a|0;Qi(a);return}function bd(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Si(a,b)|0;return b|0}function cd(a){a=a|0;Qi(a);return}function dd(a){a=a|0;var b=0,c=0;b=696;while(1){c=k[b>>2]|0;if((c|0)==-1|(c|0)==(a|0))break;else b=b+12|0}return b+4|0}function ed(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0))return;k[a+172>>2]=k[b+4>>2];k[a+168>>2]=k[b>>2];return}function fd(){var a=0,b=0;a=_c(1,208)|0;if(!a){a=0;return a|0}k[a>>2]=0;b=a+184|0;i[b>>0]=i[b>>0]&-3;b=Zc(1e3)|0;k[a+44>>2]=b;if(!b){gd(a);b=0;return b|0}k[a+48>>2]=1e3;b=Ag()|0;k[a+192>>2]=b;if(!b){gd(a);b=0;return b|0}b=Ag()|0;k[a+188>>2]=b;if(b){b=a;return b|0}gd(a);b=0;return b|0}function gd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;if(!a)return;if(!(k[a>>2]|0)){b=a+36|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+24|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+28>>2]=0}b=a+44|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+48>>2]=0}}else{b=a+12|0;c=k[b>>2]|0;if(c){Cd(c);cd(k[b>>2]|0);k[b>>2]=0}b=a+16|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+20>>2]=0}}gg(k[a+204>>2]|0);b=a+88|0;f=a+164|0;c=k[f>>2]|0;if(c){d=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;if(d){e=0;while(1){Cd(c);e=e+1|0;if((e|0)==(d|0))break;else c=c+5640|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=a+124|0;c=k[f>>2]|0;if(c){g=a+120|0;d=k[g>>2]|0;if(d){e=0;while(1){c=k[c+(e<<3)>>2]|0;if(c){cd(c);d=k[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;c=k[f>>2]|0}c=k[f>>2]|0}k[g>>2]=0;cd(c);k[f>>2]=0}g=a+144|0;cd(k[g>>2]|0);k[g>>2]=0;k[a+128>>2]=0;g=a+108|0;cd(k[g>>2]|0);k[g>>2]=0;if(!(i[a+184>>0]&2)){g=a+176|0;cd(k[g>>2]|0);k[g>>2]=0}c=b+100|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=a+188|0;Bg(k[g>>2]|0);k[g>>2]=0;Bg(k[a+192>>2]|0);k[g>>2]=0;g=a+196|0;ld(k[g>>2]|0);k[g>>2]=0;g=a+80|0;hc(k[g>>2]|0);k[g>>2]=0;g=a+84|0;hc(k[g>>2]|0);k[g>>2]=0;cd(a);return}function hd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,q=0.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,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0.0;ka=r;r=r+320|0;ea=ka+296|0;da=ka+288|0;ja=ka+280|0;ia=ka+272|0;ga=ka+264|0;fa=ka+256|0;ca=ka+248|0;ba=ka+240|0;W=ka+232|0;T=ka+224|0;S=ka+216|0;R=ka+208|0;Q=ka+200|0;P=ka+192|0;O=ka+184|0;v=ka+176|0;u=ka+168|0;t=ka+160|0;s=ka+152|0;n=ka+144|0;I=ka+136|0;H=ka+128|0;M=ka+112|0;G=ka+104|0;F=ka+96|0;E=ka+88|0;C=ka+80|0;B=ka+72|0;A=ka+64|0;z=ka+56|0;y=ka+48|0;x=ka+32|0;w=ka+24|0;m=ka+16|0;g=ka+8|0;f=ka;K=ka+309|0;L=ka+300|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){d=0;r=ka;return d|0}aa=b+5592|0;e=k[aa>>2]|0;if((e+-1|0)>>>0>32){k[f>>2]=e;k[f+4>>2]=33;cc(d,1,4875,f)|0;d=0;r=ka;return d|0}_=a+112|0;k[_>>2]=1;$=a+116|0;k[$>>2]=1;J=b+18704|0;do if(!(j[J>>1]|0)){switch(k[b+18676>>2]|0){case 1:{j[J>>1]=3;k[b+18700>>2]=1302083;k[b+18680>>2]=1041666;f=1;break}case 2:{j[J>>1]=3;k[b+18700>>2]=651041;k[b+18680>>2]=520833;f=1;break}case 3:{j[J>>1]=4;k[b+18700>>2]=1302083;k[b+18680>>2]=1041666;f=1;break}default:f=0}e=k[b+18684>>2]|0;a:do if((e|0)>=4)if((e|0)<33024){switch(e|0){case 4:break;default:{Z=13;break a}}j[J>>1]=4;break}else{switch(e|0){case 33024:break;default:{Z=13;break a}}j[J>>1]=-32512;break}else{switch(e|0){case 3:break;default:{Z=13;break a}}j[J>>1]=3}while(0);if((Z|0)==13?(f|0)==0:0)break;cc(d,2,4931,g)|0}while(0);D=b+18700|0;e=k[D>>2]|0;do if((e|0)<1){q=+o[b+4792+((k[b+4788>>2]|0)+-1<<2)>>2];if(q>0.0){X=k[c+24>>2]|0;m=ha(k[X+8>>2]|0,k[c+16>>2]|0)|0;m=ha(m,k[X+12>>2]|0)|0;la=+((ha(m,k[X+24>>2]|0)|0)>>>0);X=~~+V(+(la/(q*8.0*+((k[X>>2]|0)>>>0)*+((k[X+4>>2]|0)>>>0))));k[D>>2]=X;break}else{k[D>>2]=0;break}}else{l=k[c+24>>2]|0;X=ha(k[l+8>>2]|0,k[c+16>>2]|0)|0;X=ha(X,k[l+12>>2]|0)|0;q=+((ha(X,k[l+24>>2]|0)|0)>>>0);e=ha(e<<3,k[l>>2]|0)|0;q=q/+((ha(e,k[l+4>>2]|0)|0)>>>0);l=b+4788|0;e=k[l>>2]|0;if(e){g=e;e=0;h=0;while(1){f=b+4792+(h<<2)|0;if(+o[f>>2]<q){o[f>>2]=q;f=k[l>>2]|0;e=1}else f=g;h=h+1|0;if(h>>>0>=f>>>0)break;else g=f}if(e)cc(d,2,5068,m)|0}}while(0);e=j[J>>1]|0;b:do if((e+-3&65535)>=4){if(e<<16>>16==7){cc(d,2,7228,n)|0;j[J>>1]=0;e=0;break}if((e+-256&65535)<524){cc(d,2,7283,s)|0;j[J>>1]=0;e=0;break}if((e+-1024&65535)<1180){cc(d,2,7331,t)|0;j[J>>1]=0;e=0;break}if(e<<16>>16<=-1)switch(e<<16>>16){case -32512:{e=-32512;break b}case -32768:{cc(d,2,7373,u)|0;j[J>>1]=0;e=0;break b}default:{cc(d,2,7461,v)|0;j[J>>1]=0;e=0;break b}}}else{if((e+-5&65535)<2){cc(d,2,5160,w)|0;j[J>>1]=0;e=0;break}k[b>>2]=0;k[b+12>>2]=1;k[b+16>>2]=1;i[b+18689>>0]=67;i[b+18688>>0]=1;k[b+4>>2]=0;k[b+8>>2]=0;k[b+18180>>2]=0;k[b+18184>>2]=0;k[b+5596>>2]=32;k[b+5600>>2]=32;k[b+5604>>2]=0;k[b+5612>>2]=-1;k[b+18188>>2]=1;k[b+18192>>2]=1;k[b+5608>>2]=1;f=b+4788|0;g=k[f>>2]|0;if((g|0)>1){la=+o[b+4792+(g+-1<<2)>>2];k[x>>2]=g;p[x+8>>3]=la;cc(d,2,5222,x)|0;k[b+4792>>2]=k[b+4792+((k[f>>2]|0)+-1<<2)>>2];k[f>>2]=1;e=j[J>>1]|0}c:do switch(e&65535|0){case 3:{e=k[aa>>2]|0;if((e|0)>6){k[y>>2]=e+1;cc(d,2,5395,y)|0;k[aa>>2]=6;e=6}break}case 4:{e=k[aa>>2]|0;if((e|0)<2){k[z>>2]=e+1;cc(d,2,5541,z)|0;k[aa>>2]=1;e=1;break c}if((e|0)>7){k[A>>2]=e+1;cc(d,2,5695,A)|0;k[aa>>2]=7;e=7}break}default:e=k[aa>>2]|0}while(0);f=b+40|0;k[f>>2]=k[f>>2]|1;f=b+5620|0;k[f>>2]=e+-1;if((e|0)>1){e=0;do{k[b+5624+(e<<2)>>2]=256;k[b+5756+(e<<2)>>2]=256;e=e+1|0}while((e|0)<(k[f>>2]|0))}k[b+44>>2]=4;if((j[J>>1]|0)==4){e=k[aa>>2]|0;k[b+96>>2]=1;k[b+48>>2]=0;k[b+52>>2]=0;k[b+56>>2]=1;X=e+-1|0;k[b+60>>2]=X;k[b+64>>2]=3;k[b+80>>2]=4;k[b+244>>2]=1;k[b+196>>2]=X;k[b+200>>2]=0;k[b+204>>2]=1;k[b+208>>2]=e;k[b+212>>2]=3;k[b+228>>2]=4;e=2}else e=0;k[b+4784>>2]=e;k[b+20>>2]=1;e=k[D>>2]|0;if((e|0)>=1){if((e|0)>1302083){cc(d,2,5998,C)|0;k[D>>2]=1302083}}else{k[D>>2]=1302083;cc(d,2,5849,B)|0}e=b+18680|0;f=k[e>>2]|0;if((f|0)>=1){if((f|0)>1041666){cc(d,2,6320,F)|0;k[e>>2]=1041666}}else{k[e>>2]=1041666;cc(d,2,6171,E)|0}f=k[c+16>>2]|0;h=k[c+24>>2]|0;l=k[h+8>>2]|0;e=ha(l,f)|0;m=k[h+12>>2]|0;e=ha(e,m)|0;la=+((ha(e,k[h+24>>2]|0)|0)>>>0);e=ha(k[D>>2]<<3,k[h>>2]|0)|0;la=la/+((ha(e,k[h+4>>2]|0)|0)>>>0);o[b+4792>>2]=la;e=j[J>>1]|0;d:do if((f|0)==3){f=h+28|0;g=h+32|0;if(!((k[f>>2]|0)!=12|k[g>>2])){f=h+80|0;g=h+84|0;if(!((k[f>>2]|0)!=12|k[g>>2])){f=h+132|0;g=h+136|0;if(!((k[f>>2]|0)!=12|k[g>>2])){switch(e&65535|0){case 3:{if(m>>>0>1080|l>>>0>2048){k[H>>2]=l;k[H+4>>2]=m;cc(d,2,6892,H)|0;break d}break}case 4:{if(m>>>0>2160|l>>>0>4096){k[I>>2]=l;k[I+4>>2]=m;cc(d,2,7063,I)|0;break d}break}default:{}}break b}else{m=f;e=g;f=2}}else{m=f;e=g;f=1}}else{m=f;e=g;f=0};i[K>>0]=i[6659]|0;i[K+1>>0]=i[6660]|0;i[K+2>>0]=i[6661]|0;i[K+3>>0]=i[6662]|0;i[K+4>>0]=i[6663]|0;i[K+5>>0]=i[6664]|0;i[K+6>>0]=i[6665]|0;g=L;h=6666;l=g+9|0;do{i[g>>0]=i[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(l|0));X=(k[e>>2]|0)!=0?K:L;L=k[m>>2]|0;k[M>>2]=f;k[M+4>>2]=L;k[M+8>>2]=X;cc(d,2,6675,M)|0}else{k[G>>2]=f;cc(d,2,6493,G)|0}while(0);j[J>>1]=0;e=0}while(0);k[a+168>>2]=k[b+18680>>2];X=a+88|0;j[X>>1]=e;M=a+181|0;K=i[M>>0]&-2|k[b+20>>2]&1;i[M>>0]=K;L=b+24|0;K=(k[L>>2]&255)<<1&2|K&-3;i[M>>0]=K;i[M>>0]=K&-5|(k[b+28>>2]&255)<<2&4;do if((k[L>>2]|0)!=0?(N=b+32|0,(k[N>>2]|0)!=0):0){e=ha((k[b+4788>>2]|0)*12|0,k[aa>>2]|0)|0;f=Zc(e)|0;k[a+176>>2]=f;if(f){cj(f|0,k[N>>2]|0,e|0)|0;break}cc(d,1,7520,O)|0;d=0;r=ka;return d|0}while(0);h=a+100|0;k[h>>2]=k[b+12>>2];l=a+104|0;k[l>>2]=k[b+16>>2];g=a+92|0;k[g>>2]=k[b+4>>2];m=a+96|0;k[m>>2]=k[b+8>>2];f=b+36|0;e=k[f>>2]|0;do if(!e){e=pc()|0;f=Zc((Gi(e)|0)+29|0)|0;k[a+108>>2]=f;if(f){k[R>>2]=7697;k[R+4>>2]=e;xi(f,7692,R)|0;break}cc(d,1,7646,Q)|0;d=0;r=ka;return d|0}else{e=Zc((Gi(e)|0)+1|0)|0;k[a+108>>2]=e;if(e){Fi(e,k[f>>2]|0)|0;break}cc(d,1,7592,P)|0;d=0;r=ka;return d|0}while(0);e=(k[c+8>>2]|0)-(k[g>>2]|0)|0;f=k[c+12>>2]|0;if(!(k[b>>2]|0)){k[h>>2]=e;k[l>>2]=f-(k[m>>2]|0)}else{R=k[h>>2]|0;k[_>>2]=(e+-1+R|0)/(R|0)|0;R=k[l>>2]|0;k[$>>2]=(f+-1-(k[m>>2]|0)+R|0)/(R|0)|0}if(i[b+18688>>0]|0){i[a+180>>0]=i[b+18689>>0]|0;i[M>>0]=i[M>>0]|8}R=_c(ha(k[$>>2]|0,k[_>>2]|0)|0,5640)|0;L=a+164|0;k[L>>2]=R;if(!R){cc(d,1,7726,S)|0;d=0;r=ka;return d|0}K=b+4784|0;A=k[K>>2]|0;do if(A){w=b+48|0;B=k[aa>>2]|0;C=k[c+16>>2]|0;D=k[b+4788>>2]|0;E=ha(C,B)|0;F=_c(ha(E,D)|0,4)|0;if(!F){cc(d,1,7780,T)|0;break}g=k[w>>2]|0;s=b+60|0;e=k[s>>2]|0;if(g>>>0<e>>>0){n=ha(g,C)|0;t=b+52|0;u=b+64|0;v=b+56|0;f=k[u>>2]|0;while(1){h=k[t>>2]|0;if(h>>>0<f>>>0){e=k[v>>2]|0;m=h;l=h+n|0;while(1){if(!e)e=0;else{f=l;h=0;while(1){k[F+(f<<2)>>2]=1;h=h+1|0;e=k[v>>2]|0;if(h>>>0>=e>>>0)break;else f=f+E|0}f=k[u>>2]|0}m=m+1|0;if(m>>>0>=f>>>0)break;else l=l+1|0}e=k[s>>2]|0}g=g+1|0;if(g>>>0>=e>>>0)break;else n=n+C|0}}if(A>>>0>1){z=1;do{e=w;w=w+148|0;v=k[e+8>>2]|0;u=e+156|0;h=k[u>>2]|0;v=h>>>0>v>>>0?v:0;l=k[w>>2]|0;x=e+160|0;f=k[x>>2]|0;if(l>>>0<f>>>0){n=ha(l,C)|0;y=e+152|0;s=e+164|0;t=ha(v,E)|0;g=k[s>>2]|0;e=h;while(1){h=k[y>>2]|0;if(h>>>0<g>>>0){m=h;h=h+n|0;while(1){if(v>>>0<e>>>0){f=h+t|0;g=v;while(1){k[F+(f<<2)>>2]=1;g=g+1|0;e=k[u>>2]|0;if(g>>>0>=e>>>0)break;else f=f+E|0}g=k[s>>2]|0}m=m+1|0;if(m>>>0>=g>>>0)break;else h=h+1|0}f=k[x>>2]|0}l=l+1|0;if(l>>>0>=f>>>0)break;else n=n+C|0}}z=z+1|0}while((z|0)!=(A|0))}if((D|0)!=0?(U=(C|0)==0,(B|0)!=0):0){f=0;n=0;e=0;do{if(!U){m=f;l=0;while(1){g=0;h=m;while(1){e=(k[F+(h<<2)>>2]|0)!=1|e;g=g+1|0;if((g|0)==(C|0))break;else h=h+1|0}l=l+1|0;if((l|0)==(B|0))break;else m=m+C|0}f=E+f|0}n=n+1|0}while((n|0)!=(D|0));if(e)cc(d,1,7828,W)|0}cd(F)}while(0);e:do if(ha(k[$>>2]|0,k[_>>2]|0)|0){w=b+4788|0;x=b+40|0;y=b+44|0;z=b+18690|0;A=c+16|0;f=b+18696|0;B=c+24|0;C=b+5596|0;D=b+5600|0;E=b+5604|0;F=b+5608|0;G=b+5612|0;H=b+5616|0;I=b+5620|0;J=0;f:while(1){n=k[L>>2]|0;s=n+(J*5640|0)|0;W=k[w>>2]|0;e=n+(J*5640|0)+8|0;k[e>>2]=W;if(W){g=((j[X>>1]|0)+-3&65535)<4;l=0;do{h=(i[M>>0]&4)==0;do if(!g)if(h){k[n+(J*5640|0)+20+(l<<2)>>2]=k[b+4792+(l<<2)>>2];break}else{k[n+(J*5640|0)+5184+(l<<2)>>2]=k[b+5192+(l<<2)>>2];break}else{if(!h)k[n+(J*5640|0)+5184+(l<<2)>>2]=k[b+5192+(l<<2)>>2];k[n+(J*5640|0)+20+(l<<2)>>2]=k[b+4792+(l<<2)>>2]}while(0);l=l+1|0}while(l>>>0<(k[e>>2]|0)>>>0)}k[s>>2]=k[x>>2];k[n+(J*5640|0)+4>>2]=k[y>>2];m=n+(J*5640|0)+16|0;k[m>>2]=i[z>>0];e=n+(J*5640|0)+5636|0;g=i[e>>0]|0;i[e>>0]=g&-5;if(!(k[K>>2]|0))k[n+(J*5640|0)+420>>2]=0;else{i[e>>0]=g|4;g=k[K>>2]|0;if(!g)e=0;else{h=J+1|0;l=0;e=0;do{if((h|0)==(k[b+48+(l*148|0)+48>>2]|0)){k[n+(J*5640|0)+424+(e*148|0)>>2]=k[b+48+(e*148|0)>>2];k[n+(J*5640|0)+424+(e*148|0)+4>>2]=k[b+48+(e*148|0)+4>>2];k[n+(J*5640|0)+424+(e*148|0)+8>>2]=k[b+48+(e*148|0)+8>>2];k[n+(J*5640|0)+424+(e*148|0)+12>>2]=k[b+48+(e*148|0)+12>>2];k[n+(J*5640|0)+424+(e*148|0)+16>>2]=k[b+48+(e*148|0)+16>>2];k[n+(J*5640|0)+424+(e*148|0)+32>>2]=k[b+48+(e*148|0)+32>>2];k[n+(J*5640|0)+424+(e*148|0)+48>>2]=k[b+48+(e*148|0)+48>>2];e=e+1|0}l=l+1|0}while(l>>>0<g>>>0)}k[n+(J*5640|0)+420>>2]=e+-1}W=_c(k[A>>2]|0,1080)|0;v=n+(J*5640|0)+5584|0;k[v>>2]=W;if(!W){Z=149;break}do if(!(k[f>>2]|0)){g:do if((k[m>>2]|0)==1){e=k[A>>2]|0;if(e>>>0<=2){h=e;break}g=k[B>>2]|0;e=k[g>>2]|0;do if((e|0)==(k[g+52>>2]|0)){if((e|0)!=(k[g+104>>2]|0))break;e=k[g+4>>2]|0;if((e|0)!=(k[g+56>>2]|0))break;if((e|0)==(k[g+108>>2]|0)){Z=175;break g}}while(0);cc(d,2,8224,ea)|0;k[m>>2]=0;Z=175}else Z=175;while(0);if((Z|0)==175){Z=0;h=k[A>>2]|0}if(!h)break;e=k[B>>2]|0;g=0;do{if(!(k[e+(g*52|0)+32>>2]|0))k[(k[v>>2]|0)+(g*1080|0)+1076>>2]=1<<(k[e+(g*52|0)+24>>2]|0)+-1;g=g+1|0}while(g>>>0<h>>>0);Y=h;Z=166}else{h=k[A>>2]|0;h=ha(h<<2,h)|0;e=Zc(h)|0;l=(k[f>>2]|0)+h|0;if(!e){Z=152;break f}k[m>>2]=2;g=Zc(h)|0;k[n+(J*5640|0)+5608>>2]=g;if(!g){Z=154;break f}cj(g|0,k[f>>2]|0,h|0)|0;cj(e|0,k[f>>2]|0,h|0)|0;g=Zc(h)|0;h=n+(J*5640|0)+5604|0;k[h>>2]=g;if(!g){Z=156;break f}if(!(dh(e,g,k[A>>2]|0)|0)){Z=158;break f}g=Zc(k[A>>2]<<3)|0;k[n+(J*5640|0)+5600>>2]=g;if(!g){Z=160;break f}Sf(g,k[A>>2]|0,k[h>>2]|0);cd(e);e=k[A>>2]|0;if(e){g=k[v>>2]|0;h=0;do{k[g+(h*1080|0)+1076>>2]=k[l+(h<<2)>>2];h=h+1|0}while(h>>>0<e>>>0)}if(!(id(s,c)|0)){Z=167;break f}Y=k[A>>2]|0;Z=166}while(0);if((Z|0)==166?(Z=0,(Y|0)!=0):0){u=0;do{s=k[v>>2]|0;t=s+(u*1080|0)|0;k[t>>2]=k[x>>2]&1;h=k[aa>>2]|0;l=s+(u*1080|0)+4|0;k[l>>2]=h;e=k[C>>2]|0;if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+8>>2]=e;e=k[D>>2]|0;if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+12>>2]=e;k[s+(u*1080|0)+16>>2]=k[E>>2];W=k[F>>2]|0;k[s+(u*1080|0)+20>>2]=(W|0)==0&1;k[s+(u*1080|0)+24>>2]=(W|0)!=0?2:0;k[s+(u*1080|0)+804>>2]=2;if((u|0)==(k[G>>2]|0))e=k[H>>2]|0;else e=0;k[s+(u*1080|0)+808>>2]=e;do if(!(k[x>>2]&1)){if(!h)break;else e=0;do{k[s+(u*1080|0)+812+(e<<2)>>2]=15;k[s+(u*1080|0)+944+(e<<2)>>2]=15;e=e+1|0}while(e>>>0<(k[l>>2]|0)>>>0)}else{if((h|0)>0){l=h;n=0}else break;while(1){m=l;l=l+-1|0;e=k[I>>2]|0;do if((n|0)<(e|0)){e=k[b+5624+(n<<2)>>2]|0;if((e|0)<1)k[s+(u*1080|0)+812+(l<<2)>>2]=1;else{if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+812+(l<<2)>>2]=e}e=k[b+5756+(n<<2)>>2]|0;if((e|0)<1){k[s+(u*1080|0)+944+(l<<2)>>2]=1;break}if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+944+(l<<2)>>2]=e}else{W=e+-1|0;g=n-W|0;e=k[b+5624+(W<<2)>>2]>>g;g=k[b+5756+(W<<2)>>2]>>g;if((e|0)<1)k[s+(u*1080|0)+812+(l<<2)>>2]=1;else{if((e|0)>1){h=0;do{e=e>>1;h=h+1|0}while((e|0)>1);e=h}else e=0;k[s+(u*1080|0)+812+(l<<2)>>2]=e}if((g|0)<1){k[s+(u*1080|0)+944+(l<<2)>>2]=1;break}if((g|0)>1){e=0;do{g=g>>1;e=e+1|0}while((g|0)>1)}else e=0;k[s+(u*1080|0)+944+(l<<2)>>2]=e}while(0);if((m|0)<=1)break;else n=n+1|0}}while(0);Wg(t,k[(k[B>>2]|0)+(u*52|0)+24>>2]|0);u=u+1|0}while(u>>>0<(k[A>>2]|0)>>>0)}J=J+1|0;if(J>>>0>=(ha(k[$>>2]|0,k[_>>2]|0)|0)>>>0)break e}if((Z|0)==149){cc(d,1,7867,ba)|0;d=0;r=ka;return d|0}else if((Z|0)==152){cc(d,1,7931,ca)|0;d=0;r=ka;return d|0}else if((Z|0)==154){cd(e);cc(d,1,7974,fa)|0;d=0;r=ka;return d|0}else if((Z|0)==156){cd(e);cc(d,1,8032,ga)|0;d=0;r=ka;return d|0}else if((Z|0)==158){cd(e);cc(d,1,8092,ia)|0;d=0;r=ka;return d|0}else if((Z|0)==160){cd(e);cc(d,1,8140,ja)|0;d=0;r=ka;return d|0}else if((Z|0)==167){cc(d,1,8190,da)|0;d=0;r=ka;return d|0}}else f=b+18696|0;while(0);e=k[f>>2]|0;if(!e){d=1;r=ka;return d|0}cd(e);k[f>>2]=0;d=1;r=ka;return d|0}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,p=0,q=0,r=0;if((k[a+16>>2]|0)!=2){a=1;return a|0}l=a+5604|0;r=a+5616|0;c=k[r>>2]|0;m=a+5620|0;do if(k[l>>2]|0){do if((c|0)==(k[m>>2]|0)){c=c+10|0;k[m>>2]=c;d=a+5612|0;c=bd(k[d>>2]|0,c*20|0)|0;if(c){k[d>>2]=c;q=k[r>>2]|0;_i(c+(q*20|0)|0,0,((k[m>>2]|0)-q|0)*20|0)|0;c=k[r>>2]|0;break}cd(k[d>>2]|0);k[d>>2]=0;k[m>>2]=0;k[r>>2]=0;a=0;return a|0}else d=a+5612|0;while(0);h=k[d>>2]|0;f=h+(c*20|0)|0;j=h+(c*20|0)+12|0;d=k[j>>2]|0;if(d){cd(d);k[j>>2]=0}k[h+(c*20|0)+8>>2]=1;k[h+(c*20|0)+4>>2]=1;k[f>>2]=2;d=k[b+16>>2]|0;d=ha(d,d)|0;e=d<<2;g=Zc(e)|0;k[j>>2]=g;if(!g){a=0;return a|0}else{fb[k[768+(k[f>>2]<<2)>>2]&15](k[l>>2]|0,g,d);k[h+(c*20|0)+16>>2]=e;c=(k[r>>2]|0)+1|0;k[r>>2]=c;g=2;break}}else{g=1;f=0}while(0);do if((c|0)==(k[m>>2]|0)){d=c+10|0;k[m>>2]=d;c=a+5612|0;d=bd(k[c>>2]|0,d*20|0)|0;if(!d){cd(k[c>>2]|0);k[c>>2]=0;k[m>>2]=0;k[r>>2]=0;a=0;return a|0}else{k[c>>2]=d;e=k[r>>2]|0;_i(d+(e*20|0)|0,0,((k[m>>2]|0)-e|0)*20|0)|0;if(!f){f=0;break}f=d+((e+-1|0)*20|0)|0;break}}else c=a+5612|0;while(0);l=k[c>>2]|0;m=k[r>>2]|0;q=l+(m*20|0)|0;n=l+(m*20|0)+12|0;c=k[n>>2]|0;if(c){cd(c);k[n>>2]=0}p=g+1|0;k[l+(m*20|0)+8>>2]=g;k[l+(m*20|0)+4>>2]=2;k[q>>2]=2;b=b+16|0;c=k[b>>2]|0;d=c<<2;j=Zc(d)|0;k[n>>2]=j;if(!j){a=0;return a|0}e=Zc(d)|0;if(!e){cd(k[n>>2]|0);k[n>>2]=0;a=0;return a|0}if(c){g=0;h=e;j=k[a+5584>>2]|0;while(1){o[h>>2]=+(k[j+1076>>2]|0);g=g+1|0;if((g|0)==(c|0))break;else{h=h+4|0;j=j+1080|0}}}fb[k[768+(k[q>>2]<<2)>>2]&15](e,k[n>>2]|0,c);cd(e);k[l+(m*20|0)+16>>2]=d;k[r>>2]=(k[r>>2]|0)+1;g=a+5628|0;c=k[g>>2]|0;e=a+5632|0;do if((c|0)==(k[e>>2]|0)){c=c+10|0;k[e>>2]=c;d=a+5624|0;c=bd(k[d>>2]|0,c*20|0)|0;if(c){k[d>>2]=c;a=k[g>>2]|0;_i(c+(a*20|0)|0,0,((k[e>>2]|0)-a|0)*20|0)|0;c=k[g>>2]|0;break}cd(k[d>>2]|0);k[d>>2]=0;k[e>>2]=0;k[g>>2]=0;a=0;return a|0}else d=a+5624|0;while(0);a=k[d>>2]|0;k[a+(c*20|0)+8>>2]=f;r=a+(c*20|0)+16|0;i[r>>0]=i[r>>0]|1;k[a+(c*20|0)+4>>2]=k[b>>2];k[a+(c*20|0)>>2]=p;k[a+(c*20|0)+12>>2]=q;k[g>>2]=(k[g>>2]|0)+1;a=1;return a|0}function jd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function kd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=fc()|0;j=b+80|0;k[j>>2]=i;if(!i){j=0;return j|0}e=b+192|0;if((Cg(k[e>>2]|0,23,d)|0)!=0?(Cg(k[e>>2]|0,24,d)|0)!=0:0){g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}}else Fg(g);e=b+188|0;if((Cg(k[e>>2]|0,25,d)|0)!=0?(Cg(k[e>>2]|0,26,d)|0)!=0:0){g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}}else Fg(g);e=fc()|0;k[c>>2]=e;if(!e){j=0;return j|0}jc(k[j>>2]|0,e);e=ha(k[b+116>>2]|0,k[b+112>>2]|0)|0;h=b+196|0;k[(k[h>>2]|0)+36>>2]=e;e=_c(e,40)|0;f=k[h>>2]|0;k[f+40>>2]=e;if(!e){j=0;return j|0}if(!(k[f+36>>2]|0)){j=1;return j|0}g=0;while(1){k[e+(g*40|0)+28>>2]=100;k[e+(g*40|0)+20>>2]=0;j=_c(100,24)|0;f=k[h>>2]|0;e=k[f+40>>2]|0;k[e+(g*40|0)+24>>2]=j;g=g+1|0;if(!j){e=0;f=30;break}if(g>>>0>=(k[f+36>>2]|0)>>>0){e=1;f=30;break}}if((f|0)==30)return e|0}hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}function ld(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;if(!a)return;b=a+28|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}g=a+40|0;b=k[g>>2]|0;if(b){f=a+36|0;if(k[f>>2]|0){c=b;e=0;do{d=k[c+(e*40|0)+36>>2]|0;if(d){cd(d);b=k[g>>2]|0;k[b+(e*40|0)+36>>2]=0;c=b}d=k[c+(e*40|0)+16>>2]|0;if(d){cd(d);b=k[g>>2]|0;k[b+(e*40|0)+16>>2]=0;c=b}d=k[c+(e*40|0)+24>>2]|0;if(d){cd(d);c=k[g>>2]|0;k[c+(e*40|0)+24>>2]=0;b=c}e=e+1|0}while(e>>>0<(k[f>>2]|0)>>>0)}cd(b);k[g>>2]=0}cd(a);return}function md(a,b,c,d,e,f,g,h,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,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;Da=r;r=r+256|0;Ca=Da+200|0;Ba=Da+192|0;za=Da+184|0;ya=Da+176|0;pa=Da+168|0;oa=Da+160|0;na=Da+152|0;ma=Da+144|0;la=Da+136|0;ka=Da+128|0;ia=Da+120|0;ga=Da+112|0;wa=Da+104|0;ua=Da+96|0;fa=Da+88|0;ea=Da+80|0;da=Da+72|0;va=Da+64|0;ca=Da+56|0;ba=Da+48|0;sa=Da+40|0;ra=Da+32|0;qa=Da+24|0;ja=Da+16|0;aa=Da+8|0;$=Da;V=Da+240|0;T=Da+236|0;X=Da+232|0;Z=Da+228|0;_=Da+224|0;U=Da+220|0;Y=Da+216|0;S=Da+212|0;W=Da+208|0;k[S>>2]=65424;Aa=a+8|0;a:do switch(k[Aa>>2]|0){case 256:{k[S>>2]=65497;o=a+76|0;xa=117;break}case 8:{ta=a+76|0;if(!(i[ta>>0]&1)){O=a+200|0;P=a+164|0;Q=a+72|0;R=a+24|0;B=a+196|0;C=a+112|0;D=a+116|0;F=V+2|0;G=V+6|0;H=V+7|0;I=a+16|0;J=a+20|0;K=a+64|0;o=65424;b:while(1){c:do if((o|0)!=65427){while(1){A=_b(m)|0;if((A|0)==0&(L|0)==0){xa=7;break}if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=9;break b}Ab(k[I>>2]|0,W,2);if((k[W>>2]|0)>>>0<2){xa=11;break b}if((k[S>>2]|0)==32896?(A=_b(m)|0,(A|0)==0&(L|0)==0):0){xa=14;break}s=k[Aa>>2]|0;o=k[W>>2]|0;if(s&16)k[R>>2]=-2-o+(k[R>>2]|0);p=o+-2|0;k[W>>2]=p;o=k[S>>2]|0;q=784;while(1){A=k[q>>2]|0;if((A|0)==0|(A|0)==(o|0)){y=q;break}else q=q+12|0}if(!(k[q+4>>2]&s)){xa=20;break b}if(p>>>0>(k[J>>2]|0)>>>0){A=_b(m)|0;z=L;if(0>(z|0)|0==(z|0)&p>>>0>A>>>0){xa=24;break b}o=bd(k[I>>2]|0,k[W>>2]|0)|0;if(!o){xa=26;break b}k[I>>2]=o;p=k[W>>2]|0;k[J>>2]=p}else o=k[I>>2]|0;p=Wb(m,o,p,n)|0;if((p|0)!=(k[W>>2]|0)){xa=29;break b}o=k[q+8>>2]|0;if(!o){xa=31;break b}if(!(hb[o&63](a,k[I>>2]|0,p,n)|0)){xa=33;break b}q=k[O>>2]|0;p=k[B>>2]|0;v=k[y>>2]|0;w=Zb(m)|0;x=k[W>>2]|0;w=w-x+-4|0;x=x+4|0;p=p+40|0;u=k[p>>2]|0;o=k[u+(q*40|0)+20>>2]|0;s=u+(q*40|0)+28|0;t=k[s>>2]|0;if((o+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;k[s>>2]=t;s=bd(k[u+(q*40|0)+24>>2]|0,t*24|0)|0;t=k[p>>2]|0;o=t+(q*40|0)+24|0;if(!s){xa=41;break b}k[o>>2]=s;p=t;o=k[t+(q*40|0)+20>>2]|0}else{p=u;s=k[u+(q*40|0)+24>>2]|0}j[s+(o*24|0)>>1]=v;A=s+(o*24|0)+8|0;k[A>>2]=w;k[A+4>>2]=((w|0)<0)<<31>>31;k[s+(o*24|0)+16>>2]=x;k[p+(q*40|0)+20>>2]=o+1;if((v|0)==65424?(E=k[p+(q*40|0)+16>>2]|0,(E|0)!=0):0){A=E+((k[p+(q*40|0)+12>>2]|0)*24|0)|0;k[A>>2]=w;k[A+4>>2]=0}do if((k[y>>2]|0)==65424){o=Zb(m)|0;o=-4-(k[W>>2]|0)+o|0;A=K;z=k[A+4>>2]|0;if(!(0>(z|0)|(0==(z|0)?o>>>0>(k[A>>2]|0)>>>0:0)))break;A=K;k[A>>2]=o;k[A+4>>2]=0}while(0);if(i[ta>>0]&4){xa=46;break}if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=50;break b}Ab(k[I>>2]|0,S,2);if((k[S>>2]|0)==65427)break c}if((xa|0)==7){xa=0;k[Aa>>2]=64;break}else if((xa|0)==14){xa=0;k[Aa>>2]=64;break}else if((xa|0)==46){xa=0;A=$b(m,k[R>>2]|0,0,n)|0;if(!((L|0)==0?(A|0)==(k[R>>2]|0):0)){xa=47;break b}k[S>>2]=65427;break}}while(0);A=_b(m)|0;if((A|0)==0&(L|0)==0?(k[Aa>>2]|0)==64:0){xa=115;break}o=i[ta>>0]|0;if(!(o&4)){p=k[O>>2]|0;q=k[P>>2]|0;if(!(k[Q>>2]|0)){o=k[R>>2]|0;if(o>>>0>1){s=o+-2|0;k[R>>2]=s}else s=o}else{s=_b(m)|0;s=aj(s|0,L|0,-2,0)|0;k[R>>2]=s}o=q+(p*5640|0)+5592|0;A=q+(p*5640|0)+5596|0;do if(!s)z=1;else{z=_b(m)|0;y=L;if(0>(y|0)|0==(y|0)&s>>>0>z>>>0)cc(n,2,8573,fa)|0;p=k[o>>2]|0;if(!p){z=Zc(k[R>>2]|0)|0;k[o>>2]=z;if(!z)break b;else{z=0;break}}p=bd(p,(k[R>>2]|0)+(k[A>>2]|0)|0)|0;if(!p){xa=65;break b}k[o>>2]=p;z=0}while(0);p=k[B>>2]|0;if(p){w=Zb(m)|0;s=L;y=aj(w|0,s|0,-2,-1)|0;q=k[O>>2]|0;p=p+40|0;u=k[p>>2]|0;v=k[u+(q*40|0)+12>>2]|0;t=k[u+(q*40|0)+16>>2]|0;x=t+(v*24|0)+8|0;k[x>>2]=y;k[x+4>>2]=L;x=k[R>>2]|0;s=aj(x|0,0,w|0,s|0)|0;v=t+(v*24|0)+16|0;k[v>>2]=s;k[v+4>>2]=L;x=x+2|0;v=k[u+(q*40|0)+20>>2]|0;s=u+(q*40|0)+28|0;t=k[s>>2]|0;if((v+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;k[s>>2]=t;s=bd(k[u+(q*40|0)+24>>2]|0,t*24|0)|0;t=k[p>>2]|0;u=t+(q*40|0)+24|0;if(!s){o=u;xa=74;break}k[u>>2]=s;w=t;p=k[t+(q*40|0)+20>>2]|0}else{w=u;s=k[u+(q*40|0)+24>>2]|0;p=v}j[s+(p*24|0)>>1]=-109;v=Zi(0,y|0,32)|0;y=s+(p*24|0)+8|0;k[y>>2]=v;k[y+4>>2]=L;k[s+(p*24|0)+16>>2]=x;k[w+(q*40|0)+20>>2]=p+1}if(!z)o=Wb(m,(k[o>>2]|0)+(k[A>>2]|0)|0,k[R>>2]|0,n)|0;else o=0;k[Aa>>2]=(o|0)==(k[R>>2]|0)?8:64;k[A>>2]=(k[A>>2]|0)+o;o=i[ta>>0]|0;if((o&9)==1){i[ta>>0]=o|8;p=k[O>>2]|0;do if((bc(m)|0)!=0?(M=Zb(m)|0,N=L,!((M|0)==-1&(N|0)==-1)):0){while(1){if((Wb(m,V,2,n)|0)!=2){xa=81;break}Ab(V,T,2);if((k[T>>2]|0)!=65424){xa=83;break}if((Wb(m,V,2,n)|0)!=2){xa=85;break}Ab(V,X,2);if((k[X>>2]|0)!=10){xa=87;break}k[X>>2]=8;o=Wb(m,V,8,n)|0;if((o|0)!=(k[X>>2]|0)){xa=89;break}if((o|0)!=8){xa=91;break}Ab(V,Z,2);Ab(F,_,4);Ab(G,U,1);Ab(H,Y,1);if((k[Z>>2]|0)==(p|0)){xa=97;break}o=k[_>>2]|0;if(o>>>0<14){xa=94;break}xa=o+-12|0;k[_>>2]=xa;xa=$b(m,xa,0,n)|0;if(!((L|0)==0?(xa|0)==(k[_>>2]|0):0)){xa=96;break}}if((xa|0)==81){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==83){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==85){xa=0;cc(n,1,8295,ga)|0;o=0;p=0;break}else if((xa|0)==87){xa=0;cc(n,1,8313,ia)|0;o=0;p=0;break}else if((xa|0)==89){xa=0;cc(n,1,8295,ka)|0;o=0;p=0;break}else if((xa|0)==91){xa=0;cc(n,1,8662,la)|0;o=0;p=0;break}else if((xa|0)==94){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==96){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==97){xa=0;p=(k[U>>2]|0)==(k[Y>>2]|0)&1;o=(ac(m,M,N,n)|0)!=0&1;break}}else{o=1;p=0}while(0);if(!o){xa=99;break}if(p){o=ha(k[D>>2]|0,k[C>>2]|0)|0;i[ta>>0]=i[ta>>0]&-18|16;if(o){p=k[P>>2]|0;t=0;do{q=p+(t*5640|0)+5588|0;s=k[q>>2]|0;if(s)k[q>>2]=s+1;t=t+1|0}while((t|0)!=(o|0))}cc(n,2,8734,na)|0}}if(!(i[ta>>0]&1)){if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=109;break}Ab(k[I>>2]|0,S,2)}}else{i[ta>>0]=o&-6;k[Aa>>2]=8;if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=113;break}Ab(k[I>>2]|0,S,2)}o=k[S>>2]|0;if(!((o|0)!=65497&(i[ta>>0]&1)==0)){xa=116;break}}switch(xa|0){case 9:{cc(n,1,8295,$)|0;n=0;r=Da;return n|0}case 11:{cc(n,1,8313,aa)|0;n=0;r=Da;return n|0}case 20:{cc(n,1,8339,ja)|0;n=0;r=Da;return n|0}case 24:{cc(n,1,8382,qa)|0;n=0;r=Da;return n|0}case 26:{cd(k[I>>2]|0);k[I>>2]=0;k[J>>2]=0;cc(n,1,8427,ra)|0;n=0;r=Da;return n|0}case 29:{cc(n,1,8295,sa)|0;n=0;r=Da;return n|0}case 31:{cc(n,1,8461,ba)|0;n=0;r=Da;return n|0}case 33:{k[ca>>2]=k[S>>2];cc(n,1,8490,ca)|0;n=0;r=Da;return n|0}case 41:{cd(k[o>>2]|0);Ca=k[p>>2]|0;k[Ca+(q*40|0)+24>>2]=0;k[Ca+(q*40|0)+28>>2]=0;k[Ca+(q*40|0)+20>>2]=0;cc(n,1,8537,va)|0;n=0;r=Da;return n|0}case 47:{cc(n,1,8295,da)|0;n=0;r=Da;return n|0}case 50:{cc(n,1,8295,ea)|0;n=0;r=Da;return n|0}case 65:{cd(k[o>>2]|0);k[o>>2]=0;break}case 74:{cd(k[o>>2]|0);Ca=k[p>>2]|0;k[Ca+(q*40|0)+24>>2]=0;k[Ca+(q*40|0)+28>>2]=0;k[Ca+(q*40|0)+20>>2]=0;cc(n,1,8537,wa)|0;n=0;r=Da;return n|0}case 99:{cc(n,1,8688,ma)|0;n=0;r=Da;return n|0}case 109:{cc(n,1,8295,oa)|0;n=0;r=Da;return n|0}case 113:{cc(n,1,8295,pa)|0;n=0;r=Da;return n|0}case 115:{o=k[S>>2]|0;xa=116;break}}if((xa|0)==116)if((o|0)==65497){o=ta;xa=117;break a}else{o=ta;break a}cc(n,1,8628,ua)|0;n=0;r=Da;return n|0}else o=ta;break}default:{n=0;r=Da;return n|0}}while(0);if((xa|0)==117)if((k[Aa>>2]|0)!=256){k[a+200>>2]=0;k[Aa>>2]=256}if(!(i[o>>0]&1)){s=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;t=a+200|0;p=k[t>>2]|0;d:do if(p>>>0<s>>>0){o=p;q=(k[a+164>>2]|0)+(p*5640|0)|0;while(1){if(k[q+5592>>2]|0){p=o;break d}p=o+1|0;k[t>>2]=p;if(p>>>0<s>>>0){o=p;q=q+5640|0}else break}}while(0);if((p|0)==(s|0)){k[l>>2]=0;n=1;r=Da;return n|0}}else{p=a+200|0;t=p;p=k[p>>2]|0}A=k[a+164>>2]|0;if(i[A+(p*5640|0)+5636>>0]&2){B=A+(p*5640|0)+5160|0;q=k[B>>2]|0;if(!q)o=0;else{s=k[A+(p*5640|0)+5164>>2]|0;u=0;o=0;do{o=(k[s+(u<<3)+4>>2]|0)+o|0;u=u+1|0}while((u|0)!=(q|0))}xa=Zc(o)|0;z=A+(p*5640|0)+5172|0;k[z>>2]=xa;if(!xa){cc(n,1,8775,ya)|0;cc(n,1,8813,za)|0;n=0;r=Da;return n|0}y=A+(p*5640|0)+5180|0;k[y>>2]=o;q=k[B>>2]|0;x=A+(p*5640|0)+5164|0;if(!q)o=k[x>>2]|0;else{o=k[x>>2]|0;v=o;w=0;u=0;while(1){s=k[v+(w<<3)>>2]|0;if(!s)s=v;else{cj((k[z>>2]|0)+u|0,s|0,k[v+(w<<3)+4>>2]|0)|0;s=k[x>>2]|0;u=(k[s+(w<<3)+4>>2]|0)+u|0;cd(k[s+(w<<3)>>2]|0);s=k[x>>2]|0;k[s+(w<<3)>>2]=0;k[s+(w<<3)+4>>2]=0;q=k[B>>2]|0;o=s}w=w+1|0;if(w>>>0>=q>>>0)break;else v=s}}k[B>>2]=0;cd(o);k[x>>2]=0;k[A+(p*5640|0)+5168>>2]=k[z>>2];k[A+(p*5640|0)+5176>>2]=k[y>>2];p=k[t>>2]|0}o=a+204|0;if(!(jg(k[o>>2]|0,p,n)|0)){cc(n,1,8839,Ba)|0;n=0;r=Da;return n|0}else{Ba=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;k[Ca>>2]=(k[t>>2]|0)+1;k[Ca+4>>2]=Ba;cc(n,4,8873,Ca)|0;k[b>>2]=k[t>>2];k[l>>2]=1;n=kg(k[o>>2]|0)|0;k[c>>2]=n;n=k[k[(k[o>>2]|0)+20>>2]>>2]|0;k[d>>2]=k[n>>2];k[e>>2]=k[n+4>>2];k[f>>2]=k[n+8>>2];k[g>>2]=k[n+12>>2];k[h>>2]=k[n+16>>2];k[Aa>>2]=k[Aa>>2]|128;n=1;r=Da;return n|0}return 0}function nd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+48|0;q=t+28|0;s=t+32|0;n=a+8|0;if(!(k[n>>2]&128)){e=0;r=t;return e|0}p=a+200|0;if((k[p>>2]|0)!=(b|0)){e=0;r=t;return e|0}g=k[a+164>>2]|0;m=g+(b*5640|0)|0;o=g+(b*5640|0)+5592|0;h=k[o>>2]|0;if(!h){Cd(m);e=0;r=t;return e|0}j=a+204|0;l=g+(b*5640|0)+5596|0;if(!(mg(k[j>>2]|0,h,k[l>>2]|0,b,k[a+196>>2]|0,f)|0)){Cd(m);k[n>>2]=k[n>>2]|32768;cc(f,1,8912,t)|0;e=0;r=t;return e|0}if(!(ng(k[j>>2]|0,c,d)|0)){e=0;r=t;return e|0}g=k[o>>2]|0;if(g){cd(g);k[o>>2]=0;k[l>>2]=0}o=a+76|0;i[o>>0]=i[o>>0]&-2;k[n>>2]=k[n>>2]&-129;o=_b(e)|0;a=k[n>>2]|0;if((a|0)==256|(o|0)==0&(L|0)==0&(a|0)==64){e=1;r=t;return e|0}if((Wb(e,s,2,f)|0)!=2){cc(f,2,8931,t+8|0)|0;e=1;r=t;return e|0}Ab(s,q,2);switch(k[q>>2]|0){case 65497:{k[p>>2]=0;k[n>>2]=256;e=1;r=t;return e|0}case 65424:{e=1;r=t;return e|0}default:if((_b(e)|0)==0&(L|0)==0){k[n>>2]=64;cc(f,2,8975,t+16|0)|0;e=1;r=t;return e|0}else{cc(f,1,9005,t+24|0)|0;e=0;r=t;return e|0}}return 0}function od(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+112|0;y=z+96|0;x=z+88|0;w=z+80|0;v=z+72|0;u=z+64|0;s=z+56|0;q=z+48|0;n=z+40|0;m=z+32|0;l=z+24|0;j=z+16|0;o=k[a+80>>2]|0;if((k[a+8>>2]|0)!=8){cc(g,1,9037,z)|0;g=0;r=z;return g|0}if(!(d|c|e|f)){cc(g,4,9116,z+8|0)|0;k[a+28>>2]=0;k[a+32>>2]=0;k[a+36>>2]=k[a+112>>2];k[a+40>>2]=k[a+116>>2];g=1;r=z;return g|0}t=o+8|0;h=k[t>>2]|0;if(h>>>0<c>>>0){k[j>>2]=c;k[j+4>>2]=h;cc(g,1,9185,j)|0;g=0;r=z;return g|0}h=k[o>>2]|0;if(h>>>0>c>>>0){k[l>>2]=c;k[l+4>>2]=h;cc(g,2,9272,l)|0;h=0;c=k[o>>2]|0}else h=((c-(k[a+92>>2]|0)|0)>>>0)/((k[a+100>>2]|0)>>>0)|0;k[a+28>>2]=h;k[b>>2]=c;p=o+12|0;c=k[p>>2]|0;if(c>>>0<d>>>0){k[m>>2]=d;k[m+4>>2]=c;cc(g,1,9360,m)|0;g=0;r=z;return g|0}j=o+4|0;c=k[j>>2]|0;if(c>>>0>d>>>0){k[n>>2]=d;k[n+4>>2]=c;cc(g,2,9445,n)|0;c=0;d=k[j>>2]|0}else c=((d-(k[a+96>>2]|0)|0)>>>0)/((k[a+104>>2]|0)>>>0)|0;k[a+32>>2]=c;l=b+4|0;k[l>>2]=d;c=k[o>>2]|0;if(c>>>0>e>>>0){k[q>>2]=e;k[q+4>>2]=c;cc(g,1,9531,q)|0;g=0;r=z;return g|0}c=k[t>>2]|0;if(c>>>0<e>>>0){k[s>>2]=e;k[s+4>>2]=c;cc(g,2,9620,s)|0;c=k[a+112>>2]|0;e=k[t>>2]|0}else{c=k[a+100>>2]|0;c=(e+-1-(k[a+92>>2]|0)+c|0)/(c|0)|0}k[a+36>>2]=c;h=b+8|0;k[h>>2]=e;e=k[j>>2]|0;if(e>>>0>f>>>0){k[u>>2]=f;k[u+4>>2]=e;cc(g,1,9708,u)|0;g=0;r=z;return g|0}e=k[p>>2]|0;if(e>>>0<f>>>0){k[v>>2]=f;k[v+4>>2]=e;cc(g,2,9798,v)|0;c=k[p>>2]|0;e=k[a+116>>2]|0}else{e=k[a+104>>2]|0;c=f;e=(f+-1-(k[a+96>>2]|0)+e|0)/(e|0)|0}k[a+40>>2]=e;f=b+12|0;k[f>>2]=c;v=a+76|0;i[v>>0]=i[v>>0]|2;v=k[b+16>>2]|0;a=k[b>>2]|0;a:do if(v){d=k[l>>2]|0;t=d+-1|0;u=k[h>>2]|0;p=u+-1|0;q=a+-1|0;e=0;o=k[b+24>>2]|0;while(1){b=k[o>>2]|0;c=(q+b|0)/(b|0)|0;k[o+16>>2]=c;n=k[o+4>>2]|0;h=(t+n|0)/(n|0)|0;k[o+20>>2]=h;b=(p+b|0)/(b|0)|0;j=k[o+40>>2]|0;l=$i(1,0,j|0)|0;m=L;b=aj(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;b=aj(b|0,L|0,l|0,m|0)|0;b=Zi(b|0,L|0,j|0)|0;c=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;c=aj(c|0,L|0,l|0,m|0)|0;c=Zi(c|0,L|0,j|0)|0;c=b-c|0;if((c|0)<0){h=29;break}s=k[f>>2]|0;b=(n+-1+s|0)/(n|0)|0;k[o+8>>2]=c;b=aj(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;b=aj(b|0,L|0,l|0,m|0)|0;b=Zi(b|0,L|0,j|0)|0;c=aj(h|0,((h|0)<0)<<31>>31|0,-1,-1)|0;c=aj(c|0,L|0,l|0,m|0)|0;c=Zi(c|0,L|0,j|0)|0;c=b-c|0;if((c|0)<0){h=31;break}k[o+12>>2]=c;e=e+1|0;if(e>>>0>=v>>>0){c=u;e=s;break a}else o=o+52|0}if((h|0)==29){k[w>>2]=e;k[w+4>>2]=c;cc(g,1,9887,w)|0;g=0;r=z;return g|0}else if((h|0)==31){k[x>>2]=e;k[x+4>>2]=c;cc(g,1,9956,x)|0;g=0;r=z;return g|0}}else{d=k[l>>2]|0;c=k[h>>2]|0;e=k[f>>2]|0}while(0);k[y>>2]=a;k[y+4>>2]=d;k[y+8>>2]=c;k[y+12>>2]=e;cc(g,4,10025,y)|0;g=1;r=z;return g|0}function pd(){var a=0,b=0,c=0;a=_c(1,208)|0;if(!a){b=0;return b|0}k[a>>2]=1;b=a+184|0;i[b>>0]=i[b>>0]|2;b=_c(1,5640)|0;k[a+12>>2]=b;if(!b){gd(a);b=0;return b|0}b=_c(1,1e3)|0;k[a+16>>2]=b;if(!b){gd(a);b=0;return b|0}k[a+20>>2]=1e3;k[a+60>>2]=-1;b=a+64|0;k[b>>2]=0;k[b+4>>2]=0;b=_c(1,48)|0;do if(b){k[b+32>>2]=100;k[b+24>>2]=0;c=_c(100,24)|0;k[b+28>>2]=c;if(!c){cd(b);break}k[b+40>>2]=0;k[a+196>>2]=b;c=Ag()|0;k[a+192>>2]=c;if(!c){gd(a);c=0;return c|0}c=Ag()|0;k[a+188>>2]=c;if(c){c=a;return c|0}gd(a);c=0;return c|0}while(0);k[a+196>>2]=0;gd(a);c=0;return c|0}function qd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+128|0;s=t+104|0;q=t+72|0;p=t+64|0;l=t+40|0;i=t+24|0;g=t+16|0;f=t+8|0;e=t;if(b&384){ui(10063,11,1,c)|0;r=t;return}if((b&1|0)!=0?(d=k[a+80>>2]|0,(d|0)!=0):0)rd(d,0,c);if(b&2){ui(10075,36,1,c)|0;d=k[a+96>>2]|0;k[e>>2]=k[a+92>>2];k[e+4>>2]=d;ji(c,10112,e)|0;e=k[a+104>>2]|0;k[f>>2]=k[a+100>>2];k[f+4>>2]=e;ji(c,10130,f)|0;f=k[a+116>>2]|0;k[g>>2]=k[a+112>>2];k[g+4>>2]=f;ji(c,10148,g)|0;Hd(k[a+12>>2]|0,k[(k[a+80>>2]|0)+16>>2]|0,c);ui(10164,2,1,c)|0}if((b&8|0)!=0?(h=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0,(h|0)!=0):0){d=a+80|0;e=0;f=k[a+164>>2]|0;while(1){Hd(f,k[(k[d>>2]|0)+16>>2]|0,c);e=e+1|0;if((e|0)==(h|0))break;else f=f+5640|0}}if(!(b&16)){r=t;return}g=k[a+196>>2]|0;ui(10167,37,1,c)|0;h=g;b=k[h+4>>2]|0;d=g+8|0;a=k[d>>2]|0;d=k[d+4>>2]|0;f=i;k[f>>2]=k[h>>2];k[f+4>>2]=b;f=i+8|0;k[f>>2]=a;k[f+4>>2]=d;ji(c,10205,i)|0;ui(10272,17,1,c)|0;f=g+28|0;d=k[f>>2]|0;a:do if((d|0)!=0?(j=g+24|0,(k[j>>2]|0)!=0):0){e=0;while(1){b=d+(e*24|0)+8|0;h=k[b>>2]|0;b=k[b+4>>2]|0;i=k[d+(e*24|0)+16>>2]|0;k[l>>2]=m[d+(e*24|0)>>1];a=l+8|0;k[a>>2]=h;k[a+4>>2]=b;k[l+16>>2]=i;ji(c,10290,l)|0;e=e+1|0;if(e>>>0>=(k[j>>2]|0)>>>0)break a;d=k[f>>2]|0}}while(0);ui(10321,4,1,c)|0;b=g+40|0;f=k[b>>2]|0;if((f|0)!=0?(o=g+36|0,n=k[o>>2]|0,(n|0)!=0):0){e=0;d=0;do{d=(k[f+(e*40|0)+4>>2]|0)+d|0;e=e+1|0}while((e|0)!=(n|0));if(d){ui(10326,16,1,c)|0;if(k[o>>2]|0){d=k[b>>2]|0;h=0;do{g=k[d+(h*40|0)+4>>2]|0;k[p>>2]=h;k[p+4>>2]=g;ji(c,10343,p)|0;d=k[b>>2]|0;e=k[d+(h*40|0)+16>>2]|0;b:do if(!((g|0)==0|(e|0)==0)){d=0;while(1){a=e+(d*24|0)|0;u=k[a>>2]|0;a=k[a+4>>2]|0;j=e+(d*24|0)+8|0;i=k[j>>2]|0;j=k[j+4>>2]|0;n=e+(d*24|0)+16|0;l=k[n>>2]|0;n=k[n+4>>2]|0;k[q>>2]=d;f=q+8|0;k[f>>2]=u;k[f+4>>2]=a;f=q+16|0;k[f>>2]=i;k[f+4>>2]=j;f=q+24|0;k[f>>2]=l;k[f+4>>2]=n;ji(c,10379,q)|0;f=d+1|0;d=k[b>>2]|0;if((f|0)==(g|0))break b;e=k[d+(h*40|0)+16>>2]|0;d=f}}while(0);e=k[d+(h*40|0)+24>>2]|0;c:do if((e|0)!=0?(k[d+(h*40|0)+20>>2]|0)!=0:0){d=0;while(1){n=e+(d*24|0)+8|0;l=k[n>>2]|0;n=k[n+4>>2]|0;f=k[e+(d*24|0)+16>>2]|0;k[s>>2]=m[e+(d*24|0)>>1];u=s+8|0;k[u>>2]=l;k[u+4>>2]=n;k[s+16>>2]=f;ji(c,10290,s)|0;f=d+1|0;d=k[b>>2]|0;if(f>>>0>=(k[d+(h*40|0)+20>>2]|0)>>>0)break c;e=k[d+(h*40|0)+24>>2]|0;d=f}}while(0);h=h+1|0}while(h>>>0<(k[o>>2]|0)>>>0)}ui(10321,4,1,c)|0}}ui(10164,2,1,c)|0;r=t;return}function rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;m=r;r=r+64|0;l=m+48|0;j=m+40|0;g=m+32|0;f=m+16|0;e=m;h=m+52|0;if(!b){ui(10482,13,1,c)|0;i[h+1>>0]=0;d=9}else{ui(10445,36,1,k[676]|0)|0;d=0}i[h>>0]=d;n=k[a>>2]|0;d=k[a+4>>2]|0;k[e>>2]=h;k[e+4>>2]=n;k[e+8>>2]=d;ji(c,10496,e)|0;e=k[a+8>>2]|0;d=k[a+12>>2]|0;k[f>>2]=h;k[f+4>>2]=e;k[f+8>>2]=d;ji(c,10513,f)|0;f=a+16|0;d=k[f>>2]|0;k[g>>2]=h;k[g+4>>2]=d;ji(c,10530,g)|0;d=a+24|0;if(!(k[d>>2]|0)){ui(10164,2,1,c)|0;r=m;return}if(!(k[f>>2]|0)){ui(10164,2,1,c)|0;r=m;return}else e=0;do{k[j>>2]=h;k[j+4>>2]=e;ji(c,10546,j)|0;sd((k[d>>2]|0)+(e*52|0)|0,b,c);k[l>>2]=h;ji(c,10566,l)|0;e=e+1|0}while(e>>>0<(k[f>>2]|0)>>>0);ui(10164,2,1,c)|0;r=m;return}function sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+48|0;h=j+24|0;g=j+16|0;f=j;e=j+32|0;d=(b|0)!=0;if(d){ui(10571,41,1,k[676]|0)|0;b=0}else{i[e+1>>0]=9;i[e+2>>0]=0;b=9}i[e>>0]=b;l=k[a>>2]|0;b=k[a+4>>2]|0;k[f>>2]=e;k[f+4>>2]=l;k[f+8>>2]=b;ji(c,10613,f)|0;f=k[a+24>>2]|0;k[g>>2]=e;k[g+4>>2]=f;ji(c,10630,g)|0;g=k[a+32>>2]|0;k[h>>2]=e;k[h+4>>2]=g;ji(c,10642,h)|0;if(!d){r=j;return}ui(10164,2,1,c)|0;r=j;return}function td(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+16|0;d=l;b=a+80|0;i=k[(k[b>>2]|0)+16>>2]|0;c=_c(1,56)|0;k[d>>2]=c;if(!c){j=0;r=l;return j|0}k[c+24>>2]=k[(k[b>>2]|0)+16>>2];k[c>>2]=k[a+92>>2];k[c+4>>2]=k[a+96>>2];k[c+8>>2]=k[a+100>>2];k[c+12>>2]=k[a+104>>2];k[c+16>>2]=k[a+112>>2];k[c+20>>2]=k[a+116>>2];k[c+52>>2]=0;c=k[a+12>>2]|0;b=k[d>>2]|0;k[b+32>>2]=k[c>>2];k[b+36>>2]=k[c+4>>2];k[b+40>>2]=k[c+8>>2];k[b+44>>2]=k[c+16>>2];h=_c(k[b+24>>2]|0,1080)|0;k[b+48>>2]=h;b=k[d>>2]|0;h=b+48|0;a=k[h>>2]|0;if(!a){Mc(d);j=0;r=l;return j|0}if(!i){j=b;r=l;return j|0}g=c+5584|0;c=0;while(1){f=k[g>>2]|0;k[a+(c*1080|0)+4>>2]=k[f+(c*1080|0)>>2];d=f+(c*1080|0)+4|0;e=k[d>>2]|0;k[a+(c*1080|0)+8>>2]=e;k[a+(c*1080|0)+12>>2]=k[f+(c*1080|0)+8>>2];k[a+(c*1080|0)+16>>2]=k[f+(c*1080|0)+12>>2];k[a+(c*1080|0)+20>>2]=k[f+(c*1080|0)+16>>2];k[a+(c*1080|0)+24>>2]=k[f+(c*1080|0)+20>>2];if(e>>>0<33){cj(a+(c*1080|0)+948|0,f+(c*1080|0)+944|0,e|0)|0;cj(a+(c*1080|0)+816|0,f+(c*1080|0)+812|0,k[d>>2]|0)|0}e=k[f+(c*1080|0)+24>>2]|0;k[a+(c*1080|0)+28>>2]=e;k[a+(c*1080|0)+808>>2]=k[f+(c*1080|0)+804>>2];if((e|0)!=1){e=(k[d>>2]|0)*3|0;d=e+-2|0;if((d|0)<97&(e|0)>2)j=10}else{d=1;j=10}if((j|0)==10){j=0;e=0;do{k[a+(c*1080|0)+32+(e<<2)>>2]=k[f+(c*1080|0)+28+(e<<3)+4>>2];k[a+(c*1080|0)+420+(e<<2)>>2]=k[f+(c*1080|0)+28+(e<<3)>>2];e=e+1|0}while((e|0)!=(d|0))}k[a+(c*1080|0)+812>>2]=k[f+(c*1080|0)+808>>2];c=c+1|0;if((c|0)==(i|0))break;a=k[h>>2]|0}r=l;return b|0}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=_c(1,48)|0;if(!b){j=0;return j|0}g=a+196|0;c=k[g>>2]|0;h=c;j=k[h+4>>2]|0;a=b;k[a>>2]=k[h>>2];k[a+4>>2]=j;a=c+8|0;j=k[a+4>>2]|0;h=b+8|0;k[h>>2]=k[a>>2];k[h+4>>2]=j;h=c+16|0;j=k[h+4>>2]|0;a=b+16|0;k[a>>2]=k[h>>2];k[a+4>>2]=j;c=k[c+24>>2]|0;a=b+24|0;k[a>>2]=c;c=Zc(c*24|0)|0;j=b+28|0;k[j>>2]=c;if(!c){cd(b);j=0;return j|0}d=k[(k[g>>2]|0)+28>>2]|0;if(!d){cd(c);k[j>>2]=0}else cj(c|0,d|0,(k[a>>2]|0)*24|0)|0;a=k[(k[g>>2]|0)+36>>2]|0;f=b+36|0;k[f>>2]=a;a=_c(a,40)|0;h=b+40|0;k[h>>2]=a;if(!a){cd(k[j>>2]|0);cd(b);j=0;return j|0}c=k[(k[g>>2]|0)+40>>2]|0;if(!c){cd(a);k[h>>2]=0;j=b;return j|0}if(!(k[f>>2]|0)){j=b;return j|0}c=k[c+20>>2]|0;k[a+20>>2]=c;c=Zc(c*24|0)|0;a=k[h>>2]|0;k[a+24>>2]=c;a:do if(!c)c=0;else{e=c;c=0;while(1){d=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+24>>2]|0;if(!d){cd(e);a=k[h>>2]|0;k[a+(c*40|0)+24>>2]=0}else{cj(e|0,d|0,(k[a+(c*40|0)+20>>2]|0)*24|0)|0;a=k[h>>2]|0}d=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+4>>2]|0;k[a+(c*40|0)+4>>2]=d;d=Zc(d*24|0)|0;a=k[h>>2]|0;k[a+(c*40|0)+16>>2]=d;if(!d)break;e=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+16>>2]|0;if(!e){cd(d);a=k[h>>2]|0;k[a+(c*40|0)+16>>2]=0}else{cj(d|0,e|0,(k[a+(c*40|0)+4>>2]|0)*24|0)|0;a=k[h>>2]|0}k[a+(c*40|0)+32>>2]=0;k[a+(c*40|0)+36>>2]=0;c=c+1|0;if(c>>>0>=(k[f>>2]|0)>>>0){i=32;break}e=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+20>>2]|0;k[a+(c*40|0)+20>>2]=e;e=Zc(e*24|0)|0;a=k[h>>2]|0;k[a+(c*40|0)+24>>2]=e;if(!e)break a}if((i|0)==32)return b|0;if(c){cd(k[a+24>>2]|0);cd(k[(k[h>>2]|0)+16>>2]|0);if((c|0)!=1){a=1;do{cd(k[(k[h>>2]|0)+(a*40|0)+24>>2]|0);cd(k[(k[h>>2]|0)+(a*40|0)+16>>2]|0);a=a+1|0}while((a|0)!=(c|0))}a=k[h>>2]|0}cd(a);cd(k[j>>2]|0);cd(b);j=0;return j|0}while(0);if(c){cd(k[a+24>>2]|0);if((c|0)!=1){a=1;do{cd(k[(k[h>>2]|0)+(a*40|0)+24>>2]|0);a=a+1|0}while((a|0)!=(c|0))}a=k[h>>2]|0}cd(a);cd(k[j>>2]|0);cd(b);j=0;return j|0}function vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!c){c=0;return c|0}e=fc()|0;j=a+84|0;k[j>>2]=e;if(!e){c=0;return c|0}jc(c,e);g=a+188|0;Cg(k[g>>2]|0,27,d)|0;g=k[g>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){c=a+80|0;hc(k[c>>2]|0);k[c>>2]=0;c=0;return c|0}}else Fg(g);h=k[c+16>>2]|0;if(!h){c=1;return c|0}g=k[(k[j>>2]|0)+24>>2]|0;e=k[c+24>>2]|0;f=0;do{k[e+(f*52|0)+36>>2]=k[g+(f*52|0)+36>>2];c=g+(f*52|0)+44|0;k[e+(f*52|0)+44>>2]=k[c>>2];k[c>>2]=0;f=f+1|0}while(f>>>0<h>>>0);e=1;return e|0}function wd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;t=r;r=r+16|0;h=t+8|0;if(!c){cc(d,1,10654,t)|0;s=0;r=t;return s|0}f=k[a+112>>2]|0;g=ha(k[a+116>>2]|0,f)|0;if(g>>>0<=e>>>0){k[h>>2]=e;k[h+4>>2]=g+-1;cc(d,1,10692,h)|0;s=0;r=t;return s|0}s=(e>>>0)%(f>>>0)|0;q=(e>>>0)/(f>>>0)|0;h=k[a+100>>2]|0;g=ha(h,s)|0;i=k[a+92>>2]|0;g=g+i|0;k[c>>2]=g;p=a+80|0;f=k[p>>2]|0;j=k[f>>2]|0;g=g>>>0<j>>>0?j:g;k[c>>2]=g;i=(ha(h,s+1|0)|0)+i|0;s=c+8|0;k[s>>2]=i;h=k[f+8>>2]|0;i=i>>>0>h>>>0?h:i;k[s>>2]=i;s=k[a+104>>2]|0;h=ha(s,q)|0;j=k[a+96>>2]|0;h=h+j|0;o=c+4|0;k[o>>2]=h;n=k[f+4>>2]|0;h=h>>>0<n>>>0?n:h;k[o>>2]=h;j=(ha(s,q+1|0)|0)+j|0;q=c+12|0;k[q>>2]=j;s=k[f+12>>2]|0;j=j>>>0>s>>>0?s:j;k[q>>2]=j;q=c+24|0;s=c+16|0;o=k[s>>2]|0;if(o){n=k[f+24>>2]|0;m=g+-1|0;l=h+-1|0;i=i+-1|0;f=j+-1|0;g=0;h=k[q>>2]|0;while(1){j=k[n+(g*52|0)+40>>2]|0;k[h+40>>2]=j;z=k[h>>2]|0;y=(m+z|0)/(z|0)|0;k[h+16>>2]=y;u=k[h+4>>2]|0;x=(l+u|0)/(u|0)|0;k[h+20>>2]=x;z=(i+z|0)/(z|0)|0;u=(f+u|0)/(u|0)|0;w=$i(1,0,j|0)|0;v=L;z=aj(z|0,((z|0)<0)<<31>>31|0,-1,-1)|0;z=aj(z|0,L|0,w|0,v|0)|0;z=Zi(z|0,L|0,j|0)|0;y=aj(y|0,((y|0)<0)<<31>>31|0,-1,-1)|0;y=aj(y|0,L|0,w|0,v|0)|0;y=Zi(y|0,L|0,j|0)|0;k[h+8>>2]=z-y;u=aj(u|0,((u|0)<0)<<31>>31|0,-1,-1)|0;u=aj(u|0,L|0,w|0,v|0)|0;u=Zi(u|0,L|0,j|0)|0;x=aj(x|0,((x|0)<0)<<31>>31|0,-1,-1)|0;v=aj(x|0,L|0,w|0,v|0)|0;j=Zi(v|0,L|0,j|0)|0;k[h+12>>2]=u-j;g=g+1|0;if(g>>>0>=o>>>0)break;else h=h+52|0}}l=a+84|0;f=k[l>>2]|0;if(f)hc(f);f=fc()|0;k[l>>2]=f;if(!f){z=0;r=t;return z|0}jc(c,f);k[a+60>>2]=e;h=a+188|0;Cg(k[h>>2]|0,28,d)|0;h=k[h>>2]|0;i=Dg(h)|0;f=Eg(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=($a[k[f>>2]&63](a,b,d)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}Fg(h);if(!g){hc(k[p>>2]|0);k[p>>2]=0;z=0;r=t;return z|0}}else Fg(h);f=k[s>>2]|0;if(!f){z=1;r=t;return z|0}i=k[(k[l>>2]|0)+24>>2]|0;h=k[q>>2]|0;j=0;while(1){k[h+(j*52|0)+36>>2]=k[i+(j*52|0)+36>>2];g=k[h+(j*52|0)+44>>2]|0;if(!g)g=i;else{cd(g);g=k[(k[l>>2]|0)+24>>2]|0;h=k[q>>2]|0;f=k[s>>2]|0}z=g+(j*52|0)+44|0;k[h+(j*52|0)+44>>2]=k[z>>2];k[z>>2]=0;j=j+1|0;if(j>>>0>=f>>>0){f=1;break}else i=g}r=t;return f|0}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;k[a+168>>2]=b;d=k[a+80>>2]|0;a:do if((((d|0)!=0?(g=k[d+24>>2]|0,(g|0)!=0):0)?(e=k[a+12>>2]|0,(e|0)!=0):0)?(f=k[e+5584>>2]|0,(f|0)!=0):0){d=k[d+16>>2]|0;if(!d)d=1;else{e=0;while(1){if((k[f+(e*1080|0)+4>>2]|0)>>>0<=b>>>0)break;k[g+(e*52|0)+40>>2]=b;e=e+1|0;if(e>>>0>=d>>>0){d=1;break a}}cc(c,1,10753,h)|0;d=0}}else d=0;while(0);r=i;return d|0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,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;Q=r;r=r+48|0;O=Q+32|0;N=Q+24|0;M=Q+16|0;K=Q+8|0;L=Q;A=a+204|0;d=k[A>>2]|0;F=a+116|0;G=a+112|0;H=ha(k[G>>2]|0,k[F>>2]|0)|0;I=(H|0)==1;if(!H){P=1;r=Q;return P|0}J=a+200|0;B=a+12|0;C=a+164|0;D=a+8|0;E=d+20|0;y=d+24|0;z=0;d=0;h=0;a:while(1){if((k[J>>2]|0)!=(z|0)){P=5;break}w=z;z=z+1|0;x=ha(k[F>>2]|0,k[G>>2]|0)|0;k[K>>2]=z;k[K+4>>2]=x;cc(c,4,10866,K)|0;k[B>>2]=0;x=k[A>>2]|0;k[x+12>>2]=k[(k[C>>2]|0)+(w*5640|0)+5588>>2];k[D>>2]=0;if(!(ig(x,k[J>>2]|0,c)|0))break;e=k[A>>2]|0;if(k[(k[e+24>>2]|0)+16>>2]|0){g=0;do{f=k[(k[k[E>>2]>>2]|0)+20>>2]|0;if(I){k[f+(g*52|0)+32>>2]=k[(k[(k[y>>2]|0)+24>>2]|0)+(g*52|0)+44>>2];k[f+(g*52|0)+36>>2]=0}else{if(!(hg(f+(g*52|0)|0)|0)){P=14;break a}e=k[A>>2]|0}g=g+1|0}while(g>>>0<(k[(k[e+24>>2]|0)+16>>2]|0)>>>0)}x=og(e)|0;if(!I){if(x>>>0>h>>>0){e=bd(d,x)|0;if(!e){P=20;break}else{d=e;e=x}}else e=h;f=k[A>>2]|0;w=f+24|0;g=k[w>>2]|0;if(k[g+16>>2]|0){v=f+20|0;f=d;u=0;do{q=k[(k[k[v>>2]>>2]|0)+20>>2]|0;l=k[g+24>>2]|0;p=k[l+(u*52|0)+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;m=k[q+(u*52|0)+8>>2]|0;n=k[q+(u*52|0)>>2]|0;t=m-n|0;o=k[q+(u*52|0)+12>>2]|0;q=k[q+(u*52|0)+4>>2]|0;T=k[g>>2]|0;S=k[l+(u*52|0)>>2]|0;h=k[l+(u*52|0)+4>>2]|0;R=(S+~T+(k[g+8>>2]|0)|0)/(S|0)|0;s=R-t|0;g=n-((T+-1+S|0)/(S|0)|0)+(ha(R,q-(((k[g+4>>2]|0)+-1+h|0)/(h|0)|0)|0)|0)|0;g=(k[l+(u*52|0)+44>>2]|0)+(g<<2)|0;b:do switch(((p|0)==3?4:p)|0){case 1:{h=(o|0)==(q|0);if(!(k[l+(u*52|0)+32>>2]|0)){if(h)break b;p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){i[l>>0]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+1|0;m=m+4|0}}f=f+t|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}else{if(h)break b;p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){i[l>>0]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+1|0;m=m+4|0}}f=f+t|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}case 2:{h=(o|0)==(q|0);if(!(k[l+(u*52|0)+32>>2]|0)){if(!h){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){j[l>>1]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+2|0;m=m+4|0}}f=f+(t<<1)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}}else if(!h){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){j[l>>1]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+2|0;m=m+4|0}}f=f+(t<<1)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}case 4:{if((o|0)!=(q|0)){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){k[l>>2]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+4|0;m=m+4|0}}f=f+(t<<2)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}default:{}}while(0);u=u+1|0;g=k[w>>2]|0}while(u>>>0<(k[g+16>>2]|0)>>>0);f=k[A>>2]|0}if(!(pg(f,d,x)|0)){P=63;break}}else e=h;if(!(Kd(a,b,c)|0)){P=65;break}if(z>>>0>=H>>>0){P=67;break}else h=e}if((P|0)==5)cc(c,1,10829,L)|0;else if((P|0)==14){cc(c,1,10887,M)|0;if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}else if((P|0)==20){if(d)cd(d);cc(c,1,10925,N)|0;T=0;r=Q;return T|0}else if((P|0)==63){cc(c,1,10964,O)|0;cd(d);T=0;r=Q;return T|0}else if((P|0)==65){if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}else if((P|0)==67){if(!d){T=1;r=Q;return T|0}cd(d);T=1;r=Q;return T|0}if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}function zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+188|0;if(!(Cg(k[d>>2]|0,29,c)|0)){b=0;return b|0}if(((j[a+88>>1]|0)+-3&65535)<4?(Cg(k[d>>2]|0,30,c)|0)==0:0){b=0;return b|0}if(!(Cg(k[d>>2]|0,31,c)|0)){b=0;return b|0}if(!(Cg(k[d>>2]|0,32,c)|0)){b=0;return b|0}if(!(Cg(k[d>>2]|0,33,c)|0)){b=0;return b|0}h=k[d>>2]|0;f=Dg(h)|0;d=Eg(h)|0;if(!f)d=1;else{g=0;e=d;d=1;while(1){if(!d)d=0;else d=($a[k[e>>2]&63](a,b,c)|0)!=0;d=d&1;g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}Fg(h);b=d;return b|0}function Ad(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,l=0;l=r;r=r+16|0;e=fc()|0;h=a+80|0;k[h>>2]=e;if(!e){cc(d,1,11011,l)|0;b=0;r=l;return b|0}jc(c,e);g=k[c+24>>2]|0;if((g|0)!=0?(i=k[c+16>>2]|0,(i|0)!=0):0){f=0;do{c=g+(f*52|0)+44|0;e=k[c>>2]|0;if(e){k[(k[(k[h>>2]|0)+24>>2]|0)+(f*52|0)+44>>2]=e;k[c>>2]=0}f=f+1|0}while(f>>>0<i>>>0)}e=a+192|0;if(!(Cg(k[e>>2]|0,34,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,35,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,36,d)|0)){b=0;r=l;return b|0}f=k[e>>2]|0;g=Dg(f)|0;e=Eg(f)|0;if(g){h=0;c=1;while(1){if(!c)c=0;else c=($a[k[e>>2]&63](a,b,d)|0)!=0;h=h+1|0;if((h|0)==(g|0))break;else{e=e+4|0;c=c&1}}Fg(f);if(!c){b=0;r=l;return b|0}}else Fg(f);e=a+188|0;if(!(Cg(k[e>>2]|0,37,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,38,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,39,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,40,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,41,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,42,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,43,d)|0)){b=0;r=l;return b|0}c=a+88|0;if(((j[c>>1]|0)+-3&65535)<4){if(!(Cg(k[e>>2]|0,44,d)|0)){b=0;r=l;return b|0}if((j[c>>1]|0)==4?(Cg(k[e>>2]|0,45,d)|0)==0:0){b=0;r=l;return b|0}}if(!(Cg(k[e>>2]|0,46,d)|0)){b=0;r=l;return b|0}if((k[a+108>>2]|0)!=0?(Cg(k[e>>2]|0,47,d)|0)==0:0){b=0;r=l;return b|0}if((j[c>>1]&256)!=0?(Cg(k[e>>2]|0,48,d)|0)==0:0){b=0;r=l;return b|0}if((k[a+196>>2]|0)!=0?(Cg(k[e>>2]|0,49,d)|0)==0:0){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,50,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,51,d)|0)){b=0;r=l;return b|0}h=k[e>>2]|0;f=Dg(h)|0;e=Eg(h)|0;if(!f)e=1;else{g=0;c=e;e=1;while(1){if(!e)e=0;else e=($a[k[c>>2]&63](a,b,d)|0)!=0;e=e&1;g=g+1|0;if((g|0)==(f|0))break;else c=c+4|0}}Fg(h);b=e;r=l;return b|0}function Bd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;n=p+40|0;o=p+32|0;m=p+24|0;j=p+16|0;h=p+8|0;g=p;i=a+200|0;if((k[i>>2]|0)==(b|0)){l=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[h>>2]=b+1;k[h+4>>2]=l;cc(f,4,10866,h)|0;k[a+12>>2]=0;l=a+204|0;h=k[l>>2]|0;k[h+12>>2]=k[(k[a+164>>2]|0)+(b*5640|0)+5588>>2];k[a+8>>2]=0;if(ig(h,k[i>>2]|0,f)|0){g=k[l>>2]|0;a:do if(k[(k[g+24>>2]|0)+16>>2]|0){h=0;while(1){if(!(hg((k[(k[k[g+20>>2]>>2]|0)+20>>2]|0)+(h*52|0)|0)|0))break;h=h+1|0;g=k[l>>2]|0;if(h>>>0>=(k[(k[g+24>>2]|0)+16>>2]|0)>>>0)break a}cc(f,1,10887,m)|0;o=0;r=p;return o|0}while(0);if(!(pg(g,c,d)|0)){cc(f,1,10964,o)|0;o=0;r=p;return o|0}if(Kd(a,e,f)|0){o=1;r=p;return o|0}k[n>>2]=b;cc(f,1,11101,n)|0;o=0;r=p;return o|0}}else cc(f,1,10829,g)|0;k[j>>2]=b;cc(f,1,11044,j)|0;o=0;r=p;return o|0}function Cd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;e=a+5164|0;b=k[e>>2]|0;if(b){f=a+5160|0;c=k[f>>2]|0;if(c){d=0;while(1){b=k[b+(d<<3)>>2]|0;if(b){cd(b);c=k[f>>2]|0}d=d+1|0;if(d>>>0>=c>>>0)break;b=k[e>>2]|0}b=k[e>>2]|0}k[f>>2]=0;cd(b);k[e>>2]=0}b=a+5172|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5584|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5608|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5604|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5624|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+5632>>2]=0;k[a+5628>>2]=0}h=a+5612|0;b=k[h>>2]|0;if(b){g=a+5616|0;c=k[g>>2]|0;if(c){f=0;while(1){d=b+12|0;e=k[d>>2]|0;if(e){cd(e);k[d>>2]=0;c=k[g>>2]|0}f=f+1|0;if(f>>>0>=c>>>0)break;else b=b+20|0}b=k[h>>2]|0}cd(b);k[h>>2]=0}b=a+5600|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5592|0;c=k[b>>2]|0;if(!c)return;cd(c);k[b>>2]=0;k[a+5596>>2]=0;return}function Dd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;return (k[a+8>>2]|0)==0&(k[a+188>>2]|0)!=0&(k[a+192>>2]|0)!=0&1|0}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=r;r=r+224|0;X=Y+200|0;U=Y+192|0;T=Y+184|0;Q=Y+176|0;P=Y+168|0;O=Y+160|0;M=Y+152|0;K=Y+144|0;J=Y+136|0;D=Y+128|0;I=Y+120|0;C=Y+112|0;B=Y+104|0;A=Y+96|0;z=Y+88|0;y=Y+80|0;H=Y+72|0;G=Y+64|0;x=Y+56|0;w=Y+48|0;v=Y+40|0;E=Y+32|0;o=Y+24|0;l=Y+16|0;h=Y+8|0;N=Y;S=Y+216|0;d=Y+204|0;F=Y+212|0;u=Y+208|0;W=a+8|0;k[W>>2]=1;a:do if((Wb(b,S,2,c)|0)==2?(Ab(S,d,2),(k[d>>2]|0)==65359):0){k[W>>2]=2;n=Zb(b)|0;n=aj(n|0,L|0,-2,-1)|0;m=L;V=a+196|0;e=k[V>>2]|0;k[e>>2]=n;k[e+4>>2]=m;e=N;k[e>>2]=n;k[e+4>>2]=m;cc(c,4,15766,N)|0;e=k[V>>2]|0;m=k[e>>2]|0;n=e+24|0;d=k[n>>2]|0;g=e+32|0;f=k[g>>2]|0;do if((d+1|0)>>>0>f>>>0){t=~~(+(f>>>0)+100.0)>>>0;k[g>>2]=t;d=e+28|0;e=bd(k[d>>2]|0,t*24|0)|0;if(!e){cd(k[d>>2]|0);k[d>>2]=0;k[g>>2]=0;k[n>>2]=0;cc(c,1,15803,h)|0;break a}else{k[d>>2]=e;d=k[n>>2]|0;break}}else e=k[e+28>>2]|0;while(0);j[e+(d*24|0)>>1]=-177;s=Zi(0,m|0,32)|0;t=e+(d*24|0)+8|0;k[t>>2]=s;k[t+4>>2]=L;k[e+(d*24|0)+16>>2]=2;k[n>>2]=d+1;t=a+16|0;if((Wb(b,k[t>>2]|0,2,c)|0)!=2){cc(c,1,8295,o)|0;c=0;r=Y;return c|0}Ab(k[t>>2]|0,F,2);d=k[F>>2]|0;if((d|0)!=65424){s=a+20|0;p=0;f=0;q=0;b:while(1){if(d>>>0<65280){R=14;break}else h=784;while(1){e=k[h>>2]|0;g=(e|0)==0;if(g|(e|0)==(d|0))break;else h=h+12|0}if(g){cc(c,2,15914,v)|0;l=2;c:while(1){do{if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=20;break b}Ab(k[t>>2]|0,N,2);d=k[N>>2]|0}while(d>>>0<65280);h=784;while(1){e=k[h>>2]|0;if((e|0)==0|(e|0)==(d|0)){g=h;d=h;break}else h=h+12|0}if(!(k[d+4>>2]&k[W>>2])){R=25;break b}if((e|0)>=65424){R=100;break}switch(e|0){case 0:break;default:{o=g;n=l;break c}}l=l+2|0}if((R|0)==100){R=0;switch(e|0){case 65424:{e=p;d=q;R=27;break b}default:{o=g;n=l}}}h=k[V>>2]|0;m=Zb(b)|0;m=m-n|0;g=h+24|0;d=k[g>>2]|0;e=h+32|0;l=k[e>>2]|0;if((d+1|0)>>>0>l>>>0){d=~~(+(l>>>0)+100.0)>>>0;k[e>>2]=d;h=h+28|0;d=bd(k[h>>2]|0,d*24|0)|0;if(!d){f=h;d=h;R=32;break}k[h>>2]=d;e=d;d=k[g>>2]|0}else e=k[h+28>>2]|0;j[e+(d*24|0)>>1]=0;l=e+(d*24|0)+8|0;k[l>>2]=m;k[l+4>>2]=((m|0)<0)<<31>>31;k[e+(d*24|0)+16>>2]=n;k[g>>2]=d+1;d=k[o>>2]|0;k[F>>2]=d;if((d|0)==65424){e=p;d=q;break}else g=784;while(1){e=k[g>>2]|0;if((e|0)==0|(e|0)==(d|0))break;else g=g+12|0}}else g=h;q=(e|0)==65361?1:q;p=(e|0)==65362?1:p;f=(e|0)==65372?1:f;if(!(k[g+4>>2]&k[W>>2])){R=38;break}if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=40;break}Ab(k[t>>2]|0,u,2);e=(k[u>>2]|0)+-2|0;k[u>>2]=e;d=k[t>>2]|0;if(e>>>0>(k[s>>2]|0)>>>0){d=bd(d,e)|0;if(!d){R=43;break}k[t>>2]=d;e=k[u>>2]|0;k[s>>2]=e}d=Wb(b,d,e,c)|0;if((d|0)!=(k[u>>2]|0)){R=46;break}if(!(hb[k[g+8>>2]&63](a,k[t>>2]|0,d,c)|0)){R=48;break}l=k[V>>2]|0;m=k[g>>2]|0;n=Zb(b)|0;o=k[u>>2]|0;n=-4-o+n|0;o=o+4|0;g=l+24|0;d=k[g>>2]|0;e=l+32|0;h=k[e>>2]|0;if((d+1|0)>>>0>h>>>0){d=~~(+(h>>>0)+100.0)>>>0;k[e>>2]=d;h=l+28|0;d=bd(k[h>>2]|0,d*24|0)|0;if(!d){f=h;d=h;R=53;break}k[h>>2]=d;e=d;d=k[g>>2]|0}else e=k[l+28>>2]|0;j[e+(d*24|0)>>1]=m;m=e+(d*24|0)+8|0;k[m>>2]=n;k[m+4>>2]=((n|0)<0)<<31>>31;k[e+(d*24|0)+16>>2]=o;k[g>>2]=d+1;if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=55;break}Ab(k[t>>2]|0,F,2);d=k[F>>2]|0;if((d|0)==65424){e=p;d=q;break}}switch(R|0){case 14:{k[E>>2]=d;cc(c,1,15863,E)|0;c=0;r=Y;return c|0}case 20:{cc(c,1,8295,w)|0;R=34;break}case 25:{cc(c,1,8339,x)|0;R=34;break}case 27:{k[F>>2]=65424;break}case 32:{cd(k[d>>2]|0);k[f>>2]=0;k[e>>2]=0;k[g>>2]=0;cc(c,1,15803,G)|0;R=34;break}case 38:{cc(c,1,8339,y)|0;c=0;r=Y;return c|0}case 40:{cc(c,1,8295,z)|0;c=0;r=Y;return c|0}case 43:{cd(k[t>>2]|0);k[t>>2]=0;k[s>>2]=0;cc(c,1,8427,A)|0;c=0;r=Y;return c|0}case 46:{cc(c,1,8295,B)|0;c=0;r=Y;return c|0}case 48:{cc(c,1,15985,C)|0;c=0;r=Y;return c|0}case 53:{cd(k[d>>2]|0);k[f>>2]=0;k[e>>2]=0;k[g>>2]=0;cc(c,1,15803,I)|0;c=0;r=Y;return c|0}case 55:{cc(c,1,8295,D)|0;c=0;r=Y;return c|0}}if((R|0)==34){cc(c,1,15930,H)|0;c=0;r=Y;return c|0}if(d){if(!e){cc(c,1,16090,K)|0;c=0;r=Y;return c|0}if(!f){cc(c,1,16136,M)|0;c=0;r=Y;return c|0}d:do if(i[a+184>>0]&1){s=a+120|0;do if(k[s>>2]|0){m=a+124|0;n=0;d=0;e=0;e:do{f=k[m>>2]|0;g=k[f+(n<<3)>>2]|0;f:do if(g){h=k[f+(n<<3)+4>>2]|0;f=d>>>0<h>>>0;l=f?0:d-h|0;if((h|0)==(d|0)|f^1)d=l;else{g=f?g+d|0:g;d=h-d|0;while(1){if(d>>>0<4){R=70;break e}Ab(g,N,4);f=d+-4|0;d=k[N>>2]|0;e=d+e|0;if(f>>>0<d>>>0)break;if((f|0)==(d|0)){d=l;break f}else{g=g+(d+4)|0;d=f-d|0}}d=d-f|0}}while(0);n=n+1|0}while(n>>>0<(k[s>>2]|0)>>>0);if((R|0)==70){cc(c,1,16182,O)|0;break}if(!d)R=77;else cc(c,1,16213,P)|0}else{e=0;R=77}while(0);g:do if((R|0)==77){f=Zc(e)|0;o=a+144|0;k[o>>2]=f;if(!f){cc(c,1,13302,Q)|0;break}p=a+132|0;k[p>>2]=e;g=k[s>>2]|0;q=a+124|0;do if(g){d=k[q>>2]|0;f=d;n=0;m=0;e=0;h:while(1){h=k[f+(n<<3)>>2]|0;if(!h)h=m;else{f=k[f+(n<<3)+4>>2]|0;d=(k[o>>2]|0)+e|0;i:do if(m>>>0<f>>>0){cj(d|0,h|0,m|0)|0;e=e+m|0;if((f|0)==(m|0)){h=0;break}l=h+m|0;d=f-m|0;while(1){if(d>>>0<4){R=88;break h}Ab(l,S,4);h=l+4|0;g=d+-4|0;f=k[S>>2]|0;d=(k[o>>2]|0)+e|0;if(g>>>0<f>>>0){f=h;break}cj(d|0,h|0,f|0)|0;d=k[S>>2]|0;e=d+e|0;if((g|0)==(d|0)){h=0;break i}else{l=l+(d+4)|0;d=g-d|0}}cj(d|0,f|0,g|0)|0;h=(k[S>>2]|0)-g|0;e=g+e|0}else{cj(d|0,h|0,f|0)|0;h=m-f|0;e=f+e|0}while(0);cd(k[(k[q>>2]|0)+(n<<3)>>2]|0);f=k[q>>2]|0;k[f+(n<<3)>>2]=0;k[f+(n<<3)+4>>2]=0;g=k[s>>2]|0;d=f}n=n+1|0;if(n>>>0>=g>>>0){R=94;break}else m=h}if((R|0)==88){cc(c,1,16182,T)|0;break g}else if((R|0)==94){f=k[o>>2]|0;e=k[p>>2]|0;break}}else d=k[q>>2]|0;while(0);k[a+128>>2]=f;k[a+152>>2]=e;k[s>>2]=0;cd(d);k[q>>2]=0;break d}while(0);cc(c,1,16236,U)|0;c=0;r=Y;return c|0}while(0);cc(c,4,16262,X)|0;X=Zb(b)|0;c=(k[V>>2]|0)+8|0;k[c>>2]=X+-2;k[c+4>>2]=0;k[W>>2]=8;c=1;r=Y;return c|0}}cc(c,1,16044,J)|0;c=0;r=Y;return c|0}while(0);cc(c,1,15839,l)|0;c=0;r=Y;return c|0}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=r;r=r+16|0;F=G;D=k[a+80>>2]|0;E=a+88|0;A=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;p=k[D+16>>2]|0;n=p*1080|0;o=k[a+12>>2]|0;p=ha(p<<2,p)|0;a:do if(A){q=o+5604|0;s=o+5620|0;t=o+5612|0;u=o+5616|0;v=o+5632|0;w=o+5624|0;x=o+5584|0;B=0;C=k[a+164>>2]|0;b:while(1){h=C+5584|0;y=k[h>>2]|0;cj(C|0,o|0,5640)|0;b=C+5636|0;i[b>>0]=i[b>>0]&-4;k[C+5168>>2]=0;b=C+5604|0;k[b>>2]=0;j=C+5620|0;k[j>>2]=0;z=C+5612|0;k[z>>2]=0;l=C+5632|0;k[l>>2]=0;m=C+5624|0;k[m>>2]=0;k[h>>2]=y;if(k[q>>2]|0){d=Zc(p)|0;k[b>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[q>>2]|0,p|0)|0}b=(k[s>>2]|0)*20|0;d=Zc(b)|0;k[z>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[t>>2]|0,b|0)|0;b=k[u>>2]|0;if(b){f=0;g=k[z>>2]|0;h=k[t>>2]|0;while(1){e=h+12|0;if(k[e>>2]|0){b=h+16|0;d=Zc(k[b>>2]|0)|0;k[g+12>>2]=d;if(!d){b=0;d=25;break b}cj(d|0,k[e>>2]|0,k[b>>2]|0)|0;b=k[u>>2]|0}k[j>>2]=(k[j>>2]|0)+1;f=f+1|0;if(f>>>0>=b>>>0)break;else{g=g+20|0;h=h+20|0}}}b=(k[v>>2]|0)*20|0;d=Zc(b)|0;k[m>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[w>>2]|0,b|0)|0;k[l>>2]=k[v>>2];f=k[v>>2]|0;if(f){g=0;d=k[m>>2]|0;e=k[w>>2]|0;while(1){b=k[e+8>>2]|0;if(b)k[d+8>>2]=(k[z>>2]|0)+(((b-(k[t>>2]|0)|0)/20|0)*20|0);b=k[e+12>>2]|0;if(b)k[d+12>>2]=(k[z>>2]|0)+(((b-(k[t>>2]|0)|0)/20|0)*20|0);g=g+1|0;if(g>>>0>=f>>>0)break;else{d=d+20|0;e=e+20|0}}}cj(y|0,k[x>>2]|0,n|0)|0;B=B+1|0;if(B>>>0>=A>>>0)break a;else C=C+5640|0}if((d|0)==25){r=G;return b|0}}while(0);d=bg(1)|0;b=a+204|0;k[b>>2]=d;if(!d){c=0;r=G;return c|0}if(fg(d,D,E)|0){c=1;r=G;return c|0}gg(k[b>>2]|0);k[b>>2]=0;cc(c,1,8839,F)|0;c=0;r=G;return c|0}function Hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;w=r;r=r+128|0;u=w+120|0;t=w+112|0;s=w+104|0;q=w+96|0;p=w+88|0;o=w+80|0;n=w+72|0;m=w+64|0;l=w+56|0;j=w+48|0;i=w+40|0;h=w+32|0;g=w+24|0;f=w+16|0;e=w+8|0;d=w;if(!a){r=w;return}ui(12191,17,1,c)|0;k[d>>2]=k[a>>2];ji(c,12209,d)|0;k[e>>2]=k[a+4>>2];ji(c,12222,e)|0;k[f>>2]=k[a+8>>2];ji(c,12234,f)|0;k[g>>2]=k[a+16>>2];ji(c,12251,g)|0;if((b|0)>0){f=a+5584|0;g=0;do{e=k[f>>2]|0;k[h>>2]=g;ji(c,12262,h)|0;k[i>>2]=k[e+(g*1080|0)>>2];ji(c,12276,i)|0;a=e+(g*1080|0)+4|0;k[j>>2]=k[a>>2];ji(c,12290,j)|0;k[l>>2]=k[e+(g*1080|0)+8>>2];ji(c,12313,l)|0;k[m>>2]=k[e+(g*1080|0)+12>>2];ji(c,12329,m)|0;k[n>>2]=k[e+(g*1080|0)+16>>2];ji(c,12345,n)|0;k[o>>2]=k[e+(g*1080|0)+20>>2];ji(c,12362,o)|0;ui(12377,23,1,c)|0;if(k[a>>2]|0){d=0;do{x=k[e+(g*1080|0)+944+(d<<2)>>2]|0;k[p>>2]=k[e+(g*1080|0)+812+(d<<2)>>2];k[p+4>>2]=x;ji(c,12401,p)|0;d=d+1|0}while(d>>>0<(k[a>>2]|0)>>>0)}ki(10,c)|0;x=e+(g*1080|0)+24|0;k[q>>2]=k[x>>2];ji(c,12410,q)|0;k[s>>2]=k[e+(g*1080|0)+804>>2];ji(c,12425,s)|0;ui(12442,20,1,c)|0;if((k[x>>2]|0)!=1){a=(k[a>>2]|0)*3|0;if((a|0)>2){a=a+-2|0;v=8}}else{a=1;v=8}if((v|0)==8){v=0;d=0;do{x=k[e+(g*1080|0)+28+(d<<3)>>2]|0;k[t>>2]=k[e+(g*1080|0)+28+(d<<3)+4>>2];k[t+4>>2]=x;ji(c,12401,t)|0;d=d+1|0}while((d|0)!=(a|0))}ki(10,c)|0;k[u>>2]=k[e+(g*1080|0)+808>>2];ji(c,12463,u)|0;ui(12480,5,1,c)|0;g=g+1|0}while((g|0)!=(b|0))}ui(10321,4,1,c)|0;r=w;return}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+80|0;u=B+32|0;v=B+24|0;y=B+16|0;x=B+8|0;n=B+64|0;w=B+60|0;m=B+56|0;p=B+52|0;s=B+48|0;q=B+44|0;t=B+40|0;o=B+36|0;k[n>>2]=1;d=Zc(1e3)|0;if(!d){cc(c,1,12127,B)|0;c=0;r=B;return c|0}z=a+116|0;A=a+112|0;i=a+204|0;j=a+84|0;l=a+8|0;e=1e3;h=0;while(1){if(!(md(a,w,m,p,s,q,t,o,n,b,c)|0)){f=5;break}if(!(k[n>>2]|0)){f=17;break}g=k[m>>2]|0;if(g>>>0>e>>>0){e=bd(d,g)|0;if(!e){f=9;break}else{d=e;f=g}}else f=e;e=k[w>>2]|0;if(!(nd(a,e,d,g,b,c)|0)){f=11;break}e=e+1|0;g=ha(k[A>>2]|0,k[z>>2]|0)|0;k[v>>2]=e;k[v+4>>2]=g;cc(c,4,11986,v)|0;g=k[i>>2]|0;if(!(me(k[(k[k[g+20>>2]>>2]|0)+20>>2]|0,k[g+24>>2]|0,d,k[(k[j>>2]|0)+24>>2]|0)|0)){f=13;break}k[u>>2]=e;cc(c,4,12016,u)|0;g=_b(b)|0;if((g|0)==0&(L|0)==0?(k[l>>2]|0)==64:0){f=17;break}h=h+1|0;if((h|0)==(ha(k[A>>2]|0,k[z>>2]|0)|0)){f=17;break}else e=f}if((f|0)==5){cd(d);c=0;r=B;return c|0}else if((f|0)==9){cd(d);A=ha(k[A>>2]|0,k[z>>2]|0)|0;k[x>>2]=(k[w>>2]|0)+1;k[x+4>>2]=A;cc(c,1,11946,x)|0;c=0;r=B;return c|0}else if((f|0)==11){cd(d);A=ha(k[A>>2]|0,k[z>>2]|0)|0;k[y>>2]=e+1;k[y+4>>2]=A;cc(c,1,12162,y)|0;c=0;r=B;return c|0}else if((f|0)==13){cd(d);c=0;r=B;return c|0}else if((f|0)==17){cd(d);c=1;r=B;return c|0}return 0}function Jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+96|0;y=F+56|0;C=F+48|0;x=F+40|0;z=F+32|0;D=F+24|0;i=F+16|0;h=F+8|0;q=F+92|0;B=F+88|0;p=F+84|0;t=F+80|0;v=F+76|0;u=F+72|0;w=F+68|0;s=F+64|0;k[q>>2]=1;d=Zc(1e3)|0;if(!d){cc(c,1,11880,F)|0;E=0;r=F;return E|0}A=a+196|0;f=k[A>>2]|0;e=k[f+40>>2]|0;a:do if(!e){e=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[f+36>>2]=e;e=_c(e,40)|0;f=k[A>>2]|0;k[f+40>>2]=e;b:do if(e){if(k[f+36>>2]|0){g=0;do{k[e+(g*40|0)+28>>2]=100;k[e+(g*40|0)+20>>2]=0;o=_c(100,24)|0;f=k[A>>2]|0;e=k[f+40>>2]|0;k[e+(g*40|0)+24>>2]=o;g=g+1|0;if(!o)break b}while(g>>>0<(k[f+36>>2]|0)>>>0)}f=k[a+60>>2]|0;if(!e)break a;else{E=12;break a}}while(0);cd(d);E=0;r=F;return E|0}else{f=k[a+60>>2]|0;E=12}while(0);if((E|0)==12)if(k[e+16>>2]|0){if(!(k[e+(f*40|0)+4>>2]|0)){o=a+64|0;o=aj(k[o>>2]|0,k[o+4>>2]|0,2,0)|0;if(!(Hb(b,o,L,c)|0)){cc(c,1,11918,h)|0;cd(d);E=0;r=F;return E|0}}else{o=k[e+(f*40|0)+16>>2]|0;o=aj(k[o>>2]|0,k[o+4>>2]|0,2,0)|0;if(!(Hb(b,o,L,c)|0)){cc(c,1,11918,i)|0;cd(d);E=0;r=F;return E|0}}e=a+8|0;if((k[e>>2]|0)==256)k[e>>2]=8}c:do if(md(a,B,p,t,v,u,w,s,q,b,c)|0){n=a+116|0;o=a+112|0;j=a+204|0;l=a+84|0;m=f+1|0;e=1e3;while(1){if(!(k[q>>2]|0))break;i=k[p>>2]|0;if(i>>>0>e>>>0){e=bd(d,i)|0;if(!e){E=26;break}else{d=e;h=i}}else h=e;g=k[B>>2]|0;if(!(nd(a,g,d,i,b,c)|0)){E=28;break}e=g+1|0;i=ha(k[o>>2]|0,k[n>>2]|0)|0;k[z>>2]=e;k[z+4>>2]=i;cc(c,4,11986,z)|0;i=k[j>>2]|0;if(!(me(k[(k[k[i+20>>2]>>2]|0)+20>>2]|0,k[i+24>>2]|0,d,k[(k[l>>2]|0)+24>>2]|0)|0)){E=30;break}k[x>>2]=e;cc(c,4,12016,x)|0;if((g|0)==(f|0)){E=32;break}k[y>>2]=e;k[y+4>>2]=m;cc(c,2,12060,y)|0;if(!(md(a,B,p,t,v,u,w,s,q,b,c)|0))break c;else e=h}if((E|0)==26){cd(d);E=ha(k[o>>2]|0,k[n>>2]|0)|0;k[D>>2]=(k[B>>2]|0)+1;k[D+4>>2]=E;cc(c,1,11946,D)|0;E=0;r=F;return E|0}else if((E|0)==28){cd(d);E=0;r=F;return E|0}else if((E|0)==30){cd(d);E=0;r=F;return E|0}else if((E|0)==32){E=(k[A>>2]|0)+8|0;E=aj(k[E>>2]|0,k[E+4>>2]|0,2,0)|0;if(!(Hb(b,E,L,c)|0)){cc(c,1,11918,C)|0;cd(d);E=0;r=F;return E|0}}cd(d);E=1;r=F;return E|0}while(0);cd(d);E=0;r=F;return E|0}function Kd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=r;r=r+32|0;D=H+16|0;t=H+8|0;i=H;C=H+20|0;E=k[a+40>>2]|0;G=a+36|0;m=k[G>>2]|0;n=a+204|0;h=k[n>>2]|0;k[h+16>>2]=0;B=a+8|0;k[B>>2]=0;k[C>>2]=0;zb(m,65424,2);zb(m+2|0,10,2);F=a+200|0;zb(m+4|0,k[F>>2]|0,2);z=a+12|0;zb(m+10|0,k[z>>2]|0,1);A=a+164|0;zb(m+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=12;f=m+12|0;d=E+-12|0;l=a+88|0;if(((j[l>>1]|0)+-3&65535)>=4?(e=k[F>>2]|0,g=k[A>>2]|0,(k[g+(e*5640|0)+420>>2]|0)!=0):0){k[C>>2]=0;ie(k[(k[a+80>>2]|0)+16>>2]|0,g,e,f,C);y=k[C>>2]|0;e=y+12|0;f=m+e|0;d=d-y|0}else e=12;k[C>>2]=0;zb(f,65427,2);k[h+4>>2]=k[B>>2];y=k[z>>2]|0;k[h+8>>2]=y;if(!y)k[(k[k[h+20>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(h,k[F>>2]|0,f+2|0,C,d+-4|0,0)|0)){cc(c,1,11860,i)|0;b=0;r=H;return b|0}d=(k[C>>2]|0)+2|0;k[C>>2]=d;d=d+e|0;zb(m+6|0,d,4);if(((j[l>>1]|0)+-3&65535)<4){y=a+28|0;zb(k[y>>2]|0,k[F>>2]|0,1);x=(k[y>>2]|0)+1|0;k[y>>2]=x;zb(x,d,4);k[y>>2]=(k[y>>2]|0)+4}e=m+d|0;y=E-d|0;v=k[n>>2]|0;w=a+88|0;q=k[A>>2]|0;s=k[F>>2]|0;l=le(w,0,s)|0;x=a+8|0;k[z>>2]=(k[z>>2]|0)+1;a:do if(l>>>0>1){m=v+4|0;n=v+8|0;o=v+20|0;p=a+28|0;g=e;e=y;d=0;i=1;while(1){k[x>>2]=i;k[C>>2]=0;zb(g,65424,2);zb(g+2|0,10,2);zb(g+4|0,k[F>>2]|0,2);zb(g+10|0,k[z>>2]|0,1);zb(g+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=0;zb(g+12|0,65427,2);k[m>>2]=k[B>>2];h=k[z>>2]|0;k[n>>2]=h;if(!h)k[(k[k[o>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(v,k[F>>2]|0,g+14|0,C,e+-16|0,0)|0))break;I=k[C>>2]|0;J=I+2|0;k[C>>2]=J;h=I+14|0;f=g+h|0;d=d+12+J|0;e=e+-12+(-2-I)|0;zb(g+6|0,h,4);if(((j[w>>1]|0)+-3&65535)<4){zb(k[p>>2]|0,k[F>>2]|0,1);J=(k[p>>2]|0)+1|0;k[p>>2]=J;zb(J,h,4);k[p>>2]=(k[p>>2]|0)+4}k[z>>2]=(k[z>>2]|0)+1;i=i+1|0;if(i>>>0>=l>>>0){u=12;break a}else g=f}cc(c,1,11860,t)|0}else{f=e;e=y;d=0;u=12}while(0);b:do if((u|0)==12){o=q+(s*5640|0)+420|0;c:do if(k[o>>2]|0){p=v+16|0;q=v+4|0;s=v+8|0;t=v+20|0;n=a+28|0;m=1;d:while(1){k[p>>2]=m;l=le(w,m,k[F>>2]|0)|0;if(l){i=0;while(1){k[x>>2]=i;k[C>>2]=0;zb(f,65424,2);zb(f+2|0,10,2);zb(f+4|0,k[F>>2]|0,2);zb(f+10|0,k[z>>2]|0,1);zb(f+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=0;zb(f+12|0,65427,2);k[q>>2]=k[B>>2];J=k[z>>2]|0;k[s>>2]=J;if(!J)k[(k[k[t>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(v,k[F>>2]|0,f+14|0,C,e+-16|0,0)|0))break d;J=k[C>>2]|0;g=J+2|0;k[C>>2]=g;d=d+12+g|0;g=J+14|0;h=f+g|0;e=e+-12+(-2-J)|0;zb(f+6|0,g,4);if(((j[w>>1]|0)+-3&65535)<4){zb(k[n>>2]|0,k[F>>2]|0,1);J=(k[n>>2]|0)+1|0;k[n>>2]=J;zb(J,g,4);k[n>>2]=(k[n>>2]|0)+4}k[z>>2]=(k[z>>2]|0)+1;i=i+1|0;if(i>>>0>=l>>>0){f=h;break}else f=h}}m=m+1|0;if(m>>>0>(k[o>>2]|0)>>>0)break c}cc(c,1,11860,D)|0;break b}while(0);J=d-y+E|0;if((Xb(b,k[G>>2]|0,J,c)|0)!=(J|0)){J=0;r=H;return J|0}k[F>>2]=(k[F>>2]|0)+1;J=1;r=H;return J|0}while(0);J=0;r=H;return J|0}function Ld(a,b,c){a=a|0;b=b|0;c=c|0;a=a+44|0;zb(k[a>>2]|0,65497,2);if((Xb(b,k[a>>2]|0,2,c)|0)!=2){b=0;return b|0}b=(Yb(b,c)|0)!=0&1;return b|0}function Md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(k[a+32>>2]|0)*5|0;h=a+16|0;h=aj(k[h>>2]|0,k[h+4>>2]|0,6,0)|0;g=L;d=Zb(b)|0;e=L;if(!(ac(b,h,g,c)|0)){h=0;return h|0}if((Xb(b,k[a+24>>2]|0,f,c)|0)!=(f|0)){h=0;return h|0}h=(ac(b,d,e,c)|0)!=0&1;return h|0}function Nd(a,b,c){a=a|0;b=b|0;c=c|0;a=k[a+196>>2]|0;if(!a)return 1;b=Zb(b)|0;c=a;c=Yi(b|0,L|0,k[c>>2]|0,k[c+4>>2]|0)|0;b=a+16|0;k[b>>2]=c;k[b+4>>2]=L;return 1}function Od(a,b,c){a=a|0;b=b|0;c=c|0;c=a+204|0;gg(k[c>>2]|0);k[c>>2]=0;c=a+24|0;b=k[c>>2]|0;if(b){cd(b);k[c>>2]=0;k[a+28>>2]=0}c=a+36|0;b=k[c>>2]|0;if(!b){a=a+40|0;k[a>>2]=0;return 1}cd(b);k[c>>2]=0;a=a+40|0;k[a>>2]=0;return 1}function Pd(a,b,c){a=a|0;b=b|0;c=c|0;c=a+44|0;b=k[c>>2]|0;if(b){cd(b);k[c>>2]=0}k[a+48>>2]=0;return 1}function Qd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+32|0;d=(k[a+8>>2]|0)==0&(k[a+188>>2]|0)!=0&(k[a+192>>2]|0)!=0&1;b=(k[(k[(k[a+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(b>>>0>31){cc(c,1,11790,e)|0;c=0;r=e;return c|0}b=1<<b;if((k[a+100>>2]|0)>>>0<b>>>0){cc(c,1,11790,e+8|0)|0;c=0;r=e;return c|0}if((k[a+104>>2]|0)>>>0>=b>>>0){c=d;r=e;return c|0}cc(c,1,11790,e+16|0)|0;c=0;r=e;return c|0}function Sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;if((j[a+88>>1]&-32256)<<16>>16!=-32256){h=1;return h|0}g=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;if(!g){h=1;return h|0}f=a+80|0;h=0;c=1;e=k[a+164>>2]|0;while(1){if((k[e+16>>2]|0)==2){c=(k[e+5608>>2]|0)!=0&c;a=k[(k[f>>2]|0)+16>>2]|0;if(a){d=0;b=k[e+5584>>2]|0;while(1){c=(k[b+20>>2]&1^1)&c;d=d+1|0;if(d>>>0>=a>>>0)break;else b=b+1080|0}}}h=h+1|0;if((h|0)==(g|0))break;else e=e+5640|0}return c|0}function Td(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+88|0;g=a+32|0;h=k[a+80>>2]|0;i=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[g>>2]=0;if(!i)return 1;d=k[a+164>>2]|0;e=0;while(1){Xf(h,f,e);b=d+420|0;c=0;a=0;do{j=le(f,a,e)|0;k[g>>2]=(k[g>>2]|0)+j;c=j+c|0;a=a+1|0}while(a>>>0<=(k[b>>2]|0)>>>0);k[d+5588>>2]=c;e=e+1|0;if((e|0)==(i|0))break;else d=d+5640|0}return 1}function Ud(a,b,c){a=a|0;b=b|0;c=c|0;a=k[a+44>>2]|0;zb(a,65359,2);return (Xb(b,a,2,c)|0)==2|0}function Vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0;o=r;r=r+16|0;g=o;h=k[a+80>>2]|0;l=h+16|0;i=(k[l>>2]|0)*3|0;n=i+40|0;d=k[h+24>>2]|0;f=a+48|0;j=a+44|0;e=k[j>>2]|0;do if(n>>>0>(k[f>>2]|0)>>>0){e=bd(e,n)|0;if(e){k[j>>2]=e;k[f>>2]=n;break}cd(k[j>>2]|0);k[j>>2]=0;k[f>>2]=0;cc(c,1,11752,g)|0;b=0;r=o;return b|0}while(0);zb(e,65361,2);zb(e+2|0,i+38|0,2);zb(e+4|0,m[a+88>>1]|0,2);zb(e+6|0,k[h+8>>2]|0,4);zb(e+10|0,k[h+12>>2]|0,4);zb(e+14|0,k[h>>2]|0,4);zb(e+18|0,k[h+4>>2]|0,4);zb(e+22|0,k[a+100>>2]|0,4);zb(e+26|0,k[a+104>>2]|0,4);zb(e+30|0,k[a+92>>2]|0,4);zb(e+34|0,k[a+96>>2]|0,4);zb(e+38|0,k[l>>2]|0,2);if(k[l>>2]|0){f=0;e=e+40|0;while(1){zb(e,(k[d+24>>2]|0)+-1+(k[d+32>>2]<<7)|0,1);zb(e+1|0,k[d>>2]|0,1);zb(e+2|0,k[d+4>>2]|0,1);f=f+1|0;if(f>>>0>=(k[l>>2]|0)>>>0)break;else{e=e+3|0;d=d+52|0}}}b=(Xb(b,k[j>>2]|0,n,c)|0)==(n|0)&1;r=o;return b|0}function Wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+32|0;p=q+16|0;o=q+8|0;h=q;n=q+20|0;i=a+200|0;j=k[i>>2]|0;l=a+164|0;m=k[l>>2]|0;d=k[m+(j*5640|0)+5584>>2]|0;if(!(k[d>>2]&1))f=5;else f=(k[d+4>>2]|0)+5|0;g=f+9|0;k[n>>2]=g;e=a+48|0;a=a+44|0;d=k[a>>2]|0;do if(g>>>0>(k[e>>2]|0)>>>0){d=bd(d,g)|0;if(d){k[a>>2]=d;k[e>>2]=g;break}cd(k[a>>2]|0);k[a>>2]=0;k[e>>2]=0;cc(c,1,11687,h)|0;p=0;r=q;return p|0}while(0);zb(d,65362,2);zb(d+2|0,f+7|0,2);zb(d+4|0,k[m+(j*5640|0)>>2]|0,1);zb(d+5|0,k[m+(j*5640|0)+4>>2]|0,1);zb(d+6|0,k[m+(j*5640|0)+8>>2]|0,2);zb(d+8|0,k[m+(j*5640|0)+16>>2]|0,1);k[n>>2]=f;if(!(ke(k[l>>2]|0,k[i>>2]|0,d+9|0,n,c)|0)){cc(c,1,11726,o)|0;p=0;r=q;return p|0}if(!(k[n>>2]|0)){p=(Xb(b,k[a>>2]|0,g,c)|0)==(g|0)&1;r=q;return p|0}else{cc(c,1,11726,p)|0;p=0;r=q;return p|0}return 0}function Xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;n=o+16|0;m=o+8|0;h=o;j=o+20|0;i=a+200|0;l=a+164|0;d=k[(k[l>>2]|0)+((k[i>>2]|0)*5640|0)+5584>>2]|0;e=k[d+24>>2]|0;if((e|0)==1)d=1;else d=((k[d+4>>2]|0)*3|0)+-2|0;f=(e|0)==0?d+1|0:d<<1|1;g=f+4|0;k[j>>2]=g;e=a+48|0;a=a+44|0;d=k[a>>2]|0;do if(g>>>0>(k[e>>2]|0)>>>0){d=bd(d,g)|0;if(d){k[a>>2]=d;k[e>>2]=g;break}cd(k[a>>2]|0);k[a>>2]=0;k[e>>2]=0;cc(c,1,11622,h)|0;n=0;r=o;return n|0}while(0);zb(d,65372,2);zb(d+2|0,f+2|0,2);k[j>>2]=f;if(!(je(k[l>>2]|0,k[i>>2]|0,0,d+4|0,j,c)|0)){cc(c,1,11661,m)|0;n=0;r=o;return n|0}if(!(k[j>>2]|0)){n=(Xb(b,k[a>>2]|0,g,c)|0)==(g|0)&1;r=o;return n|0}else{cc(c,1,11661,n)|0;n=0;r=o;return n|0}return 0}function Yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;u=w;q=w+4|0;n=a+80|0;d=k[(k[n>>2]|0)+16>>2]|0;if(d>>>0<=1){v=1;r=w;return v|0}s=a+164|0;t=a+200|0;p=a+48|0;m=a+44|0;l=1;while(1){g=k[s>>2]|0;i=k[t>>2]|0;f=k[g+(i*5640|0)+5584>>2]|0;h=k[f+(l*1080|0)>>2]|0;a:do if((((((k[f>>2]|0)==(h|0)?(o=k[f+4>>2]|0,(o|0)==(k[f+(l*1080|0)+4>>2]|0)):0)?(k[f+8>>2]|0)==(k[f+(l*1080|0)+8>>2]|0):0)?(k[f+12>>2]|0)==(k[f+(l*1080|0)+12>>2]|0):0)?(k[f+16>>2]|0)==(k[f+(l*1080|0)+16>>2]|0):0)?(k[f+20>>2]|0)==(k[f+(l*1080|0)+20>>2]|0):0){if(o){a=0;do{if((k[f+812+(a<<2)>>2]|0)!=(k[f+(l*1080|0)+812+(a<<2)>>2]|0)){v=13;break a}if((k[f+944+(a<<2)>>2]|0)!=(k[f+(l*1080|0)+944+(a<<2)>>2]|0)){v=13;break a}a=a+1|0}while(a>>>0<o>>>0)}}else v=13;while(0);if((v|0)==13){v=0;if(!(h&1))a=5;else a=(k[f+(l*1080|0)+4>>2]|0)+5|0;j=a+(d>>>0<257?6:7)|0;e=k[m>>2]|0;if(j>>>0>(k[p>>2]|0)>>>0){a=bd(e,j)|0;if(!a){v=17;break}k[m>>2]=a;k[p>>2]=j;i=k[t>>2]|0;g=k[s>>2]|0;f=k[g+(i*5640|0)+5584>>2]|0;d=k[(k[n>>2]|0)+16>>2]|0;h=k[f+(l*1080|0)>>2]|0;e=a}d=d>>>0<257?1:2;if(!(h&1))a=5;else a=(k[f+(l*1080|0)+4>>2]|0)+5|0;zb(e,65363,2);zb(e+2|0,d+3+a|0,2);zb(e+4|0,l,d);h=d|4;zb(e+h|0,k[(k[g+(i*5640|0)+5584>>2]|0)+(l*1080|0)>>2]|0,1);k[q>>2]=a;ke(k[s>>2]|0,k[t>>2]|0,e+(h+1)|0,q,c)|0;if((Xb(b,k[m>>2]|0,j,c)|0)!=(j|0)){a=0;v=24;break}d=k[(k[n>>2]|0)+16>>2]|0}l=l+1|0;if(l>>>0>=d>>>0){a=1;v=24;break}}if((v|0)==17){cd(k[m>>2]|0);k[m>>2]=0;k[p>>2]=0;cc(c,1,11548,u)|0;v=0;r=w;return v|0}else if((v|0)==24){r=w;return a|0}return 0}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+16|0;q=t;n=t+4|0;l=a+80|0;d=k[(k[l>>2]|0)+16>>2]|0;if(d>>>0<=1){s=1;r=t;return s|0}o=a+164|0;p=a+200|0;m=a+48|0;j=a+44|0;i=1;while(1){h=k[(k[o>>2]|0)+((k[p>>2]|0)*5640|0)+5584>>2]|0;f=k[h+24>>2]|0;g=k[h+(i*1080|0)+24>>2]|0;a:do if((f|0)==(g|0)?(k[h+804>>2]|0)==(k[h+(i*1080|0)+804>>2]|0):0){if((f|0)!=1){e=(k[h+4>>2]|0)*3|0;a=e+-2|0;if((e|0)!=((k[h+(i*1080|0)+4>>2]|0)*3|0)){s=14;break}if(!a)break}else a=1;e=0;do{if((k[h+28+(e<<3)>>2]|0)!=(k[h+(i*1080|0)+28+(e<<3)>>2]|0)){s=14;break a}e=e+1|0}while(e>>>0<a>>>0);if(f){e=0;do{if((k[h+28+(e<<3)+4>>2]|0)!=(k[h+(i*1080|0)+28+(e<<3)+4>>2]|0)){s=14;break a}e=e+1|0}while(e>>>0<a>>>0)}}else s=14;while(0);if((s|0)==14){s=0;if((g|0)==1)a=1;else a=((k[h+(i*1080|0)+4>>2]|0)*3|0)+-2|0;f=((g|0)==0?a+1|0:a<<1|1)+5+(d>>>0>256&1)|0;a=k[j>>2]|0;if(f>>>0>(k[m>>2]|0)>>>0){a=bd(a,f)|0;if(!a){s=18;break}k[j>>2]=a;k[m>>2]=f;d=k[(k[o>>2]|0)+((k[p>>2]|0)*5640|0)+5584>>2]|0;e=k[d+(i*1080|0)+24>>2]|0}else{e=g;d=h}if((e|0)==1)d=1;else d=((k[d+(i*1080|0)+4>>2]|0)*3|0)+-2|0;e=(e|0)==0?d+1|0:d<<1|1;k[n>>2]=e+6;zb(a,65373,2);d=a+2|0;if((k[(k[l>>2]|0)+16>>2]|0)>>>0<257){zb(d,e+3|0,2);zb(a+4|0,i,1);a=a+5|0}else{zb(d,e+4|0,2);zb(a+4|0,i,2);a=a+6|0}k[n>>2]=e;je(k[o>>2]|0,k[p>>2]|0,i,a,n,c)|0;if((Xb(b,k[j>>2]|0,f,c)|0)!=(f|0)){a=0;s=28;break}d=k[(k[l>>2]|0)+16>>2]|0}i=i+1|0;if(i>>>0>=d>>>0){a=1;s=28;break}}if((s|0)==18){cd(k[j>>2]|0);k[j>>2]=0;k[m>>2]=0;cc(c,1,11476,q)|0;s=0;r=t;return s|0}else if((s|0)==28){r=t;return a|0}return 0}function _d(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;f=j;g=(k[a+32>>2]|0)*5|0;h=g+6|0;e=a+48|0;i=a+44|0;d=k[i>>2]|0;do if(h>>>0>(k[e>>2]|0)>>>0){d=bd(d,h)|0;if(d){k[i>>2]=d;k[e>>2]=h;break}cd(k[i>>2]|0);k[i>>2]=0;k[e>>2]=0;cc(c,1,11437,f)|0;b=0;r=j;return b|0}while(0);f=Zb(b)|0;a=a+16|0;k[a>>2]=f;k[a+4>>2]=L;zb(d,65365,2);zb(d+2|0,g+4|0,2);zb(d+4|0,0,1);zb(d+5|0,80,1);b=(Xb(b,k[i>>2]|0,h,c)|0)==(h|0)&1;r=j;return b|0}function $d(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+16|0;h=p;o=p+4|0;k[o>>2]=0;l=a+200|0;d=k[l>>2]|0;j=a+164|0;e=k[j>>2]|0;i=a+80|0;g=k[(k[i>>2]|0)+16>>2]|0;n=(ha(g>>>0<257?7:9,(k[e+(d*5640|0)+420>>2]|0)+1|0)|0)+4|0;f=a+48|0;m=a+44|0;a=k[m>>2]|0;do if(n>>>0>(k[f>>2]|0)>>>0){d=bd(a,n)|0;if(d){k[m>>2]=d;k[f>>2]=n;f=d;a=k[(k[i>>2]|0)+16>>2]|0;e=k[j>>2]|0;d=k[l>>2]|0;break}cd(k[m>>2]|0);k[m>>2]=0;k[f>>2]=0;cc(c,1,11398,h)|0;b=0;r=p;return b|0}else{f=a;a=g}while(0);ie(a,e,d,f,o);b=(Xb(b,k[m>>2]|0,n,c)|0)==(n|0)&1;r=p;return b|0}function ae(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;h=a+164|0;i=a+80|0;e=k[i>>2]|0;d=k[e+16>>2]|0;if(!d){b=1;return b|0}g=a+44|0;a=0;f=k[(k[h>>2]|0)+5584>>2]|0;while(1){if(k[f+808>>2]|0){j=k[(k[h>>2]|0)+5584>>2]|0;m=d>>>0<257?1:2;e=m+6|0;l=k[g>>2]|0;zb(l,65374,2);d=m|4;zb(l+2|0,d,2);zb(l+4|0,a,m);zb(l+d|0,0,1);zb(l+(d+1)|0,k[j+(a*1080|0)+808>>2]|0,1);if((Xb(b,k[g>>2]|0,e,c)|0)!=(e|0)){a=0;d=7;break}e=k[i>>2]|0}a=a+1|0;d=k[e+16>>2]|0;if(a>>>0>=d>>>0){a=1;d=7;break}else f=f+1080|0}if((d|0)==7)return a|0;return 0}function be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;f=j;g=k[a+108>>2]|0;h=Gi(g)|0;i=h+6|0;d=a+48|0;e=a+44|0;a=k[e>>2]|0;do if(i>>>0>(k[d>>2]|0)>>>0){a=bd(a,i)|0;if(a){k[e>>2]=a;k[d>>2]=i;break}cd(k[e>>2]|0);k[e>>2]=0;k[d>>2]=0;cc(c,1,11355,f)|0;b=0;r=j;return b|0}while(0);zb(a,65380,2);zb(a+2|0,h+4|0,2);zb(a+4|0,1,2);cj(a+6|0,g|0,h|0)|0;b=(Xb(b,k[e>>2]|0,i,c)|0)==(i|0)&1;r=j;return b|0}function ce(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+32|0;w=A+24|0;t=A+16|0;n=A+8|0;e=A;g=k[a+80>>2]|0;h=g+16|0;f=k[h>>2]|0;j=f+6|0;v=a+48|0;z=a+44|0;d=k[z>>2]|0;do if(j>>>0>(k[v>>2]|0)>>>0){d=bd(d,j)|0;if(d){k[z>>2]=d;k[v>>2]=j;break}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11199,e)|0;b=0;r=A;return b|0}while(0);zb(d,65400,2);zb(d+2|0,f+4|0,2);zb(d+4|0,k[h>>2]|0,2);if(k[h>>2]|0){f=0;e=k[g+24>>2]|0;d=d+6|0;while(1){zb(d,(k[e+24>>2]|0)+-1|k[e+32>>2]<<7,1);f=f+1|0;if(f>>>0>=(k[h>>2]|0)>>>0)break;else{e=e+52|0;d=d+1|0}}}if((Xb(b,k[z>>2]|0,j,c)|0)!=(j|0)){b=0;r=A;return b|0}p=a+200|0;m=k[p>>2]|0;q=a+164|0;l=k[q>>2]|0;e=l+(m*5640|0)+5616|0;a:do if(k[e>>2]|0){j=0;a=k[l+(m*5640|0)+5612>>2]|0;while(1){f=a+16|0;g=k[f>>2]|0;h=g+10|0;d=k[z>>2]|0;if(h>>>0>(k[v>>2]|0)>>>0){d=bd(d,h)|0;if(!d)break;k[z>>2]=d;k[v>>2]=h}zb(d,65396,2);zb(d+2|0,g+8|0,2);zb(d+4|0,0,2);zb(d+6|0,k[a+4>>2]<<8|k[a+8>>2]&255|k[a>>2]<<10,2);zb(d+8|0,0,2);cj(d+10|0,k[a+12>>2]|0,k[f>>2]|0)|0;if((Xb(b,k[z>>2]|0,h,c)|0)!=(h|0)){s=0;x=42;break}j=j+1|0;if(j>>>0>=(k[e>>2]|0)>>>0)break a;else a=a+20|0}if((x|0)==42){r=A;return s|0}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11238,n)|0;b=0;r=A;return b|0}while(0);n=l+(m*5640|0)+5628|0;b:do if(k[n>>2]|0){o=0;l=k[l+(m*5640|0)+5624>>2]|0;while(1){j=l+4|0;e=k[j>>2]|0;g=e>>>0>255;h=g?2:1;g=g?32768:0;e=ha(h,e<<1)|0;a=e+19|0;d=k[z>>2]|0;if(a>>>0>(k[v>>2]|0)>>>0){d=bd(d,a)|0;if(!d)break;k[z>>2]=d;k[v>>2]=a}zb(d,65397,2);zb(d+2|0,e+17|0,2);zb(d+4|0,0,2);zb(d+6|0,k[l>>2]|0,1);zb(d+7|0,0,2);zb(d+9|0,1,2);zb(d+11|0,1,1);zb(d+12|0,k[j>>2]|g,2);d=d+14|0;if(!(k[j>>2]|0))e=0;else{f=0;do{zb(d,f,h);d=d+h|0;f=f+1|0;e=k[j>>2]|0}while(f>>>0<e>>>0)}zb(d,e|g,2);d=d+2|0;if(!(k[j>>2]|0))f=d;else{e=0;do{zb(d,e,h);d=d+h|0;e=e+1|0}while(e>>>0<(k[j>>2]|0)>>>0);f=d}d=((i[l+16>>0]^1)&255)<<16&65536;e=k[l+8>>2]|0;if(e)d=k[e+8>>2]|d;e=k[l+12>>2]|0;if(e)d=k[e+8>>2]<<8|d;zb(f,d,3);if((Xb(b,k[z>>2]|0,a,c)|0)!=(a|0)){s=0;x=42;break}o=o+1|0;if(o>>>0>=(k[n>>2]|0)>>>0)break b;else l=l+20|0}if((x|0)==42){r=A;return s|0}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11277,t)|0;b=0;r=A;return b|0}while(0);h=k[p>>2]|0;g=k[q>>2]|0;j=g+(h*5640|0)+5628|0;e=k[j>>2]|0;a=e+5|0;d=k[z>>2]|0;do if(a>>>0>(k[v>>2]|0)>>>0){d=bd(d,a)|0;if(!d){cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11316,w)|0;u=1;break}else{k[z>>2]=d;k[v>>2]=a;y=d;x=37;break}}else{y=d;x=37}while(0);if((x|0)==37){zb(y,65399,2);zb(y+2|0,e+3|0,2);zb(y+4|0,k[j>>2]|0,1);if(k[j>>2]|0){f=0;e=y+5|0;d=k[g+(h*5640|0)+5624>>2]|0;while(1){zb(e,k[d>>2]|0,1);f=f+1|0;if(f>>>0>=(k[j>>2]|0)>>>0)break;else{e=e+1|0;d=d+20|0}}}u=(Xb(b,k[z>>2]|0,a,c)|0)!=(a|0)}b=u&1^1;r=A;return b|0}function de(a,b,c){a=a|0;b=b|0;c=c|0;c=Zb(b)|0;b=(k[a+196>>2]|0)+8|0;k[b>>2]=c;k[b+4>>2]=L;return 1}function ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;b=bg(0)|0;d=a+204|0;k[d>>2]=b;if(!b){cc(c,1,11159,e)|0;c=0;r=e;return c|0}if(fg(b,k[a+80>>2]|0,a+88|0)|0){c=1;r=e;return c|0}gg(k[d>>2]|0);k[d>>2]=0;c=0;r=e;return c|0}function fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0.0,n=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0;O=a+80|0;D=k[O>>2]|0;P=a+164|0;e=k[P>>2]|0;N=D+24|0;E=k[N>>2]|0;c=k[E>>2]|0;d=k[E+4>>2]|0;M=D+16|0;E=ha(k[E+24>>2]|0,k[M>>2]|0)|0;C=Zb(b)|0;q=a+116|0;h=k[q>>2]|0;r=a+112|0;b=k[r>>2]|0;F=(+(C>>>0)+4294967296.0*+(L|0))/+((ha(b,h)|0)>>>0);C=(i[a+181>>0]&8)==0?1:2;if(h){s=a+92|0;u=a+100|0;v=a+96|0;y=a+104|0;z=D+4|0;A=D+8|0;B=D+12|0;x=+((ha(c<<3,d)|0)>>>0);l=b;c=b;p=0;b=e;do{n=p;p=p+1|0;if(!c)c=0;else{l=0;do{w=+ab[C&3](b);h=k[b+8>>2]|0;w=w/+(h>>>0);Q=k[s>>2]|0;e=k[u>>2]|0;g=(ha(e,l)|0)+Q|0;c=k[D>>2]|0;c=(g|0)>(c|0)?g:c;g=k[v>>2]|0;f=k[y>>2]|0;R=(ha(f,n)|0)+g|0;d=k[z>>2]|0;d=(R|0)>(d|0)?R:d;l=l+1|0;Q=(ha(e,l)|0)+Q|0;e=k[A>>2]|0;e=(Q|0)<(e|0)?Q:e;g=(ha(f,p)|0)+g|0;f=k[B>>2]|0;f=(g|0)<(f|0)?g:f;g=b+20|0;m=+o[g>>2];if(m!=0.0){t=+((ha(ha(e-c|0,E)|0,f-d|0)|0)>>>0)/(x*m)-w;o[g>>2]=t}if(h>>>0>1){m=+((ha(ha(e-c|0,E)|0,f-d|0)|0)>>>0);c=1;d=b+24|0;while(1){t=+o[d>>2];if(t!=0.0)o[d>>2]=m/(x*t)-w;c=c+1|0;if(c>>>0>=h>>>0)break;else d=d+4|0}}b=b+5640|0;c=k[r>>2]|0}while(l>>>0<c>>>0);h=k[q>>2]|0;l=c}}while(p>>>0<h>>>0);if(!h)h=0;else{s=(l|0)==0;t=F+2.0;v=l>>>0>1?l:1;u=0;c=k[P>>2]|0;do{if(!s){p=c+16|0;q=0;r=c;while(1){b=r+20|0;m=+o[b>>2];if(m!=0.0?(x=m-F,o[b>>2]=x,x<30.0):0)o[b>>2]=30.0;f=r+24|0;b=k[r+8>>2]|0;n=b+-1|0;m=+o[f>>2];d=m!=0.0;if(n>>>0>1){g=p+(b<<2)|0;e=1;b=f;do{if(d?(x=m-F,o[b>>2]=x,H=+o[b+-4>>2],x<H+10.0):0)o[b>>2]=H+20.0;b=b+4|0;e=e+1|0;m=+o[b>>2];d=m!=0.0}while((e|0)!=(n|0));if(d){G=m;J=g;K=29}}else if(d){G=m;J=f;K=29}if((K|0)==29?(K=0,x=G-t,o[J>>2]=x,I=+o[J+-4>>2],x<I+10.0):0)o[J>>2]=I+20.0;q=q+1|0;if(q>>>0>=l>>>0)break;else{p=p+5640|0;r=r+5640|0}}c=c+(v*5640|0)|0}u=u+1|0}while(u>>>0<h>>>0)}}else{l=b;h=0}d=k[M>>2]|0;if(!d)u=0;else{e=(k[a+100>>2]|0)+-1|0;f=(k[a+104>>2]|0)+-1|0;g=0;b=k[N>>2]|0;c=0;while(1){R=k[b>>2]|0;Q=k[b+4>>2]|0;R=ha(((f+Q|0)>>>0)/(Q>>>0)|0,((e+R|0)>>>0)/(R>>>0)|0)|0;c=(ha(R,k[b+24>>2]|0)|0)+c|0;g=g+1|0;if(g>>>0>=d>>>0)break;else b=b+52|0}u=~~(+(c>>>0)*.1625)>>>0}n=k[(k[O>>2]|0)+16>>2]|0;q=n+-1|0;s=ha(h,l)|0;p=(s|0)==0;if(p)e=0;else{b=0;c=0;d=k[P>>2]|0;while(1){R=k[d+5588>>2]|0;c=c>>>0>R>>>0?c:R;b=b+1|0;if((b|0)==(s|0))break;else d=d+5640|0}e=c*12|0}r=a+88|0;if(((j[r>>1]|0)+-3&65535)>=4){if(p){b=0;c=0}else{l=(n|0)==0;g=0;c=0;do{if(!l){d=k[(k[P>>2]|0)+(g*5640|0)+5584>>2]|0;f=0;do{if(!(k[d+(f*1080|0)>>2]&1))b=5;else b=(k[d+(f*1080|0)+4>>2]|0)+5|0;c=c>>>0>b>>>0?c:b;f=f+1|0}while((f|0)!=(n|0))}g=g+1|0}while((g|0)!=(s|0));h=0;b=0;do{if(!l){f=k[(k[P>>2]|0)+(h*5640|0)+5584>>2]|0;g=0;do{if(!(k[f+(g*1080|0)>>2]&1))d=5;else d=(k[f+(g*1080|0)+4>>2]|0)+5|0;b=b>>>0>d>>>0?b:d;g=g+1|0}while((g|0)!=(n|0))}h=h+1|0}while((h|0)!=(s|0))}e=(ha(c+12+b|0,q)|0)+e|0}if(p)c=13;else{d=0;c=0;b=k[P>>2]|0;while(1){R=k[b+420>>2]|0;c=c>>>0>R>>>0?c:R;d=d+1|0;if((d|0)==(s|0))break;else b=b+5640|0}c=(c*9|0)+13|0}R=e+u+c|0;k[a+40>>2]=R;R=Zc(R)|0;k[a+36>>2]=R;if(!R){R=0;return R|0}if(((j[r>>1]|0)+-3&65535)>=4){R=1;return R|0}c=Zc((k[a+32>>2]|0)*5|0)|0;k[a+24>>2]=c;if(!c){R=0;return R|0}k[a+28>>2]=c;R=1;return R|0}function ge(a){a=a|0;return 0.0}function he(a){a=a|0;return +(+((((k[a+5588>>2]|0)*14|0)+-14|0)>>>0))}function ie(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=k[b+(c*5640|0)+5584>>2]|0;q=(k[b+(c*5640|0)+420>>2]|0)+1|0;i=a>>>0<257?1:2;p=ha(q,(i<<1)+5|0)|0;r=p+4|0;zb(d,65375,2);zb(d+2|0,p+2|0,2);if(!q){k[e>>2]=r;return}j=i+1|0;l=i+3|0;m=i|4;n=m+i|0;o=n+1|0;p=b+(c*5640|0)+8|0;g=f+4|0;h=0;d=d+4|0;f=b+(c*5640|0)+424|0;while(1){zb(d,k[f>>2]|0,1);zb(d+1|0,k[f+4>>2]|0,i);t=f+8|0;zb(d+j|0,k[t>>2]|0,2);b=f+12|0;zb(d+l|0,k[b>>2]|0,1);c=f+16|0;zb(d+m|0,k[c>>2]|0,i);zb(d+n|0,k[f+36>>2]|0,1);u=k[t>>2]|0;s=k[p>>2]|0;k[t>>2]=(u|0)<(s|0)?u:s;t=k[b>>2]|0;s=k[g>>2]|0;k[b>>2]=(t|0)<(s|0)?t:s;b=k[c>>2]|0;k[c>>2]=(b|0)<(a|0)?b:a;h=h+1|0;if((h|0)==(q|0))break;else{d=d+o|0;f=f+148|0}}k[e>>2]=r;return}function je(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+16|0;i=m+8|0;h=m;j=k[a+(b*5640|0)+5584>>2]|0;b=k[j+(c*1080|0)+24>>2]|0;do if((b|0)!=1){a=(k[j+(c*1080|0)+4>>2]|0)*3|0;g=a+-2|0;if(!b){a=a+-1|0;if((k[e>>2]|0)>>>0<a>>>0){cc(f,1,11515,h)|0;e=0;r=m;return e|0}else{zb(d,k[j+(c*1080|0)+804>>2]<<5,1);if(!g)break;else b=0;do{d=d+1|0;zb(d,k[j+(c*1080|0)+28+(b<<3)>>2]<<3,1);b=b+1|0}while((b|0)!=(g|0))}}else l=7}else{g=1;b=1;l=7}while(0);if((l|0)==7){a=g<<1|1;if((k[e>>2]|0)>>>0<a>>>0){cc(f,1,11515,i)|0;e=0;r=m;return e|0}zb(d,(k[j+(c*1080|0)+804>>2]<<5)+b|0,1);if(g){d=d+1|0;b=0;while(1){zb(d,(k[j+(c*1080|0)+28+(b<<3)>>2]<<11)+(k[j+(c*1080|0)+28+(b<<3)+4>>2]|0)|0,2);b=b+1|0;if((b|0)==(g|0))break;else d=d+2|0}}}k[e>>2]=(k[e>>2]|0)-a;e=1;r=m;return e|0}function ke(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;h=r;r=r+16|0;f=k[a+(b*5640|0)+5584>>2]|0;if((k[d>>2]|0)>>>0<5){cc(e,1,11587,h)|0;d=0;r=h;return d|0}g=f+4|0;zb(c,(k[g>>2]|0)+-1|0,1);zb(c+1|0,(k[f+8>>2]|0)+-2|0,1);zb(c+2|0,(k[f+12>>2]|0)+-2|0,1);zb(c+3|0,k[f+16>>2]|0,1);zb(c+4|0,k[f+20>>2]|0,1);b=(k[d>>2]|0)+-5|0;k[d>>2]=b;if(!(k[f>>2]&1)){d=1;r=h;return d|0}a=k[g>>2]|0;if(b>>>0<a>>>0){cc(e,1,11587,h+8|0)|0;d=0;r=h;return d|0}if(!a)a=0;else{b=c+5|0;c=0;while(1){zb(b,(k[f+944+(c<<2)>>2]<<4)+(k[f+812+(c<<2)>>2]|0)|0,1);c=c+1|0;a=k[g>>2]|0;if(c>>>0>=a>>>0)break;else b=b+1|0}b=k[d>>2]|0}k[d>>2]=b-a;d=1;r=h;return d|0}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;f=k[a+76>>2]|0;d=k[f+(c*5640|0)+4>>2]|0;e=696;while(1){m=k[e>>2]|0;if((m|0)==-1|(m|0)==(d|0))break;else e=e+12|0}if(!(i[a+93>>0]&8)){a=1;return a|0}m=l[a+92>>0]|0;g=f+(c*5640|0)+424+(b*148|0)+92|0;h=f+(c*5640|0)+424+(b*148|0)+88|0;j=f+(c*5640|0)+424+(b*148|0)+96|0;b=f+(c*5640|0)+424+(b*148|0)+84|0;f=i[e+4>>0]|0;switch(f|0){case 67:{d=k[g>>2]|0;break}case 82:{d=k[h>>2]|0;break}case 80:{d=k[j>>2]|0;break}case 76:{d=k[b>>2]|0;break}default:d=1}if((m|0)!=(f|0)){f=i[e+5>>0]|0;switch(f|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)!=(f|0)){f=i[e+6>>0]|0;switch(f|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)!=(f|0)){e=i[e+7>>0]|0;switch(e|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)==(e|0))e=3;else{a=d;return a|0}}else e=2}else e=1}else e=0;k[a+84>>2]=e;a=d;return a|0}function me(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=b+16|0;if(!(k[B>>2]|0)){B=1;return B|0}A=0;z=k[b+24>>2]|0;while(1){f=d+44|0;e=k[f>>2]|0;g=d+8|0;if(!e){b=d+12|0;e=_c(ha(k[b>>2]|0,k[g>>2]|0)|0,4)|0;k[f>>2]=e;if(!e){c=0;d=61;break}}else b=d+12|0;q=z+36|0;k[d+36>>2]=k[q>>2];x=k[z+24>>2]|0;t=k[a+24>>2]|0;q=k[q>>2]|0;x=((x&7|0)!=0&1)+(x>>>3)|0;x=(x|0)==3?4:x;n=k[t+(q*136|0)+8>>2]|0;h=k[t+(q*136|0)>>2]|0;v=n-h|0;s=k[t+(q*136|0)+12>>2]|0;q=k[t+(q*136|0)+4>>2]|0;t=s-q|0;f=k[d+16>>2]|0;p=k[d+40>>2]|0;o=$i(1,0,p|0)|0;w=L;f=aj(f|0,0,-1,-1)|0;f=aj(f|0,L|0,o|0,w|0)|0;f=bj(f|0,L|0,p|0)|0;r=aj(k[d+20>>2]|0,0,-1,-1)|0;w=aj(r|0,L|0,o|0,w|0)|0;p=bj(w|0,L|0,p|0)|0;w=k[g>>2]|0;g=f+w|0;o=k[b>>2]|0;r=p+o|0;do if(f>>>0<h>>>0){b=h-f|0;if(n>>>0>g>>>0){y=g-h|0;u=0;h=v-y|0;n=b}else{u=0;h=0;n=b;y=v}}else{b=f-h|0;if(n>>>0>g>>>0){u=b;h=n-g|0;n=0;y=w;break}else{u=b;h=0;n=0;y=v-b|0;break}}while(0);do if(p>>>0<q>>>0){g=q-p|0;if(s>>>0>r>>>0){f=r-q|0;o=f;b=0;f=t-f|0}else{o=t;b=0;f=0}}else{b=p-q|0;if(s>>>0>r>>>0){f=s-r|0;g=0;break}else{o=t-b|0;f=0;g=0;break}}while(0);if((u|h|y|f|b|o|0)<0){c=0;d=61;break}b=(ha(b,v)|0)+u|0;q=u+h|0;r=(ha(f,v)|0)-u|0;p=w-y|0;e=e+((ha(w,g)|0)+n<<2)|0;switch(x|0){case 1:{c=c+b|0;b=(o|0)==0;if(!(k[z+32>>2]|0)){if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=l[e>>0];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+1|0}}b=g;c=c+y|0}c=c+q|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}}else if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=i[e>>0];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+1|0}}b=g;c=c+y|0}c=c+q|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+r|0;break}case 2:{c=c+(b<<1)|0;b=(o|0)==0;if(!(k[z+32>>2]|0)){if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=m[e>>1];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+2|0}}b=g;c=c+(y<<1)|0}c=c+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}}else if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=j[e>>1];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+2|0}}b=g;c=c+(y<<1)|0}c=c+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+(r<<1)|0;break}case 4:{c=c+(b<<2)|0;if(o){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=k[e>>2];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+4|0}}b=g;c=c+(y<<2)|0}c=c+(q<<2)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+(r<<2)|0;break}default:{}}A=A+1|0;if(A>>>0>=(k[B>>2]|0)>>>0){c=1;d=61;break}else{d=d+52|0;z=z+52|0;a=a+52|0}}if((d|0)==61)return c|0;return 0}function ne(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+112|0;x=z+88|0;u=z+80|0;v=z+72|0;t=z+64|0;p=z+56|0;o=z+48|0;j=z+40|0;g=z+32|0;f=z+24|0;e=z+16|0;q=z+100|0;s=z+96|0;w=z+92|0;k[s>>2]=0;y=a+200|0;if((c|0)!=8){cc(d,1,8662,z)|0;cc(d,1,8662,z+8|0)|0;d=0;r=z;return d|0}Ab(b,y,2);Ab(b+2|0,q,4);Ab(b+6|0,w,1);Ab(b+7|0,s,1);h=k[y>>2]|0;b=k[a+112>>2]|0;if(h>>>0>=(ha(k[a+116>>2]|0,b)|0)>>>0){k[e>>2]=h;cc(d,1,15258,e)|0;d=0;r=z;return d|0}c=k[a+164>>2]|0;n=(h>>>0)%(b>>>0)|0;m=(h>>>0)/(b>>>0)|0;b=k[q>>2]|0;do if((b+-1|0)>>>0<13){if((b|0)==12){k[f>>2]=12;cc(d,2,15282,f)|0;b=k[q>>2]|0;break}k[g>>2]=b;cc(d,1,15319,g)|0;d=0;r=z;return d|0}while(0);if(!b){cc(d,4,15380,j)|0;k[a+72>>2]=1}b=k[s>>2]|0;do if(!b)b=k[c+(h*5640|0)+5588>>2]|0;else{b=((l[a+76>>0]|0)>>>4&1)+b|0;k[s>>2]=b;e=c+(h*5640|0)+5588|0;f=k[e>>2]|0;c=k[w>>2]|0;if((f+-1|0)>>>0<c>>>0){k[o>>2]=c;k[o+4>>2]=f;cc(d,1,15491,o)|0;k[a+72>>2]=1;d=0;r=z;return d|0}if(c>>>0<b>>>0){k[e>>2]=b;break}k[p>>2]=c;k[p+4>>2]=b;cc(d,1,15590,p)|0;k[a+72>>2]=1;d=0;r=z;return d|0}while(0);if((b|0)!=0?(b|0)==((k[w>>2]|0)+1|0):0){p=a+76|0;i[p>>0]=i[p>>0]|1}k[a+24>>2]=(k[a+72>>2]|0)==0?(k[q>>2]|0)+-12|0:0;k[a+8>>2]=16;b=k[a+60>>2]|0;if((b|0)==-1){if((n>>>0>=(k[a+28>>2]|0)>>>0?n>>>0<(k[a+36>>2]|0)>>>0:0)?m>>>0>=(k[a+32>>2]|0)>>>0:0)b=(m>>>0>=(k[a+40>>2]|0)>>>0&1)<<2&255;else b=4;q=a+76|0;i[q>>0]=i[q>>0]&-5|b}else{q=a+76|0;i[q>>0]=((k[y>>2]|0)!=(b|0)&1)<<2&255|i[q>>0]&-5}g=a+196|0;b=k[g>>2]|0;if(!b){d=1;r=z;return d|0}f=k[y>>2]|0;b=k[b+40>>2]|0;k[b+(f*40|0)>>2]=f;k[b+(f*40|0)+12>>2]=k[w>>2];c=k[s>>2]|0;if(c){k[b+(f*40|0)+4>>2]=c;k[b+(f*40|0)+8>>2]=k[s>>2];b=k[b+(f*40|0)+16>>2]|0;if(!b){x=_c(k[s>>2]|0,24)|0;k[(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16>>2]=x;if(x){d=1;r=z;return d|0}cc(d,1,15698,t)|0;d=0;r=z;return d|0}b=bd(b,(k[s>>2]|0)*24|0)|0;c=(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16|0;if(!b){cd(k[c>>2]|0);k[(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16>>2]=0;cc(d,1,15698,v)|0;d=0;r=z;return d|0}else{k[c>>2]=b;d=1;r=z;return d|0}}if(!(k[b+(f*40|0)+16>>2]|0)){k[b+(f*40|0)+8>>2]=10;v=_c(10,24)|0;c=k[y>>2]|0;b=k[(k[g>>2]|0)+40>>2]|0;k[b+(c*40|0)+16>>2]=v;if(!v){k[b+(c*40|0)+8>>2]=0;cc(d,1,15698,u)|0;d=0;r=z;return d|0}else f=c}c=k[w>>2]|0;e=b+(f*40|0)+8|0;if(c>>>0<(k[e>>2]|0)>>>0){d=1;r=z;return d|0}c=c+1|0;k[e>>2]=c;b=bd(k[b+(f*40|0)+16>>2]|0,c*24|0)|0;c=(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16|0;if(!b){cd(k[c>>2]|0);y=k[y>>2]|0;w=k[(k[g>>2]|0)+40>>2]|0;k[w+(y*40|0)+16>>2]=0;k[w+(y*40|0)+8>>2]=0;cc(d,1,15698,x)|0;d=0;r=z;return d|0}else{k[c>>2]=b;d=1;r=z;return d|0}return 0}function oe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+64|0;o=s+48|0;p=s+40|0;h=s+32|0;m=s+56|0;g=s+52|0;k[m>>2]=c;q=a+80|0;j=k[q>>2]|0;n=a+8|0;if((k[n>>2]|0)==16)l=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else l=k[a+12>>2]|0;e=l+5636|0;f=i[e>>0]|0;if(f&1){cc(d,1,15025,s)|0;q=0;r=s;return q|0}i[e>>0]=f|1;if(c>>>0<5){cc(d,1,15089,s+8|0)|0;q=0;r=s;return q|0}Ab(b,l,1);if((k[l>>2]|0)>>>0>7){cc(d,1,15115,s+16|0)|0;q=0;r=s;return q|0}Ab(b+1|0,g,1);g=k[g>>2]|0;e=l+4|0;k[e>>2]=g;if((g|0)>4){cc(d,1,15149,s+24|0)|0;k[e>>2]=-1}e=l+8|0;Ab(b+2|0,e,2);e=k[e>>2]|0;if((e+-1|0)>>>0>65534){k[h>>2]=e;cc(d,1,15190,h)|0;q=0;r=s;return q|0}h=k[a+172>>2]|0;k[l+12>>2]=(h|0)==0?e:h;Ab(b+4|0,l+16|0,1);h=b+5|0;k[m>>2]=c+-5;g=k[j+16>>2]|0;if(g){b=k[l>>2]&1;e=k[l+5584>>2]|0;f=0;do{k[e+(f*1080|0)>>2]=b;f=f+1|0}while(f>>>0<g>>>0)}if(!(Pe(a,0,h,m,d)|0)){cc(d,1,15089,p)|0;q=0;r=s;return q|0}if(k[m>>2]|0){cc(d,1,15089,o)|0;q=0;r=s;return q|0}if((k[n>>2]|0)==16)e=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else e=k[a+12>>2]|0;e=k[e+5584>>2]|0;c=e+4|0;f=k[c>>2]|0;l=f<<2;if((k[(k[q>>2]|0)+16>>2]|0)>>>0<=1){q=1;r=s;return q|0}m=e+8|0;n=e+12|0;a=e+16|0;d=e+20|0;o=e+812|0;p=e+944|0;k[e+1084>>2]=f;g=k[m>>2]|0;k[e+1088>>2]=g;b=k[n>>2]|0;k[e+1092>>2]=b;h=k[a>>2]|0;k[e+1096>>2]=h;j=k[d>>2]|0;k[e+1100>>2]=j;cj(e+1892|0,o|0,l|0)|0;cj(e+2024|0,p|0,l|0)|0;if((k[(k[q>>2]|0)+16>>2]|0)>>>0<=2){q=1;r=s;return q|0}k[e+2164>>2]=f;k[e+2168>>2]=g;k[e+2172>>2]=b;k[e+2176>>2]=h;k[e+2180>>2]=j;cj(e+2972|0,o|0,l|0)|0;cj(e+3104|0,p|0,l|0)|0;if((k[(k[q>>2]|0)+16>>2]|0)>>>0>3)f=3;else{q=1;r=s;return q|0}while(1){g=k[m>>2]|0;b=k[n>>2]|0;h=k[a>>2]|0;j=k[d>>2]|0;k[e+3244>>2]=k[c>>2];k[e+3248>>2]=g;k[e+3252>>2]=b;k[e+3256>>2]=h;k[e+3260>>2]=j;cj(e+4052|0,o|0,l|0)|0;cj(e+4184|0,p|0,l|0)|0;f=f+1|0;if(f>>>0>=(k[(k[q>>2]|0)+16>>2]|0)>>>0){e=1;break}else e=e+1080|0}r=s;return e|0}
|
|
82
|
-
function vg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+272|0;m=u;s=u+136|0;t=u+8|0;if(!a){t=0;r=u;return t|0}l=a+4|0;if((k[a>>2]|0)==(b|0)?(k[l>>2]|0)==(c|0):0)e=a+8|0;else{k[a>>2]=b;k[l>>2]=c;k[s>>2]=b;k[t>>2]=c;e=a+8|0;k[e>>2]=0;f=0;h=c;i=b;j=0;while(1){q=ha(h,i)|0;i=(i+1|0)/2|0;g=j+1|0;k[s+(g<<2)>>2]=i;h=(h+1|0)/2|0;k[t+(g<<2)>>2]=h;f=f+q|0;if(q>>>0<=1)break;else j=g}k[e>>2]=f;if(!f){e=a+12|0;f=k[e>>2]|0;if(f){cd(f);k[e>>2]=0}cd(a);t=0;r=u;return t|0}g=f<<4;h=a+16|0;i=a+12|0;do if(g>>>0>(k[h>>2]|0)>>>0){f=bd(k[i>>2]|0,g)|0;if(f){k[i>>2]=f;c=k[h>>2]|0;_i(f+c|0,0,g-c|0)|0;k[h>>2]=g;c=k[l>>2]|0;b=k[a>>2]|0;break}cc(d,1,20166,m)|0;e=k[i>>2]|0;if(e){cd(e);k[i>>2]=0}cd(a);t=0;r=u;return t|0}while(0);f=k[i>>2]|0;b=f+((ha(c,b)|0)<<4)|0;if(j){q=0;c=b;do{o=k[t+(q<<2)>>2]|0;a:do if((o|0)>0){p=k[s+(q<<2)>>2]|0;if((p|0)<=0){g=o+-1|0;h=0;while(1){n=(h&1|0)!=0|(h|0)==(g|0);i=n?c:b+(p<<4)|0;c=n?c:b;h=h+1|0;if((h|0)>=(o|0)){b=i;break a}else b=i}}n=((p+2+((p|0)<2?~p:-3)|0)>>>1)+1|0;d=o+-1|0;m=0;while(1){l=p;i=c;while(1){k[f>>2]=i;g=f+16|0;h=l;l=l+-2|0;if((l|0)>-1){k[g>>2]=i;f=f+32|0}else f=g;if((h|0)<=2)break;else i=i+16|0}c=c+(n<<4)|0;l=(m&1|0)!=0|(m|0)==(d|0);g=l?c:b+(p<<4)|0;c=l?c:b;m=m+1|0;if((m|0)>=(o|0)){b=g;break}else b=g}}while(0);q=q+1|0}while((q|0)!=(j|0))}k[f>>2]=0}e=k[e>>2]|0;if(!e){t=a;r=u;return t|0}f=0;b=k[a+12>>2]|0;while(1){k[b+4>>2]=999;k[b+8>>2]=0;k[b+12>>2]=0;f=f+1|0;if((f|0)==(e|0))break;else b=b+16|0}r=u;return a|0}function wg(a){a=a|0;var b=0,c=0;if(!a)return;b=a+12|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}cd(a);return}function xg(a,b,c){a=a|0;b=b|0;c=c|0;b=(k[a+12>>2]|0)+(b<<4)|0;if(!b)return;while(1){a=b+4|0;if((k[a>>2]|0)<=(c|0)){b=4;break}k[a>>2]=c;b=k[b>>2]|0;if(!b){b=4;break}}if((b|0)==4)return}function yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+128|0;h=i;c=(k[b+12>>2]|0)+(c<<4)|0;if(!(k[c>>2]|0)){e=0;f=h}else{e=c;b=h;while(1){f=b+4|0;k[b>>2]=c;c=k[e>>2]|0;if(!(k[c>>2]|0)){e=0;break}else{e=c;b=f}}}while(1){g=c+8|0;b=k[g>>2]|0;if((e|0)>(b|0)){k[g>>2]=e;b=e}a:do if((b|0)<(d|0)){e=c+4|0;while(1){if((b|0)>=(k[e>>2]|0))break;Lg(a,0,1);b=b+1|0;if((b|0)>=(d|0)){c=b;break a}}c=c+12|0;if(!(k[c>>2]|0)){Lg(a,1,1);k[c>>2]=1;c=b}else c=b}else c=b;while(0);k[g>>2]=c;if((f|0)==(h|0))break;g=f+-4|0;e=c;c=k[g>>2]|0;f=g}r=i;return}function zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+128|0;h=i;c=(k[b+12>>2]|0)+(c<<4)|0;if(!(k[c>>2]|0)){b=0;f=h}else{e=c;b=h;while(1){f=b+4|0;k[b>>2]=c;c=k[e>>2]|0;if(!(k[c>>2]|0)){b=0;break}else{e=c;b=f}}}while(1){g=c+8|0;e=k[g>>2]|0;if((b|0)>(e|0))k[g>>2]=b;else b=e;c=c+4|0;a:do if((b|0)<(d|0)){while(1){if((b|0)>=(k[c>>2]|0))break a;if(Mg(a,1)|0)break;b=b+1|0;if((b|0)>=(d|0))break a}k[c>>2]=b}while(0);k[g>>2]=b;if((f|0)==(h|0))break;g=f+-4|0;c=k[g>>2]|0;f=g}r=i;return (k[c>>2]|0)<(d|0)|0}function Ag(){var a=0,b=0;a=_c(1,12)|0;if(!a){a=0;return a|0}k[a+4>>2]=10;b=_c(10,4)|0;k[a+8>>2]=b;if(b){b=a;return b|0}cd(a);b=0;return b|0}function Bg(a){a=a|0;var b=0;if(!a)return;b=k[a+8>>2]|0;if(b)cd(b);cd(a);return}function Cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;f=a+4|0;e=k[f>>2]|0;d=k[a>>2]|0;do if((e|0)==(d|0)){e=e+10|0;k[f>>2]=e;d=a+8|0;e=bd(k[d>>2]|0,e<<2)|0;if(e){k[d>>2]=e;d=k[a>>2]|0;break}cd(k[d>>2]|0);k[f>>2]=0;k[a>>2]=0;cc(c,1,20214,g)|0;a=0;r=h;return a|0}else e=k[a+8>>2]|0;while(0);k[e+(d<<2)>>2]=b;k[a>>2]=d+1;a=1;r=h;return a|0}function Dg(a){a=a|0;return k[a>>2]|0}function Eg(a){a=a|0;return k[a+8>>2]|0}function Fg(a){a=a|0;k[a>>2]=0;return}function Gg(){return Zc(20)|0}function Hg(a){a=a|0;if(!a)return;cd(a);return}function Ig(a){a=a|0;return (k[a+8>>2]|0)-(k[a>>2]|0)|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=b;k[a+4>>2]=b+c;k[a+8>>2]=b;k[a+12>>2]=0;k[a+16>>2]=8;return}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=b;k[a+4>>2]=b+c;k[a+8>>2]=b;k[a+12>>2]=0;k[a+16>>2]=0;return}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;if(!c)return;j=a+16|0;l=a+12|0;m=a+8|0;f=a+4|0;a=k[j>>2]|0;h=c+-1|0;do{g=b>>>h&1;if(!a){e=k[l>>2]|0;a=e<<8&65280;k[l>>2]=a;a=(a|0)==65280?7:8;k[j>>2]=a;d=k[m>>2]|0;if(d>>>0<(k[f>>2]|0)>>>0){k[m>>2]=d+1;i[d>>0]=e;a=k[j>>2]|0}}a=a+-1|0;k[j>>2]=a;k[l>>2]=g<<a|k[l>>2];h=h+-1|0}while(h>>>0<c>>>0);return}function Mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!b){b=0;return b|0}h=a+16|0;i=a+12|0;j=a+8|0;f=a+4|0;c=k[h>>2]|0;d=k[i>>2]|0;g=b+-1|0;a=0;do{if(!c){e=d<<8&65280;k[i>>2]=e;c=(e|0)==65280?7:8;k[h>>2]=c;d=k[j>>2]|0;if(d>>>0<(k[f>>2]|0)>>>0){k[j>>2]=d+1;d=l[d>>0]|0|e;k[i>>2]=d}else d=e}c=c+-1|0;k[h>>2]=c;a=((d>>>c&1)<<g)+a|0;g=g+-1|0}while(g>>>0<b>>>0);return a|0}function Ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=a+12|0;b=k[d>>2]|0;g=b<<8&65280;k[d>>2]=g;e=a+16|0;k[e>>2]=(g|0)==65280?7:8;g=a+8|0;c=k[g>>2]|0;f=a+4|0;if(c>>>0>=(k[f>>2]|0)>>>0){g=0;return g|0}k[g>>2]=c+1;i[c>>0]=b;if((k[e>>2]|0)!=7){g=1;return g|0}b=k[d>>2]|0;a=b<<8&65280;k[d>>2]=a;k[e>>2]=(a|0)==65280?7:8;a=k[g>>2]|0;if(a>>>0>=(k[f>>2]|0)>>>0){g=0;return g|0}k[g>>2]=a+1;i[a>>0]=b;g=1;return g|0}function Og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+12|0;b=k[f>>2]|0;do if((b&255|0)==255){d=b<<8&65280;k[f>>2]=d;b=a+16|0;k[b>>2]=(d|0)==65280?7:8;e=a+8|0;c=k[e>>2]|0;if(c>>>0<(k[a+4>>2]|0)>>>0){k[e>>2]=c+1;k[f>>2]=l[c>>0]|0|d;break}else{a=0;return a|0}}else b=a+16|0;while(0);k[b>>2]=0;a=1;return a|0}function Pg(a){a=a|0;return Zg(a,1)|0}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=r;r=r+32|0;B=D+16|0;C=D;i=k[a+24>>2]|0;h=(k[i+8>>2]|0)-(k[i>>2]|0)|0;g=(k[i+12>>2]|0)-(k[i+4>>2]|0)|0;A=(k[a+8>>2]|0)-(k[a>>2]|0)|0;if((b|0)==1){C=1;r=D;return C|0}f=b+-1|0;e=(f|0)==0;if(e)b=0;else{c=i;d=f;b=0;do{z=c;c=c+136|0;y=(k[z+144>>2]|0)-(k[c>>2]|0)|0;b=b>>>0<y>>>0?y:b;z=(k[z+148>>2]|0)-(k[z+140>>2]|0)|0;b=b>>>0<z>>>0?z:b;d=d+-1|0}while((d|0)!=0);b=b<<2}z=$c(b)|0;k[B>>2]=z;if(!z){C=0;r=D;return C|0}k[C>>2]=z;if(!e){s=a+32|0;t=B+8|0;u=C+8|0;v=B+4|0;w=B+12|0;x=C+4|0;y=C+12|0;do{p=k[s>>2]|0;m=i;i=i+136|0;k[t>>2]=h;k[u>>2]=g;n=k[m+144>>2]|0;o=k[i>>2]|0;d=h;h=n-o|0;b=k[m+148>>2]|0;m=m+140|0;q=k[m>>2]|0;c=g;g=b-q|0;k[v>>2]=h-d;k[w>>2]=(o|0)%2|0;q=(b|0)==(q|0);if(!q){l=h<<2;b=0;while(1){a=ha(b,A)|0;j=p+(a<<2)|0;if(d){c=j;e=z+(k[w>>2]<<2)|0;while(1){d=d+-1|0;k[e>>2]=k[c>>2];if(!d)break;else{c=c+4|0;e=e+8|0}}}c=k[v>>2]|0;if(c){d=p+((k[t>>2]|0)+a<<2)|0;e=z+(1-(k[w>>2]|0)<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+4|0;e=e+8|0}}}_g(B);cj(j|0,z|0,l|0)|0;b=b+1|0;if((b|0)==(g|0))break;d=k[t>>2]|0}c=k[u>>2]|0;b=k[m>>2]|0}k[x>>2]=g-c;k[y>>2]=(b|0)%2|0;a:do if((n|0)!=(o|0)){b=0;while(1){if(c){d=p+(b<<2)|0;e=z+(k[y>>2]<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+(A<<2)|0;e=e+8|0}}}c=k[x>>2]|0;if(c){d=p+((ha(k[u>>2]|0,A)|0)+b<<2)|0;e=z+(1-(k[y>>2]|0)<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+(A<<2)|0;e=e+8|0}}}_g(C);if(!q){c=0;do{o=p+((ha(c,A)|0)+b<<2)|0;k[o>>2]=k[z+(c<<2)>>2];c=c+1|0}while((c|0)!=(g|0))}b=b+1|0;if((b|0)==(h|0))break a;c=k[u>>2]|0}}while(0);f=f+-1|0}while((f|0)!=0)}ad(z);C=1;r=D;return C|0}function Rg(a){a=a|0;if(!a){a=0;return a|0}a=(a+-1|0)>>>0<2?1:2;return a|0}function Sg(a,b){a=a|0;b=b|0;return +(+p[56+(b*80|0)+(a<<3)>>3])}function Tg(a){a=a|0;return Zg(a,2)|0}function Ug(a){a=a|0;return 0}function Vg(a,b){a=a|0;b=b|0;return +(+p[376+(b*80|0)+(a<<3)>>3])}function Wg(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;i=a+4|0;j=((k[i>>2]|0)*3|0)+-2|0;if(!j)return;l=a+20|0;m=a+24|0;n=0;do{if(!n){d=0;e=0}else{e=n+-1|0;d=((e>>>0)/3|0)+1|0;e=((e>>>0)%3|0)+1|0}if((e|0)==0|(k[l>>2]|0)==0)f=0;else f=(e+-1|0)>>>0<2?1:2;if(!(k[m>>2]|0))c=1.0;else c=+(1<<f|0)/+p[376+(e*80|0)+((k[i>>2]|0)+~d<<3)>>3];h=~~+V(+(c*8192.0));g=f+b|0;if((h|0)>1){d=h;e=0;while(1){d=d>>1;if((d|0)<=1)break;else e=e+1|0}f=h;d=0;do{f=f>>1;d=d+1|0}while((f|0)>1);e=e+-12|0}else{e=-13;d=0}f=11-d|0;k[a+28+(n<<3)+4>>2]=((f|0)<0?h>>0-f:h<<f)&2047;k[a+28+(n<<3)>>2]=g-e;n=n+1|0}while((n|0)!=(j|0));return}function Xg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=r;r=r+32|0;Q=T+16|0;R=T;l=k[a+24>>2]|0;m=k[l+8>>2]|0;n=k[l>>2]|0;i=k[l+12>>2]|0;j=k[l+4>>2]|0;P=a+8|0;g=k[P>>2]|0;h=k[a>>2]|0;O=g-h|0;f=b+-1|0;e=(f|0)==0;if(e)b=80;else{c=l;d=f;b=0;do{N=c;c=c+136|0;M=(k[N+144>>2]|0)-(k[c>>2]|0)|0;b=b>>>0<M>>>0?M:b;N=(k[N+148>>2]|0)-(k[N+140>>2]|0)|0;b=b>>>0<N>>>0?N:b;d=d+-1|0}while((d|0)!=0);b=(b<<4)+80|0}N=$c(b)|0;k[Q>>2]=N;if(!N){S=0;r=T;return S|0}k[R>>2]=N;a:do if(!e){y=a+32|0;z=a+12|0;A=a+4|0;B=Q+8|0;C=R+8|0;D=Q+4|0;E=Q+12|0;F=R+4|0;G=R+12|0;H=O<<1;I=O<<2;J=O*3|0;L=h<<2;M=g<<2;K=L-M|0;L=M-L|0;M=g-h<<2;b=f;c=N;f=g;d=h;q=i-j|0;e=l;g=m-n|0;while(1){s=k[y>>2]|0;d=ha((k[z>>2]|0)-(k[A>>2]|0)|0,f-d|0)|0;k[B>>2]=g;k[C>>2]=q;w=e+136|0;o=k[e+144>>2]|0;p=k[w>>2]|0;x=o-p|0;u=k[e+148>>2]|0;m=e+140|0;t=k[m>>2]|0;v=u-t|0;k[D>>2]=x-g;k[E>>2]=(p|0)%2|0;if((v|0)>3){f=(x|0)>0;g=(u+-4-t|0)>>>2;l=ha(K,g)|0;g=s+(L+(ha(M,g)|0)<<2)|0;h=s;i=d;j=v;while(1){ah(Q,h,O,i);bh(Q);if(f){e=x;do{n=e;e=e+-1|0;k[h+(e<<2)>>2]=k[N+(e<<4)>>2];k[h+(e+O<<2)>>2]=k[N+(e<<4)+4>>2];k[h+(e+H<<2)>>2]=k[N+(e<<4)+8>>2];k[h+(e+J<<2)>>2]=k[N+(e<<4)+12>>2]}while((n|0)>1)}j=j+-4|0;if((j|0)<=3)break;else{h=h+(I<<2)|0;i=i-I|0}}d=K+d+l|0}else g=s;f=v&3;b:do if(!f)S=21;else{ah(Q,g,O,d);bh(Q);if((x|0)>0)d=x;else{i=v-q|0;k[F>>2]=i;f=(k[m>>2]|0)%2|0;k[G>>2]=f;j=q;h=s;break}while(1){e=d;d=d+-1|0;switch(f|0){case 3:{k[g+(d+H<<2)>>2]=k[N+(d<<4)+8>>2];S=18;break}case 2:{S=18;break}case 1:{S=19;break}default:{}}if((S|0)==18){k[g+(d+O<<2)>>2]=k[N+(d<<4)+4>>2];S=19}if((S|0)==19){S=0;k[g+(d<<2)>>2]=k[N+(d<<4)>>2]}if((e|0)<=1){S=21;break b}}}while(0);if((S|0)==21){S=0;i=v-q|0;k[F>>2]=i;f=(k[m>>2]|0)%2|0;k[G>>2]=f;if((x|0)>3){n=(u|0)==(t|0);o=o+-4-p|0;m=k[C>>2]|0;j=(m|0)>0;h=1-f|0;l=(i|0)>0;e=s;g=x;while(1){if(j){d=0;do{q=c+((d<<1)+f<<4)|0;p=e+((ha(d,O)|0)<<2)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(m|0))}if(l){d=0;do{q=c+(h+(d<<1)<<4)|0;p=e+((ha(d+m|0,O)|0)<<2)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(i|0))}bh(R);if(!n){c=k[R>>2]|0;d=0;do{q=e+((ha(d,O)|0)<<2)|0;p=c+(d<<4)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(v|0))}g=g+-4|0;if((g|0)<=3)break;else e=e+16|0}j=m;h=s+((o+4&-4)<<2)|0}else{j=q;h=s}}g=x&3;if(g){c=k[R>>2]|0;if((j|0)>0){d=g<<2;e=0;do{cj(c+((e<<1)+f<<4)|0,h+((ha(e,O)|0)<<2)|0,d|0)|0;e=e+1|0}while((e|0)!=(j|0))}d=1-f|0;if((i|0)>0){e=g<<2;f=0;do{cj(c+(d+(f<<1)<<4)|0,h+((ha(f+j|0,O)|0)<<2)|0,e|0)|0;f=f+1|0}while((f|0)!=(i|0))}bh(R);if((u|0)!=(t|0)){d=g<<2;e=0;do{cj(h+((ha(e,O)|0)<<2)|0,c+(e<<4)|0,d|0)|0;e=e+1|0}while((e|0)!=(v|0))}}b=b+-1|0;if(!b)break a;f=k[P>>2]|0;d=k[a>>2]|0;q=v;e=w;g=x}}while(0);ad(N);S=1;r=T;return S|0}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!d){d=(b|0)>0;if(!(d|(c|0)>1))return;if(d){d=a+((c<<1)+-2<<2)|0;e=0;do{i=e;e=e+1|0;j=a+((i<<1|1)<<2)|0;k[j>>2]=(k[j>>2]|0)-((k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((i|0)<(c|0)?a+(i<<1<<2)|0:d)>>2]|0)>>1)}while((e|0)!=(b|0))}if((c|0)<=0)return;e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;j=a+(g<<1<<2)|0;k[j>>2]=((k[d>>2]|0)+2+(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)>>2)+(k[j>>2]|0);g=g+1|0}while((g|0)!=(c|0));return}if((b|0)==1&(c|0)==0){k[a>>2]=k[a>>2]<<1;return}if((b|0)>0){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;h=a+(h<<2)|0;k[h>>2]=(k[h>>2]|0)-((k[d>>2]|0)+i>>1);j=j+1|0}while((j|0)!=(b|0))}if((c|0)<=0)return;d=a+((b<<1)+-2<<2)|0;e=0;do{i=e;e=e+1|0;j=a+((i<<1|1)<<2)|0;k[j>>2]=((k[((i|0)<(b|0)?a+(i<<1<<2)|0:d)>>2]|0)+2+(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)>>2)+(k[j>>2]|0)}while((e|0)!=(c|0));return}function Zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=(k[a+8>>2]|0)-(k[a>>2]|0)|0;f=k[a+16>>2]|0;h=f+-1|0;x=k[a+32>>2]|0;g=k[a+24>>2]|0;e=(h|0)==0;if(e)a=0;else{c=g;d=h;a=0;do{v=c;c=c+136|0;u=(k[v+144>>2]|0)-(k[c>>2]|0)|0;a=a>>>0<u>>>0?u:a;v=(k[v+148>>2]|0)-(k[v+140>>2]|0)|0;a=a>>>0<v>>>0?v:a;d=d+-1|0}while((d|0)!=0);a=a<<2}v=Zc(a)|0;if(!((a|0)==0|(v|0)!=0)){b=0;return b|0}if(!e){t=f+-2|0;u=t;a=g+(h*136|0)|0;t=g+(t*136|0)|0;while(1){q=k[a>>2]|0;s=(k[a+8>>2]|0)-q|0;m=k[a+4>>2]|0;o=(k[a+12>>2]|0)-m|0;p=(k[t+8>>2]|0)-(k[t>>2]|0)|0;a=k[t+12>>2]|0;c=k[t+4>>2]|0;l=a-c|0;q=q&1;m=m&1;n=o-l|0;r=(s|0)>0;a:do if(r){e=(a|0)==(c|0);h=(o|0)==(l|0);i=v+((m^1)<<2)|0;j=ha(l,w)|0;g=v+(m<<2)|0;if((o|0)>0){f=0;while(1){c=x+(f<<2)|0;a=0;do{d=x+((ha(a,w)|0)+f<<2)|0;k[v+(a<<2)>>2]=k[d>>2];a=a+1|0}while((a|0)!=(o|0));kb[b&3](v,n,l,m);if(!e){d=l;a=g;while(1){d=d+-1|0;k[c>>2]=k[a>>2];if(!d)break;else{c=c+(w<<2)|0;a=a+8|0}}}if(!h){a=n;c=x+(f+j<<2)|0;d=i;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}}f=f+1|0;if((f|0)==(s|0))break a}}if(e){c=0;while(1){kb[b&3](v,n,l,m);if(!h){a=n;d=x+(c+j<<2)|0;e=i;while(1){a=a+-1|0;k[d>>2]=k[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}c=c+1|0;if((c|0)==(s|0))break a}}else e=0;do{kb[b&3](v,n,l,m);a=l;c=x+(e<<2)|0;d=g;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}if(!h){a=n;c=x+(e+j<<2)|0;d=i;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}}e=e+1|0}while((e|0)!=(s|0))}while(0);f=s-p|0;if((o|0)>0){g=(p|0)>0;h=v+(q<<2)|0;i=(f|0)>0;j=v+((q^1)<<2)|0;l=0;do{e=ha(l,w)|0;c=x+(e<<2)|0;if(r){a=0;do{k[v+(a<<2)>>2]=k[x+(a+e<<2)>>2];a=a+1|0}while((a|0)!=(s|0))}kb[b&3](v,f,p,q);if(g){d=0;a=h;while(1){k[c>>2]=k[a>>2];d=d+1|0;if((d|0)==(p|0))break;else{c=c+4|0;a=a+8|0}}}if(i){d=0;a=x+(e+p<<2)|0;c=j;while(1){k[a>>2]=k[c>>2];d=d+1|0;if((d|0)==(f|0))break;else{a=a+4|0;c=c+8|0}}}l=l+1|0}while((l|0)!=(o|0))}if(!u)break;else{a=t;u=u+-1|0;t=t+-136|0}}}cd(v);b=1;return b|0}function _g(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=k[a+4>>2]|0;j=k[a+8>>2]|0;if(!(k[a+12>>2]|0)){d=(i|0)>0;if(!(d|(j|0)>1))return;if((j|0)>0){b=h+4|0;c=(i<<1)+-1|0;e=0;do{if((e|0)<1)a=b;else a=h+((((e|0)>(i|0)?i:e)<<1)+-1<<2)|0;f=e<<1;g=h+(f<<2)|0;k[g>>2]=(k[g>>2]|0)-((k[a>>2]|0)+2+(k[h+(((e|0)<(i|0)?f|1:c)<<2)>>2]|0)>>2);e=e+1|0}while((e|0)!=(j|0))}if(!d)return;a=h+((j<<1)+-2<<2)|0;b=0;do{f=b<<1;e=b;b=b+1|0;g=h+((f|1)<<2)|0;k[g>>2]=((k[((b|0)<(j|0)?h+(b<<1<<2)|0:a)>>2]|0)+(k[((e|0)<(j|0)?h+(f<<2)|0:a)>>2]|0)>>1)+(k[g>>2]|0)}while((b|0)!=(i|0));return}if((i|0)==1&(j|0)==0){k[h>>2]=(k[h>>2]|0)/2|0;return}if((j|0)>0){a=h+((i<<1)+-2<<2)|0;b=0;do{f=b<<1;e=b;b=b+1|0;g=h+((f|1)<<2)|0;k[g>>2]=(k[g>>2]|0)-((k[((e|0)<(i|0)?h+(f<<2)|0:a)>>2]|0)+2+(k[((b|0)<(i|0)?h+(b<<1<<2)|0:a)>>2]|0)>>2)}while((b|0)!=(j|0))}if((i|0)<=0)return;b=h+4|0;c=(j<<1)+-1|0;d=h+(c<<2)|0;g=0;do{e=g<<1;f=k[h+(((g|0)<(j|0)?e|1:c)<<2)>>2]|0;if((g|0)>=1)if((g|0)>(j|0))a=d;else a=h+(e+-1<<2)|0;else a=b;e=h+(e<<2)|0;k[e>>2]=((k[a>>2]|0)+f>>1)+(k[e>>2]|0);g=g+1|0}while((g|0)!=(i|0));return}function $g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;if(!d){i=(b|0)>0;if(!(i|(c|0)>1))return;if(i){d=a+((c<<1)+-2<<2)|0;e=0;do{m=e;e=e+1|0;l=(k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((m|0)<(c|0)?a+(m<<1<<2)|0:d)>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,12993,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+((m<<1|1)<<2)|0;k[m>>2]=(k[m>>2]|0)-l}while((e|0)!=(b|0))}h=(c|0)>0;if(h){e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;l=(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)+(k[d>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,434,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+(g<<1<<2)|0;k[m>>2]=(k[m>>2]|0)-l;g=g+1|0}while((g|0)!=(c|0))}if(i){d=a+((c<<1)+-2<<2)|0;e=0;do{m=e;e=e+1|0;l=(k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((m|0)<(c|0)?a+(m<<1<<2)|0:d)>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,7233,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+((m<<1|1)<<2)|0;k[m>>2]=l+(k[m>>2]|0)}while((e|0)!=(b|0))}if(h){e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;l=(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)+(k[d>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,3633,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+(g<<1<<2)|0;k[m>>2]=l+(k[m>>2]|0);g=g+1|0}while((g|0)!=(c|0))}if(i){d=0;do{m=a+((d<<1|1)<<2)|0;l=k[m>>2]|0;l=hj(l|0,((l|0)<0)<<31>>31|0,5038,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;k[m>>2]=l;d=d+1|0}while((d|0)!=(b|0))}if(h)d=0;else return;do{b=a+(d<<1<<2)|0;m=k[b>>2]|0;m=hj(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;k[b>>2]=m;d=d+1|0}while((d|0)!=(c|0));return}m=(c|0)>0;if(!((b|0)>1|m))return;l=(b|0)>0;if(l){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;d=(k[d>>2]|0)+i|0;d=hj(d|0,((d|0)<0)<<31>>31|0,12993,0)|0;d=aj(d|0,L|0,4096,0)|0;d=bj(d|0,L|0,13)|0;i=a+(h<<2)|0;k[i>>2]=(k[i>>2]|0)-d;j=j+1|0}while((j|0)!=(b|0))}if(m){d=a+((b<<1)+-2<<2)|0;e=0;do{j=e;e=e+1|0;i=(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((j|0)<(b|0)?a+(j<<1<<2)|0:d)>>2]|0)|0;i=hj(i|0,((i|0)<0)<<31>>31|0,434,0)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;j=a+((j<<1|1)<<2)|0;k[j>>2]=(k[j>>2]|0)-i}while((e|0)!=(c|0))}if(l){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;d=(k[d>>2]|0)+i|0;d=hj(d|0,((d|0)<0)<<31>>31|0,7233,0)|0;d=aj(d|0,L|0,4096,0)|0;d=bj(d|0,L|0,13)|0;i=a+(h<<2)|0;k[i>>2]=d+(k[i>>2]|0);j=j+1|0}while((j|0)!=(b|0))}if(m){d=a+((b<<1)+-2<<2)|0;e=0;do{j=e;e=e+1|0;i=(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((j|0)<(b|0)?a+(j<<1<<2)|0:d)>>2]|0)|0;i=hj(i|0,((i|0)<0)<<31>>31|0,3633,0)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;j=a+((j<<1|1)<<2)|0;k[j>>2]=i+(k[j>>2]|0)}while((e|0)!=(c|0))}if(l){d=0;do{l=a+(d<<1<<2)|0;j=k[l>>2]|0;j=hj(j|0,((j|0)<0)<<31>>31|0,5038,0)|0;j=aj(j|0,L|0,4096,0)|0;j=bj(j|0,L|0,13)|0;k[l>>2]=j;d=d+1|0}while((d|0)!=(b|0))}if(m)d=0;else return;do{b=a+((d<<1|1)<<2)|0;m=k[b>>2]|0;m=hj(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;k[b>>2]=m;d=d+1|0}while((d|0)!=(c|0));return}function ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=k[a>>2]|0;h=k[a+12>>2]|0;q=k[a+8>>2]|0;n=c*3|0;l=1-h|0;j=a+4|0;i=q;a=0;while(1){g=m+(h<<4)|0;if(((i+n|0)<(d|0)?(b&15|0)==0:0)?((g|c)&15|0)==0:0){if((i|0)>0){e=0;do{g=e<<3;k[m+(h<<4)+(g<<2)>>2]=k[b+(e<<2)>>2];f=e+c|0;k[m+(h<<4)+((g|1)<<2)>>2]=k[b+(f<<2)>>2];f=f+c|0;k[m+(h<<4)+((g|2)<<2)>>2]=k[b+(f<<2)>>2];k[m+(h<<4)+((g|3)<<2)>>2]=k[b+(f+c<<2)>>2];e=e+1|0}while((e|0)!=(i|0))}}else r=3;if((r|0)==3?(r=0,(i|0)>0):0){g=0;do{e=g<<3;k[m+(h<<4)+(e<<2)>>2]=k[b+(g<<2)>>2];f=g+c|0;if(((f|0)<(d|0)?(k[m+(h<<4)+((e|1)<<2)>>2]=k[b+(f<<2)>>2],o=f+c|0,(o|0)<(d|0)):0)?(k[m+(h<<4)+((e|2)<<2)>>2]=k[b+(o<<2)>>2],p=o+c|0,(p|0)<(d|0)):0)k[m+(h<<4)+((e|3)<<2)>>2]=k[b+(p<<2)>>2];g=g+1|0}while((g|0)!=(i|0))}a=a+1|0;if((a|0)==2)break;else{b=b+(q<<2)|0;d=d-q|0;h=l;i=k[j>>2]|0}}return}function bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0.0,j=0.0,l=0,m=0.0,n=0,p=0;do if(!(k[a+12>>2]|0)){c=k[a+8>>2]|0;if((k[a+4>>2]|0)>0){b=k[a>>2]|0;if((c|0)>0){g=0;e=1;h=9;break}else{g=0;f=1;break}}if((c|0)>1){d=0;e=1;h=7}else return}else{c=k[a+8>>2]|0;if((c|0)<=0)if((k[a+4>>2]|0)>1){b=k[a>>2]|0;g=1;f=0;break}else return;else{d=1;e=0;h=7}}while(0);if((h|0)==7){b=k[a>>2]|0;g=d;h=9}if((h|0)==9){d=0;do{h=d<<3;n=b+(g<<4)+(h<<2)|0;l=b+(g<<4)+((h|1)<<2)|0;m=+o[l>>2];f=b+(g<<4)+((h|2)<<2)|0;j=+o[f>>2];h=b+(g<<4)+((h|3)<<2)|0;i=+o[h>>2];o[n>>2]=+o[n>>2]*1.2301740646362305;o[l>>2]=m*1.2301740646362305;o[f>>2]=j*1.2301740646362305;o[h>>2]=i*1.2301740646362305;d=d+1|0}while((d|0)!=(c|0));f=e}d=k[a+4>>2]|0;if((d|0)>0){e=0;do{n=e<<3;h=b+(f<<4)+(n<<2)|0;a=b+(f<<4)+((n|1)<<2)|0;i=+o[a>>2];l=b+(f<<4)+((n|2)<<2)|0;j=+o[l>>2];n=b+(f<<4)+((n|3)<<2)|0;m=+o[n>>2];o[h>>2]=+o[h>>2]*1.625732421875;o[a>>2]=i*1.625732421875;o[l>>2]=j*1.625732421875;o[n>>2]=m*1.625732421875;e=e+1|0}while((e|0)!=(d|0))}p=b+(f<<4)|0;e=b+(g+1<<4)|0;h=d-g|0;h=(c|0)<(h|0)?c:h;ch(p,e,c,h,-.4435068666934967);a=b+(g<<4)|0;l=b+(f+1<<4)|0;n=c-f|0;n=(d|0)<(n|0)?d:n;ch(a,l,d,n,-.8829110860824585);ch(p,e,c,h,.05298011749982834);ch(a,l,d,n,1.5861343145370483);return}function ch(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0.0;if((d|0)>0){l=d<<1;k=l+-2|0;g=+o[a>>2];h=+o[a+4>>2];i=+o[a+8>>2];f=+o[a+12>>2];a=b;j=0;while(1){w=a+-16|0;t=a+-12|0;v=+o[t>>2];q=a+-8|0;s=+o[q>>2];m=a+-4|0;p=+o[m>>2];x=g;g=+o[a>>2];u=h;h=+o[a+4>>2];r=i;i=+o[a+8>>2];n=f;f=+o[a+12>>2];o[w>>2]=+o[w>>2]+(x+g)*e;o[t>>2]=v+(u+h)*e;o[q>>2]=s+(r+i)*e;o[m>>2]=p+(n+f)*e;j=j+1|0;if((j|0)==(d|0))break;else a=a+32|0}a=b+(k<<4)|0;b=b+(l<<4)|0}if((d|0)>=(c|0))return;f=e+e;g=f*+o[a>>2];h=f*+o[a+4>>2];i=f*+o[a+8>>2];f=f*+o[a+12>>2];while(1){m=b+-16|0;q=b+-12|0;u=+o[q>>2];t=b+-8|0;v=+o[t>>2];w=b+-4|0;x=+o[w>>2];o[m>>2]=g+ +o[m>>2];o[q>>2]=h+u;o[t>>2]=i+v;o[w>>2]=f+x;d=d+1|0;if((d|0)==(c|0))break;else b=b+32|0}return}function dh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;x=c<<2;y=Zc(c<<4)|0;if(!y){a=0;return a|0}z=y+x|0;_i(y|0,0,x|0)|0;v=c+-1|0;u=(c|0)==0;if(!u){d=0;e=y;while(1){k[e>>2]=d;d=d+1|0;if((d|0)==(c|0))break;else e=e+4|0}}a:do if(v){q=v;h=0;d=0;r=a;s=1;t=y;while(1){i=r+(h<<2)|0;if(h>>>0<c>>>0){g=h;e=i;f=0.0}else break;while(1){n=+o[e>>2];n=n>0.0?n:-n;w=n>f;d=w?g:d;f=w?n:f;g=g+1|0;if((g|0)==(c|0))break;else e=e+(c<<2)|0}if(f==0.0)break;if((d|0)!=(h|0)){w=d-h|0;p=t+(w<<2)|0;m=k[t>>2]|0;k[t>>2]=k[p>>2];k[p>>2]=m;w=r+((ha(w,c)|0)<<2)|0;cj(z|0,w|0,x|0)|0;cj(w|0,r|0,x|0)|0;cj(r|0,z|0,x|0)|0}e=h;p=h+1|0;n=+o[i>>2];if(s>>>0<c>>>0){j=r+(p<<2)|0;m=p+q|0;l=s;g=r+(e+c<<2)|0;while(1){f=+o[g>>2]/n;o[g>>2]=f;e=s;h=g;i=j;while(1){h=h+4|0;o[h>>2]=+o[h>>2]-f*+o[i>>2];e=e+1|0;if((e|0)==(c|0))break;else i=i+4|0}l=l+1|0;if((l|0)==(c|0))break;else g=g+(m<<2)|0}}if(p>>>0<v>>>0){q=q+-1|0;h=p;r=r+(c<<2)|0;s=s+1|0;t=t+4|0}else break a}cd(y);a=0;return a|0}while(0);d=c<<1;w=z+(d<<2)|0;if(!u){u=z+(v+c<<2)|0;q=z+(d+v<<2)|0;r=a+((ha(c,c)|0)+-1<<2)|0;s=~c;t=0;p=b;while(1){_i(z|0,0,x|0)|0;o[z+(t<<2)>>2]=1.0;h=0;i=1;j=y;l=w;m=a;while(1){if(!h)f=0.0;else{d=1;e=w;g=m;f=0.0;while(1){f=f+ +o[g>>2]*+o[e>>2];d=d+1|0;if((d|0)==(i|0))break;else{e=e+4|0;g=g+4|0}}}o[l>>2]=+o[z+(k[j>>2]<<2)>>2]-f;h=h+1|0;if((h|0)==(c|0)){h=c;i=u;j=w;l=q;m=r;break}else{i=i+1|0;j=j+4|0;l=l+4|0;m=m+(c<<2)|0}}while(1){d=h;h=h+-1|0;n=+o[m>>2];if(d>>>0<c>>>0){e=j;g=m;f=0.0;while(1){g=g+4|0;f=f+ +o[g>>2]*+o[e>>2];d=d+1|0;if((d|0)==(c|0))break;else e=e+4|0}}else f=0.0;j=j+-4|0;o[i>>2]=(+o[l>>2]-f)/n;if(!h){d=0;e=p;break}else{i=i+-4|0;l=l+-4|0;m=m+(s<<2)|0}}while(1){k[e>>2]=k[z+(d+c<<2)>>2];d=d+1|0;if((d|0)==(c|0))break;else e=e+(c<<2)|0}t=t+1|0;if((t|0)==(c|0))break;else p=p+4|0}}cd(y);a=1;return a|0}function eh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=_c(1,44)|0;if(!f){f=0;return f|0}g=rh()|0;k[f>>2]=g;if(!g){sh(0);k[f>>2]=0;g=f+4|0;Ih(k[g>>2]|0);k[g>>2]=0;if((k[f+40>>2]|0)==0?(c=f+8|0,b=k[c>>2]|0,(b|0)!=0):0){ad(b);k[c>>2]=0}b=f+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(f);g=0;return g|0}g=Hh()|0;b=f+4|0;k[b>>2]=g;if(g){k[f+40>>2]=a;g=f;return g|0}sh(k[f>>2]|0);k[f>>2]=0;Ih(k[b>>2]|0);k[b>>2]=0;if((k[f+40>>2]|0)==0?(d=f+8|0,e=k[d>>2]|0,(e|0)!=0):0){ad(e);k[d>>2]=0}b=f+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(f);g=0;return g|0}function fh(a){a=a|0;var b=0,c=0,d=0;if(!a)return;sh(k[a>>2]|0);k[a>>2]=0;d=a+4|0;Ih(k[d>>2]|0);k[d>>2]=0;if((k[a+40>>2]|0)==0?(b=a+8|0,c=k[b>>2]|0,(c|0)!=0):0){ad(c);k[b>>2]=0}b=a+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(a);return}function gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,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;ya=(k[b+8>>2]|0)-(k[b>>2]|0)|0;za=b+20|0;d=k[za>>2]|0;if(!d){a=1;return a|0}Aa=b+24|0;Ba=c+808|0;Ca=c+16|0;ta=a+4|0;va=a+8|0;wa=a+16|0;xa=a+20|0;sa=c+20|0;pa=b+32|0;qa=a+32|0;ra=a+12|0;c=d;oa=0;a:while(1){ma=k[Aa>>2]|0;na=ma+(oa*136|0)+24|0;b=k[na>>2]|0;if(b){ja=ma+(oa*136|0)+16|0;ka=ma+(oa*136|0)+20|0;la=oa+-1|0;c=k[ka>>2]|0;d=k[ja>>2]|0;ia=0;do{if(ha(c,d)|0){ca=ma+(oa*136|0)+28+(ia*36|0)+20|0;da=ma+(oa*136|0)+28+(ia*36|0)+16|0;ea=ma+(oa*136|0)+28+(ia*36|0)|0;fa=ma+(oa*136|0)+28+(ia*36|0)+4|0;ga=ma+(oa*136|0)+28+(ia*36|0)+32|0;ba=0;do{b=k[ca>>2]|0;$=b+(ba*40|0)+16|0;aa=b+(ba*40|0)+20|0;if(ha(k[aa>>2]|0,k[$>>2]|0)|0){Z=b+(ba*40|0)+24|0;_=0;do{c=k[Z>>2]|0;S=k[da>>2]|0;e=k[Ba>>2]|0;b=k[Ca>>2]|0;T=k[ta>>2]|0;U=k[a>>2]|0;V=c+(_*56|0)+8|0;Y=c+(_*56|0)+12|0;if(!(ih(a,(k[c+(_*56|0)+16>>2]|0)-(k[V>>2]|0)|0,(k[c+(_*56|0)+20>>2]|0)-(k[Y>>2]|0)|0)|0)){c=0;G=201;break a}W=c+(_*56|0)+24|0;f=k[W>>2]|0;Ah(U);Bh(U,18,0,46);Bh(U,17,0,3);Bh(U,0,0,4);X=c+(_*56|0)+48|0;d=k[X>>2]|0;if(d){N=c+(_*56|0)+4|0;O=(b&1|0)!=0;P=(b&2|0)==0;Q=(b&8|0)==0;R=S<<8;M=(b&32|0)==0;b=f+e|0;c=2;L=0;do{f=k[N>>2]|0;K=O&(c>>>0<2?(b|0)<=((k[W>>2]|0)+-4|0):0);e=k[f+(L<<5)>>2]|0;if(e){d=(k[e>>2]|0)+(k[f+(L<<5)+4>>2]|0)|0;e=k[f+(L<<5)+16>>2]|0;if(!K){if(!(Fh(U,d,e)|0)){c=0;G=201;break a}}else Jh(T,d,e);I=f+(L<<5)+12|0;b:do if(k[I>>2]|0){J=P|K;H=0;while(1){c:do switch(c|0){case 0:{if(K){w=1<<b;w=w>>1|w;e=k[xa>>2]|0;if(!e)break c;v=0-w|0;d=k[wa>>2]|0;u=0;while(1){t=u;u=u+4|0;if(!d)d=0;else{q=(t|0)==-4;r=t|3;s=0;do{d:do if(!q)if(Q){n=t;do{if(n>>>0>=(k[xa>>2]|0)>>>0)break d;h=n;n=n+1|0;d=(ha(k[qa>>2]|0,n)|0)+s|0;e=d+1|0;f=k[ra>>2]|0;g=f+(e<<1)|0;h=(ha(k[wa>>2]|0,h)|0)+s|0;h=(k[va>>2]|0)+(h<<2)|0;i=k[ta>>2]|0;G=j[g>>1]|0;if((G&255|0)!=0&(G&20480|0)==0){if(Kh(i)|0){D=Kh(i)|0;k[h>>2]=(D|0)!=0?v:w;F=k[qa>>2]|0;G=f+(e-F<<1)|0;E=f+(F+e<<1)|0;C=f+(e+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=d+2|0;C=f+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=f+(d<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[g>>1]=m[g>>1]|4096;C=f+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=f+(F+d<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=f+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[g>>1]=m[g>>1]|16384}}while(n>>>0<u>>>0)}else{p=t;do{d=k[xa>>2]|0;if(p>>>0>=d>>>0)break d;F=p;p=p+1|0;e=(ha(k[qa>>2]|0,p)|0)+s|0;f=e+1|0;g=k[ra>>2]|0;h=g+(f<<1)|0;i=(ha(k[wa>>2]|0,F)|0)+s|0;i=(k[va>>2]|0)+(i<<2)|0;n=k[ta>>2]|0;G=j[h>>1]|0;G=(F|0)==(r|0)|(F|0)==(d+-1|0)?G&-1095:G;if((G&255|0)!=0&(G&20480|0)==0){if(Kh(n)|0){D=Kh(n)|0;k[i>>2]=(D|0)!=0?v:w;F=k[qa>>2]|0;G=g+(f-F<<1)|0;E=g+(F+f<<1)|0;C=g+(f+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=e+2|0;C=g+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=g+(e<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[h>>1]=m[h>>1]|4096;C=g+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=g+(F+e<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=g+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[h>>1]=m[h>>1]|16384}}while(p>>>0<u>>>0)}while(0);s=s+1|0;d=k[wa>>2]|0}while(s>>>0<d>>>0);e=k[xa>>2]|0}if(u>>>0>=e>>>0){G=163;break c}}}if(Q){f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;r=1<<b;r=r>>1|r;d=k[xa>>2]|0;e=k[wa>>2]|0;if(d>>>0>3){n=e;i=0;while(1){if(!e){e=n;h=0}else{e=0;do{G=(k[qa>>2]|0)+e|0;jh(a,g+(G<<1)|0,f+(e<<2)|0,S,r);d=(k[wa>>2]|0)+e|0;G=(k[qa>>2]|0)+G|0;jh(a,g+(G<<1)|0,f+(d<<2)|0,S,r);d=(k[wa>>2]|0)+d|0;G=(k[qa>>2]|0)+G|0;jh(a,g+(G<<1)|0,f+(d<<2)|0,S,r);jh(a,g+((k[qa>>2]|0)+G<<1)|0,f+((k[wa>>2]|0)+d<<2)|0,S,r);e=e+1|0;d=k[wa>>2]|0}while(e>>>0<d>>>0);e=d;h=d;d=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=g+(k[qa>>2]<<2<<1)|0;i=i+4|0;if(i>>>0<(d&-4)>>>0){n=e;e=h}else{q=g;p=i;break}}}else{q=g;p=0}if(!e){G=163;break c}else n=0;while(1){if(p>>>0<d>>>0){g=f+(n<<2)|0;h=q+(n<<1)|0;i=p;while(1){h=h+(k[qa>>2]<<1)|0;jh(a,h,g,S,r);e=k[wa>>2]|0;i=i+1|0;d=k[xa>>2]|0;if(i>>>0>=d>>>0)break;else g=g+(e<<2)|0}}n=n+1|0;if(n>>>0>=e>>>0){G=163;break c}}}w=1<<b;w=w>>1|w;d=k[xa>>2]|0;if(!d){G=163;break c}x=0-w|0;e=k[wa>>2]|0;g=e;v=0;while(1){u=v;v=v+4|0;do if(!e){f=g;e=0}else{t=u|3;if((u|0)==-4){f=g;e=g;break}else s=0;do{r=u;do{d=k[xa>>2]|0;if(r>>>0>=d>>>0)break;G=r;r=r+1|0;g=(ha(k[qa>>2]|0,r)|0)+s|0;h=g+1|0;i=k[ra>>2]|0;n=i+(h<<1)|0;p=(ha(k[wa>>2]|0,G)|0)+s|0;p=(k[va>>2]|0)+(p<<2)|0;q=k[a>>2]|0;e=j[n>>1]|0;d=(G|0)==(t|0)|(G|0)==(d+-1|0)?e&-1095:e;e=d&255;if((e|0)!=0&(d&20480|0)==0){f=q+100|0;k[f>>2]=q+24+(l[20267+(e|R)>>0]<<2);if(Gh(q)|0){F=d>>>4&255;k[f>>2]=q+24+(l[21291+F>>0]<<2);G=Gh(q)|0;F=l[21547+F>>0]|0;D=F^G;k[p>>2]=(G|0)!=(F|0)?x:w;F=k[qa>>2]|0;G=i+(h-F<<1)|0;E=i+(F+h<<1)|0;C=i+(h+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=g+2|0;C=i+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=i+(g<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[n>>1]=m[n>>1]|4096;C=i+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=i+(F+g<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=i+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[n>>1]=m[n>>1]|16384}}while(r>>>0<v>>>0);s=s+1|0;d=k[wa>>2]|0}while(s>>>0<d>>>0);f=d;e=d;d=k[xa>>2]|0}while(0);if(v>>>0>=d>>>0){G=163;break}else g=f}break}case 1:{if(K){q=1<<b>>1;r=(b|0)>0?0-q|0:-1;e=k[xa>>2]|0;if(!e)break c;f=k[wa>>2]|0;d=f;p=0;while(1){n=p;p=p+4|0;if(!f){g=d;f=0}else{i=(n|0)==-4;h=0;do{g=h;h=h+1|0;if(!i){f=n;do{if(f>>>0>=(k[xa>>2]|0)>>>0)break;e=f;f=f+1|0;d=(ha(k[qa>>2]|0,f)|0)+h|0;d=(k[ra>>2]|0)+(d<<1)|0;e=(ha(k[wa>>2]|0,e)|0)+g|0;e=(k[va>>2]|0)+(e<<2)|0;if((j[d>>1]&20480)==4096){F=(Kh(k[ta>>2]|0)|0)!=0;F=F?q:r;G=k[e>>2]|0;k[e>>2]=((G|0)<0?0-F|0:F)+G;j[d>>1]=m[d>>1]|8192}}while(f>>>0<p>>>0);d=k[wa>>2]|0}}while(h>>>0<d>>>0);g=d;f=d;e=k[xa>>2]|0}if(p>>>0>=e>>>0){G=163;break c}else d=g}}if(!Q){t=1<<b>>1;u=(b|0)>0?0-t|0:-1;d=k[xa>>2]|0;if(!d){G=163;break c}e=k[wa>>2]|0;f=e;s=0;while(1){r=s;s=s+4|0;if(!e)e=0;else{p=(r|0)==-4;q=r|3;d=f;n=0;do{i=n;n=n+1|0;if(!p){g=r;do{d=k[xa>>2]|0;if(g>>>0>=d>>>0)break;F=g;g=g+1|0;e=(ha(k[qa>>2]|0,g)|0)+n|0;e=(k[ra>>2]|0)+(e<<1)|0;f=(ha(k[wa>>2]|0,F)|0)+i|0;f=(k[va>>2]|0)+(f<<2)|0;h=k[a>>2]|0;G=j[e>>1]|0;d=(F|0)==(q|0)|(F|0)==(d+-1|0)?G&-1095:G;if((d&20480|0)==4096){k[h+100>>2]=h+24+(((d&8192|0)!=0?16:(d&255|0)!=0?15:14)<<2);F=(Gh(h)|0)!=0;F=F?t:u;G=k[f>>2]|0;k[f>>2]=((G|0)<0?0-F|0:F)+G;j[e>>1]=m[e>>1]|8192}}while(g>>>0<s>>>0);d=k[wa>>2]|0}}while(n>>>0<d>>>0);f=d;e=d;d=k[xa>>2]|0}if(s>>>0>=d>>>0){G=163;break c}}}f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;v=1<<b>>1;w=(b|0)>0?0-v|0:-1;d=k[xa>>2]|0;e=k[wa>>2]|0;if(d>>>0>3){i=e;t=g;u=0;while(1){if(!e){e=i;h=0}else{d=i;s=0;do{e=f+(s<<2)|0;i=k[qa>>2]|0;p=i+s|0;g=t+(p<<1)|0;n=k[a>>2]|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[n+100>>2]=n+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);i=(Gh(n)|0)!=0;i=i?v:w;d=k[e>>2]|0;k[e>>2]=((d|0)<0?0-i|0:i)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}else{e=i;i=n}q=d+s|0;n=f+(q<<2)|0;r=e+p|0;g=t+(r<<1)|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);e=(Gh(i)|0)!=0;e=e?v:w;d=k[n>>2]|0;k[n>>2]=((d|0)<0?0-e|0:e)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}p=d+q|0;n=f+(p<<2)|0;q=e+r|0;g=t+(q<<1)|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);e=(Gh(i)|0)!=0;e=e?v:w;d=k[n>>2]|0;k[n>>2]=((d|0)<0?0-e|0:e)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}h=f+(d+p<<2)|0;e=t+(e+q<<1)|0;g=j[e>>1]|0;if((g&20480|0)==4096){k[i+100>>2]=i+24+(((g&8192|0)!=0?16:(g&255|0)!=0?15:14)<<2);G=(Gh(i)|0)!=0;G=G?v:w;d=k[h>>2]|0;k[h>>2]=((d|0)<0?0-G|0:G)+d;j[e>>1]=m[e>>1]|8192;d=k[wa>>2]|0}s=s+1|0}while(s>>>0<d>>>0);e=d;h=d;d=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=t+(k[qa>>2]<<2<<1)|0;n=u+4|0;if(n>>>0<(d&-4)>>>0){i=e;e=h;t=g;u=n}else{s=n;break}}}else s=0;if(!e){G=163;break c}else r=0;do{if(s>>>0<d>>>0){n=f+(r<<2)|0;p=g+(r<<1)|0;q=s;while(1){p=p+(k[qa>>2]<<1)|0;i=k[a>>2]|0;h=j[p>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);d=(Gh(i)|0)!=0;d=d?v:w;h=k[n>>2]|0;k[n>>2]=((h|0)<0?0-d|0:d)+h;j[p>>1]=m[p>>1]|8192;h=k[wa>>2]|0;d=k[xa>>2]|0}else h=e;q=q+1|0;if(q>>>0>=d>>>0){e=h;break}else{e=h;n=n+(h<<2)|0}}}r=r+1|0}while(r>>>0<e>>>0);G=163;break}case 2:{E=k[a>>2]|0;F=1<<b;F=F>>1|F;do if(Q){f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;e=k[xa>>2]|0;if(e>>>0>3){w=E+92|0;x=E+100|0;y=E+96|0;z=0-F|0;h=k[wa>>2]|0;d=h;n=0;while(1){if(!h)h=0;else{r=n|1;s=r+1|0;t=n|3;u=r+3|0;v=0;do{d=k[qa>>2]|0;e=v;v=v+1|0;C=(ha(d,r)|0)+v|0;B=k[ra>>2]|0;A=B+((ha(d,s)|0)+v<<1)|0;D=B+((ha(d,t)|0)+v<<1)|0;G=B+((ha(d,u)|0)+v<<1)|0;e:do if(!((j[A>>1]|j[B+(C<<1)>>1]|j[D>>1]|j[G>>1])&20735)){k[x>>2]=w;if(!(Gh(E)|0))break;k[x>>2]=y;p=(Gh(E)|0)<<1;p=p|(Gh(E)|0);if(p>>>0>=4)break;q=f+((ha(k[wa>>2]|0,p)|0)+e<<2)|0;e=g+((ha(k[qa>>2]|0,p)|0)+e<<1)|0;i=p;while(1){if(i>>>0>=(k[xa>>2]|0)>>>0)break e;d=k[qa>>2]|0;h=e;e=e+(d<<1)|0;if((i|0)==(p|0)){G=k[a>>2]|0;D=(m[e>>1]|0)>>>4&255;k[G+100>>2]=G+24+(l[21291+D>>0]<<2);G=Gh(G)|0;D=l[21547+D>>0]|0;B=D^G;k[q>>2]=(G|0)!=(D|0)?z:F;D=k[qa>>2]|0;G=h+(d-D<<1)|0;C=h+(D+d<<1)|0;A=h+(d+~D<<1)|0;j[A>>1]=m[A>>1]|2;j[G>>1]=j[G>>1]|j[3436+(B<<1)>>1];G=d+1|0;A=h+(G-D<<1)|0;j[A>>1]=m[A>>1]|4;A=d+-1|0;d=h+(A<<1)|0;j[d>>1]=j[d>>1]|j[3436+(B+2<<1)>>1];j[e>>1]=m[e>>1]|4096;d=h+(G<<1)|0;j[d>>1]=j[d>>1]|j[3436+(B+4<<1)>>1];A=h+(D+A<<1)|0;j[A>>1]=m[A>>1]|1;j[C>>1]=j[C>>1]|j[3436+(B+6<<1)>>1];G=h+(D+G<<1)|0;j[G>>1]=m[G>>1]|8;j[e>>1]=m[e>>1]&49151}else kh(a,e,q,S,F);i=i+1|0;if(i>>>0>=4)break;else q=q+(k[wa>>2]<<2)|0}}else{D=d+e|0;kh(a,g+(D<<1)|0,f+(e<<2)|0,S,F);G=(k[wa>>2]|0)+e|0;D=(k[qa>>2]|0)+D|0;kh(a,g+(D<<1)|0,f+(G<<2)|0,S,F);G=(k[wa>>2]|0)+G|0;D=(k[qa>>2]|0)+D|0;kh(a,g+(D<<1)|0,f+(G<<2)|0,S,F);kh(a,g+((k[qa>>2]|0)+D<<1)|0,f+((k[wa>>2]|0)+G<<2)|0,S,F)}while(0);d=k[wa>>2]|0}while(v>>>0<d>>>0);h=d;e=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=g+(k[qa>>2]<<2<<1)|0;n=n+4|0;if(n>>>0>=(e&-4)>>>0){q=f;p=g;break}}}else{d=k[wa>>2]|0;q=f;p=g;n=0}if(!d)break;else i=0;do{if(n>>>0<e>>>0){f=q+(i<<2)|0;g=p+(i<<1)|0;h=n;while(1){g=g+(k[qa>>2]<<1)|0;kh(a,g,f,S,F);d=k[wa>>2]|0;h=h+1|0;e=k[xa>>2]|0;if(h>>>0>=e>>>0)break;else f=f+(d<<2)|0}}i=i+1|0}while(i>>>0<d>>>0)}else{d=k[xa>>2]|0;if(!d)break;A=E+92|0;B=E+100|0;C=E+96|0;D=0-F|0;e=k[wa>>2]|0;z=0;while(1){if(!e){f=z+4|0;e=0}else{v=z|3;w=z|1;x=w+1|0;y=w+3|0;f=z+4|0;u=0;while(1){do if(v>>>0<d>>>0){d=k[qa>>2]|0;g=u+1|0;t=(ha(d,w)|0)+g|0;e=k[ra>>2]|0;if(j[e+(t<<1)>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,x)|0)+g<<1)|0;if(j[t>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,v)|0)+g<<1)|0;if(j[t>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,y)|0)+g<<1)|0;if(j[t>>1]&20665){t=0;d=0;G=127;break}k[B>>2]=A;if(!(Gh(E)|0))break;k[B>>2]=C;d=(Gh(E)|0)<<1;t=1;d=d|(Gh(E)|0);G=127}else{t=0;d=0;G=127}while(0);if((G|0)==127){G=0;g=d+z|0;f:do if(g>>>0<f>>>0){s=g;do{d=k[xa>>2]|0;if(s>>>0>=d>>>0)break f;Da=s;s=s+1|0;h=(ha(k[qa>>2]|0,s)|0)+u|0;i=h+1|0;n=k[ra>>2]|0;p=n+(i<<1)|0;q=(ha(k[wa>>2]|0,Da)|0)+u|0;q=(k[va>>2]|0)+(q<<2)|0;r=k[a>>2]|0;e=j[p>>1]|0;e=(Da|0)==(v|0)|(Da|0)==(d+-1|0)?e&-1095:e;do if(!(t&(Da|0)==(g|0))){if(e&20480)break;d=r+100|0;k[d>>2]=r+24+(l[20267+(e&255|R)>>0]<<2);if(Gh(r)|0)G=133}else{d=r+100|0;G=133}while(0);if((G|0)==133){G=0;e=e>>>4&255;k[d>>2]=r+24+(l[21291+e>>0]<<2);Da=Gh(r)|0;r=l[21547+e>>0]|0;e=r^Da;k[q>>2]=(Da|0)!=(r|0)?D:F;r=k[qa>>2]|0;Da=n+(i-r<<1)|0;q=n+(r+i<<1)|0;i=n+(i+~r<<1)|0;j[i>>1]=m[i>>1]|2;j[Da>>1]=j[Da>>1]|j[3436+(e<<1)>>1];Da=h+2|0;i=n+(Da-r<<1)|0;j[i>>1]=m[i>>1]|4;i=n+(h<<1)|0;j[i>>1]=j[i>>1]|j[3436+(e+2<<1)>>1];j[p>>1]=m[p>>1]|4096;i=n+(Da<<1)|0;j[i>>1]=j[i>>1]|j[3436+(e+4<<1)>>1];i=n+(r+h<<1)|0;j[i>>1]=m[i>>1]|1;j[q>>1]=j[q>>1]|j[3436+(e+6<<1)>>1];Da=n+(r+Da<<1)|0;j[Da>>1]=m[Da>>1]|8}j[p>>1]=m[p>>1]&49151}while(s>>>0<f>>>0)}while(0);g=u+1|0}e=k[wa>>2]|0;d=k[xa>>2]|0;if(g>>>0<e>>>0)u=g;else break}}if(f>>>0<d>>>0)z=f;else break}}while(0);if(M){G=163;break c}k[E+100>>2]=E+96;Gh(E)|0;Gh(E)|0;Gh(E)|0;Gh(E)|0;G=163;break}default:G=163}while(0);do if((G|0)==163){G=0;if(J)break;Ah(U);Bh(U,18,0,46);Bh(U,17,0,3);Bh(U,0,0,4)}while(0);c=c+1|0;Da=(c|0)==3;b=(Da<<31>>31)+b|0;c=Da?0:c;H=H+1|0;if(H>>>0>=(k[I>>2]|0)>>>0)break b}}while(0);d=k[X>>2]|0}L=L+1|0}while(L>>>0<d>>>0)}c=(k[V>>2]|0)-(k[ea>>2]|0)|0;b=(k[Y>>2]|0)-(k[fa>>2]|0)|0;d=k[da>>2]|0;if(d&1){Da=k[Aa>>2]|0;c=(k[Da+(la*136|0)+8>>2]|0)+c-(k[Da+(la*136|0)>>2]|0)|0}if(d&2){Da=k[Aa>>2]|0;b=(k[Da+(la*136|0)+12>>2]|0)+b-(k[Da+(la*136|0)+4>>2]|0)|0}p=k[va>>2]|0;q=k[wa>>2]|0;r=k[xa>>2]|0;d=k[Ba>>2]|0;if((d|0)!=0?(ua=1<<d,(r|0)!=0):0){d=(q|0)==0;n=0;do{if(!d){e=ha(n,q)|0;i=0;do{f=p+(i+e<<2)|0;g=k[f>>2]|0;h=(g|0)>-1?g:0-g|0;if((h|0)>=(ua|0)){Da=h>>k[Ba>>2];k[f>>2]=(g|0)<0?0-Da|0:Da}i=i+1|0}while((i|0)!=(q|0))}n=n+1|0}while((n|0)!=(r|0))}i=(ha(b,ya)|0)+c|0;n=k[pa>>2]|0;c=(r|0)==0;if((k[sa>>2]|0)==1){if(!c){c=(q|0)==0;f=0;do{if(!c){b=ha(f,q)|0;d=(ha(f,ya)|0)+i|0;e=0;do{k[n+(d+e<<2)>>2]=(k[p+(e+b<<2)>>2]|0)/2|0;e=e+1|0}while((e|0)!=(q|0))}f=f+1|0}while((f|0)!=(r|0))}}else if(!c){h=(q|0)==0;c=p;g=0;f=n+(i<<2)|0;while(1){if(!h){b=c;d=0;e=f;while(1){o[e>>2]=+(k[b>>2]|0)*+o[ga>>2];d=d+1|0;if((d|0)==(q|0))break;else{b=b+4|0;e=e+4|0}}c=c+(q<<2)|0}g=g+1|0;if((g|0)==(r|0))break;else f=f+(ya<<2)|0}}_=_+1|0}while(_>>>0<(ha(k[aa>>2]|0,k[$>>2]|0)|0)>>>0);c=k[ka>>2]|0;d=k[ja>>2]|0}ba=ba+1|0}while(ba>>>0<(ha(c,d)|0)>>>0);b=k[na>>2]|0}ia=ia+1|0}while(ia>>>0<b>>>0);c=k[za>>2]|0}oa=oa+1|0;if(oa>>>0>=c>>>0){c=1;G=201;break}}if((G|0)==201)return c|0;return 0}function hh(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,n=0,q=0,r=0,s=0.0,t=0.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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0;Ya=b+32|0;p[Ya>>3]=0.0;Za=b+16|0;f=k[Za>>2]|0;if(!f){_a=1;return _a|0}Xa=b+20|0;Sa=c+5584|0;Ta=a+16|0;Ua=a+20|0;Va=a+8|0;Wa=a+36|0;Pa=(d|0)!=0;Qa=a+32|0;Ra=a+12|0;b=f;Oa=0;a:while(1){c=k[Xa>>2]|0;f=k[Sa>>2]|0;Ma=(k[c+(Oa*52|0)+8>>2]|0)-(k[c+(Oa*52|0)>>2]|0)|0;Na=c+(Oa*52|0)+16|0;g=k[Na>>2]|0;if(g){La=c+(Oa*52|0)+24|0;Ja=c+(Oa*52|0)+32|0;Ka=f+(Oa*1080|0)+20|0;Ga=f+(Oa*1080|0)+16|0;Ia=Pa&Oa>>>0<e>>>0;Ha=d+(Oa<<3)|0;b=g;Fa=0;do{Da=k[La>>2]|0;Ea=Da+(Fa*136|0)+24|0;c=k[Ea>>2]|0;if(c){za=Da+(Fa*136|0)+16|0;Aa=Da+(Fa*136|0)+20|0;Ba=~Fa;Ca=Fa+-1|0;b=k[Aa>>2]|0;f=k[za>>2]|0;ya=0;do{xa=Da+(Fa*136|0)+28+(ya*36|0)+32|0;if(ha(b,f)|0){ra=67108864/(~~+V(+(+o[xa>>2]*8192.0))|0)|0;sa=Da+(Fa*136|0)+28+(ya*36|0)+20|0;ta=Da+(Fa*136|0)+28+(ya*36|0)|0;ua=Da+(Fa*136|0)+28+(ya*36|0)+4|0;va=Da+(Fa*136|0)+28+(ya*36|0)+16|0;wa=((ra|0)<0)<<31>>31;qa=0;do{c=k[sa>>2]|0;oa=c+(qa*40|0)+16|0;pa=c+(qa*40|0)+20|0;if(ha(k[pa>>2]|0,k[oa>>2]|0)|0){ma=c+(qa*40|0)+24|0;na=0;do{la=k[ma>>2]|0;g=k[la+(na*52|0)+12>>2]|0;b=g-(k[ta>>2]|0)|0;h=k[la+(na*52|0)+16>>2]|0;c=h-(k[ua>>2]|0)|0;f=k[va>>2]|0;if(f&1){ka=k[La>>2]|0;b=(k[ka+(Ca*136|0)+8>>2]|0)+b-(k[ka+(Ca*136|0)>>2]|0)|0}if(f&2){ka=k[La>>2]|0;c=(k[ka+(Ca*136|0)+12>>2]|0)+c-(k[ka+(Ca*136|0)+4>>2]|0)|0}if(!(ih(a,(k[la+(na*52|0)+20>>2]|0)-g|0,(k[la+(na*52|0)+24>>2]|0)-h|0)|0)){b=0;_a=173;break a}n=k[Ta>>2]|0;q=k[Ua>>2]|0;r=Ma-n|0;u=(ha(c,Ma)|0)+b|0;v=k[Ja>>2]|0;k[Va>>2]=v+(u<<2);k[Wa>>2]=Ma;b=(q|0)==0;if((k[Ka>>2]|0)==1){if(!b){g=(n|0)==0;h=0;b=0;while(1){if(!g){c=0;f=b;while(1){ka=v+(f+u<<2)|0;k[ka>>2]=k[ka>>2]<<6;c=c+1|0;if((c|0)==(n|0))break;else f=f+1|0}b=n+b|0}h=h+1|0;if((h|0)==(q|0))break;else b=b+r|0}}}else if(!b){g=(n|0)==0;h=0;b=0;while(1){if(!g){c=0;f=b;while(1){ka=v+(f+u<<2)|0;ja=k[ka>>2]|0;ja=hj(ja|0,((ja|0)<0)<<31>>31|0,ra|0,wa|0)|0;ja=aj(ja|0,L|0,4096,0)|0;ja=bj(ja|0,L|0,18)|0;k[ka>>2]=ja;c=c+1|0;if((c|0)==(n|0))break;else f=f+1|0}b=n+b|0}h=h+1|0;if((h|0)==(q|0))break;else b=b+r|0}}fa=k[va>>2]|0;ga=(k[Na>>2]|0)+Ba|0;r=k[Ka>>2]|0;ia=+o[xa>>2];ja=k[Ga>>2]|0;ka=k[a>>2]|0;g=k[Ta>>2]|0;do if(!g)b=0;else{h=k[Ua>>2]|0;n=(h|0)==0;q=0;b=0;do{if(!n){c=k[Wa>>2]|0;f=0;do{ea=v+(u+((ha(f,c)|0)+q)<<2)|0;ea=k[ea>>2]|0;ea=(ea|0)>-1?ea:0-ea|0;b=(b|0)>(ea|0)?b:ea;f=f+1|0}while((f|0)!=(h|0))}q=q+1|0}while((q|0)!=(g|0));if(!b){b=0;break}if((b|0)>1){c=b;b=0}else{b=-5;break}while(1){c=c>>1;if((c|0)<=1)break;else b=b+1|0}b=b+-4|0}while(0);da=la+(na*52|0)+28|0;k[da>>2]=b;b=b+-1|0;Ah(ka);Bh(ka,18,0,46);Bh(ka,17,0,3);Bh(ka,0,0,4);ea=la+(na*52|0)|0;uh(ka,k[ea>>2]|0);b:do if((b|0)>-1){ba=la+(na*52|0)+8|0;W=ja&1;ca=(W|0)!=0;X=(r|0)==1;Y=(ja&4|0)==0;W=(W|0)==0;Z=(ja&2|0)==0;_=(ja&8|0)==0;$=fa<<8;aa=(ja&32|0)==0;c=0;S=b;T=0.0;b=0;U=2;while(1){R=k[ba>>2]|0;H=ca&(U>>>0<2?(S|0)<((k[da>>2]|0)+-4|0):0);c:do switch(U|0){case 0:{F=1<<S+6;c=k[Ua>>2]|0;if(!c){g=0;break c}G=(S|0)==0;h=k[Ta>>2]|0;f=h;g=0;E=0;do{D=E;E=E+4|0;if(!f)f=0;else{B=(D|0)==-4;C=D|3;f=h;A=0;do{if(!B){z=D;do{c=k[Ua>>2]|0;if(z>>>0>=c>>>0)break;do if(_)c=0;else{if((z|0)==(C|0)){c=1;break}c=(z|0)==(c+-1|0)}while(0);n=z;z=z+1|0;u=(ha(k[Qa>>2]|0,z)|0)+A|0;v=u+1|0;w=k[Ra>>2]|0;y=w+(v<<1)|0;n=(ha(k[Wa>>2]|0,n)|0)+A|0;n=(k[Va>>2]|0)+(n<<2)|0;x=k[a>>2]|0;q=j[y>>1]|0;q=c?q&-1095:q;c=q&255;if((c|0)!=0&(q&20480|0)==0){f=k[n>>2]|0;f=(((f|0)<0?0-f|0:f)&F|0)!=0;h=f&1;r=x+100|0;k[r>>2]=x+24+(l[20267+(c|$)>>0]<<2);if(H)yh(x,h);else vh(x,h);if(f){c=k[n>>2]|0;f=c>>>31;c=(c|0)<0?0-c|0:c;if(G)c=3708+((c&127)<<1)|0;else c=3452+((c>>>S&127)<<1)|0;g=(j[c>>1]|0)+g|0;c=q>>>4&255;k[r>>2]=x+24+(l[21291+c>>0]<<2);if(H)yh(x,f);else vh(x,l[21547+c>>0]^f);P=k[Qa>>2]|0;Q=w+(v-P<<1)|0;O=w+(P+v<<1)|0;N=w+(v+~P<<1)|0;j[N>>1]=m[N>>1]|2;j[Q>>1]=j[Q>>1]|j[3436+(f<<1)>>1];Q=u+2|0;N=w+(Q-P<<1)|0;j[N>>1]=m[N>>1]|4;N=w+(u<<1)|0;j[N>>1]=j[N>>1]|j[3436+((f|2)<<1)>>1];j[y>>1]=m[y>>1]|4096;N=w+(Q<<1)|0;j[N>>1]=j[N>>1]|j[3436+((f|4)<<1)>>1];N=w+(P+u<<1)|0;j[N>>1]=m[N>>1]|1;j[O>>1]=j[O>>1]|j[3436+((f|6)<<1)>>1];Q=w+(P+Q<<1)|0;j[Q>>1]=m[Q>>1]|8}j[y>>1]=m[y>>1]|16384}}while(z>>>0<E>>>0);f=k[Ta>>2]|0}A=A+1|0}while(A>>>0<f>>>0);c=k[Ua>>2]|0;h=f}}while(E>>>0<c>>>0);break}case 1:{A=1<<S+6;c=k[Ua>>2]|0;if(!c){g=0;break c}B=(S|0)==0;h=k[Ta>>2]|0;f=h;g=0;z=0;do{y=z;z=z+4|0;if(!f)f=0;else{w=(y|0)==-4;x=y|3;f=h;v=0;do{u=v;v=v+1|0;if(!w){r=y;do{c=k[Ua>>2]|0;if(r>>>0>=c>>>0)break;do if(_)c=0;else{if((r|0)==(x|0)){c=1;break}c=(r|0)==(c+-1|0)}while(0);f=r;r=r+1|0;n=(ha(k[Qa>>2]|0,r)|0)+v|0;n=(k[Ra>>2]|0)+(n<<1)|0;q=k[a>>2]|0;h=j[n>>1]|0;h=c?h&-1095:h;if((h&20480|0)==4096){f=(k[Va>>2]|0)+((ha(k[Wa>>2]|0,f)|0)+u<<2)|0;f=k[f>>2]|0;f=(f|0)<0?0-f|0:f;if(B)c=4220+((f&127)<<1)|0;else c=3964+((f>>>S&127)<<1)|0;g=(j[c>>1]|0)+g|0;c=(f&A|0)!=0&1;k[q+100>>2]=q+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);if(H)yh(q,c);else vh(q,c);j[n>>1]=m[n>>1]|8192}}while(r>>>0<z>>>0);f=k[Ta>>2]|0}}while(v>>>0<f>>>0);c=k[Ua>>2]|0;h=f}}while(z>>>0<c>>>0);break}case 2:{K=k[a>>2]|0;M=1<<S+6;f=k[Ua>>2]|0;if(!f)c=0;else{N=K+92|0;O=K+100|0;P=K+96|0;Q=(S|0)==0;g=k[Ta>>2]|0;c=0;J=0;while(1){if(!g){h=J+4|0;g=0}else{C=J|3;D=J|1;E=D+1|0;F=D+3|0;h=J+4|0;G=J+1|0;H=J+2|0;I=J+3|0;B=0;while(1){do if(C>>>0<f>>>0){f=k[Qa>>2]|0;q=B+1|0;n=(ha(f,D)|0)+q|0;g=k[Ra>>2]|0;n=j[g+(n<<1)>>1]|0;if(_){z=g+((ha(f,E)|0)+q<<1)|0;A=g+((ha(f,C)|0)+q<<1)|0;f=g+((ha(f,F)|0)+q<<1)|0;f=((j[z>>1]|n|j[A>>1]|j[f>>1])&20735)==0&1}else{do if(!(n&20735)){A=g+((ha(f,E)|0)+q<<1)|0;if(j[A>>1]&20735){f=1;break}A=g+((ha(f,C)|0)+q<<1)|0;if(j[A>>1]&20735){f=1;break}f=g+((ha(f,F)|0)+q<<1)|0;f=(j[f>>1]&20665)!=0}else f=1;while(0);f=f&1^1}if(!f){A=0;f=0;_a=109;break}f=k[Wa>>2]|0;g=k[Va>>2]|0;A=g+((ha(f,J)|0)+B<<2)|0;A=k[A>>2]|0;do if(!(((A|0)<0?0-A|0:A)&M)){A=g+((ha(f,G)|0)+B<<2)|0;A=k[A>>2]|0;if(((A|0)<0?0-A|0:A)&M){f=1;break}A=g+((ha(f,H)|0)+B<<2)|0;A=k[A>>2]|0;if(((A|0)<0?0-A|0:A)&M){f=2;break}f=g+((ha(f,I)|0)+B<<2)|0;f=k[f>>2]|0;f=(((f|0)<0?0-f|0:f)&M|0)==0?4:3}else f=0;while(0);k[O>>2]=N;vh(K,(f|0)!=4&1);if((f|0)==4){n=q;break}k[O>>2]=P;vh(K,f>>>1);vh(K,f&1);A=1;_a=109}else{A=0;f=0;_a=109}while(0);if((_a|0)==109){_a=0;z=f+J|0;d:do if(z>>>0<h>>>0){y=z;do{f=k[Ua>>2]|0;if(y>>>0>=f>>>0)break d;do if(_)f=0;else{if((y|0)==(C|0)){f=1;break}f=(y|0)==(f+-1|0)}while(0);$a=y;y=y+1|0;r=(ha(k[Qa>>2]|0,y)|0)+B|0;u=r+1|0;v=k[Ra>>2]|0;x=v+(u<<1)|0;g=(ha(k[Wa>>2]|0,$a)|0)+B|0;g=(k[Va>>2]|0)+(g<<2)|0;w=k[a>>2]|0;n=j[x>>1]|0;q=f?n&-1095:n;do if(!(A&($a|0)==(z|0))){if(n&20480)break;k[w+100>>2]=w+24+(l[20267+(q&255|$)>>0]<<2);$a=k[g>>2]|0;$a=((($a|0)<0?0-$a|0:$a)&M|0)!=0;vh(w,$a&1);if($a)_a=117}else _a=117;while(0);if((_a|0)==117){_a=0;g=k[g>>2]|0;f=(g|0)<0?0-g|0:g;if(Q)f=3708+((f&127)<<1)|0;else f=3452+((f>>>S&127)<<1)|0;c=(j[f>>1]|0)+c|0;$a=q>>>4&255;k[w+100>>2]=w+24+(l[21291+$a>>0]<<2);n=g>>>31;vh(w,l[21547+$a>>0]^n);w=k[Qa>>2]|0;$a=v+(u-w<<1)|0;q=v+(w+u<<1)|0;u=v+(u+~w<<1)|0;j[u>>1]=m[u>>1]|2;j[$a>>1]=j[$a>>1]|j[3436+(n<<1)>>1];$a=r+2|0;u=v+($a-w<<1)|0;j[u>>1]=m[u>>1]|4;u=v+(r<<1)|0;j[u>>1]=j[u>>1]|j[3436+((n|2)<<1)>>1];j[x>>1]=m[x>>1]|4096;u=v+($a<<1)|0;j[u>>1]=j[u>>1]|j[3436+((n|4)<<1)>>1];u=v+(w+r<<1)|0;j[u>>1]=m[u>>1]|1;j[q>>1]=j[q>>1]|j[3436+((n|6)<<1)>>1];$a=v+(w+$a<<1)|0;j[$a>>1]=m[$a>>1]|8}j[x>>1]=m[x>>1]&49151}while(y>>>0<h>>>0)}while(0);n=B+1|0}g=k[Ta>>2]|0;f=k[Ua>>2]|0;if(n>>>0<g>>>0)B=n;else break}}if(h>>>0<f>>>0)J=h;else break}}if(aa){g=c;break c}Eh(ka);g=c;break}default:g=c}while(0);if(Ia)s=+p[Ha>>3];else s=1.0;if(X)t=+Sg(ga,fa);else t=+Vg(ga,fa);t=+(1<<S|0)*(ia*(s*t));t=t*(+(g|0)*t*.0001220703125);T=T+t;p[Ya>>3]=+p[Ya>>3]+t;do if(Y)_a=137;else{if((S|0)<1&(U|0)==2){_a=137;break}wh(ka);f=R+(b*24|0)+20|0;c=i[f>>0]|1;i[f>>0]=c;f=1}while(0);do if((_a|0)==137){c=(k[da>>2]|0)+-4|0;if((U|0)!=0&(S|0)<(c|0))if(W)_a=141;else _a=140;else if(W|((U|0)!=2|(S|0)!=(c|0)))_a=141;else _a=140;if((_a|0)==140){_a=0;wh(ka);f=R+(b*24|0)+20|0;c=i[f>>0]|1;i[f>>0]=c;f=1;break}else if((_a|0)==141){_a=0;f=R+(b*24|0)+20|0;c=i[f>>0]&-2;i[f>>0]=c;f=3;break}}while(0);Q=U+1|0;$a=(Q|0)==3;U=$a?0:Q;S=($a<<31>>31)+S|0;do if((S|0)>0&(c&1)!=0)if(ca&(U>>>0<2?(S|0)<((k[da>>2]|0)+-4|0):0)){xh(ka);break}else{Ch(ka);break}while(0);p[R+(b*24|0)+8>>3]=T;$a=(th(ka)|0)+f|0;k[R+(b*24|0)>>2]=$a;if(!Z)zh(ka);b=b+1|0;if((S|0)<=-1)break b;else c=g}}else b=0;while(0);do if(!(ja&16)){if(ja&1)break;wh(ka)}else Dh(ka);while(0);q=la+(na*52|0)+48|0;k[q>>2]=b;if(b){g=la+(na*52|0)+8|0;n=0;do{h=k[g>>2]|0;c=h+(n*24|0)|0;$a=k[c>>2]|0;if($a>>>0>(th(ka)|0)>>>0){b=th(ka)|0;k[c>>2]=b}else b=k[c>>2]|0;do if(b>>>0>1){f=b+-1|0;if((i[(k[ea>>2]|0)+f>>0]|0)!=-1)break;k[c>>2]=f;b=f}while(0);if(!n)c=0;else c=k[(k[g>>2]|0)+((n+-1|0)*24|0)>>2]|0;k[h+(n*24|0)+16>>2]=b-c;n=n+1|0}while(n>>>0<(k[q>>2]|0)>>>0)}na=na+1|0}while(na>>>0<(ha(k[pa>>2]|0,k[oa>>2]|0)|0)>>>0);b=k[Aa>>2]|0;f=k[za>>2]|0}qa=qa+1|0}while(qa>>>0<(ha(b,f)|0)>>>0);c=k[Ea>>2]|0}ya=ya+1|0}while(ya>>>0<c>>>0);b=k[Na>>2]|0}Fa=Fa+1|0}while(Fa>>>0<b>>>0);b=k[Za>>2]|0}Oa=Oa+1|0;if(Oa>>>0>=b>>>0){b=1;_a=173;break}}if((_a|0)==173)return b|0;return 0}function ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=ha(c,b)|0;if(!(k[a+40>>2]|0)){g=a+24|0;h=a+8|0;d=k[h>>2]|0;do if(f>>>0>(k[g>>2]|0)>>>0){ad(d);e=f<<2;d=$c(e)|0;k[h>>2]=d;if(!d){b=0;return b|0}else{k[g>>2]=f;break}}else e=f<<2;while(0);_i(d|0,0,e|0)|0}f=b+2|0;k[a+32>>2]=f;f=ha(c+2|0,f)|0;g=a+28|0;h=a+12|0;d=k[h>>2]|0;do if(f>>>0>(k[g>>2]|0)>>>0){ad(d);e=f<<1;d=$c(e)|0;k[h>>2]=d;if(!d){b=0;return b|0}else{k[g>>2]=f;break}}else e=f<<1;while(0);_i(d|0,0,e|0)|0;k[a+16>>2]=b;k[a+20>>2]=c;b=1;return b|0}function jh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=k[a>>2]|0;h=j[b>>1]|0;i=h&255;if(!((i|0)!=0&(h&20480|0)==0))return;g=f+100|0;k[g>>2]=f+24+(l[20267+(i|d<<8)>>0]<<2);if(Gh(f)|0){d=h>>>4&255;k[g>>2]=f+24+(l[21291+d>>0]<<2);h=Gh(f)|0;d=l[21547+d>>0]|0;i=d^h;k[c>>2]=(h|0)!=(d|0)?0-e|0:e;a=k[a+32>>2]|0;e=b+(0-a<<1)|0;d=b+(a<<1)|0;c=b+(~a<<1)|0;j[c>>1]=m[c>>1]|2;j[e>>1]=j[e>>1]|j[3436+(i<<1)>>1];e=b+(1-a<<1)|0;j[e>>1]=m[e>>1]|4;e=b+-2|0;j[e>>1]=j[e>>1]|j[3436+(i+2<<1)>>1];j[b>>1]=m[b>>1]|4096;e=b+2|0;j[e>>1]=j[e>>1]|j[3436+(i+4<<1)>>1];e=b+(a+-1<<1)|0;j[e>>1]=m[e>>1]|1;j[d>>1]=j[d>>1]|j[3436+(i+6<<1)>>1];a=b+(a+1<<1)|0;j[a>>1]=m[a>>1]|8}j[b>>1]=m[b>>1]|16384;return}function kh(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=k[a>>2]|0;h=j[b>>1]|0;if(h&20480){a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}g=f+100|0;k[g>>2]=f+24+(l[20267+(h&255|d<<8)>>0]<<2);if(!(Gh(f)|0)){a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}d=h>>>4&255;k[g>>2]=f+24+(l[21291+d>>0]<<2);g=Gh(f)|0;d=l[21547+d>>0]|0;h=d^g;k[c>>2]=(g|0)!=(d|0)?0-e|0:e;a=k[a+32>>2]|0;e=b+(0-a<<1)|0;d=b+(a<<1)|0;c=b+(~a<<1)|0;j[c>>1]=m[c>>1]|2;j[e>>1]=j[e>>1]|j[3436+(h<<1)>>1];e=b+(1-a<<1)|0;j[e>>1]=m[e>>1]|4;e=b+-2|0;j[e>>1]=j[e>>1]|j[3436+(h+2<<1)>>1];j[b>>1]=m[b>>1]|4096;e=b+2|0;j[e>>1]=j[e>>1]|j[3436+(h+4<<1)>>1];e=b+(a+-1<<1)|0;j[e>>1]=m[e>>1]|1;j[d>>1]=j[d>>1]|j[3436+(h+6<<1)>>1];a=b+(a+1<<1)|0;j[a>>1]=m[a>>1]|8;a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}function lh(a,b,c,d,e,f,g,h,i,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;m=m|0;n=n|0;o=o|0;var p=0,q=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;H=r;r=r+16|0;G=H;k[G>>2]=0;p=k[a>>2]|0;C=k[a+4>>2]|0;a=k[C+76>>2]|0;E=a+(b*5640|0)|0;s=(j[C>>1]|0)==4?2:1;t=C+80|0;if(!(k[t>>2]|0))q=1;else q=k[p+16>>2]|0;F=(k[a+(b*5640|0)+420>>2]|0)+1|0;D=Vf(p,C,b,o)|0;if(!D){b=0;r=H;return b|0}k[f>>2]=0;a:do if(!o){if(q){a=0;b:while(1){o=0;n=D;p=0;while(1){Wf(D,C,b,p,a,m,0);if((k[n+80>>2]|0)==-1){a=9;break b}i=n+36|0;c:while(1){do if(!(Yf(n)|0))break c;while((k[i>>2]|0)>>>0>=d>>>0);k[G>>2]=0;if(!(ph(b,c,E,n,e,G,g,h)|0)){a=13;break b}B=k[G>>2]|0;k[f>>2]=(k[f>>2]|0)+B;g=g-B|0;o=B+o|0;e=e+B|0}B=k[t>>2]|0;if((B|0)!=0&o>>>0>B>>>0){a=17;break b}p=p+1|0;if(p>>>0<s>>>0)n=n+232|0;else break}a=a+1|0;if(a>>>0>=q>>>0)break a}if((a|0)==9){Uf(D,F);b=0;r=H;return b|0}else if((a|0)==13){Uf(D,F);b=0;r=H;return b|0}else if((a|0)==17){Uf(D,F);b=0;r=H;return b|0}}}else{Wf(D,C,b,n,i,m,o);z=D+(n*232|0)|0;if((k[D+(n*232|0)+80>>2]|0)==-1){Uf(D,F);b=0;r=H;return b|0}m=D+(n*232|0)+36|0;u=(h|0)==0;v=c+840|0;w=h+12|0;x=h+8|0;y=h+88|0;t=C+93|0;s=a+(b*5640|0)+5636|0;while(1){do if(!(Yf(z)|0))break a;while((k[m>>2]|0)>>>0>=d>>>0);k[G>>2]=0;if(!(ph(b,c,E,z,e,G,g,h)|0))break;q=k[G>>2]|0;e=e+q|0;g=g-q|0;k[f>>2]=(k[f>>2]|0)+q;if(!u){if(!(k[w>>2]|0))a=k[x>>2]|0;else{p=k[y>>2]|0;a=k[x>>2]|0;n=k[p+(b*592|0)+548>>2]|0;o=n+(a<<5)|0;if(!a){i=(k[p+(b*592|0)+12>>2]|0)+1|0;p=((i|0)<0)<<31>>31;C=o;k[C>>2]=i;k[C+4>>2]=p}else{if((((l[s>>0]|0)>>>2|(l[t>>0]|0)>>>3)&1)!=0?(B=o,A=k[B>>2]|0,B=k[B+4>>2]|0,!((A|0)==0&(B|0)==0)):0){i=A;p=B}else{i=n+(a+-1<<5)+16|0;i=aj(k[i>>2]|0,k[i+4>>2]|0,1,0)|0;p=L}C=o;k[C>>2]=i;k[C+4>>2]=p}o=aj(i|0,p|0,-1,-1)|0;i=L;q=aj(o|0,i|0,q|0,0)|0;C=n+(a<<5)+16|0;k[C>>2]=q;k[C+4>>2]=L;C=n+(a<<5)+8|0;q=C;q=aj(o|0,i|0,k[q>>2]|0,k[q+4>>2]|0)|0;k[C>>2]=q;k[C+4>>2]=L}k[x>>2]=a+1}k[v>>2]=(k[v>>2]|0)+1}Uf(D,F);b=0;r=H;return b|0}while(0);Uf(D,F);b=1;r=H;return b|0}function mh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;_=r;r=r+112|0;W=_+64|0;X=_+32|0;S=_;R=_+96|0;Q=_+92|0;i=k[a>>2]|0;M=a+4|0;Z=k[M>>2]|0;g=k[Z+76>>2]|0;O=g+(b*5640|0)|0;P=g+(b*5640|0)+420|0;Y=(k[P>>2]|0)+1|0;Z=Tf(i,Z,b)|0;if(!Z){$=0;r=_;return $|0}N=i+16|0;L=g+(b*5640|0)+12|0;K=c+20|0;J=i+24|0;b=f;a=d;H=Z;I=0;a:while(1){if((k[H+80>>2]|0)==-1){$=4;break}g=Zc(k[N>>2]<<2)|0;if(!g){$=6;break}_i(g|0,1,k[N>>2]<<2|0)|0;if(Yf(H)|0){f=H+24|0;c=H+28|0;G=H+36|0;i=H+32|0;F=b;E=a;while(1){if((k[L>>2]|0)>>>0>(k[G>>2]|0)>>>0){b=k[f>>2]|0;a=k[K>>2]|0;if((k[c>>2]|0)>>>0<(k[a+(b*52|0)+20>>2]|0)>>>0){k[g+(b<<2)>>2]=0;D=k[M>>2]|0;k[Q>>2]=0;if(!(qh(D,a,O,H,R,E,Q,F,h)|0)){$=45;break a}C=k[Q>>2]|0;if(!(k[R>>2]|0))a=C;else{B=F-C|0;z=E+C|0;k[Q>>2]=0;b=k[c>>2]|0;j=k[(k[K>>2]|0)+((k[f>>2]|0)*52|0)+24>>2]|0;x=j+(b*136|0)+24|0;a=k[x>>2]|0;b:do if(!a){a=z;$=43}else{y=E+F|0;l=a;D=0;w=j+(b*136|0)+28|0;j=z;c:while(1){a=k[i>>2]|0;b=k[w+20>>2]|0;if(((k[w+8>>2]|0)!=(k[w>>2]|0)?(k[w+12>>2]|0)!=(k[w+4>>2]|0):0)?(V=ha(k[b+(a*40|0)+20>>2]|0,k[b+(a*40|0)+16>>2]|0)|0,(V|0)!=0):0){A=0;a=k[b+(a*40|0)+24>>2]|0;o=j;while(1){u=a+40|0;if(!(k[u>>2]|0))b=o;else{v=a+44|0;b=k[v>>2]|0;do if(!b){n=k[a+4>>2]|0;k[v>>2]=1;k[a+36>>2]=0}else{j=b+-1|0;l=k[a+4>>2]|0;if((k[l+(j<<5)+8>>2]|0)!=(k[l+(j<<5)+20>>2]|0)){n=l+(j<<5)|0;break}k[v>>2]=b+1;n=l+(b<<5)|0}while(0);t=a+36|0;b=a+32|0;s=o;m=n+28|0;j=k[m>>2]|0;if((j+s|0)>>>0<s>>>0|(o+j|0)>>>0>y>>>0){b=D;a=A;break c}l=k[t>>2]|0;s=o;q=n;while(1){n=j+l|0;if(n>>>0<l>>>0){b=D;a=A;$=29;break a}o=k[a>>2]|0;if(n>>>0>(k[b>>2]|0)>>>0){j=bd(o,n)|0;if(!j){$=32;break a}l=k[t>>2]|0;p=k[m>>2]|0;k[b>>2]=p+l;k[a>>2]=j;o=j;j=p}cj(o+l|0,s|0,j|0)|0;j=q+8|0;l=k[j>>2]|0;if(!l){k[q>>2]=a;n=k[t>>2]|0;k[q+4>>2]=n}else n=k[t>>2]|0;o=k[m>>2]|0;p=s;s=s+o|0;m=k[q+24>>2]|0;l=m+l|0;k[j>>2]=l;j=k[u>>2]|0;k[u>>2]=j-m;k[q+12>>2]=l;l=o+n|0;k[t>>2]=l;n=q+16|0;k[n>>2]=(k[n>>2]|0)+o;if((j|0)==(m|0)){b=s;break}k[v>>2]=(k[v>>2]|0)+1;n=s;m=q+60|0;j=k[m>>2]|0;if((j+n|0)>>>0<n>>>0?1:(p+(j+o)|0)>>>0>y>>>0){b=D;a=A;break c}else q=q+32|0}k[a+48>>2]=k[v>>2]}A=A+1|0;if(A>>>0>=V>>>0){a=b;break}else{a=a+56|0;o=b}}b=k[x>>2]|0}else{b=l;a=j}D=D+1|0;if(D>>>0>=b>>>0){$=43;break b}else{l=b;w=w+36|0;j=a}}z=k[i>>2]|0;A=k[c>>2]|0;D=k[f>>2]|0;k[S>>2]=j;k[S+4>>2]=B;k[S+8>>2]=a;k[S+12>>2]=z;k[S+16>>2]=b;k[S+20>>2]=A;k[S+24>>2]=D;cc(h,2,21803,S)|0;a=k[Q>>2]|0}while(0);if(($|0)==43){$=0;a=a-z|0;k[Q>>2]=a}a=a+C|0}j=k[f>>2]|0;C=k[c>>2]|0;b=(k[J>>2]|0)+(j*52|0)+36|0;D=k[b>>2]|0;k[b>>2]=C>>>0>D>>>0?C:D;b=a}else $=47}else{a=k[K>>2]|0;$=47}if(($|0)==47){$=0;D=k[M>>2]|0;k[Q>>2]=0;if(!(qh(D,a,O,H,R,E,Q,F,h)|0)){$=69;break a}u=k[Q>>2]|0;if(!(k[R>>2]|0))a=u;else{j=F-u|0;w=k[c>>2]|0;x=k[f>>2]|0;a=k[(k[K>>2]|0)+(x*52|0)+24>>2]|0;k[Q>>2]=0;t=k[a+(w*136|0)+24>>2]|0;if(!t)a=0;else{v=k[i>>2]|0;b=0;s=a+(w*136|0)+28|0;while(1){l=k[s+20>>2]|0;if(((k[s+8>>2]|0)!=(k[s>>2]|0)?(k[s+12>>2]|0)!=(k[s+4>>2]|0):0)?(T=ha(k[l+(v*40|0)+20>>2]|0,k[l+(v*40|0)+16>>2]|0)|0,(T|0)!=0):0){a=0;q=k[l+(v*40|0)+24>>2]|0;while(1){o=q+40|0;d:do if(k[o>>2]|0){p=q+44|0;l=k[p>>2]|0;do if(!l){n=k[q+4>>2]|0;k[p>>2]=1;k[q+36>>2]=0}else{m=l+-1|0;n=k[q+4>>2]|0;if((k[n+(m<<5)+8>>2]|0)!=(k[n+(m<<5)+20>>2]|0)){n=n+(m<<5)|0;break}k[p>>2]=l+1;n=n+(l<<5)|0}while(0);D=k[Q>>2]|0;l=k[n+28>>2]|0;m=l+D|0;if(m>>>0<D>>>0|m>>>0>j>>>0){f=v;c=w;i=x;$=65;break a}while(1){k[Q>>2]=m;D=k[n+24>>2]|0;C=n+8|0;k[C>>2]=(k[C>>2]|0)+D;C=k[o>>2]|0;k[o>>2]=C-D;if((C|0)==(D|0))break d;k[p>>2]=(k[p>>2]|0)+1;D=k[Q>>2]|0;l=k[n+60>>2]|0;m=l+D|0;if(m>>>0<D>>>0|m>>>0>j>>>0){f=v;c=w;i=x;$=65;break a}else n=n+32|0}}while(0);a=a+1|0;if(a>>>0>=T>>>0)break;else q=q+56|0}}b=b+1|0;if(b>>>0>=t>>>0)break;else s=s+36|0}a=k[Q>>2]|0}a=a+u|0}j=k[f>>2]|0;b=a}if((k[g+(j<<2)>>2]|0)!=0?(U=(k[J>>2]|0)+(j*52|0)+36|0,(k[U>>2]|0)==0):0)k[U>>2]=(k[(k[K>>2]|0)+(j*52|0)+20>>2]|0)+-1;a=E+b|0;b=F-b|0;if(!(Yf(H)|0))break;else{F=b;E=a}}}cd(g);I=I+1|0;if(I>>>0>(k[P>>2]|0)>>>0){g=a;$=75;break}else H=H+232|0}if(($|0)==4){Uf(Z,Y);$=0;r=_;return $|0}else if(($|0)==6){Uf(Z,Y);$=0;r=_;return $|0}else if(($|0)==29){e=k[i>>2]|0;d=k[c>>2]|0;W=k[f>>2]|0;k[X>>2]=j;k[X+4>>2]=l;k[X+8>>2]=~j;k[X+12>>2]=a;k[X+16>>2]=e;k[X+20>>2]=b;k[X+24>>2]=d;k[X+28>>2]=W;cc(h,1,21888,X)|0;$=45}else if(($|0)==32){cd(k[a>>2]|0);k[a>>2]=0;k[b>>2]=0;$=45}else if(($|0)==65){k[W>>2]=l;k[W+4>>2]=j;k[W+8>>2]=a;k[W+12>>2]=f;k[W+16>>2]=b;k[W+20>>2]=c;k[W+24>>2]=i;cc(h,1,21987,W)|0;$=69}else if(($|0)==75){Uf(Z,Y);k[e>>2]=g-d;$=1;r=_;return $|0}if(($|0)==45){Uf(Z,Y);cd(g);$=0;r=_;return $|0}else if(($|0)==69){Uf(Z,Y);cd(g);$=0;r=_;return $|0}return 0}function nh(a,b){a=a|0;b=b|0;var c=0;c=_c(1,8)|0;if(!c){a=0;return a|0}k[c>>2]=a;k[c+4>>2]=b;a=c;return a|0}function oh(a){a=a|0;if(!a)return;cd(a);return}function ph(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,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.0,J=0,K=0;s=k[d+28>>2]|0;J=k[d+32>>2]|0;K=k[d+36>>2]|0;r=k[(k[b+20>>2]|0)+((k[d+24>>2]|0)*52|0)+24>>2]|0;if(!(k[c>>2]&2))G=e;else{i[e>>0]=-1;i[e+1>>0]=-111;i[e+2>>0]=0;i[e+3>>0]=4;G=b+840|0;i[e+4>>0]=(k[G>>2]|0)>>>8;i[e+5>>0]=k[G>>2];g=g+-6|0;G=e+6|0}if((K|0)==0?(q=r+(s*136|0)+24|0,(k[q>>2]|0)!=0):0){n=r+(s*136|0)+28|0;o=0;while(1){d=k[n+20>>2]|0;ug(k[d+(J*40|0)+32>>2]|0);l=d+(J*40|0)+36|0;ug(k[l>>2]|0);m=ha(k[d+(J*40|0)+20>>2]|0,k[d+(J*40|0)+16>>2]|0)|0;if(m){d=d+(J*40|0)+24|0;b=n+28|0;j=0;do{H=k[d>>2]|0;k[H+(j*52|0)+40>>2]=0;xg(k[l>>2]|0,j,(k[b>>2]|0)-(k[H+(j*52|0)+28>>2]|0)|0);j=j+1|0}while((j|0)!=(m|0))}o=o+1|0;if(o>>>0>=(k[q>>2]|0)>>>0)break;else n=n+36|0}}E=Gg()|0;if(!E){f=0;return f|0}Jg(E,G,g);Lg(E,1,1);F=r+(s*136|0)+28|0;H=r+(s*136|0)+24|0;if(k[H>>2]|0){A=K+1|0;C=F;D=0;while(1){m=k[C+20>>2]|0;B=ha(k[m+(J*40|0)+20>>2]|0,k[m+(J*40|0)+16>>2]|0)|0;n=m+(J*40|0)+24|0;d=(B|0)==0;if(!d){b=m+(J*40|0)+32|0;j=k[n>>2]|0;l=0;while(1){if((k[j+40>>2]|0)==0?(k[(k[j+4>>2]|0)+(K*24|0)>>2]|0)!=0:0)xg(k[b>>2]|0,l,K);l=l+1|0;if((l|0)==(B|0))break;else j=j+52|0}if(!d){z=m+(J*40|0)+32|0;y=m+(J*40|0)+36|0;w=k[n>>2]|0;x=0;while(1){d=(k[w+4>>2]|0)+(K*24|0)|0;v=w+40|0;if(!(k[v>>2]|0))yg(E,k[z>>2]|0,x,A);else Lg(E,(k[d>>2]|0)!=0&1,1);b=k[d>>2]|0;if(b){if(!(k[v>>2]|0)){k[w+32>>2]=3;yg(E,k[y>>2]|0,x,999);b=k[d>>2]|0}a:do switch(b|0){case 1:{Lg(E,0,1);break}case 2:{Lg(E,2,2);break}default:{if(b>>>0<6){Lg(E,b+-3|12,4);break a}if(b>>>0<37){Lg(E,b+-6|480,9);break a}if(b>>>0<165)Lg(E,b+-37|65408,16)}}while(0);n=k[v>>2]|0;b=k[d>>2]|0;u=b+n|0;t=w+8|0;if(n>>>0<u>>>0){s=w+32|0;q=n+-1+b|0;l=0;m=0;j=0;r=(k[t>>2]|0)+(n*24|0)|0;while(1){j=j+1|0;m=(k[r+16>>2]|0)+m|0;if((i[r+20>>0]&1)!=0|(n|0)==(q|0)){if((m|0)>1){b=0;do{m=m>>1;b=b+1|0}while((m|0)>1)}else b=0;o=k[s>>2]|0;if((j|0)>1){m=0;do{j=j>>1;m=m+1|0}while((j|0)>1);j=m}else j=0;m=b+1-o-j|0;l=(l|0)>(m|0)?l:m;m=0;j=0}n=n+1|0;if((n|0)==(u|0))break;else r=r+24|0}if((l|0)>0){b=l;while(1){Lg(E,1,1);if((b|0)>1)b=b+-1|0;else{b=m;break}}}else b=m}else{l=0;b=0;j=0}Lg(E,0,1);q=w+32|0;k[q>>2]=(k[q>>2]|0)+l;l=k[v>>2]|0;if(l>>>0<u>>>0){o=(k[t>>2]|0)+(l*24|0)|0;while(1){j=j+1|0;m=(k[o+16>>2]|0)+b|0;if((i[o+20>>0]&1)==0?(l|0)!=((k[v>>2]|0)+-1+(k[d>>2]|0)|0):0)b=m;else{n=k[q>>2]|0;if((j|0)>1){b=0;do{j=j>>1;b=b+1|0}while((j|0)>1)}else b=0;Lg(E,m,b+n|0);b=0;j=0}l=l+1|0;if((l|0)==(u|0))break;else o=o+24|0}}}x=x+1|0;if((x|0)==(B|0))break;else w=w+52|0}}}D=D+1|0;if(D>>>0>=(k[H>>2]|0)>>>0)break;else C=C+36|0}}if(!(Ng(E)|0)){Hg(E);f=0;return f|0}b=Ig(E)|0;d=G+b|0;g=g-b|0;Hg(E);if(k[c>>2]&4){i[d>>0]=-1;i[G+(b+1)>>0]=-110;g=g+-2|0;d=G+(b+2)|0}t=(h|0)!=0;if(t?(k[h+12>>2]|0)!=0:0){G=d-e|0;c=(k[(k[h+88>>2]|0)+(a*592|0)+548>>2]|0)+(k[h+8>>2]<<5)+8|0;k[c>>2]=G;k[c+4>>2]=((G|0)<0)<<31>>31}b=k[H>>2]|0;b:do if(b){u=h+12|0;v=h+8|0;w=h+88|0;r=F;s=0;c:while(1){j=k[r+20>>2]|0;q=ha(k[j+(J*40|0)+20>>2]|0,k[j+(J*40|0)+16>>2]|0)|0;j=k[j+(J*40|0)+24>>2]|0;if(q){if(t){o=0;while(1){n=k[j+4>>2]|0;b=n+(K*24|0)|0;if(k[b>>2]|0){l=n+(K*24|0)+4|0;m=k[l>>2]|0;if(m>>>0>g>>>0){d=0;g=81;break c}cj(d|0,k[n+(K*24|0)+16>>2]|0,m|0)|0;c=j+40|0;k[c>>2]=(k[c>>2]|0)+(k[b>>2]|0);c=k[l>>2]|0;d=d+c|0;g=g-c|0;if((k[u>>2]|0)!=0?(c=(k[(k[w>>2]|0)+(a*592|0)+548>>2]|0)+(k[v>>2]<<5)+24|0,I=+p[n+(K*24|0)+8>>3]+ +p[c>>3],p[c>>3]=I,+p[h>>3]<I):0)p[h>>3]=I}o=o+1|0;if(o>>>0>=q>>>0)break;else j=j+52|0}}else{o=0;while(1){b=k[j+4>>2]|0;l=b+(K*24|0)|0;if(k[l>>2]|0){m=b+(K*24|0)+4|0;n=k[m>>2]|0;if(n>>>0>g>>>0){d=0;g=81;break c}cj(d|0,k[b+(K*24|0)+16>>2]|0,n|0)|0;c=j+40|0;k[c>>2]=(k[c>>2]|0)+(k[l>>2]|0);c=k[m>>2]|0;g=g-c|0;d=d+c|0}o=o+1|0;if(o>>>0>=q>>>0)break;else j=j+52|0}}b=k[H>>2]|0}s=s+1|0;if(s>>>0>=b>>>0)break b;else r=r+36|0}if((g|0)==81)return d|0}while(0);k[f>>2]=d-e+(k[f>>2]|0);f=1;return f|0}function qh(a,b,c,d,e,f,g,h,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;N=r;r=r+64|0;L=N+40|0;K=N+32|0;x=N+24|0;w=N+16|0;u=N+8|0;t=N;v=N+48|0;M=N+44|0;k[M>>2]=f;z=k[d+28>>2]|0;J=d+24|0;y=k[b+((k[J>>2]|0)*52|0)+24>>2]|0;H=d+36|0;if((k[H>>2]|0)==0?(s=y+(z*136|0)+24|0,l=k[s>>2]|0,(l|0)!=0):0){q=d+32|0;o=0;p=y+(z*136|0)+28|0;while(1){b=k[q>>2]|0;m=k[p+20>>2]|0;if((k[p+8>>2]|0)!=(k[p>>2]|0)?(k[p+12>>2]|0)!=(k[p+4>>2]|0):0){ug(k[m+(b*40|0)+32>>2]|0);ug(k[m+(b*40|0)+36>>2]|0);l=ha(k[m+(b*40|0)+20>>2]|0,k[m+(b*40|0)+16>>2]|0)|0;if(l){n=0;b=k[m+(b*40|0)+24>>2]|0;while(1){k[b+44>>2]=0;k[b+48>>2]=0;n=n+1|0;if((n|0)==(l|0))break;else b=b+56|0}}l=k[s>>2]|0}o=o+1|0;if(o>>>0>=l>>>0)break;else p=p+36|0}}do if(k[c>>2]&2){if(h>>>0<6){cc(j,2,22072,t)|0;break}b=k[M>>2]|0;if((i[b>>0]|0)==-1?(i[b+1>>0]|0)==-111:0){k[M>>2]=b+6;break}cc(j,2,22114,u)|0}while(0);G=Gg()|0;if(!G){f=0;r=N;return f|0}do if(!(i[a+96>>0]&1))if(!(i[c+5636>>0]&2)){E=k[M>>2]|0;k[v>>2]=f+h-E;F=M;break}else{F=c+5168|0;E=k[F>>2]|0;v=c+5180|0;break}else{F=a+40|0;E=k[F>>2]|0;v=a+44|0}while(0);Kg(G,E,k[v>>2]|0);if(!(Mg(G,1)|0)){Og(G)|0;l=Ig(G)|0;b=E+l|0;Hg(G);do if(k[c>>2]&4){if(((k[v>>2]|0)-b+(k[F>>2]|0)|0)>>>0<2){cc(j,2,22135,w)|0;break}if((i[b>>0]|0)==-1?(i[E+(l+1)>>0]|0)==-110:0){b=E+(l+2)|0;break}cc(j,2,22177,x)|0}while(0);k[v>>2]=(k[v>>2]|0)+((k[F>>2]|0)-b);k[F>>2]=b;k[e>>2]=0;k[g>>2]=(k[M>>2]|0)-f;f=1;r=N;return f|0}D=y+(z*136|0)+24|0;b=k[D>>2]|0;a:do if(b){B=d+32|0;C=c+5584|0;A=0;y=y+(z*136|0)+28|0;b:while(1){l=k[B>>2]|0;m=k[y+20>>2]|0;if(((k[y+8>>2]|0)!=(k[y>>2]|0)?(k[y+12>>2]|0)!=(k[y+4>>2]|0):0)?(I=ha(k[m+(l*40|0)+20>>2]|0,k[m+(l*40|0)+16>>2]|0)|0,(I|0)!=0):0){a=m+(l*40|0)+32|0;d=m+(l*40|0)+36|0;w=y+28|0;x=0;h=k[m+(l*40|0)+24>>2]|0;while(1){l=h+44|0;if(!(k[l>>2]|0))b=zg(G,k[a>>2]|0,x,(k[H>>2]|0)+1|0)|0;else b=Mg(G,1)|0;c:do if(!b)k[h+40>>2]=0;else{if(!(k[l>>2]|0)){b=0;while(1)if(!(zg(G,k[d>>2]|0,x,b)|0))b=b+1|0;else break;k[h+24>>2]=1-b+(k[w>>2]|0);k[h+28>>2]=3}do if(Mg(G,1)|0)if(Mg(G,1)|0){b=Mg(G,2)|0;if((b|0)!=3){b=b+3|0;break}b=Mg(G,5)|0;if((b|0)==31){b=(Mg(G,7)|0)+37|0;break}else{b=b+6|0;break}}else b=2;else b=1;while(0);t=h+40|0;k[t>>2]=b;b=0;while(1)if(!(Mg(G,1)|0))break;else b=b+1|0;u=h+28|0;k[u>>2]=(k[u>>2]|0)+b;l=k[l>>2]|0;do if(!l){m=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;b=h+52|0;if(!(k[b>>2]|0)){k[b>>2]=10;n=h+4|0;l=bd(k[n>>2]|0,320)|0;if(!l){l=b;m=n;b=n;n=66;break b}k[n>>2]=l}else l=k[h+4>>2]|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;k[l+24>>2]=0;k[l+28>>2]=0;if(m&4){k[l+20>>2]=1;l=0;break}l=l+20|0;if(!(m&1)){k[l>>2]=109;l=0;break}else{k[l>>2]=10;l=0;break}}else{p=l+-1|0;q=h+4|0;m=k[q>>2]|0;if((k[m+(p<<5)+8>>2]|0)!=(k[m+(p<<5)+20>>2]|0)){b=h+52|0;l=p;break}o=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;b=h+52|0;n=k[b>>2]|0;if((l+1|0)>>>0>n>>>0){z=n+10|0;k[b>>2]=z;m=bd(m,z<<5)|0;if(!m){m=q;l=b;b=q;n=77;break b}k[q>>2]=m}z=m+(l<<5)|0;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;k[z+12>>2]=0;k[z+16>>2]=0;k[z+20>>2]=0;k[z+24>>2]=0;k[z+28>>2]=0;if(o&4){k[m+(l<<5)+20>>2]=1;break}if(!(o&1)){k[m+(l<<5)+20>>2]=109;break}else{z=k[m+(p<<5)+20>>2]|0;k[m+(l<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;break}}while(0);s=h+4|0;p=k[t>>2]|0;while(1){o=k[s>>2]|0;m=(k[o+(l<<5)+20>>2]|0)-(k[o+(l<<5)+8>>2]|0)|0;m=(m|0)<(p|0)?m:p;k[o+(l<<5)+24>>2]=m;o=k[u>>2]|0;if(m>>>0>1){n=0;while(1){n=n+1|0;if(m>>>0>3)m=m>>>1;else{m=n;break}}}else m=0;o=Mg(G,m+o|0)|0;m=k[s>>2]|0;k[m+(l<<5)+28>>2]=o;o=p-(k[m+(l<<5)+24>>2]|0)|0;if((o|0)<=0)break c;p=l+1|0;q=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;n=k[b>>2]|0;if((l+2|0)>>>0>n>>>0){z=n+10|0;k[b>>2]=z;m=bd(m,z<<5)|0;if(!m){m=s;l=s;n=90;break b}k[s>>2]=m}z=m+(p<<5)|0;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;k[z+12>>2]=0;k[z+16>>2]=0;k[z+20>>2]=0;k[z+24>>2]=0;k[z+28>>2]=0;if(q&4){k[m+(p<<5)+20>>2]=1;l=p;p=o;continue}if(!(q&1)){k[m+(p<<5)+20>>2]=109;l=p;p=o;continue}else{z=k[m+(l<<5)+20>>2]|0;k[m+(p<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;l=p;p=o;continue}}}while(0);x=x+1|0;if(x>>>0>=I>>>0)break;else h=h+56|0}b=k[D>>2]|0}A=A+1|0;if(A>>>0>=b>>>0)break a;else y=y+36|0}if((n|0)==66){cd(k[b>>2]|0);k[m>>2]=0;k[l>>2]=0;Hg(G);f=0;r=N;return f|0}else if((n|0)==77){cd(k[b>>2]|0);k[m>>2]=0;k[l>>2]=0;Hg(G);f=0;r=N;return f|0}else if((n|0)==90){cd(k[l>>2]|0);k[m>>2]=0;k[b>>2]=0;Hg(G);f=0;r=N;return f|0}}while(0);if(!(Og(G)|0)){Hg(G);f=0;r=N;return f|0}l=Ig(G)|0;b=E+l|0;Hg(G);do if(k[c>>2]&4){if(((k[v>>2]|0)-b+(k[F>>2]|0)|0)>>>0<2){cc(j,2,22135,K)|0;break}if((i[b>>0]|0)==-1?(i[E+(l+1)>>0]|0)==-110:0){b=E+(l+2)|0;break}cc(j,2,22177,L)|0}while(0);k[v>>2]=(k[v>>2]|0)+((k[F>>2]|0)-b);k[F>>2]=b;k[e>>2]=1;k[g>>2]=(k[M>>2]|0)-f;f=1;r=N;return f|0}function rh(){return Zc(104)|0}function sh(a){a=a|0;if(!a)return;cd(a);return}function th(a){a=a|0;return (k[a+12>>2]|0)-(k[a+16>>2]|0)|0}function uh(a,b){a=a|0;b=b|0;var c=0,d=0;k[a+100>>2]=a+24;k[a+4>>2]=32768;k[a>>2]=0;d=b+-1|0;k[a+12>>2]=d;c=a+8|0;k[c>>2]=12;k[c>>2]=(i[d>>0]|0)==-1?13:12;k[a+16>>2]=b;return}function vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=k[a+100>>2]|0;f=k[e>>2]|0;h=(k[f+4>>2]|0)==(b|0);d=k[f>>2]|0;j=a+4|0;b=(k[j>>2]|0)-d|0;k[j>>2]=b;if(!h){if(b>>>0<d>>>0){h=(k[a>>2]|0)+d|0;k[a>>2]=h;d=b;b=h;h=a}else{k[j>>2]=d;b=k[a>>2]|0;h=a}k[e>>2]=k[f+12>>2];g=a+8|0;f=a+12|0;e=b;b=k[g>>2]|0;while(1){d=d<<1;k[j>>2]=d;c=e<<1;k[h>>2]=c;b=b+-1|0;k[g>>2]=b;if(!b){b=k[f>>2]|0;d=i[b>>0]|0;do if(d<<24>>24!=-1){if(!(c&134217728)){c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>18;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}i[b>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){a=k[h>>2]&134217727;k[h>>2]=a;c=b+1|0;k[f>>2]=c;i[c>>0]=a>>>20;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[f>>2]=c;i[c>>0]=(k[h>>2]|0)>>>19;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}}else{c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>19;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7}while(0);d=k[j>>2]|0}if(!(d&32768))e=c;else break}return}if(b&32768){k[a>>2]=(k[a>>2]|0)+d;return}if(b>>>0<d>>>0){k[j>>2]=d;c=k[a>>2]|0;h=a}else{c=(k[a>>2]|0)+d|0;k[a>>2]=c;d=b;h=a}k[e>>2]=k[f+8>>2];g=a+8|0;f=a+12|0;e=c;b=k[g>>2]|0;while(1){d=d<<1;k[j>>2]=d;c=e<<1;k[h>>2]=c;b=b+-1|0;k[g>>2]=b;if(!b){b=k[f>>2]|0;d=i[b>>0]|0;do if(d<<24>>24!=-1){if(!(c&134217728)){c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>18;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}i[b>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){a=k[h>>2]&134217727;k[h>>2]=a;c=b+1|0;k[f>>2]=c;i[c>>0]=a>>>20;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[f>>2]=c;i[c>>0]=(k[h>>2]|0)>>>19;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}}else{c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>19;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7}while(0);d=k[j>>2]|0}if(!(d&32768))e=c;else break}return}function wh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=k[a>>2]|0;d=f|65535;e=a+8|0;d=(d>>>0<((k[a+4>>2]|0)+f|0)>>>0?d:d+-32768|0)<<k[e>>2];k[a>>2]=d;f=a+12|0;b=k[f>>2]|0;c=i[b>>0]|0;do if(c<<24>>24!=-1){if(!(d&134217728)){b=b+1|0;k[f>>2]=b;i[b>>0]=d>>>19;b=k[a>>2]&524287;k[a>>2]=b;k[e>>2]=8;c=8;break}i[b>>0]=c+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){c=k[a>>2]&134217727;k[a>>2]=c;b=b+1|0;k[f>>2]=b;i[b>>0]=c>>>20;b=k[a>>2]&1048575;k[a>>2]=b;k[e>>2]=7;c=7;break}else{b=b+1|0;k[f>>2]=b;i[b>>0]=(k[a>>2]|0)>>>19;b=k[a>>2]&524287;k[a>>2]=b;k[e>>2]=8;c=8;break}}else{b=b+1|0;k[f>>2]=b;i[b>>0]=d>>>20;b=k[a>>2]&1048575;k[a>>2]=b;k[e>>2]=7;c=7}while(0);b=b<<c;k[a>>2]=b;c=k[f>>2]|0;d=i[c>>0]|0;do if(d<<24>>24!=-1){if(!(b&134217728)){d=c+1|0;k[f>>2]=d;i[d>>0]=b>>>19;k[a>>2]=k[a>>2]&524287;k[e>>2]=8;break}i[c>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){c=k[a>>2]&134217727;k[a>>2]=c;d=b+1|0;k[f>>2]=d;i[d>>0]=c>>>20;k[a>>2]=k[a>>2]&1048575;k[e>>2]=7;break}else{d=b+1|0;k[f>>2]=d;i[d>>0]=(k[a>>2]|0)>>>19;k[a>>2]=k[a>>2]&524287;k[e>>2]=8;break}}else{d=c+1|0;k[f>>2]=d;i[d>>0]=b>>>20;k[a>>2]=k[a>>2]&1048575;k[e>>2]=7}while(0);b=k[f>>2]|0;if((i[b>>0]|0)==-1)return;k[f>>2]=b+1;return}function xh(a){a=a|0;k[a>>2]=0;k[a+8>>2]=8;return}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;d=(k[c>>2]|0)+-1|0;k[c>>2]=d;b=(b<<d)+(k[a>>2]|0)|0;k[a>>2]=b;if(d)return;d=a+12|0;e=(k[d>>2]|0)+1|0;k[d>>2]=e;i[e>>0]=b;k[c>>2]=8;k[c>>2]=(i[k[d>>2]>>0]|0)==-1?7:8;k[a>>2]=0;return}function zh(a){a=a|0;k[a+28>>2]=1156;k[a+32>>2]=1156;k[a+36>>2]=1156;k[a+40>>2]=1156;k[a+44>>2]=1156;k[a+48>>2]=1156;k[a+52>>2]=1156;k[a+56>>2]=1156;k[a+60>>2]=1156;k[a+64>>2]=1156;k[a+68>>2]=1156;k[a+72>>2]=1156;k[a+76>>2]=1156;k[a+80>>2]=1156;k[a+84>>2]=1156;k[a+88>>2]=1156;k[a+96>>2]=2628;k[a+92>>2]=1252;k[a+24>>2]=1284;return}function Ah(a){a=a|0;k[a+24>>2]=1156;k[a+28>>2]=1156;k[a+32>>2]=1156;k[a+36>>2]=1156;k[a+40>>2]=1156;k[a+44>>2]=1156;k[a+48>>2]=1156;k[a+52>>2]=1156;k[a+56>>2]=1156;k[a+60>>2]=1156;k[a+64>>2]=1156;k[a+68>>2]=1156;k[a+72>>2]=1156;k[a+76>>2]=1156;k[a+80>>2]=1156;k[a+84>>2]=1156;k[a+88>>2]=1156;k[a+92>>2]=1156;k[a+96>>2]=1156;return}function Bh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a+24+(b<<2)>>2]=1156+((d<<1)+c<<4);return}function Ch(a){a=a|0;var b=0,c=0;k[a+100>>2]=a+24;k[a+4>>2]=32768;k[a>>2]=0;b=a+8|0;k[b>>2]=12;c=a+12|0;a=(k[c>>2]|0)+-1|0;k[c>>2]=a;if((i[a>>0]|0)!=-1)return;k[b>>2]=13;return}function Dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=a+8|0;b=k[g>>2]|0;d=12-b|0;if((d|0)>0){e=a+12|0;c=k[a>>2]|0;do{b=c<<b;k[a>>2]=b;k[g>>2]=0;c=k[e>>2]|0;f=i[c>>0]|0;do if(f<<24>>24!=-1){if(!(b&134217728)){c=c+1|0;k[e>>2]=c;i[c>>0]=b>>>19;c=k[a>>2]&524287;k[a>>2]=c;k[g>>2]=8;b=8;break}i[c>>0]=f+1<<24>>24;b=k[e>>2]|0;if((i[b>>0]|0)==-1){f=k[a>>2]&134217727;k[a>>2]=f;c=b+1|0;k[e>>2]=c;i[c>>0]=f>>>20;c=k[a>>2]&1048575;k[a>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[e>>2]=c;i[c>>0]=(k[a>>2]|0)>>>19;c=k[a>>2]&524287;k[a>>2]=c;k[g>>2]=8;b=8;break}}else{c=c+1|0;k[e>>2]=c;i[c>>0]=b>>>20;c=k[a>>2]&1048575;k[a>>2]=c;k[g>>2]=7;b=7}while(0);d=d-b|0}while((d|0)>0)}else e=a+12|0;b=k[e>>2]|0;c=i[b>>0]|0;if(c<<24>>24==-1)return;d=k[a>>2]|0;if(!(d&134217728)){f=b+1|0;k[e>>2]=f;i[f>>0]=d>>>19;k[a>>2]=k[a>>2]&524287;k[g>>2]=8;return}i[b>>0]=c+1<<24>>24;b=k[e>>2]|0;if((i[b>>0]|0)==-1){d=k[a>>2]&134217727;k[a>>2]=d;f=b+1|0;k[e>>2]=f;i[f>>0]=d>>>20;k[a>>2]=k[a>>2]&1048575;k[g>>2]=7;return}else{f=b+1|0;k[e>>2]=f;i[f>>0]=(k[a>>2]|0)>>>19;k[a>>2]=k[a>>2]&524287;k[g>>2]=8;return}}function Eh(a){a=a|0;k[a+100>>2]=a+96;vh(a,1);vh(a,0);vh(a,1);vh(a,0);return}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a+100>>2]=a+24;k[a+16>>2]=b;k[a+20>>2]=b+c;e=a+12|0;k[e>>2]=b;do if(c){f=l[b>>0]<<16;k[a>>2]=f;d=b+1|0;if((c|0)==1)c=255;else c=l[d>>0]|0;if((i[b>>0]|0)!=-1){k[e>>2]=d;d=f|c<<8;k[a>>2]=d;c=a+8|0;k[c>>2]=8;e=a;f=1;break}if(c>>>0>143){d=f|65280;k[a>>2]=d;c=a+8|0;k[c>>2]=8;e=a;f=1;break}else{k[e>>2]=d;d=f+(c<<9)|0;k[a>>2]=d;c=a+8|0;k[c>>2]=7;e=a;f=0;break}}else{k[a>>2]=16776960;c=a+8|0;k[c>>2]=8;d=16776960;e=a;f=1}while(0);k[e>>2]=d<<7;k[c>>2]=f;k[a+4>>2]=32768;return 1}function Gh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0;c=k[a+100>>2]|0;d=k[c>>2]|0;g=k[d>>2]|0;n=a+4|0;f=(k[n>>2]|0)-g|0;k[n>>2]=f;e=k[a>>2]|0;if(e>>>16>>>0<g>>>0){k[n>>2]=g;b=k[d+4>>2]|0;if(f>>>0<g>>>0)k[c>>2]=k[d+8>>2];else{k[c>>2]=k[d+12>>2];b=1-b|0}h=a+8|0;j=a+12|0;m=a+20|0;d=k[h>>2]|0;c=e;do{do if(!d){e=k[j>>2]|0;d=k[m>>2]|0;if((e|0)==(d|0)){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}f=e+1|0;if((f|0)==(d|0))d=255;else d=l[f>>0]|0;if((i[e>>0]|0)!=-1){k[j>>2]=f;c=c+(d<<8)|0;k[a>>2]=c;k[h>>2]=8;d=8;break}if(d>>>0>143){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}else{k[j>>2]=f;c=c+(d<<9)|0;k[a>>2]=c;k[h>>2]=7;d=7;break}}while(0);g=g<<1;k[n>>2]=g;c=c<<1;k[a>>2]=c;d=d+-1|0;k[h>>2]=d}while(g>>>0<32768);return b|0}e=e-(g<<16)|0;k[a>>2]=e;if(f&32768){a=k[d+4>>2]|0;return a|0}b=k[d+4>>2]|0;if(g>>>0>f>>>0){k[c>>2]=k[d+12>>2];b=1-b|0}else k[c>>2]=k[d+8>>2];h=a+8|0;j=a+12|0;m=a+20|0;d=k[h>>2]|0;c=e;g=f;do{do if(!d){e=k[j>>2]|0;d=k[m>>2]|0;if((e|0)==(d|0)){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}f=e+1|0;if((f|0)==(d|0))d=255;else d=l[f>>0]|0;if((i[e>>0]|0)!=-1){k[j>>2]=f;c=c+(d<<8)|0;k[a>>2]=c;k[h>>2]=8;d=8;break}if(d>>>0>143){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}else{k[j>>2]=f;c=c+(d<<9)|0;k[a>>2]=c;k[h>>2]=7;d=7;break}}while(0);g=g<<1;k[n>>2]=g;c=c<<1;k[a>>2]=c;d=d+-1|0;k[h>>2]=d}while(g>>>0<32768);return b|0}function Hh(){return Zc(28)|0}function Ih(a){a=a|0;if(!a)return;cd(a);return}function Jh(a,b,c){a=a|0;b=b|0;c=c|0;k[a+20>>2]=b;k[a+8>>2]=c;k[a+12>>2]=0;i[a>>0]=0;k[a+4>>2]=0;return}function Kh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+4|0;b=k[e>>2]|0;do if(!b){k[e>>2]=8;c=a+12|0;d=k[c>>2]|0;if((d|0)==(k[a+8>>2]|0)){i[a>>0]=-1;b=8;c=-1;break}if((i[a>>0]|0)==-1){k[e>>2]=7;b=7}else b=8;f=i[(k[a+20>>2]|0)+d>>0]|0;i[a>>0]=f;k[c>>2]=d+1;c=f}else c=i[a>>0]|0;while(0);f=b+-1|0;k[e>>2]=f;return (c&255)>>>f&1|0}function Lh(){var a=0;if(!(k[665]|0))a=2712;else{a=(La()|0)+60|0;a=k[a>>2]|0}return a|0}function Mh(a){a=a|0;var b=0,c=0;b=0;while(1){if((l[22198+b>>0]|0)==(a|0)){c=2;break}b=b+1|0;if((b|0)==87){b=87;a=22286;c=5;break}}if((c|0)==2)if(!b)a=22286;else{a=22286;c=5}if((c|0)==5)while(1){c=a;while(1){a=c+1|0;if(!(i[c>>0]|0))break;else c=a}b=b+-1|0;if(!b)break;else c=5}return a|0}function Nh(a){a=a|0;var b=0;if(a>>>0>4294963200){b=Lh()|0;k[b>>2]=0-a;a=-1}return a|0}function Oh(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=bj(c|0,d|0,52)|0;e=e&2047;switch(e|0){case 0:{if(a!=0.0){a=+Oh(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=e+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;a=+p[t>>3]}}return +a}function Ph(a,b){a=+a;b=b|0;return +(+Oh(a,b))}function Qh(a,b){a=+a;b=b|0;return +(+Th(a,b))}function Rh(a){a=+a;return ~~+Sh(a)|0}function Sh(a){a=+a;var b=0;b=(o[t>>2]=a,k[t>>2]|0);if((b&2130706432)>>>0<=1249902592){b=(b|0)<0;a=b?a+-8388608.0+8388608.0:a+8388608.0+-8388608.0;if(a==0.0)a=b?-0.0:0.0}return +a}function Th(a,b){a=+a;b=b|0;var c=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;c=b+-1023|0;if((c|0)>1023){c=b+-2046|0;c=(c|0)>1023?1023:c;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;c=b+1022|0;if((c|0)<-1022){c=b+2044|0;c=(c|0)<-1022?-1022:c;a=a*2.2250738585072014e-308}}else c=b;c=$i(c+1023|0,0,52)|0;b=L;k[t>>2]=c;k[t+4>>2]=b;return +(a*+p[t>>3])}function Uh(a,b,c){a=a|0;b=b|0;c=c|0;do if(a){if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}else{a=Lh()|0;k[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function Vh(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Uh(a,b,0)|0;return a|0}function Wh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+112|0;m=n+40|0;j=n+24|0;h=n+16|0;e=n;l=n+52|0;d=i[b>>0]|0;if(Bi(24090,d<<24>>24,4)|0){c=Pi(1144)|0;if(!c)c=0;else{f=c;g=f+112|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));if(!(Di(b,43)|0))k[c>>2]=d<<24>>24==114?8:4;if(Di(b,101)|0){k[e>>2]=a;k[e+4>>2]=2;k[e+8>>2]=1;Aa(221,e|0)|0;d=i[b>>0]|0}if(d<<24>>24==97){k[h>>2]=a;k[h+4>>2]=3;d=Aa(221,h|0)|0;if(!(d&1024)){k[j>>2]=a;k[j+4>>2]=4;k[j+8>>2]=d|1024;Aa(221,j|0)|0}b=k[c>>2]|128;k[c>>2]=b}else b=k[c>>2]|0;k[c+60>>2]=a;k[c+44>>2]=c+120;k[c+48>>2]=1024;d=c+75|0;i[d>>0]=-1;if((b&8|0)==0?(k[m>>2]=a,k[m+4>>2]=21505,k[m+8>>2]=l,(Oa(54,m|0)|0)==0):0)i[d>>0]=10;k[c+32>>2]=60;k[c+36>>2]=61;k[c+40>>2]=3;k[c+12>>2]=1;if(!(k[666]|0))k[c+76>>2]=-1;Ra(2688);d=k[671]|0;k[c+56>>2]=d;if(d)k[d+52>>2]=c;k[671]=c;Pa(2688)}}else{c=Lh()|0;k[c>>2]=22;c=0}r=n;return c|0}function Xh(a){a=a|0;var b=0,c=0,d=0;c=(Di(a,43)|0)==0;b=i[a>>0]|0;c=c?b<<24>>24!=114&1:2;d=(Di(a,120)|0)==0;c=d?c:c|128;a=(Di(a,101)|0)==0;a=a?c:c|524288;a=b<<24>>24==114?a:a|64;a=b<<24>>24==119?a|512:a;return (b<<24>>24==97?a|1024:a)|0}function Yh(a){a=a|0;return 0}function Zh(a){a=a|0;return}function _h(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;g=b&255;i[h>>0]=g;d=a+16|0;e=k[d>>2]|0;if(!e)if(!(fi(a)|0)){e=k[d>>2]|0;f=4}else c=-1;else f=4;do if((f|0)==4){d=a+20|0;f=k[d>>2]|0;if(f>>>0<e>>>0?(c=b&255,(c|0)!=(i[a+75>>0]|0)):0){k[d>>2]=f+1;i[f>>0]=g;break}if(($a[k[a+36>>2]&63](a,h,1)|0)==1)c=l[h>>0]|0;else c=-1}while(0);r=j;return c|0}function $h(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=Nh(Sa(6,c|0)|0)|0;r=b;return a|0}function ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+48|0;f=l+16|0;e=l;d=l+32|0;k[d>>2]=b;g=d+4|0;j=a+48|0;m=k[j>>2]|0;k[g>>2]=c-((m|0)!=0&1);h=a+44|0;k[d+8>>2]=k[h>>2];k[d+12>>2]=m;if(!(k[665]|0)){k[f>>2]=k[a+60>>2];k[f+4>>2]=d;k[f+8>>2]=2;d=Nh(Wa(145,f|0)|0)|0}else{Da(5,a|0);k[e>>2]=k[a+60>>2];k[e+4>>2]=d;k[e+8>>2]=2;d=Nh(Wa(145,e|0)|0)|0;za(0)}if((d|0)>=1){g=k[g>>2]|0;if(d>>>0>g>>>0){f=k[h>>2]|0;e=a+4|0;k[e>>2]=f;k[a+8>>2]=f+(d-g);if(!(k[j>>2]|0))d=c;else{k[e>>2]=f+1;i[b+(c+-1)>>0]=i[f>>0]|0;d=c}}}else{k[a>>2]=k[a>>2]|d&48^16;k[a+8>>2]=0;k[a+4>>2]=0}r=l;return d|0}function bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;f=e;d=e+20|0;k[f>>2]=k[a+60>>2];k[f+4>>2]=0;k[f+8>>2]=b;k[f+12>>2]=d;k[f+16>>2]=c;if((Nh(Va(140,f|0)|0)|0)<0){k[d>>2]=-1;a=-1}else a=k[d>>2]|0;r=e;return a|0}function ci(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;d=p+32|0;n=a+28|0;e=k[n>>2]|0;k[d>>2]=e;o=a+20|0;e=(k[o>>2]|0)-e|0;k[d+4>>2]=e;k[d+8>>2]=b;k[d+12>>2]=c;i=a+60|0;j=a+44|0;b=2;e=e+c|0;while(1){if(!(k[665]|0)){k[m>>2]=k[i>>2];k[m+4>>2]=d;k[m+8>>2]=b;g=Nh(Xa(146,m|0)|0)|0}else{Da(6,a|0);k[l>>2]=k[i>>2];k[l+4>>2]=d;k[l+8>>2]=b;g=Nh(Xa(146,l|0)|0)|0;za(0)}if((e|0)==(g|0)){e=6;break}if((g|0)<0){e=8;break}e=e-g|0;f=k[d+4>>2]|0;if(g>>>0<=f>>>0)if((b|0)==2){k[n>>2]=(k[n>>2]|0)+g;h=f;b=2}else h=f;else{h=k[j>>2]|0;k[n>>2]=h;k[o>>2]=h;h=k[d+12>>2]|0;g=g-f|0;d=d+8|0;b=b+-1|0}k[d>>2]=(k[d>>2]|0)+g;k[d+4>>2]=h-g}if((e|0)==6){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((e|0)==8){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((b|0)==2)c=0;else c=c-(k[d+4>>2]|0)|0}r=p;return c|0}function di(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+80|0;d=e;k[a+36>>2]=61;if((k[a>>2]&64|0)==0?(k[d>>2]=k[a+60>>2],k[d+4>>2]=21505,k[d+8>>2]=e+12,(Oa(54,d|0)|0)!=0):0)i[a+75>>0]=-1;d=ci(a,b,c)|0;r=e;return d|0}function ei(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=a+20|0;c=a+44|0;if((k[b>>2]|0)>>>0>(k[c>>2]|0)>>>0)$a[k[a+36>>2]&63](a,0,0)|0;k[a+16>>2]=0;k[a+28>>2]=0;k[b>>2]=0;b=k[a>>2]|0;if(b&20)if(!(b&4))b=-1;else{k[a>>2]=b|32;b=-1}else{b=k[c>>2]|0;k[a+8>>2]=b;k[a+4>>2]=b;b=0}return b|0}function fi(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);b=0}else{k[a>>2]=b|32;b=-1}return b|0}function gi(a){a=a|0;var b=0,c=0,d=0;d=(k[a>>2]&1|0)!=0;if(!d){Ra(2688);c=k[a+52>>2]|0;b=a+56|0;if(c)k[c+56>>2]=k[b>>2];b=k[b>>2]|0;if(b)k[b+52>>2]=c;if((k[671]|0)==(a|0))k[671]=b;Pa(2688)}b=hi(a)|0;b=eb[k[a+12>>2]&15](a)|0|b;c=k[a+92>>2]|0;if(c)Qi(c);if(!d)Qi(a);return b|0}function hi(a){a=a|0;var b=0,c=0;do if(a){if((k[a+76>>2]|0)<=-1){b=Ji(a)|0;break}c=(Yh(a)|0)==0;b=Ji(a)|0;if(!c)Zh(a)}else{if(!(k[677]|0))b=0;else b=hi(k[677]|0)|0;Ra(2688);a=k[671]|0;if(a)do{if((k[a+76>>2]|0)>-1)c=Yh(a)|0;else c=0;if((k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0)b=Ji(a)|0|b;if(c)Zh(a);a=k[a+56>>2]|0}while((a|0)!=0);Pa(2688)}while(0);return b|0}function ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+32|0;d=e+16|0;c=e;if(Bi(24090,i[b>>0]|0,4)|0){f=Xh(b)|0|32768;k[c>>2]=a;k[c+4>>2]=f;k[c+8>>2]=438;c=Nh(Ta(5,c|0)|0)|0;if((c|0)>=0){a=Wh(c,b)|0;if(!a){k[d>>2]=c;Sa(6,d|0)|0;a=0}}else a=0}else{a=Lh()|0;k[a>>2]=22;a=0}r=e;return a|0}function ji(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=yi(a,b,e)|0;r=d;return c|0}function ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((k[b+76>>2]|0)>=0?(Yh(b)|0)!=0:0){if((i[b+75>>0]|0)!=(a|0)?(d=b+20|0,e=k[d>>2]|0,e>>>0<(k[b+16>>2]|0)>>>0):0){k[d>>2]=e+1;i[e>>0]=a;c=a&255}else c=_h(b,a)|0;Zh(b)}else g=3;do if((g|0)==3){if((i[b+75>>0]|0)!=(a|0)?(f=b+20|0,c=k[f>>2]|0,c>>>0<(k[b+16>>2]|0)>>>0):0){k[f>>2]=c+1;i[c>>0]=a;c=a&255;break}c=_h(b,a)|0}while(0);return c|0}function li(a,b){a=a|0;b=b|0;return (ui(a,Gi(a)|0,1,b)|0)+-1|0}function mi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;h=ha(c,b)|0;if((k[d+76>>2]|0)>-1)j=Yh(d)|0;else j=0;e=d+74|0;f=i[e>>0]|0;i[e>>0]=f+255|f;e=d+4|0;f=k[e>>2]|0;g=(k[d+8>>2]|0)-f|0;if((g|0)>0){g=g>>>0<h>>>0?g:h;cj(a|0,f|0,g|0)|0;k[e>>2]=f+g;a=a+g|0;e=h-g|0}else e=h;a:do if(!e)l=13;else{g=d+32|0;f=e;while(1){if(ei(d)|0){c=f;break}e=$a[k[g>>2]&63](d,a,f)|0;if((e+1|0)>>>0<2){c=f;break}if((f|0)==(e|0)){l=13;break a}else{a=a+e|0;f=f-e|0}}if(j)Zh(d);c=((h-c|0)>>>0)/(b>>>0)|0}while(0);if((l|0)==13)if(j)Zh(d);return c|0}function ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)==1)b=b-(k[a+8>>2]|0)+(k[a+4>>2]|0)|0;e=a+20|0;d=a+28|0;if((k[e>>2]|0)>>>0>(k[d>>2]|0)>>>0?($a[k[a+36>>2]&63](a,0,0)|0,(k[e>>2]|0)==0):0)b=-1;else{k[a+16>>2]=0;k[d>>2]=0;k[e>>2]=0;if(($a[k[a+40>>2]&63](a,b,c)|0)<0)b=-1;else{k[a+8>>2]=0;k[a+4>>2]=0;k[a>>2]=k[a>>2]&-17;b=0}}return b|0}function oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((k[a+76>>2]|0)>-1){d=(Yh(a)|0)==0;b=ni(a,b,c)|0;if(!d)Zh(a)}else b=ni(a,b,c)|0;return b|0}function pi(a,b,c){a=a|0;b=b|0;c=c|0;return oi(a,b,c)|0}function qi(a){a=a|0;var b=0;if(!(k[a>>2]&128))b=1;else b=(k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0?2:1;b=$a[k[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(k[a+8>>2]|0)+(k[a+4>>2]|0)+(k[a+20>>2]|0)-(k[a+28>>2]|0)|0;return b|0}function ri(a){a=a|0;var b=0;if((k[a+76>>2]|0)>-1){b=(Yh(a)|0)==0;a=qi(a)|0}else a=qi(a)|0;return a|0}function si(a){a=a|0;return ri(a)|0}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=c+16|0;e=k[d>>2]|0;if(!e)if(!(fi(c)|0)){e=k[d>>2]|0;f=4}else d=0;else f=4;a:do if((f|0)==4){g=c+20|0;f=k[g>>2]|0;if((e-f|0)>>>0<b>>>0){d=$a[k[c+36>>2]&63](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){d=b;while(1){if(!d){e=f;d=0;break b}e=d+-1|0;if((i[a+e>>0]|0)==10)break;else d=e}if(($a[k[c+36>>2]&63](c,a,d)|0)>>>0<d>>>0)break a;b=b-d|0;a=a+d|0;e=k[g>>2]|0}else{e=f;d=0}while(0);cj(e|0,a|0,b|0)|0;k[g>>2]=(k[g>>2]|0)+b;d=d+b|0}while(0);return d|0}function ui(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ha(c,b)|0;if((k[d+76>>2]|0)>-1){f=(Yh(d)|0)==0;a=ti(a,e,d)|0;if(!f)Zh(d)}else a=ti(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function vi(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;b=yi(k[676]|0,a,d)|0;r=c;return b|0}function wi(a){a=a|0;var b=0,c=0,d=0,e=0;d=k[676]|0;if((k[d+76>>2]|0)>-1)e=Yh(d)|0;else e=0;do if((li(a,d)|0)<0)b=1;else{if((i[d+75>>0]|0)!=10?(b=d+20|0,c=k[b>>2]|0,c>>>0<(k[d+16>>2]|0)>>>0):0){k[b>>2]=c+1;i[c>>0]=10;b=0;break}b=(_h(d,10)|0)<0}while(0);if(e)Zh(d);return b<<31>>31|0}function xi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Ai(a,b,e)|0;r=d;return c|0}function yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+224|0;n=s+80|0;q=s+96|0;p=s;o=s+136|0;d=q;e=d+40|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));k[n>>2]=k[c>>2];if((Ki(0,b,n,p,q)|0)<0)c=-1;else{if((k[a+76>>2]|0)>-1)l=Yh(a)|0;else l=0;c=k[a>>2]|0;m=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;c=a+48|0;if(!(k[c>>2]|0)){e=a+44|0;f=k[e>>2]|0;k[e>>2]=o;g=a+28|0;k[g>>2]=o;h=a+20|0;k[h>>2]=o;k[c>>2]=80;j=a+16|0;k[j>>2]=o+80;d=Ki(a,b,n,p,q)|0;if(f){$a[k[a+36>>2]&63](a,0,0)|0;d=(k[h>>2]|0)==0?-1:d;k[e>>2]=f;k[c>>2]=0;k[j>>2]=0;k[g>>2]=0;k[h>>2]=0}}else d=Ki(a,b,n,p,q)|0;c=k[a>>2]|0;k[a>>2]=c|m;if(l)Zh(a);c=(c&32|0)==0?d:-1}r=s;return c|0}function zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+128|0;e=m+112|0;l=m;f=l;g=2716;h=f+112|0;do{k[f>>2]=k[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if((b+-1|0)>>>0>2147483646)if(!b){b=1;j=4}else{b=Lh()|0;k[b>>2]=75;b=-1}else{e=a;j=4}if((j|0)==4){j=-2-e|0;j=b>>>0>j>>>0?j:b;k[l+48>>2]=j;a=l+20|0;k[a>>2]=e;k[l+44>>2]=e;b=e+j|0;e=l+16|0;k[e>>2]=b;k[l+28>>2]=b;b=yi(l,c,d)|0;if(j){c=k[a>>2]|0;i[c+(((c|0)==(k[e>>2]|0))<<31>>31)>>0]=0}}r=m;return b|0}function Ai(a,b,c){a=a|0;b=b|0;c=c|0;return zi(a,2147483647,b,c)|0}function Bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24){g=6;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);if((g|0)==5)if(d)g=6;else c=0;b:do if((g|0)==6){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=ha(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}while(0);return ((c|0)!=0?a:0)|0}function Ci(a,b){a=a|0;b=b|0;var c=0,d=0;c=b;a:do if(!((c^a)&3)){if(c&3)do{c=i[b>>0]|0;i[a>>0]=c;if(!(c<<24>>24))break a;b=b+1|0;a=a+1|0}while((b&3|0)!=0);c=k[b>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009)){d=a;while(1){b=b+4|0;a=d+4|0;k[d>>2]=c;c=k[b>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009)break;else d=a}}d=8}else d=8;while(0);if((d|0)==8){d=i[b>>0]|0;i[a>>0]=d;if(d<<24>>24)do{b=b+1|0;a=a+1|0;d=i[b>>0]|0;i[a>>0]=d}while(d<<24>>24!=0)}return a|0}function Di(a,b){a=a|0;b=b|0;a=Ei(a,b)|0;return ((i[a>>0]|0)==(b&255)<<24>>24?a:0)|0}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b&255;a:do if(!d)a=a+(Gi(a)|0)|0;else{if(a&3){c=b&255;do{e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}d=ha(d,16843009)|0;c=k[a>>2]|0;b:do if(!((c&-2139062144^-2139062144)&c+-16843009))do{e=c^d;if((e&-2139062144^-2139062144)&e+-16843009)break b;a=a+4|0;c=k[a>>2]|0}while(((c&-2139062144^-2139062144)&c+-16843009|0)==0);while(0);c=b&255;while(1){e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break;else a=a+1|0}}while(0);return a|0}function Fi(a,b){a=a|0;b=b|0;Ci(a,b)|0;return a|0}function Gi(a){a=a|0;var b=0,c=0,d=0;d=a;a:do if(!(d&3))c=4;else{b=a;a=d;while(1){if(!(i[b>>0]|0))break a;b=b+1|0;a=b;if(!(a&3)){a=b;c=4;break}}}while(0);if((c|0)==4){while(1){b=k[a>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))a=a+4|0;else break}if((b&255)<<24>>24)do a=a+1|0;while((i[a>>0]|0)!=0)}return a-d|0}function Hi(a){a=a|0;if(!(k[a+68>>2]|0))Zh(a);return}function Ii(a){a=a|0;if(!(k[a+68>>2]|0))Zh(a);return}function Ji(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+20|0;f=a+28|0;if((k[b>>2]|0)>>>0>(k[f>>2]|0)>>>0?($a[k[a+36>>2]&63](a,0,0)|0,(k[b>>2]|0)==0):0)b=-1;else{g=a+4|0;c=k[g>>2]|0;d=a+8|0;e=k[d>>2]|0;if(c>>>0<e>>>0)$a[k[a+40>>2]&63](a,c-e|0,1)|0;k[a+16>>2]=0;k[f>>2]=0;k[b>>2]=0;k[d>>2]=0;k[g>>2]=0;b=0}return b|0}
|
|
83
|
-
function Ki(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0.0,o=0,q=0,s=0,u=0,v=0.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,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;ga=r;r=r+624|0;ba=ga+24|0;da=ga+16|0;ca=ga+588|0;Y=ga+576|0;aa=ga;V=ga+536|0;fa=ga+8|0;ea=ga+528|0;M=(a|0)!=0;N=V+40|0;U=N;V=V+39|0;W=fa+4|0;X=Y+12|0;Y=Y+11|0;Z=ca;_=X;$=_-Z|0;O=-2-Z|0;P=_+2|0;Q=ba+288|0;R=ca+9|0;S=R;T=ca+8|0;f=0;w=b;g=0;b=0;a:while(1){do if((f|0)>-1)if((g|0)>(2147483647-f|0)){f=Lh()|0;k[f>>2]=75;f=-1;break}else{f=g+f|0;break}while(0);g=i[w>>0]|0;if(!(g<<24>>24)){K=245;break}else h=w;b:while(1){switch(g<<24>>24){case 37:{g=h;K=9;break b}case 0:{g=h;break b}default:{}}J=h+1|0;g=i[J>>0]|0;h=J}c:do if((K|0)==9)while(1){K=0;if((i[g+1>>0]|0)!=37)break c;h=h+1|0;g=g+2|0;if((i[g>>0]|0)==37)K=9;else break}while(0);y=h-w|0;if(M?(k[a>>2]&32|0)==0:0)ti(w,y,a)|0;if((h|0)!=(w|0)){w=g;g=y;continue}o=g+1|0;h=i[o>>0]|0;m=(h<<24>>24)+-48|0;if(m>>>0<10){J=(i[g+2>>0]|0)==36;o=J?g+3|0:o;h=i[o>>0]|0;u=J?m:-1;b=J?1:b}else u=-1;g=h<<24>>24;d:do if((g&-32|0)==32){m=0;while(1){if(!(1<<g+-32&75913)){q=m;g=o;break d}m=1<<(h<<24>>24)+-32|m;o=o+1|0;h=i[o>>0]|0;g=h<<24>>24;if((g&-32|0)!=32){q=m;g=o;break}}}else{q=0;g=o}while(0);do if(h<<24>>24==42){m=g+1|0;h=(i[m>>0]|0)+-48|0;if(h>>>0<10?(i[g+2>>0]|0)==36:0){k[e+(h<<2)>>2]=10;b=1;g=g+3|0;h=k[d+((i[m>>0]|0)+-48<<3)>>2]|0}else{if(b){f=-1;break a}if(!M){x=q;g=m;b=0;J=0;break}b=(k[c>>2]|0)+(4-1)&~(4-1);h=k[b>>2]|0;k[c>>2]=b+4;b=0;g=m}if((h|0)<0){x=q|8192;J=0-h|0}else{x=q;J=h}}else{m=(h<<24>>24)+-48|0;if(m>>>0<10){h=0;do{h=(h*10|0)+m|0;g=g+1|0;m=(i[g>>0]|0)+-48|0}while(m>>>0<10);if((h|0)<0){f=-1;break a}else{x=q;J=h}}else{x=q;J=0}}while(0);e:do if((i[g>>0]|0)==46){m=g+1|0;h=i[m>>0]|0;if(h<<24>>24!=42){o=(h<<24>>24)+-48|0;if(o>>>0<10){g=m;h=0}else{g=m;o=0;break}while(1){h=(h*10|0)+o|0;g=g+1|0;o=(i[g>>0]|0)+-48|0;if(o>>>0>=10){o=h;break e}}}m=g+2|0;h=(i[m>>0]|0)+-48|0;if(h>>>0<10?(i[g+3>>0]|0)==36:0){k[e+(h<<2)>>2]=10;g=g+4|0;o=k[d+((i[m>>0]|0)+-48<<3)>>2]|0;break}if(b){f=-1;break a}if(M){g=(k[c>>2]|0)+(4-1)&~(4-1);o=k[g>>2]|0;k[c>>2]=g+4;g=m}else{g=m;o=0}}else o=-1;while(0);s=0;while(1){h=(i[g>>0]|0)+-65|0;if(h>>>0>57){f=-1;break a}m=g+1|0;h=i[25126+(s*58|0)+h>>0]|0;q=h&255;if((q+-1|0)>>>0<8){g=m;s=q}else{I=m;break}}if(!(h<<24>>24)){f=-1;break}m=(u|0)>-1;do if(h<<24>>24==19)if(m){f=-1;break a}else K=52;else{if(m){k[e+(u<<2)>>2]=q;G=d+(u<<3)|0;H=k[G+4>>2]|0;K=aa;k[K>>2]=k[G>>2];k[K+4>>2]=H;K=52;break}if(!M){f=0;break a}Mi(aa,q,c)}while(0);if((K|0)==52?(K=0,!M):0){w=I;g=y;continue}u=i[g>>0]|0;u=(s|0)!=0&(u&15|0)==3?u&-33:u;m=x&-65537;H=(x&8192|0)==0?x:m;f:do switch(u|0){case 110:switch(s|0){case 0:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 1:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 2:{w=k[aa>>2]|0;k[w>>2]=f;k[w+4>>2]=((f|0)<0)<<31>>31;w=I;g=y;continue a}case 3:{j[k[aa>>2]>>1]=f;w=I;g=y;continue a}case 4:{i[k[aa>>2]>>0]=f;w=I;g=y;continue a}case 6:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 7:{w=k[aa>>2]|0;k[w>>2]=f;k[w+4>>2]=((f|0)<0)<<31>>31;w=I;g=y;continue a}default:{w=I;g=y;continue a}}case 112:{s=H|8;o=o>>>0>8?o:8;u=120;K=64;break}case 88:case 120:{s=H;K=64;break}case 111:{m=aa;h=k[m>>2]|0;m=k[m+4>>2]|0;if((h|0)==0&(m|0)==0)g=N;else{g=N;do{g=g+-1|0;i[g>>0]=h&7|48;h=bj(h|0,m|0,3)|0;m=L}while(!((h|0)==0&(m|0)==0))}if(!(H&8)){h=H;s=0;q=25606;K=77}else{s=U-g+1|0;h=H;o=(o|0)<(s|0)?s:o;s=0;q=25606;K=77}break}case 105:case 100:{h=aa;g=k[h>>2]|0;h=k[h+4>>2]|0;if((h|0)<0){g=Yi(0,0,g|0,h|0)|0;h=L;m=aa;k[m>>2]=g;k[m+4>>2]=h;m=1;q=25606;K=76;break f}if(!(H&2048)){q=H&1;m=q;q=(q|0)==0?25606:25608;K=76}else{m=1;q=25607;K=76}break}case 117:{h=aa;g=k[h>>2]|0;h=k[h+4>>2]|0;m=0;q=25606;K=76;break}case 99:{i[V>>0]=k[aa>>2];w=V;h=1;s=0;u=25606;g=N;break}case 109:{g=Lh()|0;g=Mh(k[g>>2]|0)|0;K=82;break}case 115:{g=k[aa>>2]|0;g=(g|0)!=0?g:25616;K=82;break}case 67:{k[fa>>2]=k[aa>>2];k[W>>2]=0;k[aa>>2]=fa;o=-1;K=86;break}case 83:{if(!o){Oi(a,32,J,0,H);g=0;K=98}else K=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{n=+p[aa>>3];k[da>>2]=0;p[t>>3]=n;if((k[t+4>>2]|0)>=0)if(!(H&2048)){G=H&1;F=G;G=(G|0)==0?25624:25629}else{F=1;G=25626}else{n=-n;F=1;G=25623}p[t>>3]=n;E=k[t+4>>2]&2146435072;do if(E>>>0<2146435072|(E|0)==2146435072&0<0){v=+Ph(n,da)*2.0;h=v!=0.0;if(h)k[da>>2]=(k[da>>2]|0)+-1;C=u|32;if((C|0)==97){w=u&32;y=(w|0)==0?G:G+9|0;x=F|2;g=12-o|0;do if(!(o>>>0>11|(g|0)==0)){n=8.0;do{g=g+-1|0;n=n*16.0}while((g|0)!=0);if((i[y>>0]|0)==45){n=-(n+(-v-n));break}else{n=v+n-n;break}}else n=v;while(0);h=k[da>>2]|0;g=(h|0)<0?0-h|0:h;g=Ni(g,((g|0)<0)<<31>>31,X)|0;if((g|0)==(X|0)){i[Y>>0]=48;g=Y}i[g+-1>>0]=(h>>31&2)+43;s=g+-2|0;i[s>>0]=u+15;q=(o|0)<1;m=(H&8|0)==0;h=ca;while(1){G=~~n;g=h+1|0;i[h>>0]=l[25590+G>>0]|w;n=(n-+(G|0))*16.0;do if((g-Z|0)==1){if(m&(q&n==0.0))break;i[g>>0]=46;g=h+2|0}while(0);if(!(n!=0.0))break;else h=g}o=(o|0)!=0&(O+g|0)<(o|0)?P+o-s|0:$-s+g|0;m=o+x|0;Oi(a,32,J,m,H);if(!(k[a>>2]&32))ti(y,x,a)|0;Oi(a,48,J,m,H^65536);g=g-Z|0;if(!(k[a>>2]&32))ti(ca,g,a)|0;h=_-s|0;Oi(a,48,o-(g+h)|0,0,0);if(!(k[a>>2]&32))ti(s,h,a)|0;Oi(a,32,J,m,H^8192);g=(m|0)<(J|0)?J:m;break}g=(o|0)<0?6:o;if(h){h=(k[da>>2]|0)+-28|0;k[da>>2]=h;n=v*268435456.0}else{n=v;h=k[da>>2]|0}E=(h|0)<0?ba:Q;D=E;h=E;do{B=~~n>>>0;k[h>>2]=B;h=h+4|0;n=(n-+(B>>>0))*1.0e9}while(n!=0.0);m=h;h=k[da>>2]|0;if((h|0)>0){q=E;while(1){s=(h|0)>29?29:h;o=m+-4|0;do if(o>>>0<q>>>0)o=q;else{h=0;do{B=$i(k[o>>2]|0,0,s|0)|0;B=aj(B|0,L|0,h|0,0)|0;h=L;A=jj(B|0,h|0,1e9,0)|0;k[o>>2]=A;h=ij(B|0,h|0,1e9,0)|0;o=o+-4|0}while(o>>>0>=q>>>0);if(!h){o=q;break}o=q+-4|0;k[o>>2]=h}while(0);while(1){if(m>>>0<=o>>>0)break;h=m+-4|0;if(!(k[h>>2]|0))m=h;else break}h=(k[da>>2]|0)-s|0;k[da>>2]=h;if((h|0)>0)q=o;else break}}else o=E;if((h|0)<0){y=((g+25|0)/9|0)+1|0;z=(C|0)==102;w=o;while(1){x=0-h|0;x=(x|0)>9?9:x;do if(w>>>0<m>>>0){h=(1<<x)+-1|0;q=1e9>>>x;o=0;s=w;do{B=k[s>>2]|0;k[s>>2]=(B>>>x)+o;o=ha(B&h,q)|0;s=s+4|0}while(s>>>0<m>>>0);h=(k[w>>2]|0)==0?w+4|0:w;if(!o){o=h;break}k[m>>2]=o;o=h;m=m+4|0}else o=(k[w>>2]|0)==0?w+4|0:w;while(0);h=z?E:o;m=(m-h>>2|0)>(y|0)?h+(y<<2)|0:m;h=(k[da>>2]|0)+x|0;k[da>>2]=h;if((h|0)>=0){w=o;break}else w=o}}else w=o;do if(w>>>0<m>>>0){h=(D-w>>2)*9|0;q=k[w>>2]|0;if(q>>>0<10)break;else o=10;do{o=o*10|0;h=h+1|0}while(q>>>0>=o>>>0)}else h=0;while(0);A=(C|0)==103;B=(g|0)!=0;o=g-((C|0)!=102?h:0)+((B&A)<<31>>31)|0;if((o|0)<(((m-D>>2)*9|0)+-9|0)){s=o+9216|0;z=(s|0)/9|0;o=E+(z+-1023<<2)|0;s=((s|0)%9|0)+1|0;if((s|0)<9){q=10;do{q=q*10|0;s=s+1|0}while((s|0)!=9)}else q=10;x=k[o>>2]|0;y=(x>>>0)%(q>>>0)|0;if((y|0)==0?(E+(z+-1022<<2)|0)==(m|0):0)q=w;else K=163;do if((K|0)==163){K=0;v=(((x>>>0)/(q>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;s=(q|0)/2|0;do if(y>>>0<s>>>0)n=.5;else{if((y|0)==(s|0)?(E+(z+-1022<<2)|0)==(m|0):0){n=1.0;break}n=1.5}while(0);do if(F){if((i[G>>0]|0)!=45)break;v=-v;n=-n}while(0);s=x-y|0;k[o>>2]=s;if(!(v+n!=v)){q=w;break}C=s+q|0;k[o>>2]=C;if(C>>>0>999999999){h=w;while(1){q=o+-4|0;k[o>>2]=0;if(q>>>0<h>>>0){h=h+-4|0;k[h>>2]=0}C=(k[q>>2]|0)+1|0;k[q>>2]=C;if(C>>>0>999999999)o=q;else{w=h;o=q;break}}}h=(D-w>>2)*9|0;s=k[w>>2]|0;if(s>>>0<10){q=w;break}else q=10;do{q=q*10|0;h=h+1|0}while(s>>>0>=q>>>0);q=w}while(0);C=o+4|0;w=q;m=m>>>0>C>>>0?C:m}y=0-h|0;while(1){if(m>>>0<=w>>>0){z=0;C=m;break}o=m+-4|0;if(!(k[o>>2]|0))m=o;else{z=1;C=m;break}}do if(A){g=(B&1^1)+g|0;if((g|0)>(h|0)&(h|0)>-5){u=u+-1|0;g=g+-1-h|0}else{u=u+-2|0;g=g+-1|0}m=H&8;if(m)break;do if(z){m=k[C+-4>>2]|0;if(!m){o=9;break}if(!((m>>>0)%10|0)){q=10;o=0}else{o=0;break}do{q=q*10|0;o=o+1|0}while(((m>>>0)%(q>>>0)|0|0)==0)}else o=9;while(0);m=((C-D>>2)*9|0)+-9|0;if((u|32|0)==102){m=m-o|0;m=(m|0)<0?0:m;g=(g|0)<(m|0)?g:m;m=0;break}else{m=m+h-o|0;m=(m|0)<0?0:m;g=(g|0)<(m|0)?g:m;m=0;break}}else m=H&8;while(0);x=g|m;q=(x|0)!=0&1;s=(u|32|0)==102;if(s){h=(h|0)>0?h:0;u=0}else{o=(h|0)<0?y:h;o=Ni(o,((o|0)<0)<<31>>31,X)|0;if((_-o|0)<2)do{o=o+-1|0;i[o>>0]=48}while((_-o|0)<2);i[o+-1>>0]=(h>>31&2)+43;D=o+-2|0;i[D>>0]=u;h=_-D|0;u=D}y=F+1+g+q+h|0;Oi(a,32,J,y,H);if(!(k[a>>2]&32))ti(G,F,a)|0;Oi(a,48,J,y,H^65536);do if(s){o=w>>>0>E>>>0?E:w;h=o;do{m=Ni(k[h>>2]|0,0,R)|0;do if((h|0)==(o|0)){if((m|0)!=(R|0))break;i[T>>0]=48;m=T}else{if(m>>>0<=ca>>>0)break;do{m=m+-1|0;i[m>>0]=48}while(m>>>0>ca>>>0)}while(0);if(!(k[a>>2]&32))ti(m,S-m|0,a)|0;h=h+4|0}while(h>>>0<=E>>>0);do if(x){if(k[a>>2]&32)break;ti(25658,1,a)|0}while(0);if((g|0)>0&h>>>0<C>>>0){m=h;while(1){h=Ni(k[m>>2]|0,0,R)|0;if(h>>>0>ca>>>0)do{h=h+-1|0;i[h>>0]=48}while(h>>>0>ca>>>0);if(!(k[a>>2]&32))ti(h,(g|0)>9?9:g,a)|0;m=m+4|0;h=g+-9|0;if(!((g|0)>9&m>>>0<C>>>0)){g=h;break}else g=h}}Oi(a,48,g+9|0,9,0)}else{s=z?C:w+4|0;if((g|0)>-1){q=(m|0)==0;o=w;do{h=Ni(k[o>>2]|0,0,R)|0;if((h|0)==(R|0)){i[T>>0]=48;h=T}do if((o|0)==(w|0)){m=h+1|0;if(!(k[a>>2]&32))ti(h,1,a)|0;if(q&(g|0)<1){h=m;break}if(k[a>>2]&32){h=m;break}ti(25658,1,a)|0;h=m}else{if(h>>>0<=ca>>>0)break;do{h=h+-1|0;i[h>>0]=48}while(h>>>0>ca>>>0)}while(0);m=S-h|0;if(!(k[a>>2]&32))ti(h,(g|0)>(m|0)?m:g,a)|0;g=g-m|0;o=o+4|0}while(o>>>0<s>>>0&(g|0)>-1)}Oi(a,48,g+18|0,18,0);if(k[a>>2]&32)break;ti(u,_-u|0,a)|0}while(0);Oi(a,32,J,y,H^8192);g=(y|0)<(J|0)?J:y}else{s=(u&32|0)!=0;q=n!=n|0.0!=0.0;h=q?0:F;o=h+3|0;Oi(a,32,J,o,m);g=k[a>>2]|0;if(!(g&32)){ti(G,h,a)|0;g=k[a>>2]|0}if(!(g&32))ti(q?(s?25650:25654):s?25642:25646,3,a)|0;Oi(a,32,J,o,H^8192);g=(o|0)<(J|0)?J:o}while(0);w=I;continue a}default:{m=H;h=o;s=0;u=25606;g=N}}while(0);g:do if((K|0)==64){m=aa;h=k[m>>2]|0;m=k[m+4>>2]|0;q=u&32;if(!((h|0)==0&(m|0)==0)){g=N;do{g=g+-1|0;i[g>>0]=l[25590+(h&15)>>0]|q;h=bj(h|0,m|0,4)|0;m=L}while(!((h|0)==0&(m|0)==0));K=aa;if((s&8|0)==0|(k[K>>2]|0)==0&(k[K+4>>2]|0)==0){h=s;s=0;q=25606;K=77}else{h=s;s=2;q=25606+(u>>4)|0;K=77}}else{g=N;h=s;s=0;q=25606;K=77}}else if((K|0)==76){g=Ni(g,h,N)|0;h=H;s=m;K=77}else if((K|0)==82){K=0;H=Bi(g,0,o)|0;G=(H|0)==0;w=g;h=G?o:H-g|0;s=0;u=25606;g=G?g+o|0:H}else if((K|0)==86){K=0;h=0;g=0;q=k[aa>>2]|0;while(1){m=k[q>>2]|0;if(!m)break;g=Vh(ea,m)|0;if((g|0)<0|g>>>0>(o-h|0)>>>0)break;h=g+h|0;if(o>>>0>h>>>0)q=q+4|0;else break}if((g|0)<0){f=-1;break a}Oi(a,32,J,h,H);if(!h){g=0;K=98}else{m=0;o=k[aa>>2]|0;while(1){g=k[o>>2]|0;if(!g){g=h;K=98;break g}g=Vh(ea,g)|0;m=g+m|0;if((m|0)>(h|0)){g=h;K=98;break g}if(!(k[a>>2]&32))ti(ea,g,a)|0;if(m>>>0>=h>>>0){g=h;K=98;break}else o=o+4|0}}}while(0);if((K|0)==98){K=0;Oi(a,32,J,g,H^8192);w=I;g=(J|0)>(g|0)?J:g;continue}if((K|0)==77){K=0;m=(o|0)>-1?h&-65537:h;h=aa;h=(k[h>>2]|0)!=0|(k[h+4>>2]|0)!=0;if((o|0)!=0|h){h=(h&1^1)+(U-g)|0;w=g;h=(o|0)>(h|0)?o:h;u=q;g=N}else{w=N;h=0;u=q;g=N}}q=g-w|0;h=(h|0)<(q|0)?q:h;o=s+h|0;g=(J|0)<(o|0)?o:J;Oi(a,32,g,o,m);if(!(k[a>>2]&32))ti(u,s,a)|0;Oi(a,48,g,o,m^65536);Oi(a,48,h,q,0);if(!(k[a>>2]&32))ti(w,q,a)|0;Oi(a,32,g,o,m^8192);w=I}h:do if((K|0)==245)if(!a)if(b){f=1;while(1){b=k[e+(f<<2)>>2]|0;if(!b)break;Mi(d+(f<<3)|0,b,c);f=f+1|0;if((f|0)>=10){f=1;break h}}if((f|0)<10)while(1){if(k[e+(f<<2)>>2]|0){f=-1;break h}f=f+1|0;if((f|0)>=10){f=1;break}}else f=1}else f=0;while(0);r=ga;return f|0}function Li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=k[d>>2]|0;a=(k[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;cj(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function Mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}function Ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295)while(1){d=jj(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=ij(a|0,b|0,10,0)|0;if(b>>>0>9|(b|0)==9&a>>>0>4294967295){a=d;b=L}else{a=d;break}}if(a)while(1){c=c+-1|0;i[c>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return c|0}function Oi(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;h=r;r=r+256|0;g=h;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;_i(g|0,b|0,(e>>>0>256?256:e)|0)|0;b=k[a>>2]|0;f=(b&32|0)==0;if(e>>>0>255){d=c-d|0;do{if(f){ti(g,256,a)|0;b=k[a>>2]|0}e=e+-256|0;f=(b&32|0)==0}while(e>>>0>255);if(f)e=d&255;else break}else if(!f)break;ti(g,e,a)|0}while(0);r=h;return}function Pi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;h=k[735]|0;c=h>>>a;if(c&3){a=(c&1^1)+a|0;d=a<<1;c=2980+(d<<2)|0;d=2980+(d+2<<2)|0;e=k[d>>2]|0;f=e+8|0;g=k[f>>2]|0;do if((c|0)!=(g|0)){if(g>>>0<(k[739]|0)>>>0)Ca();b=g+12|0;if((k[b>>2]|0)==(e|0)){k[b>>2]=c;k[d>>2]=g;break}else Ca()}else k[735]=h&~(1<<a);while(0);M=a<<3;k[e+4>>2]=M|3;M=e+(M|4)|0;k[M>>2]=k[M>>2]|1;M=f;return M|0}g=k[737]|0;if(o>>>0>g>>>0){if(c){d=2<<a;d=c<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;e=d>>>5&8;d=d>>>e;f=d>>>2&4;d=d>>>f;c=d>>>1&2;d=d>>>c;a=d>>>1&1;a=(e|i|f|c|a)+(d>>>a)|0;d=a<<1;c=2980+(d<<2)|0;d=2980+(d+2<<2)|0;f=k[d>>2]|0;i=f+8|0;e=k[i>>2]|0;do if((c|0)!=(e|0)){if(e>>>0<(k[739]|0)>>>0)Ca();b=e+12|0;if((k[b>>2]|0)==(f|0)){k[b>>2]=c;k[d>>2]=e;j=k[737]|0;break}else Ca()}else{k[735]=h&~(1<<a);j=g}while(0);M=a<<3;g=M-o|0;k[f+4>>2]=o|3;h=f+o|0;k[f+(o|4)>>2]=g|1;k[f+M>>2]=g;if(j){e=k[740]|0;c=j>>>3;b=c<<1;d=2980+(b<<2)|0;a=k[735]|0;c=1<<c;if(a&c){a=2980+(b+2<<2)|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)Ca();else{l=a;m=b}}else{k[735]=a|c;l=2980+(b+2<<2)|0;m=d}k[l>>2]=e;k[m+12>>2]=e;k[e+8>>2]=m;k[e+12>>2]=d}k[737]=g;k[740]=h;M=i;return M|0}a=k[736]|0;if(a){c=(a&0-a)+-1|0;L=c>>>12&16;c=c>>>L;K=c>>>5&8;c=c>>>K;M=c>>>2&4;c=c>>>M;a=c>>>1&2;c=c>>>a;d=c>>>1&1;d=k[3244+((K|L|M|a|d)+(c>>>d)<<2)>>2]|0;c=(k[d+4>>2]&-8)-o|0;a=d;while(1){b=k[a+16>>2]|0;if(!b){b=k[a+20>>2]|0;if(!b){i=c;break}}a=(k[b+4>>2]&-8)-o|0;M=a>>>0<c>>>0;c=M?a:c;a=b;d=M?b:d}f=k[739]|0;if(d>>>0<f>>>0)Ca();h=d+o|0;if(d>>>0>=h>>>0)Ca();g=k[d+24>>2]|0;c=k[d+12>>2]|0;do if((c|0)==(d|0)){a=d+20|0;b=k[a>>2]|0;if(!b){a=d+16|0;b=k[a>>2]|0;if(!b){n=0;break}}while(1){c=b+20|0;e=k[c>>2]|0;if(e){b=e;a=c;continue}c=b+16|0;e=k[c>>2]|0;if(!e)break;else{b=e;a=c}}if(a>>>0<f>>>0)Ca();else{k[a>>2]=0;n=b;break}}else{e=k[d+8>>2]|0;if(e>>>0<f>>>0)Ca();b=e+12|0;if((k[b>>2]|0)!=(d|0))Ca();a=c+8|0;if((k[a>>2]|0)==(d|0)){k[b>>2]=c;k[a>>2]=e;n=c;break}else Ca()}while(0);do if(g){b=k[d+28>>2]|0;a=3244+(b<<2)|0;if((d|0)==(k[a>>2]|0)){k[a>>2]=n;if(!n){k[736]=k[736]&~(1<<b);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(d|0))k[b>>2]=n;else k[g+20>>2]=n;if(!n)break}a=k[739]|0;if(n>>>0<a>>>0)Ca();k[n+24>>2]=g;b=k[d+16>>2]|0;do if(b)if(b>>>0<a>>>0)Ca();else{k[n+16>>2]=b;k[b+24>>2]=n;break}while(0);b=k[d+20>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[n+20>>2]=b;k[b+24>>2]=n;break}}while(0);if(i>>>0<16){M=i+o|0;k[d+4>>2]=M|3;M=d+(M+4)|0;k[M>>2]=k[M>>2]|1}else{k[d+4>>2]=o|3;k[d+(o|4)>>2]=i|1;k[d+(i+o)>>2]=i;b=k[737]|0;if(b){f=k[740]|0;c=b>>>3;b=c<<1;e=2980+(b<<2)|0;a=k[735]|0;c=1<<c;if(a&c){b=2980+(b+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{p=b;q=a}}else{k[735]=a|c;p=2980+(b+2<<2)|0;q=e}k[p>>2]=f;k[q+12>>2]=f;k[f+8>>2]=q;k[f+12>>2]=e}k[737]=i;k[740]=h}M=d+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=k[736]|0;if(l){c=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{q=(a+1048320|0)>>>16&8;v=a<<q;p=(v+520192|0)>>>16&4;v=v<<p;j=(v+245760|0)>>>16&2;j=14-(p|q|j)+(v<<j>>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;a=k[3244+(j<<2)>>2]|0;a:do if(!a){e=0;a=0;v=86}else{g=c;e=0;h=m<<((j|0)==31?0:25-(j>>>1)|0);i=a;a=0;while(1){f=k[i+4>>2]&-8;c=f-m|0;if(c>>>0<g>>>0)if((f|0)==(m|0)){f=i;a=i;v=90;break a}else a=i;else c=g;v=k[i+20>>2]|0;i=k[i+16+(h>>>31<<2)>>2]|0;e=(v|0)==0|(v|0)==(i|0)?e:v;if(!i){v=86;break}else{g=c;h=h<<1}}}while(0);if((v|0)==86){if((e|0)==0&(a|0)==0){a=2<<j;a=l&(a|0-a);if(!a){q=m;break}a=(a&0-a)+-1|0;n=a>>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;e=a>>>1&1;e=k[3244+((l|n|p|q|e)+(a>>>e)<<2)>>2]|0;a=0}if(!e){h=c;i=a}else{f=e;v=90}}if((v|0)==90)while(1){v=0;q=(k[f+4>>2]&-8)-m|0;e=q>>>0<c>>>0;c=e?q:c;a=e?f:a;e=k[f+16>>2]|0;if(e){f=e;v=90;continue}f=k[f+20>>2]|0;if(!f){h=c;i=a;break}else v=90}if((i|0)!=0?h>>>0<((k[737]|0)-m|0)>>>0:0){e=k[739]|0;if(i>>>0<e>>>0)Ca();g=i+m|0;if(i>>>0>=g>>>0)Ca();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){a=i+20|0;b=k[a>>2]|0;if(!b){a=i+16|0;b=k[a>>2]|0;if(!b){o=0;break}}while(1){c=b+20|0;d=k[c>>2]|0;if(d){b=d;a=c;continue}c=b+16|0;d=k[c>>2]|0;if(!d)break;else{b=d;a=c}}if(a>>>0<e>>>0)Ca();else{k[a>>2]=0;o=b;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)Ca();b=d+12|0;if((k[b>>2]|0)!=(i|0))Ca();a=c+8|0;if((k[a>>2]|0)==(i|0)){k[b>>2]=c;k[a>>2]=d;o=c;break}else Ca()}while(0);do if(f){b=k[i+28>>2]|0;a=3244+(b<<2)|0;if((i|0)==(k[a>>2]|0)){k[a>>2]=o;if(!o){k[736]=k[736]&~(1<<b);break}}else{if(f>>>0<(k[739]|0)>>>0)Ca();b=f+16|0;if((k[b>>2]|0)==(i|0))k[b>>2]=o;else k[f+20>>2]=o;if(!o)break}a=k[739]|0;if(o>>>0<a>>>0)Ca();k[o+24>>2]=f;b=k[i+16>>2]|0;do if(b)if(b>>>0<a>>>0)Ca();else{k[o+16>>2]=b;k[b+24>>2]=o;break}while(0);b=k[i+20>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[o+20>>2]=b;k[b+24>>2]=o;break}}while(0);b:do if(h>>>0>=16){k[i+4>>2]=m|3;k[i+(m|4)>>2]=h|1;k[i+(h+m)>>2]=h;b=h>>>3;if(h>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;if(c&b){b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{s=b;t=a}}else{k[735]=c|b;s=2980+(a+2<<2)|0;t=d}k[s>>2]=g;k[t+12>>2]=g;k[i+(m+8)>>2]=t;k[i+(m+12)>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{L=(b+1048320|0)>>>16&8;M=b<<L;K=(M+520192|0)>>>16&4;M=M<<K;d=(M+245760|0)>>>16&2;d=14-(K|L|d)+(M<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=3244+(d<<2)|0;k[i+(m+28)>>2]=d;k[i+(m+20)>>2]=0;k[i+(m+16)>>2]=0;a=k[736]|0;c=1<<d;if(!(a&c)){k[736]=a|c;k[b>>2]=g;k[i+(m+24)>>2]=b;k[i+(m+12)>>2]=g;k[i+(m+8)>>2]=g;break}b=k[b>>2]|0;c:do if((k[b+4>>2]&-8|0)!=(h|0)){d=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(h|0)){y=c;break c}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=g;k[i+(m+24)>>2]=b;k[i+(m+12)>>2]=g;k[i+(m+8)>>2]=g;break b}}else y=b;while(0);b=y+8|0;a=k[b>>2]|0;M=k[739]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){k[a+12>>2]=g;k[b>>2]=g;k[i+(m+8)>>2]=a;k[i+(m+12)>>2]=y;k[i+(m+24)>>2]=0;break}else Ca()}else{M=h+m|0;k[i+4>>2]=M|3;M=i+(M+4)|0;k[M>>2]=k[M>>2]|1}while(0);M=i+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);c=k[737]|0;if(c>>>0>=q>>>0){b=c-q|0;a=k[740]|0;if(b>>>0>15){k[740]=a+q;k[737]=b;k[a+(q+4)>>2]=b|1;k[a+c>>2]=b;k[a+4>>2]=q|3}else{k[737]=0;k[740]=0;k[a+4>>2]=c|3;M=a+(c+4)|0;k[M>>2]=k[M>>2]|1}M=a+8|0;return M|0}a=k[738]|0;if(a>>>0>q>>>0){L=a-q|0;k[738]=L;M=k[741]|0;k[741]=M+q;k[M+(q+4)>>2]=L|1;k[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(k[853]|0)){a=Ia(30)|0;if(!(a+-1&a)){k[855]=a;k[854]=a;k[856]=-1;k[857]=-1;k[858]=0;k[846]=0;y=(Ua(0)|0)&-16^1431655768;k[853]=y;break}else Ca()}while(0);i=q+48|0;h=k[855]|0;j=q+47|0;g=h+j|0;h=0-h|0;l=g&h;if(l>>>0<=q>>>0){M=0;return M|0}a=k[845]|0;if((a|0)!=0?(t=k[843]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(k[846]&4)){a=k[741]|0;e:do if(a){e=3388;while(1){c=k[e>>2]|0;if(c>>>0<=a>>>0?(r=e+4|0,(c+(k[r>>2]|0)|0)>>>0>a>>>0):0){f=e;a=r;break}e=k[e+8>>2]|0;if(!e){v=174;break e}}c=g-(k[738]|0)&h;if(c>>>0<2147483647){e=Ga(c|0)|0;y=(e|0)==((k[f>>2]|0)+(k[a>>2]|0)|0);a=y?c:0;if(y){if((e|0)!=(-1|0)){w=e;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){f=Ga(0)|0;if((f|0)!=(-1|0)){a=f;c=k[854]|0;e=c+-1|0;if(!(e&a))c=l;else c=l-a+(e+a&0-c)|0;a=k[843]|0;e=a+c|0;if(c>>>0>q>>>0&c>>>0<2147483647){y=k[845]|0;if((y|0)!=0?e>>>0<=a>>>0|e>>>0>y>>>0:0){a=0;break}e=Ga(c|0)|0;y=(e|0)==(f|0);a=y?c:0;if(y){w=f;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){f=0-c|0;do if(i>>>0>c>>>0&(c>>>0<2147483647&(e|0)!=(-1|0))?(u=k[855]|0,u=j-c+u&0-u,u>>>0<2147483647):0)if((Ga(u|0)|0)==(-1|0)){Ga(f|0)|0;break f}else{c=u+c|0;break}while(0);if((e|0)!=(-1|0)){w=e;p=c;v=194;break d}}while(0);k[846]=k[846]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=Ga(l|0)|0,x=Ga(0)|0,w>>>0<x>>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(k[843]|0)+p|0;k[843]=a;if(a>>>0>(k[844]|0)>>>0)k[844]=a;g=k[741]|0;g:do if(g){f=3388;do{a=k[f>>2]|0;c=f+4|0;e=k[c>>2]|0;if((w|0)==(a+e|0)){B=a;C=c;D=e;E=f;v=204;break}f=k[f+8>>2]|0}while((f|0)!=0);if(((v|0)==204?(k[E+12>>2]&8|0)==0:0)?g>>>0<w>>>0&g>>>0>=B>>>0:0){k[C>>2]=D+p;M=(k[738]|0)+p|0;L=g+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;k[741]=g+L;k[738]=K;k[g+(L+4)>>2]=K|1;k[g+(M+4)>>2]=40;k[742]=k[857];break}a=k[739]|0;if(w>>>0<a>>>0){k[739]=w;a=w}c=w+p|0;f=3388;while(1){if((k[f>>2]|0)==(c|0)){e=f;c=f;v=212;break}f=k[f+8>>2]|0;if(!f){c=3388;break}}if((v|0)==212)if(!(k[c+12>>2]&8)){k[e>>2]=w;n=c+4|0;k[n>>2]=(k[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;j=w+(p+8)|0;j=(j&7|0)==0?0:0-j&7;b=w+(j+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;k[w+(n+4)>>2]=q|3;h:do if((b|0)!=(g|0)){if((b|0)==(k[740]|0)){M=(k[737]|0)+l|0;k[737]=M;k[740]=o;k[w+(m+4)>>2]=M|1;k[w+(M+m)>>2]=M;break}h=p+4|0;c=k[w+(h+j)>>2]|0;if((c&3|0)==1){i=c&-8;f=c>>>3;i:do if(c>>>0>=256){g=k[w+((j|24)+p)>>2]|0;d=k[w+(p+12+j)>>2]|0;do if((d|0)==(b|0)){e=j|16;d=w+(h+e)|0;c=k[d>>2]|0;if(!c){d=w+(e+p)|0;c=k[d>>2]|0;if(!c){J=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<a>>>0)Ca();else{k[d>>2]=0;J=c;break}}else{e=k[w+((j|8)+p)>>2]|0;if(e>>>0<a>>>0)Ca();a=e+12|0;if((k[a>>2]|0)!=(b|0))Ca();c=d+8|0;if((k[c>>2]|0)==(b|0)){k[a>>2]=d;k[c>>2]=e;J=d;break}else Ca()}while(0);if(!g)break;a=k[w+(p+28+j)>>2]|0;c=3244+(a<<2)|0;do if((b|0)!=(k[c>>2]|0)){if(g>>>0<(k[739]|0)>>>0)Ca();a=g+16|0;if((k[a>>2]|0)==(b|0))k[a>>2]=J;else k[g+20>>2]=J;if(!J)break i}else{k[c>>2]=J;if(J)break;k[736]=k[736]&~(1<<a);break i}while(0);c=k[739]|0;if(J>>>0<c>>>0)Ca();k[J+24>>2]=g;b=j|16;a=k[w+(b+p)>>2]|0;do if(a)if(a>>>0<c>>>0)Ca();else{k[J+16>>2]=a;k[a+24>>2]=J;break}while(0);b=k[w+(h+b)>>2]|0;if(!b)break;if(b>>>0<(k[739]|0)>>>0)Ca();else{k[J+20>>2]=b;k[b+24>>2]=J;break}}else{d=k[w+((j|8)+p)>>2]|0;e=k[w+(p+12+j)>>2]|0;c=2980+(f<<1<<2)|0;do if((d|0)!=(c|0)){if(d>>>0<a>>>0)Ca();if((k[d+12>>2]|0)==(b|0))break;Ca()}while(0);if((e|0)==(d|0)){k[735]=k[735]&~(1<<f);break}do if((e|0)==(c|0))F=e+8|0;else{if(e>>>0<a>>>0)Ca();a=e+8|0;if((k[a>>2]|0)==(b|0)){F=a;break}Ca()}while(0);k[d+12>>2]=e;k[F>>2]=d}while(0);b=w+((i|j)+p)|0;e=i+l|0}else e=l;b=b+4|0;k[b>>2]=k[b>>2]&-2;k[w+(m+4)>>2]=e|1;k[w+(e+m)>>2]=e;b=e>>>3;if(e>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;do if(!(c&b)){k[735]=c|b;K=2980+(a+2<<2)|0;L=d}else{b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0>=(k[739]|0)>>>0){K=b;L=a;break}Ca()}while(0);k[K>>2]=o;k[L+12>>2]=o;k[w+(m+8)>>2]=L;k[w+(m+12)>>2]=d;break}b=e>>>8;do if(!b)d=0;else{if(e>>>0>16777215){d=31;break}K=(b+1048320|0)>>>16&8;L=b<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=e>>>(d+7|0)&1|d<<1}while(0);b=3244+(d<<2)|0;k[w+(m+28)>>2]=d;k[w+(m+20)>>2]=0;k[w+(m+16)>>2]=0;a=k[736]|0;c=1<<d;if(!(a&c)){k[736]=a|c;k[b>>2]=o;k[w+(m+24)>>2]=b;k[w+(m+12)>>2]=o;k[w+(m+8)>>2]=o;break}b=k[b>>2]|0;j:do if((k[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(e|0)){M=c;break j}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=o;k[w+(m+24)>>2]=b;k[w+(m+12)>>2]=o;k[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=k[b>>2]|0;L=k[739]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){k[a+12>>2]=o;k[b>>2]=o;k[w+(m+8)>>2]=a;k[w+(m+12)>>2]=M;k[w+(m+24)>>2]=0;break}else Ca()}else{M=(k[738]|0)+l|0;k[738]=M;k[741]=o;k[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else c=3388;while(1){a=k[c>>2]|0;if(a>>>0<=g>>>0?(b=k[c+4>>2]|0,d=a+b|0,d>>>0>g>>>0):0)break;c=k[c+8>>2]|0}e=a+(b+-39)|0;a=a+(b+-47+((e&7|0)==0?0:0-e&7))|0;e=g+16|0;a=a>>>0<e>>>0?g:a;b=a+8|0;c=w+8|0;c=(c&7|0)==0?0:0-c&7;M=p+-40-c|0;k[741]=w+c;k[738]=M;k[w+(c+4)>>2]=M|1;k[w+(p+-36)>>2]=40;k[742]=k[857];c=a+4|0;k[c>>2]=27;k[b>>2]=k[847];k[b+4>>2]=k[848];k[b+8>>2]=k[849];k[b+12>>2]=k[850];k[847]=w;k[848]=p;k[850]=0;k[849]=b;b=a+28|0;k[b>>2]=7;if((a+32|0)>>>0<d>>>0)do{M=b;b=b+4|0;k[b>>2]=7}while((M+8|0)>>>0<d>>>0);if((a|0)!=(g|0)){f=a-g|0;k[c>>2]=k[c>>2]&-2;k[g+4>>2]=f|1;k[a>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;if(c&b){b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{G=b;H=a}}else{k[735]=c|b;G=2980+(a+2<<2)|0;H=d}k[G>>2]=g;k[H+12>>2]=g;k[g+8>>2]=H;k[g+12>>2]=d;break}b=f>>>8;if(b)if(f>>>0>16777215)d=31;else{L=(b+1048320|0)>>>16&8;M=b<<L;K=(M+520192|0)>>>16&4;M=M<<K;d=(M+245760|0)>>>16&2;d=14-(K|L|d)+(M<<d>>>15)|0;d=f>>>(d+7|0)&1|d<<1}else d=0;c=3244+(d<<2)|0;k[g+28>>2]=d;k[g+20>>2]=0;k[e>>2]=0;b=k[736]|0;a=1<<d;if(!(b&a)){k[736]=b|a;k[c>>2]=g;k[g+24>>2]=c;k[g+12>>2]=g;k[g+8>>2]=g;break}b=k[c>>2]|0;k:do if((k[b+4>>2]&-8|0)!=(f|0)){d=f<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(f|0)){I=c;break k}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=g;k[g+24>>2]=b;k[g+12>>2]=g;k[g+8>>2]=g;break g}}else I=b;while(0);b=I+8|0;a=k[b>>2]|0;M=k[739]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){k[a+12>>2]=g;k[b>>2]=g;k[g+8>>2]=a;k[g+12>>2]=I;k[g+24>>2]=0;break}else Ca()}}else{M=k[739]|0;if((M|0)==0|w>>>0<M>>>0)k[739]=w;k[847]=w;k[848]=p;k[850]=0;k[744]=k[853];k[743]=-1;b=0;do{M=b<<1;L=2980+(M<<2)|0;k[2980+(M+3<<2)>>2]=L;k[2980+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;k[741]=w+M;k[738]=L;k[w+(M+4)>>2]=L|1;k[w+(p+-36)>>2]=40;k[742]=k[857]}while(0);b=k[738]|0;if(b>>>0>q>>>0){L=b-q|0;k[738]=L;M=k[741]|0;k[741]=M+q;k[M+(q+4)>>2]=L|1;k[M+4>>2]=q|3;M=M+8|0;return M|0}}M=Lh()|0;k[M>>2]=12;M=0;return M|0}function Qi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;h=k[739]|0;if(b>>>0<h>>>0)Ca();c=k[a+-4>>2]|0;d=c&3;if((d|0)==1)Ca();o=c&-8;q=a+(o+-8)|0;do if(!(c&1)){b=k[b>>2]|0;if(!d)return;i=-8-b|0;l=a+i|0;m=b+o|0;if(l>>>0<h>>>0)Ca();if((l|0)==(k[740]|0)){b=a+(o+-4)|0;c=k[b>>2]|0;if((c&3|0)!=3){u=l;f=m;break}k[737]=m;k[b>>2]=c&-2;k[a+(i+4)>>2]=m|1;k[q>>2]=m;return}e=b>>>3;if(b>>>0<256){d=k[a+(i+8)>>2]|0;c=k[a+(i+12)>>2]|0;b=2980+(e<<1<<2)|0;if((d|0)!=(b|0)){if(d>>>0<h>>>0)Ca();if((k[d+12>>2]|0)!=(l|0))Ca()}if((c|0)==(d|0)){k[735]=k[735]&~(1<<e);u=l;f=m;break}if((c|0)!=(b|0)){if(c>>>0<h>>>0)Ca();b=c+8|0;if((k[b>>2]|0)==(l|0))g=b;else Ca()}else g=c+8|0;k[d+12>>2]=c;k[g>>2]=d;u=l;f=m;break}g=k[a+(i+24)>>2]|0;d=k[a+(i+12)>>2]|0;do if((d|0)==(l|0)){c=a+(i+20)|0;b=k[c>>2]|0;if(!b){c=a+(i+16)|0;b=k[c>>2]|0;if(!b){j=0;break}}while(1){d=b+20|0;e=k[d>>2]|0;if(e){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<h>>>0)Ca();else{k[c>>2]=0;j=b;break}}else{e=k[a+(i+8)>>2]|0;if(e>>>0<h>>>0)Ca();b=e+12|0;if((k[b>>2]|0)!=(l|0))Ca();c=d+8|0;if((k[c>>2]|0)==(l|0)){k[b>>2]=d;k[c>>2]=e;j=d;break}else Ca()}while(0);if(g){b=k[a+(i+28)>>2]|0;c=3244+(b<<2)|0;if((l|0)==(k[c>>2]|0)){k[c>>2]=j;if(!j){k[736]=k[736]&~(1<<b);u=l;f=m;break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(l|0))k[b>>2]=j;else k[g+20>>2]=j;if(!j){u=l;f=m;break}}c=k[739]|0;if(j>>>0<c>>>0)Ca();k[j+24>>2]=g;b=k[a+(i+16)>>2]|0;do if(b)if(b>>>0<c>>>0)Ca();else{k[j+16>>2]=b;k[b+24>>2]=j;break}while(0);b=k[a+(i+20)>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[j+20>>2]=b;k[b+24>>2]=j;u=l;f=m;break}else{u=l;f=m}}else{u=l;f=m}}else{u=b;f=o}while(0);if(u>>>0>=q>>>0)Ca();b=a+(o+-4)|0;c=k[b>>2]|0;if(!(c&1))Ca();if(!(c&2)){if((q|0)==(k[741]|0)){t=(k[738]|0)+f|0;k[738]=t;k[741]=u;k[u+4>>2]=t|1;if((u|0)!=(k[740]|0))return;k[740]=0;k[737]=0;return}if((q|0)==(k[740]|0)){t=(k[737]|0)+f|0;k[737]=t;k[740]=u;k[u+4>>2]=t|1;k[u+t>>2]=t;return}f=(c&-8)+f|0;e=c>>>3;do if(c>>>0>=256){g=k[a+(o+16)>>2]|0;b=k[a+(o|4)>>2]|0;do if((b|0)==(q|0)){c=a+(o+12)|0;b=k[c>>2]|0;if(!b){c=a+(o+8)|0;b=k[c>>2]|0;if(!b){p=0;break}}while(1){d=b+20|0;e=k[d>>2]|0;if(e){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<(k[739]|0)>>>0)Ca();else{k[c>>2]=0;p=b;break}}else{c=k[a+o>>2]|0;if(c>>>0<(k[739]|0)>>>0)Ca();d=c+12|0;if((k[d>>2]|0)!=(q|0))Ca();e=b+8|0;if((k[e>>2]|0)==(q|0)){k[d>>2]=b;k[e>>2]=c;p=b;break}else Ca()}while(0);if(g){b=k[a+(o+20)>>2]|0;c=3244+(b<<2)|0;if((q|0)==(k[c>>2]|0)){k[c>>2]=p;if(!p){k[736]=k[736]&~(1<<b);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(q|0))k[b>>2]=p;else k[g+20>>2]=p;if(!p)break}c=k[739]|0;if(p>>>0<c>>>0)Ca();k[p+24>>2]=g;b=k[a+(o+8)>>2]|0;do if(b)if(b>>>0<c>>>0)Ca();else{k[p+16>>2]=b;k[b+24>>2]=p;break}while(0);b=k[a+(o+12)>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[p+20>>2]=b;k[b+24>>2]=p;break}}}else{d=k[a+o>>2]|0;c=k[a+(o|4)>>2]|0;b=2980+(e<<1<<2)|0;if((d|0)!=(b|0)){if(d>>>0<(k[739]|0)>>>0)Ca();if((k[d+12>>2]|0)!=(q|0))Ca()}if((c|0)==(d|0)){k[735]=k[735]&~(1<<e);break}if((c|0)!=(b|0)){if(c>>>0<(k[739]|0)>>>0)Ca();b=c+8|0;if((k[b>>2]|0)==(q|0))n=b;else Ca()}else n=c+8|0;k[d+12>>2]=c;k[n>>2]=d}while(0);k[u+4>>2]=f|1;k[u+f>>2]=f;if((u|0)==(k[740]|0)){k[737]=f;return}}else{k[b>>2]=c&-2;k[u+4>>2]=f|1;k[u+f>>2]=f}b=f>>>3;if(f>>>0<256){c=b<<1;e=2980+(c<<2)|0;d=k[735]|0;b=1<<b;if(d&b){b=2980+(c+2<<2)|0;c=k[b>>2]|0;if(c>>>0<(k[739]|0)>>>0)Ca();else{r=b;s=c}}else{k[735]=d|b;r=2980+(c+2<<2)|0;s=e}k[r>>2]=u;k[s+12>>2]=u;k[u+8>>2]=s;k[u+12>>2]=e;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{r=(b+1048320|0)>>>16&8;s=b<<r;q=(s+520192|0)>>>16&4;s=s<<q;e=(s+245760|0)>>>16&2;e=14-(q|r|e)+(s<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=3244+(e<<2)|0;k[u+28>>2]=e;k[u+20>>2]=0;k[u+16>>2]=0;c=k[736]|0;d=1<<e;a:do if(c&d){b=k[b>>2]|0;b:do if((k[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){c=b+16+(e>>>31<<2)|0;d=k[c>>2]|0;if(!d)break;if((k[d+4>>2]&-8|0)==(f|0)){t=d;break b}else{e=e<<1;b=d}}if(c>>>0<(k[739]|0)>>>0)Ca();else{k[c>>2]=u;k[u+24>>2]=b;k[u+12>>2]=u;k[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;c=k[b>>2]|0;s=k[739]|0;if(c>>>0>=s>>>0&t>>>0>=s>>>0){k[c+12>>2]=u;k[b>>2]=u;k[u+8>>2]=c;k[u+12>>2]=t;k[u+24>>2]=0;break}else Ca()}else{k[736]=c|d;k[b>>2]=u;k[u+24>>2]=b;k[u+12>>2]=u;k[u+8>>2]=u}while(0);u=(k[743]|0)+-1|0;k[743]=u;if(!u)b=3396;else return;while(1){b=k[b>>2]|0;if(!b)break;else b=b+8|0}k[743]=-1;return}function Ri(a,b){a=a|0;b=b|0;var c=0;if(a){c=ha(b,a)|0;if((b|a)>>>0>65535)c=((c>>>0)/(a>>>0)|0|0)==(b|0)?c:-1}else c=0;b=Pi(c)|0;if(!b)return b|0;if(!(k[b+-4>>2]&3))return b|0;_i(b|0,0,c|0)|0;return b|0}function Si(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){a=Pi(b)|0;return a|0}if(b>>>0>4294967231){a=Lh()|0;k[a>>2]=12;a=0;return a|0}c=Ui(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c){a=c+8|0;return a|0}c=Pi(b)|0;if(!c){a=0;return a|0}d=k[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;cj(c|0,a|0,(d>>>0<b>>>0?d:b)|0)|0;Qi(a);a=c;return a|0}function Ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;do if((b|0)!=8){d=b>>>2;if((b&3|0)!=0|(d|0)==0){a=22;return a|0}if(d+1073741823&d){a=22;return a|0}if((-64-b|0)>>>0<c>>>0){a=12;return a|0}else{d=Vi(b>>>0<16?16:b,c)|0;break}}else d=Pi(c)|0;while(0);if(!d){a=12;return a|0}k[a>>2]=d;a=0;return a|0}function Ui(a,b){a=a|0;b=b|0;var 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;o=a+4|0;p=k[o>>2]|0;i=p&-8;l=a+i|0;h=k[739]|0;c=p&3;if(!((c|0)!=1&a>>>0>=h>>>0&a>>>0<l>>>0))Ca();d=a+(i|4)|0;e=k[d>>2]|0;if(!(e&1))Ca();if(!c){if(b>>>0<256){a=0;return a|0}if(i>>>0>=(b+4|0)>>>0?(i-b|0)>>>0<=k[855]<<1>>>0:0)return a|0;a=0;return a|0}if(i>>>0>=b>>>0){c=i-b|0;if(c>>>0<=15)return a|0;k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=c|3;k[d>>2]=k[d>>2]|1;Wi(a+b|0,c);return a|0}if((l|0)==(k[741]|0)){c=(k[738]|0)+i|0;if(c>>>0<=b>>>0){a=0;return a|0}n=c-b|0;k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=n|1;k[741]=a+b;k[738]=n;return a|0}if((l|0)==(k[740]|0)){d=(k[737]|0)+i|0;if(d>>>0<b>>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=c|1;k[a+d>>2]=c;d=a+(d+4)|0;k[d>>2]=k[d>>2]&-2;d=a+b|0}else{k[o>>2]=p&1|d|2;d=a+(d+4)|0;k[d>>2]=k[d>>2]|1;d=0;c=0}k[737]=c;k[740]=d;return a|0}if(e&2){a=0;return a|0}m=(e&-8)+i|0;if(m>>>0<b>>>0){a=0;return a|0}n=m-b|0;f=e>>>3;do if(e>>>0>=256){g=k[a+(i+24)>>2]|0;f=k[a+(i+12)>>2]|0;do if((f|0)==(l|0)){d=a+(i+20)|0;c=k[d>>2]|0;if(!c){d=a+(i+16)|0;c=k[d>>2]|0;if(!c){j=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<h>>>0)Ca();else{k[d>>2]=0;j=c;break}}else{e=k[a+(i+8)>>2]|0;if(e>>>0<h>>>0)Ca();c=e+12|0;if((k[c>>2]|0)!=(l|0))Ca();d=f+8|0;if((k[d>>2]|0)==(l|0)){k[c>>2]=f;k[d>>2]=e;j=f;break}else Ca()}while(0);if(g){c=k[a+(i+28)>>2]|0;d=3244+(c<<2)|0;if((l|0)==(k[d>>2]|0)){k[d>>2]=j;if(!j){k[736]=k[736]&~(1<<c);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();c=g+16|0;if((k[c>>2]|0)==(l|0))k[c>>2]=j;else k[g+20>>2]=j;if(!j)break}d=k[739]|0;if(j>>>0<d>>>0)Ca();k[j+24>>2]=g;c=k[a+(i+16)>>2]|0;do if(c)if(c>>>0<d>>>0)Ca();else{k[j+16>>2]=c;k[c+24>>2]=j;break}while(0);c=k[a+(i+20)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[j+20>>2]=c;k[c+24>>2]=j;break}}}else{e=k[a+(i+8)>>2]|0;d=k[a+(i+12)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<h>>>0)Ca();if((k[e+12>>2]|0)!=(l|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);break}if((d|0)!=(c|0)){if(d>>>0<h>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(l|0))g=c;else Ca()}else g=d+8|0;k[e+12>>2]=d;k[g>>2]=e}while(0);if(n>>>0<16){k[o>>2]=m|p&1|2;b=a+(m|4)|0;k[b>>2]=k[b>>2]|1;return a|0}else{k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=n|3;p=a+(m|4)|0;k[p>>2]=k[p>>2]|1;Wi(a+b|0,n);return a|0}return 0}function Vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a=a>>>0<16?16:a;if(a+-1&a){c=16;while(1)if(c>>>0<a>>>0)c=c<<1;else{a=c;break}}if((-64-a|0)>>>0<=b>>>0){h=Lh()|0;k[h>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=Pi(g+12+a|0)|0;if(!d){h=0;return h|0}b=d+-8|0;c=a+-1|0;do if(d&c){e=d+c&0-a;c=e+-8|0;f=b;e=(c-f|0)>>>0>15?c:e+(a+-8)|0;f=e-f|0;a=d+-4|0;d=k[a>>2]|0;c=(d&-8)-f|0;if(!(d&3)){k[e>>2]=(k[b>>2]|0)+f;k[e+4>>2]=c;b=e;break}else{d=e+4|0;k[d>>2]=c|k[d>>2]&1|2;c=e+(c+4)|0;k[c>>2]=k[c>>2]|1;k[a>>2]=f|k[a>>2]&1|2;k[d>>2]=k[d>>2]|1;Wi(b,f);b=e;break}}while(0);a=b+4|0;c=k[a>>2]|0;if((c&3|0)!=0?(h=c&-8,h>>>0>(g+16|0)>>>0):0){f=h-g|0;k[a>>2]=g|c&1|2;k[b+(g|4)>>2]=f|3;h=b+(h|4)|0;k[h>>2]=k[h>>2]|1;Wi(b+g|0,f)}h=b+8|0;return h|0}function Wi(a,b){a=a|0;b=b|0;var 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;q=a+b|0;c=k[a+4>>2]|0;do if(!(c&1)){j=k[a>>2]|0;if(!(c&3))return;n=a+(0-j)|0;m=j+b|0;i=k[739]|0;if(n>>>0<i>>>0)Ca();if((n|0)==(k[740]|0)){d=a+(b+4)|0;c=k[d>>2]|0;if((c&3|0)!=3){t=n;g=m;break}k[737]=m;k[d>>2]=c&-2;k[a+(4-j)>>2]=m|1;k[q>>2]=m;return}f=j>>>3;if(j>>>0<256){e=k[a+(8-j)>>2]|0;d=k[a+(12-j)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<i>>>0)Ca();if((k[e+12>>2]|0)!=(n|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);t=n;g=m;break}if((d|0)!=(c|0)){if(d>>>0<i>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(n|0))h=c;else Ca()}else h=d+8|0;k[e+12>>2]=d;k[h>>2]=e;t=n;g=m;break}h=k[a+(24-j)>>2]|0;e=k[a+(12-j)>>2]|0;do if((e|0)==(n|0)){e=16-j|0;d=a+(e+4)|0;c=k[d>>2]|0;if(!c){d=a+e|0;c=k[d>>2]|0;if(!c){l=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<i>>>0)Ca();else{k[d>>2]=0;l=c;break}}else{f=k[a+(8-j)>>2]|0;if(f>>>0<i>>>0)Ca();c=f+12|0;if((k[c>>2]|0)!=(n|0))Ca();d=e+8|0;if((k[d>>2]|0)==(n|0)){k[c>>2]=e;k[d>>2]=f;l=e;break}else Ca()}while(0);if(h){c=k[a+(28-j)>>2]|0;d=3244+(c<<2)|0;if((n|0)==(k[d>>2]|0)){k[d>>2]=l;if(!l){k[736]=k[736]&~(1<<c);t=n;g=m;break}}else{if(h>>>0<(k[739]|0)>>>0)Ca();c=h+16|0;if((k[c>>2]|0)==(n|0))k[c>>2]=l;else k[h+20>>2]=l;if(!l){t=n;g=m;break}}e=k[739]|0;if(l>>>0<e>>>0)Ca();k[l+24>>2]=h;c=16-j|0;d=k[a+c>>2]|0;do if(d)if(d>>>0<e>>>0)Ca();else{k[l+16>>2]=d;k[d+24>>2]=l;break}while(0);c=k[a+(c+4)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[l+20>>2]=c;k[c+24>>2]=l;t=n;g=m;break}else{t=n;g=m}}else{t=n;g=m}}else{t=a;g=b}while(0);i=k[739]|0;if(q>>>0<i>>>0)Ca();c=a+(b+4)|0;d=k[c>>2]|0;if(!(d&2)){if((q|0)==(k[741]|0)){s=(k[738]|0)+g|0;k[738]=s;k[741]=t;k[t+4>>2]=s|1;if((t|0)!=(k[740]|0))return;k[740]=0;k[737]=0;return}if((q|0)==(k[740]|0)){s=(k[737]|0)+g|0;k[737]=s;k[740]=t;k[t+4>>2]=s|1;k[t+s>>2]=s;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=k[a+(b+24)>>2]|0;e=k[a+(b+12)>>2]|0;do if((e|0)==(q|0)){d=a+(b+20)|0;c=k[d>>2]|0;if(!c){d=a+(b+16)|0;c=k[d>>2]|0;if(!c){p=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<i>>>0)Ca();else{k[d>>2]=0;p=c;break}}else{f=k[a+(b+8)>>2]|0;if(f>>>0<i>>>0)Ca();c=f+12|0;if((k[c>>2]|0)!=(q|0))Ca();d=e+8|0;if((k[d>>2]|0)==(q|0)){k[c>>2]=e;k[d>>2]=f;p=e;break}else Ca()}while(0);if(h){c=k[a+(b+28)>>2]|0;d=3244+(c<<2)|0;if((q|0)==(k[d>>2]|0)){k[d>>2]=p;if(!p){k[736]=k[736]&~(1<<c);break}}else{if(h>>>0<(k[739]|0)>>>0)Ca();c=h+16|0;if((k[c>>2]|0)==(q|0))k[c>>2]=p;else k[h+20>>2]=p;if(!p)break}d=k[739]|0;if(p>>>0<d>>>0)Ca();k[p+24>>2]=h;c=k[a+(b+16)>>2]|0;do if(c)if(c>>>0<d>>>0)Ca();else{k[p+16>>2]=c;k[c+24>>2]=p;break}while(0);c=k[a+(b+20)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[p+20>>2]=c;k[c+24>>2]=p;break}}}else{e=k[a+(b+8)>>2]|0;d=k[a+(b+12)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<i>>>0)Ca();if((k[e+12>>2]|0)!=(q|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);break}if((d|0)!=(c|0)){if(d>>>0<i>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(q|0))o=c;else Ca()}else o=d+8|0;k[e+12>>2]=d;k[o>>2]=e}while(0);k[t+4>>2]=g|1;k[t+g>>2]=g;if((t|0)==(k[740]|0)){k[737]=g;return}}else{k[c>>2]=d&-2;k[t+4>>2]=g|1;k[t+g>>2]=g}c=g>>>3;if(g>>>0<256){d=c<<1;f=2980+(d<<2)|0;e=k[735]|0;c=1<<c;if(e&c){c=2980+(d+2<<2)|0;d=k[c>>2]|0;if(d>>>0<(k[739]|0)>>>0)Ca();else{r=c;s=d}}else{k[735]=e|c;r=2980+(d+2<<2)|0;s=f}k[r>>2]=t;k[s+12>>2]=t;k[t+8>>2]=s;k[t+12>>2]=f;return}c=g>>>8;if(c)if(g>>>0>16777215)f=31;else{r=(c+1048320|0)>>>16&8;s=c<<r;q=(s+520192|0)>>>16&4;s=s<<q;f=(s+245760|0)>>>16&2;f=14-(q|r|f)+(s<<f>>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;c=3244+(f<<2)|0;k[t+28>>2]=f;k[t+20>>2]=0;k[t+16>>2]=0;d=k[736]|0;e=1<<f;if(!(d&e)){k[736]=d|e;k[c>>2]=t;k[t+24>>2]=c;k[t+12>>2]=t;k[t+8>>2]=t;return}c=k[c>>2]|0;a:do if((k[c+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=c+16+(f>>>31<<2)|0;e=k[d>>2]|0;if(!e)break;if((k[e+4>>2]&-8|0)==(g|0)){c=e;break a}else{f=f<<1;c=e}}if(d>>>0<(k[739]|0)>>>0)Ca();k[d>>2]=t;k[t+24>>2]=c;k[t+12>>2]=t;k[t+8>>2]=t;return}while(0);d=c+8|0;e=k[d>>2]|0;s=k[739]|0;if(!(e>>>0>=s>>>0&c>>>0>=s>>>0))Ca();k[e+12>>2]=t;k[d>>2]=t;k[t+8>>2]=e;k[t+12>>2]=c;k[t+24>>2]=0;return}function Xi(){}function Yi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (L=d,a-c>>>0|0)|0}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function $i(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function bj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Ha(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function dj(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=ha(e,f)|0;d=a>>>16;a=(c>>>16)+(ha(e,d)|0)|0;e=b>>>16;b=ha(e,f)|0;return (L=(a>>>16)+(ha(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=Yi(j^a,i^b,j,i)|0;g=L;a=f^j;b=e^i;return Yi((kj(h,g,Yi(f^c,e^d,f,e)|0,L,0)|0)^a,L^b,a,b)|0}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=r;r=r+16|0;h=e|0;g=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;j=d>>31|((d|0)<0?-1:0)<<1;i=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=Yi(g^a,f^b,g,f)|0;b=L;kj(a,b,Yi(j^c,i^d,j,i)|0,L,h)|0;d=Yi(k[h>>2]^g,k[h+4>>2]^f,g,f)|0;c=L;r=e;return (L=c,d)|0}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=ej(e,f)|0;a=L;return (L=(ha(b,f)|0)+(ha(d,e)|0)+a|a&0,c|0|0)|0}function ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kj(a,b,c,d,0)|0}function jj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;kj(a,b,c,d,e)|0;r=f;return (L=k[e+4>>2]|0,k[e>>2]|0)|0}function kj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (L=n,e)|0}else{if(!f){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (L=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (L=n,e)|0}f=g-1|0;if(f&g){h=(ja(g|0)|0)+33-(ja(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (L=o,p)|0}else{p=dj(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (L=o,p)|0}}else{if(f){if(e){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (L=o,p)|0}if(!l){if(e){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (L=o,p)|0}f=h-1|0;if(!(f&h)){if(e){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((dj(h|0)|0)>>>0);return (L=o,p)|0}f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (L=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (L=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=aj(m|0,l|0,-1,-1)|0;c=L;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;Yi(j,c,d,n)|0;p=L;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=Yi(d,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=L;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (L=o,p)|0}function lj(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return _a[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function mj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $a[a&63](b|0,c|0,d|0)|0}function nj(a,b){a=a|0;b=b|0;return +ab[a&3](b|0)}function oj(a,b){a=a|0;b=b|0;bb[a&7](b|0)}function pj(a,b,c){a=a|0;b=b|0;c=c|0;cb[a&7](b|0,c|0)}function qj(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return db[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function rj(a,b){a=a|0;b=b|0;return eb[a&15](b|0)|0}function sj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fb[a&15](b|0,c|0,d|0)}function tj(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;return gb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function uj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return hb[a&63](b|0,c|0,d|0,e|0)|0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;return ib[a&7](b|0,c|0)|0}function wj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return jb[a&3](b|0,c|0,d|0,e|0,f|0)|0}function xj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;kb[a&3](b|0,c|0,d|0,e|0)}function yj(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;ka(0);return 0}function zj(a,b,c){a=a|0;b=b|0;c=c|0;ka(1);return 0}function Aj(a){a=a|0;ka(2);return 0.0}function Bj(a){a=a|0;ka(3)}function Cj(a,b){a=a|0;b=b|0;ka(4)}function Dj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(5);return 0}function Ej(a){a=a|0;ka(6);return 0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;ka(7)}function Gj(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;ka(8);return 0}function Hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(9);return 0}function Ij(a,b){a=a|0;b=b|0;ka(10);return 0}function Jj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(11);return 0}function Kj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(12)}
|
|
84
|
-
|
|
85
|
-
// EMSCRIPTEN_END_FUNCS
|
|
86
|
-
var _a=[yj,od,ef,yj];var $a=[zj,Li,di,bi,Kb,Lb,Mb,Nb,Rc,Sc,Uc,jd,xd,Ye,lf,yd,zd,Xe,Ze,Vc,Wc,Xc,Yc,Dd,Ed,Fd,Gd,Id,Jd,Ld,Md,Nd,Od,Pd,Qd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Yd,Zd,_d,$d,ae,be,ce,de,ee,fe,pf,qf,rf,sf,tf,uf,vf,wf,ai,ci,zj,zj];var ab=[Aj,ge,he,Aj];var bb=[Bj,gd,df,qg,rg,Hi,Ii,Bj];var cb=[Cj,wb,xb,yb,ec,ed,Ve,Cj];var db=[Dj,nd,cf,Bd,bf,Dj,Dj,Dj];var eb=[Ej,$h,td,ud,kf,jf,gi,Ug,Rg,Ej,Ej,Ej,Ej,Ej,Ej,Ej];var fb=[Fj,Qe,Re,Se,Te,Ke,Le,Me,Ne,Ge,He,Ie,Je,qd,hf,Fj];var gb=[Gj,md,af,Gj];var hb=[Hj,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Hf,If,Jf,Bf,Cf,Df,Ef,Ff,Gf,Gb,Hb,Ib,Jb,vd,kd,Ue,$e,Ad,hd,_e,We,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj];var ib=[Ij,Tc,xf,yf,zf,Af,Ij,Ij];var jb=[Jj,wd,ff,Jj];var kb=[Kj,Yg,$g,Kj];return{_opj_stream_destroy:Pb,_opj_stream_set_read_function:Qb,_opj_read_tile_header:wc,_opj_set_warning_handler:mc,_opj_destroy_cstr_info:Mc,_opj_image_create:gc,_opj_set_error_handler:nc,_opj_stream_set_user_data:Ub,_opj_end_decompress:Gc,_bitshift64Lshr:bj,_opj_stream_set_seek_function:Rb,_opj_decode:uc,_opj_set_decoded_resolution_factor:zc,_i64Add:aj,_opj_stream_create_default_file_stream:Pc,_opj_encode:Ec,_bitshift64Ashr:Zi,_opj_get_decoded_tile:yc,_memset:_i,_opj_version:pc,_memcpy:cj,_opj_destroy_cstr_index:Oc,_opj_stream_set_user_data_length:Vb,_opj_stream_set_skip_function:Tb,_opj_image_destroy:hc,_opj_stream_create_file_stream:Qc,_opj_setup_encoder:Cc,_opj_stream_default_create:Ob,_bitshift64Shl:$i,_opj_stream_create:Fb,_jp2_version:vb,_i64Subtract:Yi,_opj_get_cstr_index:Nc,_opj_set_default_decoder_parameters:rc,_opj_read_header:tc,_opj_get_cstr_info:Lc,_opj_set_default_encoder_parameters:Bc,_opj_set_decode_area:vc,_opj_stream_set_write_function:Sb,_opj_dump_codec:Kc,_opj_create_decompress:qc,_opj_decode_tile_data:xc,_free:Qi,_opj_image_tile_create:kc,_opj_set_MCT:Hc,_opj_set_info_handler:lc,_opj_start_compress:Dc,_opj_write_tile:Ic,_opj_setup_decoder:sc,_malloc:Pi,_opj_end_compress:Fc,_opj_destroy_codec:Jc,_jp2_decode:ub,_opj_stream_create_buffer_stream:oc,_opj_create_compress:Ac,runPostSets:Xi,_emscripten_replace_memory:Za,stackAlloc:lb,stackSave:mb,stackRestore:nb,establishStackSpace:ob,setThrew:pb,setTempRet0:sb,getTempRet0:tb,dynCall_iiiiiiii:lj,dynCall_iiii:mj,dynCall_di:nj,dynCall_vi:oj,dynCall_vii:pj,dynCall_iiiiiii:qj,dynCall_ii:rj,dynCall_viii:sj,dynCall_iiiiiiiiiiii:tj,dynCall_iiiii:uj,dynCall_iii:vj,dynCall_iiiiii:wj,dynCall_viiii:xj}})
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
// EMSCRIPTEN_END_ASM
|
|
90
|
-
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _opj_stream_destroy=Module["_opj_stream_destroy"]=asm["_opj_stream_destroy"];var _opj_stream_set_read_function=Module["_opj_stream_set_read_function"]=asm["_opj_stream_set_read_function"];var _opj_read_tile_header=Module["_opj_read_tile_header"]=asm["_opj_read_tile_header"];var _opj_set_warning_handler=Module["_opj_set_warning_handler"]=asm["_opj_set_warning_handler"];var _opj_destroy_cstr_info=Module["_opj_destroy_cstr_info"]=asm["_opj_destroy_cstr_info"];var _opj_image_create=Module["_opj_image_create"]=asm["_opj_image_create"];var _opj_set_error_handler=Module["_opj_set_error_handler"]=asm["_opj_set_error_handler"];var _opj_image_tile_create=Module["_opj_image_tile_create"]=asm["_opj_image_tile_create"];var _opj_end_decompress=Module["_opj_end_decompress"]=asm["_opj_end_decompress"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _opj_stream_set_seek_function=Module["_opj_stream_set_seek_function"]=asm["_opj_stream_set_seek_function"];var _opj_decode=Module["_opj_decode"]=asm["_opj_decode"];var _opj_set_decoded_resolution_factor=Module["_opj_set_decoded_resolution_factor"]=asm["_opj_set_decoded_resolution_factor"];var _opj_stream_create_default_file_stream=Module["_opj_stream_create_default_file_stream"]=asm["_opj_stream_create_default_file_stream"];var _opj_set_default_decoder_parameters=Module["_opj_set_default_decoder_parameters"]=asm["_opj_set_default_decoder_parameters"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _opj_get_decoded_tile=Module["_opj_get_decoded_tile"]=asm["_opj_get_decoded_tile"];var _memset=Module["_memset"]=asm["_memset"];var _opj_version=Module["_opj_version"]=asm["_opj_version"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _opj_destroy_cstr_index=Module["_opj_destroy_cstr_index"]=asm["_opj_destroy_cstr_index"];var _opj_stream_set_user_data_length=Module["_opj_stream_set_user_data_length"]=asm["_opj_stream_set_user_data_length"];var _opj_stream_set_skip_function=Module["_opj_stream_set_skip_function"]=asm["_opj_stream_set_skip_function"];var _opj_image_destroy=Module["_opj_image_destroy"]=asm["_opj_image_destroy"];var _opj_stream_create_file_stream=Module["_opj_stream_create_file_stream"]=asm["_opj_stream_create_file_stream"];var _opj_setup_encoder=Module["_opj_setup_encoder"]=asm["_opj_setup_encoder"];var _opj_stream_default_create=Module["_opj_stream_default_create"]=asm["_opj_stream_default_create"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _opj_stream_create=Module["_opj_stream_create"]=asm["_opj_stream_create"];var _jp2_version=Module["_jp2_version"]=asm["_jp2_version"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _opj_get_cstr_index=Module["_opj_get_cstr_index"]=asm["_opj_get_cstr_index"];var _opj_encode=Module["_opj_encode"]=asm["_opj_encode"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _opj_get_cstr_info=Module["_opj_get_cstr_info"]=asm["_opj_get_cstr_info"];var _opj_set_default_encoder_parameters=Module["_opj_set_default_encoder_parameters"]=asm["_opj_set_default_encoder_parameters"];var _opj_set_decode_area=Module["_opj_set_decode_area"]=asm["_opj_set_decode_area"];var _opj_stream_set_write_function=Module["_opj_stream_set_write_function"]=asm["_opj_stream_set_write_function"];var _opj_dump_codec=Module["_opj_dump_codec"]=asm["_opj_dump_codec"];var _opj_read_header=Module["_opj_read_header"]=asm["_opj_read_header"];var _opj_create_decompress=Module["_opj_create_decompress"]=asm["_opj_create_decompress"];var _opj_decode_tile_data=Module["_opj_decode_tile_data"]=asm["_opj_decode_tile_data"];var _opj_set_info_handler=Module["_opj_set_info_handler"]=asm["_opj_set_info_handler"];var _opj_stream_set_user_data=Module["_opj_stream_set_user_data"]=asm["_opj_stream_set_user_data"];var _opj_set_MCT=Module["_opj_set_MCT"]=asm["_opj_set_MCT"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _opj_start_compress=Module["_opj_start_compress"]=asm["_opj_start_compress"];var _opj_write_tile=Module["_opj_write_tile"]=asm["_opj_write_tile"];var _opj_setup_decoder=Module["_opj_setup_decoder"]=asm["_opj_setup_decoder"];var _malloc=Module["_malloc"]=asm["_malloc"];var _opj_end_compress=Module["_opj_end_compress"]=asm["_opj_end_compress"];var _opj_destroy_codec=Module["_opj_destroy_codec"]=asm["_opj_destroy_codec"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _jp2_decode=Module["_jp2_decode"]=asm["_jp2_decode"];var _opj_stream_create_buffer_stream=Module["_opj_stream_create_buffer_stream"]=asm["_opj_stream_create_buffer_stream"];var _opj_create_compress=Module["_opj_create_compress"]=asm["_opj_create_compress"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){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["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run()
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
return Module;
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
/***/ }),
|
|
101
|
-
|
|
102
|
-
/***/ 559:
|
|
103
|
-
/***/ (() => {
|
|
104
|
-
|
|
105
|
-
/* (ignored) */
|
|
106
|
-
|
|
107
|
-
/***/ }),
|
|
108
|
-
|
|
109
|
-
/***/ 610:
|
|
50
|
+
/***/ 241:
|
|
110
51
|
/***/ ((module) => {
|
|
111
52
|
|
|
112
53
|
/* -*- tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
|
|
@@ -1262,14 +1203,59 @@ function decode(jpegData, userOpts = {}) {
|
|
|
1262
1203
|
|
|
1263
1204
|
/***/ }),
|
|
1264
1205
|
|
|
1265
|
-
/***/
|
|
1206
|
+
/***/ 254:
|
|
1207
|
+
/***/ ((module) => {
|
|
1208
|
+
|
|
1209
|
+
"use strict";
|
|
1210
|
+
module.exports = __X_ITE_X3D__ .jquery;
|
|
1211
|
+
|
|
1212
|
+
/***/ }),
|
|
1213
|
+
|
|
1214
|
+
/***/ 345:
|
|
1215
|
+
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
|
1216
|
+
|
|
1217
|
+
var __webpack_dirname__ = "/";
|
|
1218
|
+
/*! OpenJPEG.js - v0.10.2 - 2016-07-11 | (c) 2016 Chris Hafey | https://github.com/chafey/openjpeg */
|
|
1219
|
+
;module.exports=function(Module) {
|
|
1220
|
+
Module = Module || {};
|
|
1221
|
+
|
|
1222
|
+
var Module;if(!Module)Module=(typeof OpenJPEG!=="undefined"?OpenJPEG:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&"function"==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=__webpack_require__(722);var nodePath=__webpack_require__(978);Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__webpack_dirname__,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(true){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*\(([^)]*)\)\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={};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){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){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=[_malloc,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(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a<i;a++)pre+=" ";Module.print(pre+"^")}function parseNested(){i++;if(func[i]==="K")i++;var parts=[];while(func[i]!=="E"){if(func[i]==="S"){i++;var next=func.indexOf("_",i);var num=func.substring(i,next)||0;parts.push(subs[num]||"?");i=next+1;continue}if(func[i]==="C"){parts.push(parts[parts.length-1]);i+=2;continue}var size=parseInt(func.substr(i));var pre=size.toString().length;if(!size||!pre){i--;break}var curr=func.substr(i+pre,size);parts.push(curr);subs.push(curr);i+=pre+size}i++;return parts}function parse(rawList,limit,allowVoid){limit=limit||Infinity;var ret="",list=[];function flushList(){return"("+list.join(", ")+")"}var name;if(func[i]==="N"){name=parseNested().join("::");limit--;if(limit===0)return rawList?[name]:name}else{if(func[i]==="K"||first&&func[i]==="L")i++;var size=parseInt(func.substr(i));if(size){var pre=size.toString().length;name=func.substr(i+pre,size);i+=pre+size}}first=false;if(func[i]==="I"){i++;var iList=parse(true);var iRet=parse(true,1,true);ret+=iRet[0]+" "+name+"<"+iList.join(", ")+">"}else{ret=name}paramLoop:while(i<func.length&&limit-->0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function enlargeMemory(){var OLD_TOTAL_MEMORY=TOTAL_MEMORY;var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;try{if(ArrayBuffer.transfer){buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY)}else{var oldHEAP8=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return false}var success=_emscripten_replace_memory(buffer);if(!success)return false;Module["buffer"]=buffer;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);if(!ArrayBuffer.transfer){HEAP8.set(oldHEAP8)}return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY);HEAP8=new Int8Array(buffer);HEAP16=new Int16Array(buffer);HEAP32=new Int32Array(buffer);HEAPU8=new Uint8Array(buffer);HEAPU16=new Uint16Array(buffer);HEAPU32=new Uint32Array(buffer);HEAPF32=new Float32Array(buffer);HEAPF64=new Float64Array(buffer);HEAP32[0]=255;assert(HEAPU8[0]===255&&HEAPU8[3]===0,"Typed arrays 2 must be run on a little-endian system");Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){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"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+25664;__ATINIT__.push();allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}Module["_i64Subtract"]=_i64Subtract;var _floorf=Math_floor;Module["_bitshift64Ashr"]=_bitshift64Ashr;var _SItoF=true;Module["_memset"]=_memset;var _BDtoILow=true;var _ceilf=Math_ceil;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function ___lock(){}function ___unlock(){}Module["_i64Add"]=_i64Add;var _floor=Math_floor;var _sqrt=Math_sqrt;var PATH=undefined;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(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)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module["_bitshift64Lshr"]=_bitshift64Lshr;var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}var _BItoD=true;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer)___syscall146.buffer=[];var buffer=___syscall146.buffer;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++){var curr=HEAPU8[ptr+j];if(curr===0||curr===10){Module["print"](UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}// removed by dead control flow
|
|
1223
|
+
case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}// removed by dead control flow
|
|
1224
|
+
case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}// removed by dead control flow
|
|
1225
|
+
case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){try{return Module["dynCall_iiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_di":invoke_di,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_iiiiiiiiiiii":invoke_iiiiiiiiiiii,"invoke_iiiii":invoke_iiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_llvm_pow_f64":_llvm_pow_f64,"_abort":_abort,"_pthread_cleanup_push":_pthread_cleanup_push,"_ceilf":_ceilf,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_sbrk":_sbrk,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_sysconf":_sysconf,"___setErrNo":___setErrNo,"_floor":_floor,"_pthread_self":_pthread_self,"_sqrt":_sqrt,"_floorf":_floorf,"___syscall54":___syscall54,"___unlock":___unlock,"_emscripten_set_main_loop":_emscripten_set_main_loop,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"_time":_time,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
|
|
1226
|
+
var asm=(function(global,env,buffer) {
|
|
1227
|
+
var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0.0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_iiiiiiii;var na=env.invoke_iiii;var oa=env.invoke_di;var pa=env.invoke_vi;var qa=env.invoke_vii;var ra=env.invoke_iiiiiii;var sa=env.invoke_ii;var ta=env.invoke_viii;var ua=env.invoke_iiiiiiiiiiii;var va=env.invoke_iiiii;var wa=env.invoke_iii;var xa=env.invoke_iiiiii;var ya=env.invoke_viiii;var za=env._pthread_cleanup_pop;var Aa=env.___syscall221;var Ba=env._llvm_pow_f64;var Ca=env._abort;var Da=env._pthread_cleanup_push;var Ea=env._ceilf;var Fa=env._emscripten_set_main_loop_timing;var Ga=env._sbrk;var Ha=env._emscripten_memcpy_big;var Ia=env._sysconf;var Ja=env.___setErrNo;var Ka=env._floor;var La=env._pthread_self;var Ma=env._sqrt;var Na=env._floorf;var Oa=env.___syscall54;var Pa=env.___unlock;var Qa=env._emscripten_set_main_loop;var Ra=env.___lock;var Sa=env.___syscall6;var Ta=env.___syscall5;var Ua=env._time;var Va=env.___syscall140;var Wa=env.___syscall145;var Xa=env.___syscall146;var Ya=0.0;function Za(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
|
|
1228
|
+
// EMSCRIPTEN_START_FUNCS
|
|
1229
|
+
function pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+48|0;e=l+32|0;j=l+28|0;k[e>>2]=c;if((k[a+8>>2]|0)==16)i=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else i=k[a+12>>2]|0;f=(k[a+80>>2]|0)+16|0;g=(k[f>>2]|0)>>>0<257?1:2;h=g+1|0;if(h>>>0>c>>>0){cc(d,1,14585,l)|0;d=0;r=l;return d|0}k[e>>2]=c-h;Ab(b,j,g);c=k[j>>2]|0;if(c>>>0>=(k[f>>2]|0)>>>0){cc(d,1,14611,l+8|0)|0;d=0;r=l;return d|0}Ab(b+g|0,(k[i+5584>>2]|0)+(c*1080|0)|0,1);if(!(Pe(a,k[j>>2]|0,b+h|0,e,d)|0)){cc(d,1,14585,l+16|0)|0;d=0;r=l;return d|0}if(!(k[e>>2]|0)){d=1;r=l;return d|0}cc(d,1,14585,l+24|0)|0;d=0;r=l;return d|0}function qe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i+8|0;e=i+20|0;g=k[(k[a+80>>2]|0)+16>>2]|0;f=g>>>0<257?1:2;if((f+2|0)!=(c|0)){cc(d,1,14502,i)|0;h=0;r=i;return h|0}if((k[a+8>>2]|0)==16)a=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else a=k[a+12>>2]|0;Ab(b,e,f);Ab(b+f|0,i+16|0,1);c=k[e>>2]|0;if(c>>>0<g>>>0){Ab(b+(f+1)|0,(k[a+5584>>2]|0)+(c*1080|0)+808|0,1);h=1;r=i;return h|0}else{k[h>>2]=c;k[h+4>>2]=g;cc(d,1,14528,h)|0;h=0;r=i;return h|0}return 0}function re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=r;r=r+16|0;e=g+12|0;k[e>>2]=c;if(!(Oe(a,0,b,e,d)|0)){cc(d,1,14476,g)|0;f=0;r=g;return f|0}if(k[e>>2]|0){cc(d,1,14476,g+8|0)|0;f=0;r=g;return f|0}if((k[a+8>>2]|0)==16)e=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else e=k[a+12>>2]|0;e=k[e+5584>>2]|0;c=a+80|0;if((k[(k[c>>2]|0)+16>>2]|0)>>>0<=1){f=1;r=g;return f|0}d=e+24|0;a=e+804|0;f=e+28|0;b=1;while(1){k[e+1104>>2]=k[d>>2];k[e+1884>>2]=k[a>>2];cj(e+1108|0,f|0,776)|0;b=b+1|0;if(b>>>0>=(k[(k[c>>2]|0)+16>>2]|0)>>>0){e=1;break}else e=e+1080|0}r=g;return e|0}function se(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+48|0;m=n+32|0;l=n+24|0;j=n+16|0;f=n+8|0;e=n;i=n+40|0;g=n+36|0;k[i>>2]=c;h=a+80|0;do if((k[(k[h>>2]|0)+16>>2]|0)>>>0<257){if(c){Ab(b,g,1);f=b+1|0;b=c+-1|0;break}cc(d,1,14129,e)|0;m=0;r=n;return m|0}else{if(c>>>0>=2){Ab(b,g,2);f=b+2|0;b=c+-2|0;break}cc(d,1,14129,f)|0;m=0;r=n;return m|0}while(0);k[i>>2]=b;e=k[g>>2]|0;b=k[(k[h>>2]|0)+16>>2]|0;if(e>>>0>=b>>>0){k[j>>2]=e;k[j+4>>2]=b;cc(d,1,14155,j)|0;m=0;r=n;return m|0}if(!(Oe(a,e,f,i,d)|0)){cc(d,1,14129,l)|0;m=0;r=n;return m|0}if(!(k[i>>2]|0)){m=1;r=n;return m|0}cc(d,1,14129,m)|0;m=0;r=n;return m|0}function te(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+16|0;f=t+8|0;s=t+12|0;q=k[(k[a+80>>2]|0)+16>>2]|0;p=q>>>0<257?1:2;o=(p<<1)+5|0;e=(c>>>0)/(o>>>0)|0;if((e|0)==0|((c>>>0)%(o>>>0)|0|0)!=0){cc(d,1,14085,t)|0;s=0;r=t;return s|0}if((k[a+8>>2]|0)==16)o=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else o=k[a+12>>2]|0;c=o+5636|0;a=i[c>>0]|0;if(!(a&4))n=0;else n=(k[o+420>>2]|0)+1|0;m=n+e|0;if(m>>>0>31){k[f>>2]=m;cc(d,1,14111,f)|0;s=0;r=t;return s|0}i[c>>0]=a|4;if(n>>>0<m>>>0){d=p+1|0;l=o+8|0;f=p+3|0;g=p|4;h=g+p|0;j=h+1|0;a=b;e=n;c=o+424+(n*148|0)|0;while(1){Ab(a,c,1);Ab(a+1|0,c+4|0,p);b=c+8|0;Ab(a+d|0,b,2);u=k[b>>2]|0;n=k[l>>2]|0;k[b>>2]=u>>>0<n>>>0?u:n;Ab(a+f|0,c+12|0,1);b=c+16|0;Ab(a+g|0,b,p);Ab(a+h|0,s,1);k[c+36>>2]=k[s>>2];n=k[b>>2]|0;k[b>>2]=n>>>0<q>>>0?n:q;e=e+1|0;if(e>>>0>=m>>>0)break;else{a=a+j|0;c=c+148|0}}}k[o+420>>2]=m+-1;u=1;r=t;return u|0}function ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,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;M=r;r=r+144|0;K=M+128|0;G=M+120|0;F=M+112|0;E=M+104|0;D=M+96|0;C=M+88|0;A=M+72|0;t=M+64|0;q=M+56|0;p=M+48|0;o=M+40|0;s=M+32|0;h=M+24|0;f=M+16|0;e=M+136|0;w=M+132|0;I=k[a+80>>2]|0;J=a+88|0;if(c>>>0<36){cc(d,1,13440,M)|0;d=0;r=M;return d|0}H=c+-36|0;n=(H>>>0)/3|0;if((H>>>0)%3|0){cc(d,1,13440,M+8|0)|0;d=0;r=M;return d|0}Ab(b,e,2);j[J>>1]=k[e>>2];x=I+8|0;Ab(b+2|0,x,4);B=I+12|0;Ab(b+6|0,B,4);Ab(b+10|0,I,4);m=I+4|0;Ab(b+14|0,m,4);v=a+100|0;Ab(b+18|0,v,4);z=a+104|0;Ab(b+22|0,z,4);u=a+92|0;Ab(b+26|0,u,4);y=a+96|0;Ab(b+30|0,y,4);Ab(b+34|0,e,2);g=b+36|0;c=k[e>>2]|0;if(c>>>0>=16385){k[f>>2]=c;cc(d,1,13468,f)|0;d=0;r=M;return d|0}c=c&65535;H=I+16|0;k[H>>2]=c;if((c|0)!=(n|0)){k[h>>2]=c;k[h+4>>2]=n;cc(d,1,13529,h)|0;d=0;r=M;return d|0}h=k[I>>2]|0;l=k[x>>2]|0;if(l>>>0>h>>>0){c=k[m>>2]|0;b=k[B>>2]|0;if(c>>>0<b>>>0){e=k[v>>2]|0;f=k[z>>2]|0;if(!(ha(f,e)|0)){k[o>>2]=e;k[o+4>>2]=f;cc(d,1,13705,o)|0;d=0;r=M;return d|0}s=hj(b|0,0,l|0,0)|0;if(!((s|0)==(ha(b,l)|0)&(L|0)==0)){k[p>>2]=l;k[p+4>>2]=b;cc(d,1,13766,p)|0;d=0;r=M;return d|0}l=k[u>>2]|0;o=aj(l|0,0,e|0,0)|0;p=L;m=k[y>>2]|0;s=aj(m|0,0,f|0,0)|0;if(l>>>0<=h>>>0?m>>>0<=c>>>0&(o|0-p)>>>0>h>>>0&(s|0-L)>>>0>c>>>0:0){b=_c(n,52)|0;n=I+24|0;k[n>>2]=b;if(!b){k[H>>2]=0;cc(d,1,13852,t)|0;d=0;r=M;return d|0}a:do if(k[H>>2]|0){h=a+168|0;c=0;f=b;while(1){Ab(g,w,1);k[f+24>>2]=(k[w>>2]&127)+1;k[f+32>>2]=(k[w>>2]|0)>>>7;Ab(g+1|0,w,1);k[f>>2]=k[w>>2];Ab(g+2|0,w,1);e=k[w>>2]|0;k[f+4>>2]=e;b=k[f>>2]|0;if((e+-1|0)>>>0>254|(b+-1|0)>>>0>254)break;k[f+36>>2]=0;k[f+40>>2]=k[h>>2];c=c+1|0;if(c>>>0>=(k[H>>2]|0)>>>0)break a;else{g=g+3|0;f=f+52|0}}k[A>>2]=c;k[A+4>>2]=b;k[A+8>>2]=e;cc(d,1,13900,A)|0;d=0;r=M;return d|0}while(0);l=k[u>>2]|0;h=k[v>>2]|0;g=((k[x>>2]|0)+-1-l+h|0)/(h|0)|0;k[a+112>>2]=g;f=k[y>>2]|0;e=k[z>>2]|0;b=((k[B>>2]|0)+-1-f+e|0)/(e|0)|0;k[a+116>>2]=b;if(!((b|0)==0|(g|0)==0)?g>>>0<=(65535/(b>>>0)|0)>>>0:0){m=ha(g,b)|0;c=a+28|0;if(!(i[a+76>>0]&2)){k[c>>2]=0;k[a+32>>2]=0;k[a+36>>2]=g;k[a+40>>2]=b}else{k[c>>2]=(((k[c>>2]|0)-l|0)>>>0)/(h>>>0)|0;C=a+32|0;k[C>>2]=(((k[C>>2]|0)-f|0)>>>0)/(e>>>0)|0;C=a+36|0;k[C>>2]=((k[C>>2]|0)+-1-l+h|0)/(h|0)|0;C=a+40|0;k[C>>2]=((k[C>>2]|0)+-1-f+e|0)/(e|0)|0}C=_c(m,5640)|0;g=a+164|0;k[g>>2]=C;if(!C){cc(d,1,13852,D)|0;d=0;r=M;return d|0}D=_c(k[H>>2]|0,1080)|0;b=a+12|0;k[(k[b>>2]|0)+5584>>2]=D;if(!D){cc(d,1,13852,E)|0;d=0;r=M;return d|0}E=_c(10,20)|0;c=k[b>>2]|0;k[c+5612>>2]=E;if(!E){cc(d,1,13852,F)|0;d=0;r=M;return d|0}k[c+5620>>2]=10;F=_c(10,20)|0;c=k[b>>2]|0;k[c+5624>>2]=F;if(!F){cc(d,1,13852,G)|0;d=0;r=M;return d|0}k[c+5632>>2]=10;f=k[H>>2]|0;if(f){e=k[n>>2]|0;c=c+5584|0;b=0;do{if(!(k[e+(b*52|0)+32>>2]|0))k[(k[c>>2]|0)+(b*1080|0)+1076>>2]=1<<(k[e+(b*52|0)+24>>2]|0)+-1;b=b+1|0}while(b>>>0<f>>>0)}b:do if(m){c=k[g>>2]|0;G=_c(f,1080)|0;k[c+5584>>2]=G;if(G){b=0;while(1){b=b+1|0;if(b>>>0>=m>>>0)break b;G=_c(k[H>>2]|0,1080)|0;k[c+11224>>2]=G;if(!G)break;else c=c+5640|0}}cc(d,1,13852,K)|0;d=0;r=M;return d|0}while(0);k[a+8>>2]=4;ic(I,J);d=1;r=M;return d|0}k[C>>2]=g;k[C+4>>2]=b;cc(d,1,14002,C)|0;d=0;r=M;return d|0}cc(d,1,13808,q)|0;d=0;r=M;return d|0}}else{b=k[B>>2]|0;c=k[m>>2]|0}k[s>>2]=l-h;k[s+4>>2]=b-c;cc(d,1,13643,s)|0;d=0;r=M;return d|0}function ve(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=r;r=r+32|0;a=e+12|0;if(c>>>0<2){cc(d,1,13414,e)|0;d=0;r=e;return d|0}Ab(b,e+16|0,1);Ab(b+1|0,a,1);b=k[a>>2]|0;if(!(((c+-2|0)>>>0)%(((b>>>5&2)+2+(b>>>4&3)|0)>>>0)|0)){d=1;r=e;return d|0}cc(d,1,13414,e+8|0)|0;d=0;r=e;return d|0}function we(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=r;r=r+16|0;if(!c){cc(d,1,13388,a)|0;b=0}else b=1;r=a;return b|0}function xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+32|0;h=i+8|0;g=i+12|0;if(!c){cc(d,1,13362,i)|0;d=0;r=i;return d|0}Ab(b,i+16|0,1);e=c+-1|0;if(!e){d=1;r=i;return d|0}else{f=0;a=0}do{b=b+1|0;Ab(b,g,1);c=k[g>>2]|0;if(!(c&128))a=0;else a=(c&127|a)<<7;f=f+1|0}while((f|0)!=(e|0));if(!a){d=1;r=i;return d|0}cc(d,1,13362,h)|0;d=0;r=i;return d|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+48|0;n=o+32|0;j=o+24|0;f=o+16|0;e=o+8|0;m=o+36|0;if(c>>>0<2){cc(d,1,13276,o)|0;n=0;r=o;return n|0}l=a+184|0;i[l>>0]=i[l>>0]|1;Ab(b,m,1);l=b+1|0;h=c+-1|0;g=a+124|0;c=k[g>>2]|0;do if(c){e=a+120|0;b=k[m>>2]|0;if((k[e>>2]|0)>>>0<=b>>>0){a=b+1|0;b=bd(c,a<<3)|0;if(b){k[g>>2]=b;c=k[e>>2]|0;_i(b+(c<<3)|0,0,a-c<<3|0)|0;k[e>>2]=a;c=k[g>>2]|0;break}cc(d,1,13302,f)|0;n=0;r=o;return n|0}}else{b=(k[m>>2]|0)+1|0;c=_c(b,8)|0;k[g>>2]=c;if(c){k[a+120>>2]=b;break}cc(d,1,13302,e)|0;n=0;r=o;return n|0}while(0);b=k[m>>2]|0;if(k[c+(b<<3)>>2]|0){k[j>>2]=b;cc(d,1,13340,j)|0;n=0;r=o;return n|0}j=Zc(h)|0;c=k[m>>2]|0;b=k[g>>2]|0;k[b+(c<<3)>>2]=j;if(!j){cc(d,1,13302,n)|0;n=0;r=o;return n|0}else{k[b+(c<<3)+4>>2]=h;cj(k[b+(k[m>>2]<<3)>>2]|0,l|0,h|0)|0;n=1;r=o;return n|0}return 0}function ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+48|0;p=q+40|0;n=q+32|0;h=q+24|0;g=q+16|0;o=q+44|0;if(c>>>0<2){cc(d,1,13127,q)|0;p=0;r=q;return p|0}if(i[a+184>>0]&1){cc(d,1,13153,q+8|0)|0;p=0;r=q;return p|0}f=k[a+200>>2]|0;e=k[a+164>>2]|0;m=e+(f*5640|0)+5636|0;i[m>>0]=i[m>>0]|2;Ab(b,o,1);m=b+1|0;l=c+-1|0;j=e+(f*5640|0)+5164|0;b=k[j>>2]|0;do if(b){e=e+(f*5640|0)+5160|0;a=k[o>>2]|0;if((k[e>>2]|0)>>>0<=a>>>0){c=a+1|0;a=bd(b,c<<3)|0;if(a){k[j>>2]=a;b=k[e>>2]|0;_i(a+(b<<3)|0,0,c-b<<3|0)|0;k[e>>2]=c;b=k[j>>2]|0;break}cc(d,1,8775,h)|0;p=0;r=q;return p|0}}else{a=(k[o>>2]|0)+1|0;b=_c(a,8)|0;k[j>>2]=b;if(b){k[e+(f*5640|0)+5160>>2]=a;break}cc(d,1,8775,g)|0;p=0;r=q;return p|0}while(0);a=k[o>>2]|0;if(k[b+(a<<3)>>2]|0){k[n>>2]=a;cc(d,1,13254,n)|0;p=0;r=q;return p|0}n=Zc(l)|0;b=k[o>>2]|0;a=k[j>>2]|0;k[a+(b<<3)>>2]=n;if(!n){cc(d,1,8775,p)|0;p=0;r=q;return p|0}else{k[a+(b<<3)+4>>2]=l;cj(k[a+(k[o>>2]<<3)>>2]|0,m|0,l|0)|0;p=1;r=q;return p|0}return 0}function Ae(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=r;r=r+16|0;if((k[(k[a+80>>2]|0)+16>>2]<<2|0)==(c|0)){d=1;r=b;return d|0}cc(d,1,13101,b)|0;d=0;r=b;return d|0}function Be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 1}function Ce(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+48|0;q=s+40|0;p=s+32|0;j=s+24|0;o=s+44|0;if((k[a+8>>2]|0)==16)h=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else h=k[a+12>>2]|0;if(c>>>0<2){cc(d,1,12933,s)|0;q=0;r=s;return q|0}Ab(b,o,2);if(k[o>>2]|0){cc(d,2,12959,s+8|0)|0;q=1;r=s;return q|0}if(c>>>0<7){cc(d,1,12933,s+16|0)|0;q=0;r=s;return q|0}Ab(b+2|0,o,2);m=b+4|0;n=k[o>>2]&255;i=h+5612|0;e=k[i>>2]|0;l=h+5616|0;a=k[l>>2]|0;a:do if(!a){f=0;g=e}else{f=0;g=e;do{if((k[g+8>>2]|0)==(n|0))break a;g=g+20|0;f=f+1|0}while(f>>>0<a>>>0)}while(0);if((f|0)==(a|0)){f=h+5620|0;do if((a|0)==(k[f>>2]|0)){a=a+10|0;k[f>>2]=a;a=bd(e,a*20|0)|0;if(a){k[i>>2]=a;e=k[l>>2]|0;_i(a+(e*20|0)|0,0,((k[f>>2]|0)-e|0)*20|0)|0;e=k[i>>2]|0;a=k[l>>2]|0;break}cd(k[i>>2]|0);k[i>>2]=0;k[f>>2]=0;k[l>>2]=0;cc(d,1,13019,j)|0;q=0;r=s;return q|0}while(0);k[l>>2]=a+1;g=e+(a*20|0)|0}f=g+12|0;a=k[f>>2]|0;if(a){cd(a);k[f>>2]=0}k[g+8>>2]=n;n=k[o>>2]|0;k[g+4>>2]=n>>>8&3;k[g>>2]=n>>>10&3;Ab(m,o,2);if(k[o>>2]|0){cc(d,2,13057,p)|0;q=1;r=s;return q|0}a=c+-6|0;e=Zc(a)|0;k[f>>2]=e;if(!e){cc(d,1,12933,q)|0;q=0;r=s;return q|0}else{cj(e|0,b+6|0,a|0)|0;k[g+16>>2]=a;q=1;r=s;return q|0}return 0}function De(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;e=h+16|0;g=h+12|0;a=a+80|0;f=k[(k[a>>2]|0)+16>>2]|0;if((f+2|0)!=(c|0)){cc(d,1,12907,h)|0;g=0;r=h;return g|0}Ab(b,e,2);if((k[e>>2]|0)!=(f|0)){cc(d,1,12907,h+8|0)|0;g=0;r=h;return g|0}if(!f){g=1;r=h;return g|0}e=b+2|0;b=0;a=k[(k[a>>2]|0)+24>>2]|0;while(1){Ab(e,g,1);k[a+32>>2]=(k[g>>2]|0)>>>7&1;k[a+24>>2]=(k[g>>2]&127)+1;b=b+1|0;if((b|0)==(f|0)){a=1;break}else{e=e+1|0;a=a+52|0}}r=h;return a|0}function Ee(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=r;r=r+144|0;I=J+120|0;H=J+112|0;G=J+104|0;F=J+96|0;E=J+88|0;D=J+80|0;C=J+72|0;B=J+64|0;A=J+56|0;z=J+48|0;o=J+40|0;n=J+32|0;l=J+24|0;x=J+136|0;u=J+132|0;v=J+128|0;w=J+124|0;if((k[a+8>>2]|0)==16)p=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else p=k[a+12>>2]|0;if(c>>>0<2){cc(d,1,12567,J)|0;I=0;r=J;return I|0}Ab(b,x,2);if(k[x>>2]|0){cc(d,2,12593,J+8|0)|0;I=1;r=J;return I|0}if(c>>>0<7){cc(d,1,12567,J+16|0)|0;I=0;r=J;return I|0}Ab(b+2|0,u,1);m=b+3|0;j=p+5624|0;e=k[j>>2]|0;y=p+5628|0;a=k[y>>2]|0;a:do if(!a){g=0;f=e}else{h=k[u>>2]|0;g=0;f=e;do{if((k[f>>2]|0)==(h|0))break a;f=f+20|0;g=g+1|0}while(g>>>0<a>>>0)}while(0);if((g|0)==(a|0)){f=p+5632|0;do if((a|0)==(k[f>>2]|0)){a=a+10|0;k[f>>2]=a;a=bd(e,a*20|0)|0;if(a){k[j>>2]=a;e=k[y>>2]|0;_i(a+(e*20|0)|0,0,((k[f>>2]|0)-e|0)*20|0)|0;e=k[j>>2]|0;a=k[y>>2]|0;break}cd(k[j>>2]|0);k[j>>2]=0;k[f>>2]=0;k[y>>2]=0;cc(d,1,12639,l)|0;I=0;r=J;return I|0}while(0);f=e+(a*20|0)|0}k[f>>2]=k[u>>2];Ab(m,x,2);if(k[x>>2]|0){cc(d,2,12593,n)|0;I=1;r=J;return I|0}Ab(b+5|0,v,2);e=k[v>>2]|0;if(e>>>0>1){cc(d,2,12677,o)|0;I=1;r=J;return I|0}a=c+-7|0;b:do if(e){q=f+4|0;s=f+16|0;t=f+8|0;c=f+12|0;o=p+5612|0;n=p+5616|0;l=b+7|0;m=0;c:while(1){if(a>>>0<3){e=27;break}Ab(l,x,1);if((k[x>>2]|0)!=1){e=29;break}Ab(l+1|0,w,2);e=a+-3|0;g=k[w>>2]|0;h=(g>>>15)+1|0;g=g&32767;k[q>>2]=g;f=(ha(h,g)|0)+2|0;if(e>>>0<f>>>0){e=31;break}a=l+3|0;j=e-f|0;if(g){e=0;do{Ab(a,x,h);if((k[x>>2]|0)!=(e|0)){e=34;break c}a=a+h|0;e=e+1|0}while(e>>>0<(k[q>>2]|0)>>>0)}Ab(a,w,2);e=a+2|0;f=k[w>>2]|0;g=(f>>>15)+1|0;f=f&32767;k[w>>2]=f;if((f|0)!=(k[q>>2]|0)){e=37;break}a=(ha(g,f)|0)+3|0;if(j>>>0<a>>>0){e=39;break}a=j-a|0;if(f){f=0;do{Ab(e,x,g);if((k[x>>2]|0)!=(f|0)){e=42;break c}e=e+g|0;f=f+1|0}while(f>>>0<(k[q>>2]|0)>>>0)}Ab(e,x,3);l=e+3|0;i[s>>0]=((k[x>>2]|0)>>>16^1)&1|i[s>>0]&-2;k[t>>2]=0;k[c>>2]=0;j=k[x>>2]|0;f=j&255;k[u>>2]=f;if(f){g=k[n>>2]|0;if(!g){e=50;break}h=0;e=k[o>>2]|0;while(1){if((k[e+8>>2]|0)==(f|0))break;h=h+1|0;if(h>>>0>=g>>>0){e=50;break c}else e=e+20|0}k[t>>2]=e}f=j>>>8&255;k[u>>2]=f;if(f){g=k[n>>2]|0;if(!g){e=57;break}h=0;e=k[o>>2]|0;while(1){if((k[e+8>>2]|0)==(f|0))break;h=h+1|0;if(h>>>0>=g>>>0){e=57;break c}else e=e+20|0}k[c>>2]=e}m=m+1|0;if(m>>>0>=(k[v>>2]|0)>>>0)break b}if((e|0)==27){cc(d,1,12567,z)|0;I=0;r=J;return I|0}else if((e|0)==29){cc(d,2,12721,A)|0;I=1;r=J;return I|0}else if((e|0)==31){cc(d,1,12567,B)|0;I=0;r=J;return I|0}else if((e|0)==34){cc(d,2,12787,C)|0;I=1;r=J;return I|0}else if((e|0)==37){cc(d,2,12841,D)|0;I=1;r=J;return I|0}else if((e|0)==39){cc(d,1,12567,E)|0;I=0;r=J;return I|0}else if((e|0)==42){cc(d,2,12787,F)|0;I=1;r=J;return I|0}else if((e|0)==50){cc(d,1,12567,G)|0;I=0;r=J;return I|0}else if((e|0)==57){cc(d,1,12567,H)|0;I=0;r=J;return I|0}}while(0);if(!a){k[y>>2]=(k[y>>2]|0)+1;I=1;r=J;return I|0}else{cc(d,1,12567,I)|0;I=0;r=J;return I|0}return 0}function Fe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+32|0;q=s+24|0;p=s+20|0;m=a+80|0;e=k[m>>2]|0;if((k[a+8>>2]|0)==16)f=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else f=k[a+12>>2]|0;if(!c){cc(d,1,12486,s)|0;q=0;r=s;return q|0}Ab(b,p,1);a=k[p>>2]|0;if(a>>>0>1){cc(d,2,12512,s+8|0)|0;q=1;r=s;return q|0}if((a+1|0)!=(c|0)){cc(d,2,12486,s+16|0)|0;q=0;r=s;return q|0}l=f+5584|0;a=k[e+16>>2]|0;if(a){c=0;d=k[l>>2]|0;while(1){k[d+1076>>2]=0;c=c+1|0;if(c>>>0>=a>>>0)break;else d=d+1080|0}}j=f+5604|0;a=k[j>>2]|0;if(a){cd(a);k[j>>2]=0}if(!(k[p>>2]|0)){q=1;r=s;return q|0}i=f+5624|0;g=f+5628|0;h=0;while(1){b=b+1|0;Ab(b,q,1);a=k[m>>2]|0;e=k[i>>2]|0;f=k[g>>2]|0;if(((f|0)!=0?!((f|0)==0?1:(k[e>>2]|0)!=(k[q>>2]|0)):0)?(n=k[e+4>>2]|0,o=a+16|0,(n|0)==(k[o>>2]|0)):0){a=k[e+8>>2]|0;if(a){c=ha(n,n)|0;f=ha(k[1036+(k[a>>2]<<2)>>2]|0,c)|0;if((k[a+16>>2]|0)!=(f|0)){a=0;c=32;break}d=Zc(c<<2)|0;k[j>>2]=d;if(!d){a=0;c=32;break}fb[k[1052+(k[a>>2]<<2)>>2]&15](k[a+12>>2]|0,d,c)}a=k[e+12>>2]|0;if(a){c=k[o>>2]|0;f=ha(c,k[1036+(k[a>>2]<<2)>>2]|0)|0;if((k[a+16>>2]|0)!=(f|0)){a=0;c=32;break}f=Zc(c<<2)|0;if(!f){a=0;c=32;break}fb[k[1068+(k[a>>2]<<2)>>2]&15](k[a+12>>2]|0,f,c);a=k[o>>2]|0;if(a){c=0;d=f;e=k[l>>2]|0;while(1){k[e+1076>>2]=k[d>>2];c=c+1|0;if((c|0)==(a|0))break;else{d=d+4|0;e=e+1080|0}}}cd(f)}}h=h+1|0;if(h>>>0>=(k[p>>2]|0)>>>0){a=1;c=32;break}}if((c|0)==32){r=s;return a|0}return 0}function Ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,2);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+2|0}}r=f;return}function He(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,4);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Eb(a,e);k[b>>2]=~~+o[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Cb(a,e);k[b>>2]=~~+p[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}r=f;return}function Ke(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,2);o[b>>2]=+((k[e>>2]|0)>>>0);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+2|0}}r=f;return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Ab(a,e,4);o[b>>2]=+((k[e>>2]|0)>>>0);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Me(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Eb(a,e);k[b>>2]=k[e>>2];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}r=f;return}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;if(!c){r=f;return}d=0;while(1){Cb(a,e);o[b>>2]=+p[e>>3];d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+8|0}}r=f;return}function Oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+32|0;g=m+8|0;i=m+20|0;if((k[a+8>>2]|0)==16)a=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else a=k[a+12>>2]|0;l=k[a+5584>>2]|0;a=k[d>>2]|0;if(!a){cc(e,1,14224,m)|0;b=0;r=m;return b|0}k[d>>2]=a+-1;Ab(c,i,1);c=c+1|0;f=k[i>>2]&31;h=l+(b*1080|0)+24|0;k[h>>2]=f;k[l+(b*1080|0)+804>>2]=(k[i>>2]|0)>>>5;do if((f|0)==1){a=1;j=8}else{a=(k[d>>2]|0)>>>((f|0)!=0&1);if(a>>>0>97){k[g>>2]=a;k[g+4>>2]=97;k[g+8>>2]=97;cc(e,2,14260,g)|0;f=k[h>>2]|0}e=(a|0)==0;if(f)if(e){a=0;j=20;break}else{j=8;break}if(!e){f=0;while(1){Ab(c,i,1);if(f>>>0<97){k[l+(b*1080|0)+28+(f<<3)>>2]=(k[i>>2]|0)>>>3;k[l+(b*1080|0)+28+(f<<3)+4>>2]=0}f=f+1|0;if((f|0)==(a|0))break;else c=c+1|0}}a=(k[d>>2]|0)-a|0}while(0);if((j|0)==8){f=0;while(1){Ab(c,i,2);if(f>>>0<97){k[l+(b*1080|0)+28+(f<<3)>>2]=(k[i>>2]|0)>>>11;k[l+(b*1080|0)+28+(f<<3)+4>>2]=k[i>>2]&2047}f=f+1|0;if((f|0)==(a|0)){j=20;break}else c=c+2|0}}if((j|0)==20)a=(k[d>>2]|0)-(a<<1)|0;k[d>>2]=a;if((k[h>>2]|0)!=1){b=1;r=m;return b|0}a=l+(b*1080|0)+28|0;c=l+(b*1080|0)+32|0;f=1;do{d=(k[a>>2]|0)-(((f+-1|0)>>>0)/3|0)|0;k[l+(b*1080|0)+28+(f<<3)>>2]=(d|0)>0?d:0;k[l+(b*1080|0)+28+(f<<3)+4>>2]=k[c>>2];f=f+1|0}while((f|0)!=97);a=1;r=m;return a|0}function Pe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+48|0;o=q+40|0;j=q+32|0;i=q+16|0;h=q+8|0;n=q+44|0;g=a+8|0;if((k[g>>2]|0)==16)f=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else f=k[a+12>>2]|0;l=k[f+5584>>2]|0;if((k[d>>2]|0)>>>0<5){cc(e,1,14664,q)|0;d=0;r=q;return d|0}m=l+(b*1080|0)+4|0;Ab(c,m,1);f=(k[m>>2]|0)+1|0;k[m>>2]=f;if(f>>>0>33){k[h>>2]=f;k[h+4>>2]=33;cc(e,1,14699,h)|0;d=0;r=q;return d|0}if((k[a+168>>2]|0)>>>0>=f>>>0){k[i>>2]=b;cc(e,1,14776,i)|0;k[g>>2]=k[g>>2]|32768;d=0;r=q;return d|0}h=l+(b*1080|0)+8|0;Ab(c+1|0,h,1);k[h>>2]=(k[h>>2]|0)+2;a=l+(b*1080|0)+12|0;Ab(c+2|0,a,1);i=(k[a>>2]|0)+2|0;k[a>>2]=i;h=k[h>>2]|0;if(h>>>0>10|i>>>0>10|(h+i|0)>>>0>12){cc(e,1,14934,q+24|0)|0;d=0;r=q;return d|0}Ab(c+3|0,l+(b*1080|0)+16|0,1);Ab(c+4|0,l+(b*1080|0)+20|0,1);g=(k[d>>2]|0)+-5|0;k[d>>2]=g;f=k[m>>2]|0;if(!(k[l+(b*1080|0)>>2]&1)){if(!f){d=1;r=q;return d|0}else f=0;do{k[l+(b*1080|0)+812+(f<<2)>>2]=15;k[l+(b*1080|0)+944+(f<<2)>>2]=15;f=f+1|0}while(f>>>0<(k[m>>2]|0)>>>0);f=1;r=q;return f|0}if(g>>>0<f>>>0){cc(e,1,14664,j)|0;d=0;r=q;return d|0}do if(!f)f=0;else{a=0;g=c+5|0;while(1){Ab(g,n,1);g=g+1|0;f=k[n>>2]|0;if((a|0)!=0?f>>>0<16|(f&15|0)==0:0)break;k[l+(b*1080|0)+812+(a<<2)>>2]=f&15;k[l+(b*1080|0)+944+(a<<2)>>2]=(k[n>>2]|0)>>>4;a=a+1|0;f=k[m>>2]|0;if(a>>>0>=f>>>0){p=22;break}}if((p|0)==22){g=k[d>>2]|0;break}cc(e,1,15002,o)|0;d=0;r=q;return d|0}while(0);k[d>>2]=g-f;d=1;r=q;return d|0}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){zb(b,~~+o[a>>2]>>>0,2);d=d+1|0;if((d|0)==(c|0))break;else{b=b+2|0;a=a+4|0}}return}function Re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){zb(b,~~+o[a>>2]>>>0,4);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){Db(b,+o[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+4|0;a=a+4|0}}return}function Te(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)return;d=0;while(1){Bb(b,+o[a>>2]);d=d+1|0;if((d|0)==(c|0))break;else{b=b+8|0;a=a+4|0}}return}function Ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;if(!c){c=0;r=h;return c|0}if(!(vd(k[a>>2]|0,b,c,d)|0)){cc(d,1,16303,h)|0;c=0;r=h;return c|0}if(k[a+128>>2]|0){c=1;r=h;return c|0}g=a+108|0;if(!(mf(c,g,d)|0)){c=0;r=h;return c|0}b=k[a+48>>2]|0;a:do switch(b|0){case 16:{k[c+20>>2]=1;break}case 17:{k[c+20>>2]=2;break}case 18:{k[c+20>>2]=3;break}case 24:{k[c+20>>2]=4;break}default:{e=c+20|0;if((b|0)==12){k[e>>2]=5;break a}else{k[e>>2]=-1;break a}}}while(0);f=a+120|0;b=k[f>>2]|0;do if(b){if(k[b+12>>2]|0){nf(c,g);break}cd(k[b+4>>2]|0);cd(k[(k[f>>2]|0)+8>>2]|0);cd(k[k[f>>2]>>2]|0);b=k[f>>2]|0;e=k[b+12>>2]|0;if(e){cd(e);b=k[f>>2]|0}cd(b);k[f>>2]=0}while(0);if(k[a+116>>2]|0)of(c,g,d);b=k[g>>2]|0;if(!b){c=1;r=h;return c|0}k[c+28>>2]=b;k[c+32>>2]=k[a+112>>2];k[g>>2]=0;c=1;r=h;return c|0}function Ve(a,b){a=a|0;b=b|0;ed(k[a>>2]|0,b);i[a+124>>0]=0;k[a+128>>2]=k[b+8248>>2]&1;return}function We(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+80|0;v=w+64|0;s=w+56|0;n=w+48|0;q=w+40|0;p=w+32|0;o=w+24|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){b=0;r=w;return b|0}t=c+16|0;if(((k[t>>2]|0)+-1|0)>>>0>16383){cc(d,1,16352,w)|0;b=0;r=w;return b|0}if(!(hd(k[a>>2]|0,b,c,d)|0)){b=0;r=w;return b|0}k[a+56>>2]=1785737760;k[a+60>>2]=0;k[a+64>>2]=1;e=Zc(4)|0;f=a+68|0;k[f>>2]=e;if(!e){k[f>>2]=0;cc(d,1,16421,w+8|0)|0;b=0;r=w;return b|0}k[e>>2]=1785737760;i=k[t>>2]|0;k[a+20>>2]=i;i=Zc(i*12|0)|0;e=a+72|0;k[e>>2]=i;if(!i){k[e>>2]=0;cc(d,1,16421,w+16|0)|0;b=0;r=w;return b|0}k[a+16>>2]=(k[c+12>>2]|0)-(k[c+4>>2]|0);k[a+12>>2]=(k[c+8>>2]|0)-(k[c>>2]|0);u=c+24|0;l=k[u>>2]|0;g=k[l+24>>2]|0;h=k[l+32>>2]|0;e=a+24|0;k[e>>2]=g+-1+(h<<7);m=k[t>>2]|0;if(m>>>0>1){f=1;do{if((g|0)!=(k[l+(f*52|0)+24>>2]|0))k[e>>2]=255;f=f+1|0}while(f>>>0<m>>>0)}k[a+28>>2]=7;k[a+32>>2]=0;k[a+36>>2]=0;f=(m|0)==0;if(!f?(k[i+8>>2]=g+-1+(h<<7),m>>>0>1):0){e=1;do{k[i+(e*12|0)+8>>2]=(k[l+(e*52|0)+24>>2]|0)+-1+(k[l+(e*52|0)+32>>2]<<7);e=e+1|0}while(e>>>0<m>>>0)}e=a+40|0;a:do if(!(k[c+32>>2]|0)){k[e>>2]=1;switch(k[c+20>>2]|0){case 1:{k[a+48>>2]=16;break a}case 2:{k[a+48>>2]=17;break a}case 3:{k[a+48>>2]=18;break a}default:break a}}else{k[e>>2]=2;k[a+48>>2]=0}while(0);b:do if(!f){f=0;e=0;g=0;do{c=(j[l+(g*52|0)+48>>1]|0)==0;e=(c&1^1)+e|0;f=c?f:g;g=g+1|0}while(g>>>0<m>>>0);g=f;if((e|0)!=1){if(e>>>0<=1)break;cc(d,2,16717,n)|0;break}switch(k[a+48>>2]|0){case 18:case 16:{f=3;break}case 17:{f=1;break}default:{cc(d,2,16467,o)|0;break b}}if(m>>>0<(f+1|0)>>>0){cc(d,2,16541,p)|0;break}if(g>>>0<f>>>0){cc(d,2,16634,q)|0;break}q=Zc(8)|0;e=a+116|0;k[e>>2]=q;if(!q){cc(d,1,16782,s)|0;b=0;r=w;return b|0}s=Zc((k[t>>2]|0)*6|0)|0;c=k[e>>2]|0;k[c>>2]=s;if(!s){cc(d,1,16782,v)|0;b=0;r=w;return b|0}i=k[t>>2]|0;j[c+4>>1]=i;h=k[c>>2]|0;e=0;do{j[h+(e*6|0)>>1]=e;j[h+(e*6|0)+2>>1]=0;v=e;e=e+1|0;j[h+(v*6|0)+4>>1]=e}while((e|0)!=(f|0));if(f>>>0<i>>>0){g=k[u>>2]|0;do{v=(j[g+(f*52|0)+48>>1]|0)==0;j[h+(f*6|0)>>1]=f;e=h+(f*6|0)+2|0;if(v){j[e>>1]=-1;j[h+(f*6|0)+4>>1]=-1}else{j[e>>1]=1;j[(k[c>>2]|0)+(f*6|0)+4>>1]=0}f=f+1|0}while(f>>>0<i>>>0)}}while(0);k[a+52>>2]=0;k[a+44>>2]=0;k[a+96>>2]=k[b+18692>>2];b=1;r=w;return b|0}function Xe(a,b,c){a=a|0;b=b|0;c=c|0;return yd(k[a>>2]|0,b,c)|0}function Ye(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+8|0;if(!(Cg(k[d>>2]|0,52,c)|0)){c=0;return c|0}f=k[d>>2]|0;g=Dg(f)|0;d=Eg(f)|0;if(g){h=0;e=1;while(1){if(!e)e=0;else e=($a[k[d>>2]&63](a,b,c)|0)!=0;h=h+1|0;if((h|0)==(g|0))break;else{d=d+4|0;e=e&1}}Fg(f);if(!e){c=0;return c|0}}else Fg(f);c=jd(k[a>>2]|0,b,c)|0;return c|0}function Ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+8|0;if(!(Cg(k[d>>2]|0,53,c)|0)){c=0;return c|0}if(!(zd(k[a>>2]|0,b,c)|0)){c=0;return c|0}h=k[d>>2]|0;f=Dg(h)|0;d=Eg(h)|0;if(!f)d=1;else{g=0;e=d;d=1;while(1){if(!d)d=0;else d=($a[k[e>>2]&63](a,b,c)|0)!=0;d=d&1;g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}Fg(h);c=d;return c|0}function _e(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+4|0;if(!(Cg(k[e>>2]|0,54,d)|0)){b=0;return b|0}g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){b=0;return b|0}}else Fg(g);e=a+8|0;if(!(Cg(k[e>>2]|0,55,d)|0)){b=0;return b|0}if(!(Cg(k[e>>2]|0,56,d)|0)){b=0;return b|0}if(!(Cg(k[e>>2]|0,57,d)|0)){b=0;return b|0}if((k[a+96>>2]|0)!=0?(Cg(k[e>>2]|0,58,d)|0)==0:0){b=0;return b|0}if(!(Cg(k[e>>2]|0,59,d)|0)){b=0;return b|0}g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){b=0;return b|0}}else Fg(g);b=Ad(k[a>>2]|0,b,c,d)|0;return b|0}function $e(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b+8|0;if(!(Cg(k[j>>2]|0,52,d)|0)){a=0;return a|0}g=k[b+4>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){a=0;return a|0}}else Fg(g);g=k[j>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){a=0;return a|0}}else Fg(g);a=kd(a,k[b>>2]|0,c,d)|0;return a|0}function af(a,b,c,d,e,f,g,h,i,j,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;l=l|0;return md(k[a>>2]|0,b,c,d,e,f,g,h,i,j,l)|0}function bf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Bd(k[a>>2]|0,b,c,d,e,f)|0}function cf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return nd(k[a>>2]|0,b,c,d,e,f)|0}function df(a){a=a|0;var b=0,c=0,d=0;if(!a)return;gd(k[a>>2]|0);k[a>>2]=0;b=a+72|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+68|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+108|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}d=a+116|0;b=k[d>>2]|0;if(b){c=k[b>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b>>2]=0}cd(b);k[d>>2]=0}d=a+120|0;b=k[d>>2]|0;if(b){c=k[b+12>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+12>>2]=0}c=k[b+4>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+4>>2]=0}c=k[b+8>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b+8>>2]=0}c=k[b>>2]|0;if(c){cd(c);b=k[d>>2]|0;k[b>>2]=0}cd(b);k[d>>2]=0}b=a+4|0;c=k[b>>2]|0;if(c){Bg(c);k[b>>2]=0}b=a+8|0;c=k[b>>2]|0;if(c){Bg(c);k[b>>2]=0}cd(a);return}function ef(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return od(k[a>>2]|0,b,c,d,e,f,g)|0}function ff(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;h=r;r=r+16|0;if(!c){a=0;r=h;return a|0}cc(d,2,16826,h)|0;if(!(wd(k[a>>2]|0,b,c,d,e)|0)){cc(d,1,16303,h+8|0)|0;a=0;r=h;return a|0}g=a+108|0;if(!(mf(c,g,d)|0)){a=0;r=h;return a|0}e=k[a+48>>2]|0;a:do switch(e|0){case 16:{k[c+20>>2]=1;break}case 17:{k[c+20>>2]=2;break}case 18:{k[c+20>>2]=3;break}case 24:{k[c+20>>2]=4;break}default:{b=c+20|0;if((e|0)==12){k[b>>2]=5;break a}else{k[b>>2]=-1;break a}}}while(0);f=a+120|0;b=k[f>>2]|0;do if(b){if(k[b+12>>2]|0){nf(c,g);break}cd(k[b+4>>2]|0);cd(k[(k[f>>2]|0)+8>>2]|0);cd(k[k[f>>2]>>2]|0);b=k[f>>2]|0;e=k[b+12>>2]|0;if(e){cd(e);b=k[f>>2]|0}cd(b);k[f>>2]=0}while(0);if(k[a+116>>2]|0)of(c,g,d);b=k[g>>2]|0;if(!b){a=1;r=h;return a|0}k[c+28>>2]=b;k[c+32>>2]=k[a+112>>2];k[g>>2]=0;a=1;r=h;return a|0}function gf(a){a=a|0;var b=0;b=_c(1,136)|0;if(!b)return b|0;if(!a){a=fd()|0;k[b>>2]=a}else{a=pd()|0;k[b>>2]=a}if(!a){df(b);b=0;return b|0}a=b+108|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0;i[a+16>>0]=0;a=Ag()|0;k[b+4>>2]=a;if(!a){df(b);b=0;return b|0}a=Ag()|0;k[b+8>>2]=a;if(a)return b|0;df(b);b=0;return b|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;qd(k[a>>2]|0,b,c);return}function jf(a){a=a|0;return ud(k[a>>2]|0)|0}function kf(a){a=a|0;return td(k[a>>2]|0)|0}function lf(a,b,c){a=a|0;b=b|0;c=c|0;return xd(k[a>>2]|0,b,c)|0}function mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+80|0;A=B+72|0;z=B+64|0;y=B+56|0;x=B+48|0;w=B+40|0;v=B+32|0;u=B+24|0;s=B+16|0;n=B+8|0;h=B;d=k[b+8>>2]|0;a:do if(d){q=k[d>>2]|0;p=j[d+4>>1]|0;d=k[a+16>>2]|0;o=k[b+12>>2]|0;if((o|0)!=0?(k[o+12>>2]|0)!=0:0)b=l[o+18>>0]|0;else b=d;g=p<<16>>16==0;b:do if(!g){f=0;c:while(1){e=f&65535;d=m[q+(e*6|0)>>1]|0;if(d>>>0>=b>>>0){e=15;break}d=j[q+(e*6|0)+4>>1]|0;switch(d<<16>>16){case 0:case -1:break;default:{d=(d&65535)+-1|0;if(d>>>0>=b>>>0){e=18;break c}}}f=f+1<<16>>16;if((f&65535)>=(p&65535))break b}if((e|0)==15){k[h>>2]=d;k[h+4>>2]=b;cc(c,1,19343,h)|0;c=0;r=B;return c|0}else if((e|0)==18){k[n>>2]=d;k[n+4>>2]=b;cc(c,1,19343,n)|0;c=0;r=B;return c|0}}while(0);if(!b)d=o;else{d:do if(!g)while(1){b=b+-1|0;d=0;do{if((m[q+((d&65535)*6|0)>>1]|0)==(b|0))break;d=d+1<<16>>16}while((d&65535)<(p&65535));if(d<<16>>16==p<<16>>16)break d;if(!b){d=o;break a}}while(0);cc(c,1,19380,s)|0;c=0;r=B;return c|0}}else d=k[b+12>>2]|0;while(0);if(!d){c=1;r=B;return c|0}t=k[d+12>>2]|0;if(!t){c=1;r=B;return c|0}o=i[d+18>>0]|0;s=o&255;q=o<<24>>24==0;if(q)d=1;else{f=a+16|0;b=0;g=0;d=1;do{b=m[t+(b<<2)>>1]|0;e=k[f>>2]|0;if(b>>>0>=e>>>0){k[u>>2]=b;k[u+4>>2]=e;cc(c,1,19343,u)|0;d=0}g=g+1<<16>>16;b=g&65535}while(b>>>0<s>>>0)}p=_c(s,4)|0;if(!p){cc(c,1,19413,v)|0;c=0;r=B;return c|0}if(!q){h=0;n=0;do{e=i[t+(h<<2)+3>>0]|0;f=e&255;do if((e&255)<(o&255)){g=p+(f<<2)|0;b=i[t+(h<<2)+2>>0]|0;if((k[g>>2]|0)!=0&b<<24>>24==1){k[x>>2]=f;cc(c,1,19486,x)|0;d=0;break}if(b<<24>>24!=0|e<<24>>24==0){k[g>>2]=1;break}else{k[y>>2]=h;k[y+4>>2]=f;cc(c,1,19517,y)|0;d=0;break}}else{k[w>>2]=f;cc(c,1,19430,w)|0;d=0}while(0);n=n+1<<16>>16;h=n&65535}while(h>>>0<s>>>0);if(!q){b=0;e=0;do{if((k[p+(b<<2)>>2]|0)==0?(i[t+(b<<2)+2>>0]|0)!=0:0){k[z>>2]=b;cc(c,1,19553,z)|0;d=0}e=e+1<<16>>16;b=e&65535}while(b>>>0<s>>>0)}}if(!d){cd(p);c=0;r=B;return c|0}e:do if(!((k[a+16>>2]|0)!=1|q)){d=0;b=0;while(1){b=b+1<<16>>16;if(!(k[p+(d<<2)>>2]|0))break;d=b&65535;if(d>>>0>=s>>>0)break e}k[A>>2]=d;cc(c,2,19591,A)|0;if(!q){d=0;b=0;do{i[t+(d<<2)+2>>0]=1;i[t+(d<<2)+3>>0]=b;b=b+1<<16>>16;d=b&65535}while(d>>>0<s>>>0)}}while(0);cd(p);c=1;r=B;return c|0}function nf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=b+12|0;b=k[w>>2]|0;h=k[b+8>>2]|0;o=k[b+4>>2]|0;q=k[b>>2]|0;r=k[b+12>>2]|0;b=i[b+18>>0]|0;s=a+24|0;t=k[s>>2]|0;u=b&255;v=Zc(u*52|0)|0;if(!v)return;n=b<<24>>24==0;if(!n){f=0;g=0;do{b=j[r+(f<<2)>>1]|0;if(!(i[r+(f<<2)+2>>0]|0)){b=b&65535;c=v+(f*52|0)|0;d=t+(b*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0))}else{b=b&65535;c=v+((l[r+(f<<2)+3>>0]|0)*52|0)|0;d=t+(b*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0))}e=Zc(ha(k[t+(b*52|0)+8>>2]<<2,k[t+(b*52|0)+12>>2]|0)|0)|0;k[v+(f*52|0)+44>>2]=e;if(!e){p=7;break}k[v+(f*52|0)+24>>2]=l[h+f>>0];k[v+(f*52|0)+32>>2]=l[o+f>>0];g=g+1<<16>>16;f=g&65535}while(f>>>0<u>>>0);if((p|0)==7){cd(v);return}h=(m[(k[w>>2]|0)+16>>1]|0)+-1|0;if(!n){b=0;g=0;do{e=k[t+((m[r+(b<<2)>>1]|0)*52|0)+44>>2]|0;d=l[r+(b<<2)+3>>0]|0;f=ha(k[v+(d*52|0)+12>>2]|0,k[v+(d*52|0)+8>>2]|0)|0;if(!(i[r+(b<<2)+2>>0]|0)){b=k[v+(b*52|0)+44>>2]|0;if(f){c=0;do{k[b+(c<<2)>>2]=k[e+(c<<2)>>2];c=c+1|0}while((c|0)!=(f|0))}}else{b=k[v+(d*52|0)+44>>2]|0;if(f){c=0;do{p=k[e+(c<<2)>>2]|0;p=q+((ha((p|0)<0?0:(p|0)>(h|0)?h:p,u)|0)+d<<2)|0;k[b+(c<<2)>>2]=k[p>>2];c=c+1|0}while((c|0)!=(f|0))}}g=g+1<<16>>16;b=g&65535}while(b>>>0<u>>>0)}}c=a+16|0;d=k[c>>2]|0;if(d){b=0;e=0;do{b=k[t+(b*52|0)+44>>2]|0;if(b)cd(b);e=e+1<<16>>16;b=e&65535}while(b>>>0<d>>>0)}cd(t);k[s>>2]=v;k[c>>2]=u;cd(k[(k[w>>2]|0)+4>>2]|0);cd(k[(k[w>>2]|0)+8>>2]|0);cd(k[k[w>>2]>>2]|0);b=k[w>>2]|0;c=k[b+12>>2]|0;if(c){cd(c);b=k[w>>2]|0}cd(b);k[w>>2]=0;return}function of(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+80|0;w=y+8|0;v=y;u=y+16|0;x=b+8|0;d=k[x>>2]|0;b=k[d>>2]|0;t=j[d+4>>1]|0;if(t<<16>>16){s=a+16|0;n=a+24|0;p=1;q=0;while(1){o=j[b+(q*6|0)>>1]|0;m=o&65535;a=k[s>>2]|0;a:do if(m>>>0<a>>>0){d=j[b+(q*6|0)+4>>1]|0;switch(d<<16>>16){case -1:case 0:{j[(k[n>>2]|0)+(m*52|0)+48>>1]=j[b+(q*6|0)+2>>1]|0;break a}default:{}}h=(d&65535)+65535|0;l=h&65535;h=h&65535;if(h>>>0>=a>>>0){k[w>>2]=h;k[w+4>>2]=a;cc(c,2,19302,w)|0;break}i=b+(q*6|0)+2|0;if((m|0)!=(h|0)?(j[i>>1]|0)==0:0){d=k[n>>2]|0;a=d+(m*52|0)|0;e=u;f=a;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=a;f=d+(h*52|0)|0;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=(k[n>>2]|0)+(h*52|0)|0;f=u;g=e+52|0;do{k[e>>2]=k[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if((q+1&65535)<(t&65535)){e=p;do{d=b+(e*6|0)|0;a=j[d>>1]|0;if(a<<16>>16!=o<<16>>16){if(a<<16>>16==l<<16>>16)j[d>>1]=o}else j[d>>1]=l;e=e+1|0}while((e&65535)<<16>>16!=t<<16>>16)}}j[(k[n>>2]|0)+(m*52|0)+48>>1]=j[i>>1]|0}else{k[v>>2]=m;k[v+4>>2]=a;cc(c,2,19262,v)|0}while(0);q=q+1|0;if((q&65535)<<16>>16==t<<16>>16)break;else p=p+1|0}b=k[x>>2]|0;d=b;b=k[b>>2]|0}if(!b){w=d;cd(w);k[x>>2]=0;r=y;return}else{cd(b);w=k[x>>2]|0;cd(w);k[x>>2]=0;r=y;return}}function pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=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;H=r;r=r+192|0;y=H+152|0;x=H+144|0;w=H+136|0;v=H+128|0;u=H+120|0;D=H+88|0;s=H+80|0;p=H+64|0;o=H+48|0;F=H+40|0;z=H+32|0;E=H+24|0;t=H+16|0;q=H+8|0;m=H+176|0;n=H+168|0;C=H+156|0;d=_c(1,1024)|0;if(!d){cc(c,1,17098,H)|0;G=0;r=H;return G|0}l=m+4|0;A=C+4|0;B=a+100|0;j=1024;a:while(1){if((Wb(b,m,8,c)|0)!=8)break;while(1){Ab(m,C,4);Ab(l,A,4);switch(k[C>>2]|0){case 0:{e=_b(b)|0;i=L;if((i|0)>0|(i|0)==0&e>>>0>4294967287){G=6;break a}k[C>>2]=e+8;h=8;break}case 1:{if((Wb(b,m,8,c)|0)!=8)break a;Ab(m,n,4);if(k[n>>2]|0){G=10;break a}Ab(l,C,4);h=16;break}default:h=8}f=k[A>>2]|0;if((f|0)==1785737827){G=13;break a}e=k[C>>2]|0;if(!e){G=17;break a}if(e>>>0<h>>>0){G=19;break a}if((f|0)==1783636e3){g=1084;f=h;G=22;break}if((f|0)==1718909296){g=1092;f=h;G=22;break}i=(f|0)==1785737832;b:do if((f|0)!=1768449138)if((f|0)!=1668246642)if((f|0)!=1651532643)if((f|0)!=1885564018)if((f|0)!=1668112752){g=(f|0)==1667523942?1148:0;e=e-h|0;if((f|0)<1785737832)switch(f|0){case 1667523942:{G=30;break b}default:{}}else switch(f|0){case 1785737832:{G=30;break b}default:{}}f=k[B>>2]|0;if(!(f&1)){G=45;break a}if(!(f&2)){G=47;break a}k[B>>2]=f|2147483647;i=$b(b,e,0,c)|0;if(!((i|0)==(e|0)&(L|0)==0)){G=50;break a}}else{g=1140;G=28}else{g=1132;G=28}else{g=1124;G=28}else{g=1116;G=28}else{g=1108;G=28}while(0);if((G|0)==28){e=e-h|0;G=30}if((G|0)==30){G=0;if(i){g=1100;break}k[o>>2]=f>>>24;k[o+4>>2]=f>>>16&255;k[o+8>>2]=f>>>8&255;k[o+12>>2]=f&255;cc(c,2,17282,o)|0;if(k[B>>2]&4)break;i=k[A>>2]|0;k[p>>2]=i>>>24;k[p+4>>2]=i>>>16&255;k[p+8>>2]=i>>>8&255;k[p+12>>2]=i&255;cc(c,2,17333,p)|0;k[B>>2]=k[B>>2]|2147483647;i=$b(b,e,0,c)|0;if(!((i|0)==(e|0)&(L|0)==0)){G=33;break a}}if((Wb(b,m,8,c)|0)!=8)break a}if((G|0)==22){G=0;e=e-f|0}i=_b(b)|0;h=L;if(0>(h|0)|0==(h|0)&e>>>0>i>>>0){G=35;break}if(e>>>0>j>>>0){f=bd(d,e)|0;if(!f){G=38;break}else{d=f;f=e}}else f=j;if((Wb(b,d,e,c)|0)!=(e|0)){G=40;break}if(!(hb[k[g+4>>2]&63](a,d,e,c)|0)){G=43;break}else j=f}switch(G|0){case 6:{cc(c,1,17148,q)|0;break}case 10:{cc(c,1,17148,t)|0;break}case 13:{e=k[B>>2]|0;if(!(e&4)){cc(c,1,17190,E)|0;cd(d);G=0;r=H;return G|0}else{k[B>>2]=e|8;cd(d);G=1;r=H;return G|0}}case 17:{cc(c,1,17218,z)|0;cd(d);G=0;r=H;return G|0}case 19:{k[F>>2]=e;k[F+4>>2]=f;cc(c,1,17256,F)|0;cd(d);G=0;r=H;return G|0}case 33:{cc(c,1,17399,s)|0;cd(d);G=0;r=H;return G|0}case 35:{E=k[C>>2]|0;F=k[A>>2]|0;G=_b(b)|0;k[D>>2]=E;k[D+4>>2]=F>>>24;k[D+8>>2]=F>>>16&255;k[D+12>>2]=F>>>8&255;k[D+16>>2]=F&255;k[D+20>>2]=e;k[D+24>>2]=G;cc(c,1,17449,D)|0;cd(d);G=0;r=H;return G|0}case 38:{cd(d);cc(c,1,17525,u)|0;G=0;r=H;return G|0}case 40:{cc(c,1,17567,v)|0;cd(d);G=0;r=H;return G|0}case 43:{cd(d);G=0;r=H;return G|0}case 45:{cc(c,1,17616,w)|0;cd(d);G=0;r=H;return G|0}case 47:{cc(c,1,17686,x)|0;cd(d);G=0;r=H;return G|0}case 50:{cc(c,1,17399,y)|0;cd(d);G=0;r=H;return G|0}}cd(d);G=1;r=H;return G|0}function qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=r;r=r+32|0;f=g+24|0;d=Zb(b)|0;e=L;a=a+80|0;h=a;h=Yi(d|0,e|0,k[h>>2]|0,k[h+4>>2]|0)|0;zb(f,h,4);zb(f+4|0,1785737827,4);if(!(ac(b,k[a>>2]|0,k[a+4>>2]|0,c)|0)){cc(c,1,17067,g)|0;h=0;r=g;return h|0}if((Xb(b,f,8,c)|0)!=8){cc(c,1,17067,g+8|0)|0;h=0;r=g;return h|0}if(ac(b,d,e,c)|0){h=1;r=g;return h|0}cc(c,1,17067,g+16|0)|0;h=0;r=g;return h|0}function rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;c=((k[a>>2]|0)!=0?(k[a+104>>2]|k[a+100>>2]|0)==0:0)&(k[a+8>>2]|0)!=0&(k[a+4>>2]|0)!=0&(k[a+64>>2]|0)!=0&(k[a+16>>2]|0)!=0&(k[a+12>>2]|0)!=0&1;d=k[a+20>>2]|0;if(!d){f=c;a=a+40|0;a=k[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=bc(b)|0;b=b&f;a=b&a;return a|0}e=k[a+72>>2]|0;f=0;do{c=(k[e+(f*12|0)+8>>2]&126)>>>0<38&c;f=f+1|0}while(f>>>0<d>>>0);a=a+40|0;a=k[a>>2]|0;a=a+-1|0;a=a>>>0<2;a=a&1;b=bc(b)|0;b=b&c;a=b&a;return a|0}function sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=r;r=r+16|0;d=a;zb(d,12,4);zb(d+4|0,1783636e3,4);zb(d+8|0,218793738,4);c=(Xb(b,d,12,c)|0)==12&1;r=a;return c|0}function tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;i=j+8|0;e=a+64|0;g=(k[e>>2]<<2)+16|0;h=_c(1,g)|0;if(!h){cc(c,1,16987,j)|0;i=0;r=j;return i|0}zb(h,g,4);zb(h+4|0,1718909296,4);zb(h+8|0,k[a+56>>2]|0,4);zb(h+12|0,k[a+60>>2]|0,4);f=h+16|0;if(k[e>>2]|0){a=a+68|0;d=0;do{zb(f,k[(k[a>>2]|0)+(d<<2)>>2]|0,4);d=d+1|0}while(d>>>0<(k[e>>2]|0)>>>0)}a=(Xb(b,h,g,c)|0)==(g|0);if(!a)cc(c,1,17026,i)|0;cd(h);i=a&1;r=j;return i|0}function uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;p=r;r=r+80|0;n=p+16|0;l=p+8|0;i=p;e=p+24|0;j=p+72|0;d=e;f=d+48|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(f|0));o=(k[a+24>>2]|0)==255;k[e>>2]=2;d=e+12|0;if(o){k[d>>2]=3;k[e+24>>2]=4;d=3}else{k[d>>2]=4;d=2}if(!(k[a+116>>2]|0))o=d;else{k[e+(d*12|0)>>2]=5;o=d+1|0}zb(j+4|0,1785737832,4);g=0;h=e;d=8;while(1){f=h+8|0;q=ib[k[h>>2]&7](a,f)|0;k[h+4>>2]=q;if(!q){m=8;break}d=(k[f>>2]|0)+d|0;g=g+1|0;if((g|0)>=(o|0))break;else h=h+12|0}if((m|0)==8){cc(c,1,16901,i)|0;f=0;while(1){d=k[e+4>>2]|0;if(d)cd(d);f=f+1|0;if((f|0)>=(o|0)){d=0;break}else e=e+12|0}r=p;return d|0}zb(j,d,4);a:do if((Xb(b,j,8,c)|0)==8){d=0;f=e;while(1){q=f+8|0;m=Xb(b,k[f+4>>2]|0,k[q>>2]|0,c)|0;if((m|0)!=(k[q>>2]|0))break;d=d+1|0;if((d|0)>=(o|0)){d=1;break a}else f=f+12|0}cc(c,1,16944,n)|0;d=0}else{cc(c,1,16944,l)|0;d=0}while(0);g=0;while(1){f=k[e+4>>2]|0;if(f)cd(f);g=g+1|0;if((g|0)>=(o|0))break;else e=e+12|0}r=p;return d|0}function vf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Zb(b)|0;a=a+88|0;k[a>>2]=d;k[a+4>>2]=L;b=$b(b,24,0,c)|0;return (b|0)==24&(L|0)==0&1|0}function wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Zb(b)|0;a=a+80|0;k[a>>2]=d;k[a+4>>2]=L;b=$b(b,8,0,c)|0;return (b|0)==8&(L|0)==0&1|0}function xf(a,b){a=a|0;b=b|0;var c=0;c=_c(1,22)|0;if(!c){b=0;return b|0}zb(c,22,4);zb(c+4|0,1768449138,4);zb(c+8|0,k[a+16>>2]|0,4);zb(c+12|0,k[a+12>>2]|0,4);zb(c+16|0,k[a+20>>2]|0,2);zb(c+18|0,k[a+24>>2]|0,1);zb(c+19|0,k[a+28>>2]|0,1);zb(c+20|0,k[a+32>>2]|0,1);zb(c+21|0,k[a+36>>2]|0,1);k[b>>2]=22;b=c;return b|0}function yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=a+20|0;f=(k[e>>2]|0)+8|0;g=_c(1,f)|0;if(!g){b=0;return b|0}zb(g,f,4);zb(g+4|0,1651532643,4);if(k[e>>2]|0){a=a+72|0;c=0;d=g+8|0;while(1){zb(d,k[(k[a>>2]|0)+(c*12|0)+8>>2]|0,1);c=c+1|0;if(c>>>0>=(k[e>>2]|0)>>>0)break;else d=d+1|0}}k[b>>2]=f;b=g;return b|0}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=a+40|0;switch(k[c>>2]|0){case 1:{h=15;break}case 2:{h=(k[a+112>>2]|0)+11|0;break}default:{b=0;return b|0}}g=_c(1,h)|0;if(!g){b=0;return b|0}zb(g,h,4);zb(g+4|0,1668246642,4);zb(g+8|0,k[c>>2]|0,1);zb(g+9|0,k[a+52>>2]|0,1);zb(g+10|0,k[a+44>>2]|0,1);e=g+11|0;switch(k[c>>2]|0){case 1:{zb(e,k[a+48>>2]|0,4);break}case 2:{f=a+112|0;if(k[f>>2]|0){a=a+108|0;d=0;c=e;while(1){zb(c,l[(k[a>>2]|0)+d>>0]|0,1);d=d+1|0;if(d>>>0>=(k[f>>2]|0)>>>0)break;else c=c+1|0}}break}default:{}}k[b>>2]=h;b=g;return b|0}function Af(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=a+116|0;g=((m[(k[f>>2]|0)+4>>1]|0)*6|0)+10|0;h=Zc(g)|0;if(!h){b=0;return b|0}zb(h,g,4);zb(h+4|0,1667523942,4);zb(h+8|0,m[(k[f>>2]|0)+4>>1]|0,2);a=k[f>>2]|0;if(j[a+4>>1]|0){d=0;c=0;e=h+10|0;while(1){zb(e,m[(k[a>>2]|0)+(d*6|0)>>1]|0,2);zb(e+2|0,m[(k[k[f>>2]>>2]|0)+(d*6|0)+2>>1]|0,2);zb(e+4|0,m[(k[k[f>>2]>>2]|0)+(d*6|0)+4>>1]|0,2);c=c+1<<16>>16;a=k[f>>2]|0;if((c&65535)>=(m[a+4>>1]|0))break;else{d=c&65535;e=e+6|0}}}k[b>>2]=g;b=h;return b|0}function Bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+32|0;e=f+16|0;if((c|0)!=14){cc(d,1,18507,f)|0;e=0;r=f;return e|0}Ab(b,a+16|0,4);Ab(b+4|0,a+12|0,4);c=a+20|0;Ab(b+8|0,c,2);c=_c(k[c>>2]|0,12)|0;k[a+72>>2]=c;if(!c){cc(d,1,18540,f+8|0)|0;e=0;r=f;return e|0}Ab(b+10|0,a+24|0,1);c=a+28|0;Ab(b+11|0,c,1);c=k[c>>2]|0;if((c|0)!=7){k[e>>2]=c;cc(d,4,18589,e)|0}Ab(b+12|0,a+32|0,1);Ab(b+13|0,a+36|0,1);e=1;r=f;return e|0}function Cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;x=r;r=r+80|0;g=x+40|0;t=x+32|0;j=x+24|0;h=x+16|0;u=x+72|0;s=x+68|0;o=x+64|0;p=x+60|0;m=x+56|0;q=x+52|0;n=x+48|0;l=x+44|0;if(c>>>0<3){cc(d,1,18180,x)|0;w=0;r=x;return w|0}v=a+108|0;w=a+124|0;if(i[w>>0]|0){cc(d,4,18212,x+8|0)|0;w=1;r=x;return w|0}f=a+40|0;Ab(b,f,1);Ab(b+1|0,a+52|0,1);Ab(b+2|0,a+44|0,1);e=b+3|0;f=k[f>>2]|0;switch(f|0){case 1:{if(c>>>0<7){k[h>>2]=c;cc(d,1,18321,h)|0;w=0;r=x;return w|0}f=a+48|0;if(c>>>0>7?(k[f>>2]|0)!=14:0){k[j>>2]=c;cc(d,2,18321,j)|0}Ab(e,f,4);if((k[f>>2]|0)==14){e=Zc(36)|0;k[e>>2]=14;k[n>>2]=0;k[m>>2]=0;k[o>>2]=0;k[q>>2]=0;k[p>>2]=0;k[s>>2]=0;k[l>>2]=4470064;f=e+4|0;k[f>>2]=1145390592;switch(c|0){case 35:{Ab(b+7|0,s,4);Ab(b+11|0,o,4);Ab(b+15|0,p,4);Ab(b+19|0,m,4);Ab(b+23|0,q,4);Ab(b+27|0,n,4);Ab(b+31|0,l,4);k[f>>2]=0;break}case 7:break;default:{k[t>>2]=c;cc(d,2,18357,t)|0}}k[e+8>>2]=k[s>>2];k[e+16>>2]=k[p>>2];k[e+24>>2]=k[q>>2];k[e+12>>2]=k[o>>2];k[e+20>>2]=k[m>>2];k[e+28>>2]=k[n>>2];k[e+32>>2]=k[l>>2];k[v>>2]=e;k[a+112>>2]=0}i[w>>0]=1;w=1;r=x;return w|0}case 2:{g=c+-3|0;f=a+112|0;k[f>>2]=g;a=_c(1,g)|0;k[v>>2]=a;if(!a){k[f>>2]=0;w=0;r=x;return w|0}if((c|0)>3){f=0;while(1){Ab(e,u,1);i[(k[v>>2]|0)+f>>0]=k[u>>2];f=f+1|0;if((f|0)==(g|0))break;else e=e+1|0}}i[w>>0]=1;w=1;r=x;return w|0}default:{if(f>>>0<=2){w=1;r=x;return w|0}k[g>>2]=f;cc(d,4,18401,g)|0;w=1;r=x;return w|0}}return 0}function Df(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+16|0;f=h;e=k[a+24>>2]|0;if((e|0)!=255){k[f>>2]=e;cc(d,2,18034,f)|0}g=a+20|0;if((k[g>>2]|0)!=(c|0)){cc(d,1,18148,h+8|0)|0;g=0;r=h;return g|0}if(!c){g=1;r=h;return g|0}f=a+72|0;e=0;while(1){Ab(b,(k[f>>2]|0)+(e*12|0)+8|0,1);e=e+1|0;if(e>>>0>=(k[g>>2]|0)>>>0){b=1;break}else b=b+1|0}r=h;return b|0}function Ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+16|0;e=q;p=q+12|0;f=a+120|0;if(c>>>0<3|(k[f>>2]|0)!=0){c=0;r=q;return c|0}Ab(b,p,2);g=k[p>>2]|0;o=g&65535;if((o+-1|0)>>>0>1023){k[e>>2]=o;cc(d,1,17951,e)|0;c=0;r=q;return c|0}Ab(b+2|0,p,1);n=k[p>>2]&65535;if(!n){cc(d,1,17989,q+8|0)|0;c=0;r=q;return c|0}if((n+3|0)>>>0>c>>>0){c=0;r=q;return c|0}e=Zc(ha(o<<2,n)|0)|0;if(!e){c=0;r=q;return c|0}m=Zc(n)|0;if(!m){cd(e);c=0;r=q;return c|0}h=Zc(n)|0;if(!h){cd(e);cd(m);c=0;r=q;return c|0}a=Zc(20)|0;if(!a){cd(e);cd(m);cd(h);c=0;r=q;return c|0}k[a+4>>2]=h;k[a+8>>2]=m;k[a>>2]=e;j[a+16>>1]=g;i[a+18>>0]=k[p>>2];k[a+12>>2]=0;k[f>>2]=a;a=b+3|0;d=0;f=0;do{Ab(a,p,1);a=a+1|0;i[m+d>>0]=(k[p>>2]&127)+1;i[h+d>>0]=(k[p>>2]|0)>>>7&1;f=f+1<<16>>16;d=f&65535}while(d>>>0<n>>>0);if(!o){c=1;r=q;return c|0}d=0;a:while(1){g=0;f=e;h=0;while(1){e=((l[m+g>>0]|0)+7|0)>>>3;e=e>>>0>4?4:e;if((a-b+e|0)>(c|0)){a=0;e=22;break a}Ab(a,p,e);a=a+e|0;k[f>>2]=k[p>>2];e=f+4|0;h=h+1<<16>>16;g=h&65535;if(g>>>0>=n>>>0)break;else f=e}d=d+1<<16>>16;if((d&65535)>>>0>=o>>>0){a=1;e=22;break}}if((e|0)==22){r=q;return a|0}return 0}function Ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h+20|0;f=a+120|0;a=k[f>>2]|0;if(!a){cc(d,1,17841,h)|0;g=0;r=h;return g|0}if(k[a+12>>2]|0){cc(d,1,17887,h+8|0)|0;g=0;r=h;return g|0}e=i[a+18>>0]|0;a=(e&255)<<2;if(a>>>0>c>>>0){cc(d,1,17918,h+16|0)|0;g=0;r=h;return g|0}d=Zc(a)|0;if(!d){g=0;r=h;return g|0}if(e<<24>>24){a=b;c=0;while(1){Ab(a,g,2);j[d+(c<<2)>>1]=k[g>>2];Ab(a+2|0,g,1);i[d+(c<<2)+2>>0]=k[g>>2];Ab(a+3|0,g,1);i[d+(c<<2)+3>>0]=k[g>>2];c=c+1|0;if((c&255)<<24>>24==e<<24>>24)break;else a=a+4|0}}k[(k[f>>2]|0)+12>>2]=d;g=1;r=h;return g|0}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;g=h+20|0;f=a+116|0;if(k[f>>2]|0){g=0;r=h;return g|0}if(c>>>0<2){cc(d,1,17747,h)|0;g=0;r=h;return g|0}Ab(b,g,2);a=k[g>>2]|0;e=a&65535;if(!e){cc(d,1,17780,h+8|0)|0;g=0;r=h;return g|0}if(((e*6|0)+2|0)>>>0>c>>>0){cc(d,1,17747,h+16|0)|0;g=0;r=h;return g|0}c=Zc(a*6|0)|0;if(!c){g=0;r=h;return g|0}a=Zc(8)|0;k[f>>2]=a;if(!a){cd(c);g=0;r=h;return g|0}k[a>>2]=c;d=k[g>>2]&65535;j[a+4>>1]=d;if(!(d<<16>>16)){g=1;r=h;return g|0}else{e=0;a=b}do{b=e&65535;Ab(a+2|0,g,2);j[c+(b*6|0)>>1]=k[g>>2];Ab(a+4|0,g,2);a=a+6|0;j[c+(b*6|0)+2>>1]=k[g>>2];Ab(a,g,2);j[c+(b*6|0)+4>>1]=k[g>>2];e=e+1<<16>>16}while((e&65535)<(m[(k[f>>2]|0)+4>>1]|0));a=1;r=h;return a|0}function Hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+32|0;e=f+20|0;a=a+100|0;if(k[a>>2]|0){cc(d,1,19130,f)|0;d=0;r=f;return d|0}if((c|0)!=4){cc(d,1,19184,f+8|0)|0;d=0;r=f;return d|0}Ab(b,e,4);if((k[e>>2]|0)==218793738){k[a>>2]=k[a>>2]|1;d=1;r=f;return d|0}else{cc(d,1,19218,f+16|0)|0;d=0;r=f;return d|0}return 0}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+32|0;f=h+24|0;g=a+100|0;if((k[g>>2]|0)!=1){cc(d,1,19011,h)|0;g=0;r=h;return g|0}if(c>>>0<8){cc(d,1,19061,h+8|0)|0;g=0;r=h;return g|0}Ab(b,a+56|0,4);Ab(b+4|0,a+60|0,4);b=b+8|0;c=c+-8|0;if(c&3){cc(d,1,19061,h+16|0)|0;g=0;r=h;return g|0}c=c>>>2;e=a+64|0;k[e>>2]=c;if(c){c=_c(c,4)|0;k[a+68>>2]=c;if(!c){cc(d,1,19097,f)|0;g=0;r=h;return g|0}if(k[e>>2]|0){a=a+68|0;c=0;while(1){Ab(b,(k[a>>2]|0)+(c<<2)|0,4);c=c+1|0;if(c>>>0>=(k[e>>2]|0)>>>0)break;else b=b+4|0}}}k[g>>2]=k[g>>2]|2;g=1;r=h;return g|0}function Jf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+96|0;y=A+72|0;s=A+64|0;q=A+56|0;p=A+48|0;w=A+40|0;v=A+32|0;u=A+24|0;t=A+16|0;o=A+8|0;m=A+80|0;n=A+76|0;x=a+100|0;if(!(k[x>>2]&2)){cc(d,1,18679,A)|0;z=0;r=A;return z|0}l=a+104|0;k[l>>2]=0;do if(c){i=b;b=0;a:while(1){if(c>>>0<8){z=6;break}Ab(i,m,4);e=k[m>>2]|0;Ab(i+4|0,m,4);h=k[m>>2]|0;switch(e|0){case 0:{z=14;break a}case 1:{if(c>>>0<16){z=9;break a}Ab(i+8|0,n,4);if(k[n>>2]|0){z=11;break a}Ab(i+12|0,m,4);e=k[m>>2]|0;if(!e){z=13;break a}else f=16;break}default:f=8}if(e>>>0<f>>>0){z=16;break}if(c>>>0<e>>>0){z=19;break}g=(h|0)==1768449138;if(!g)if((h|0)!=1668246642)if((h|0)!=1651532643)if((h|0)!=1885564018)if((h|0)!=1668112752)if((h|0)==1667523942){j=1148;z=26}else k[l>>2]=k[l>>2]|2147483647;else{j=1140;z=26}else{j=1132;z=26}else{j=1124;z=26}else{j=1116;z=26}else{j=1108;z=26}if((z|0)==26?(z=0,(hb[k[j+4>>2]&63](a,i+f|0,e-f|0,d)|0)==0):0){b=0;z=32;break}b=g?1:b;if((c|0)==(e|0)){z=29;break}else{i=i+e|0;c=c-e|0}}if((z|0)==6)cc(d,1,18724,o)|0;else if((z|0)==9)cc(d,1,18764,t)|0;else if((z|0)==11)cc(d,1,17148,u)|0;else if((z|0)==13)cc(d,1,17218,v)|0;else if((z|0)==14)cc(d,1,17218,w)|0;else if((z|0)==16)cc(d,1,18808,p)|0;else if((z|0)==19){cc(d,1,18880,s)|0;z=0;r=A;return z|0}else if((z|0)==29){if(!b)break;k[x>>2]=k[x>>2]|4;z=1;r=A;return z|0}else if((z|0)==32){r=A;return b|0}cc(d,1,18837,q)|0;z=0;r=A;return z|0}while(0);cc(d,1,18952,y)|0;z=0;r=A;return z|0}function Kf(){return 8}function Lf(){return 32}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!d)return;else e=0;do{l=a+(e<<2)|0;h=k[l>>2]|0;i=b+(e<<2)|0;g=k[i>>2]|0;f=c+(e<<2)|0;j=k[f>>2]|0;k[l>>2]=(g<<1)+h+j>>2;k[i>>2]=j-g;k[f>>2]=h-g;e=e+1|0}while((e|0)!=(d|0));return}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!d)return;else e=0;do{j=a+(e<<2)|0;i=b+(e<<2)|0;g=k[i>>2]|0;f=c+(e<<2)|0;l=k[f>>2]|0;h=(k[j>>2]|0)-(l+g>>2)|0;k[j>>2]=h+l;k[i>>2]=h;k[f>>2]=h+g;e=e+1|0}while((e|0)!=(d|0));return}function Of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!d)return;else e=0;do{o=a+(e<<2)|0;u=k[o>>2]|0;j=b+(e<<2)|0;t=k[j>>2]|0;f=c+(e<<2)|0;s=k[f>>2]|0;i=((u|0)<0)<<31>>31;q=hj(u|0,i|0,2449,0)|0;q=aj(q|0,L|0,4096,0)|0;q=bj(q|0,L|0,13)|0;h=((t|0)<0)<<31>>31;r=hj(t|0,h|0,4809,0)|0;r=aj(r|0,L|0,4096,0)|0;r=bj(r|0,L|0,13)|0;g=((s|0)<0)<<31>>31;p=hj(s|0,g|0,934,0)|0;p=aj(p|0,L|0,4096,0)|0;p=bj(p|0,L|0,13)|0;l=hj(u|0,i|0,1382,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=hj(t|0,h|0,2714,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;n=$i(s|0,g|0,12)|0;n=aj(n|0,L|0,4096,0)|0;n=bj(n|0,L|0,13)|0;i=$i(u|0,i|0,12)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;h=hj(t|0,h|0,3430,0)|0;h=aj(h|0,L|0,4096,0)|0;h=bj(h|0,L|0,13)|0;g=hj(s|0,g|0,666,0)|0;g=aj(g|0,L|0,4096,0)|0;g=bj(g|0,L|0,13)|0;k[o>>2]=r+q+p;k[j>>2]=n-(m+l);k[f>>2]=i-h-g;e=e+1|0}while((e|0)!=(d|0));return}function Pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0.0,h=0.0,i=0,j=0.0,k=0;if(!d)return;else e=0;do{k=a+(e<<2)|0;h=+o[k>>2];i=b+(e<<2)|0;g=+o[i>>2];f=c+(e<<2)|0;j=+o[f>>2];o[k>>2]=h+j*1.4019999504089355;o[i>>2]=h-g*.3441300094127655-j*.714139997959137;o[f>>2]=h+g*1.7719999551773071;e=e+1|0}while((e|0)!=(d|0));return}function Qf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,p=0,q=0;f=ha(d,d)|0;n=Zc(f+d<<2)|0;if(!n){d=0;return d|0}if(f){g=0;e=a;while(1){k[n+(g+d<<2)>>2]=~~(+o[e>>2]*8192.0);g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}if(b){l=(d|0)==0;m=0;do{if(!l){e=0;do{k[n+(e<<2)>>2]=k[k[c+(e<<2)>>2]>>2];e=e+1|0}while((e|0)!=(d|0));if(!l){a=0;i=n;do{i=i+(d<<2)|0;f=c+(a<<2)|0;e=k[f>>2]|0;k[e>>2]=0;g=0;h=0;j=i;while(1){p=k[j>>2]|0;q=k[n+(h<<2)>>2]|0;p=hj(q|0,((q|0)<0)<<31>>31|0,p|0,((p|0)<0)<<31>>31|0)|0;p=aj(p|0,L|0,4096,0)|0;p=bj(p|0,L|0,13)|0;g=p+g|0;k[e>>2]=g;h=h+1|0;if((h|0)==(d|0))break;else j=j+4|0}k[f>>2]=e+4;a=a+1|0}while((a|0)!=(d|0))}}m=m+1|0}while((m|0)!=(b|0))}cd(n);q=1;return q|0}function Rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;l=Zc(d<<3)|0;if(!l){d=0;return d|0}if(b){m=(d|0)==0;n=0;do{if(!m){e=0;do{k[l+(e<<2)>>2]=k[k[c+(e<<2)>>2]>>2];e=e+1|0}while((e|0)!=(d|0));if(!m){i=0;j=a;while(1){e=l+(i+d<<2)|0;o[e>>2]=0.0;f=0.0;g=0;h=j;while(1){f=f+ +o[h>>2]*+o[l+(g<<2)>>2];o[e>>2]=f;g=g+1|0;if((g|0)==(d|0))break;else h=h+4|0}g=c+(i<<2)|0;h=k[g>>2]|0;k[g>>2]=h+4;o[h>>2]=f;i=i+1|0;if((i|0)==(d|0))break;else j=j+(d<<2)|0}}}n=n+1|0}while((n|0)!=(b|0))}cd(l);d=1;return d|0}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0,i=0.0;if(!b)return;else h=0;do{g=a+(h<<3)|0;p[g>>3]=0.0;d=0.0;e=0;f=h;while(1){i=+o[c+(f<<2)>>2];d=d+i*i;e=e+1|0;if((e|0)==(b|0))break;else f=f+b|0}i=+X(+d);p[g>>3]=i;h=h+1|0}while((h|0)!=(b|0));return}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+32|0;B=F+28|0;w=F+24|0;x=F+20|0;y=F+16|0;z=F+12|0;A=F+8|0;h=F+4|0;j=F;d=b+76|0;D=k[d>>2]|0;C=D+(c*5640|0)+420|0;E=(k[C>>2]|0)+1|0;l=a+16|0;v=Zc((k[l>>2]|0)*528|0)|0;if(!v){E=0;r=F;return E|0}u=Zc(k[l>>2]<<2)|0;if(!u){cd(v);E=0;r=F;return E|0}d=Zf(a,k[d>>2]|0,c)|0;if(!d){cd(v);cd(u);E=0;r=F;return E|0}e=k[l>>2]|0;if(e){f=0;g=v;while(1){k[u+(f<<2)>>2]=g;f=f+1|0;if(f>>>0>=e>>>0)break;else g=g+528|0}}_f(a,b,c,x,y,z,A,h,j,w,B,u);s=k[w>>2]|0;p=ha(k[l>>2]|0,s)|0;q=ha(k[B>>2]|0,p)|0;t=D+(c*5640|0)+8|0;o=_c(ha((k[t>>2]|0)+1|0,q)|0,2)|0;f=d+4|0;k[f>>2]=o;if(!o){cd(v);cd(u);e=k[f>>2]|0;if(e){cd(e);k[f>>2]=0}if(E){a=d;m=0;while(1){l=a+196|0;e=k[l>>2]|0;if(e){b=a+192|0;f=k[b>>2]|0;if(f){j=0;while(1){g=e+12|0;h=k[g>>2]|0;if(h){cd(h);k[g>>2]=0;f=k[b>>2]|0}j=j+1|0;if(j>>>0>=f>>>0)break;else e=e+16|0}e=k[l>>2]|0}cd(e);k[l>>2]=0}m=m+1|0;if((m|0)==(E|0))break;else a=a+232|0}}cd(d);E=0;r=F;return E|0}e=k[d+196>>2]|0;o=k[a+24>>2]|0;k[d+200>>2]=k[x>>2];k[d+204>>2]=k[z>>2];k[d+208>>2]=k[y>>2];k[d+212>>2]=k[A>>2];k[d+20>>2]=1;k[d+16>>2]=s;k[d+12>>2]=p;k[d+8>>2]=q;l=k[d+192>>2]|0;if(l){a=0;b=o;while(1){g=k[e+12>>2]|0;f=k[u+(a<<2)>>2]|0;k[e>>2]=k[b>>2];k[e+4>>2]=k[b+4>>2];j=k[e+8>>2]|0;if(j){h=0;while(1){k[g>>2]=k[f>>2];k[g+4>>2]=k[f+4>>2];k[g+8>>2]=k[f+8>>2];k[g+12>>2]=k[f+12>>2];h=h+1|0;if(h>>>0>=j>>>0)break;else{f=f+16|0;g=g+16|0}}}a=a+1|0;if(a>>>0>=l>>>0)break;else{e=e+16|0;b=b+52|0}}}if(E>>>0>1){l=d;n=1;do{e=k[l+428>>2]|0;k[l+432>>2]=k[x>>2];k[l+436>>2]=k[z>>2];k[l+440>>2]=k[y>>2];k[l+444>>2]=k[A>>2];k[l+252>>2]=1;k[l+248>>2]=s;k[l+244>>2]=p;k[l+240>>2]=q;a=k[l+424>>2]|0;if(a){m=0;b=o;while(1){g=k[e+12>>2]|0;f=k[u+(m<<2)>>2]|0;k[e>>2]=k[b>>2];k[e+4>>2]=k[b+4>>2];j=k[e+8>>2]|0;if(j){h=0;while(1){k[g>>2]=k[f>>2];k[g+4>>2]=k[f+4>>2];k[g+8>>2]=k[f+8>>2];k[g+12>>2]=k[f+12>>2];h=h+1|0;if(h>>>0>=j>>>0)break;else{f=f+16|0;g=g+16|0}}}m=m+1|0;if(m>>>0>=a>>>0)break;else{e=e+16|0;b=b+52|0}}}k[l+236>>2]=k[l+4>>2];l=l+232|0;n=n+1|0}while((n|0)!=(E|0))}cd(v);cd(u);l=k[w>>2]|0;if(!(i[D+(c*5640|0)+5636>>0]&4)){b=k[B>>2]|0;j=(k[C>>2]|0)+1|0;if(!j){E=d;r=F;return E|0}h=k[D+(c*5640|0)+4>>2]|0;e=k[t>>2]|0;f=d;g=0;while(1){k[f+80>>2]=h;k[f+40>>2]=1;k[f+44>>2]=0;k[f+48>>2]=0;k[f+64>>2]=0;k[f+68>>2]=0;k[f+56>>2]=b;k[f+60>>2]=k[f+192>>2];k[f+52>>2]=e;k[f+72>>2]=l;g=g+1|0;if((g|0)==(j|0))break;else f=f+232|0}r=F;return d|0}else{g=(k[C>>2]|0)+1|0;if(!g){E=d;r=F;return E|0}h=d;e=D+(c*5640|0)+424|0;f=0;while(1){k[h+80>>2]=k[e+36>>2];k[h+40>>2]=1;k[h+44>>2]=k[e>>2];k[h+48>>2]=k[e+4>>2];k[h+64>>2]=0;k[h+68>>2]=0;k[h+56>>2]=k[e+12>>2];k[h+60>>2]=k[e+16>>2];k[h+52>>2]=k[e+8>>2];k[h+72>>2]=l;f=f+1|0;if((f|0)==(g|0))break;else{h=h+232|0;e=e+148|0}}r=F;return d|0}return 0}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;if(!a)return;c=a+4|0;d=k[c>>2]|0;if(d){cd(d);k[c>>2]=0}if(b){j=a;l=0;while(1){i=j+196|0;c=k[i>>2]|0;if(c){h=j+192|0;d=k[h>>2]|0;if(d){g=0;while(1){e=c+12|0;f=k[e>>2]|0;if(f){cd(f);k[e>>2]=0;d=k[h>>2]|0}g=g+1|0;if(g>>>0>=d>>>0)break;else c=c+16|0}c=k[i>>2]|0}cd(c);k[i>>2]=0}l=l+1|0;if((l|0)==(b|0))break;else j=j+232|0}}cd(a);return}function Vf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=r;r=r+32|0;G=L+28|0;F=L+24|0;B=L+20|0;C=L+16|0;D=L+12|0;E=L+8|0;H=L+4|0;I=L;J=b+76|0;x=k[J>>2]|0;K=(k[x+(c*5640|0)+420>>2]|0)+1|0;A=a+16|0;z=Zc((k[A>>2]|0)*528|0)|0;if(!z){c=0;r=L;return c|0}y=Zc(k[A>>2]<<2)|0;if(!y){cd(z);c=0;r=L;return c|0}e=Zf(a,k[J>>2]|0,c)|0;if(!e){cd(z);cd(y);c=0;r=L;return c|0}f=k[A>>2]|0;if(f){g=0;h=z;while(1){k[y+(g<<2)>>2]=h;g=g+1|0;if(g>>>0>=f>>>0)break;else h=h+528|0}}_f(a,b,c,B,C,D,E,H,I,F,G,y);u=k[F>>2]|0;v=ha(k[A>>2]|0,u)|0;w=ha(k[G>>2]|0,v)|0;i[e>>0]=(l[b+93>>0]|0)>>>3&1;t=_c(ha(k[x+(c*5640|0)+8>>2]|0,w)|0,2)|0;g=e+4|0;k[g>>2]=t;if(!t){cd(z);cd(y);f=k[g>>2]|0;if(f){cd(f);k[g>>2]=0}if(K){p=e;q=0;while(1){o=p+196|0;f=k[o>>2]|0;if(f){n=p+192|0;g=k[n>>2]|0;if(g){m=0;while(1){h=f+12|0;a=k[h>>2]|0;if(a){cd(a);k[h>>2]=0;g=k[n>>2]|0}m=m+1|0;if(m>>>0>=g>>>0)break;else f=f+16|0}f=k[o>>2]|0}cd(f);k[o>>2]=0}q=q+1|0;if((q|0)==(K|0))break;else p=p+232|0}}cd(e);c=0;r=L;return c|0}f=k[e+196>>2]|0;t=k[a+24>>2]|0;k[e+200>>2]=k[B>>2];k[e+204>>2]=k[D>>2];k[e+208>>2]=k[C>>2];k[e+212>>2]=k[E>>2];k[e+224>>2]=k[H>>2];k[e+228>>2]=k[I>>2];k[e+20>>2]=1;k[e+16>>2]=u;k[e+12>>2]=v;k[e+8>>2]=w;o=k[e+192>>2]|0;if(o){p=0;n=t;while(1){h=k[f+12>>2]|0;g=k[y+(p<<2)>>2]|0;k[f>>2]=k[n>>2];k[f+4>>2]=k[n+4>>2];m=k[f+8>>2]|0;if(m){a=0;while(1){k[h>>2]=k[g>>2];k[h+4>>2]=k[g+4>>2];k[h+8>>2]=k[g+8>>2];k[h+12>>2]=k[g+12>>2];a=a+1|0;if(a>>>0>=m>>>0)break;else{g=g+16|0;h=h+16|0}}}p=p+1|0;if(p>>>0>=o>>>0)break;else{f=f+16|0;n=n+52|0}}}if(K>>>0>1){o=e;s=1;do{f=k[o+428>>2]|0;k[o+432>>2]=k[B>>2];k[o+436>>2]=k[D>>2];k[o+440>>2]=k[C>>2];k[o+444>>2]=k[E>>2];k[o+456>>2]=k[H>>2];k[o+460>>2]=k[I>>2];k[o+252>>2]=1;k[o+248>>2]=u;k[o+244>>2]=v;k[o+240>>2]=w;p=k[o+424>>2]|0;if(p){q=0;n=t;while(1){h=k[f+12>>2]|0;g=k[y+(q<<2)>>2]|0;k[f>>2]=k[n>>2];k[f+4>>2]=k[n+4>>2];m=k[f+8>>2]|0;if(m){a=0;while(1){k[h>>2]=k[g>>2];k[h+4>>2]=k[g+4>>2];k[h+8>>2]=k[g+8>>2];k[h+12>>2]=k[g+12>>2];a=a+1|0;if(a>>>0>=m>>>0)break;else{g=g+16|0;h=h+16|0}}}q=q+1|0;if(q>>>0>=p>>>0)break;else{f=f+16|0;n=n+52|0}}}k[o+236>>2]=k[o+4>>2];o=o+232|0;s=s+1|0}while((s|0)!=(K|0))}cd(z);cd(y);do if(i[x+(c*5640|0)+5636>>0]&4){f=j[b>>1]|0;if((f&65535)>2){if(!((d|0)==1|(f&65535)<7))break}else if((d|0)!=1)break;$f(k[J>>2]|0,c,k[B>>2]|0,k[C>>2]|0,k[D>>2]|0,k[E>>2]|0,k[F>>2]|0,k[H>>2]|0,k[I>>2]|0);c=e;r=L;return c|0}while(0);w=k[A>>2]|0;v=k[B>>2]|0;u=k[C>>2]|0;t=k[D>>2]|0;s=k[E>>2]|0;q=k[F>>2]|0;p=k[G>>2]|0;o=k[H>>2]|0;n=k[I>>2]|0;f=k[J>>2]|0;h=(k[f+(c*5640|0)+420>>2]|0)+1|0;if(!h){c=e;r=L;return c|0}a=k[f+(c*5640|0)+8>>2]|0;m=k[f+(c*5640|0)+4>>2]|0;f=f+(c*5640|0)+424|0;g=0;while(1){k[f+76>>2]=0;k[f+92>>2]=w;k[f+72>>2]=0;k[f+88>>2]=p;k[f+68>>2]=0;k[f+84>>2]=a;k[f+36>>2]=m;k[f+80>>2]=0;k[f+96>>2]=q;k[f+100>>2]=v;k[f+104>>2]=u;k[f+108>>2]=t;k[f+112>>2]=s;k[f+116>>2]=o;k[f+120>>2]=n;g=g+1|0;if((g|0)==(h|0))break;else f=f+148|0}r=L;return e|0}function Wf(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,l=0,m=0,n=0,o=0,p=0,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;Q=k[b+76>>2]|0;R=Q+(c*5640|0)+424+(d*148|0)+36|0;S=dd(k[R>>2]|0)|0;k[a+(d*232|0)+40>>2]=1;T=a+(d*232|0)+44|0;k[a+(d*232|0)+80>>2]=k[R>>2];do if(i[b+93>>0]&8){h=j[b>>1]|0;if((h&65535)>2){if(!((g|0)==1&(h&65535)>6|(h+-3&65535)<4))break}else if(!((g|0)==1|(h+-3&65535)<4))break;h=f+1|0;a:do if((h|0)<4){g=Q+(c*5640|0)+424+(d*148|0)+72|0;l=Q+(c*5640|0)+424+(d*148|0)+88|0;m=a+(d*232|0)+56|0;n=Q+(c*5640|0)+424+(d*148|0)+76|0;o=a+(d*232|0)+48|0;p=Q+(c*5640|0)+424+(d*148|0)+92|0;q=a+(d*232|0)+60|0;r=Q+(c*5640|0)+424+(d*148|0)+68|0;s=a+(d*232|0)+64|0;t=Q+(c*5640|0)+424+(d*148|0)+84|0;u=a+(d*232|0)+52|0;v=Q+(c*5640|0)+424+(d*148|0)+80|0;w=a+(d*232|0)+68|0;x=Q+(c*5640|0)+424+(d*148|0)+96|0;y=a+(d*232|0)+72|0;z=Q+(c*5640|0)+424+(d*148|0)+100|0;A=a+(d*232|0)+96|0;B=Q+(c*5640|0)+424+(d*148|0)+108|0;C=a+(d*232|0)+104|0;D=Q+(c*5640|0)+424+(d*148|0)+104|0;E=a+(d*232|0)+100|0;F=Q+(c*5640|0)+424+(d*148|0)+112|0;G=a+(d*232|0)+108|0;while(1){b:do switch(i[S+h>>0]|0){case 82:{k[T>>2]=k[g>>2];k[m>>2]=k[l>>2];break}case 67:{k[o>>2]=k[n>>2];k[q>>2]=k[p>>2];break}case 76:{k[s>>2]=k[r>>2];k[u>>2]=k[t>>2];break}case 80:if((k[R>>2]|0)>>>0<2){k[w>>2]=k[v>>2];k[y>>2]=k[x>>2];break b}else{k[A>>2]=k[z>>2];k[C>>2]=k[B>>2];k[E>>2]=k[D>>2];k[G>>2]=k[F>>2];break b}default:{}}while(0);h=h+1|0;if((h|0)==4)break a}}while(0);h=(f|0)>-1;if(!e){if(!h)return;m=Q+(c*5640|0)+424+(d*148|0)+76|0;n=Q+(c*5640|0)+424+(d*148|0)+132|0;o=a+(d*232|0)+48|0;p=a+(d*232|0)+60|0;q=Q+(c*5640|0)+424+(d*148|0)+72|0;r=Q+(c*5640|0)+424+(d*148|0)+128|0;s=a+(d*232|0)+56|0;t=Q+(c*5640|0)+424+(d*148|0)+68|0;u=Q+(c*5640|0)+424+(d*148|0)+124|0;v=a+(d*232|0)+64|0;w=a+(d*232|0)+52|0;x=Q+(c*5640|0)+424+(d*148|0)+80|0;y=Q+(c*5640|0)+424+(d*148|0)+136|0;z=a+(d*232|0)+68|0;A=a+(d*232|0)+72|0;B=Q+(c*5640|0)+424+(d*148|0)+100|0;C=Q+(c*5640|0)+424+(d*148|0)+140|0;D=Q+(c*5640|0)+424+(d*148|0)+108|0;E=Q+(c*5640|0)+424+(d*148|0)+144|0;F=a+(d*232|0)+96|0;G=Q+(c*5640|0)+424+(d*148|0)+116|0;e=a+(d*232|0)+100|0;H=a+(d*232|0)+104|0;l=Q+(c*5640|0)+424+(d*148|0)+120|0;g=a+(d*232|0)+108|0;h=f;while(1){c:do switch(i[S+h>>0]|0){case 67:{d=k[m>>2]|0;k[o>>2]=d;d=d+1|0;k[p>>2]=d;k[n>>2]=d;break}case 82:{d=k[q>>2]|0;k[T>>2]=d;d=d+1|0;k[s>>2]=d;k[r>>2]=d;break}case 76:{d=k[t>>2]|0;k[v>>2]=d;d=d+1|0;k[w>>2]=d;k[u>>2]=d;break}case 80:if((k[R>>2]|0)>>>0<2){d=k[x>>2]|0;k[z>>2]=d;d=d+1|0;k[A>>2]=d;k[y>>2]=d;break c}else{d=k[B>>2]|0;f=k[D>>2]|0;k[F>>2]=d;c=k[G>>2]|0;c=c+d-((d>>>0)%(c>>>0)|0)|0;k[e>>2]=c;k[H>>2]=f;d=k[l>>2]|0;d=d+f-((f>>>0)%(d>>>0)|0)|0;k[g>>2]=d;k[C>>2]=c;k[E>>2]=d;break c}default:{}}while(0);if((h|0)>0)h=h+-1|0;else break}return}if(!h)return;L=Q+(c*5640|0)+424+(d*148|0)+128|0;M=Q+(c*5640|0)+424+(d*148|0)+88|0;N=Q+(c*5640|0)+424+(d*148|0)+72|0;O=a+(d*232|0)+56|0;P=Q+(c*5640|0)+424+(d*148|0)+132|0;p=Q+(c*5640|0)+424+(d*148|0)+92|0;q=Q+(c*5640|0)+424+(d*148|0)+76|0;r=a+(d*232|0)+48|0;s=a+(d*232|0)+60|0;t=Q+(c*5640|0)+424+(d*148|0)+124|0;u=Q+(c*5640|0)+424+(d*148|0)+84|0;v=Q+(c*5640|0)+424+(d*148|0)+68|0;w=a+(d*232|0)+64|0;x=a+(d*232|0)+52|0;y=Q+(c*5640|0)+424+(d*148|0)+136|0;z=Q+(c*5640|0)+424+(d*148|0)+96|0;A=Q+(c*5640|0)+424+(d*148|0)+80|0;B=a+(d*232|0)+68|0;C=a+(d*232|0)+72|0;D=Q+(c*5640|0)+424+(d*148|0)+140|0;E=Q+(c*5640|0)+424+(d*148|0)+104|0;F=a+(d*232|0)+96|0;G=Q+(c*5640|0)+424+(d*148|0)+116|0;e=a+(d*232|0)+100|0;H=Q+(c*5640|0)+424+(d*148|0)+144|0;I=Q+(c*5640|0)+424+(d*148|0)+112|0;J=a+(d*232|0)+104|0;K=Q+(c*5640|0)+424+(d*148|0)+120|0;n=a+(d*232|0)+108|0;o=Q+(c*5640|0)+424+(d*148|0)+100|0;m=Q+(c*5640|0)+424+(d*148|0)+108|0;l=f;h=1;while(1){g=S+l|0;d:do switch(i[g>>0]|0){case 67:{f=k[P>>2]|0;k[r>>2]=f+-1;k[s>>2]=f;break}case 82:{f=k[L>>2]|0;k[T>>2]=f+-1;k[O>>2]=f;break}case 76:{f=k[t>>2]|0;k[w>>2]=f+-1;k[x>>2]=f;break}case 80:if((k[R>>2]|0)>>>0<2){f=k[y>>2]|0;k[B>>2]=f+-1;k[C>>2]=f;break d}else{f=k[D>>2]|0;Q=k[G>>2]|0;k[F>>2]=f-Q-((f>>>0)%(Q>>>0)|0);k[e>>2]=f;f=k[H>>2]|0;Q=k[K>>2]|0;k[J>>2]=f-Q-((f>>>0)%(Q>>>0)|0);k[n>>2]=f;break d}default:{}}while(0);e:do if((h|0)==1)switch(i[g>>0]|0){case 82:{h=k[L>>2]|0;if((h|0)!=(k[M>>2]|0)){k[T>>2]=h;h=h+1|0;k[O>>2]=h;k[L>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[N>>2]|0;k[T>>2]=h;h=h+1|0;k[O>>2]=h;k[L>>2]=h;h=1;break e}case 67:{h=k[P>>2]|0;if((h|0)!=(k[p>>2]|0)){k[r>>2]=h;h=h+1|0;k[s>>2]=h;k[P>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[q>>2]|0;k[r>>2]=h;h=h+1|0;k[s>>2]=h;k[P>>2]=h;h=1;break e}case 76:{h=k[t>>2]|0;if((h|0)!=(k[u>>2]|0)){k[w>>2]=h;h=h+1|0;k[x>>2]=h;k[t>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[v>>2]|0;k[w>>2]=h;h=h+1|0;k[x>>2]=h;k[t>>2]=h;h=1;break e}case 80:{if((k[R>>2]|0)>>>0<2){h=k[y>>2]|0;if((h|0)!=(k[z>>2]|0)){k[B>>2]=h;h=h+1|0;k[C>>2]=h;k[y>>2]=h;h=0;break e}if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}h=k[A>>2]|0;k[B>>2]=h;h=h+1|0;k[C>>2]=h;k[y>>2]=h;h=1;break e}h=k[D>>2]|0;if(h>>>0<(k[E>>2]|0)>>>0){k[F>>2]=h;f=k[G>>2]|0;h=f+h-((h>>>0)%(f>>>0)|0)|0;k[e>>2]=h;k[D>>2]=h;h=0;break e}g=k[H>>2]|0;if(g>>>0<(k[I>>2]|0)>>>0){k[J>>2]=g;f=k[K>>2]|0;h=0;g=f+g-((g>>>0)%(f>>>0)|0)|0}else{if(!(ag(l+-1|0,b,c,d,S)|0)){h=0;break e}f=k[m>>2]|0;k[H>>2]=f;k[J>>2]=f;g=k[K>>2]|0;h=1;g=g+f-((f>>>0)%(g>>>0)|0)|0}k[n>>2]=g;k[H>>2]=g;Q=k[o>>2]|0;k[F>>2]=Q;f=k[G>>2]|0;f=f+Q-((Q>>>0)%(f>>>0)|0)|0;k[e>>2]=f;k[D>>2]=f;break e}default:{h=1;break e}}while(0);if((l|0)>0)l=l+-1|0;else break}return}while(0);k[T>>2]=k[Q+(c*5640|0)+424+(d*148|0)+72>>2];k[a+(d*232|0)+56>>2]=k[Q+(c*5640|0)+424+(d*148|0)+88>>2];k[a+(d*232|0)+48>>2]=k[Q+(c*5640|0)+424+(d*148|0)+76>>2];k[a+(d*232|0)+60>>2]=k[Q+(c*5640|0)+424+(d*148|0)+92>>2];k[a+(d*232|0)+64>>2]=k[Q+(c*5640|0)+424+(d*148|0)+68>>2];k[a+(d*232|0)+52>>2]=k[Q+(c*5640|0)+424+(d*148|0)+84>>2];k[a+(d*232|0)+68>>2]=k[Q+(c*5640|0)+424+(d*148|0)+80>>2];k[a+(d*232|0)+72>>2]=k[Q+(c*5640|0)+424+(d*148|0)+96>>2];k[a+(d*232|0)+96>>2]=k[Q+(c*5640|0)+424+(d*148|0)+100>>2];k[a+(d*232|0)+104>>2]=k[Q+(c*5640|0)+424+(d*148|0)+108>>2];k[a+(d*232|0)+100>>2]=k[Q+(c*5640|0)+424+(d*148|0)+104>>2];k[a+(d*232|0)+108>>2]=k[Q+(c*5640|0)+424+(d*148|0)+112>>2];return}function Xf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,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,M=0,N=0,O=0;H=k[b+76>>2]|0;J=k[b+24>>2]|0;N=(c>>>0)%(J>>>0)|0;J=(c>>>0)/(J>>>0)|0;K=k[b+4>>2]|0;G=k[b+12>>2]|0;F=(ha(G,N)|0)+K|0;M=k[a>>2]|0;M=(F|0)>(M|0)?F:M;K=(ha(G,N+1|0)|0)+K|0;N=k[a+8>>2]|0;N=(K|0)<(N|0)?K:N;K=k[b+8>>2]|0;G=k[b+16>>2]|0;F=(ha(G,J)|0)+K|0;I=k[a+4>>2]|0;I=(F|0)>(I|0)?F:I;K=(ha(G,J+1|0)|0)+K|0;J=k[a+12>>2]|0;J=(K|0)<(J|0)?K:J;K=k[a+16>>2]|0;if(!K){l=0;j=2147483647;h=2147483647;g=0}else{C=J+-1|0;D=N+-1|0;E=I+-1|0;F=M+-1|0;l=0;j=2147483647;h=2147483647;g=0;G=0;A=k[a+24>>2]|0;B=k[H+(c*5640|0)+5584>>2]|0;while(1){x=k[A>>2]|0;y=k[A+4>>2]|0;z=k[B+4>>2]|0;g=z>>>0>g>>>0?z:g;if(z){v=(C+y|0)/(y|0)|0;t=(D+x|0)/(x|0)|0;r=(E+y|0)/(y|0)|0;p=(F+x|0)/(x|0)|0;p=aj(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;q=L;r=aj(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;s=L;t=aj(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;u=L;v=aj(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;w=L;b=0;o=0;while(1){m=k[B+812+(o<<2)>>2]|0;n=k[B+944+(o<<2)>>2]|0;e=b+-1+z|0;f=x<<e+m;O=y<<n+e;j=j>>>0<f>>>0?j:f;h=h>>>0<O>>>0?h:O;O=$i(1,0,e|0)|0;f=L;b=aj(p|0,q|0,O|0,f|0)|0;b=Zi(b|0,L|0,e|0)|0;d=aj(r|0,s|0,O|0,f|0)|0;d=Zi(d|0,L|0,e|0)|0;a=aj(t|0,u|0,O|0,f|0)|0;a=Zi(a|0,L|0,e|0)|0;f=aj(v|0,w|0,O|0,f|0)|0;e=Zi(f|0,L|0,e|0)|0;f=$i(1,0,n|0)|0;f=aj(f|0,L|0,-1,-1)|0;f=aj(f|0,L|0,e|0,((e|0)<0)<<31>>31|0)|0;f=Zi(f|0,L|0,n|0)|0;if((b|0)==(a|0))b=0;else{O=$i(1,0,m|0)|0;O=aj(O|0,L|0,-1,-1)|0;O=aj(O|0,L|0,a|0,((a|0)<0)<<31>>31|0)|0;O=Zi(O|0,L|0,m|0)|0;b=(O<<m)-(b>>m<<m)>>m}a=ha(b,(d|0)==(e|0)?0:(f<<n)-(d>>n<<n)>>n)|0;l=a>>>0>l>>>0?a:l;a=o+1|0;if(a>>>0<z>>>0){b=~o;o=a}else break}}G=G+1|0;if(G>>>0>=K>>>0)break;else{A=A+52|0;B=B+1080|0}}}if(i[H+(c*5640|0)+5636>>0]&4){$f(H,c,M,N,I,J,l,j,h);return}d=(k[H+(c*5640|0)+420>>2]|0)+1|0;if(!d)return;e=k[H+(c*5640|0)+8>>2]|0;f=k[H+(c*5640|0)+4>>2]|0;b=H+(c*5640|0)+424|0;a=0;while(1){k[b+76>>2]=0;k[b+92>>2]=K;k[b+72>>2]=0;k[b+88>>2]=g;k[b+68>>2]=0;k[b+84>>2]=e;k[b+36>>2]=f;k[b+80>>2]=0;k[b+96>>2]=l;k[b+100>>2]=M;k[b+104>>2]=N;k[b+108>>2]=I;k[b+112>>2]=J;k[b+116>>2]=j;k[b+120>>2]=h;a=a+1|0;if((a|0)==(d|0))break;else b=b+148|0}return}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;switch(k[a+80>>2]|0){case 0:{b=a+40|0;if(!(k[b>>2]|0)){E=a+32|0;l=E;E=k[E>>2]|0;c=18}else{k[b>>2]=0;t=k[a+64>>2]|0;k[a+36>>2]=t;c=5}while(1){if((c|0)==5){if(t>>>0>=(k[a+52>>2]|0)>>>0){nb=0;c=153;break}z=k[a+44>>2]|0;k[a+28>>2]=z;c=7}else if((c|0)==18){g=E+1|0;k[l>>2]=g;e=l;c=14}while(1){if((c|0)==7){c=0;if(z>>>0>=(k[a+56>>2]|0)>>>0){c=21;break}A=k[a+48>>2]|0;p=a+24|0;k[p>>2]=A}else if((c|0)==14){if(g>>>0<(k[a+72>>2]|0)>>>0){c=16;break}F=a+24|0;n=F;F=k[F>>2]|0;c=19}while(1){if((c|0)==19){c=0;A=F+1|0;k[n>>2]=A;p=n}if(A>>>0>=(k[a+60>>2]|0)>>>0){c=20;break}B=k[a+196>>2]|0;C=k[a+28>>2]|0;if(C>>>0<(k[B+(A<<4)+8>>2]|0)>>>0)break;else{n=p;F=A;c=19}}if((c|0)==20){c=a+28|0;z=(k[c>>2]|0)+1|0;k[c>>2]=z;c=7;continue}b=k[B+(A<<4)+12>>2]|0;if(!(i[a>>0]|0)){mb=ha(k[b+(C<<4)+12>>2]|0,k[b+(C<<4)+8>>2]|0)|0;k[a+72>>2]=mb}g=k[a+68>>2]|0;e=a+32|0;k[e>>2]=g;c=14}if((c|0)==16){c=0;D=ha(k[a+8>>2]|0,k[a+36>>2]|0)|0;D=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+D|0;D=D+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;D=D+(ha(k[a+20>>2]|0,g)|0)|0;D=(k[a+4>>2]|0)+(D<<1)|0;if(!(j[D>>1]|0))break;else{l=e;E=g;c=18;continue}}else if((c|0)==21){c=a+36|0;t=(k[c>>2]|0)+1|0;k[c>>2]=t;c=5;continue}}if((c|0)==153)return nb|0;j[D>>1]=1;a=1;return a|0}case 1:{b=a+40|0;if(!(k[b>>2]|0)){x=a+32|0;h=x;x=k[x>>2]|0;c=38}else{k[b>>2]=0;G=k[a+44>>2]|0;k[a+28>>2]=G;c=25}while(1){if((c|0)==25){if(G>>>0>=(k[a+56>>2]|0)>>>0){nb=0;c=153;break}r=k[a+64>>2]|0;k[a+36>>2]=r;c=27}else if((c|0)==38){f=x+1|0;k[h>>2]=f;d=h;c=34}while(1){if((c|0)==27){c=0;if(r>>>0>=(k[a+52>>2]|0)>>>0){c=41;break}s=k[a+48>>2]|0;o=a+24|0;k[o>>2]=s}else if((c|0)==34){if(f>>>0<(k[a+72>>2]|0)>>>0){c=36;break}y=a+24|0;m=y;y=k[y>>2]|0;c=39}while(1){if((c|0)==39){c=0;s=y+1|0;k[m>>2]=s;o=m}if(s>>>0>=(k[a+60>>2]|0)>>>0){c=40;break}u=k[a+196>>2]|0;v=k[a+28>>2]|0;if(v>>>0<(k[u+(s<<4)+8>>2]|0)>>>0)break;else{m=o;y=s;c=39}}if((c|0)==40){c=a+36|0;r=(k[c>>2]|0)+1|0;k[c>>2]=r;c=27;continue}b=k[u+(s<<4)+12>>2]|0;if(!(i[a>>0]|0)){mb=ha(k[b+(v<<4)+12>>2]|0,k[b+(v<<4)+8>>2]|0)|0;k[a+72>>2]=mb}f=k[a+68>>2]|0;d=a+32|0;k[d>>2]=f;c=34}if((c|0)==36){c=0;w=ha(k[a+8>>2]|0,k[a+36>>2]|0)|0;w=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+w|0;w=w+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;w=w+(ha(k[a+20>>2]|0,f)|0)|0;w=(k[a+4>>2]|0)+(w<<1)|0;if(!(j[w>>1]|0))break;else{h=d;x=f;c=38;continue}}else if((c|0)==41){c=a+28|0;G=(k[c>>2]|0)+1|0;k[c>>2]=G;c=25;continue}}if((c|0)==153)return nb|0;j[w>>1]=1;a=1;return a|0}case 2:{b=a+40|0;if(!(k[b>>2]|0)){lb=a+36|0;Ta=lb;lb=k[lb>>2]|0;c=75}else{k[b>>2]=0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;q=k[a+192>>2]|0;if(q){r=k[a+196>>2]|0;b=0;c=0;s=0;do{g=k[r+(s<<4)+8>>2]|0;if(g){h=k[r+(s<<4)+12>>2]|0;l=k[r+(s<<4)>>2]|0;m=k[r+(s<<4)+4>>2]|0;n=g+-1|0;d=0;f=0;while(1){e=n+d|0;Sa=l<<e+(k[h+(f<<4)>>2]|0);e=m<<(k[h+(f<<4)+4>>2]|0)+e;b=(b|0)==0?Sa:b>>>0<Sa>>>0?b:Sa;c=(c|0)==0?e:c>>>0<e>>>0?c:e;e=f+1|0;if((e|0)==(g|0))break;else{d=~f;f=e}}k[o>>2]=b;k[p>>2]=c}s=s+1|0}while((s|0)!=(q|0))}if(!(i[a>>0]|0)){k[a+104>>2]=k[a+204>>2];k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}J=k[a+44>>2]|0;k[a+28>>2]=J;c=54}while(1){if((c|0)==54){if(J>>>0>=(k[a+56>>2]|0)>>>0){nb=0;c=153;break}Xa=k[a+104>>2]|0;k[a+220>>2]=Xa;c=56}else if((c|0)==75){jb=lb+1|0;k[Ta>>2]=jb;Ua=Ta;c=71}while(1){if((c|0)==56){if((Xa|0)>=(k[a+108>>2]|0)){c=79;break}Ya=k[a+96>>2]|0;k[a+216>>2]=Ya;c=58}else if((c|0)==71){if(jb>>>0<(k[a+52>>2]|0)>>>0){c=73;break}mb=a+24|0;Va=mb;mb=k[mb>>2]|0;c=76}while(1){if((c|0)==58){if((Ya|0)>=(k[a+100>>2]|0)){c=78;break}Za=k[a+48>>2]|0;Wa=a+24|0;k[Wa>>2]=Za}else if((c|0)==76){Za=mb+1|0;k[Va>>2]=Za;Wa=Va}if(Za>>>0>=(k[a+60>>2]|0)>>>0){Ya=k[a+224>>2]|0;c=a+216|0;Sa=k[c>>2]|0;Ya=Sa+Ya-((Sa|0)%(Ya|0)|0)|0;k[c>>2]=Ya;c=58;continue}c=k[a+196>>2]|0;m=k[a+28>>2]|0;b=k[c+(Za<<4)+8>>2]|0;if(m>>>0>=b>>>0){Va=Wa;mb=Za;c=76;continue}n=k[c+(Za<<4)+12>>2]|0;f=b+~m|0;g=k[a+200>>2]|0;h=k[c+(Za<<4)>>2]|0;_a=h<<f;$a=(g+-1+_a|0)/(_a|0)|0;l=k[a+204>>2]|0;Sa=k[c+(Za<<4)+4>>2]|0;ab=Sa<<f;bb=(l+-1+ab|0)/(ab|0)|0;cb=_a+-1|0;b=(cb+(k[a+208>>2]|0)|0)/(_a|0)|0;db=ab+-1|0;c=(db+(k[a+212>>2]|0)|0)/(ab|0)|0;eb=k[n+(m<<4)>>2]|0;d=eb+f|0;fb=k[n+(m<<4)+4>>2]|0;e=fb+f|0;gb=k[a+220>>2]|0;if((gb|0)%(Sa<<e|0)|0){if((gb|0)!=(l|0)){Va=Wa;mb=Za;c=76;continue}if(!((bb<<f|0)%(1<<e|0)|0)){Va=Wa;mb=Za;c=76;continue}}hb=k[a+216>>2]|0;if((hb|0)%(h<<d|0)|0){if((hb|0)!=(g|0)){Va=Wa;mb=Za;c=76;continue}if(!(($a<<f|0)%(1<<d|0)|0)){Va=Wa;mb=Za;c=76;continue}}ib=k[n+(m<<4)+8>>2]|0;if(!ib){Va=Wa;mb=Za;c=76;continue}if((bb|0)==(c|0)|(($a|0)==(b|0)?1:(k[n+(m<<4)+12>>2]|0)==0)){Va=Wa;mb=Za;c=76}else{c=70;break}}if((c|0)==70){jb=(((cb+hb|0)/(_a|0)|0)>>eb)-($a>>eb)+(ha((((db+gb|0)/(ab|0)|0)>>fb)-(bb>>fb)|0,ib)|0)|0;k[a+32>>2]=jb;jb=k[a+64>>2]|0;Ua=a+36|0;k[Ua>>2]=jb;c=71;continue}else if((c|0)==78){Xa=k[a+228>>2]|0;c=a+220|0;Sa=k[c>>2]|0;Xa=Sa+Xa-((Sa|0)%(Xa|0)|0)|0;k[c>>2]=Xa;c=56;continue}}if((c|0)==73){c=0;kb=ha(k[a+8>>2]|0,jb)|0;kb=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+kb|0;kb=kb+(ha(k[a+16>>2]|0,k[a+24>>2]|0)|0)|0;kb=kb+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;kb=(k[a+4>>2]|0)+(kb<<1)|0;if(!(j[kb>>1]|0))break;else{Ta=Ua;lb=jb;c=75;continue}}else if((c|0)==79){c=a+28|0;J=(k[c>>2]|0)+1|0;k[c>>2]=J;c=54;continue}}if((c|0)==153)return nb|0;j[kb>>1]=1;a=1;return a|0}case 3:{c=a+40|0;if(!(k[c>>2]|0)){Ra=k[a+24>>2]|0;Ka=a+36|0;pa=Ka;Ka=k[Ka>>2]|0;Na=Ra;Ra=(k[a+196>>2]|0)+(Ra<<4)|0;c=113}else{k[c>>2]=0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;q=k[a+192>>2]|0;if(q){r=k[a+196>>2]|0;b=0;c=0;s=0;do{g=k[r+(s<<4)+8>>2]|0;if(g){h=k[r+(s<<4)+12>>2]|0;l=k[r+(s<<4)>>2]|0;m=k[r+(s<<4)+4>>2]|0;n=g+-1|0;d=0;f=0;while(1){e=n+d|0;mb=l<<e+(k[h+(f<<4)>>2]|0);e=m<<(k[h+(f<<4)+4>>2]|0)+e;b=(b|0)==0?mb:b>>>0<mb>>>0?b:mb;c=(c|0)==0?e:c>>>0<e>>>0?c:e;e=f+1|0;if((e|0)==(g|0))break;else{d=~f;f=e}}k[o>>2]=b;k[p>>2]=c}s=s+1|0}while((s|0)!=(q|0))}if(!(i[a>>0]|0)){b=k[a+204>>2]|0;k[a+104>>2]=b;k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}else b=k[a+104>>2]|0;k[a+220>>2]=b;c=93}while(1){if((c|0)==93){if((b|0)>=(k[a+108>>2]|0)){nb=0;c=153;break}ta=k[a+96>>2]|0;k[a+216>>2]=ta;c=95}else if((c|0)==113){Ha=Ka+1|0;k[pa>>2]=Ha;qa=pa;Ia=Na;Qa=Ra;c=109}while(1){if((c|0)==95){if((ta|0)>=(k[a+100>>2]|0)){c=117;break}ua=k[a+48>>2]|0;k[a+24>>2]=ua;c=97}else if((c|0)==109){if(Ha>>>0<(k[a+52>>2]|0)>>>0){c=111;break}La=a+28|0;ra=La;La=k[La>>2]|0;Oa=Ia;Sa=Qa;c=114}while(1){if((c|0)==97){if(ua>>>0>=(k[a+60>>2]|0)>>>0){c=116;break}Pa=(k[a+196>>2]|0)+(ua<<4)|0;va=k[a+44>>2]|0;sa=a+28|0;k[sa>>2]=va;Ma=ua}else if((c|0)==114){va=La+1|0;k[ra>>2]=va;sa=ra;Ma=Oa;Pa=Sa}mb=k[a+56>>2]|0;c=k[Pa+8>>2]|0;if(va>>>0>=(mb>>>0<c>>>0?mb:c)>>>0){ua=Ma+1|0;k[a+24>>2]=ua;c=97;continue}n=k[Pa+12>>2]|0;c=c+~va|0;d=k[a+200>>2]|0;e=k[Pa>>2]|0;wa=e<<c;xa=(d+-1+wa|0)/(wa|0)|0;f=k[a+204>>2]|0;mb=k[Pa+4>>2]|0;ya=mb<<c;za=(f+-1+ya|0)/(ya|0)|0;Aa=wa+-1|0;g=(Aa+(k[a+208>>2]|0)|0)/(wa|0)|0;Ba=ya+-1|0;h=(Ba+(k[a+212>>2]|0)|0)/(ya|0)|0;Ca=k[n+(va<<4)>>2]|0;l=Ca+c|0;Da=k[n+(va<<4)+4>>2]|0;m=Da+c|0;Ea=k[a+220>>2]|0;if((Ea|0)%(mb<<m|0)|0){if((Ea|0)!=(f|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if(!((za<<c|0)%(1<<m|0)|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}}Fa=k[a+216>>2]|0;if((Fa|0)%(e<<l|0)|0){if((Fa|0)!=(d|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if(!((xa<<c|0)%(1<<l|0)|0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}}Ga=k[n+(va<<4)+8>>2]|0;if(!Ga){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114;continue}if((za|0)==(h|0)|((xa|0)==(g|0)?1:(k[n+(va<<4)+12>>2]|0)==0)){ra=sa;La=va;Oa=Ma;Sa=Pa;c=114}else{c=108;break}}if((c|0)==108){Ha=(((Aa+Fa|0)/(wa|0)|0)>>Ca)-(xa>>Ca)+(ha((((Ba+Ea|0)/(ya|0)|0)>>Da)-(za>>Da)|0,Ga)|0)|0;k[a+32>>2]=Ha;Ha=k[a+64>>2]|0;qa=a+36|0;k[qa>>2]=Ha;Ia=Ma;Qa=Pa;c=109;continue}else if((c|0)==116){ta=k[a+224>>2]|0;c=a+216|0;mb=k[c>>2]|0;ta=mb+ta-((mb|0)%(ta|0)|0)|0;k[c>>2]=ta;c=95;continue}}if((c|0)==111){c=0;Ja=ha(k[a+8>>2]|0,Ha)|0;Ja=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+Ja|0;Ja=Ja+(ha(k[a+16>>2]|0,Ia)|0)|0;Ja=Ja+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;Ja=(k[a+4>>2]|0)+(Ja<<1)|0;if(!(j[Ja>>1]|0))break;else{pa=qa;Ka=Ha;Na=Ia;Ra=Qa;c=113;continue}}else if((c|0)==117){b=k[a+228>>2]|0;c=a+220|0;mb=k[c>>2]|0;b=mb+b-((mb|0)%(b|0)|0)|0;k[c>>2]=b;c=93;continue}}if((c|0)==153)return nb|0;j[Ja>>1]=1;a=1;return a|0}case 4:{b=a+40|0;if(!(k[b>>2]|0)){na=k[a+24>>2]|0;da=a+36|0;K=da;da=k[da>>2]|0;fa=na;na=(k[a+196>>2]|0)+(na<<4)|0;c=148}else{k[b>>2]=0;O=k[a+48>>2]|0;k[a+24>>2]=O;c=121}while(1){if((c|0)==121){if(O>>>0>=(k[a+60>>2]|0)>>>0){nb=0;c=153;break}b=k[a+196>>2]|0;q=b+(O<<4)|0;o=a+224|0;k[o>>2]=0;p=a+228|0;k[p>>2]=0;l=k[b+(O<<4)+8>>2]|0;if(l){m=k[b+(O<<4)+12>>2]|0;n=k[q>>2]|0;e=k[b+(O<<4)+4>>2]|0;f=l+-1|0;c=0;b=0;d=0;h=0;while(1){g=f+d|0;mb=n<<g+(k[m+(h<<4)>>2]|0);g=e<<(k[m+(h<<4)+4>>2]|0)+g;c=(c|0)==0?mb:c>>>0<mb>>>0?c:mb;b=(b|0)==0?g:b>>>0<g>>>0?b:g;g=h+1|0;if((g|0)==(l|0))break;else{d=~h;h=g}}k[o>>2]=c;k[p>>2]=b}if(!(i[a>>0]|0)){b=k[a+204>>2]|0;k[a+104>>2]=b;k[a+96>>2]=k[a+200>>2];k[a+108>>2]=k[a+212>>2];k[a+100>>2]=k[a+208>>2]}else b=k[a+104>>2]|0;k[a+220>>2]=b;H=b;I=O;c=130}else if((c|0)==148){aa=da+1|0;k[K>>2]=aa;L=K;ba=fa;ma=na;c=144}while(1){if((c|0)==130){if((H|0)>=(k[a+108>>2]|0)){c=152;break}P=k[a+96>>2]|0;k[a+216>>2]=P;ga=I;ka=q;c=132}else if((c|0)==144){if(aa>>>0<(k[a+52>>2]|0)>>>0){c=146;break}ea=a+28|0;M=ea;ea=k[ea>>2]|0;ja=ba;oa=ma;c=149}while(1){if((c|0)==132){if((P|0)>=(k[a+100>>2]|0)){c=151;break}Q=k[a+44>>2]|0;N=a+28|0;k[N>>2]=Q;ia=ga;la=ka}else if((c|0)==149){Q=ea+1|0;k[M>>2]=Q;N=M;ia=ja;la=oa}mb=k[a+56>>2]|0;b=k[la+8>>2]|0;if(Q>>>0>=(mb>>>0<b>>>0?mb:b)>>>0){P=k[a+224>>2]|0;ga=a+216|0;ka=k[ga>>2]|0;P=ka+P-((ka|0)%(P|0)|0)|0;k[ga>>2]=P;ga=ia;ka=la;c=132;continue}m=k[la+12>>2]|0;b=b+~Q|0;c=k[a+200>>2]|0;d=k[la>>2]|0;R=d<<b;S=(c+-1+R|0)/(R|0)|0;e=k[a+204>>2]|0;mb=k[la+4>>2]|0;T=mb<<b;U=(e+-1+T|0)/(T|0)|0;V=R+-1|0;f=(V+(k[a+208>>2]|0)|0)/(R|0)|0;W=T+-1|0;g=(W+(k[a+212>>2]|0)|0)/(T|0)|0;X=k[m+(Q<<4)>>2]|0;h=X+b|0;Y=k[m+(Q<<4)+4>>2]|0;l=Y+b|0;Z=k[a+220>>2]|0;if((Z|0)%(mb<<l|0)|0){if((Z|0)!=(e|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if(!((U<<b|0)%(1<<l|0)|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}}_=k[a+216>>2]|0;if((_|0)%(d<<h|0)|0){if((_|0)!=(c|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if(!((S<<b|0)%(1<<h|0)|0)){M=N;ea=Q;ja=ia;oa=la;c=149;continue}}$=k[m+(Q<<4)+8>>2]|0;if(!$){M=N;ea=Q;ja=ia;oa=la;c=149;continue}if((U|0)==(g|0)|((S|0)==(f|0)?1:(k[m+(Q<<4)+12>>2]|0)==0)){M=N;ea=Q;ja=ia;oa=la;c=149}else{c=143;break}}if((c|0)==143){aa=(((V+_|0)/(R|0)|0)>>X)-(S>>X)+(ha((((W+Z|0)/(T|0)|0)>>Y)-(U>>Y)|0,$)|0)|0;k[a+32>>2]=aa;aa=k[a+64>>2]|0;L=a+36|0;k[L>>2]=aa;ba=ia;ma=la;c=144;continue}else if((c|0)==151){H=k[a+228>>2]|0;I=a+220|0;q=k[I>>2]|0;H=q+H-((q|0)%(H|0)|0)|0;k[I>>2]=H;I=ga;q=ka;c=130;continue}}if((c|0)==146){c=0;ca=ha(k[a+8>>2]|0,aa)|0;ca=(ha(k[a+12>>2]|0,k[a+28>>2]|0)|0)+ca|0;ca=ca+(ha(k[a+16>>2]|0,ba)|0)|0;ca=ca+(ha(k[a+20>>2]|0,k[a+32>>2]|0)|0)|0;ca=(k[a+4>>2]|0)+(ca<<1)|0;if(!(j[ca>>1]|0))break;else{K=L;da=aa;fa=ba;na=ma;c=148;continue}}else if((c|0)==152){O=I+1|0;k[a+24>>2]=O;c=121;continue}}if((c|0)==153)return nb|0;j[ca>>1]=1;a=1;return a|0}default:{a=0;return a|0}}return 0}function Zf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=(k[b+(c*5640|0)+420>>2]|0)+1|0;d=_c(l,232)|0;if(!d){l=0;return l|0}if(!l){l=d;return l|0}i=a+16|0;f=b+(c*5640|0)+5584|0;a=k[i>>2]|0;g=d;h=0;a:while(1){b=_c(a,16)|0;e=g+196|0;k[e>>2]=b;if(!b){a=5;break}j=k[i>>2]|0;k[g+192>>2]=j;b:do if(!j)a=0;else{a=(k[f>>2]|0)+4|0;j=_c(k[a>>2]|0,16)|0;k[b+12>>2]=j;if(!j){a=18;break a}else c=0;while(1){k[b+(c<<4)+8>>2]=k[a>>2];c=c+1|0;a=k[i>>2]|0;if(c>>>0>=a>>>0)break b;b=k[e>>2]|0;a=(k[f>>2]|0)+(c*1080|0)+4|0;j=_c(k[a>>2]|0,16)|0;k[b+(c<<4)+12>>2]=j;if(!j){a=18;break a}}}while(0);h=h+1|0;if(h>>>0>=l>>>0){a=32;break}else g=g+232|0}if((a|0)==5){a=d+4|0;b=k[a>>2]|0;if(!b){i=d;j=0}else{cd(b);k[a>>2]=0;i=d;j=0}while(1){h=i+196|0;a=k[h>>2]|0;if(a){g=i+192|0;b=k[g>>2]|0;if(b){f=0;while(1){c=a+12|0;e=k[c>>2]|0;if(e){cd(e);k[c>>2]=0;b=k[g>>2]|0}f=f+1|0;if(f>>>0>=b>>>0)break;else a=a+16|0}a=k[h>>2]|0}cd(a);k[h>>2]=0}j=j+1|0;if((j|0)==(l|0))break;else i=i+232|0}cd(d);l=0;return l|0}else if((a|0)==18){a=d+4|0;b=k[a>>2]|0;if(!b){i=d;j=0}else{cd(b);k[a>>2]=0;i=d;j=0}while(1){h=i+196|0;a=k[h>>2]|0;if(a){g=i+192|0;b=k[g>>2]|0;if(b){f=0;while(1){c=a+12|0;e=k[c>>2]|0;if(e){cd(e);k[c>>2]=0;b=k[g>>2]|0}f=f+1|0;if(f>>>0>=b>>>0)break;else a=a+16|0}a=k[h>>2]|0}cd(a);k[h>>2]=0}j=j+1|0;if((j|0)==(l|0))break;else i=i+232|0}cd(d);l=0;return l|0}else if((a|0)==32)return d|0;return 0}function _f(a,b,c,d,e,f,g,h,i,j,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;o=k[(k[b+76>>2]|0)+(c*5640|0)+5584>>2]|0;n=k[a+24>>2]|0;H=k[b+24>>2]|0;G=b+12|0;F=(ha(k[G>>2]|0,(c>>>0)%(H>>>0)|0)|0)+(k[b+4>>2]|0)|0;E=k[a>>2]|0;k[d>>2]=F>>>0>E>>>0?F:E;F=aj(k[G>>2]|0,0,F|0,0)|0;F=F|0-L;G=k[a+8>>2]|0;k[e>>2]=F>>>0<G>>>0?F:G;G=b+16|0;H=(ha(k[G>>2]|0,(c>>>0)/(H>>>0)|0)|0)+(k[b+8>>2]|0)|0;F=k[a+4>>2]|0;k[f>>2]=H>>>0>F>>>0?H:F;H=aj(k[G>>2]|0,0,H|0,0)|0;H=H|0-L;G=k[a+12>>2]|0;k[g>>2]=H>>>0<G>>>0?H:G;k[j>>2]=0;k[l>>2]=0;k[h>>2]=2147483647;k[i>>2]=2147483647;G=a+16|0;if(!(k[G>>2]|0))return;else H=0;while(1){r=k[m+(H<<2)>>2]|0;p=k[n>>2]|0;a=((k[d>>2]|0)+-1+p|0)/(p|0)|0;E=n+4|0;q=k[E>>2]|0;c=((k[f>>2]|0)+-1+q|0)/(q|0)|0;p=(p+-1+(k[e>>2]|0)|0)/(p|0)|0;q=(q+-1+(k[g>>2]|0)|0)/(q|0)|0;F=o+4|0;b=k[F>>2]|0;if(b>>>0>(k[l>>2]|0)>>>0){k[l>>2]=b;b=k[F>>2]|0}if(b){C=aj(a|0,((a|0)<0)<<31>>31|0,-1,-1)|0;D=L;A=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;B=L;y=aj(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;z=L;w=aj(q|0,((q|0)<0)<<31>>31|0,-1,-1)|0;x=L;v=0;while(1){b=b+-1|0;p=k[o+812+(v<<2)>>2]|0;u=k[o+944+(v<<2)>>2]|0;k[r>>2]=p;k[r+4>>2]=u;s=k[n>>2]<<p+b;I=k[E>>2]<<u+b;a=k[h>>2]|0;k[h>>2]=(a|0)<(s|0)?a:s;s=k[i>>2]|0;k[i>>2]=(s|0)<(I|0)?s:I;I=$i(1,0,b|0)|0;s=L;a=aj(C|0,D|0,I|0,s|0)|0;a=Zi(a|0,L|0,b|0)|0;q=aj(A|0,B|0,I|0,s|0)|0;q=Zi(q|0,L|0,b|0)|0;c=aj(y|0,z|0,I|0,s|0)|0;c=Zi(c|0,L|0,b|0)|0;s=aj(w|0,x|0,I|0,s|0)|0;s=Zi(s|0,L|0,b|0)|0;I=$i(1,0,u|0)|0;t=L;J=aj(s|0,((s|0)<0)<<31>>31|0,-1,-1)|0;t=aj(J|0,L|0,I|0,t|0)|0;t=Zi(t|0,L|0,u|0)|0;if((a|0)==(c|0))a=0;else{c=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;I=L;J=$i(1,0,p|0)|0;J=aj(c|0,I|0,J|0,L|0)|0;J=Zi(J|0,L|0,p|0)|0;a=(J<<p)-(a>>p<<p)>>p}J=(q|0)==(s|0)?0:(t<<u)-(q>>u<<u)>>u;k[r+8>>2]=a;k[r+12>>2]=J;a=ha(a,J)|0;if(a>>>0>(k[j>>2]|0)>>>0)k[j>>2]=a;v=v+1|0;if(v>>>0>=(k[F>>2]|0)>>>0)break;else r=r+16|0}}H=H+1|0;if(H>>>0>=(k[G>>2]|0)>>>0)break;else{n=n+52|0;o=o+1080|0}}return}function $f(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,l=0;j=(k[a+(b*5640|0)+420>>2]|0)+1|0;k[a+(b*5640|0)+500>>2]=k[a+(b*5640|0)+428>>2];k[a+(b*5640|0)+516>>2]=k[a+(b*5640|0)+440>>2];k[a+(b*5640|0)+496>>2]=k[a+(b*5640|0)+424>>2];k[a+(b*5640|0)+512>>2]=k[a+(b*5640|0)+436>>2];k[a+(b*5640|0)+508>>2]=k[a+(b*5640|0)+432>>2];k[a+(b*5640|0)+492>>2]=0;k[a+(b*5640|0)+460>>2]=k[a+(b*5640|0)+456>>2];k[a+(b*5640|0)+504>>2]=0;k[a+(b*5640|0)+520>>2]=g;k[a+(b*5640|0)+524>>2]=c;k[a+(b*5640|0)+528>>2]=d;k[a+(b*5640|0)+532>>2]=e;k[a+(b*5640|0)+536>>2]=f;k[a+(b*5640|0)+540>>2]=h;k[a+(b*5640|0)+544>>2]=i;if(j>>>0<=1)return;a=a+(b*5640|0)+572|0;b=1;while(1){k[a+76>>2]=k[a+4>>2];k[a+92>>2]=k[a+16>>2];k[a+72>>2]=k[a>>2];k[a+88>>2]=k[a+12>>2];l=k[a+8>>2]|0;k[a+84>>2]=l;k[a+36>>2]=k[a+32>>2];k[a+80>>2]=0;k[a+68>>2]=l>>>0>(k[a+-64>>2]|0)>>>0?l:0;k[a+96>>2]=g;k[a+100>>2]=c;k[a+104>>2]=d;k[a+108>>2]=e;k[a+112>>2]=f;k[a+116>>2]=h;k[a+120>>2]=i;b=b+1|0;if((b|0)==(j|0))break;else a=a+148|0}return}function ag(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;h=k[b+76>>2]|0;if((a|0)>-1)f=a;else{c=0;return c|0}a:while(1){switch(i[e+f>>0]|0){case 82:{g=3;break a}case 67:{g=5;break a}case 76:{g=7;break a}case 80:{g=9;break a}default:{}}f=f+-1|0}if((g|0)==3)if((k[h+(c*5640|0)+424+(d*148|0)+128>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+88>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==5)if((k[h+(c*5640|0)+424+(d*148|0)+132>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+92>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==7)if((k[h+(c*5640|0)+424+(d*148|0)+124>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+84>>2]|0))return (ag(a+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}else if((g|0)==9){if((k[h+(c*5640|0)+424+(d*148|0)+36>>2]|0)>>>0<2)if((k[h+(c*5640|0)+424+(d*148|0)+136>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+96>>2]|0))return (ag(f+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}if((k[h+(c*5640|0)+424+(d*148|0)+140>>2]|0)!=(k[h+(c*5640|0)+424+(d*148|0)+104>>2]|0)){c=1;return c|0}if((k[h+(c*5640|0)+424+(d*148|0)+144>>2]|0)==(k[h+(c*5640|0)+424+(d*148|0)+112>>2]|0))return (ag(f+-1|0,b,c,d,e)|0)!=0|0;else{c=1;return c|0}}return 0}function bg(a){a=a|0;var b=0,c=0;b=_c(1,44)|0;if(!b){a=0;return a|0}c=b+40|0;i[c>>0]=i[c>>0]&-2|(a|0)!=0;a=_c(1,4)|0;k[b+20>>2]=a;if(a){c=b;return c|0}cd(b);c=0;return c|0}function cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,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;O=r;r=r+1200|0;N=O;d=k[k[a+20>>2]>>2]|0;M=d+16|0;e=k[M>>2]|0;if(!e){r=O;return}J=d+20|0;K=(k[a+32>>2]|0)+8|0;L=(k[a+28>>2]|0)+88|0;H=a+24|0;I=(b|0)==0;F=(c|0)==0;G=b+-1|0;d=e;E=0;do{h=k[J>>2]|0;i=k[K>>2]|0;C=k[h+(E*52|0)+16>>2]|0;if(i){if(C){a=k[L>>2]|0;f=+((k[(k[(k[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)>>>0)*.0625;e=0;do{c=ha(C,e)|0;g=0;do{D=(c+g|0)*3|0;k[N+(e*120|0)+(g*12|0)>>2]=~~(+(k[a+(D<<2)>>2]|0)*f);k[N+(e*120|0)+(g*12|0)+4>>2]=~~(+(k[a+(D+1<<2)>>2]|0)*f);k[N+(e*120|0)+(g*12|0)+8>>2]=~~(+(k[a+(D+2<<2)>>2]|0)*f);g=g+1|0}while(g>>>0<C>>>0);e=e+1|0}while(e>>>0<i>>>0);D=9}}else D=9;if((D|0)==9){D=0;if(C){w=h+(E*52|0)+24|0;B=0;do{x=k[w>>2]|0;y=x+(B*136|0)+24|0;d=k[y>>2]|0;if(d){z=x+(B*136|0)+16|0;A=x+(B*136|0)+20|0;a=k[A>>2]|0;c=k[z>>2]|0;v=0;do{if(ha(a,c)|0){s=x+(B*136|0)+28+(v*36|0)+20|0;t=N+(b*120|0)+(B*12|0)+(v<<2)|0;u=N+(G*120|0)+(B*12|0)+(v<<2)|0;q=0;do{d=k[s>>2]|0;p=ha(k[d+(q*40|0)+20>>2]|0,k[d+(q*40|0)+16>>2]|0)|0;if(p){l=d+(q*40|0)+24|0;m=k[t>>2]|0;o=0;do{i=k[l>>2]|0;j=i+(o*52|0)|0;n=k[i+(o*52|0)+4>>2]|0;d=(k[(k[(k[H>>2]|0)+24>>2]|0)+(E*52|0)+24>>2]|0)-(k[i+(o*52|0)+28>>2]|0)|0;if(!I){a=k[u>>2]|0;c=m-a|0;if((a|0)<=(d|0)){c=c+(a-d)|0;c=(c|0)<0?0:c}}else{k[i+(o*52|0)+44>>2]=0;c=(m|0)>(d|0)?m-d|0:0}h=i+(o*52|0)+44|0;e=k[h>>2]|0;g=(e|0)==0;if(g)if(!c)c=0;else c=(c*3|0)+-2|0;else c=(c*3|0)+e|0;k[n+(b*24|0)>>2]=c-e;do if((c|0)!=(e|0)){a=k[i+(o*52|0)+8>>2]|0;d=k[a+((c+-1|0)*24|0)>>2]|0;if(g)k[n+(b*24|0)+16>>2]=k[j>>2];else{i=k[a+((e+-1|0)*24|0)>>2]|0;k[n+(b*24|0)+16>>2]=(k[j>>2]|0)+i;d=d-i|0}k[n+(b*24|0)+4>>2]=d;if(F)break;k[h>>2]=c}while(0);o=o+1|0}while(o>>>0<p>>>0);a=k[A>>2]|0;c=k[z>>2]|0}q=q+1|0}while(q>>>0<(ha(a,c)|0)>>>0);d=k[y>>2]|0}v=v+1|0}while(v>>>0<d>>>0)}B=B+1|0}while(B>>>0<C>>>0);d=k[M>>2]|0}}E=E+1|0}while(E>>>0<d>>>0);r=O;return}function dg(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;var e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,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;a=k[k[a+20>>2]>>2]|0;G=a+40+(b<<3)|0;p[G>>3]=0.0;H=a+16|0;e=k[H>>2]|0;if(!e)return;E=a+20|0;F=(b|0)==0;D=(d|0)==0;a=e;C=0;do{e=k[E>>2]|0;B=k[e+(C*52|0)+16>>2]|0;if(B){v=e+(C*52|0)+24|0;A=0;do{w=k[v>>2]|0;x=w+(A*136|0)+24|0;a=k[x>>2]|0;if(a){y=w+(A*136|0)+16|0;z=w+(A*136|0)+20|0;e=k[z>>2]|0;d=k[y>>2]|0;u=0;do{if(ha(e,d)|0){t=w+(A*136|0)+28+(u*36|0)+20|0;s=0;do{a=k[t>>2]|0;r=ha(k[a+(s*40|0)+20>>2]|0,k[a+(s*40|0)+16>>2]|0)|0;if(r){m=a+(s*40|0)+24|0;q=0;do{i=k[m>>2]|0;j=i+(q*52|0)|0;n=k[i+(q*52|0)+4>>2]|0;o=i+(q*52|0)+44|0;if(F){k[o>>2]=0;l=0}else l=k[o>>2]|0;d=k[i+(q*52|0)+48>>2]|0;if(l>>>0<d>>>0){g=k[i+(q*52|0)+8>>2]|0;a=l;h=l;do{e=k[g+(h*24|0)>>2]|0;f=+p[g+(h*24|0)+8>>3];if(a){J=a+-1|0;f=f-+p[g+(J*24|0)+8>>3];e=e-(k[g+(J*24|0)>>2]|0)|0}do if(!e){if(!(f!=0.0))break;a=h+1|0}else{if(!(c-f/+(e>>>0)<2.220446049250313e-16))break;a=h+1|0}while(0);h=h+1|0}while(h>>>0<d>>>0);g=a;k[n+(b*24|0)>>2]=g-l;if((g|0)!=(l|0)){d=g+-1|0;e=k[i+(q*52|0)+8>>2]|0;a=k[e+(d*24|0)>>2]|0;if(!l){k[n+(b*24|0)+16>>2]=k[j>>2];f=+p[e+(d*24|0)+8>>3]}else{l=l+-1|0;J=k[e+(l*24|0)>>2]|0;k[n+(b*24|0)+16>>2]=(k[j>>2]|0)+J;f=+p[e+(d*24|0)+8>>3]-+p[e+(l*24|0)+8>>3];a=a-J|0}k[n+(b*24|0)+4>>2]=a;p[n+(b*24|0)+8>>3]=f;p[G>>3]=f+ +p[G>>3];if(!D)k[o>>2]=g}else I=26}else{k[n+(b*24|0)>>2]=0;I=26}if((I|0)==26){I=0;p[n+(b*24|0)+8>>3]=0.0}q=q+1|0}while(q>>>0<r>>>0);e=k[z>>2]|0;d=k[y>>2]|0}s=s+1|0}while(s>>>0<(ha(e,d)|0)>>>0);a=k[x>>2]|0}u=u+1|0}while(u>>>0<a>>>0)}A=A+1|0}while(A>>>0<B>>>0);a=k[H>>2]|0}C=C+1|0}while(C>>>0<a>>>0);return}function eg(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.0,l=0.0,m=0.0,n=0.0,q=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;V=r;r=r+800|0;U=V;R=k[a+28>>2]|0;S=k[k[a+20>>2]>>2]|0;T=k[a+32>>2]|0;O=S+24|0;k[O>>2]=0;P=k[S+16>>2]|0;if(!P){f=0;J=0.0;h=0.0;m=1797693134862315708145274.0e284}else{M=k[S+20>>2]|0;N=k[(k[a+24>>2]|0)+24>>2]|0;f=0;Q=0;l=0.0;h=0.0;m=1797693134862315708145274.0e284;do{I=M+(Q*52|0)+48|0;k[I>>2]=0;K=k[M+(Q*52|0)+16>>2]|0;if(!K)g=0;else{L=k[M+(Q*52|0)+24>>2]|0;g=0;H=0;do{E=k[L+(H*136|0)+24>>2]|0;if(E){F=ha(k[L+(H*136|0)+20>>2]|0,k[L+(H*136|0)+16>>2]|0)|0;G=(F|0)==0;D=0;do{if(!G){C=k[L+(H*136|0)+28+(D*36|0)+20>>2]|0;B=0;do{z=ha(k[C+(B*40|0)+20>>2]|0,k[C+(B*40|0)+16>>2]|0)|0;if(z){A=k[C+(B*40|0)+24>>2]|0;y=0;do{v=k[A+(y*52|0)+48>>2]|0;if(v){w=k[A+(y*52|0)+8>>2]|0;u=0;do{t=k[w+(u*24|0)>>2]|0;n=+p[w+(u*24|0)+8>>3];if(u){W=u+-1|0;n=n-+p[w+(W*24|0)+8>>3];t=t-(k[w+(W*24|0)>>2]|0)|0}do if(t){n=n/+(t|0);m=n<m?n:m;if(!(n>l))break;l=n}while(0);u=u+1|0}while(u>>>0<v>>>0)}W=ha((k[A+(y*52|0)+24>>2]|0)-(k[A+(y*52|0)+16>>2]|0)|0,(k[A+(y*52|0)+20>>2]|0)-(k[A+(y*52|0)+12>>2]|0)|0)|0;f=W+f|0;g=W+g|0;y=y+1|0}while(y>>>0<z>>>0);k[O>>2]=f;k[I>>2]=g}B=B+1|0}while(B>>>0<F>>>0)}D=D+1|0}while(D>>>0<E>>>0)}H=H+1|0}while(H>>>0<K>>>0)}J=+(1<<k[N+(Q*52|0)+24>>2]|0)+-1.0;h=h+ +(g|0)*(J*J);Q=Q+1|0}while(Q>>>0<P>>>0);J=l}I=(e|0)!=0;if(I){Q=k[a+36>>2]|0;P=k[e+88>>2]|0;k[P+(Q*592|0)+552>>2]=f;p[P+(Q*592|0)+560>>3]=+p[S+32>>3];f=T+8|0;W=Zc(k[f>>2]<<3)|0;k[P+(Q*592|0)>>2]=W;if(!W){W=0;r=V;return W|0}}else f=T+8|0;if(!(k[f>>2]|0)){W=1;r=V;return W|0}z=S+32|0;A=R+93|0;B=a+36|0;C=e+88|0;D=S+40|0;E=a+24|0;F=a+8|0;G=a+16|0;H=0;while(1){l=+o[T+20+(H<<2)>>2];if(l!=0.0){w=~~+ga(+l)>>>0;w=w>>>0<d>>>0?w:d}else w=d;s=+o[T+5184+(H<<2)>>2];x=+p[z>>3]-h/+Y(10.0,+(s/10.0));W=i[A>>0]|0;if(!((W&1)!=0&l>0.0)?!((W&4)!=0&s>0.0):0)l=m;else{y=nh(k[E>>2]|0,R)|0;if(!y){f=0;g=57;break}v=H+1|0;g=U+(H+-1<<3)|0;t=S+40+(H<<3)|0;if(!H){q=J;g=0;s=m;n=0.0;do{l=(s+q)*.5;dg(a,0,l,0);do if(i[A>>0]&4){if(((j[R>>1]|0)+-3&65535)>=4){W=+p[D>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n;break}if(!(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0))s=l;else{W=+p[D>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n}}else{W=(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0)==0;q=W?q:l;s=W?l:s;n=W?n:l}while(0);g=g+1|0}while((g|0)!=128)}else{q=J;u=0;s=m;n=0.0;do{l=(s+q)*.5;dg(a,H,l,0);do if(i[A>>0]&4){if(((j[R>>1]|0)+-3&65535)>=4){W=+p[g>>3]+ +p[t>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n;break}if(!(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0))s=l;else{W=+p[g>>3]+ +p[t>>3]<x;q=W?l:q;s=W?s:l;n=W?l:n}}else{W=(lh(y,k[B>>2]|0,S,v,b,c,w,e,k[F>>2]|0,k[a>>2]|0,k[G>>2]|0,0)|0)==0;q=W?q:l;s=W?l:s;n=W?n:l}while(0);u=u+1|0}while((u|0)!=128)}oh(y);l=n==0.0?l:n}if(I)p[(k[(k[C>>2]|0)+((k[B>>2]|0)*592|0)>>2]|0)+(H<<3)>>3]=l;dg(a,H,l,1);if(!H)l=+p[D>>3];else l=+p[U+(H+-1<<3)>>3]+ +p[S+40+(H<<3)>>3];p[U+(H<<3)>>3]=l;H=H+1|0;if(H>>>0>=(k[f>>2]|0)>>>0){f=1;g=57;break}}if((g|0)==57){r=V;return f|0}return 0}function fg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a+24>>2]=b;k[a+28>>2]=c;e=_c(1,848)|0;d=a+20|0;k[k[d>>2]>>2]=e;if(!e){a=0;return a|0}e=b+16|0;f=_c(k[e>>2]|0,52)|0;b=k[k[d>>2]>>2]|0;k[b+20>>2]=f;if(!f){f=0;return f|0}k[b+16>>2]=k[e>>2];k[a>>2]=k[c+84>>2];f=1;return f|0}function gg(a){a=a|0;var 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;if(!a)return;s=a+20|0;b=k[s>>2]|0;do if(b){r=(i[a+40>>0]&1)==0?3:4;c=k[b>>2]|0;if(c){o=c+20|0;j=c+16|0;if(k[j>>2]|0){m=0;n=k[o>>2]|0;while(1){l=n+24|0;b=k[l>>2]|0;if(b){g=k[n+28>>2]|0;h=(g>>>0)/136|0;if(g>>>0>135){g=0;while(1){f=b+48|0;c=k[f>>2]|0;if(c){d=k[b+52>>2]|0;e=(d>>>0)/40|0;if(d>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=b+84|0;c=k[f>>2]|0;if(c){t=k[b+88>>2]|0;e=(t>>>0)/40|0;if(t>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=b+120|0;c=k[f>>2]|0;if(c){t=k[b+124>>2]|0;e=(t>>>0)/40|0;if(t>>>0>39){d=0;while(1){t=c+32|0;wg(k[t>>2]|0);k[t>>2]=0;t=c+36|0;wg(k[t>>2]|0);k[t>>2]=0;bb[r&7](c);d=d+1|0;if(d>>>0>=e>>>0)break;else c=c+40|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}g=g+1|0;if(g>>>0>=h>>>0)break;else b=b+136|0}b=k[l>>2]|0}cd(b);k[l>>2]=0}if((k[n+36>>2]|0)!=0?(p=n+32|0,q=k[p>>2]|0,(q|0)!=0):0){ad(q);k[p>>2]=0;k[p+4>>2]=0;k[p+8>>2]=0;k[p+12>>2]=0}m=m+1|0;if(m>>>0>=(k[j>>2]|0)>>>0)break;else n=n+52|0}}cd(k[o>>2]|0);k[o>>2]=0;cd(k[k[s>>2]>>2]|0);b=k[s>>2]|0;k[b>>2]=0;if(!b)break}cd(b);k[s>>2]=0}while(0);cd(a);return}function hg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=a+32|0;e=k[d>>2]|0;b=a+40|0;c=k[b>>2]|0;if(e){f=a+44|0;if(c>>>0<=(k[f>>2]|0)>>>0){a=1;return a|0}if(k[a+36>>2]|0){ad(e);e=$c(k[b>>2]|0)|0;k[d>>2]=e;if(!e){k[f>>2]=0;k[b>>2]=0;k[a+36>>2]=0;a=0;return a|0}else{k[f>>2]=k[b>>2];k[a+36>>2]=1;a=1;return a|0}}}f=$c(c)|0;k[d>>2]=f;if(!f){a=0;return a|0}k[a+44>>2]=k[b>>2];k[a+36>>2]=1;a=1;return a|0}function ig(a,b,c){a=a|0;b=b|0;c=c|0;return sg(a,b,1,1.0,52,c)|0}function jg(a,b,c){a=a|0;b=b|0;c=c|0;return sg(a,b,0,.5,56,c)|0}function kg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=k[a+24>>2]|0;e=k[c+16>>2]|0;if(!e){f=0;return f|0}f=0;b=0;d=k[c+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){h=k[d+24>>2]|0;h=((h&7|0)!=0&1)+(h>>>3)|0;g=k[c+24>>2]|0;a=(k[c+20>>2]|0)+-1|0;b=(ha(ha((h|0)==3?4:h,(k[g+(a*136|0)+8>>2]|0)-(k[g+(a*136|0)>>2]|0)|0)|0,(k[g+(a*136|0)+12>>2]|0)-(k[g+(a*136|0)+4>>2]|0)|0)|0)+b|0;f=f+1|0;if(f>>>0>=e>>>0)break;else{d=d+52|0;c=c+52|0}}return b|0}function lg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=r;r=r+16|0;w=y;if(!(k[a+8>>2]|0)){k[a+36>>2]=b;u=a+28|0;g=k[(k[u>>2]|0)+76>>2]|0;x=a+32|0;k[x>>2]=g+(b*5640|0);v=(f|0)==0;t=a+20|0;if(!v){h=k[(k[k[t>>2]>>2]|0)+20>>2]|0;n=k[g+(b*5640|0)+5584>>2]|0;o=h+16|0;if(!(k[o>>2]|0)){h=f+88|0;g=0}else{j=k[h+24>>2]|0;h=f+88|0;l=k[h>>2]|0;m=0;g=0;do{s=j+(m*136|0)+16|0;k[l+(b*592|0)+20+(m<<2)>>2]=k[s>>2];q=j+(m*136|0)+20|0;k[l+(b*592|0)+152+(m<<2)>>2]=k[q>>2];g=(ha(k[q>>2]|0,k[s>>2]|0)|0)+g|0;k[l+(b*592|0)+284+(m<<2)>>2]=k[n+812+(m<<2)>>2];k[l+(b*592|0)+416+(m<<2)>>2]=k[n+944+(m<<2)>>2];m=m+1|0}while(m>>>0<(k[o>>2]|0)>>>0)}s=_c(ha(ha(k[f+52>>2]|0,g)|0,k[f+56>>2]|0)|0,32)|0;k[(k[h>>2]|0)+(b*592|0)+548>>2]=s;if(!s){a=0;r=y;return a|0}}g=k[k[t>>2]>>2]|0;s=g+16|0;if(!(k[s>>2]|0)){m=k[x>>2]|0;j=0;h=k[g+20>>2]|0}else{m=k[x>>2]|0;h=k[g+20>>2]|0;b=0;p=k[m+5584>>2]|0;q=h;while(1){n=k[q+32>>2]|0;o=ha((k[q+12>>2]|0)-(k[q+4>>2]|0)|0,(k[q+8>>2]|0)-(k[q>>2]|0)|0)|0;g=(o|0)==0;if((k[p+20>>2]|0)==1){if(!g){j=p+1076|0;l=0;g=n;while(1){k[g>>2]=(k[g>>2]|0)-(k[j>>2]|0);l=l+1|0;if((l|0)==(o|0))break;else g=g+4|0}}}else if(!g){j=p+1076|0;l=0;g=n;while(1){k[g>>2]=(k[g>>2]|0)-(k[j>>2]|0)<<11;l=l+1|0;if((l|0)==(o|0))break;else g=g+4|0}}b=b+1|0;j=k[s>>2]|0;if(b>>>0>=j>>>0)break;else{p=p+1080|0;q=q+52|0}}}n=ha((k[h+12>>2]|0)-(k[h+4>>2]|0)|0,(k[h+8>>2]|0)-(k[h>>2]|0)|0)|0;a:do switch(k[m+16>>2]|0){case 0:break;case 2:{if(k[m+5608>>2]|0){l=Zc(j<<2)|0;if(!l){a=0;r=y;return a|0}g=k[s>>2]|0;if(!g)g=0;else{j=0;while(1){k[l+(j<<2)>>2]=k[h+32>>2];j=j+1|0;if((j|0)==(g|0))break;else h=h+52|0}}s=(Qf(k[(k[x>>2]|0)+5608>>2]|0,n,l,g,k[(k[(k[a+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;cd(l);if(s){a=0;r=y;return a|0}}break}default:{j=k[h+32>>2]|0;l=k[h+84>>2]|0;g=k[h+136>>2]|0;if(!(k[(k[m+5584>>2]|0)+20>>2]|0)){Of(j,l,g,n);break a}else{Mf(j,l,g,n);break a}}}while(0);g=k[k[t>>2]>>2]|0;h=g+16|0;b:do if(k[h>>2]|0){j=0;l=k[(k[x>>2]|0)+5584>>2]|0;g=k[g+20>>2]|0;c:while(1){switch(k[l+20>>2]|0){case 1:{if(!(Pg(g)|0)){g=0;h=54;break c}break}case 0:{if(!(Tg(g)|0)){g=0;h=54;break c}break}default:{}}j=j+1|0;if(j>>>0>=(k[h>>2]|0)>>>0)break b;else{l=l+1080|0;g=g+52|0}}if((h|0)==54){r=y;return g|0}}while(0);g=k[x>>2]|0;h=eh(1)|0;if(!h){a=0;r=y;return a|0}do if((k[g+16>>2]|0)==1)if(!(k[(k[g+5584>>2]|0)+20>>2]|0)){j=Lf()|0;l=3;break}else{j=Kf()|0;l=3;break}else{j=k[g+5600>>2]|0;l=k[(k[a+24>>2]|0)+16>>2]|0}while(0);t=hh(h,k[k[t>>2]>>2]|0,g,j,l)|0;fh(h);if(!t){a=0;r=y;return a|0}g=k[u>>2]|0;k[w>>2]=0;if(!v)k[f+12>>2]=0;if(!(i[g+93>>0]&5)){if(k[(k[x>>2]|0)+8>>2]|0){g=0;do{cg(a,g,1);g=g+1|0}while(g>>>0<(k[(k[x>>2]|0)+8>>2]|0)>>>0)}}else if(!(eg(a,c,w,e,f)|0)){a=0;r=y;return a|0}}if(f)k[f+12>>2]=1;g=nh(k[a+24>>2]|0,k[a+28>>2]|0)|0;if(!g)g=1;else{a=lh(g,k[a+36>>2]|0,k[k[a+20>>2]>>2]|0,k[(k[a+32>>2]|0)+8>>2]|0,c,d,e,f,k[a+4>>2]|0,k[a>>2]|0,k[a+16>>2]|0,1)|0;oh(g);g=(a|0)==0}a=g&1^1;r=y;return a|0}function mg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+16|0;j=u+8|0;i=u;h=u+12|0;g=a+36|0;k[g>>2]=d;t=k[a+28>>2]|0;n=a+32|0;k[n>>2]=(k[t+76>>2]|0)+(d*5640|0);k[h>>2]=0;m=a+24|0;d=nh(k[m>>2]|0,t)|0;if(!d){t=0;r=u;return t|0}l=a+20|0;t=mh(d,k[g>>2]|0,k[k[l>>2]>>2]|0,b,h,c,e,f)|0;oh(d);if(!t){t=0;r=u;return t|0}d=k[k[l>>2]>>2]|0;a=k[(k[n>>2]|0)+5584>>2]|0;g=k[d+20>>2]|0;c=eh(0)|0;if(!c){t=0;r=u;return t|0}h=d+16|0;a:do if(k[h>>2]|0){e=0;d=g;while(1){if(!(gh(c,d,a)|0))break;e=e+1|0;if(e>>>0>=(k[h>>2]|0)>>>0)break a;else{a=a+1080|0;d=d+52|0}}fh(c);t=0;r=u;return t|0}while(0);fh(c);d=k[k[l>>2]>>2]|0;g=d+16|0;do if(k[g>>2]|0){h=0;e=k[(k[m>>2]|0)+24>>2]|0;c=k[(k[n>>2]|0)+5584>>2]|0;a=k[d+20>>2]|0;while(1){d=(k[e+36>>2]|0)+1|0;if((k[c+20>>2]|0)==1){if(!(Qg(a,d)|0)){d=0;a=49;break}}else if(!(Xg(a,d)|0)){d=0;a=49;break}h=h+1|0;if(h>>>0>=(k[g>>2]|0)>>>0){a=14;break}else{e=e+52|0;c=c+1080|0;a=a+52|0}}if((a|0)==14){d=k[k[l>>2]>>2]|0;break}else if((a|0)==49){r=u;return d|0}}while(0);h=k[n>>2]|0;a=k[d+20>>2]|0;g=k[h+16>>2]|0;do if(g){b=ha((k[a+12>>2]|0)-(k[a+4>>2]|0)|0,(k[a+8>>2]|0)-(k[a>>2]|0)|0)|0;c=d+16|0;d=k[c>>2]|0;if(d>>>0<=2){k[j>>2]=d;cc(f,1,19703,j)|0;break}if((ha((k[a+64>>2]|0)-(k[a+56>>2]|0)|0,(k[a+60>>2]|0)-(k[a+52>>2]|0)|0)|0)>=(b|0)?(ha((k[a+116>>2]|0)-(k[a+108>>2]|0)|0,(k[a+112>>2]|0)-(k[a+104>>2]|0)|0)|0)>=(b|0):0){if((g|0)!=2){d=k[a+32>>2]|0;if((k[(k[h+5584>>2]|0)+20>>2]|0)==1){Nf(d,k[a+84>>2]|0,k[a+136>>2]|0,b);break}else{Pf(d,k[a+84>>2]|0,k[a+136>>2]|0,b);break}}e=h+5604|0;if(!(k[e>>2]|0))break;h=Zc(d<<2)|0;if(!h){t=0;r=u;return t|0}d=k[c>>2]|0;if(!d)d=0;else{g=0;while(1){k[h+(g<<2)>>2]=k[a+32>>2];g=g+1|0;if((g|0)==(d|0))break;else a=a+52|0}}t=(Rf(k[e>>2]|0,b,h,d,k[(k[(k[m>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;cd(h);if(t)d=0;else break;r=u;return d|0}cc(f,1,19642,i)|0;t=0;r=u;return t|0}while(0);d=k[k[l>>2]>>2]|0;s=d+16|0;if(!(k[s>>2]|0)){t=1;r=u;return t|0}t=0;q=k[(k[m>>2]|0)+24>>2]|0;p=k[(k[n>>2]|0)+5584>>2]|0;n=k[d+20>>2]|0;while(1){m=k[n+24>>2]|0;f=k[q+36>>2]|0;g=k[m+(f*136|0)+8>>2]|0;h=k[m+(f*136|0)>>2]|0;l=g-h|0;e=k[m+(f*136|0)+12>>2]|0;f=k[m+(f*136|0)+4>>2]|0;m=(k[n+8>>2]|0)-(k[n>>2]|0)-l|0;d=k[q+24>>2]|0;if(!(k[q+32>>2]|0)){d=1<<d;j=0}else{j=1<<d+-1;d=j;j=0-j|0}i=d+-1|0;d=k[n+32>>2]|0;a=(e|0)==(f|0);if((k[p+20>>2]|0)==1){if(!a){c=(g|0)==(h|0);b=p+1076|0;h=e-f|0;e=0;while(1){if(!c){a=0;g=d;while(1){f=(k[b>>2]|0)+(k[g>>2]|0)|0;k[g>>2]=(f|0)<(j|0)?j:(f|0)>(i|0)?i:f;a=a+1|0;if((a|0)==(l|0))break;else g=g+4|0}d=d+(l<<2)|0}e=e+1|0;if((e|0)==(h|0))break;else d=d+(m<<2)|0}}}else if(!a){c=(g|0)==(h|0);b=p+1076|0;h=e-f|0;e=0;while(1){if(!c){a=0;g=d;while(1){f=Rh(+o[g>>2])|0;f=(k[b>>2]|0)+f|0;k[g>>2]=(f|0)<(j|0)?j:(f|0)>(i|0)?i:f;a=a+1|0;if((a|0)==(l|0))break;else g=g+4|0}d=d+(l<<2)|0}e=e+1|0;if((e|0)==(h|0))break;else d=d+(m<<2)|0}}t=t+1|0;if(t>>>0>=(k[s>>2]|0)>>>0){d=1;break}else{q=q+52|0;p=p+1080|0;n=n+52|0}}r=u;return d|0}function ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+24|0;m=k[q>>2]|0;e=k[m+16>>2]|0;l=(e|0)==0;if(l){q=1;return q|0}f=0;d=0;g=k[m+24>>2]|0;h=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){n=k[g+24>>2]|0;n=((n&7|0)!=0&1)+(n>>>3)|0;o=k[h+24>>2]|0;p=(k[h+20>>2]|0)+-1|0;d=(ha(ha((n|0)==3?4:n,(k[o+(p*136|0)+8>>2]|0)-(k[o+(p*136|0)>>2]|0)|0)|0,(k[o+(p*136|0)+12>>2]|0)-(k[o+(p*136|0)+4>>2]|0)|0)|0)+d|0;f=f+1|0;if((f|0)==(e|0))break;else{g=g+52|0;h=h+52|0}}d=d>>>0>c>>>0;if(d|l){q=d&1^1;return q|0}p=0;o=k[m+24>>2]|0;n=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){l=k[o+24>>2]|0;a=k[n+24>>2]|0;c=k[o+36>>2]|0;f=k[a+(c*136|0)+8>>2]|0;g=k[a+(c*136|0)>>2]|0;m=f-g|0;h=k[a+(c*136|0)+12>>2]|0;c=k[a+(c*136|0)+4>>2]|0;a=(k[n+8>>2]|0)-(k[n>>2]|0)-m|0;l=((l&7|0)!=0&1)+(l>>>3)|0;a:do switch(((l|0)==3?4:l)|0){case 1:{d=k[n+32>>2]|0;e=(h|0)==(c|0);if(!(k[o+32>>2]|0)){if(e)break a;l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+m|0;f=0;e=d;while(1){i[b>>0]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+1|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}else{if(e)break a;l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+m|0;f=0;e=d;while(1){i[b>>0]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+1|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}case 2:{d=k[n+32>>2]|0;e=(h|0)==(c|0);if(!(k[o+32>>2]|0)){if(!e){l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+(m<<1)|0;f=0;e=d;while(1){j[b>>1]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+2|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}}else if(!e){l=(f|0)==(g|0);h=h-c|0;c=0;while(1){if(!l){g=b+(m<<1)|0;f=0;e=d;while(1){j[b>>1]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+2|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}case 4:{if((h|0)!=(c|0)){l=(f|0)==(g|0);h=h-c|0;c=0;d=k[n+32>>2]|0;while(1){if(!l){g=b+(m<<2)|0;f=0;e=d;while(1){k[b>>2]=k[e>>2];f=f+1|0;if((f|0)==(m|0))break;else{b=b+4|0;e=e+4|0}}b=g;d=d+(m<<2)|0}c=c+1|0;if((c|0)==(h|0))break;else d=d+(a<<2)|0}}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(k[(k[q>>2]|0)+16>>2]|0)>>>0){b=1;break}else{o=o+52|0;n=n+52|0}}return b|0}function og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=k[a+24>>2]|0;e=k[c+16>>2]|0;if(!e){f=0;return f|0}f=0;b=0;d=k[c+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=k[d+24>>2]|0;a=((a&7|0)!=0&1)+(a>>>3)|0;b=(ha(ha((k[c+12>>2]|0)-(k[c+4>>2]|0)|0,(k[c+8>>2]|0)-(k[c>>2]|0)|0)|0,(a|0)==3?4:a)|0)+b|0;f=f+1|0;if(f>>>0>=e>>>0)break;else{d=d+52|0;c=c+52|0}}return b|0}function pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0;o=k[a+24>>2]|0;q=o+16|0;e=k[q>>2]|0;n=(e|0)==0;if(n)d=0;else{f=0;d=0;g=k[o+24>>2]|0;h=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){p=k[g+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;d=(ha(ha((k[h+12>>2]|0)-(k[h+4>>2]|0)|0,(k[h+8>>2]|0)-(k[h>>2]|0)|0)|0,(p|0)==3?4:p)|0)+d|0;f=f+1|0;if((f|0)==(e|0))break;else{g=g+52|0;h=h+52|0}}}d=(d|0)!=(c|0);if(d|n){q=d&1^1;return q|0}p=0;n=k[o+24>>2]|0;c=k[(k[k[a+20>>2]>>2]|0)+20>>2]|0;while(1){a=k[n+24>>2]|0;d=(k[c+8>>2]|0)-(k[c>>2]|0)|0;e=(k[c+12>>2]|0)-(k[c+4>>2]|0)|0;h=ha(e,d)|0;a=((a&7|0)!=0&1)+(a>>>3)|0;a:do switch(((a|0)==3?4:a)|0){case 1:{e=k[c+32>>2]|0;d=(h|0)==0;if(!(k[n+32>>2]|0)){if(d)break a;else{f=0;d=e;e=b}while(1){k[d>>2]=l[e>>0];f=f+1|0;if((f|0)==(h|0))break;else{d=d+4|0;e=e+1|0}}b=b+h|0;break a}else{if(d)break a;else{f=0;d=e;e=b}while(1){k[d>>2]=i[e>>0];f=f+1|0;if((f|0)==(h|0))break;else{d=d+4|0;e=e+1|0}}b=b+h|0;break a}}case 2:{g=k[c+32>>2]|0;f=(h|0)==0;if(!(k[n+32>>2]|0)){if(!f){f=b+(ha(e<<1,d)|0)|0;e=0;d=g;while(1){k[d>>2]=m[b>>1];e=e+1|0;if((e|0)==(h|0))break;else{d=d+4|0;b=b+2|0}}b=f}}else if(!f){f=b+(ha(e<<1,d)|0)|0;e=0;d=g;while(1){k[d>>2]=j[b>>1];e=e+1|0;if((e|0)==(h|0))break;else{d=d+4|0;b=b+2|0}}b=f}break}case 4:{if(h){f=b+(ha(e<<2,d)|0)|0;d=0;e=k[c+32>>2]|0;while(1){k[e>>2]=k[b>>2];d=d+1|0;if((d|0)==(h|0))break;else{e=e+4|0;b=b+4|0}}b=f}break}default:{}}while(0);p=p+1|0;if(p>>>0>=(k[q>>2]|0)>>>0){b=1;break}else{n=n+52|0;c=c+52|0}}return b|0}function qg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+24|0;b=k[f>>2]|0;if(!b)return;e=k[a+28>>2]|0;d=(e>>>0)/52|0;if(e>>>0>51){e=0;while(1){a=k[b>>2]|0;if(a){cd(a+-1|0);k[b>>2]=0}a=b+4|0;c=k[a>>2]|0;if(c){cd(c);k[a>>2]=0}a=b+8|0;c=k[a>>2]|0;if(c){cd(c);k[a>>2]=0}e=e+1|0;if(e>>>0>=d>>>0)break;else b=b+52|0}b=k[f>>2]|0}cd(b);k[f>>2]=0;return}function rg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+24|0;b=k[f>>2]|0;if(!b)return;e=k[a+28>>2]|0;d=(e>>>0)/56|0;if(e>>>0>55){e=0;while(1){a=k[b>>2]|0;if(a){cd(a);k[b>>2]=0}c=b+4|0;a=k[c>>2]|0;if(a){cd(a);k[c>>2]=0}e=e+1|0;if(e>>>0>=d>>>0)break;else b=b+56|0}b=k[f>>2]|0}cd(b);k[f>>2]=0;return}function sg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0.0;Sa=r;r=r+80|0;La=Sa+64|0;Ka=Sa+56|0;Na=Sa+48|0;Pa=Sa+40|0;Oa=Sa+32|0;Qa=Sa+24|0;Ma=Sa+16|0;Ja=Sa+8|0;g=k[a+28>>2]|0;Ia=k[k[a+20>>2]>>2]|0;n=k[(k[g+76>>2]|0)+(b*5640|0)+5584>>2]|0;p=k[Ia+20>>2]|0;l=k[a+24>>2]|0;m=k[l+24>>2]|0;Fa=k[g+24>>2]|0;j=k[g+12>>2]|0;Ha=(ha(j,(b>>>0)%(Fa>>>0)|0)|0)+(k[g+4>>2]|0)|0;h=k[l>>2]|0;h=Ha>>>0>h>>>0?Ha:h;k[Ia>>2]=h;Ha=aj(j|0,0,Ha|0,0)|0;Ha=Ha|0-L;j=k[l+8>>2]|0;j=Ha>>>0<j>>>0?Ha:j;Ha=Ia+8|0;k[Ha>>2]=j;Ga=k[g+16>>2]|0;Fa=(ha(Ga,(b>>>0)/(Fa>>>0)|0)|0)+(k[g+8>>2]|0)|0;b=k[l+4>>2]|0;b=Fa>>>0>b>>>0?Fa:b;Ea=Ia+4|0;k[Ea>>2]=b;Fa=aj(Ga|0,0,Fa|0,0)|0;Fa=Fa|0-L;l=k[l+12>>2]|0;l=Fa>>>0<l>>>0?Fa:l;Fa=Ia+12|0;k[Fa>>2]=l;if(!(k[n+4>>2]|0)){cc(f,1,19777,Sa)|0;Ra=0;r=Sa;return Ra|0}Ga=Ia+16|0;if(!(k[Ga>>2]|0)){Ra=1;r=Sa;return Ra|0}Da=g+80|0;Ca=a+40|0;Ba=(c|0)==0;g=b;Aa=0;a:while(1){k[m+36>>2]=0;va=k[m>>2]|0;b=(h+-1+va|0)/(va|0)|0;k[p>>2]=b;wa=k[m+4>>2]|0;g=(g+-1+wa|0)/(wa|0)|0;za=p+4|0;k[za>>2]=g;va=(j+-1+va|0)/(va|0)|0;ya=p+8|0;k[ya>>2]=va;wa=(l+-1+wa|0)/(wa|0)|0;xa=p+12|0;k[xa>>2]=wa;b=va-b|0;g=wa-g|0;if((4294967295/(b>>>0)|0)>>>0<g>>>0){Ra=6;break}b=ha(g,b)|0;if(b>>>0>1073741823){Ra=8;break}j=b<<2;va=k[n+4>>2]|0;wa=p+16|0;k[wa>>2]=va;a=k[Da>>2]|0;k[p+20>>2]=va>>>0<a>>>0?1:va-a|0;a=p+40|0;k[a>>2]=j;do if(i[Ca>>0]&1){c=p+32|0;h=k[c>>2]|0;if(h){g=p+44|0;if(j>>>0<=(k[g>>2]|0)>>>0)break;b=p+36|0;if(k[b>>2]|0){ad(h);va=$c(k[a>>2]|0)|0;k[c>>2]=va;if(!va){Ra=16;break a}k[g>>2]=k[a>>2];k[b>>2]=1;break}}va=$c(j)|0;k[c>>2]=va;if(!va)break a;k[p+44>>2]=k[a>>2];k[p+36>>2]=1}while(0);c=(k[wa>>2]|0)*136|0;g=p+24|0;a=k[g>>2]|0;if(a){b=p+28|0;if(c>>>0>(k[b>>2]|0)>>>0){a=bd(a,c)|0;if(!a){Ra=24;break}k[g>>2]=a;va=k[b>>2]|0;_i(a+va|0,0,c-va|0)|0;k[b>>2]=c}}else{b=Zc(c)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break}k[p+28>>2]=c;_i(b|0,0,c|0)|0}b=k[wa>>2]|0;va=(k[n+20>>2]|0)==0?7:8;if(b){ra=n+8|0;sa=n+12|0;ta=m+24|0;ua=n+804|0;qa=k[g>>2]|0;g=n+28|0;a=0;while(1){oa=b;pa=b+-1|0;la=k[p>>2]|0;ma=$i(1,0,pa|0)|0;ma=aj(ma|0,L|0,-1,-1)|0;na=L;la=aj(ma|0,na|0,la|0,((la|0)<0)<<31>>31|0)|0;la=Zi(la|0,L|0,pa|0)|0;k[qa>>2]=la;c=k[za>>2]|0;c=aj(ma|0,na|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,pa|0)|0;k[qa+4>>2]=c;b=k[ya>>2]|0;b=aj(ma|0,na|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,pa|0)|0;k[qa+8>>2]=b;h=k[xa>>2]|0;h=aj(ma|0,na|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Zi(h|0,L|0,pa|0)|0;k[qa+12>>2]=h;q=k[n+812+(a<<2)>>2]|0;l=k[n+944+(a<<2)>>2]|0;s=la>>q<<q;t=c>>l<<l;j=$i(1,0,l|0)|0;j=aj(j|0,L|0,-1,-1)|0;j=aj(j|0,L|0,h|0,((h|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,l|0)|0;if((la|0)==(b|0))b=0;else{la=$i(1,0,q|0)|0;la=aj(la|0,L|0,-1,-1)|0;b=aj(la|0,L|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,q|0)|0;b=(b<<q)-s>>q}la=qa+16|0;k[la>>2]=b;ia=(c|0)==(h|0)?0:(j<<l)-t>>l;k[qa+20>>2]=ia;ia=ha(ia,b)|0;ja=ia*40|0;ka=(a|0)==0;if(ka)b=1;else{s=aj(s|0,((s|0)<0)<<31>>31|0,1,0)|0;s=bj(s|0,L|0,1)|0;t=aj(t|0,((t|0)<0)<<31>>31|0,1,0)|0;t=bj(t|0,L|0,1)|0;b=3;l=l+-1|0;q=q+-1|0}ga=qa+24|0;k[ga>>2]=b;S=k[ra>>2]|0;S=S>>>0<q>>>0?S:q;T=k[sa>>2]|0;T=T>>>0<l>>>0?T:l;U=(ia|0)!=0;V=(ia|0)==0;W=1<<q;X=1<<l;Y=$i(1,0,S|0)|0;Y=aj(Y|0,L|0,-1,-1)|0;Z=L;_=$i(1,0,T|0)|0;_=aj(_|0,L|0,-1,-1)|0;$=L;aa=1<<S;ba=1<<T;ca=$i(1,0,oa|0)|0;ca=aj(ca|0,L|0,-1,-1)|0;da=L;ea=0;fa=qa+28|0;R=g;while(1){if(ka){b=k[p>>2]|0;b=aj(ma|0,na|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,pa|0)|0;g=k[za>>2]|0;g=aj(ma|0,na|0,g|0,((g|0)<0)<<31>>31|0)|0;g=Zi(g|0,L|0,pa|0)|0;c=k[ya>>2]|0;c=aj(ma|0,na|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,pa|0)|0;j=k[xa>>2]|0;j=aj(ma|0,na|0,j|0,((j|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,pa|0)|0;h=0}else{h=ea+1|0;b=k[p>>2]|0;O=$i(h&1|0,0,pa|0)|0;O=Yi(ca|0,da|0,O|0,L|0)|0;j=L;b=aj(O|0,j|0,b|0,((b|0)<0)<<31>>31|0)|0;b=Zi(b|0,L|0,oa|0)|0;g=k[za>>2]|0;P=$i(h>>>1|0,0,pa|0)|0;P=Yi(ca|0,da|0,P|0,L|0)|0;Q=L;g=aj(P|0,Q|0,g|0,((g|0)<0)<<31>>31|0)|0;g=Zi(g|0,L|0,oa|0)|0;c=k[ya>>2]|0;c=aj(O|0,j|0,c|0,((c|0)<0)<<31>>31|0)|0;c=Zi(c|0,L|0,oa|0)|0;j=k[xa>>2]|0;j=aj(P|0,Q|0,j|0,((j|0)<0)<<31>>31|0)|0;j=Zi(j|0,L|0,oa|0)|0}k[fa+16>>2]=h;k[fa>>2]=b;Q=fa+4|0;k[Q>>2]=g;P=fa+8|0;k[P>>2]=c;O=fa+12|0;k[O>>2]=j;g=eb[va&15](h)|0;Ta=+(k[R+4>>2]|0)*.00048828125+1.0;Ta=+Qh(1.0,(k[ta>>2]|0)+g-(k[R>>2]|0)|0)*Ta*d;o[fa+32>>2]=Ta;k[fa+28>>2]=(k[R>>2]|0)+-1+(k[ua>>2]|0);g=fa+20|0;c=k[g>>2]|0;if(!(U&(c|0)==0)){b=fa+24|0;if((k[b>>2]|0)>>>0<ja>>>0){c=bd(c,ja)|0;if(!c){Ra=41;break a}k[g>>2]=c;N=k[b>>2]|0;_i(c+N|0,0,ja-N|0)|0;k[b>>2]=ja}}else{b=Zc(ja)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break a}_i(b|0,0,ja|0)|0;k[fa+24>>2]=ja}if(!V){M=k[g>>2]|0;N=0;while(1){E=k[la>>2]|0;I=(((N>>>0)%(E>>>0)|0)<<q)+s|0;E=(((N>>>0)/(E>>>0)|0)<<l)+t|0;F=I+W|0;G=E+X|0;H=k[fa>>2]|0;H=(I|0)>(H|0)?I:H;k[M>>2]=H;I=k[Q>>2]|0;I=(E|0)>(I|0)?E:I;E=M+4|0;k[E>>2]=I;K=k[P>>2]|0;K=(F|0)<(K|0)?F:K;F=M+8|0;k[F>>2]=K;h=k[O>>2]|0;h=(G|0)<(h|0)?G:h;G=M+12|0;k[G>>2]=h;H=H>>S<<S;I=I>>T<<T;K=aj(Y|0,Z|0,K|0,((K|0)<0)<<31>>31|0)|0;K=Zi(K|0,L|0,S|0)|0;h=aj(_|0,$|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Zi(h|0,L|0,T|0)|0;K=(K<<S)-H>>S;J=M+16|0;k[J>>2]=K;h=(h<<T)-I>>T;u=M+20|0;k[u>>2]=h;K=ha(h,K)|0;h=ha(K,e)|0;g=M+24|0;c=k[g>>2]|0;do if((c|0)==0&(K|0)!=0){b=Zc(h)|0;k[g>>2]=b;if(!b){b=0;Ra=87;break a}_i(b|0,0,h|0)|0;k[M+28>>2]=h}else{b=M+28|0;if(h>>>0<=(k[b>>2]|0)>>>0)break;c=bd(c,h)|0;if(!c){Ra=50;break a}k[g>>2]=c;D=k[b>>2]|0;_i(c+D|0,0,h-D|0)|0;k[b>>2]=h}while(0);j=M+32|0;b=k[j>>2]|0;c=k[J>>2]|0;h=k[u>>2]|0;if(!b)b=tg(c,h,f)|0;else b=vg(b,c,h,f)|0;k[j>>2]=b;if(!b)cc(f,2,19990,Ka)|0;j=M+36|0;c=k[j>>2]|0;h=k[J>>2]|0;b=k[u>>2]|0;if(!c)b=tg(h,b,f)|0;else b=vg(c,h,b,f)|0;k[j>>2]=b;if(!b)cc(f,2,20012,La)|0;if(K){D=0;do{A=k[J>>2]|0;z=(((D>>>0)%(A>>>0)|0)<<S)+H|0;A=(((D>>>0)/(A>>>0)|0)<<T)+I|0;B=z+aa|0;C=A+ba|0;do if(Ba){b=k[g>>2]|0;c=b+(D*56|0)|0;h=k[c>>2]|0;if(!h){y=Zc(8192)|0;k[c>>2]=y;if(!y){b=0;Ra=87;break a}k[b+(D*56|0)+32>>2]=8192;y=_c(10,32)|0;k[b+(D*56|0)+4>>2]=y;if(!y){b=0;Ra=87;break a}k[b+(D*56|0)+52>>2]=10}else{j=b+(D*56|0)+32|0;u=k[j>>2]|0;v=b+(D*56|0)+4|0;w=k[v>>2]|0;x=c;y=x+52|0;do{k[x>>2]=0;x=x+4|0}while((x|0)<(y|0));k[c>>2]=h;k[j>>2]=u;k[v>>2]=w}y=k[M>>2]|0;k[b+(D*56|0)+8>>2]=(z|0)>(y|0)?z:y;z=k[E>>2]|0;k[b+(D*56|0)+12>>2]=(A|0)>(z|0)?A:z;A=k[F>>2]|0;k[b+(D*56|0)+16>>2]=(B|0)<(A|0)?B:A;B=k[G>>2]|0;k[b+(D*56|0)+20>>2]=(C|0)<(B|0)?C:B}else{c=k[g>>2]|0;b=c+(D*52|0)+4|0;if((k[b>>2]|0)==0?(y=_c(100,24)|0,k[b>>2]=y,(y|0)==0):0){b=0;Ra=87;break a}b=c+(D*52|0)+8|0;if((k[b>>2]|0)==0?(y=_c(100,24)|0,k[b>>2]=y,(y|0)==0):0){b=0;Ra=87;break a}j=k[M>>2]|0;j=(z|0)>(j|0)?z:j;k[c+(D*52|0)+12>>2]=j;b=k[E>>2]|0;A=(A|0)>(b|0)?A:b;k[c+(D*52|0)+16>>2]=A;b=k[F>>2]|0;b=(B|0)<(b|0)?B:b;k[c+(D*52|0)+20>>2]=b;B=k[G>>2]|0;C=(C|0)<(B|0)?C:B;k[c+(D*52|0)+24>>2]=C;j=ha(C-A|0,b-j<<2)|0;b=c+(D*52|0)+36|0;if(j>>>0<=(k[b>>2]|0)>>>0)break;h=c+(D*52|0)|0;c=k[h>>2]|0;if(c)cd(c+-1|0);c=Zc(j|1)|0;k[h>>2]=c;if(!c){Ra=74;break a}k[b>>2]=j;i[c>>0]=0;k[h>>2]=(k[h>>2]|0)+1}while(0);D=D+1|0}while(D>>>0<K>>>0)}N=N+1|0;if(N>>>0>=ia>>>0)break;else M=M+40|0}}g=R+8|0;ea=ea+1|0;if(ea>>>0>=(k[ga>>2]|0)>>>0)break;else{fa=fa+36|0;R=g}}a=a+1|0;if(a>>>0<(k[wa>>2]|0)>>>0){b=pa;qa=qa+136|0}else break}}b=Aa+1|0;if(b>>>0>=(k[Ga>>2]|0)>>>0){b=1;Ra=87;break}h=k[Ia>>2]|0;g=k[Ea>>2]|0;j=k[Ha>>2]|0;l=k[Fa>>2]|0;Aa=b;m=m+52|0;n=n+1080|0;p=p+52|0}if((Ra|0)==6){cc(f,1,19816,Ja)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==8){cc(f,1,19816,Ma)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==16){k[g>>2]=0;k[a>>2]=0;k[b>>2]=0}else if((Ra|0)==24){cc(f,1,19849,Oa)|0;cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==41){cc(f,1,19889,Pa)|0;cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==50){cd(k[g>>2]|0);k[g>>2]=0;k[b>>2]=0;cc(f,1,19932,Na)|0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==74){k[b>>2]=0;Ra=0;r=Sa;return Ra|0}else if((Ra|0)==87){r=Sa;return b|0}cc(f,1,19816,Qa)|0;Ra=0;r=Sa;return Ra|0}function tg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+288|0;j=v+16|0;h=v+8|0;t=v+152|0;u=v+24|0;d=_c(1,20)|0;if(!d){cc(c,1,20034,v)|0;u=0;r=v;return u|0}k[d>>2]=a;l=d+4|0;k[l>>2]=b;k[t>>2]=a;k[u>>2]=b;i=d+8|0;k[i>>2]=0;e=0;g=0;while(1){s=ha(b,a)|0;a=(a+1|0)/2|0;f=g+1|0;k[t+(f<<2)>>2]=a;b=(b+1|0)/2|0;k[u+(f<<2)>>2]=b;e=e+s|0;if(s>>>0<=1)break;else g=f}k[i>>2]=e;if(!e){cd(d);cc(c,2,20072,h)|0;u=0;r=v;return u|0}e=_c(e,16)|0;k[d+12>>2]=e;if(!e){cc(c,1,20122,j)|0;cd(d);u=0;r=v;return u|0}s=k[i>>2]|0;k[d+16>>2]=s<<4;b=e+((ha(k[l>>2]|0,k[d>>2]|0)|0)<<4)|0;if(!g)b=e;else{q=0;f=b;a=b;b=e;do{o=k[u+(q<<2)>>2]|0;a:do if((o|0)>0){p=k[t+(q<<2)>>2]|0;if((p|0)<=0){i=o+-1|0;c=0;while(1){n=(c&1|0)!=0|(c|0)==(i|0);h=n?f:a;a=n?f:a+(p<<4)|0;c=c+1|0;if((c|0)>=(o|0)){f=h;break a}else f=h}}n=((p+2+((p|0)<2?~p:-3)|0)>>>1)+1|0;l=o+-1|0;m=0;do{c=p;j=f;while(1){k[b>>2]=j;h=b+16|0;i=c;c=c+-2|0;if((c|0)>-1){k[h>>2]=j;b=b+32|0}else b=h;if((i|0)<=2)break;else j=j+16|0}j=f+(n<<4)|0;c=(m&1|0)!=0|(m|0)==(l|0);f=c?j:a;a=c?j:a+(p<<4)|0;m=m+1|0}while((m|0)<(o|0))}while(0);q=q+1|0}while((q|0)!=(g|0))}k[b>>2]=0;if(!s){u=d;r=v;return u|0}else b=0;while(1){k[e+4>>2]=999;k[e+8>>2]=0;k[e+12>>2]=0;b=b+1|0;if((b|0)==(s|0))break;else e=e+16|0}r=v;return d|0}function ug(a){a=a|0;var b=0,c=0;if(!a)return;b=k[a+8>>2]|0;if(!b)return;c=0;a=k[a+12>>2]|0;while(1){k[a+4>>2]=999;k[a+8>>2]=0;k[a+12>>2]=0;c=c+1|0;if(c>>>0>=b>>>0)break;else a=a+16|0}return}
|
|
1230
|
+
function lb(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function mb(){return r|0}function nb(a){a=a|0;r=a}function ob(a,b){a=a|0;b=b|0;r=a;s=b}function pb(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function qb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function rb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function sb(a){a=a|0;L=a}function tb(){return L|0}function ub(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,l=0,m=0,n=0;n=r;r=r+8272|0;i=n+16|0;l=n+12|0;h=n;k[l>>2]=0;if((k[a>>2]|0)==1375686655)m=qc(0)|0;else m=qc(2)|0;lc(m,1,0)|0;mc(m,2,0)|0;nc(m,3,0)|0;rc(i);k[h>>2]=a;k[h+4>>2]=a;k[h+8>>2]=b;j=oc(h,1)|0;if(!(sc(m,i)|0)){wi(4476)|0;Pb(j);Jc(m);f=1;r=n;return f|0}if(!(tc(j,m,l)|0)){wi(4528)|0;Pb(j);Jc(m);hc(k[l>>2]|0);f=1;r=n;return f|0}if(!(yc(m,j,k[l>>2]|0,k[i+8228>>2]|0)|0)){wi(4578)|0;Jc(m);Pb(j);hc(k[l>>2]|0);f=1;r=n;return f|0}h=k[l>>2]|0;k[e>>2]=k[h+8>>2];k[f>>2]=k[h+12>>2];a=k[h+16>>2]|0;k[g>>2]=a;a=ha(ha(a<<2,k[e>>2]|0)|0,k[f>>2]|0)|0;k[d>>2]=a;d=Pi(a)|0;k[c>>2]=d;switch(k[g>>2]|0){case 1:{cj(d|0,k[(k[h+24>>2]|0)+44>>2]|0,a|0)|0;break}case 3:{if((ha(k[f>>2]|0,k[e>>2]|0)|0)>0){b=k[h+24>>2]|0;h=k[b+44>>2]|0;a=k[b+96>>2]|0;b=k[b+148>>2]|0;i=0;do{g=i*3|0;k[d+(g<<2)>>2]=k[h+(i<<2)>>2];k[d+(g+1<<2)>>2]=k[a+(i<<2)>>2];k[d+(g+2<<2)>>2]=k[b+(i<<2)>>2];i=i+1|0}while((i|0)<(ha(k[f>>2]|0,k[e>>2]|0)|0))}break}default:{}}Pb(j);Jc(m);hc(k[l>>2]|0);f=0;r=n;return f|0}function vb(){return pc()|0}function wb(a,b){a=a|0;b=b|0;return}function xb(a,b){a=a|0;b=b|0;return}function yb(a,b){a=a|0;b=b|0;var c=0;b=r;r=r+16|0;c=b;k[c>>2]=a;vi(4625,c)|0;r=b;return}function zb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=r;r=r+16|0;e=f;k[e>>2]=b;if(!c){r=f;return}b=a;d=0;a=e+(c+-1)|0;while(1){i[b>>0]=i[a>>0]|0;d=d+1|0;if((d|0)==(c|0))break;else{b=b+1|0;a=a+-1|0}}r=f;return}function Ab(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;k[b>>2]=0;if(!c)return;d=0;b=b+(c+-1)|0;while(1){i[b>>0]=i[a>>0]|0;d=d+1|0;if((d|0)==(c|0))break;else{a=a+1|0;b=b+-1|0}}return}function Bb(a,b){a=a|0;b=+b;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;f=c;p[f>>3]=b;f=f+8|0;p[t>>3]=b;d=k[t>>2]|0;e=k[t+4>>2]|0;g=bj(d|0,e|0,56)|0;i[a>>0]=g;g=bj(d|0,e|0,48)|0;i[a+1>>0]=g;g=bj(d|0,e|0,40)|0;i[a+2>>0]=g;i[a+3>>0]=e;i[a+4>>0]=i[f+-5>>0]|0;i[a+5>>0]=i[f+-6>>0]|0;e=bj(d|0,e|0,8)|0;i[a+6>>0]=e;i[a+7>>0]=d;r=c;return}function Cb(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;i[c+-1>>0]=i[a>>0]|0;i[c+-2>>0]=i[a+1>>0]|0;i[c+-3>>0]=i[a+2>>0]|0;i[c+-4>>0]=i[a+3>>0]|0;i[c+-5>>0]=i[a+4>>0]|0;i[c+-6>>0]=i[a+5>>0]|0;i[c+-7>>0]=i[a+6>>0]|0;i[b>>0]=i[a+7>>0]|0;return}function Db(a,b){a=a|0;b=+b;var c=0;c=(o[t>>2]=b,k[t>>2]|0);i[a>>0]=c>>>24;i[a+1>>0]=c>>>16;i[a+2>>0]=c>>>8;i[a+3>>0]=c;return}function Eb(a,b){a=a|0;b=b|0;var c=0;c=b+4|0;i[c+-1>>0]=i[a>>0]|0;i[c+-2>>0]=i[a+1>>0]|0;i[c+-3>>0]=i[a+2>>0]|0;i[b>>0]=i[a+3>>0]|0;return}function Fb(a,b){a=a|0;b=b|0;var c=0,d=0;d=_c(1,72)|0;if(!d){b=0;return b|0}k[d+64>>2]=a;a=Zc(a)|0;k[d+32>>2]=a;if(!a){cd(d);b=0;return b|0}k[d+36>>2]=a;a=d+68|0;c=k[a>>2]|0;if(!b){k[a>>2]=c|1;k[d+40>>2]=31;k[d+44>>2]=32}else{k[a>>2]=c|2;k[d+40>>2]=29;k[d+44>>2]=30}k[d+16>>2]=4;k[d+20>>2]=5;k[d+24>>2]=6;k[d+28>>2]=7;b=d;return b|0}function Gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+16|0;l=m;e=a+48|0;f=k[e>>2]|0;if(f>>>0>=b>>>0){l=a+36|0;k[l>>2]=(k[l>>2]|0)+b;k[e>>2]=f-b;l=a+56|0;a=l;a=aj(k[a>>2]|0,k[a+4>>2]|0,b|0,c|0)|0;k[l>>2]=a;k[l+4>>2]=L;l=c;a=b;L=l;r=m;return a|0}j=a+68|0;if(k[j>>2]&4){l=a+36|0;k[l>>2]=(k[l>>2]|0)+f;k[e>>2]=0;a=a+56|0;l=a;l=aj(k[l>>2]|0,k[l+4>>2]|0,f|0,0)|0;k[a>>2]=l;k[a+4>>2]=L;a=(f|0)!=0;l=a?0:-1;a=a?f:-1;L=l;r=m;return a|0}if(!f){f=0;e=0}else{k[a+36>>2]=k[a+32>>2];b=Yi(b|0,c|0,f|0,0)|0;k[e>>2]=0;e=0;c=L}a:do if((c|0)>0|(c|0)==0&b>>>0>0){i=a+24|0;while(1){g=$a[k[i>>2]&63](b,c,k[a>>2]|0)|0;h=L;if((g|0)==-1&(h|0)==-1)break;b=Yi(b|0,c|0,g|0,h|0)|0;c=L;f=aj(g|0,h|0,f|0,e|0)|0;e=L;if(!((c|0)>0|(c|0)==0&b>>>0>0))break a}cc(d,4,4636,l)|0;k[j>>2]=k[j>>2]|4;a=a+56|0;l=a;l=aj(k[l>>2]|0,k[l+4>>2]|0,f|0,e|0)|0;k[a>>2]=l;k[a+4>>2]=L;a=(f|0)!=0|(e|0)!=0;l=a?e:-1;a=a?f:-1;L=l;r=m;return a|0}while(0);l=a+56|0;a=l;a=aj(k[a>>2]|0,k[a+4>>2]|0,f|0,e|0)|0;k[l>>2]=a;k[l+4>>2]=L;l=e;a=f;L=l;r=m;return a|0}function Hb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;k[a+36>>2]=k[a+32>>2];k[a+48>>2]=0;f=($a[k[a+28>>2]&63](b,c,k[a>>2]|0)|0)==0;d=a+68|0;e=k[d>>2]|0;if(f){k[d>>2]=e|4;f=0;return f|0}else{k[d>>2]=e&-5;f=a+56|0;k[f>>2]=b;k[f+4>>2]=c;f=1;return f|0}return 0}function Ib(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;q=r;r=r+16|0;p=q+8|0;l=q;o=a+68|0;if(k[o>>2]&8){p=-1;a=-1;L=p;r=q;return a|0}i=a+32|0;e=k[i>>2]|0;n=a+36|0;k[n>>2]=e;j=a+48|0;f=k[j>>2]|0;do if(f){h=a+20|0;while(1){g=$a[k[h>>2]&63](e,f,k[a>>2]|0)|0;if((g|0)==-1)break;e=(k[n>>2]|0)+g|0;k[n>>2]=e;s=k[j>>2]|0;f=s-g|0;k[j>>2]=f;if((s|0)==(g|0)){m=6;break}}if((m|0)==6){e=k[i>>2]|0;break}k[o>>2]=k[o>>2]|8;cc(d,4,4662,l)|0;k[o>>2]=k[o>>2]|8;k[j>>2]=0;a=-1;s=-1;L=a;r=q;return s|0}while(0);k[n>>2]=e;a:do if((c|0)>0|(c|0)==0&b>>>0>0){i=a+24|0;f=0;e=0;while(1){g=$a[k[i>>2]&63](b,c,k[a>>2]|0)|0;h=L;if((g|0)==-1&(h|0)==-1)break;b=Yi(b|0,c|0,g|0,h|0)|0;c=L;f=aj(g|0,h|0,f|0,e|0)|0;e=L;if(!((c|0)>0|(c|0)==0&b>>>0>0))break a}cc(d,4,4688,p)|0;k[o>>2]=k[o>>2]|8;s=a+56|0;a=s;a=aj(k[a>>2]|0,k[a+4>>2]|0,f|0,e|0)|0;k[s>>2]=a;k[s+4>>2]=L;s=(f|0)!=0|(e|0)!=0;a=s?e:-1;s=s?f:-1;L=a;r=q;return s|0}else{f=0;e=0}while(0);a=a+56|0;s=a;s=aj(k[s>>2]|0,k[s+4>>2]|0,f|0,e|0)|0;k[a>>2]=s;k[a+4>>2]=L;a=e;s=f;L=a;r=q;return s|0}function Jb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;o=r;r=r+16|0;i=o;l=a+32|0;e=k[l>>2]|0;m=a+36|0;k[m>>2]=e;n=a+48|0;f=k[n>>2]|0;do if(!f)f=a;else{h=a+20|0;while(1){g=$a[k[h>>2]&63](e,f,k[a>>2]|0)|0;if((g|0)==-1)break;e=(k[m>>2]|0)+g|0;k[m>>2]=e;p=k[n>>2]|0;f=p-g|0;k[n>>2]=f;if((p|0)==(g|0)){j=6;break}}if((j|0)==6){f=a;e=k[l>>2]|0;break}p=a+68|0;k[p>>2]=k[p>>2]|8;cc(d,4,4662,i)|0;k[p>>2]=k[p>>2]|8;p=0;r=o;return p|0}while(0);k[m>>2]=e;k[n>>2]=0;if(!($a[k[a+28>>2]&63](b,c,k[f>>2]|0)|0)){p=a+68|0;k[p>>2]=k[p>>2]|8;p=0;r=o;return p|0}else{p=a+56|0;k[p>>2]=b;k[p+4>>2]=c;p=1;r=o;return p|0}return 0}function Kb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Lb(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function Mb(a,b,c){a=a|0;b=b|0;c=c|0;L=-1;return -1}function Nb(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Ob(a){a=a|0;var b=0,c=0,d=0;d=_c(1,72)|0;if(!d){a=0;return a|0}k[d+64>>2]=1048576;b=Zc(1048576)|0;k[d+32>>2]=b;if(!b){cd(d);a=0;return a|0}k[d+36>>2]=b;b=d+68|0;c=k[b>>2]|0;if(!a){k[b>>2]=c|1;k[d+40>>2]=31;k[d+44>>2]=32}else{k[b>>2]=c|2;k[d+40>>2]=29;k[d+44>>2]=30}k[d+16>>2]=4;k[d+20>>2]=5;k[d+24>>2]=6;k[d+28>>2]=7;a=d;return a|0}function Pb(a){a=a|0;var b=0;if(!a)return;b=k[a+4>>2]|0;if(b)bb[b&7](k[a>>2]|0);b=a+32|0;cd(k[b>>2]|0);k[b>>2]=0;cd(a);return}function Qb(a,b){a=a|0;b=b|0;if(!a)return;if(!(k[a+68>>2]&2))return;k[a+16>>2]=b;return}function Rb(a,b){a=a|0;b=b|0;if(!a)return;k[a+28>>2]=b;return}function Sb(a,b){a=a|0;b=b|0;if(!a)return;if(!(k[a+68>>2]&1))return;k[a+20>>2]=b;return}function Tb(a,b){a=a|0;b=b|0;if(!a)return;k[a+24>>2]=b;return}function Ub(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;k[a>>2]=b;k[a+4>>2]=c;return}function Vb(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;a=a+8|0;k[a>>2]=b;k[a+4>>2]=c;return}function Wb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;s=w+8|0;q=w;v=a+48|0;e=k[v>>2]|0;if(e>>>0>=c>>>0){u=a+36|0;cj(b|0,k[u>>2]|0,c|0)|0;k[u>>2]=(k[u>>2]|0)+c;k[v>>2]=(k[v>>2]|0)-c;v=a+56|0;u=v;u=aj(k[u>>2]|0,k[u+4>>2]|0,c|0,0)|0;k[v>>2]=u;k[v+4>>2]=L;v=c;r=w;return v|0}t=a+68|0;if(k[t>>2]&4){u=a+36|0;cj(b|0,k[u>>2]|0,e|0)|0;d=k[v>>2]|0;k[u>>2]=(k[u>>2]|0)+d;u=a+56|0;t=u;d=aj(k[t>>2]|0,k[t+4>>2]|0,d|0,0)|0;k[u>>2]=d;k[u+4>>2]=L;k[v>>2]=0;v=(e|0)!=0?e:-1;r=w;return v|0}if(!e){n=a+32|0;f=k[n>>2]|0;o=a+36|0;k[o>>2]=f;p=o;u=a+56|0;e=0}else{o=a+36|0;cj(b|0,k[o>>2]|0,e|0)|0;n=a+32|0;f=k[n>>2]|0;k[o>>2]=f;p=k[v>>2]|0;u=a+56|0;l=u;l=aj(k[l>>2]|0,k[l+4>>2]|0,p|0,0)|0;m=u;k[m>>2]=l;k[m+4>>2]=L;k[v>>2]=0;c=c-p|0;b=b+p|0;p=o}l=a+64|0;m=a+16|0;j=b;g=f;while(1){b=k[l>>2]|0;f=k[m>>2]|0;if(c>>>0<b>>>0){f=$a[f&63](g,b,k[a>>2]|0)|0;k[v>>2]=f;if((f|0)==-1){f=11;break}if(f>>>0>=c>>>0){b=j;f=14;break}cj(j|0,k[p>>2]|0,f|0)|0;g=k[n>>2]|0;k[o>>2]=g;b=k[v>>2]|0;h=u;h=aj(k[h>>2]|0,k[h+4>>2]|0,b|0,0)|0;i=L;e=f+e|0}else{b=$a[f&63](j,c,k[a>>2]|0)|0;k[v>>2]=b;if((b|0)==-1){f=16;break}e=b+e|0;if(b>>>0>=c>>>0){f=20;break}g=k[n>>2]|0;k[o>>2]=g;h=u;h=aj(k[h>>2]|0,k[h+4>>2]|0,b|0,0)|0;i=L}f=u;k[f>>2]=h;k[f+4>>2]=i;k[v>>2]=0;c=c-b|0;j=j+b|0}if((f|0)==11){cc(d,4,4636,q)|0;k[v>>2]=0;k[t>>2]=k[t>>2]|4;v=(e|0)!=0?e:-1;r=w;return v|0}else if((f|0)==14){cj(b|0,k[p>>2]|0,c|0)|0;k[p>>2]=(k[p>>2]|0)+c;k[v>>2]=(k[v>>2]|0)-c;d=u;d=aj(k[d>>2]|0,k[d+4>>2]|0,c|0,0)|0;v=u;k[v>>2]=d;k[v+4>>2]=L;v=e+c|0;r=w;return v|0}else if((f|0)==16){cc(d,4,4636,s)|0;k[v>>2]=0;k[t>>2]=k[t>>2]|4;v=(e|0)!=0?e:-1;r=w;return v|0}else if((f|0)==20){d=u;d=aj(k[d>>2]|0,k[d+4>>2]|0,b|0,0)|0;k[u>>2]=d;k[u+4>>2]=L;k[o>>2]=k[n>>2];k[v>>2]=0;v=e;r=w;return v|0}return 0}function Xb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;u=r;r=r+16|0;q=u;m=a+68|0;if(k[m>>2]&8){t=-1;r=u;return t|0}p=a+64|0;e=k[p>>2]|0;t=a+48|0;i=k[t>>2]|0;f=e-i|0;do if(f>>>0<c>>>0){n=a+32|0;g=a+36|0;o=a+20|0;h=a+56|0;j=e;l=f;e=0;a:while(1){if((j|0)==(i|0))f=k[n>>2]|0;else{cj(k[g>>2]|0,b|0,l|0)|0;f=k[n>>2]|0;k[g>>2]=f;i=(k[t>>2]|0)+l|0;k[t>>2]=i;v=h;v=aj(k[v>>2]|0,k[v+4>>2]|0,l|0,0)|0;j=h;k[j>>2]=v;k[j+4>>2]=L;c=c-l|0;b=b+l|0;e=l+e|0}k[g>>2]=f;if(!i)i=0;else{do{j=$a[k[o>>2]&63](f,i,k[a>>2]|0)|0;if((j|0)==-1)break a;f=(k[g>>2]|0)+j|0;k[g>>2]=f;v=k[t>>2]|0;i=v-j|0;k[t>>2]=i}while((v|0)!=(j|0));f=k[n>>2]|0}k[g>>2]=f;j=k[p>>2]|0;l=j-i|0;if(c>>>0<=l>>>0){s=5;break}}if((s|0)==5)break;k[m>>2]=k[m>>2]|8;cc(d,4,4662,q)|0;v=-1;r=u;return v|0}else{f=a+36|0;h=a+56|0;g=f;f=k[f>>2]|0;e=0}while(0);cj(f|0,b|0,c|0)|0;k[g>>2]=(k[g>>2]|0)+c;k[t>>2]=(k[t>>2]|0)+c;t=h;t=aj(k[t>>2]|0,k[t+4>>2]|0,c|0,0)|0;v=h;k[v>>2]=t;k[v+4>>2]=L;v=e+c|0;r=u;return v|0}function Yb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;m=r;r=r+16|0;i=m;f=a+32|0;c=k[f>>2]|0;l=a+36|0;k[l>>2]=c;g=a+48|0;d=k[g>>2]|0;do if(d){h=a+20|0;while(1){e=$a[k[h>>2]&63](c,d,k[a>>2]|0)|0;if((e|0)==-1)break;c=(k[l>>2]|0)+e|0;k[l>>2]=c;n=k[g>>2]|0;d=n-e|0;k[g>>2]=d;if((n|0)==(e|0)){j=6;break}}if((j|0)==6){c=k[f>>2]|0;break}n=a+68|0;k[n>>2]=k[n>>2]|8;cc(b,4,4662,i)|0;n=0;r=m;return n|0}while(0);k[l>>2]=c;n=1;r=m;return n|0}function Zb(a){a=a|0;a=a+56|0;L=k[a+4>>2]|0;return k[a>>2]|0}function _b(a){a=a|0;var b=0,c=0;c=a+8|0;b=k[c>>2]|0;c=k[c+4>>2]|0;if((b|0)==0&(c|0)==0){c=0;a=0;L=c;return a|0}a=a+56|0;a=Yi(b|0,c|0,k[a>>2]|0,k[a+4>>2]|0)|0;c=L;L=c;return a|0}function $b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=hb[k[a+40>>2]&63](a,b,c,d)|0;return a|0}function ac(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return hb[k[a+44>>2]&63](a,b,c,d)|0}function bc(a){a=a|0;return (k[a+28>>2]|0)!=7|0}function cc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;h=r;r=r+528|0;f=h;g=h+16|0;a:do if(a){switch(b|0){case 1:{b=a;e=a+12|0;break}case 2:{b=a+4|0;e=a+16|0;break}case 4:{b=a+8|0;e=a+20|0;break}default:{b=0;break a}}a=k[b>>2]|0;b=k[e>>2]|0;if(b)if(!c)b=1;else{_i(g|0,0,512)|0;k[f>>2]=d;zi(g,512,c,f)|0;cb[b&7](g,a);b=1}else b=0}else b=0;while(0);r=h;return b|0}function dc(a){a=a|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=4;k[a+20>>2]=4;k[a+16>>2]=4;return}function ec(a,b){a=a|0;b=b|0;return}function fc(){return _c(1,36)|0}function gc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=_c(1,36)|0;if(!d){h=d;return h|0}k[d+20>>2]=c;g=d+16|0;k[g>>2]=a;c=_c(1,a*52|0)|0;h=d+24|0;k[h>>2]=c;if(!c){c=k[d+28>>2]|0;if(c)cd(c);cd(d);h=0;return h|0}if(!a){h=d;return h|0}e=0;while(1){k[c+(e*52|0)>>2]=k[b+(e*36|0)>>2];k[c+(e*52|0)+4>>2]=k[b+(e*36|0)+4>>2];i=k[b+(e*36|0)+8>>2]|0;k[c+(e*52|0)+8>>2]=i;j=k[b+(e*36|0)+12>>2]|0;k[c+(e*52|0)+12>>2]=j;k[c+(e*52|0)+16>>2]=k[b+(e*36|0)+16>>2];k[c+(e*52|0)+20>>2]=k[b+(e*36|0)+20>>2];k[c+(e*52|0)+24>>2]=k[b+(e*36|0)+24>>2];k[c+(e*52|0)+28>>2]=k[b+(e*36|0)+28>>2];k[c+(e*52|0)+32>>2]=k[b+(e*36|0)+32>>2];i=_c(ha(j,i)|0,4)|0;k[c+(e*52|0)+44>>2]=i;e=e+1|0;if(!i)break;if(e>>>0>=a>>>0){f=22;break}c=k[h>>2]|0}if((f|0)==22)return d|0;c=k[h>>2]|0;if(c){e=k[g>>2]|0;if(e){b=0;while(1){c=k[c+(b*52|0)+44>>2]|0;if(c){cd(c);e=k[g>>2]|0}b=b+1|0;if(b>>>0>=e>>>0)break;c=k[h>>2]|0}c=k[h>>2]|0}cd(c)}c=k[d+28>>2]|0;if(c)cd(c);cd(d);j=0;return j|0}function hc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(!a)return;e=a+24|0;b=k[e>>2]|0;if(b){f=a+16|0;c=k[f>>2]|0;if(c){d=0;while(1){b=k[b+(d*52|0)+44>>2]|0;if(b){cd(b);c=k[f>>2]|0}d=d+1|0;if(d>>>0>=c>>>0)break;b=k[e>>2]|0}b=k[e>>2]|0}cd(b)}b=k[a+28>>2]|0;if(b)cd(b);cd(a);return}function ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;c=k[b+4>>2]|0;d=k[a>>2]|0;f=k[b+8>>2]|0;g=k[a+4>>2]|0;e=k[b+12>>2]|0;l=(ha((k[b+24>>2]|0)+-1|0,e)|0)+c|0;h=k[b+16>>2]|0;i=(ha((k[b+28>>2]|0)+-1|0,h)|0)+f|0;b=aj(l|0,0,e|0,0)|0;b=b|0-L;e=k[a+8>>2]|0;h=aj(i|0,0,h|0,0)|0;h=h|0-L;i=k[a+12>>2]|0;l=k[a+16>>2]|0;if(!l)return;j=(c>>>0>d>>>0?c:d)+-1|0;f=(f>>>0>g>>>0?f:g)+-1|0;e=(b>>>0<e>>>0?b:e)+-1|0;c=(h>>>0<i>>>0?h:i)+-1|0;d=0;b=k[a+24>>2]|0;while(1){g=k[b>>2]|0;i=((j+g|0)>>>0)/(g>>>0)|0;o=k[b+4>>2]|0;a=((f+o|0)>>>0)/(o>>>0)|0;h=k[b+40>>2]|0;n=$i(1,0,h|0)|0;m=L;g=aj((((e+g|0)>>>0)/(g>>>0)|0)-i|0,0,-1,-1)|0;g=aj(g|0,L|0,n|0,m|0)|0;g=bj(g|0,L|0,h|0)|0;o=aj((((c+o|0)>>>0)/(o>>>0)|0)-a|0,0,-1,-1)|0;m=aj(o|0,L|0,n|0,m|0)|0;h=bj(m|0,L|0,h|0)|0;k[b+8>>2]=g;k[b+12>>2]=h;k[b+16>>2]=i;k[b+20>>2]=a;d=d+1|0;if(d>>>0>=l>>>0)break;else b=b+52|0}return}function jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;k[b>>2]=k[a>>2];k[b+4>>2]=k[a+4>>2];k[b+8>>2]=k[a+8>>2];k[b+12>>2]=k[a+12>>2];i=b+24|0;d=k[i>>2]|0;h=b+16|0;if(!d)c=i;else{c=k[h>>2]|0;if(!c)c=i;else{e=0;while(1){d=k[d+(e*52|0)+44>>2]|0;if(d){cd(d);c=k[h>>2]|0}e=e+1|0;if(e>>>0>=c>>>0)break;d=k[i>>2]|0}c=i;d=k[i>>2]|0}cd(d);k[i>>2]=0}d=k[a+16>>2]|0;k[h>>2]=d;d=Zc(d*52|0)|0;k[c>>2]=d;if(!d){k[i>>2]=0;k[h>>2]=0;return}if(k[h>>2]|0){g=a+24|0;f=0;do{c=d+(f*52|0)|0;d=(k[g>>2]|0)+(f*52|0)|0;e=c+52|0;do{k[c>>2]=k[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));d=k[i>>2]|0;k[d+(f*52|0)+44>>2]=0;f=f+1|0}while(f>>>0<(k[h>>2]|0)>>>0)}k[b+20>>2]=k[a+20>>2];e=a+32|0;c=k[e>>2]|0;f=b+32|0;k[f>>2]=c;if(!c){k[b+28>>2]=0;return}d=Zc(c)|0;c=b+28|0;k[c>>2]=d;if(!d){k[c>>2]=0;k[f>>2]=0;return}else{cj(d|0,k[a+28>>2]|0,k[e>>2]|0)|0;return}}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=_c(1,36)|0;if(!d){a=d;return a|0}k[d+20>>2]=c;k[d+16>>2]=a;c=_c(a,52)|0;k[d+24>>2]=c;if(!c){c=k[d+28>>2]|0;if(c)cd(c);cd(d);a=0;return a|0}else{if(!a){a=d;return a|0}else e=0;do{k[c+(e*52|0)>>2]=k[b+(e*36|0)>>2];k[c+(e*52|0)+4>>2]=k[b+(e*36|0)+4>>2];k[c+(e*52|0)+8>>2]=k[b+(e*36|0)+8>>2];k[c+(e*52|0)+12>>2]=k[b+(e*36|0)+12>>2];k[c+(e*52|0)+16>>2]=k[b+(e*36|0)+16>>2];k[c+(e*52|0)+20>>2]=k[b+(e*36|0)+20>>2];k[c+(e*52|0)+24>>2]=k[b+(e*36|0)+24>>2];k[c+(e*52|0)+32>>2]=k[b+(e*36|0)+32>>2];k[c+(e*52|0)+44>>2]=0;e=e+1|0}while((e|0)!=(a|0));return d|0}return 0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+64>>2]=b;k[a+52>>2]=c;c=1;return c|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+60>>2]=b;k[a+48>>2]=c;c=1;return c|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a){c=0;return c|0}k[a+56>>2]=b;k[a+44>>2]=c;c=1;return c|0}function oc(a,b){a=a|0;b=b|0;var c=0;if(!a){a=0;return a|0}c=Ob(b)|0;if(!c){a=0;return a|0}Ub(c,a,0);Vb(c,k[a+8>>2]|0,0);if(!b)Sb(c,9);else Qb(c,8);Tb(c,1);Rb(c,10);a=c;return a|0}function pc(){return 4703}function qc(a){a=a|0;var b=0;b=_c(1,84)|0;if(!b){a=0;return a|0}k[b+68>>2]=1;switch(a|0){case 0:{k[b+72>>2]=13;k[b+76>>2]=2;k[b+80>>2]=3;k[b+4>>2]=33;k[b+16>>2]=11;k[b>>2]=34;k[b+20>>2]=1;k[b+24>>2]=5;k[b+8>>2]=1;k[b+12>>2]=1;k[b+28>>2]=1;k[b+32>>2]=1;k[b+36>>2]=12;a=pd()|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}case 2:{k[b+72>>2]=14;k[b+76>>2]=4;k[b+80>>2]=5;k[b+4>>2]=35;k[b+16>>2]=13;k[b>>2]=36;k[b+8>>2]=2;k[b+12>>2]=2;k[b+20>>2]=2;k[b+24>>2]=6;k[b+28>>2]=2;k[b+32>>2]=2;k[b+36>>2]=14;a=gf(1)|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}default:{cd(b);a=0;return a|0}}dc(b+44|0);a=b;return a|0}function rc(a){a=a|0;if(!a)return;_i(a|0,0,8248)|0;k[a+8200>>2]=-1;k[a+8204>>2]=-1;k[a+8248>>2]=0;return}function sc(a,b){a=a|0;b=b|0;var c=0;c=r;r=r+16|0;if(!((a|0)!=0&(b|0)!=0)){b=0;r=c;return b|0}if(!(k[a+68>>2]|0)){cc(a+44|0,1,4709,c)|0;b=0;r=c;return b|0}else{cb[k[a+24>>2]&7](k[a+40>>2]|0,b);b=1;r=c;return b|0}return 0}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=r;r=r+16|0;if(!((a|0)!=0&(b|0)!=0)){a=0;r=d;return a|0}if(!(k[b+68>>2]|0)){cc(b+44|0,1,4790,d)|0;a=0;r=d;return a|0}else{a=hb[k[b>>2]&63](a,k[b+40>>2]|0,c,b+44|0)|0;r=d;return a|0}return 0}function uc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=hb[k[a+4>>2]&63](k[a+40>>2]|0,b,c,a+44|0)|0;return b|0}function vc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(!a){d=0;return d|0}if(!(k[a+68>>2]|0)){d=0;return d|0}d=_a[k[a+28>>2]&3](k[a+40>>2]|0,b,c,d,e,f,a+44|0)|0;return d|0}function wc(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;if(!((c|0)!=0&((a|0)!=0&(b|0)!=0&(d|0)!=0))){h=0;return h|0}if(!(k[a+68>>2]|0)){h=0;return h|0}h=gb[k[a+8>>2]&3](k[a+40>>2]|0,c,d,e,f,g,h,i,j,b,a+44|0)|0;return h|0}function xc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!((a|0)!=0&(c|0)!=0&(e|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=db[k[a+12>>2]&7](k[a+40>>2]|0,b,c,d,e,a+44|0)|0;return b|0}function yc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!((a|0)!=0&(b|0)!=0)){d=0;return d|0}if(!(k[a+68>>2]|0)){d=0;return d|0}d=jb[k[a+32>>2]&3](k[a+40>>2]|0,b,c,a+44|0,d)|0;return d|0}function zc(a,b){a=a|0;b=b|0;if(!a){b=0;return b|0}b=$a[k[a+36>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Ac(a){a=a|0;var b=0;b=_c(1,84)|0;if(!b){a=0;return a|0}k[b+68>>2]=0;switch(a|0){case 0:{k[b+4>>2]=15;k[b+12>>2]=16;k[b>>2]=37;k[b+8>>2]=3;k[b+16>>2]=1;k[b+20>>2]=38;a=fd()|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}case 2:{k[b+4>>2]=17;k[b+12>>2]=18;k[b>>2]=39;k[b+8>>2]=4;k[b+16>>2]=2;k[b+20>>2]=40;a=gf(0)|0;k[b+40>>2]=a;if(!a){cd(b);a=0;return a|0}break}default:{cd(b);a=0;return a|0}}dc(b+44|0);a=b;return a|0}function Bc(a){a=a|0;if(!a)return;_i(a|0,0,18708)|0;k[a+5592>>2]=6;k[a+18684>>2]=0;k[a+5596>>2]=64;k[a+5600>>2]=64;k[a+44>>2]=0;k[a+5612>>2]=-1;k[a+18188>>2]=1;k[a+18192>>2]=1;i[a+18688>>0]=0;k[a+18196>>2]=-1;k[a+18200>>2]=-1;o[a+4792>>2]=0.0;k[a+4788>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+28>>2]=0;k[a+18692>>2]=0;return}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=hb[k[a+20>>2]&63](k[a+40>>2]|0,b,c,a+44|0)|0;return b|0}function Dc(a,b,c){a=a|0;b=b|0;c=c|0;if(!((a|0)!=0&(c|0)!=0)){c=0;return c|0}if(k[a+68>>2]|0){c=0;return c|0}c=hb[k[a>>2]&63](k[a+40>>2]|0,c,b,a+44|0)|0;return c|0}function Ec(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=$a[k[a+4>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Fc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=$a[k[a+12>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Gc(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0)){b=0;return b|0}if(!(k[a+68>>2]|0)){b=0;return b|0}b=$a[k[a+16>>2]&63](k[a+40>>2]|0,b,a+44|0)|0;return b|0}function Hc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=d<<2;e=ha(g,d)|0;f=a+18704|0;d=m[f>>1]|0;j[f>>1]=(d&32768|0)==0?-32512:(d|256)&65535;k[a+5608>>2]=1;i[a+18690>>0]=2;f=Zc(e+g|0)|0;d=a+18696|0;k[d>>2]=f;if(!f){c=0;return c|0}cj(f|0,b|0,e|0)|0;cj((k[d>>2]|0)+e|0,c|0,g|0)|0;c=1;return c|0}function Ic(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!((c|0)!=0&((a|0)!=0&(e|0)!=0))){b=0;return b|0}if(k[a+68>>2]|0){b=0;return b|0}b=db[k[a+8>>2]&7](k[a+40>>2]|0,b,c,d,e,a+44|0)|0;return b|0}function Jc(a){a=a|0;var b=0,c=0;if(!a)return;b=a+40|0;c=k[b>>2]|0;if(!(k[a+68>>2]|0))bb[k[a+16>>2]&7](c);else bb[k[a+20>>2]&7](c);k[b>>2]=0;cd(a);return}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;if(!a)return;fb[k[a+72>>2]&15](k[a+40>>2]|0,b,c);return}function Lc(a){a=a|0;if(!a){a=0;return a|0}a=eb[k[a+76>>2]&15](k[a+40>>2]|0)|0;return a|0}function Mc(a){a=a|0;var b=0,c=0;if(!a)return;b=k[a>>2]|0;c=k[b+48>>2]|0;if(c){cd(c);b=k[a>>2]|0}cd(b);k[a>>2]=0;return}function Nc(a){a=a|0;if(!a){a=0;return a|0}a=eb[k[a+80>>2]&15](k[a+40>>2]|0)|0;return a|0}function Oc(a){a=a|0;var b=0;b=k[a>>2]|0;if(!b)return;ld(b);k[a>>2]=0;return}function Pc(a,b){a=a|0;b=b|0;return Qc(a,1048576,b)|0}function Qc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!a){b=0;return b|0}d=ii(a,(c|0)==0?4869:4872)|0;if(!d){b=0;return b|0}a=Fb(b,c)|0;if(!a){gi(d)|0;b=0;return b|0}else{Ub(a,d,6);pi(d,0,2)|0;b=si(d)|0;pi(d,0,0)|0;Vb(a,b,((b|0)<0)<<31>>31);Qb(a,19);Sb(a,20);Tb(a,21);Rb(a,22);b=a;return b|0}return 0}function Rc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=(k[c>>2]|0)+(k[c+8>>2]|0)|0;c=c+4|0;d=k[c>>2]|0;e=f-d|0;if((f|0)==(d|0)){f=-1;return f|0}f=e>>>0>b>>>0?b:e;cj(a|0,d|0,f|0)|0;k[c>>2]=(k[c>>2]|0)+f;return f|0}function Sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=c+4|0;d=k[j>>2]|0;h=c+8|0;f=k[h>>2]|0;i=d-(k[c>>2]|0)|0;e=(f|0)==0?1:f;while(1)if((e-i|0)>>>0<b>>>0)e=e<<1;else{g=e;break}if((g|0)!=(f|0)){d=Zc(g)|0;if(!d){b=-1;return b|0}e=k[c>>2]|0;if(e){cj(d|0,e|0,i|0)|0;cd(k[c>>2]|0)}k[c>>2]=d;d=d+i|0;k[j>>2]=d;k[h>>2]=g}cj(d|0,a|0,b|0)|0;k[j>>2]=(k[j>>2]|0)+b;return b|0}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=(k[b>>2]|0)+(k[b+8>>2]|0)|0;b=b+4|0;c=k[b>>2]|0;d=e-c|0;if((e|0)==(c|0)){e=-1;return e|0}k[b>>2]=c+a;e=d>>>0>a>>>0?a:d;return e|0}function Uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[c+8>>2]|0;k[c+4>>2]=(k[c>>2]|0)+(0>(b|0)|0==(b|0)&d>>>0>a>>>0?a:d);return 1}function Vc(a,b,c){a=a|0;b=b|0;c=c|0;b=mi(a,1,b,c)|0;return ((b|0)!=0?b:-1)|0}function Wc(a,b,c){a=a|0;b=b|0;c=c|0;return ui(a,1,b,c)|0}function Xc(a,b,c){a=a|0;b=b|0;c=c|0;c=(pi(c,a,1)|0)==0;L=c?b:-1;return (c?a:-1)|0}function Yc(a,b,c){a=a|0;b=b|0;c=c|0;return (pi(c,a,0)|0)==0|0}function Zc(a){a=a|0;if(!a)a=0;else a=Pi(a)|0;return a|0}function _c(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Ri(a,b)|0;return a|0}function $c(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;do if(a)if(!(Ti(b,16,a)|0)){b=k[b>>2]|0;break}else{k[b>>2]=0;b=0;break}else b=0;while(0);r=c;return b|0}function ad(a){a=a|0;Qi(a);return}function bd(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Si(a,b)|0;return b|0}function cd(a){a=a|0;Qi(a);return}function dd(a){a=a|0;var b=0,c=0;b=696;while(1){c=k[b>>2]|0;if((c|0)==-1|(c|0)==(a|0))break;else b=b+12|0}return b+4|0}function ed(a,b){a=a|0;b=b|0;if(!((a|0)!=0&(b|0)!=0))return;k[a+172>>2]=k[b+4>>2];k[a+168>>2]=k[b>>2];return}function fd(){var a=0,b=0;a=_c(1,208)|0;if(!a){a=0;return a|0}k[a>>2]=0;b=a+184|0;i[b>>0]=i[b>>0]&-3;b=Zc(1e3)|0;k[a+44>>2]=b;if(!b){gd(a);b=0;return b|0}k[a+48>>2]=1e3;b=Ag()|0;k[a+192>>2]=b;if(!b){gd(a);b=0;return b|0}b=Ag()|0;k[a+188>>2]=b;if(b){b=a;return b|0}gd(a);b=0;return b|0}function gd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;if(!a)return;if(!(k[a>>2]|0)){b=a+36|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+24|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+28>>2]=0}b=a+44|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+48>>2]=0}}else{b=a+12|0;c=k[b>>2]|0;if(c){Cd(c);cd(k[b>>2]|0);k[b>>2]=0}b=a+16|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+20>>2]=0}}gg(k[a+204>>2]|0);b=a+88|0;f=a+164|0;c=k[f>>2]|0;if(c){d=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;if(d){e=0;while(1){Cd(c);e=e+1|0;if((e|0)==(d|0))break;else c=c+5640|0}c=k[f>>2]|0}cd(c);k[f>>2]=0}f=a+124|0;c=k[f>>2]|0;if(c){g=a+120|0;d=k[g>>2]|0;if(d){e=0;while(1){c=k[c+(e<<3)>>2]|0;if(c){cd(c);d=k[g>>2]|0}e=e+1|0;if(e>>>0>=d>>>0)break;c=k[f>>2]|0}c=k[f>>2]|0}k[g>>2]=0;cd(c);k[f>>2]=0}g=a+144|0;cd(k[g>>2]|0);k[g>>2]=0;k[a+128>>2]=0;g=a+108|0;cd(k[g>>2]|0);k[g>>2]=0;if(!(i[a+184>>0]&2)){g=a+176|0;cd(k[g>>2]|0);k[g>>2]=0}c=b+100|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=a+188|0;Bg(k[g>>2]|0);k[g>>2]=0;Bg(k[a+192>>2]|0);k[g>>2]=0;g=a+196|0;ld(k[g>>2]|0);k[g>>2]=0;g=a+80|0;hc(k[g>>2]|0);k[g>>2]=0;g=a+84|0;hc(k[g>>2]|0);k[g>>2]=0;cd(a);return}function hd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,l=0,m=0,n=0,q=0.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,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0.0;ka=r;r=r+320|0;ea=ka+296|0;da=ka+288|0;ja=ka+280|0;ia=ka+272|0;ga=ka+264|0;fa=ka+256|0;ca=ka+248|0;ba=ka+240|0;W=ka+232|0;T=ka+224|0;S=ka+216|0;R=ka+208|0;Q=ka+200|0;P=ka+192|0;O=ka+184|0;v=ka+176|0;u=ka+168|0;t=ka+160|0;s=ka+152|0;n=ka+144|0;I=ka+136|0;H=ka+128|0;M=ka+112|0;G=ka+104|0;F=ka+96|0;E=ka+88|0;C=ka+80|0;B=ka+72|0;A=ka+64|0;z=ka+56|0;y=ka+48|0;x=ka+32|0;w=ka+24|0;m=ka+16|0;g=ka+8|0;f=ka;K=ka+309|0;L=ka+300|0;if(!((a|0)!=0&(b|0)!=0&(c|0)!=0)){d=0;r=ka;return d|0}aa=b+5592|0;e=k[aa>>2]|0;if((e+-1|0)>>>0>32){k[f>>2]=e;k[f+4>>2]=33;cc(d,1,4875,f)|0;d=0;r=ka;return d|0}_=a+112|0;k[_>>2]=1;$=a+116|0;k[$>>2]=1;J=b+18704|0;do if(!(j[J>>1]|0)){switch(k[b+18676>>2]|0){case 1:{j[J>>1]=3;k[b+18700>>2]=1302083;k[b+18680>>2]=1041666;f=1;break}case 2:{j[J>>1]=3;k[b+18700>>2]=651041;k[b+18680>>2]=520833;f=1;break}case 3:{j[J>>1]=4;k[b+18700>>2]=1302083;k[b+18680>>2]=1041666;f=1;break}default:f=0}e=k[b+18684>>2]|0;a:do if((e|0)>=4)if((e|0)<33024){switch(e|0){case 4:break;default:{Z=13;break a}}j[J>>1]=4;break}else{switch(e|0){case 33024:break;default:{Z=13;break a}}j[J>>1]=-32512;break}else{switch(e|0){case 3:break;default:{Z=13;break a}}j[J>>1]=3}while(0);if((Z|0)==13?(f|0)==0:0)break;cc(d,2,4931,g)|0}while(0);D=b+18700|0;e=k[D>>2]|0;do if((e|0)<1){q=+o[b+4792+((k[b+4788>>2]|0)+-1<<2)>>2];if(q>0.0){X=k[c+24>>2]|0;m=ha(k[X+8>>2]|0,k[c+16>>2]|0)|0;m=ha(m,k[X+12>>2]|0)|0;la=+((ha(m,k[X+24>>2]|0)|0)>>>0);X=~~+V(+(la/(q*8.0*+((k[X>>2]|0)>>>0)*+((k[X+4>>2]|0)>>>0))));k[D>>2]=X;break}else{k[D>>2]=0;break}}else{l=k[c+24>>2]|0;X=ha(k[l+8>>2]|0,k[c+16>>2]|0)|0;X=ha(X,k[l+12>>2]|0)|0;q=+((ha(X,k[l+24>>2]|0)|0)>>>0);e=ha(e<<3,k[l>>2]|0)|0;q=q/+((ha(e,k[l+4>>2]|0)|0)>>>0);l=b+4788|0;e=k[l>>2]|0;if(e){g=e;e=0;h=0;while(1){f=b+4792+(h<<2)|0;if(+o[f>>2]<q){o[f>>2]=q;f=k[l>>2]|0;e=1}else f=g;h=h+1|0;if(h>>>0>=f>>>0)break;else g=f}if(e)cc(d,2,5068,m)|0}}while(0);e=j[J>>1]|0;b:do if((e+-3&65535)>=4){if(e<<16>>16==7){cc(d,2,7228,n)|0;j[J>>1]=0;e=0;break}if((e+-256&65535)<524){cc(d,2,7283,s)|0;j[J>>1]=0;e=0;break}if((e+-1024&65535)<1180){cc(d,2,7331,t)|0;j[J>>1]=0;e=0;break}if(e<<16>>16<=-1)switch(e<<16>>16){case -32512:{e=-32512;break b}case -32768:{cc(d,2,7373,u)|0;j[J>>1]=0;e=0;break b}default:{cc(d,2,7461,v)|0;j[J>>1]=0;e=0;break b}}}else{if((e+-5&65535)<2){cc(d,2,5160,w)|0;j[J>>1]=0;e=0;break}k[b>>2]=0;k[b+12>>2]=1;k[b+16>>2]=1;i[b+18689>>0]=67;i[b+18688>>0]=1;k[b+4>>2]=0;k[b+8>>2]=0;k[b+18180>>2]=0;k[b+18184>>2]=0;k[b+5596>>2]=32;k[b+5600>>2]=32;k[b+5604>>2]=0;k[b+5612>>2]=-1;k[b+18188>>2]=1;k[b+18192>>2]=1;k[b+5608>>2]=1;f=b+4788|0;g=k[f>>2]|0;if((g|0)>1){la=+o[b+4792+(g+-1<<2)>>2];k[x>>2]=g;p[x+8>>3]=la;cc(d,2,5222,x)|0;k[b+4792>>2]=k[b+4792+((k[f>>2]|0)+-1<<2)>>2];k[f>>2]=1;e=j[J>>1]|0}c:do switch(e&65535|0){case 3:{e=k[aa>>2]|0;if((e|0)>6){k[y>>2]=e+1;cc(d,2,5395,y)|0;k[aa>>2]=6;e=6}break}case 4:{e=k[aa>>2]|0;if((e|0)<2){k[z>>2]=e+1;cc(d,2,5541,z)|0;k[aa>>2]=1;e=1;break c}if((e|0)>7){k[A>>2]=e+1;cc(d,2,5695,A)|0;k[aa>>2]=7;e=7}break}default:e=k[aa>>2]|0}while(0);f=b+40|0;k[f>>2]=k[f>>2]|1;f=b+5620|0;k[f>>2]=e+-1;if((e|0)>1){e=0;do{k[b+5624+(e<<2)>>2]=256;k[b+5756+(e<<2)>>2]=256;e=e+1|0}while((e|0)<(k[f>>2]|0))}k[b+44>>2]=4;if((j[J>>1]|0)==4){e=k[aa>>2]|0;k[b+96>>2]=1;k[b+48>>2]=0;k[b+52>>2]=0;k[b+56>>2]=1;X=e+-1|0;k[b+60>>2]=X;k[b+64>>2]=3;k[b+80>>2]=4;k[b+244>>2]=1;k[b+196>>2]=X;k[b+200>>2]=0;k[b+204>>2]=1;k[b+208>>2]=e;k[b+212>>2]=3;k[b+228>>2]=4;e=2}else e=0;k[b+4784>>2]=e;k[b+20>>2]=1;e=k[D>>2]|0;if((e|0)>=1){if((e|0)>1302083){cc(d,2,5998,C)|0;k[D>>2]=1302083}}else{k[D>>2]=1302083;cc(d,2,5849,B)|0}e=b+18680|0;f=k[e>>2]|0;if((f|0)>=1){if((f|0)>1041666){cc(d,2,6320,F)|0;k[e>>2]=1041666}}else{k[e>>2]=1041666;cc(d,2,6171,E)|0}f=k[c+16>>2]|0;h=k[c+24>>2]|0;l=k[h+8>>2]|0;e=ha(l,f)|0;m=k[h+12>>2]|0;e=ha(e,m)|0;la=+((ha(e,k[h+24>>2]|0)|0)>>>0);e=ha(k[D>>2]<<3,k[h>>2]|0)|0;la=la/+((ha(e,k[h+4>>2]|0)|0)>>>0);o[b+4792>>2]=la;e=j[J>>1]|0;d:do if((f|0)==3){f=h+28|0;g=h+32|0;if(!((k[f>>2]|0)!=12|k[g>>2])){f=h+80|0;g=h+84|0;if(!((k[f>>2]|0)!=12|k[g>>2])){f=h+132|0;g=h+136|0;if(!((k[f>>2]|0)!=12|k[g>>2])){switch(e&65535|0){case 3:{if(m>>>0>1080|l>>>0>2048){k[H>>2]=l;k[H+4>>2]=m;cc(d,2,6892,H)|0;break d}break}case 4:{if(m>>>0>2160|l>>>0>4096){k[I>>2]=l;k[I+4>>2]=m;cc(d,2,7063,I)|0;break d}break}default:{}}break b}else{m=f;e=g;f=2}}else{m=f;e=g;f=1}}else{m=f;e=g;f=0};i[K>>0]=i[6659]|0;i[K+1>>0]=i[6660]|0;i[K+2>>0]=i[6661]|0;i[K+3>>0]=i[6662]|0;i[K+4>>0]=i[6663]|0;i[K+5>>0]=i[6664]|0;i[K+6>>0]=i[6665]|0;g=L;h=6666;l=g+9|0;do{i[g>>0]=i[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(l|0));X=(k[e>>2]|0)!=0?K:L;L=k[m>>2]|0;k[M>>2]=f;k[M+4>>2]=L;k[M+8>>2]=X;cc(d,2,6675,M)|0}else{k[G>>2]=f;cc(d,2,6493,G)|0}while(0);j[J>>1]=0;e=0}while(0);k[a+168>>2]=k[b+18680>>2];X=a+88|0;j[X>>1]=e;M=a+181|0;K=i[M>>0]&-2|k[b+20>>2]&1;i[M>>0]=K;L=b+24|0;K=(k[L>>2]&255)<<1&2|K&-3;i[M>>0]=K;i[M>>0]=K&-5|(k[b+28>>2]&255)<<2&4;do if((k[L>>2]|0)!=0?(N=b+32|0,(k[N>>2]|0)!=0):0){e=ha((k[b+4788>>2]|0)*12|0,k[aa>>2]|0)|0;f=Zc(e)|0;k[a+176>>2]=f;if(f){cj(f|0,k[N>>2]|0,e|0)|0;break}cc(d,1,7520,O)|0;d=0;r=ka;return d|0}while(0);h=a+100|0;k[h>>2]=k[b+12>>2];l=a+104|0;k[l>>2]=k[b+16>>2];g=a+92|0;k[g>>2]=k[b+4>>2];m=a+96|0;k[m>>2]=k[b+8>>2];f=b+36|0;e=k[f>>2]|0;do if(!e){e=pc()|0;f=Zc((Gi(e)|0)+29|0)|0;k[a+108>>2]=f;if(f){k[R>>2]=7697;k[R+4>>2]=e;xi(f,7692,R)|0;break}cc(d,1,7646,Q)|0;d=0;r=ka;return d|0}else{e=Zc((Gi(e)|0)+1|0)|0;k[a+108>>2]=e;if(e){Fi(e,k[f>>2]|0)|0;break}cc(d,1,7592,P)|0;d=0;r=ka;return d|0}while(0);e=(k[c+8>>2]|0)-(k[g>>2]|0)|0;f=k[c+12>>2]|0;if(!(k[b>>2]|0)){k[h>>2]=e;k[l>>2]=f-(k[m>>2]|0)}else{R=k[h>>2]|0;k[_>>2]=(e+-1+R|0)/(R|0)|0;R=k[l>>2]|0;k[$>>2]=(f+-1-(k[m>>2]|0)+R|0)/(R|0)|0}if(i[b+18688>>0]|0){i[a+180>>0]=i[b+18689>>0]|0;i[M>>0]=i[M>>0]|8}R=_c(ha(k[$>>2]|0,k[_>>2]|0)|0,5640)|0;L=a+164|0;k[L>>2]=R;if(!R){cc(d,1,7726,S)|0;d=0;r=ka;return d|0}K=b+4784|0;A=k[K>>2]|0;do if(A){w=b+48|0;B=k[aa>>2]|0;C=k[c+16>>2]|0;D=k[b+4788>>2]|0;E=ha(C,B)|0;F=_c(ha(E,D)|0,4)|0;if(!F){cc(d,1,7780,T)|0;break}g=k[w>>2]|0;s=b+60|0;e=k[s>>2]|0;if(g>>>0<e>>>0){n=ha(g,C)|0;t=b+52|0;u=b+64|0;v=b+56|0;f=k[u>>2]|0;while(1){h=k[t>>2]|0;if(h>>>0<f>>>0){e=k[v>>2]|0;m=h;l=h+n|0;while(1){if(!e)e=0;else{f=l;h=0;while(1){k[F+(f<<2)>>2]=1;h=h+1|0;e=k[v>>2]|0;if(h>>>0>=e>>>0)break;else f=f+E|0}f=k[u>>2]|0}m=m+1|0;if(m>>>0>=f>>>0)break;else l=l+1|0}e=k[s>>2]|0}g=g+1|0;if(g>>>0>=e>>>0)break;else n=n+C|0}}if(A>>>0>1){z=1;do{e=w;w=w+148|0;v=k[e+8>>2]|0;u=e+156|0;h=k[u>>2]|0;v=h>>>0>v>>>0?v:0;l=k[w>>2]|0;x=e+160|0;f=k[x>>2]|0;if(l>>>0<f>>>0){n=ha(l,C)|0;y=e+152|0;s=e+164|0;t=ha(v,E)|0;g=k[s>>2]|0;e=h;while(1){h=k[y>>2]|0;if(h>>>0<g>>>0){m=h;h=h+n|0;while(1){if(v>>>0<e>>>0){f=h+t|0;g=v;while(1){k[F+(f<<2)>>2]=1;g=g+1|0;e=k[u>>2]|0;if(g>>>0>=e>>>0)break;else f=f+E|0}g=k[s>>2]|0}m=m+1|0;if(m>>>0>=g>>>0)break;else h=h+1|0}f=k[x>>2]|0}l=l+1|0;if(l>>>0>=f>>>0)break;else n=n+C|0}}z=z+1|0}while((z|0)!=(A|0))}if((D|0)!=0?(U=(C|0)==0,(B|0)!=0):0){f=0;n=0;e=0;do{if(!U){m=f;l=0;while(1){g=0;h=m;while(1){e=(k[F+(h<<2)>>2]|0)!=1|e;g=g+1|0;if((g|0)==(C|0))break;else h=h+1|0}l=l+1|0;if((l|0)==(B|0))break;else m=m+C|0}f=E+f|0}n=n+1|0}while((n|0)!=(D|0));if(e)cc(d,1,7828,W)|0}cd(F)}while(0);e:do if(ha(k[$>>2]|0,k[_>>2]|0)|0){w=b+4788|0;x=b+40|0;y=b+44|0;z=b+18690|0;A=c+16|0;f=b+18696|0;B=c+24|0;C=b+5596|0;D=b+5600|0;E=b+5604|0;F=b+5608|0;G=b+5612|0;H=b+5616|0;I=b+5620|0;J=0;f:while(1){n=k[L>>2]|0;s=n+(J*5640|0)|0;W=k[w>>2]|0;e=n+(J*5640|0)+8|0;k[e>>2]=W;if(W){g=((j[X>>1]|0)+-3&65535)<4;l=0;do{h=(i[M>>0]&4)==0;do if(!g)if(h){k[n+(J*5640|0)+20+(l<<2)>>2]=k[b+4792+(l<<2)>>2];break}else{k[n+(J*5640|0)+5184+(l<<2)>>2]=k[b+5192+(l<<2)>>2];break}else{if(!h)k[n+(J*5640|0)+5184+(l<<2)>>2]=k[b+5192+(l<<2)>>2];k[n+(J*5640|0)+20+(l<<2)>>2]=k[b+4792+(l<<2)>>2]}while(0);l=l+1|0}while(l>>>0<(k[e>>2]|0)>>>0)}k[s>>2]=k[x>>2];k[n+(J*5640|0)+4>>2]=k[y>>2];m=n+(J*5640|0)+16|0;k[m>>2]=i[z>>0];e=n+(J*5640|0)+5636|0;g=i[e>>0]|0;i[e>>0]=g&-5;if(!(k[K>>2]|0))k[n+(J*5640|0)+420>>2]=0;else{i[e>>0]=g|4;g=k[K>>2]|0;if(!g)e=0;else{h=J+1|0;l=0;e=0;do{if((h|0)==(k[b+48+(l*148|0)+48>>2]|0)){k[n+(J*5640|0)+424+(e*148|0)>>2]=k[b+48+(e*148|0)>>2];k[n+(J*5640|0)+424+(e*148|0)+4>>2]=k[b+48+(e*148|0)+4>>2];k[n+(J*5640|0)+424+(e*148|0)+8>>2]=k[b+48+(e*148|0)+8>>2];k[n+(J*5640|0)+424+(e*148|0)+12>>2]=k[b+48+(e*148|0)+12>>2];k[n+(J*5640|0)+424+(e*148|0)+16>>2]=k[b+48+(e*148|0)+16>>2];k[n+(J*5640|0)+424+(e*148|0)+32>>2]=k[b+48+(e*148|0)+32>>2];k[n+(J*5640|0)+424+(e*148|0)+48>>2]=k[b+48+(e*148|0)+48>>2];e=e+1|0}l=l+1|0}while(l>>>0<g>>>0)}k[n+(J*5640|0)+420>>2]=e+-1}W=_c(k[A>>2]|0,1080)|0;v=n+(J*5640|0)+5584|0;k[v>>2]=W;if(!W){Z=149;break}do if(!(k[f>>2]|0)){g:do if((k[m>>2]|0)==1){e=k[A>>2]|0;if(e>>>0<=2){h=e;break}g=k[B>>2]|0;e=k[g>>2]|0;do if((e|0)==(k[g+52>>2]|0)){if((e|0)!=(k[g+104>>2]|0))break;e=k[g+4>>2]|0;if((e|0)!=(k[g+56>>2]|0))break;if((e|0)==(k[g+108>>2]|0)){Z=175;break g}}while(0);cc(d,2,8224,ea)|0;k[m>>2]=0;Z=175}else Z=175;while(0);if((Z|0)==175){Z=0;h=k[A>>2]|0}if(!h)break;e=k[B>>2]|0;g=0;do{if(!(k[e+(g*52|0)+32>>2]|0))k[(k[v>>2]|0)+(g*1080|0)+1076>>2]=1<<(k[e+(g*52|0)+24>>2]|0)+-1;g=g+1|0}while(g>>>0<h>>>0);Y=h;Z=166}else{h=k[A>>2]|0;h=ha(h<<2,h)|0;e=Zc(h)|0;l=(k[f>>2]|0)+h|0;if(!e){Z=152;break f}k[m>>2]=2;g=Zc(h)|0;k[n+(J*5640|0)+5608>>2]=g;if(!g){Z=154;break f}cj(g|0,k[f>>2]|0,h|0)|0;cj(e|0,k[f>>2]|0,h|0)|0;g=Zc(h)|0;h=n+(J*5640|0)+5604|0;k[h>>2]=g;if(!g){Z=156;break f}if(!(dh(e,g,k[A>>2]|0)|0)){Z=158;break f}g=Zc(k[A>>2]<<3)|0;k[n+(J*5640|0)+5600>>2]=g;if(!g){Z=160;break f}Sf(g,k[A>>2]|0,k[h>>2]|0);cd(e);e=k[A>>2]|0;if(e){g=k[v>>2]|0;h=0;do{k[g+(h*1080|0)+1076>>2]=k[l+(h<<2)>>2];h=h+1|0}while(h>>>0<e>>>0)}if(!(id(s,c)|0)){Z=167;break f}Y=k[A>>2]|0;Z=166}while(0);if((Z|0)==166?(Z=0,(Y|0)!=0):0){u=0;do{s=k[v>>2]|0;t=s+(u*1080|0)|0;k[t>>2]=k[x>>2]&1;h=k[aa>>2]|0;l=s+(u*1080|0)+4|0;k[l>>2]=h;e=k[C>>2]|0;if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+8>>2]=e;e=k[D>>2]|0;if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+12>>2]=e;k[s+(u*1080|0)+16>>2]=k[E>>2];W=k[F>>2]|0;k[s+(u*1080|0)+20>>2]=(W|0)==0&1;k[s+(u*1080|0)+24>>2]=(W|0)!=0?2:0;k[s+(u*1080|0)+804>>2]=2;if((u|0)==(k[G>>2]|0))e=k[H>>2]|0;else e=0;k[s+(u*1080|0)+808>>2]=e;do if(!(k[x>>2]&1)){if(!h)break;else e=0;do{k[s+(u*1080|0)+812+(e<<2)>>2]=15;k[s+(u*1080|0)+944+(e<<2)>>2]=15;e=e+1|0}while(e>>>0<(k[l>>2]|0)>>>0)}else{if((h|0)>0){l=h;n=0}else break;while(1){m=l;l=l+-1|0;e=k[I>>2]|0;do if((n|0)<(e|0)){e=k[b+5624+(n<<2)>>2]|0;if((e|0)<1)k[s+(u*1080|0)+812+(l<<2)>>2]=1;else{if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+812+(l<<2)>>2]=e}e=k[b+5756+(n<<2)>>2]|0;if((e|0)<1){k[s+(u*1080|0)+944+(l<<2)>>2]=1;break}if((e|0)>1){g=0;do{e=e>>1;g=g+1|0}while((e|0)>1);e=g}else e=0;k[s+(u*1080|0)+944+(l<<2)>>2]=e}else{W=e+-1|0;g=n-W|0;e=k[b+5624+(W<<2)>>2]>>g;g=k[b+5756+(W<<2)>>2]>>g;if((e|0)<1)k[s+(u*1080|0)+812+(l<<2)>>2]=1;else{if((e|0)>1){h=0;do{e=e>>1;h=h+1|0}while((e|0)>1);e=h}else e=0;k[s+(u*1080|0)+812+(l<<2)>>2]=e}if((g|0)<1){k[s+(u*1080|0)+944+(l<<2)>>2]=1;break}if((g|0)>1){e=0;do{g=g>>1;e=e+1|0}while((g|0)>1)}else e=0;k[s+(u*1080|0)+944+(l<<2)>>2]=e}while(0);if((m|0)<=1)break;else n=n+1|0}}while(0);Wg(t,k[(k[B>>2]|0)+(u*52|0)+24>>2]|0);u=u+1|0}while(u>>>0<(k[A>>2]|0)>>>0)}J=J+1|0;if(J>>>0>=(ha(k[$>>2]|0,k[_>>2]|0)|0)>>>0)break e}if((Z|0)==149){cc(d,1,7867,ba)|0;d=0;r=ka;return d|0}else if((Z|0)==152){cc(d,1,7931,ca)|0;d=0;r=ka;return d|0}else if((Z|0)==154){cd(e);cc(d,1,7974,fa)|0;d=0;r=ka;return d|0}else if((Z|0)==156){cd(e);cc(d,1,8032,ga)|0;d=0;r=ka;return d|0}else if((Z|0)==158){cd(e);cc(d,1,8092,ia)|0;d=0;r=ka;return d|0}else if((Z|0)==160){cd(e);cc(d,1,8140,ja)|0;d=0;r=ka;return d|0}else if((Z|0)==167){cc(d,1,8190,da)|0;d=0;r=ka;return d|0}}else f=b+18696|0;while(0);e=k[f>>2]|0;if(!e){d=1;r=ka;return d|0}cd(e);k[f>>2]=0;d=1;r=ka;return d|0}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,p=0,q=0,r=0;if((k[a+16>>2]|0)!=2){a=1;return a|0}l=a+5604|0;r=a+5616|0;c=k[r>>2]|0;m=a+5620|0;do if(k[l>>2]|0){do if((c|0)==(k[m>>2]|0)){c=c+10|0;k[m>>2]=c;d=a+5612|0;c=bd(k[d>>2]|0,c*20|0)|0;if(c){k[d>>2]=c;q=k[r>>2]|0;_i(c+(q*20|0)|0,0,((k[m>>2]|0)-q|0)*20|0)|0;c=k[r>>2]|0;break}cd(k[d>>2]|0);k[d>>2]=0;k[m>>2]=0;k[r>>2]=0;a=0;return a|0}else d=a+5612|0;while(0);h=k[d>>2]|0;f=h+(c*20|0)|0;j=h+(c*20|0)+12|0;d=k[j>>2]|0;if(d){cd(d);k[j>>2]=0}k[h+(c*20|0)+8>>2]=1;k[h+(c*20|0)+4>>2]=1;k[f>>2]=2;d=k[b+16>>2]|0;d=ha(d,d)|0;e=d<<2;g=Zc(e)|0;k[j>>2]=g;if(!g){a=0;return a|0}else{fb[k[768+(k[f>>2]<<2)>>2]&15](k[l>>2]|0,g,d);k[h+(c*20|0)+16>>2]=e;c=(k[r>>2]|0)+1|0;k[r>>2]=c;g=2;break}}else{g=1;f=0}while(0);do if((c|0)==(k[m>>2]|0)){d=c+10|0;k[m>>2]=d;c=a+5612|0;d=bd(k[c>>2]|0,d*20|0)|0;if(!d){cd(k[c>>2]|0);k[c>>2]=0;k[m>>2]=0;k[r>>2]=0;a=0;return a|0}else{k[c>>2]=d;e=k[r>>2]|0;_i(d+(e*20|0)|0,0,((k[m>>2]|0)-e|0)*20|0)|0;if(!f){f=0;break}f=d+((e+-1|0)*20|0)|0;break}}else c=a+5612|0;while(0);l=k[c>>2]|0;m=k[r>>2]|0;q=l+(m*20|0)|0;n=l+(m*20|0)+12|0;c=k[n>>2]|0;if(c){cd(c);k[n>>2]=0}p=g+1|0;k[l+(m*20|0)+8>>2]=g;k[l+(m*20|0)+4>>2]=2;k[q>>2]=2;b=b+16|0;c=k[b>>2]|0;d=c<<2;j=Zc(d)|0;k[n>>2]=j;if(!j){a=0;return a|0}e=Zc(d)|0;if(!e){cd(k[n>>2]|0);k[n>>2]=0;a=0;return a|0}if(c){g=0;h=e;j=k[a+5584>>2]|0;while(1){o[h>>2]=+(k[j+1076>>2]|0);g=g+1|0;if((g|0)==(c|0))break;else{h=h+4|0;j=j+1080|0}}}fb[k[768+(k[q>>2]<<2)>>2]&15](e,k[n>>2]|0,c);cd(e);k[l+(m*20|0)+16>>2]=d;k[r>>2]=(k[r>>2]|0)+1;g=a+5628|0;c=k[g>>2]|0;e=a+5632|0;do if((c|0)==(k[e>>2]|0)){c=c+10|0;k[e>>2]=c;d=a+5624|0;c=bd(k[d>>2]|0,c*20|0)|0;if(c){k[d>>2]=c;a=k[g>>2]|0;_i(c+(a*20|0)|0,0,((k[e>>2]|0)-a|0)*20|0)|0;c=k[g>>2]|0;break}cd(k[d>>2]|0);k[d>>2]=0;k[e>>2]=0;k[g>>2]=0;a=0;return a|0}else d=a+5624|0;while(0);a=k[d>>2]|0;k[a+(c*20|0)+8>>2]=f;r=a+(c*20|0)+16|0;i[r>>0]=i[r>>0]|1;k[a+(c*20|0)+4>>2]=k[b>>2];k[a+(c*20|0)>>2]=p;k[a+(c*20|0)+12>>2]=q;k[g>>2]=(k[g>>2]|0)+1;a=1;return a|0}function jd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function kd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=fc()|0;j=b+80|0;k[j>>2]=i;if(!i){j=0;return j|0}e=b+192|0;if((Cg(k[e>>2]|0,23,d)|0)!=0?(Cg(k[e>>2]|0,24,d)|0)!=0:0){g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}}else Fg(g);e=b+188|0;if((Cg(k[e>>2]|0,25,d)|0)!=0?(Cg(k[e>>2]|0,26,d)|0)!=0:0){g=k[e>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](b,a,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}}else Fg(g);e=fc()|0;k[c>>2]=e;if(!e){j=0;return j|0}jc(k[j>>2]|0,e);e=ha(k[b+116>>2]|0,k[b+112>>2]|0)|0;h=b+196|0;k[(k[h>>2]|0)+36>>2]=e;e=_c(e,40)|0;f=k[h>>2]|0;k[f+40>>2]=e;if(!e){j=0;return j|0}if(!(k[f+36>>2]|0)){j=1;return j|0}g=0;while(1){k[e+(g*40|0)+28>>2]=100;k[e+(g*40|0)+20>>2]=0;j=_c(100,24)|0;f=k[h>>2]|0;e=k[f+40>>2]|0;k[e+(g*40|0)+24>>2]=j;g=g+1|0;if(!j){e=0;f=30;break}if(g>>>0>=(k[f+36>>2]|0)>>>0){e=1;f=30;break}}if((f|0)==30)return e|0}hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}hc(k[j>>2]|0);k[j>>2]=0;j=0;return j|0}function ld(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;if(!a)return;b=a+28|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}g=a+40|0;b=k[g>>2]|0;if(b){f=a+36|0;if(k[f>>2]|0){c=b;e=0;do{d=k[c+(e*40|0)+36>>2]|0;if(d){cd(d);b=k[g>>2]|0;k[b+(e*40|0)+36>>2]=0;c=b}d=k[c+(e*40|0)+16>>2]|0;if(d){cd(d);b=k[g>>2]|0;k[b+(e*40|0)+16>>2]=0;c=b}d=k[c+(e*40|0)+24>>2]|0;if(d){cd(d);c=k[g>>2]|0;k[c+(e*40|0)+24>>2]=0;b=c}e=e+1|0}while(e>>>0<(k[f>>2]|0)>>>0)}cd(b);k[g>>2]=0}cd(a);return}function md(a,b,c,d,e,f,g,h,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,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;Da=r;r=r+256|0;Ca=Da+200|0;Ba=Da+192|0;za=Da+184|0;ya=Da+176|0;pa=Da+168|0;oa=Da+160|0;na=Da+152|0;ma=Da+144|0;la=Da+136|0;ka=Da+128|0;ia=Da+120|0;ga=Da+112|0;wa=Da+104|0;ua=Da+96|0;fa=Da+88|0;ea=Da+80|0;da=Da+72|0;va=Da+64|0;ca=Da+56|0;ba=Da+48|0;sa=Da+40|0;ra=Da+32|0;qa=Da+24|0;ja=Da+16|0;aa=Da+8|0;$=Da;V=Da+240|0;T=Da+236|0;X=Da+232|0;Z=Da+228|0;_=Da+224|0;U=Da+220|0;Y=Da+216|0;S=Da+212|0;W=Da+208|0;k[S>>2]=65424;Aa=a+8|0;a:do switch(k[Aa>>2]|0){case 256:{k[S>>2]=65497;o=a+76|0;xa=117;break}case 8:{ta=a+76|0;if(!(i[ta>>0]&1)){O=a+200|0;P=a+164|0;Q=a+72|0;R=a+24|0;B=a+196|0;C=a+112|0;D=a+116|0;F=V+2|0;G=V+6|0;H=V+7|0;I=a+16|0;J=a+20|0;K=a+64|0;o=65424;b:while(1){c:do if((o|0)!=65427){while(1){A=_b(m)|0;if((A|0)==0&(L|0)==0){xa=7;break}if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=9;break b}Ab(k[I>>2]|0,W,2);if((k[W>>2]|0)>>>0<2){xa=11;break b}if((k[S>>2]|0)==32896?(A=_b(m)|0,(A|0)==0&(L|0)==0):0){xa=14;break}s=k[Aa>>2]|0;o=k[W>>2]|0;if(s&16)k[R>>2]=-2-o+(k[R>>2]|0);p=o+-2|0;k[W>>2]=p;o=k[S>>2]|0;q=784;while(1){A=k[q>>2]|0;if((A|0)==0|(A|0)==(o|0)){y=q;break}else q=q+12|0}if(!(k[q+4>>2]&s)){xa=20;break b}if(p>>>0>(k[J>>2]|0)>>>0){A=_b(m)|0;z=L;if(0>(z|0)|0==(z|0)&p>>>0>A>>>0){xa=24;break b}o=bd(k[I>>2]|0,k[W>>2]|0)|0;if(!o){xa=26;break b}k[I>>2]=o;p=k[W>>2]|0;k[J>>2]=p}else o=k[I>>2]|0;p=Wb(m,o,p,n)|0;if((p|0)!=(k[W>>2]|0)){xa=29;break b}o=k[q+8>>2]|0;if(!o){xa=31;break b}if(!(hb[o&63](a,k[I>>2]|0,p,n)|0)){xa=33;break b}q=k[O>>2]|0;p=k[B>>2]|0;v=k[y>>2]|0;w=Zb(m)|0;x=k[W>>2]|0;w=w-x+-4|0;x=x+4|0;p=p+40|0;u=k[p>>2]|0;o=k[u+(q*40|0)+20>>2]|0;s=u+(q*40|0)+28|0;t=k[s>>2]|0;if((o+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;k[s>>2]=t;s=bd(k[u+(q*40|0)+24>>2]|0,t*24|0)|0;t=k[p>>2]|0;o=t+(q*40|0)+24|0;if(!s){xa=41;break b}k[o>>2]=s;p=t;o=k[t+(q*40|0)+20>>2]|0}else{p=u;s=k[u+(q*40|0)+24>>2]|0}j[s+(o*24|0)>>1]=v;A=s+(o*24|0)+8|0;k[A>>2]=w;k[A+4>>2]=((w|0)<0)<<31>>31;k[s+(o*24|0)+16>>2]=x;k[p+(q*40|0)+20>>2]=o+1;if((v|0)==65424?(E=k[p+(q*40|0)+16>>2]|0,(E|0)!=0):0){A=E+((k[p+(q*40|0)+12>>2]|0)*24|0)|0;k[A>>2]=w;k[A+4>>2]=0}do if((k[y>>2]|0)==65424){o=Zb(m)|0;o=-4-(k[W>>2]|0)+o|0;A=K;z=k[A+4>>2]|0;if(!(0>(z|0)|(0==(z|0)?o>>>0>(k[A>>2]|0)>>>0:0)))break;A=K;k[A>>2]=o;k[A+4>>2]=0}while(0);if(i[ta>>0]&4){xa=46;break}if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=50;break b}Ab(k[I>>2]|0,S,2);if((k[S>>2]|0)==65427)break c}if((xa|0)==7){xa=0;k[Aa>>2]=64;break}else if((xa|0)==14){xa=0;k[Aa>>2]=64;break}else if((xa|0)==46){xa=0;A=$b(m,k[R>>2]|0,0,n)|0;if(!((L|0)==0?(A|0)==(k[R>>2]|0):0)){xa=47;break b}k[S>>2]=65427;break}}while(0);A=_b(m)|0;if((A|0)==0&(L|0)==0?(k[Aa>>2]|0)==64:0){xa=115;break}o=i[ta>>0]|0;if(!(o&4)){p=k[O>>2]|0;q=k[P>>2]|0;if(!(k[Q>>2]|0)){o=k[R>>2]|0;if(o>>>0>1){s=o+-2|0;k[R>>2]=s}else s=o}else{s=_b(m)|0;s=aj(s|0,L|0,-2,0)|0;k[R>>2]=s}o=q+(p*5640|0)+5592|0;A=q+(p*5640|0)+5596|0;do if(!s)z=1;else{z=_b(m)|0;y=L;if(0>(y|0)|0==(y|0)&s>>>0>z>>>0)cc(n,2,8573,fa)|0;p=k[o>>2]|0;if(!p){z=Zc(k[R>>2]|0)|0;k[o>>2]=z;if(!z)break b;else{z=0;break}}p=bd(p,(k[R>>2]|0)+(k[A>>2]|0)|0)|0;if(!p){xa=65;break b}k[o>>2]=p;z=0}while(0);p=k[B>>2]|0;if(p){w=Zb(m)|0;s=L;y=aj(w|0,s|0,-2,-1)|0;q=k[O>>2]|0;p=p+40|0;u=k[p>>2]|0;v=k[u+(q*40|0)+12>>2]|0;t=k[u+(q*40|0)+16>>2]|0;x=t+(v*24|0)+8|0;k[x>>2]=y;k[x+4>>2]=L;x=k[R>>2]|0;s=aj(x|0,0,w|0,s|0)|0;v=t+(v*24|0)+16|0;k[v>>2]=s;k[v+4>>2]=L;x=x+2|0;v=k[u+(q*40|0)+20>>2]|0;s=u+(q*40|0)+28|0;t=k[s>>2]|0;if((v+1|0)>>>0>t>>>0){t=~~(+(t>>>0)+100.0)>>>0;k[s>>2]=t;s=bd(k[u+(q*40|0)+24>>2]|0,t*24|0)|0;t=k[p>>2]|0;u=t+(q*40|0)+24|0;if(!s){o=u;xa=74;break}k[u>>2]=s;w=t;p=k[t+(q*40|0)+20>>2]|0}else{w=u;s=k[u+(q*40|0)+24>>2]|0;p=v}j[s+(p*24|0)>>1]=-109;v=Zi(0,y|0,32)|0;y=s+(p*24|0)+8|0;k[y>>2]=v;k[y+4>>2]=L;k[s+(p*24|0)+16>>2]=x;k[w+(q*40|0)+20>>2]=p+1}if(!z)o=Wb(m,(k[o>>2]|0)+(k[A>>2]|0)|0,k[R>>2]|0,n)|0;else o=0;k[Aa>>2]=(o|0)==(k[R>>2]|0)?8:64;k[A>>2]=(k[A>>2]|0)+o;o=i[ta>>0]|0;if((o&9)==1){i[ta>>0]=o|8;p=k[O>>2]|0;do if((bc(m)|0)!=0?(M=Zb(m)|0,N=L,!((M|0)==-1&(N|0)==-1)):0){while(1){if((Wb(m,V,2,n)|0)!=2){xa=81;break}Ab(V,T,2);if((k[T>>2]|0)!=65424){xa=83;break}if((Wb(m,V,2,n)|0)!=2){xa=85;break}Ab(V,X,2);if((k[X>>2]|0)!=10){xa=87;break}k[X>>2]=8;o=Wb(m,V,8,n)|0;if((o|0)!=(k[X>>2]|0)){xa=89;break}if((o|0)!=8){xa=91;break}Ab(V,Z,2);Ab(F,_,4);Ab(G,U,1);Ab(H,Y,1);if((k[Z>>2]|0)==(p|0)){xa=97;break}o=k[_>>2]|0;if(o>>>0<14){xa=94;break}xa=o+-12|0;k[_>>2]=xa;xa=$b(m,xa,0,n)|0;if(!((L|0)==0?(xa|0)==(k[_>>2]|0):0)){xa=96;break}}if((xa|0)==81){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==83){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==85){xa=0;cc(n,1,8295,ga)|0;o=0;p=0;break}else if((xa|0)==87){xa=0;cc(n,1,8313,ia)|0;o=0;p=0;break}else if((xa|0)==89){xa=0;cc(n,1,8295,ka)|0;o=0;p=0;break}else if((xa|0)==91){xa=0;cc(n,1,8662,la)|0;o=0;p=0;break}else if((xa|0)==94){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==96){xa=0;o=(ac(m,M,N,n)|0)!=0&1;p=0;break}else if((xa|0)==97){xa=0;p=(k[U>>2]|0)==(k[Y>>2]|0)&1;o=(ac(m,M,N,n)|0)!=0&1;break}}else{o=1;p=0}while(0);if(!o){xa=99;break}if(p){o=ha(k[D>>2]|0,k[C>>2]|0)|0;i[ta>>0]=i[ta>>0]&-18|16;if(o){p=k[P>>2]|0;t=0;do{q=p+(t*5640|0)+5588|0;s=k[q>>2]|0;if(s)k[q>>2]=s+1;t=t+1|0}while((t|0)!=(o|0))}cc(n,2,8734,na)|0}}if(!(i[ta>>0]&1)){if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=109;break}Ab(k[I>>2]|0,S,2)}}else{i[ta>>0]=o&-6;k[Aa>>2]=8;if((Wb(m,k[I>>2]|0,2,n)|0)!=2){xa=113;break}Ab(k[I>>2]|0,S,2)}o=k[S>>2]|0;if(!((o|0)!=65497&(i[ta>>0]&1)==0)){xa=116;break}}switch(xa|0){case 9:{cc(n,1,8295,$)|0;n=0;r=Da;return n|0}case 11:{cc(n,1,8313,aa)|0;n=0;r=Da;return n|0}case 20:{cc(n,1,8339,ja)|0;n=0;r=Da;return n|0}case 24:{cc(n,1,8382,qa)|0;n=0;r=Da;return n|0}case 26:{cd(k[I>>2]|0);k[I>>2]=0;k[J>>2]=0;cc(n,1,8427,ra)|0;n=0;r=Da;return n|0}case 29:{cc(n,1,8295,sa)|0;n=0;r=Da;return n|0}case 31:{cc(n,1,8461,ba)|0;n=0;r=Da;return n|0}case 33:{k[ca>>2]=k[S>>2];cc(n,1,8490,ca)|0;n=0;r=Da;return n|0}case 41:{cd(k[o>>2]|0);Ca=k[p>>2]|0;k[Ca+(q*40|0)+24>>2]=0;k[Ca+(q*40|0)+28>>2]=0;k[Ca+(q*40|0)+20>>2]=0;cc(n,1,8537,va)|0;n=0;r=Da;return n|0}case 47:{cc(n,1,8295,da)|0;n=0;r=Da;return n|0}case 50:{cc(n,1,8295,ea)|0;n=0;r=Da;return n|0}case 65:{cd(k[o>>2]|0);k[o>>2]=0;break}case 74:{cd(k[o>>2]|0);Ca=k[p>>2]|0;k[Ca+(q*40|0)+24>>2]=0;k[Ca+(q*40|0)+28>>2]=0;k[Ca+(q*40|0)+20>>2]=0;cc(n,1,8537,wa)|0;n=0;r=Da;return n|0}case 99:{cc(n,1,8688,ma)|0;n=0;r=Da;return n|0}case 109:{cc(n,1,8295,oa)|0;n=0;r=Da;return n|0}case 113:{cc(n,1,8295,pa)|0;n=0;r=Da;return n|0}case 115:{o=k[S>>2]|0;xa=116;break}}if((xa|0)==116)if((o|0)==65497){o=ta;xa=117;break a}else{o=ta;break a}cc(n,1,8628,ua)|0;n=0;r=Da;return n|0}else o=ta;break}default:{n=0;r=Da;return n|0}}while(0);if((xa|0)==117)if((k[Aa>>2]|0)!=256){k[a+200>>2]=0;k[Aa>>2]=256}if(!(i[o>>0]&1)){s=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;t=a+200|0;p=k[t>>2]|0;d:do if(p>>>0<s>>>0){o=p;q=(k[a+164>>2]|0)+(p*5640|0)|0;while(1){if(k[q+5592>>2]|0){p=o;break d}p=o+1|0;k[t>>2]=p;if(p>>>0<s>>>0){o=p;q=q+5640|0}else break}}while(0);if((p|0)==(s|0)){k[l>>2]=0;n=1;r=Da;return n|0}}else{p=a+200|0;t=p;p=k[p>>2]|0}A=k[a+164>>2]|0;if(i[A+(p*5640|0)+5636>>0]&2){B=A+(p*5640|0)+5160|0;q=k[B>>2]|0;if(!q)o=0;else{s=k[A+(p*5640|0)+5164>>2]|0;u=0;o=0;do{o=(k[s+(u<<3)+4>>2]|0)+o|0;u=u+1|0}while((u|0)!=(q|0))}xa=Zc(o)|0;z=A+(p*5640|0)+5172|0;k[z>>2]=xa;if(!xa){cc(n,1,8775,ya)|0;cc(n,1,8813,za)|0;n=0;r=Da;return n|0}y=A+(p*5640|0)+5180|0;k[y>>2]=o;q=k[B>>2]|0;x=A+(p*5640|0)+5164|0;if(!q)o=k[x>>2]|0;else{o=k[x>>2]|0;v=o;w=0;u=0;while(1){s=k[v+(w<<3)>>2]|0;if(!s)s=v;else{cj((k[z>>2]|0)+u|0,s|0,k[v+(w<<3)+4>>2]|0)|0;s=k[x>>2]|0;u=(k[s+(w<<3)+4>>2]|0)+u|0;cd(k[s+(w<<3)>>2]|0);s=k[x>>2]|0;k[s+(w<<3)>>2]=0;k[s+(w<<3)+4>>2]=0;q=k[B>>2]|0;o=s}w=w+1|0;if(w>>>0>=q>>>0)break;else v=s}}k[B>>2]=0;cd(o);k[x>>2]=0;k[A+(p*5640|0)+5168>>2]=k[z>>2];k[A+(p*5640|0)+5176>>2]=k[y>>2];p=k[t>>2]|0}o=a+204|0;if(!(jg(k[o>>2]|0,p,n)|0)){cc(n,1,8839,Ba)|0;n=0;r=Da;return n|0}else{Ba=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;k[Ca>>2]=(k[t>>2]|0)+1;k[Ca+4>>2]=Ba;cc(n,4,8873,Ca)|0;k[b>>2]=k[t>>2];k[l>>2]=1;n=kg(k[o>>2]|0)|0;k[c>>2]=n;n=k[k[(k[o>>2]|0)+20>>2]>>2]|0;k[d>>2]=k[n>>2];k[e>>2]=k[n+4>>2];k[f>>2]=k[n+8>>2];k[g>>2]=k[n+12>>2];k[h>>2]=k[n+16>>2];k[Aa>>2]=k[Aa>>2]|128;n=1;r=Da;return n|0}return 0}function nd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+48|0;q=t+28|0;s=t+32|0;n=a+8|0;if(!(k[n>>2]&128)){e=0;r=t;return e|0}p=a+200|0;if((k[p>>2]|0)!=(b|0)){e=0;r=t;return e|0}g=k[a+164>>2]|0;m=g+(b*5640|0)|0;o=g+(b*5640|0)+5592|0;h=k[o>>2]|0;if(!h){Cd(m);e=0;r=t;return e|0}j=a+204|0;l=g+(b*5640|0)+5596|0;if(!(mg(k[j>>2]|0,h,k[l>>2]|0,b,k[a+196>>2]|0,f)|0)){Cd(m);k[n>>2]=k[n>>2]|32768;cc(f,1,8912,t)|0;e=0;r=t;return e|0}if(!(ng(k[j>>2]|0,c,d)|0)){e=0;r=t;return e|0}g=k[o>>2]|0;if(g){cd(g);k[o>>2]=0;k[l>>2]=0}o=a+76|0;i[o>>0]=i[o>>0]&-2;k[n>>2]=k[n>>2]&-129;o=_b(e)|0;a=k[n>>2]|0;if((a|0)==256|(o|0)==0&(L|0)==0&(a|0)==64){e=1;r=t;return e|0}if((Wb(e,s,2,f)|0)!=2){cc(f,2,8931,t+8|0)|0;e=1;r=t;return e|0}Ab(s,q,2);switch(k[q>>2]|0){case 65497:{k[p>>2]=0;k[n>>2]=256;e=1;r=t;return e|0}case 65424:{e=1;r=t;return e|0}default:if((_b(e)|0)==0&(L|0)==0){k[n>>2]=64;cc(f,2,8975,t+16|0)|0;e=1;r=t;return e|0}else{cc(f,1,9005,t+24|0)|0;e=0;r=t;return e|0}}return 0}function od(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+112|0;y=z+96|0;x=z+88|0;w=z+80|0;v=z+72|0;u=z+64|0;s=z+56|0;q=z+48|0;n=z+40|0;m=z+32|0;l=z+24|0;j=z+16|0;o=k[a+80>>2]|0;if((k[a+8>>2]|0)!=8){cc(g,1,9037,z)|0;g=0;r=z;return g|0}if(!(d|c|e|f)){cc(g,4,9116,z+8|0)|0;k[a+28>>2]=0;k[a+32>>2]=0;k[a+36>>2]=k[a+112>>2];k[a+40>>2]=k[a+116>>2];g=1;r=z;return g|0}t=o+8|0;h=k[t>>2]|0;if(h>>>0<c>>>0){k[j>>2]=c;k[j+4>>2]=h;cc(g,1,9185,j)|0;g=0;r=z;return g|0}h=k[o>>2]|0;if(h>>>0>c>>>0){k[l>>2]=c;k[l+4>>2]=h;cc(g,2,9272,l)|0;h=0;c=k[o>>2]|0}else h=((c-(k[a+92>>2]|0)|0)>>>0)/((k[a+100>>2]|0)>>>0)|0;k[a+28>>2]=h;k[b>>2]=c;p=o+12|0;c=k[p>>2]|0;if(c>>>0<d>>>0){k[m>>2]=d;k[m+4>>2]=c;cc(g,1,9360,m)|0;g=0;r=z;return g|0}j=o+4|0;c=k[j>>2]|0;if(c>>>0>d>>>0){k[n>>2]=d;k[n+4>>2]=c;cc(g,2,9445,n)|0;c=0;d=k[j>>2]|0}else c=((d-(k[a+96>>2]|0)|0)>>>0)/((k[a+104>>2]|0)>>>0)|0;k[a+32>>2]=c;l=b+4|0;k[l>>2]=d;c=k[o>>2]|0;if(c>>>0>e>>>0){k[q>>2]=e;k[q+4>>2]=c;cc(g,1,9531,q)|0;g=0;r=z;return g|0}c=k[t>>2]|0;if(c>>>0<e>>>0){k[s>>2]=e;k[s+4>>2]=c;cc(g,2,9620,s)|0;c=k[a+112>>2]|0;e=k[t>>2]|0}else{c=k[a+100>>2]|0;c=(e+-1-(k[a+92>>2]|0)+c|0)/(c|0)|0}k[a+36>>2]=c;h=b+8|0;k[h>>2]=e;e=k[j>>2]|0;if(e>>>0>f>>>0){k[u>>2]=f;k[u+4>>2]=e;cc(g,1,9708,u)|0;g=0;r=z;return g|0}e=k[p>>2]|0;if(e>>>0<f>>>0){k[v>>2]=f;k[v+4>>2]=e;cc(g,2,9798,v)|0;c=k[p>>2]|0;e=k[a+116>>2]|0}else{e=k[a+104>>2]|0;c=f;e=(f+-1-(k[a+96>>2]|0)+e|0)/(e|0)|0}k[a+40>>2]=e;f=b+12|0;k[f>>2]=c;v=a+76|0;i[v>>0]=i[v>>0]|2;v=k[b+16>>2]|0;a=k[b>>2]|0;a:do if(v){d=k[l>>2]|0;t=d+-1|0;u=k[h>>2]|0;p=u+-1|0;q=a+-1|0;e=0;o=k[b+24>>2]|0;while(1){b=k[o>>2]|0;c=(q+b|0)/(b|0)|0;k[o+16>>2]=c;n=k[o+4>>2]|0;h=(t+n|0)/(n|0)|0;k[o+20>>2]=h;b=(p+b|0)/(b|0)|0;j=k[o+40>>2]|0;l=$i(1,0,j|0)|0;m=L;b=aj(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;b=aj(b|0,L|0,l|0,m|0)|0;b=Zi(b|0,L|0,j|0)|0;c=aj(c|0,((c|0)<0)<<31>>31|0,-1,-1)|0;c=aj(c|0,L|0,l|0,m|0)|0;c=Zi(c|0,L|0,j|0)|0;c=b-c|0;if((c|0)<0){h=29;break}s=k[f>>2]|0;b=(n+-1+s|0)/(n|0)|0;k[o+8>>2]=c;b=aj(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;b=aj(b|0,L|0,l|0,m|0)|0;b=Zi(b|0,L|0,j|0)|0;c=aj(h|0,((h|0)<0)<<31>>31|0,-1,-1)|0;c=aj(c|0,L|0,l|0,m|0)|0;c=Zi(c|0,L|0,j|0)|0;c=b-c|0;if((c|0)<0){h=31;break}k[o+12>>2]=c;e=e+1|0;if(e>>>0>=v>>>0){c=u;e=s;break a}else o=o+52|0}if((h|0)==29){k[w>>2]=e;k[w+4>>2]=c;cc(g,1,9887,w)|0;g=0;r=z;return g|0}else if((h|0)==31){k[x>>2]=e;k[x+4>>2]=c;cc(g,1,9956,x)|0;g=0;r=z;return g|0}}else{d=k[l>>2]|0;c=k[h>>2]|0;e=k[f>>2]|0}while(0);k[y>>2]=a;k[y+4>>2]=d;k[y+8>>2]=c;k[y+12>>2]=e;cc(g,4,10025,y)|0;g=1;r=z;return g|0}function pd(){var a=0,b=0,c=0;a=_c(1,208)|0;if(!a){b=0;return b|0}k[a>>2]=1;b=a+184|0;i[b>>0]=i[b>>0]|2;b=_c(1,5640)|0;k[a+12>>2]=b;if(!b){gd(a);b=0;return b|0}b=_c(1,1e3)|0;k[a+16>>2]=b;if(!b){gd(a);b=0;return b|0}k[a+20>>2]=1e3;k[a+60>>2]=-1;b=a+64|0;k[b>>2]=0;k[b+4>>2]=0;b=_c(1,48)|0;do if(b){k[b+32>>2]=100;k[b+24>>2]=0;c=_c(100,24)|0;k[b+28>>2]=c;if(!c){cd(b);break}k[b+40>>2]=0;k[a+196>>2]=b;c=Ag()|0;k[a+192>>2]=c;if(!c){gd(a);c=0;return c|0}c=Ag()|0;k[a+188>>2]=c;if(c){c=a;return c|0}gd(a);c=0;return c|0}while(0);k[a+196>>2]=0;gd(a);c=0;return c|0}function qd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+128|0;s=t+104|0;q=t+72|0;p=t+64|0;l=t+40|0;i=t+24|0;g=t+16|0;f=t+8|0;e=t;if(b&384){ui(10063,11,1,c)|0;r=t;return}if((b&1|0)!=0?(d=k[a+80>>2]|0,(d|0)!=0):0)rd(d,0,c);if(b&2){ui(10075,36,1,c)|0;d=k[a+96>>2]|0;k[e>>2]=k[a+92>>2];k[e+4>>2]=d;ji(c,10112,e)|0;e=k[a+104>>2]|0;k[f>>2]=k[a+100>>2];k[f+4>>2]=e;ji(c,10130,f)|0;f=k[a+116>>2]|0;k[g>>2]=k[a+112>>2];k[g+4>>2]=f;ji(c,10148,g)|0;Hd(k[a+12>>2]|0,k[(k[a+80>>2]|0)+16>>2]|0,c);ui(10164,2,1,c)|0}if((b&8|0)!=0?(h=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0,(h|0)!=0):0){d=a+80|0;e=0;f=k[a+164>>2]|0;while(1){Hd(f,k[(k[d>>2]|0)+16>>2]|0,c);e=e+1|0;if((e|0)==(h|0))break;else f=f+5640|0}}if(!(b&16)){r=t;return}g=k[a+196>>2]|0;ui(10167,37,1,c)|0;h=g;b=k[h+4>>2]|0;d=g+8|0;a=k[d>>2]|0;d=k[d+4>>2]|0;f=i;k[f>>2]=k[h>>2];k[f+4>>2]=b;f=i+8|0;k[f>>2]=a;k[f+4>>2]=d;ji(c,10205,i)|0;ui(10272,17,1,c)|0;f=g+28|0;d=k[f>>2]|0;a:do if((d|0)!=0?(j=g+24|0,(k[j>>2]|0)!=0):0){e=0;while(1){b=d+(e*24|0)+8|0;h=k[b>>2]|0;b=k[b+4>>2]|0;i=k[d+(e*24|0)+16>>2]|0;k[l>>2]=m[d+(e*24|0)>>1];a=l+8|0;k[a>>2]=h;k[a+4>>2]=b;k[l+16>>2]=i;ji(c,10290,l)|0;e=e+1|0;if(e>>>0>=(k[j>>2]|0)>>>0)break a;d=k[f>>2]|0}}while(0);ui(10321,4,1,c)|0;b=g+40|0;f=k[b>>2]|0;if((f|0)!=0?(o=g+36|0,n=k[o>>2]|0,(n|0)!=0):0){e=0;d=0;do{d=(k[f+(e*40|0)+4>>2]|0)+d|0;e=e+1|0}while((e|0)!=(n|0));if(d){ui(10326,16,1,c)|0;if(k[o>>2]|0){d=k[b>>2]|0;h=0;do{g=k[d+(h*40|0)+4>>2]|0;k[p>>2]=h;k[p+4>>2]=g;ji(c,10343,p)|0;d=k[b>>2]|0;e=k[d+(h*40|0)+16>>2]|0;b:do if(!((g|0)==0|(e|0)==0)){d=0;while(1){a=e+(d*24|0)|0;u=k[a>>2]|0;a=k[a+4>>2]|0;j=e+(d*24|0)+8|0;i=k[j>>2]|0;j=k[j+4>>2]|0;n=e+(d*24|0)+16|0;l=k[n>>2]|0;n=k[n+4>>2]|0;k[q>>2]=d;f=q+8|0;k[f>>2]=u;k[f+4>>2]=a;f=q+16|0;k[f>>2]=i;k[f+4>>2]=j;f=q+24|0;k[f>>2]=l;k[f+4>>2]=n;ji(c,10379,q)|0;f=d+1|0;d=k[b>>2]|0;if((f|0)==(g|0))break b;e=k[d+(h*40|0)+16>>2]|0;d=f}}while(0);e=k[d+(h*40|0)+24>>2]|0;c:do if((e|0)!=0?(k[d+(h*40|0)+20>>2]|0)!=0:0){d=0;while(1){n=e+(d*24|0)+8|0;l=k[n>>2]|0;n=k[n+4>>2]|0;f=k[e+(d*24|0)+16>>2]|0;k[s>>2]=m[e+(d*24|0)>>1];u=s+8|0;k[u>>2]=l;k[u+4>>2]=n;k[s+16>>2]=f;ji(c,10290,s)|0;f=d+1|0;d=k[b>>2]|0;if(f>>>0>=(k[d+(h*40|0)+20>>2]|0)>>>0)break c;e=k[d+(h*40|0)+24>>2]|0;d=f}}while(0);h=h+1|0}while(h>>>0<(k[o>>2]|0)>>>0)}ui(10321,4,1,c)|0}}ui(10164,2,1,c)|0;r=t;return}function rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;m=r;r=r+64|0;l=m+48|0;j=m+40|0;g=m+32|0;f=m+16|0;e=m;h=m+52|0;if(!b){ui(10482,13,1,c)|0;i[h+1>>0]=0;d=9}else{ui(10445,36,1,k[676]|0)|0;d=0}i[h>>0]=d;n=k[a>>2]|0;d=k[a+4>>2]|0;k[e>>2]=h;k[e+4>>2]=n;k[e+8>>2]=d;ji(c,10496,e)|0;e=k[a+8>>2]|0;d=k[a+12>>2]|0;k[f>>2]=h;k[f+4>>2]=e;k[f+8>>2]=d;ji(c,10513,f)|0;f=a+16|0;d=k[f>>2]|0;k[g>>2]=h;k[g+4>>2]=d;ji(c,10530,g)|0;d=a+24|0;if(!(k[d>>2]|0)){ui(10164,2,1,c)|0;r=m;return}if(!(k[f>>2]|0)){ui(10164,2,1,c)|0;r=m;return}else e=0;do{k[j>>2]=h;k[j+4>>2]=e;ji(c,10546,j)|0;sd((k[d>>2]|0)+(e*52|0)|0,b,c);k[l>>2]=h;ji(c,10566,l)|0;e=e+1|0}while(e>>>0<(k[f>>2]|0)>>>0);ui(10164,2,1,c)|0;r=m;return}function sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+48|0;h=j+24|0;g=j+16|0;f=j;e=j+32|0;d=(b|0)!=0;if(d){ui(10571,41,1,k[676]|0)|0;b=0}else{i[e+1>>0]=9;i[e+2>>0]=0;b=9}i[e>>0]=b;l=k[a>>2]|0;b=k[a+4>>2]|0;k[f>>2]=e;k[f+4>>2]=l;k[f+8>>2]=b;ji(c,10613,f)|0;f=k[a+24>>2]|0;k[g>>2]=e;k[g+4>>2]=f;ji(c,10630,g)|0;g=k[a+32>>2]|0;k[h>>2]=e;k[h+4>>2]=g;ji(c,10642,h)|0;if(!d){r=j;return}ui(10164,2,1,c)|0;r=j;return}function td(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=r;r=r+16|0;d=l;b=a+80|0;i=k[(k[b>>2]|0)+16>>2]|0;c=_c(1,56)|0;k[d>>2]=c;if(!c){j=0;r=l;return j|0}k[c+24>>2]=k[(k[b>>2]|0)+16>>2];k[c>>2]=k[a+92>>2];k[c+4>>2]=k[a+96>>2];k[c+8>>2]=k[a+100>>2];k[c+12>>2]=k[a+104>>2];k[c+16>>2]=k[a+112>>2];k[c+20>>2]=k[a+116>>2];k[c+52>>2]=0;c=k[a+12>>2]|0;b=k[d>>2]|0;k[b+32>>2]=k[c>>2];k[b+36>>2]=k[c+4>>2];k[b+40>>2]=k[c+8>>2];k[b+44>>2]=k[c+16>>2];h=_c(k[b+24>>2]|0,1080)|0;k[b+48>>2]=h;b=k[d>>2]|0;h=b+48|0;a=k[h>>2]|0;if(!a){Mc(d);j=0;r=l;return j|0}if(!i){j=b;r=l;return j|0}g=c+5584|0;c=0;while(1){f=k[g>>2]|0;k[a+(c*1080|0)+4>>2]=k[f+(c*1080|0)>>2];d=f+(c*1080|0)+4|0;e=k[d>>2]|0;k[a+(c*1080|0)+8>>2]=e;k[a+(c*1080|0)+12>>2]=k[f+(c*1080|0)+8>>2];k[a+(c*1080|0)+16>>2]=k[f+(c*1080|0)+12>>2];k[a+(c*1080|0)+20>>2]=k[f+(c*1080|0)+16>>2];k[a+(c*1080|0)+24>>2]=k[f+(c*1080|0)+20>>2];if(e>>>0<33){cj(a+(c*1080|0)+948|0,f+(c*1080|0)+944|0,e|0)|0;cj(a+(c*1080|0)+816|0,f+(c*1080|0)+812|0,k[d>>2]|0)|0}e=k[f+(c*1080|0)+24>>2]|0;k[a+(c*1080|0)+28>>2]=e;k[a+(c*1080|0)+808>>2]=k[f+(c*1080|0)+804>>2];if((e|0)!=1){e=(k[d>>2]|0)*3|0;d=e+-2|0;if((d|0)<97&(e|0)>2)j=10}else{d=1;j=10}if((j|0)==10){j=0;e=0;do{k[a+(c*1080|0)+32+(e<<2)>>2]=k[f+(c*1080|0)+28+(e<<3)+4>>2];k[a+(c*1080|0)+420+(e<<2)>>2]=k[f+(c*1080|0)+28+(e<<3)>>2];e=e+1|0}while((e|0)!=(d|0))}k[a+(c*1080|0)+812>>2]=k[f+(c*1080|0)+808>>2];c=c+1|0;if((c|0)==(i|0))break;a=k[h>>2]|0}r=l;return b|0}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=_c(1,48)|0;if(!b){j=0;return j|0}g=a+196|0;c=k[g>>2]|0;h=c;j=k[h+4>>2]|0;a=b;k[a>>2]=k[h>>2];k[a+4>>2]=j;a=c+8|0;j=k[a+4>>2]|0;h=b+8|0;k[h>>2]=k[a>>2];k[h+4>>2]=j;h=c+16|0;j=k[h+4>>2]|0;a=b+16|0;k[a>>2]=k[h>>2];k[a+4>>2]=j;c=k[c+24>>2]|0;a=b+24|0;k[a>>2]=c;c=Zc(c*24|0)|0;j=b+28|0;k[j>>2]=c;if(!c){cd(b);j=0;return j|0}d=k[(k[g>>2]|0)+28>>2]|0;if(!d){cd(c);k[j>>2]=0}else cj(c|0,d|0,(k[a>>2]|0)*24|0)|0;a=k[(k[g>>2]|0)+36>>2]|0;f=b+36|0;k[f>>2]=a;a=_c(a,40)|0;h=b+40|0;k[h>>2]=a;if(!a){cd(k[j>>2]|0);cd(b);j=0;return j|0}c=k[(k[g>>2]|0)+40>>2]|0;if(!c){cd(a);k[h>>2]=0;j=b;return j|0}if(!(k[f>>2]|0)){j=b;return j|0}c=k[c+20>>2]|0;k[a+20>>2]=c;c=Zc(c*24|0)|0;a=k[h>>2]|0;k[a+24>>2]=c;a:do if(!c)c=0;else{e=c;c=0;while(1){d=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+24>>2]|0;if(!d){cd(e);a=k[h>>2]|0;k[a+(c*40|0)+24>>2]=0}else{cj(e|0,d|0,(k[a+(c*40|0)+20>>2]|0)*24|0)|0;a=k[h>>2]|0}d=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+4>>2]|0;k[a+(c*40|0)+4>>2]=d;d=Zc(d*24|0)|0;a=k[h>>2]|0;k[a+(c*40|0)+16>>2]=d;if(!d)break;e=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+16>>2]|0;if(!e){cd(d);a=k[h>>2]|0;k[a+(c*40|0)+16>>2]=0}else{cj(d|0,e|0,(k[a+(c*40|0)+4>>2]|0)*24|0)|0;a=k[h>>2]|0}k[a+(c*40|0)+32>>2]=0;k[a+(c*40|0)+36>>2]=0;c=c+1|0;if(c>>>0>=(k[f>>2]|0)>>>0){i=32;break}e=k[(k[(k[g>>2]|0)+40>>2]|0)+(c*40|0)+20>>2]|0;k[a+(c*40|0)+20>>2]=e;e=Zc(e*24|0)|0;a=k[h>>2]|0;k[a+(c*40|0)+24>>2]=e;if(!e)break a}if((i|0)==32)return b|0;if(c){cd(k[a+24>>2]|0);cd(k[(k[h>>2]|0)+16>>2]|0);if((c|0)!=1){a=1;do{cd(k[(k[h>>2]|0)+(a*40|0)+24>>2]|0);cd(k[(k[h>>2]|0)+(a*40|0)+16>>2]|0);a=a+1|0}while((a|0)!=(c|0))}a=k[h>>2]|0}cd(a);cd(k[j>>2]|0);cd(b);j=0;return j|0}while(0);if(c){cd(k[a+24>>2]|0);if((c|0)!=1){a=1;do{cd(k[(k[h>>2]|0)+(a*40|0)+24>>2]|0);a=a+1|0}while((a|0)!=(c|0))}a=k[h>>2]|0}cd(a);cd(k[j>>2]|0);cd(b);j=0;return j|0}function vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!c){c=0;return c|0}e=fc()|0;j=a+84|0;k[j>>2]=e;if(!e){c=0;return c|0}jc(c,e);g=a+188|0;Cg(k[g>>2]|0,27,d)|0;g=k[g>>2]|0;h=Dg(g)|0;e=Eg(g)|0;if(h){i=0;f=1;while(1){if(!f)f=0;else f=($a[k[e>>2]&63](a,b,d)|0)!=0;i=i+1|0;if((i|0)==(h|0))break;else{e=e+4|0;f=f&1}}Fg(g);if(!f){c=a+80|0;hc(k[c>>2]|0);k[c>>2]=0;c=0;return c|0}}else Fg(g);h=k[c+16>>2]|0;if(!h){c=1;return c|0}g=k[(k[j>>2]|0)+24>>2]|0;e=k[c+24>>2]|0;f=0;do{k[e+(f*52|0)+36>>2]=k[g+(f*52|0)+36>>2];c=g+(f*52|0)+44|0;k[e+(f*52|0)+44>>2]=k[c>>2];k[c>>2]=0;f=f+1|0}while(f>>>0<h>>>0);e=1;return e|0}function wd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;t=r;r=r+16|0;h=t+8|0;if(!c){cc(d,1,10654,t)|0;s=0;r=t;return s|0}f=k[a+112>>2]|0;g=ha(k[a+116>>2]|0,f)|0;if(g>>>0<=e>>>0){k[h>>2]=e;k[h+4>>2]=g+-1;cc(d,1,10692,h)|0;s=0;r=t;return s|0}s=(e>>>0)%(f>>>0)|0;q=(e>>>0)/(f>>>0)|0;h=k[a+100>>2]|0;g=ha(h,s)|0;i=k[a+92>>2]|0;g=g+i|0;k[c>>2]=g;p=a+80|0;f=k[p>>2]|0;j=k[f>>2]|0;g=g>>>0<j>>>0?j:g;k[c>>2]=g;i=(ha(h,s+1|0)|0)+i|0;s=c+8|0;k[s>>2]=i;h=k[f+8>>2]|0;i=i>>>0>h>>>0?h:i;k[s>>2]=i;s=k[a+104>>2]|0;h=ha(s,q)|0;j=k[a+96>>2]|0;h=h+j|0;o=c+4|0;k[o>>2]=h;n=k[f+4>>2]|0;h=h>>>0<n>>>0?n:h;k[o>>2]=h;j=(ha(s,q+1|0)|0)+j|0;q=c+12|0;k[q>>2]=j;s=k[f+12>>2]|0;j=j>>>0>s>>>0?s:j;k[q>>2]=j;q=c+24|0;s=c+16|0;o=k[s>>2]|0;if(o){n=k[f+24>>2]|0;m=g+-1|0;l=h+-1|0;i=i+-1|0;f=j+-1|0;g=0;h=k[q>>2]|0;while(1){j=k[n+(g*52|0)+40>>2]|0;k[h+40>>2]=j;z=k[h>>2]|0;y=(m+z|0)/(z|0)|0;k[h+16>>2]=y;u=k[h+4>>2]|0;x=(l+u|0)/(u|0)|0;k[h+20>>2]=x;z=(i+z|0)/(z|0)|0;u=(f+u|0)/(u|0)|0;w=$i(1,0,j|0)|0;v=L;z=aj(z|0,((z|0)<0)<<31>>31|0,-1,-1)|0;z=aj(z|0,L|0,w|0,v|0)|0;z=Zi(z|0,L|0,j|0)|0;y=aj(y|0,((y|0)<0)<<31>>31|0,-1,-1)|0;y=aj(y|0,L|0,w|0,v|0)|0;y=Zi(y|0,L|0,j|0)|0;k[h+8>>2]=z-y;u=aj(u|0,((u|0)<0)<<31>>31|0,-1,-1)|0;u=aj(u|0,L|0,w|0,v|0)|0;u=Zi(u|0,L|0,j|0)|0;x=aj(x|0,((x|0)<0)<<31>>31|0,-1,-1)|0;v=aj(x|0,L|0,w|0,v|0)|0;j=Zi(v|0,L|0,j|0)|0;k[h+12>>2]=u-j;g=g+1|0;if(g>>>0>=o>>>0)break;else h=h+52|0}}l=a+84|0;f=k[l>>2]|0;if(f)hc(f);f=fc()|0;k[l>>2]=f;if(!f){z=0;r=t;return z|0}jc(c,f);k[a+60>>2]=e;h=a+188|0;Cg(k[h>>2]|0,28,d)|0;h=k[h>>2]|0;i=Dg(h)|0;f=Eg(h)|0;if(i){j=0;g=1;while(1){if(!g)g=0;else g=($a[k[f>>2]&63](a,b,d)|0)!=0;j=j+1|0;if((j|0)==(i|0))break;else{f=f+4|0;g=g&1}}Fg(h);if(!g){hc(k[p>>2]|0);k[p>>2]=0;z=0;r=t;return z|0}}else Fg(h);f=k[s>>2]|0;if(!f){z=1;r=t;return z|0}i=k[(k[l>>2]|0)+24>>2]|0;h=k[q>>2]|0;j=0;while(1){k[h+(j*52|0)+36>>2]=k[i+(j*52|0)+36>>2];g=k[h+(j*52|0)+44>>2]|0;if(!g)g=i;else{cd(g);g=k[(k[l>>2]|0)+24>>2]|0;h=k[q>>2]|0;f=k[s>>2]|0}z=g+(j*52|0)+44|0;k[h+(j*52|0)+44>>2]=k[z>>2];k[z>>2]=0;j=j+1|0;if(j>>>0>=f>>>0){f=1;break}else i=g}r=t;return f|0}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;k[a+168>>2]=b;d=k[a+80>>2]|0;a:do if((((d|0)!=0?(g=k[d+24>>2]|0,(g|0)!=0):0)?(e=k[a+12>>2]|0,(e|0)!=0):0)?(f=k[e+5584>>2]|0,(f|0)!=0):0){d=k[d+16>>2]|0;if(!d)d=1;else{e=0;while(1){if((k[f+(e*1080|0)+4>>2]|0)>>>0<=b>>>0)break;k[g+(e*52|0)+40>>2]=b;e=e+1|0;if(e>>>0>=d>>>0){d=1;break a}}cc(c,1,10753,h)|0;d=0}}else d=0;while(0);r=i;return d|0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,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;Q=r;r=r+48|0;O=Q+32|0;N=Q+24|0;M=Q+16|0;K=Q+8|0;L=Q;A=a+204|0;d=k[A>>2]|0;F=a+116|0;G=a+112|0;H=ha(k[G>>2]|0,k[F>>2]|0)|0;I=(H|0)==1;if(!H){P=1;r=Q;return P|0}J=a+200|0;B=a+12|0;C=a+164|0;D=a+8|0;E=d+20|0;y=d+24|0;z=0;d=0;h=0;a:while(1){if((k[J>>2]|0)!=(z|0)){P=5;break}w=z;z=z+1|0;x=ha(k[F>>2]|0,k[G>>2]|0)|0;k[K>>2]=z;k[K+4>>2]=x;cc(c,4,10866,K)|0;k[B>>2]=0;x=k[A>>2]|0;k[x+12>>2]=k[(k[C>>2]|0)+(w*5640|0)+5588>>2];k[D>>2]=0;if(!(ig(x,k[J>>2]|0,c)|0))break;e=k[A>>2]|0;if(k[(k[e+24>>2]|0)+16>>2]|0){g=0;do{f=k[(k[k[E>>2]>>2]|0)+20>>2]|0;if(I){k[f+(g*52|0)+32>>2]=k[(k[(k[y>>2]|0)+24>>2]|0)+(g*52|0)+44>>2];k[f+(g*52|0)+36>>2]=0}else{if(!(hg(f+(g*52|0)|0)|0)){P=14;break a}e=k[A>>2]|0}g=g+1|0}while(g>>>0<(k[(k[e+24>>2]|0)+16>>2]|0)>>>0)}x=og(e)|0;if(!I){if(x>>>0>h>>>0){e=bd(d,x)|0;if(!e){P=20;break}else{d=e;e=x}}else e=h;f=k[A>>2]|0;w=f+24|0;g=k[w>>2]|0;if(k[g+16>>2]|0){v=f+20|0;f=d;u=0;do{q=k[(k[k[v>>2]>>2]|0)+20>>2]|0;l=k[g+24>>2]|0;p=k[l+(u*52|0)+24>>2]|0;p=((p&7|0)!=0&1)+(p>>>3)|0;m=k[q+(u*52|0)+8>>2]|0;n=k[q+(u*52|0)>>2]|0;t=m-n|0;o=k[q+(u*52|0)+12>>2]|0;q=k[q+(u*52|0)+4>>2]|0;T=k[g>>2]|0;S=k[l+(u*52|0)>>2]|0;h=k[l+(u*52|0)+4>>2]|0;R=(S+~T+(k[g+8>>2]|0)|0)/(S|0)|0;s=R-t|0;g=n-((T+-1+S|0)/(S|0)|0)+(ha(R,q-(((k[g+4>>2]|0)+-1+h|0)/(h|0)|0)|0)|0)|0;g=(k[l+(u*52|0)+44>>2]|0)+(g<<2)|0;b:do switch(((p|0)==3?4:p)|0){case 1:{h=(o|0)==(q|0);if(!(k[l+(u*52|0)+32>>2]|0)){if(h)break b;p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){i[l>>0]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+1|0;m=m+4|0}}f=f+t|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}else{if(h)break b;p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){i[l>>0]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+1|0;m=m+4|0}}f=f+t|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}case 2:{h=(o|0)==(q|0);if(!(k[l+(u*52|0)+32>>2]|0)){if(!h){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){j[l>>1]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+2|0;m=m+4|0}}f=f+(t<<1)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}}else if(!h){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){j[l>>1]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+2|0;m=m+4|0}}f=f+(t<<1)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}case 4:{if((o|0)!=(q|0)){p=(m|0)==(n|0);n=o-q|0;o=0;while(1){if(!p){h=0;l=f;m=g;while(1){k[l>>2]=k[m>>2];h=h+1|0;if((h|0)==(t|0))break;else{l=l+4|0;m=m+4|0}}f=f+(t<<2)|0;g=g+(t<<2)|0}o=o+1|0;if((o|0)==(n|0))break;else g=g+(s<<2)|0}}break}default:{}}while(0);u=u+1|0;g=k[w>>2]|0}while(u>>>0<(k[g+16>>2]|0)>>>0);f=k[A>>2]|0}if(!(pg(f,d,x)|0)){P=63;break}}else e=h;if(!(Kd(a,b,c)|0)){P=65;break}if(z>>>0>=H>>>0){P=67;break}else h=e}if((P|0)==5)cc(c,1,10829,L)|0;else if((P|0)==14){cc(c,1,10887,M)|0;if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}else if((P|0)==20){if(d)cd(d);cc(c,1,10925,N)|0;T=0;r=Q;return T|0}else if((P|0)==63){cc(c,1,10964,O)|0;cd(d);T=0;r=Q;return T|0}else if((P|0)==65){if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}else if((P|0)==67){if(!d){T=1;r=Q;return T|0}cd(d);T=1;r=Q;return T|0}if(!d){T=0;r=Q;return T|0}cd(d);T=0;r=Q;return T|0}function zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+188|0;if(!(Cg(k[d>>2]|0,29,c)|0)){b=0;return b|0}if(((j[a+88>>1]|0)+-3&65535)<4?(Cg(k[d>>2]|0,30,c)|0)==0:0){b=0;return b|0}if(!(Cg(k[d>>2]|0,31,c)|0)){b=0;return b|0}if(!(Cg(k[d>>2]|0,32,c)|0)){b=0;return b|0}if(!(Cg(k[d>>2]|0,33,c)|0)){b=0;return b|0}h=k[d>>2]|0;f=Dg(h)|0;d=Eg(h)|0;if(!f)d=1;else{g=0;e=d;d=1;while(1){if(!d)d=0;else d=($a[k[e>>2]&63](a,b,c)|0)!=0;d=d&1;g=g+1|0;if((g|0)==(f|0))break;else e=e+4|0}}Fg(h);b=d;return b|0}function Ad(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,l=0;l=r;r=r+16|0;e=fc()|0;h=a+80|0;k[h>>2]=e;if(!e){cc(d,1,11011,l)|0;b=0;r=l;return b|0}jc(c,e);g=k[c+24>>2]|0;if((g|0)!=0?(i=k[c+16>>2]|0,(i|0)!=0):0){f=0;do{c=g+(f*52|0)+44|0;e=k[c>>2]|0;if(e){k[(k[(k[h>>2]|0)+24>>2]|0)+(f*52|0)+44>>2]=e;k[c>>2]=0}f=f+1|0}while(f>>>0<i>>>0)}e=a+192|0;if(!(Cg(k[e>>2]|0,34,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,35,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,36,d)|0)){b=0;r=l;return b|0}f=k[e>>2]|0;g=Dg(f)|0;e=Eg(f)|0;if(g){h=0;c=1;while(1){if(!c)c=0;else c=($a[k[e>>2]&63](a,b,d)|0)!=0;h=h+1|0;if((h|0)==(g|0))break;else{e=e+4|0;c=c&1}}Fg(f);if(!c){b=0;r=l;return b|0}}else Fg(f);e=a+188|0;if(!(Cg(k[e>>2]|0,37,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,38,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,39,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,40,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,41,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,42,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,43,d)|0)){b=0;r=l;return b|0}c=a+88|0;if(((j[c>>1]|0)+-3&65535)<4){if(!(Cg(k[e>>2]|0,44,d)|0)){b=0;r=l;return b|0}if((j[c>>1]|0)==4?(Cg(k[e>>2]|0,45,d)|0)==0:0){b=0;r=l;return b|0}}if(!(Cg(k[e>>2]|0,46,d)|0)){b=0;r=l;return b|0}if((k[a+108>>2]|0)!=0?(Cg(k[e>>2]|0,47,d)|0)==0:0){b=0;r=l;return b|0}if((j[c>>1]&256)!=0?(Cg(k[e>>2]|0,48,d)|0)==0:0){b=0;r=l;return b|0}if((k[a+196>>2]|0)!=0?(Cg(k[e>>2]|0,49,d)|0)==0:0){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,50,d)|0)){b=0;r=l;return b|0}if(!(Cg(k[e>>2]|0,51,d)|0)){b=0;r=l;return b|0}h=k[e>>2]|0;f=Dg(h)|0;e=Eg(h)|0;if(!f)e=1;else{g=0;c=e;e=1;while(1){if(!e)e=0;else e=($a[k[c>>2]&63](a,b,d)|0)!=0;e=e&1;g=g+1|0;if((g|0)==(f|0))break;else c=c+4|0}}Fg(h);b=e;r=l;return b|0}function Bd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;n=p+40|0;o=p+32|0;m=p+24|0;j=p+16|0;h=p+8|0;g=p;i=a+200|0;if((k[i>>2]|0)==(b|0)){l=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[h>>2]=b+1;k[h+4>>2]=l;cc(f,4,10866,h)|0;k[a+12>>2]=0;l=a+204|0;h=k[l>>2]|0;k[h+12>>2]=k[(k[a+164>>2]|0)+(b*5640|0)+5588>>2];k[a+8>>2]=0;if(ig(h,k[i>>2]|0,f)|0){g=k[l>>2]|0;a:do if(k[(k[g+24>>2]|0)+16>>2]|0){h=0;while(1){if(!(hg((k[(k[k[g+20>>2]>>2]|0)+20>>2]|0)+(h*52|0)|0)|0))break;h=h+1|0;g=k[l>>2]|0;if(h>>>0>=(k[(k[g+24>>2]|0)+16>>2]|0)>>>0)break a}cc(f,1,10887,m)|0;o=0;r=p;return o|0}while(0);if(!(pg(g,c,d)|0)){cc(f,1,10964,o)|0;o=0;r=p;return o|0}if(Kd(a,e,f)|0){o=1;r=p;return o|0}k[n>>2]=b;cc(f,1,11101,n)|0;o=0;r=p;return o|0}}else cc(f,1,10829,g)|0;k[j>>2]=b;cc(f,1,11044,j)|0;o=0;r=p;return o|0}function Cd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;e=a+5164|0;b=k[e>>2]|0;if(b){f=a+5160|0;c=k[f>>2]|0;if(c){d=0;while(1){b=k[b+(d<<3)>>2]|0;if(b){cd(b);c=k[f>>2]|0}d=d+1|0;if(d>>>0>=c>>>0)break;b=k[e>>2]|0}b=k[e>>2]|0}k[f>>2]=0;cd(b);k[e>>2]=0}b=a+5172|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5584|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5608|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5604|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5624|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0;k[a+5632>>2]=0;k[a+5628>>2]=0}h=a+5612|0;b=k[h>>2]|0;if(b){g=a+5616|0;c=k[g>>2]|0;if(c){f=0;while(1){d=b+12|0;e=k[d>>2]|0;if(e){cd(e);k[d>>2]=0;c=k[g>>2]|0}f=f+1|0;if(f>>>0>=c>>>0)break;else b=b+20|0}b=k[h>>2]|0}cd(b);k[h>>2]=0}b=a+5600|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}b=a+5592|0;c=k[b>>2]|0;if(!c)return;cd(c);k[b>>2]=0;k[a+5596>>2]=0;return}function Dd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;return (k[a+8>>2]|0)==0&(k[a+188>>2]|0)!=0&(k[a+192>>2]|0)!=0&1|0}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=r;r=r+224|0;X=Y+200|0;U=Y+192|0;T=Y+184|0;Q=Y+176|0;P=Y+168|0;O=Y+160|0;M=Y+152|0;K=Y+144|0;J=Y+136|0;D=Y+128|0;I=Y+120|0;C=Y+112|0;B=Y+104|0;A=Y+96|0;z=Y+88|0;y=Y+80|0;H=Y+72|0;G=Y+64|0;x=Y+56|0;w=Y+48|0;v=Y+40|0;E=Y+32|0;o=Y+24|0;l=Y+16|0;h=Y+8|0;N=Y;S=Y+216|0;d=Y+204|0;F=Y+212|0;u=Y+208|0;W=a+8|0;k[W>>2]=1;a:do if((Wb(b,S,2,c)|0)==2?(Ab(S,d,2),(k[d>>2]|0)==65359):0){k[W>>2]=2;n=Zb(b)|0;n=aj(n|0,L|0,-2,-1)|0;m=L;V=a+196|0;e=k[V>>2]|0;k[e>>2]=n;k[e+4>>2]=m;e=N;k[e>>2]=n;k[e+4>>2]=m;cc(c,4,15766,N)|0;e=k[V>>2]|0;m=k[e>>2]|0;n=e+24|0;d=k[n>>2]|0;g=e+32|0;f=k[g>>2]|0;do if((d+1|0)>>>0>f>>>0){t=~~(+(f>>>0)+100.0)>>>0;k[g>>2]=t;d=e+28|0;e=bd(k[d>>2]|0,t*24|0)|0;if(!e){cd(k[d>>2]|0);k[d>>2]=0;k[g>>2]=0;k[n>>2]=0;cc(c,1,15803,h)|0;break a}else{k[d>>2]=e;d=k[n>>2]|0;break}}else e=k[e+28>>2]|0;while(0);j[e+(d*24|0)>>1]=-177;s=Zi(0,m|0,32)|0;t=e+(d*24|0)+8|0;k[t>>2]=s;k[t+4>>2]=L;k[e+(d*24|0)+16>>2]=2;k[n>>2]=d+1;t=a+16|0;if((Wb(b,k[t>>2]|0,2,c)|0)!=2){cc(c,1,8295,o)|0;c=0;r=Y;return c|0}Ab(k[t>>2]|0,F,2);d=k[F>>2]|0;if((d|0)!=65424){s=a+20|0;p=0;f=0;q=0;b:while(1){if(d>>>0<65280){R=14;break}else h=784;while(1){e=k[h>>2]|0;g=(e|0)==0;if(g|(e|0)==(d|0))break;else h=h+12|0}if(g){cc(c,2,15914,v)|0;l=2;c:while(1){do{if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=20;break b}Ab(k[t>>2]|0,N,2);d=k[N>>2]|0}while(d>>>0<65280);h=784;while(1){e=k[h>>2]|0;if((e|0)==0|(e|0)==(d|0)){g=h;d=h;break}else h=h+12|0}if(!(k[d+4>>2]&k[W>>2])){R=25;break b}if((e|0)>=65424){R=100;break}switch(e|0){case 0:break;default:{o=g;n=l;break c}}l=l+2|0}if((R|0)==100){R=0;switch(e|0){case 65424:{e=p;d=q;R=27;break b}default:{o=g;n=l}}}h=k[V>>2]|0;m=Zb(b)|0;m=m-n|0;g=h+24|0;d=k[g>>2]|0;e=h+32|0;l=k[e>>2]|0;if((d+1|0)>>>0>l>>>0){d=~~(+(l>>>0)+100.0)>>>0;k[e>>2]=d;h=h+28|0;d=bd(k[h>>2]|0,d*24|0)|0;if(!d){f=h;d=h;R=32;break}k[h>>2]=d;e=d;d=k[g>>2]|0}else e=k[h+28>>2]|0;j[e+(d*24|0)>>1]=0;l=e+(d*24|0)+8|0;k[l>>2]=m;k[l+4>>2]=((m|0)<0)<<31>>31;k[e+(d*24|0)+16>>2]=n;k[g>>2]=d+1;d=k[o>>2]|0;k[F>>2]=d;if((d|0)==65424){e=p;d=q;break}else g=784;while(1){e=k[g>>2]|0;if((e|0)==0|(e|0)==(d|0))break;else g=g+12|0}}else g=h;q=(e|0)==65361?1:q;p=(e|0)==65362?1:p;f=(e|0)==65372?1:f;if(!(k[g+4>>2]&k[W>>2])){R=38;break}if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=40;break}Ab(k[t>>2]|0,u,2);e=(k[u>>2]|0)+-2|0;k[u>>2]=e;d=k[t>>2]|0;if(e>>>0>(k[s>>2]|0)>>>0){d=bd(d,e)|0;if(!d){R=43;break}k[t>>2]=d;e=k[u>>2]|0;k[s>>2]=e}d=Wb(b,d,e,c)|0;if((d|0)!=(k[u>>2]|0)){R=46;break}if(!(hb[k[g+8>>2]&63](a,k[t>>2]|0,d,c)|0)){R=48;break}l=k[V>>2]|0;m=k[g>>2]|0;n=Zb(b)|0;o=k[u>>2]|0;n=-4-o+n|0;o=o+4|0;g=l+24|0;d=k[g>>2]|0;e=l+32|0;h=k[e>>2]|0;if((d+1|0)>>>0>h>>>0){d=~~(+(h>>>0)+100.0)>>>0;k[e>>2]=d;h=l+28|0;d=bd(k[h>>2]|0,d*24|0)|0;if(!d){f=h;d=h;R=53;break}k[h>>2]=d;e=d;d=k[g>>2]|0}else e=k[l+28>>2]|0;j[e+(d*24|0)>>1]=m;m=e+(d*24|0)+8|0;k[m>>2]=n;k[m+4>>2]=((n|0)<0)<<31>>31;k[e+(d*24|0)+16>>2]=o;k[g>>2]=d+1;if((Wb(b,k[t>>2]|0,2,c)|0)!=2){R=55;break}Ab(k[t>>2]|0,F,2);d=k[F>>2]|0;if((d|0)==65424){e=p;d=q;break}}switch(R|0){case 14:{k[E>>2]=d;cc(c,1,15863,E)|0;c=0;r=Y;return c|0}case 20:{cc(c,1,8295,w)|0;R=34;break}case 25:{cc(c,1,8339,x)|0;R=34;break}case 27:{k[F>>2]=65424;break}case 32:{cd(k[d>>2]|0);k[f>>2]=0;k[e>>2]=0;k[g>>2]=0;cc(c,1,15803,G)|0;R=34;break}case 38:{cc(c,1,8339,y)|0;c=0;r=Y;return c|0}case 40:{cc(c,1,8295,z)|0;c=0;r=Y;return c|0}case 43:{cd(k[t>>2]|0);k[t>>2]=0;k[s>>2]=0;cc(c,1,8427,A)|0;c=0;r=Y;return c|0}case 46:{cc(c,1,8295,B)|0;c=0;r=Y;return c|0}case 48:{cc(c,1,15985,C)|0;c=0;r=Y;return c|0}case 53:{cd(k[d>>2]|0);k[f>>2]=0;k[e>>2]=0;k[g>>2]=0;cc(c,1,15803,I)|0;c=0;r=Y;return c|0}case 55:{cc(c,1,8295,D)|0;c=0;r=Y;return c|0}}if((R|0)==34){cc(c,1,15930,H)|0;c=0;r=Y;return c|0}if(d){if(!e){cc(c,1,16090,K)|0;c=0;r=Y;return c|0}if(!f){cc(c,1,16136,M)|0;c=0;r=Y;return c|0}d:do if(i[a+184>>0]&1){s=a+120|0;do if(k[s>>2]|0){m=a+124|0;n=0;d=0;e=0;e:do{f=k[m>>2]|0;g=k[f+(n<<3)>>2]|0;f:do if(g){h=k[f+(n<<3)+4>>2]|0;f=d>>>0<h>>>0;l=f?0:d-h|0;if((h|0)==(d|0)|f^1)d=l;else{g=f?g+d|0:g;d=h-d|0;while(1){if(d>>>0<4){R=70;break e}Ab(g,N,4);f=d+-4|0;d=k[N>>2]|0;e=d+e|0;if(f>>>0<d>>>0)break;if((f|0)==(d|0)){d=l;break f}else{g=g+(d+4)|0;d=f-d|0}}d=d-f|0}}while(0);n=n+1|0}while(n>>>0<(k[s>>2]|0)>>>0);if((R|0)==70){cc(c,1,16182,O)|0;break}if(!d)R=77;else cc(c,1,16213,P)|0}else{e=0;R=77}while(0);g:do if((R|0)==77){f=Zc(e)|0;o=a+144|0;k[o>>2]=f;if(!f){cc(c,1,13302,Q)|0;break}p=a+132|0;k[p>>2]=e;g=k[s>>2]|0;q=a+124|0;do if(g){d=k[q>>2]|0;f=d;n=0;m=0;e=0;h:while(1){h=k[f+(n<<3)>>2]|0;if(!h)h=m;else{f=k[f+(n<<3)+4>>2]|0;d=(k[o>>2]|0)+e|0;i:do if(m>>>0<f>>>0){cj(d|0,h|0,m|0)|0;e=e+m|0;if((f|0)==(m|0)){h=0;break}l=h+m|0;d=f-m|0;while(1){if(d>>>0<4){R=88;break h}Ab(l,S,4);h=l+4|0;g=d+-4|0;f=k[S>>2]|0;d=(k[o>>2]|0)+e|0;if(g>>>0<f>>>0){f=h;break}cj(d|0,h|0,f|0)|0;d=k[S>>2]|0;e=d+e|0;if((g|0)==(d|0)){h=0;break i}else{l=l+(d+4)|0;d=g-d|0}}cj(d|0,f|0,g|0)|0;h=(k[S>>2]|0)-g|0;e=g+e|0}else{cj(d|0,h|0,f|0)|0;h=m-f|0;e=f+e|0}while(0);cd(k[(k[q>>2]|0)+(n<<3)>>2]|0);f=k[q>>2]|0;k[f+(n<<3)>>2]=0;k[f+(n<<3)+4>>2]=0;g=k[s>>2]|0;d=f}n=n+1|0;if(n>>>0>=g>>>0){R=94;break}else m=h}if((R|0)==88){cc(c,1,16182,T)|0;break g}else if((R|0)==94){f=k[o>>2]|0;e=k[p>>2]|0;break}}else d=k[q>>2]|0;while(0);k[a+128>>2]=f;k[a+152>>2]=e;k[s>>2]=0;cd(d);k[q>>2]=0;break d}while(0);cc(c,1,16236,U)|0;c=0;r=Y;return c|0}while(0);cc(c,4,16262,X)|0;X=Zb(b)|0;c=(k[V>>2]|0)+8|0;k[c>>2]=X+-2;k[c+4>>2]=0;k[W>>2]=8;c=1;r=Y;return c|0}}cc(c,1,16044,J)|0;c=0;r=Y;return c|0}while(0);cc(c,1,15839,l)|0;c=0;r=Y;return c|0}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=r;r=r+16|0;F=G;D=k[a+80>>2]|0;E=a+88|0;A=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;p=k[D+16>>2]|0;n=p*1080|0;o=k[a+12>>2]|0;p=ha(p<<2,p)|0;a:do if(A){q=o+5604|0;s=o+5620|0;t=o+5612|0;u=o+5616|0;v=o+5632|0;w=o+5624|0;x=o+5584|0;B=0;C=k[a+164>>2]|0;b:while(1){h=C+5584|0;y=k[h>>2]|0;cj(C|0,o|0,5640)|0;b=C+5636|0;i[b>>0]=i[b>>0]&-4;k[C+5168>>2]=0;b=C+5604|0;k[b>>2]=0;j=C+5620|0;k[j>>2]=0;z=C+5612|0;k[z>>2]=0;l=C+5632|0;k[l>>2]=0;m=C+5624|0;k[m>>2]=0;k[h>>2]=y;if(k[q>>2]|0){d=Zc(p)|0;k[b>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[q>>2]|0,p|0)|0}b=(k[s>>2]|0)*20|0;d=Zc(b)|0;k[z>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[t>>2]|0,b|0)|0;b=k[u>>2]|0;if(b){f=0;g=k[z>>2]|0;h=k[t>>2]|0;while(1){e=h+12|0;if(k[e>>2]|0){b=h+16|0;d=Zc(k[b>>2]|0)|0;k[g+12>>2]=d;if(!d){b=0;d=25;break b}cj(d|0,k[e>>2]|0,k[b>>2]|0)|0;b=k[u>>2]|0}k[j>>2]=(k[j>>2]|0)+1;f=f+1|0;if(f>>>0>=b>>>0)break;else{g=g+20|0;h=h+20|0}}}b=(k[v>>2]|0)*20|0;d=Zc(b)|0;k[m>>2]=d;if(!d){b=0;d=25;break}cj(d|0,k[w>>2]|0,b|0)|0;k[l>>2]=k[v>>2];f=k[v>>2]|0;if(f){g=0;d=k[m>>2]|0;e=k[w>>2]|0;while(1){b=k[e+8>>2]|0;if(b)k[d+8>>2]=(k[z>>2]|0)+(((b-(k[t>>2]|0)|0)/20|0)*20|0);b=k[e+12>>2]|0;if(b)k[d+12>>2]=(k[z>>2]|0)+(((b-(k[t>>2]|0)|0)/20|0)*20|0);g=g+1|0;if(g>>>0>=f>>>0)break;else{d=d+20|0;e=e+20|0}}}cj(y|0,k[x>>2]|0,n|0)|0;B=B+1|0;if(B>>>0>=A>>>0)break a;else C=C+5640|0}if((d|0)==25){r=G;return b|0}}while(0);d=bg(1)|0;b=a+204|0;k[b>>2]=d;if(!d){c=0;r=G;return c|0}if(fg(d,D,E)|0){c=1;r=G;return c|0}gg(k[b>>2]|0);k[b>>2]=0;cc(c,1,8839,F)|0;c=0;r=G;return c|0}function Hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;w=r;r=r+128|0;u=w+120|0;t=w+112|0;s=w+104|0;q=w+96|0;p=w+88|0;o=w+80|0;n=w+72|0;m=w+64|0;l=w+56|0;j=w+48|0;i=w+40|0;h=w+32|0;g=w+24|0;f=w+16|0;e=w+8|0;d=w;if(!a){r=w;return}ui(12191,17,1,c)|0;k[d>>2]=k[a>>2];ji(c,12209,d)|0;k[e>>2]=k[a+4>>2];ji(c,12222,e)|0;k[f>>2]=k[a+8>>2];ji(c,12234,f)|0;k[g>>2]=k[a+16>>2];ji(c,12251,g)|0;if((b|0)>0){f=a+5584|0;g=0;do{e=k[f>>2]|0;k[h>>2]=g;ji(c,12262,h)|0;k[i>>2]=k[e+(g*1080|0)>>2];ji(c,12276,i)|0;a=e+(g*1080|0)+4|0;k[j>>2]=k[a>>2];ji(c,12290,j)|0;k[l>>2]=k[e+(g*1080|0)+8>>2];ji(c,12313,l)|0;k[m>>2]=k[e+(g*1080|0)+12>>2];ji(c,12329,m)|0;k[n>>2]=k[e+(g*1080|0)+16>>2];ji(c,12345,n)|0;k[o>>2]=k[e+(g*1080|0)+20>>2];ji(c,12362,o)|0;ui(12377,23,1,c)|0;if(k[a>>2]|0){d=0;do{x=k[e+(g*1080|0)+944+(d<<2)>>2]|0;k[p>>2]=k[e+(g*1080|0)+812+(d<<2)>>2];k[p+4>>2]=x;ji(c,12401,p)|0;d=d+1|0}while(d>>>0<(k[a>>2]|0)>>>0)}ki(10,c)|0;x=e+(g*1080|0)+24|0;k[q>>2]=k[x>>2];ji(c,12410,q)|0;k[s>>2]=k[e+(g*1080|0)+804>>2];ji(c,12425,s)|0;ui(12442,20,1,c)|0;if((k[x>>2]|0)!=1){a=(k[a>>2]|0)*3|0;if((a|0)>2){a=a+-2|0;v=8}}else{a=1;v=8}if((v|0)==8){v=0;d=0;do{x=k[e+(g*1080|0)+28+(d<<3)>>2]|0;k[t>>2]=k[e+(g*1080|0)+28+(d<<3)+4>>2];k[t+4>>2]=x;ji(c,12401,t)|0;d=d+1|0}while((d|0)!=(a|0))}ki(10,c)|0;k[u>>2]=k[e+(g*1080|0)+808>>2];ji(c,12463,u)|0;ui(12480,5,1,c)|0;g=g+1|0}while((g|0)!=(b|0))}ui(10321,4,1,c)|0;r=w;return}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+80|0;u=B+32|0;v=B+24|0;y=B+16|0;x=B+8|0;n=B+64|0;w=B+60|0;m=B+56|0;p=B+52|0;s=B+48|0;q=B+44|0;t=B+40|0;o=B+36|0;k[n>>2]=1;d=Zc(1e3)|0;if(!d){cc(c,1,12127,B)|0;c=0;r=B;return c|0}z=a+116|0;A=a+112|0;i=a+204|0;j=a+84|0;l=a+8|0;e=1e3;h=0;while(1){if(!(md(a,w,m,p,s,q,t,o,n,b,c)|0)){f=5;break}if(!(k[n>>2]|0)){f=17;break}g=k[m>>2]|0;if(g>>>0>e>>>0){e=bd(d,g)|0;if(!e){f=9;break}else{d=e;f=g}}else f=e;e=k[w>>2]|0;if(!(nd(a,e,d,g,b,c)|0)){f=11;break}e=e+1|0;g=ha(k[A>>2]|0,k[z>>2]|0)|0;k[v>>2]=e;k[v+4>>2]=g;cc(c,4,11986,v)|0;g=k[i>>2]|0;if(!(me(k[(k[k[g+20>>2]>>2]|0)+20>>2]|0,k[g+24>>2]|0,d,k[(k[j>>2]|0)+24>>2]|0)|0)){f=13;break}k[u>>2]=e;cc(c,4,12016,u)|0;g=_b(b)|0;if((g|0)==0&(L|0)==0?(k[l>>2]|0)==64:0){f=17;break}h=h+1|0;if((h|0)==(ha(k[A>>2]|0,k[z>>2]|0)|0)){f=17;break}else e=f}if((f|0)==5){cd(d);c=0;r=B;return c|0}else if((f|0)==9){cd(d);A=ha(k[A>>2]|0,k[z>>2]|0)|0;k[x>>2]=(k[w>>2]|0)+1;k[x+4>>2]=A;cc(c,1,11946,x)|0;c=0;r=B;return c|0}else if((f|0)==11){cd(d);A=ha(k[A>>2]|0,k[z>>2]|0)|0;k[y>>2]=e+1;k[y+4>>2]=A;cc(c,1,12162,y)|0;c=0;r=B;return c|0}else if((f|0)==13){cd(d);c=0;r=B;return c|0}else if((f|0)==17){cd(d);c=1;r=B;return c|0}return 0}function Jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+96|0;y=F+56|0;C=F+48|0;x=F+40|0;z=F+32|0;D=F+24|0;i=F+16|0;h=F+8|0;q=F+92|0;B=F+88|0;p=F+84|0;t=F+80|0;v=F+76|0;u=F+72|0;w=F+68|0;s=F+64|0;k[q>>2]=1;d=Zc(1e3)|0;if(!d){cc(c,1,11880,F)|0;E=0;r=F;return E|0}A=a+196|0;f=k[A>>2]|0;e=k[f+40>>2]|0;a:do if(!e){e=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[f+36>>2]=e;e=_c(e,40)|0;f=k[A>>2]|0;k[f+40>>2]=e;b:do if(e){if(k[f+36>>2]|0){g=0;do{k[e+(g*40|0)+28>>2]=100;k[e+(g*40|0)+20>>2]=0;o=_c(100,24)|0;f=k[A>>2]|0;e=k[f+40>>2]|0;k[e+(g*40|0)+24>>2]=o;g=g+1|0;if(!o)break b}while(g>>>0<(k[f+36>>2]|0)>>>0)}f=k[a+60>>2]|0;if(!e)break a;else{E=12;break a}}while(0);cd(d);E=0;r=F;return E|0}else{f=k[a+60>>2]|0;E=12}while(0);if((E|0)==12)if(k[e+16>>2]|0){if(!(k[e+(f*40|0)+4>>2]|0)){o=a+64|0;o=aj(k[o>>2]|0,k[o+4>>2]|0,2,0)|0;if(!(Hb(b,o,L,c)|0)){cc(c,1,11918,h)|0;cd(d);E=0;r=F;return E|0}}else{o=k[e+(f*40|0)+16>>2]|0;o=aj(k[o>>2]|0,k[o+4>>2]|0,2,0)|0;if(!(Hb(b,o,L,c)|0)){cc(c,1,11918,i)|0;cd(d);E=0;r=F;return E|0}}e=a+8|0;if((k[e>>2]|0)==256)k[e>>2]=8}c:do if(md(a,B,p,t,v,u,w,s,q,b,c)|0){n=a+116|0;o=a+112|0;j=a+204|0;l=a+84|0;m=f+1|0;e=1e3;while(1){if(!(k[q>>2]|0))break;i=k[p>>2]|0;if(i>>>0>e>>>0){e=bd(d,i)|0;if(!e){E=26;break}else{d=e;h=i}}else h=e;g=k[B>>2]|0;if(!(nd(a,g,d,i,b,c)|0)){E=28;break}e=g+1|0;i=ha(k[o>>2]|0,k[n>>2]|0)|0;k[z>>2]=e;k[z+4>>2]=i;cc(c,4,11986,z)|0;i=k[j>>2]|0;if(!(me(k[(k[k[i+20>>2]>>2]|0)+20>>2]|0,k[i+24>>2]|0,d,k[(k[l>>2]|0)+24>>2]|0)|0)){E=30;break}k[x>>2]=e;cc(c,4,12016,x)|0;if((g|0)==(f|0)){E=32;break}k[y>>2]=e;k[y+4>>2]=m;cc(c,2,12060,y)|0;if(!(md(a,B,p,t,v,u,w,s,q,b,c)|0))break c;else e=h}if((E|0)==26){cd(d);E=ha(k[o>>2]|0,k[n>>2]|0)|0;k[D>>2]=(k[B>>2]|0)+1;k[D+4>>2]=E;cc(c,1,11946,D)|0;E=0;r=F;return E|0}else if((E|0)==28){cd(d);E=0;r=F;return E|0}else if((E|0)==30){cd(d);E=0;r=F;return E|0}else if((E|0)==32){E=(k[A>>2]|0)+8|0;E=aj(k[E>>2]|0,k[E+4>>2]|0,2,0)|0;if(!(Hb(b,E,L,c)|0)){cc(c,1,11918,C)|0;cd(d);E=0;r=F;return E|0}}cd(d);E=1;r=F;return E|0}while(0);cd(d);E=0;r=F;return E|0}function Kd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;H=r;r=r+32|0;D=H+16|0;t=H+8|0;i=H;C=H+20|0;E=k[a+40>>2]|0;G=a+36|0;m=k[G>>2]|0;n=a+204|0;h=k[n>>2]|0;k[h+16>>2]=0;B=a+8|0;k[B>>2]=0;k[C>>2]=0;zb(m,65424,2);zb(m+2|0,10,2);F=a+200|0;zb(m+4|0,k[F>>2]|0,2);z=a+12|0;zb(m+10|0,k[z>>2]|0,1);A=a+164|0;zb(m+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=12;f=m+12|0;d=E+-12|0;l=a+88|0;if(((j[l>>1]|0)+-3&65535)>=4?(e=k[F>>2]|0,g=k[A>>2]|0,(k[g+(e*5640|0)+420>>2]|0)!=0):0){k[C>>2]=0;ie(k[(k[a+80>>2]|0)+16>>2]|0,g,e,f,C);y=k[C>>2]|0;e=y+12|0;f=m+e|0;d=d-y|0}else e=12;k[C>>2]=0;zb(f,65427,2);k[h+4>>2]=k[B>>2];y=k[z>>2]|0;k[h+8>>2]=y;if(!y)k[(k[k[h+20>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(h,k[F>>2]|0,f+2|0,C,d+-4|0,0)|0)){cc(c,1,11860,i)|0;b=0;r=H;return b|0}d=(k[C>>2]|0)+2|0;k[C>>2]=d;d=d+e|0;zb(m+6|0,d,4);if(((j[l>>1]|0)+-3&65535)<4){y=a+28|0;zb(k[y>>2]|0,k[F>>2]|0,1);x=(k[y>>2]|0)+1|0;k[y>>2]=x;zb(x,d,4);k[y>>2]=(k[y>>2]|0)+4}e=m+d|0;y=E-d|0;v=k[n>>2]|0;w=a+88|0;q=k[A>>2]|0;s=k[F>>2]|0;l=le(w,0,s)|0;x=a+8|0;k[z>>2]=(k[z>>2]|0)+1;a:do if(l>>>0>1){m=v+4|0;n=v+8|0;o=v+20|0;p=a+28|0;g=e;e=y;d=0;i=1;while(1){k[x>>2]=i;k[C>>2]=0;zb(g,65424,2);zb(g+2|0,10,2);zb(g+4|0,k[F>>2]|0,2);zb(g+10|0,k[z>>2]|0,1);zb(g+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=0;zb(g+12|0,65427,2);k[m>>2]=k[B>>2];h=k[z>>2]|0;k[n>>2]=h;if(!h)k[(k[k[o>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(v,k[F>>2]|0,g+14|0,C,e+-16|0,0)|0))break;I=k[C>>2]|0;J=I+2|0;k[C>>2]=J;h=I+14|0;f=g+h|0;d=d+12+J|0;e=e+-12+(-2-I)|0;zb(g+6|0,h,4);if(((j[w>>1]|0)+-3&65535)<4){zb(k[p>>2]|0,k[F>>2]|0,1);J=(k[p>>2]|0)+1|0;k[p>>2]=J;zb(J,h,4);k[p>>2]=(k[p>>2]|0)+4}k[z>>2]=(k[z>>2]|0)+1;i=i+1|0;if(i>>>0>=l>>>0){u=12;break a}else g=f}cc(c,1,11860,t)|0}else{f=e;e=y;d=0;u=12}while(0);b:do if((u|0)==12){o=q+(s*5640|0)+420|0;c:do if(k[o>>2]|0){p=v+16|0;q=v+4|0;s=v+8|0;t=v+20|0;n=a+28|0;m=1;d:while(1){k[p>>2]=m;l=le(w,m,k[F>>2]|0)|0;if(l){i=0;while(1){k[x>>2]=i;k[C>>2]=0;zb(f,65424,2);zb(f+2|0,10,2);zb(f+4|0,k[F>>2]|0,2);zb(f+10|0,k[z>>2]|0,1);zb(f+11|0,k[(k[A>>2]|0)+((k[F>>2]|0)*5640|0)+5588>>2]|0,1);k[C>>2]=0;zb(f+12|0,65427,2);k[q>>2]=k[B>>2];J=k[z>>2]|0;k[s>>2]=J;if(!J)k[(k[k[t>>2]>>2]|0)+840>>2]=0;k[C>>2]=0;if(!(lg(v,k[F>>2]|0,f+14|0,C,e+-16|0,0)|0))break d;J=k[C>>2]|0;g=J+2|0;k[C>>2]=g;d=d+12+g|0;g=J+14|0;h=f+g|0;e=e+-12+(-2-J)|0;zb(f+6|0,g,4);if(((j[w>>1]|0)+-3&65535)<4){zb(k[n>>2]|0,k[F>>2]|0,1);J=(k[n>>2]|0)+1|0;k[n>>2]=J;zb(J,g,4);k[n>>2]=(k[n>>2]|0)+4}k[z>>2]=(k[z>>2]|0)+1;i=i+1|0;if(i>>>0>=l>>>0){f=h;break}else f=h}}m=m+1|0;if(m>>>0>(k[o>>2]|0)>>>0)break c}cc(c,1,11860,D)|0;break b}while(0);J=d-y+E|0;if((Xb(b,k[G>>2]|0,J,c)|0)!=(J|0)){J=0;r=H;return J|0}k[F>>2]=(k[F>>2]|0)+1;J=1;r=H;return J|0}while(0);J=0;r=H;return J|0}function Ld(a,b,c){a=a|0;b=b|0;c=c|0;a=a+44|0;zb(k[a>>2]|0,65497,2);if((Xb(b,k[a>>2]|0,2,c)|0)!=2){b=0;return b|0}b=(Yb(b,c)|0)!=0&1;return b|0}function Md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=(k[a+32>>2]|0)*5|0;h=a+16|0;h=aj(k[h>>2]|0,k[h+4>>2]|0,6,0)|0;g=L;d=Zb(b)|0;e=L;if(!(ac(b,h,g,c)|0)){h=0;return h|0}if((Xb(b,k[a+24>>2]|0,f,c)|0)!=(f|0)){h=0;return h|0}h=(ac(b,d,e,c)|0)!=0&1;return h|0}function Nd(a,b,c){a=a|0;b=b|0;c=c|0;a=k[a+196>>2]|0;if(!a)return 1;b=Zb(b)|0;c=a;c=Yi(b|0,L|0,k[c>>2]|0,k[c+4>>2]|0)|0;b=a+16|0;k[b>>2]=c;k[b+4>>2]=L;return 1}function Od(a,b,c){a=a|0;b=b|0;c=c|0;c=a+204|0;gg(k[c>>2]|0);k[c>>2]=0;c=a+24|0;b=k[c>>2]|0;if(b){cd(b);k[c>>2]=0;k[a+28>>2]=0}c=a+36|0;b=k[c>>2]|0;if(!b){a=a+40|0;k[a>>2]=0;return 1}cd(b);k[c>>2]=0;a=a+40|0;k[a>>2]=0;return 1}function Pd(a,b,c){a=a|0;b=b|0;c=c|0;c=a+44|0;b=k[c>>2]|0;if(b){cd(b);k[c>>2]=0}k[a+48>>2]=0;return 1}function Qd(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+32|0;d=(k[a+8>>2]|0)==0&(k[a+188>>2]|0)!=0&(k[a+192>>2]|0)!=0&1;b=(k[(k[(k[a+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(b>>>0>31){cc(c,1,11790,e)|0;c=0;r=e;return c|0}b=1<<b;if((k[a+100>>2]|0)>>>0<b>>>0){cc(c,1,11790,e+8|0)|0;c=0;r=e;return c|0}if((k[a+104>>2]|0)>>>0>=b>>>0){c=d;r=e;return c|0}cc(c,1,11790,e+16|0)|0;c=0;r=e;return c|0}function Sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;if((j[a+88>>1]&-32256)<<16>>16!=-32256){h=1;return h|0}g=ha(k[a+112>>2]|0,k[a+116>>2]|0)|0;if(!g){h=1;return h|0}f=a+80|0;h=0;c=1;e=k[a+164>>2]|0;while(1){if((k[e+16>>2]|0)==2){c=(k[e+5608>>2]|0)!=0&c;a=k[(k[f>>2]|0)+16>>2]|0;if(a){d=0;b=k[e+5584>>2]|0;while(1){c=(k[b+20>>2]&1^1)&c;d=d+1|0;if(d>>>0>=a>>>0)break;else b=b+1080|0}}}h=h+1|0;if((h|0)==(g|0))break;else e=e+5640|0}return c|0}function Td(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+88|0;g=a+32|0;h=k[a+80>>2]|0;i=ha(k[a+116>>2]|0,k[a+112>>2]|0)|0;k[g>>2]=0;if(!i)return 1;d=k[a+164>>2]|0;e=0;while(1){Xf(h,f,e);b=d+420|0;c=0;a=0;do{j=le(f,a,e)|0;k[g>>2]=(k[g>>2]|0)+j;c=j+c|0;a=a+1|0}while(a>>>0<=(k[b>>2]|0)>>>0);k[d+5588>>2]=c;e=e+1|0;if((e|0)==(i|0))break;else d=d+5640|0}return 1}function Ud(a,b,c){a=a|0;b=b|0;c=c|0;a=k[a+44>>2]|0;zb(a,65359,2);return (Xb(b,a,2,c)|0)==2|0}function Vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0;o=r;r=r+16|0;g=o;h=k[a+80>>2]|0;l=h+16|0;i=(k[l>>2]|0)*3|0;n=i+40|0;d=k[h+24>>2]|0;f=a+48|0;j=a+44|0;e=k[j>>2]|0;do if(n>>>0>(k[f>>2]|0)>>>0){e=bd(e,n)|0;if(e){k[j>>2]=e;k[f>>2]=n;break}cd(k[j>>2]|0);k[j>>2]=0;k[f>>2]=0;cc(c,1,11752,g)|0;b=0;r=o;return b|0}while(0);zb(e,65361,2);zb(e+2|0,i+38|0,2);zb(e+4|0,m[a+88>>1]|0,2);zb(e+6|0,k[h+8>>2]|0,4);zb(e+10|0,k[h+12>>2]|0,4);zb(e+14|0,k[h>>2]|0,4);zb(e+18|0,k[h+4>>2]|0,4);zb(e+22|0,k[a+100>>2]|0,4);zb(e+26|0,k[a+104>>2]|0,4);zb(e+30|0,k[a+92>>2]|0,4);zb(e+34|0,k[a+96>>2]|0,4);zb(e+38|0,k[l>>2]|0,2);if(k[l>>2]|0){f=0;e=e+40|0;while(1){zb(e,(k[d+24>>2]|0)+-1+(k[d+32>>2]<<7)|0,1);zb(e+1|0,k[d>>2]|0,1);zb(e+2|0,k[d+4>>2]|0,1);f=f+1|0;if(f>>>0>=(k[l>>2]|0)>>>0)break;else{e=e+3|0;d=d+52|0}}}b=(Xb(b,k[j>>2]|0,n,c)|0)==(n|0)&1;r=o;return b|0}function Wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+32|0;p=q+16|0;o=q+8|0;h=q;n=q+20|0;i=a+200|0;j=k[i>>2]|0;l=a+164|0;m=k[l>>2]|0;d=k[m+(j*5640|0)+5584>>2]|0;if(!(k[d>>2]&1))f=5;else f=(k[d+4>>2]|0)+5|0;g=f+9|0;k[n>>2]=g;e=a+48|0;a=a+44|0;d=k[a>>2]|0;do if(g>>>0>(k[e>>2]|0)>>>0){d=bd(d,g)|0;if(d){k[a>>2]=d;k[e>>2]=g;break}cd(k[a>>2]|0);k[a>>2]=0;k[e>>2]=0;cc(c,1,11687,h)|0;p=0;r=q;return p|0}while(0);zb(d,65362,2);zb(d+2|0,f+7|0,2);zb(d+4|0,k[m+(j*5640|0)>>2]|0,1);zb(d+5|0,k[m+(j*5640|0)+4>>2]|0,1);zb(d+6|0,k[m+(j*5640|0)+8>>2]|0,2);zb(d+8|0,k[m+(j*5640|0)+16>>2]|0,1);k[n>>2]=f;if(!(ke(k[l>>2]|0,k[i>>2]|0,d+9|0,n,c)|0)){cc(c,1,11726,o)|0;p=0;r=q;return p|0}if(!(k[n>>2]|0)){p=(Xb(b,k[a>>2]|0,g,c)|0)==(g|0)&1;r=q;return p|0}else{cc(c,1,11726,p)|0;p=0;r=q;return p|0}return 0}function Xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+32|0;n=o+16|0;m=o+8|0;h=o;j=o+20|0;i=a+200|0;l=a+164|0;d=k[(k[l>>2]|0)+((k[i>>2]|0)*5640|0)+5584>>2]|0;e=k[d+24>>2]|0;if((e|0)==1)d=1;else d=((k[d+4>>2]|0)*3|0)+-2|0;f=(e|0)==0?d+1|0:d<<1|1;g=f+4|0;k[j>>2]=g;e=a+48|0;a=a+44|0;d=k[a>>2]|0;do if(g>>>0>(k[e>>2]|0)>>>0){d=bd(d,g)|0;if(d){k[a>>2]=d;k[e>>2]=g;break}cd(k[a>>2]|0);k[a>>2]=0;k[e>>2]=0;cc(c,1,11622,h)|0;n=0;r=o;return n|0}while(0);zb(d,65372,2);zb(d+2|0,f+2|0,2);k[j>>2]=f;if(!(je(k[l>>2]|0,k[i>>2]|0,0,d+4|0,j,c)|0)){cc(c,1,11661,m)|0;n=0;r=o;return n|0}if(!(k[j>>2]|0)){n=(Xb(b,k[a>>2]|0,g,c)|0)==(g|0)&1;r=o;return n|0}else{cc(c,1,11661,n)|0;n=0;r=o;return n|0}return 0}function Yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+16|0;u=w;q=w+4|0;n=a+80|0;d=k[(k[n>>2]|0)+16>>2]|0;if(d>>>0<=1){v=1;r=w;return v|0}s=a+164|0;t=a+200|0;p=a+48|0;m=a+44|0;l=1;while(1){g=k[s>>2]|0;i=k[t>>2]|0;f=k[g+(i*5640|0)+5584>>2]|0;h=k[f+(l*1080|0)>>2]|0;a:do if((((((k[f>>2]|0)==(h|0)?(o=k[f+4>>2]|0,(o|0)==(k[f+(l*1080|0)+4>>2]|0)):0)?(k[f+8>>2]|0)==(k[f+(l*1080|0)+8>>2]|0):0)?(k[f+12>>2]|0)==(k[f+(l*1080|0)+12>>2]|0):0)?(k[f+16>>2]|0)==(k[f+(l*1080|0)+16>>2]|0):0)?(k[f+20>>2]|0)==(k[f+(l*1080|0)+20>>2]|0):0){if(o){a=0;do{if((k[f+812+(a<<2)>>2]|0)!=(k[f+(l*1080|0)+812+(a<<2)>>2]|0)){v=13;break a}if((k[f+944+(a<<2)>>2]|0)!=(k[f+(l*1080|0)+944+(a<<2)>>2]|0)){v=13;break a}a=a+1|0}while(a>>>0<o>>>0)}}else v=13;while(0);if((v|0)==13){v=0;if(!(h&1))a=5;else a=(k[f+(l*1080|0)+4>>2]|0)+5|0;j=a+(d>>>0<257?6:7)|0;e=k[m>>2]|0;if(j>>>0>(k[p>>2]|0)>>>0){a=bd(e,j)|0;if(!a){v=17;break}k[m>>2]=a;k[p>>2]=j;i=k[t>>2]|0;g=k[s>>2]|0;f=k[g+(i*5640|0)+5584>>2]|0;d=k[(k[n>>2]|0)+16>>2]|0;h=k[f+(l*1080|0)>>2]|0;e=a}d=d>>>0<257?1:2;if(!(h&1))a=5;else a=(k[f+(l*1080|0)+4>>2]|0)+5|0;zb(e,65363,2);zb(e+2|0,d+3+a|0,2);zb(e+4|0,l,d);h=d|4;zb(e+h|0,k[(k[g+(i*5640|0)+5584>>2]|0)+(l*1080|0)>>2]|0,1);k[q>>2]=a;ke(k[s>>2]|0,k[t>>2]|0,e+(h+1)|0,q,c)|0;if((Xb(b,k[m>>2]|0,j,c)|0)!=(j|0)){a=0;v=24;break}d=k[(k[n>>2]|0)+16>>2]|0}l=l+1|0;if(l>>>0>=d>>>0){a=1;v=24;break}}if((v|0)==17){cd(k[m>>2]|0);k[m>>2]=0;k[p>>2]=0;cc(c,1,11548,u)|0;v=0;r=w;return v|0}else if((v|0)==24){r=w;return a|0}return 0}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+16|0;q=t;n=t+4|0;l=a+80|0;d=k[(k[l>>2]|0)+16>>2]|0;if(d>>>0<=1){s=1;r=t;return s|0}o=a+164|0;p=a+200|0;m=a+48|0;j=a+44|0;i=1;while(1){h=k[(k[o>>2]|0)+((k[p>>2]|0)*5640|0)+5584>>2]|0;f=k[h+24>>2]|0;g=k[h+(i*1080|0)+24>>2]|0;a:do if((f|0)==(g|0)?(k[h+804>>2]|0)==(k[h+(i*1080|0)+804>>2]|0):0){if((f|0)!=1){e=(k[h+4>>2]|0)*3|0;a=e+-2|0;if((e|0)!=((k[h+(i*1080|0)+4>>2]|0)*3|0)){s=14;break}if(!a)break}else a=1;e=0;do{if((k[h+28+(e<<3)>>2]|0)!=(k[h+(i*1080|0)+28+(e<<3)>>2]|0)){s=14;break a}e=e+1|0}while(e>>>0<a>>>0);if(f){e=0;do{if((k[h+28+(e<<3)+4>>2]|0)!=(k[h+(i*1080|0)+28+(e<<3)+4>>2]|0)){s=14;break a}e=e+1|0}while(e>>>0<a>>>0)}}else s=14;while(0);if((s|0)==14){s=0;if((g|0)==1)a=1;else a=((k[h+(i*1080|0)+4>>2]|0)*3|0)+-2|0;f=((g|0)==0?a+1|0:a<<1|1)+5+(d>>>0>256&1)|0;a=k[j>>2]|0;if(f>>>0>(k[m>>2]|0)>>>0){a=bd(a,f)|0;if(!a){s=18;break}k[j>>2]=a;k[m>>2]=f;d=k[(k[o>>2]|0)+((k[p>>2]|0)*5640|0)+5584>>2]|0;e=k[d+(i*1080|0)+24>>2]|0}else{e=g;d=h}if((e|0)==1)d=1;else d=((k[d+(i*1080|0)+4>>2]|0)*3|0)+-2|0;e=(e|0)==0?d+1|0:d<<1|1;k[n>>2]=e+6;zb(a,65373,2);d=a+2|0;if((k[(k[l>>2]|0)+16>>2]|0)>>>0<257){zb(d,e+3|0,2);zb(a+4|0,i,1);a=a+5|0}else{zb(d,e+4|0,2);zb(a+4|0,i,2);a=a+6|0}k[n>>2]=e;je(k[o>>2]|0,k[p>>2]|0,i,a,n,c)|0;if((Xb(b,k[j>>2]|0,f,c)|0)!=(f|0)){a=0;s=28;break}d=k[(k[l>>2]|0)+16>>2]|0}i=i+1|0;if(i>>>0>=d>>>0){a=1;s=28;break}}if((s|0)==18){cd(k[j>>2]|0);k[j>>2]=0;k[m>>2]=0;cc(c,1,11476,q)|0;s=0;r=t;return s|0}else if((s|0)==28){r=t;return a|0}return 0}function _d(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;f=j;g=(k[a+32>>2]|0)*5|0;h=g+6|0;e=a+48|0;i=a+44|0;d=k[i>>2]|0;do if(h>>>0>(k[e>>2]|0)>>>0){d=bd(d,h)|0;if(d){k[i>>2]=d;k[e>>2]=h;break}cd(k[i>>2]|0);k[i>>2]=0;k[e>>2]=0;cc(c,1,11437,f)|0;b=0;r=j;return b|0}while(0);f=Zb(b)|0;a=a+16|0;k[a>>2]=f;k[a+4>>2]=L;zb(d,65365,2);zb(d+2|0,g+4|0,2);zb(d+4|0,0,1);zb(d+5|0,80,1);b=(Xb(b,k[i>>2]|0,h,c)|0)==(h|0)&1;r=j;return b|0}function $d(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+16|0;h=p;o=p+4|0;k[o>>2]=0;l=a+200|0;d=k[l>>2]|0;j=a+164|0;e=k[j>>2]|0;i=a+80|0;g=k[(k[i>>2]|0)+16>>2]|0;n=(ha(g>>>0<257?7:9,(k[e+(d*5640|0)+420>>2]|0)+1|0)|0)+4|0;f=a+48|0;m=a+44|0;a=k[m>>2]|0;do if(n>>>0>(k[f>>2]|0)>>>0){d=bd(a,n)|0;if(d){k[m>>2]=d;k[f>>2]=n;f=d;a=k[(k[i>>2]|0)+16>>2]|0;e=k[j>>2]|0;d=k[l>>2]|0;break}cd(k[m>>2]|0);k[m>>2]=0;k[f>>2]=0;cc(c,1,11398,h)|0;b=0;r=p;return b|0}else{f=a;a=g}while(0);ie(a,e,d,f,o);b=(Xb(b,k[m>>2]|0,n,c)|0)==(n|0)&1;r=p;return b|0}function ae(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;h=a+164|0;i=a+80|0;e=k[i>>2]|0;d=k[e+16>>2]|0;if(!d){b=1;return b|0}g=a+44|0;a=0;f=k[(k[h>>2]|0)+5584>>2]|0;while(1){if(k[f+808>>2]|0){j=k[(k[h>>2]|0)+5584>>2]|0;m=d>>>0<257?1:2;e=m+6|0;l=k[g>>2]|0;zb(l,65374,2);d=m|4;zb(l+2|0,d,2);zb(l+4|0,a,m);zb(l+d|0,0,1);zb(l+(d+1)|0,k[j+(a*1080|0)+808>>2]|0,1);if((Xb(b,k[g>>2]|0,e,c)|0)!=(e|0)){a=0;d=7;break}e=k[i>>2]|0}a=a+1|0;d=k[e+16>>2]|0;if(a>>>0>=d>>>0){a=1;d=7;break}else f=f+1080|0}if((d|0)==7)return a|0;return 0}function be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=r;r=r+16|0;f=j;g=k[a+108>>2]|0;h=Gi(g)|0;i=h+6|0;d=a+48|0;e=a+44|0;a=k[e>>2]|0;do if(i>>>0>(k[d>>2]|0)>>>0){a=bd(a,i)|0;if(a){k[e>>2]=a;k[d>>2]=i;break}cd(k[e>>2]|0);k[e>>2]=0;k[d>>2]=0;cc(c,1,11355,f)|0;b=0;r=j;return b|0}while(0);zb(a,65380,2);zb(a+2|0,h+4|0,2);zb(a+4|0,1,2);cj(a+6|0,g|0,h|0)|0;b=(Xb(b,k[e>>2]|0,i,c)|0)==(i|0)&1;r=j;return b|0}function ce(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+32|0;w=A+24|0;t=A+16|0;n=A+8|0;e=A;g=k[a+80>>2]|0;h=g+16|0;f=k[h>>2]|0;j=f+6|0;v=a+48|0;z=a+44|0;d=k[z>>2]|0;do if(j>>>0>(k[v>>2]|0)>>>0){d=bd(d,j)|0;if(d){k[z>>2]=d;k[v>>2]=j;break}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11199,e)|0;b=0;r=A;return b|0}while(0);zb(d,65400,2);zb(d+2|0,f+4|0,2);zb(d+4|0,k[h>>2]|0,2);if(k[h>>2]|0){f=0;e=k[g+24>>2]|0;d=d+6|0;while(1){zb(d,(k[e+24>>2]|0)+-1|k[e+32>>2]<<7,1);f=f+1|0;if(f>>>0>=(k[h>>2]|0)>>>0)break;else{e=e+52|0;d=d+1|0}}}if((Xb(b,k[z>>2]|0,j,c)|0)!=(j|0)){b=0;r=A;return b|0}p=a+200|0;m=k[p>>2]|0;q=a+164|0;l=k[q>>2]|0;e=l+(m*5640|0)+5616|0;a:do if(k[e>>2]|0){j=0;a=k[l+(m*5640|0)+5612>>2]|0;while(1){f=a+16|0;g=k[f>>2]|0;h=g+10|0;d=k[z>>2]|0;if(h>>>0>(k[v>>2]|0)>>>0){d=bd(d,h)|0;if(!d)break;k[z>>2]=d;k[v>>2]=h}zb(d,65396,2);zb(d+2|0,g+8|0,2);zb(d+4|0,0,2);zb(d+6|0,k[a+4>>2]<<8|k[a+8>>2]&255|k[a>>2]<<10,2);zb(d+8|0,0,2);cj(d+10|0,k[a+12>>2]|0,k[f>>2]|0)|0;if((Xb(b,k[z>>2]|0,h,c)|0)!=(h|0)){s=0;x=42;break}j=j+1|0;if(j>>>0>=(k[e>>2]|0)>>>0)break a;else a=a+20|0}if((x|0)==42){r=A;return s|0}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11238,n)|0;b=0;r=A;return b|0}while(0);n=l+(m*5640|0)+5628|0;b:do if(k[n>>2]|0){o=0;l=k[l+(m*5640|0)+5624>>2]|0;while(1){j=l+4|0;e=k[j>>2]|0;g=e>>>0>255;h=g?2:1;g=g?32768:0;e=ha(h,e<<1)|0;a=e+19|0;d=k[z>>2]|0;if(a>>>0>(k[v>>2]|0)>>>0){d=bd(d,a)|0;if(!d)break;k[z>>2]=d;k[v>>2]=a}zb(d,65397,2);zb(d+2|0,e+17|0,2);zb(d+4|0,0,2);zb(d+6|0,k[l>>2]|0,1);zb(d+7|0,0,2);zb(d+9|0,1,2);zb(d+11|0,1,1);zb(d+12|0,k[j>>2]|g,2);d=d+14|0;if(!(k[j>>2]|0))e=0;else{f=0;do{zb(d,f,h);d=d+h|0;f=f+1|0;e=k[j>>2]|0}while(f>>>0<e>>>0)}zb(d,e|g,2);d=d+2|0;if(!(k[j>>2]|0))f=d;else{e=0;do{zb(d,e,h);d=d+h|0;e=e+1|0}while(e>>>0<(k[j>>2]|0)>>>0);f=d}d=((i[l+16>>0]^1)&255)<<16&65536;e=k[l+8>>2]|0;if(e)d=k[e+8>>2]|d;e=k[l+12>>2]|0;if(e)d=k[e+8>>2]<<8|d;zb(f,d,3);if((Xb(b,k[z>>2]|0,a,c)|0)!=(a|0)){s=0;x=42;break}o=o+1|0;if(o>>>0>=(k[n>>2]|0)>>>0)break b;else l=l+20|0}if((x|0)==42){r=A;return s|0}cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11277,t)|0;b=0;r=A;return b|0}while(0);h=k[p>>2]|0;g=k[q>>2]|0;j=g+(h*5640|0)+5628|0;e=k[j>>2]|0;a=e+5|0;d=k[z>>2]|0;do if(a>>>0>(k[v>>2]|0)>>>0){d=bd(d,a)|0;if(!d){cd(k[z>>2]|0);k[z>>2]=0;k[v>>2]=0;cc(c,1,11316,w)|0;u=1;break}else{k[z>>2]=d;k[v>>2]=a;y=d;x=37;break}}else{y=d;x=37}while(0);if((x|0)==37){zb(y,65399,2);zb(y+2|0,e+3|0,2);zb(y+4|0,k[j>>2]|0,1);if(k[j>>2]|0){f=0;e=y+5|0;d=k[g+(h*5640|0)+5624>>2]|0;while(1){zb(e,k[d>>2]|0,1);f=f+1|0;if(f>>>0>=(k[j>>2]|0)>>>0)break;else{e=e+1|0;d=d+20|0}}}u=(Xb(b,k[z>>2]|0,a,c)|0)!=(a|0)}b=u&1^1;r=A;return b|0}function de(a,b,c){a=a|0;b=b|0;c=c|0;c=Zb(b)|0;b=(k[a+196>>2]|0)+8|0;k[b>>2]=c;k[b+4>>2]=L;return 1}function ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+16|0;b=bg(0)|0;d=a+204|0;k[d>>2]=b;if(!b){cc(c,1,11159,e)|0;c=0;r=e;return c|0}if(fg(b,k[a+80>>2]|0,a+88|0)|0){c=1;r=e;return c|0}gg(k[d>>2]|0);k[d>>2]=0;c=0;r=e;return c|0}function fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,m=0.0,n=0,p=0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0;O=a+80|0;D=k[O>>2]|0;P=a+164|0;e=k[P>>2]|0;N=D+24|0;E=k[N>>2]|0;c=k[E>>2]|0;d=k[E+4>>2]|0;M=D+16|0;E=ha(k[E+24>>2]|0,k[M>>2]|0)|0;C=Zb(b)|0;q=a+116|0;h=k[q>>2]|0;r=a+112|0;b=k[r>>2]|0;F=(+(C>>>0)+4294967296.0*+(L|0))/+((ha(b,h)|0)>>>0);C=(i[a+181>>0]&8)==0?1:2;if(h){s=a+92|0;u=a+100|0;v=a+96|0;y=a+104|0;z=D+4|0;A=D+8|0;B=D+12|0;x=+((ha(c<<3,d)|0)>>>0);l=b;c=b;p=0;b=e;do{n=p;p=p+1|0;if(!c)c=0;else{l=0;do{w=+ab[C&3](b);h=k[b+8>>2]|0;w=w/+(h>>>0);Q=k[s>>2]|0;e=k[u>>2]|0;g=(ha(e,l)|0)+Q|0;c=k[D>>2]|0;c=(g|0)>(c|0)?g:c;g=k[v>>2]|0;f=k[y>>2]|0;R=(ha(f,n)|0)+g|0;d=k[z>>2]|0;d=(R|0)>(d|0)?R:d;l=l+1|0;Q=(ha(e,l)|0)+Q|0;e=k[A>>2]|0;e=(Q|0)<(e|0)?Q:e;g=(ha(f,p)|0)+g|0;f=k[B>>2]|0;f=(g|0)<(f|0)?g:f;g=b+20|0;m=+o[g>>2];if(m!=0.0){t=+((ha(ha(e-c|0,E)|0,f-d|0)|0)>>>0)/(x*m)-w;o[g>>2]=t}if(h>>>0>1){m=+((ha(ha(e-c|0,E)|0,f-d|0)|0)>>>0);c=1;d=b+24|0;while(1){t=+o[d>>2];if(t!=0.0)o[d>>2]=m/(x*t)-w;c=c+1|0;if(c>>>0>=h>>>0)break;else d=d+4|0}}b=b+5640|0;c=k[r>>2]|0}while(l>>>0<c>>>0);h=k[q>>2]|0;l=c}}while(p>>>0<h>>>0);if(!h)h=0;else{s=(l|0)==0;t=F+2.0;v=l>>>0>1?l:1;u=0;c=k[P>>2]|0;do{if(!s){p=c+16|0;q=0;r=c;while(1){b=r+20|0;m=+o[b>>2];if(m!=0.0?(x=m-F,o[b>>2]=x,x<30.0):0)o[b>>2]=30.0;f=r+24|0;b=k[r+8>>2]|0;n=b+-1|0;m=+o[f>>2];d=m!=0.0;if(n>>>0>1){g=p+(b<<2)|0;e=1;b=f;do{if(d?(x=m-F,o[b>>2]=x,H=+o[b+-4>>2],x<H+10.0):0)o[b>>2]=H+20.0;b=b+4|0;e=e+1|0;m=+o[b>>2];d=m!=0.0}while((e|0)!=(n|0));if(d){G=m;J=g;K=29}}else if(d){G=m;J=f;K=29}if((K|0)==29?(K=0,x=G-t,o[J>>2]=x,I=+o[J+-4>>2],x<I+10.0):0)o[J>>2]=I+20.0;q=q+1|0;if(q>>>0>=l>>>0)break;else{p=p+5640|0;r=r+5640|0}}c=c+(v*5640|0)|0}u=u+1|0}while(u>>>0<h>>>0)}}else{l=b;h=0}d=k[M>>2]|0;if(!d)u=0;else{e=(k[a+100>>2]|0)+-1|0;f=(k[a+104>>2]|0)+-1|0;g=0;b=k[N>>2]|0;c=0;while(1){R=k[b>>2]|0;Q=k[b+4>>2]|0;R=ha(((f+Q|0)>>>0)/(Q>>>0)|0,((e+R|0)>>>0)/(R>>>0)|0)|0;c=(ha(R,k[b+24>>2]|0)|0)+c|0;g=g+1|0;if(g>>>0>=d>>>0)break;else b=b+52|0}u=~~(+(c>>>0)*.1625)>>>0}n=k[(k[O>>2]|0)+16>>2]|0;q=n+-1|0;s=ha(h,l)|0;p=(s|0)==0;if(p)e=0;else{b=0;c=0;d=k[P>>2]|0;while(1){R=k[d+5588>>2]|0;c=c>>>0>R>>>0?c:R;b=b+1|0;if((b|0)==(s|0))break;else d=d+5640|0}e=c*12|0}r=a+88|0;if(((j[r>>1]|0)+-3&65535)>=4){if(p){b=0;c=0}else{l=(n|0)==0;g=0;c=0;do{if(!l){d=k[(k[P>>2]|0)+(g*5640|0)+5584>>2]|0;f=0;do{if(!(k[d+(f*1080|0)>>2]&1))b=5;else b=(k[d+(f*1080|0)+4>>2]|0)+5|0;c=c>>>0>b>>>0?c:b;f=f+1|0}while((f|0)!=(n|0))}g=g+1|0}while((g|0)!=(s|0));h=0;b=0;do{if(!l){f=k[(k[P>>2]|0)+(h*5640|0)+5584>>2]|0;g=0;do{if(!(k[f+(g*1080|0)>>2]&1))d=5;else d=(k[f+(g*1080|0)+4>>2]|0)+5|0;b=b>>>0>d>>>0?b:d;g=g+1|0}while((g|0)!=(n|0))}h=h+1|0}while((h|0)!=(s|0))}e=(ha(c+12+b|0,q)|0)+e|0}if(p)c=13;else{d=0;c=0;b=k[P>>2]|0;while(1){R=k[b+420>>2]|0;c=c>>>0>R>>>0?c:R;d=d+1|0;if((d|0)==(s|0))break;else b=b+5640|0}c=(c*9|0)+13|0}R=e+u+c|0;k[a+40>>2]=R;R=Zc(R)|0;k[a+36>>2]=R;if(!R){R=0;return R|0}if(((j[r>>1]|0)+-3&65535)>=4){R=1;return R|0}c=Zc((k[a+32>>2]|0)*5|0)|0;k[a+24>>2]=c;if(!c){R=0;return R|0}k[a+28>>2]=c;R=1;return R|0}function ge(a){a=a|0;return 0.0}function he(a){a=a|0;return +(+((((k[a+5588>>2]|0)*14|0)+-14|0)>>>0))}function ie(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=k[b+(c*5640|0)+5584>>2]|0;q=(k[b+(c*5640|0)+420>>2]|0)+1|0;i=a>>>0<257?1:2;p=ha(q,(i<<1)+5|0)|0;r=p+4|0;zb(d,65375,2);zb(d+2|0,p+2|0,2);if(!q){k[e>>2]=r;return}j=i+1|0;l=i+3|0;m=i|4;n=m+i|0;o=n+1|0;p=b+(c*5640|0)+8|0;g=f+4|0;h=0;d=d+4|0;f=b+(c*5640|0)+424|0;while(1){zb(d,k[f>>2]|0,1);zb(d+1|0,k[f+4>>2]|0,i);t=f+8|0;zb(d+j|0,k[t>>2]|0,2);b=f+12|0;zb(d+l|0,k[b>>2]|0,1);c=f+16|0;zb(d+m|0,k[c>>2]|0,i);zb(d+n|0,k[f+36>>2]|0,1);u=k[t>>2]|0;s=k[p>>2]|0;k[t>>2]=(u|0)<(s|0)?u:s;t=k[b>>2]|0;s=k[g>>2]|0;k[b>>2]=(t|0)<(s|0)?t:s;b=k[c>>2]|0;k[c>>2]=(b|0)<(a|0)?b:a;h=h+1|0;if((h|0)==(q|0))break;else{d=d+o|0;f=f+148|0}}k[e>>2]=r;return}function je(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+16|0;i=m+8|0;h=m;j=k[a+(b*5640|0)+5584>>2]|0;b=k[j+(c*1080|0)+24>>2]|0;do if((b|0)!=1){a=(k[j+(c*1080|0)+4>>2]|0)*3|0;g=a+-2|0;if(!b){a=a+-1|0;if((k[e>>2]|0)>>>0<a>>>0){cc(f,1,11515,h)|0;e=0;r=m;return e|0}else{zb(d,k[j+(c*1080|0)+804>>2]<<5,1);if(!g)break;else b=0;do{d=d+1|0;zb(d,k[j+(c*1080|0)+28+(b<<3)>>2]<<3,1);b=b+1|0}while((b|0)!=(g|0))}}else l=7}else{g=1;b=1;l=7}while(0);if((l|0)==7){a=g<<1|1;if((k[e>>2]|0)>>>0<a>>>0){cc(f,1,11515,i)|0;e=0;r=m;return e|0}zb(d,(k[j+(c*1080|0)+804>>2]<<5)+b|0,1);if(g){d=d+1|0;b=0;while(1){zb(d,(k[j+(c*1080|0)+28+(b<<3)>>2]<<11)+(k[j+(c*1080|0)+28+(b<<3)+4>>2]|0)|0,2);b=b+1|0;if((b|0)==(g|0))break;else d=d+2|0}}}k[e>>2]=(k[e>>2]|0)-a;e=1;r=m;return e|0}function ke(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;h=r;r=r+16|0;f=k[a+(b*5640|0)+5584>>2]|0;if((k[d>>2]|0)>>>0<5){cc(e,1,11587,h)|0;d=0;r=h;return d|0}g=f+4|0;zb(c,(k[g>>2]|0)+-1|0,1);zb(c+1|0,(k[f+8>>2]|0)+-2|0,1);zb(c+2|0,(k[f+12>>2]|0)+-2|0,1);zb(c+3|0,k[f+16>>2]|0,1);zb(c+4|0,k[f+20>>2]|0,1);b=(k[d>>2]|0)+-5|0;k[d>>2]=b;if(!(k[f>>2]&1)){d=1;r=h;return d|0}a=k[g>>2]|0;if(b>>>0<a>>>0){cc(e,1,11587,h+8|0)|0;d=0;r=h;return d|0}if(!a)a=0;else{b=c+5|0;c=0;while(1){zb(b,(k[f+944+(c<<2)>>2]<<4)+(k[f+812+(c<<2)>>2]|0)|0,1);c=c+1|0;a=k[g>>2]|0;if(c>>>0>=a>>>0)break;else b=b+1|0}b=k[d>>2]|0}k[d>>2]=b-a;d=1;r=h;return d|0}function le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;f=k[a+76>>2]|0;d=k[f+(c*5640|0)+4>>2]|0;e=696;while(1){m=k[e>>2]|0;if((m|0)==-1|(m|0)==(d|0))break;else e=e+12|0}if(!(i[a+93>>0]&8)){a=1;return a|0}m=l[a+92>>0]|0;g=f+(c*5640|0)+424+(b*148|0)+92|0;h=f+(c*5640|0)+424+(b*148|0)+88|0;j=f+(c*5640|0)+424+(b*148|0)+96|0;b=f+(c*5640|0)+424+(b*148|0)+84|0;f=i[e+4>>0]|0;switch(f|0){case 67:{d=k[g>>2]|0;break}case 82:{d=k[h>>2]|0;break}case 80:{d=k[j>>2]|0;break}case 76:{d=k[b>>2]|0;break}default:d=1}if((m|0)!=(f|0)){f=i[e+5>>0]|0;switch(f|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)!=(f|0)){f=i[e+6>>0]|0;switch(f|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)!=(f|0)){e=i[e+7>>0]|0;switch(e|0){case 67:{d=ha(k[g>>2]|0,d)|0;break}case 82:{d=ha(k[h>>2]|0,d)|0;break}case 80:{d=ha(k[j>>2]|0,d)|0;break}case 76:{d=ha(k[b>>2]|0,d)|0;break}default:{}}if((m|0)==(e|0))e=3;else{a=d;return a|0}}else e=2}else e=1}else e=0;k[a+84>>2]=e;a=d;return a|0}function me(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=b+16|0;if(!(k[B>>2]|0)){B=1;return B|0}A=0;z=k[b+24>>2]|0;while(1){f=d+44|0;e=k[f>>2]|0;g=d+8|0;if(!e){b=d+12|0;e=_c(ha(k[b>>2]|0,k[g>>2]|0)|0,4)|0;k[f>>2]=e;if(!e){c=0;d=61;break}}else b=d+12|0;q=z+36|0;k[d+36>>2]=k[q>>2];x=k[z+24>>2]|0;t=k[a+24>>2]|0;q=k[q>>2]|0;x=((x&7|0)!=0&1)+(x>>>3)|0;x=(x|0)==3?4:x;n=k[t+(q*136|0)+8>>2]|0;h=k[t+(q*136|0)>>2]|0;v=n-h|0;s=k[t+(q*136|0)+12>>2]|0;q=k[t+(q*136|0)+4>>2]|0;t=s-q|0;f=k[d+16>>2]|0;p=k[d+40>>2]|0;o=$i(1,0,p|0)|0;w=L;f=aj(f|0,0,-1,-1)|0;f=aj(f|0,L|0,o|0,w|0)|0;f=bj(f|0,L|0,p|0)|0;r=aj(k[d+20>>2]|0,0,-1,-1)|0;w=aj(r|0,L|0,o|0,w|0)|0;p=bj(w|0,L|0,p|0)|0;w=k[g>>2]|0;g=f+w|0;o=k[b>>2]|0;r=p+o|0;do if(f>>>0<h>>>0){b=h-f|0;if(n>>>0>g>>>0){y=g-h|0;u=0;h=v-y|0;n=b}else{u=0;h=0;n=b;y=v}}else{b=f-h|0;if(n>>>0>g>>>0){u=b;h=n-g|0;n=0;y=w;break}else{u=b;h=0;n=0;y=v-b|0;break}}while(0);do if(p>>>0<q>>>0){g=q-p|0;if(s>>>0>r>>>0){f=r-q|0;o=f;b=0;f=t-f|0}else{o=t;b=0;f=0}}else{b=p-q|0;if(s>>>0>r>>>0){f=s-r|0;g=0;break}else{o=t-b|0;f=0;g=0;break}}while(0);if((u|h|y|f|b|o|0)<0){c=0;d=61;break}b=(ha(b,v)|0)+u|0;q=u+h|0;r=(ha(f,v)|0)-u|0;p=w-y|0;e=e+((ha(w,g)|0)+n<<2)|0;switch(x|0){case 1:{c=c+b|0;b=(o|0)==0;if(!(k[z+32>>2]|0)){if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=l[e>>0];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+1|0}}b=g;c=c+y|0}c=c+q|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}}else if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=i[e>>0];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+1|0}}b=g;c=c+y|0}c=c+q|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+r|0;break}case 2:{c=c+(b<<1)|0;b=(o|0)==0;if(!(k[z+32>>2]|0)){if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=m[e>>1];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+2|0}}b=g;c=c+(y<<1)|0}c=c+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}}else if(!b){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=j[e>>1];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+2|0}}b=g;c=c+(y<<1)|0}c=c+(q<<1)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+(r<<1)|0;break}case 4:{c=c+(b<<2)|0;if(o){h=(y|0)==0;n=0;b=e;while(1){if(!h){g=b+(y<<2)|0;f=0;e=c;while(1){k[b>>2]=k[e>>2];f=f+1|0;if((f|0)==(y|0))break;else{b=b+4|0;e=e+4|0}}b=g;c=c+(y<<2)|0}c=c+(q<<2)|0;n=n+1|0;if((n|0)==(o|0))break;else b=b+(p<<2)|0}}c=c+(r<<2)|0;break}default:{}}A=A+1|0;if(A>>>0>=(k[B>>2]|0)>>>0){c=1;d=61;break}else{d=d+52|0;z=z+52|0;a=a+52|0}}if((d|0)==61)return c|0;return 0}function ne(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=r;r=r+112|0;x=z+88|0;u=z+80|0;v=z+72|0;t=z+64|0;p=z+56|0;o=z+48|0;j=z+40|0;g=z+32|0;f=z+24|0;e=z+16|0;q=z+100|0;s=z+96|0;w=z+92|0;k[s>>2]=0;y=a+200|0;if((c|0)!=8){cc(d,1,8662,z)|0;cc(d,1,8662,z+8|0)|0;d=0;r=z;return d|0}Ab(b,y,2);Ab(b+2|0,q,4);Ab(b+6|0,w,1);Ab(b+7|0,s,1);h=k[y>>2]|0;b=k[a+112>>2]|0;if(h>>>0>=(ha(k[a+116>>2]|0,b)|0)>>>0){k[e>>2]=h;cc(d,1,15258,e)|0;d=0;r=z;return d|0}c=k[a+164>>2]|0;n=(h>>>0)%(b>>>0)|0;m=(h>>>0)/(b>>>0)|0;b=k[q>>2]|0;do if((b+-1|0)>>>0<13){if((b|0)==12){k[f>>2]=12;cc(d,2,15282,f)|0;b=k[q>>2]|0;break}k[g>>2]=b;cc(d,1,15319,g)|0;d=0;r=z;return d|0}while(0);if(!b){cc(d,4,15380,j)|0;k[a+72>>2]=1}b=k[s>>2]|0;do if(!b)b=k[c+(h*5640|0)+5588>>2]|0;else{b=((l[a+76>>0]|0)>>>4&1)+b|0;k[s>>2]=b;e=c+(h*5640|0)+5588|0;f=k[e>>2]|0;c=k[w>>2]|0;if((f+-1|0)>>>0<c>>>0){k[o>>2]=c;k[o+4>>2]=f;cc(d,1,15491,o)|0;k[a+72>>2]=1;d=0;r=z;return d|0}if(c>>>0<b>>>0){k[e>>2]=b;break}k[p>>2]=c;k[p+4>>2]=b;cc(d,1,15590,p)|0;k[a+72>>2]=1;d=0;r=z;return d|0}while(0);if((b|0)!=0?(b|0)==((k[w>>2]|0)+1|0):0){p=a+76|0;i[p>>0]=i[p>>0]|1}k[a+24>>2]=(k[a+72>>2]|0)==0?(k[q>>2]|0)+-12|0:0;k[a+8>>2]=16;b=k[a+60>>2]|0;if((b|0)==-1){if((n>>>0>=(k[a+28>>2]|0)>>>0?n>>>0<(k[a+36>>2]|0)>>>0:0)?m>>>0>=(k[a+32>>2]|0)>>>0:0)b=(m>>>0>=(k[a+40>>2]|0)>>>0&1)<<2&255;else b=4;q=a+76|0;i[q>>0]=i[q>>0]&-5|b}else{q=a+76|0;i[q>>0]=((k[y>>2]|0)!=(b|0)&1)<<2&255|i[q>>0]&-5}g=a+196|0;b=k[g>>2]|0;if(!b){d=1;r=z;return d|0}f=k[y>>2]|0;b=k[b+40>>2]|0;k[b+(f*40|0)>>2]=f;k[b+(f*40|0)+12>>2]=k[w>>2];c=k[s>>2]|0;if(c){k[b+(f*40|0)+4>>2]=c;k[b+(f*40|0)+8>>2]=k[s>>2];b=k[b+(f*40|0)+16>>2]|0;if(!b){x=_c(k[s>>2]|0,24)|0;k[(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16>>2]=x;if(x){d=1;r=z;return d|0}cc(d,1,15698,t)|0;d=0;r=z;return d|0}b=bd(b,(k[s>>2]|0)*24|0)|0;c=(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16|0;if(!b){cd(k[c>>2]|0);k[(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16>>2]=0;cc(d,1,15698,v)|0;d=0;r=z;return d|0}else{k[c>>2]=b;d=1;r=z;return d|0}}if(!(k[b+(f*40|0)+16>>2]|0)){k[b+(f*40|0)+8>>2]=10;v=_c(10,24)|0;c=k[y>>2]|0;b=k[(k[g>>2]|0)+40>>2]|0;k[b+(c*40|0)+16>>2]=v;if(!v){k[b+(c*40|0)+8>>2]=0;cc(d,1,15698,u)|0;d=0;r=z;return d|0}else f=c}c=k[w>>2]|0;e=b+(f*40|0)+8|0;if(c>>>0<(k[e>>2]|0)>>>0){d=1;r=z;return d|0}c=c+1|0;k[e>>2]=c;b=bd(k[b+(f*40|0)+16>>2]|0,c*24|0)|0;c=(k[(k[g>>2]|0)+40>>2]|0)+((k[y>>2]|0)*40|0)+16|0;if(!b){cd(k[c>>2]|0);y=k[y>>2]|0;w=k[(k[g>>2]|0)+40>>2]|0;k[w+(y*40|0)+16>>2]=0;k[w+(y*40|0)+8>>2]=0;cc(d,1,15698,x)|0;d=0;r=z;return d|0}else{k[c>>2]=b;d=1;r=z;return d|0}return 0}function oe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+64|0;o=s+48|0;p=s+40|0;h=s+32|0;m=s+56|0;g=s+52|0;k[m>>2]=c;q=a+80|0;j=k[q>>2]|0;n=a+8|0;if((k[n>>2]|0)==16)l=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else l=k[a+12>>2]|0;e=l+5636|0;f=i[e>>0]|0;if(f&1){cc(d,1,15025,s)|0;q=0;r=s;return q|0}i[e>>0]=f|1;if(c>>>0<5){cc(d,1,15089,s+8|0)|0;q=0;r=s;return q|0}Ab(b,l,1);if((k[l>>2]|0)>>>0>7){cc(d,1,15115,s+16|0)|0;q=0;r=s;return q|0}Ab(b+1|0,g,1);g=k[g>>2]|0;e=l+4|0;k[e>>2]=g;if((g|0)>4){cc(d,1,15149,s+24|0)|0;k[e>>2]=-1}e=l+8|0;Ab(b+2|0,e,2);e=k[e>>2]|0;if((e+-1|0)>>>0>65534){k[h>>2]=e;cc(d,1,15190,h)|0;q=0;r=s;return q|0}h=k[a+172>>2]|0;k[l+12>>2]=(h|0)==0?e:h;Ab(b+4|0,l+16|0,1);h=b+5|0;k[m>>2]=c+-5;g=k[j+16>>2]|0;if(g){b=k[l>>2]&1;e=k[l+5584>>2]|0;f=0;do{k[e+(f*1080|0)>>2]=b;f=f+1|0}while(f>>>0<g>>>0)}if(!(Pe(a,0,h,m,d)|0)){cc(d,1,15089,p)|0;q=0;r=s;return q|0}if(k[m>>2]|0){cc(d,1,15089,o)|0;q=0;r=s;return q|0}if((k[n>>2]|0)==16)e=(k[a+164>>2]|0)+((k[a+200>>2]|0)*5640|0)|0;else e=k[a+12>>2]|0;e=k[e+5584>>2]|0;c=e+4|0;f=k[c>>2]|0;l=f<<2;if((k[(k[q>>2]|0)+16>>2]|0)>>>0<=1){q=1;r=s;return q|0}m=e+8|0;n=e+12|0;a=e+16|0;d=e+20|0;o=e+812|0;p=e+944|0;k[e+1084>>2]=f;g=k[m>>2]|0;k[e+1088>>2]=g;b=k[n>>2]|0;k[e+1092>>2]=b;h=k[a>>2]|0;k[e+1096>>2]=h;j=k[d>>2]|0;k[e+1100>>2]=j;cj(e+1892|0,o|0,l|0)|0;cj(e+2024|0,p|0,l|0)|0;if((k[(k[q>>2]|0)+16>>2]|0)>>>0<=2){q=1;r=s;return q|0}k[e+2164>>2]=f;k[e+2168>>2]=g;k[e+2172>>2]=b;k[e+2176>>2]=h;k[e+2180>>2]=j;cj(e+2972|0,o|0,l|0)|0;cj(e+3104|0,p|0,l|0)|0;if((k[(k[q>>2]|0)+16>>2]|0)>>>0>3)f=3;else{q=1;r=s;return q|0}while(1){g=k[m>>2]|0;b=k[n>>2]|0;h=k[a>>2]|0;j=k[d>>2]|0;k[e+3244>>2]=k[c>>2];k[e+3248>>2]=g;k[e+3252>>2]=b;k[e+3256>>2]=h;k[e+3260>>2]=j;cj(e+4052|0,o|0,l|0)|0;cj(e+4184|0,p|0,l|0)|0;f=f+1|0;if(f>>>0>=(k[(k[q>>2]|0)+16>>2]|0)>>>0){e=1;break}else e=e+1080|0}r=s;return e|0}
|
|
1231
|
+
function vg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;u=r;r=r+272|0;m=u;s=u+136|0;t=u+8|0;if(!a){t=0;r=u;return t|0}l=a+4|0;if((k[a>>2]|0)==(b|0)?(k[l>>2]|0)==(c|0):0)e=a+8|0;else{k[a>>2]=b;k[l>>2]=c;k[s>>2]=b;k[t>>2]=c;e=a+8|0;k[e>>2]=0;f=0;h=c;i=b;j=0;while(1){q=ha(h,i)|0;i=(i+1|0)/2|0;g=j+1|0;k[s+(g<<2)>>2]=i;h=(h+1|0)/2|0;k[t+(g<<2)>>2]=h;f=f+q|0;if(q>>>0<=1)break;else j=g}k[e>>2]=f;if(!f){e=a+12|0;f=k[e>>2]|0;if(f){cd(f);k[e>>2]=0}cd(a);t=0;r=u;return t|0}g=f<<4;h=a+16|0;i=a+12|0;do if(g>>>0>(k[h>>2]|0)>>>0){f=bd(k[i>>2]|0,g)|0;if(f){k[i>>2]=f;c=k[h>>2]|0;_i(f+c|0,0,g-c|0)|0;k[h>>2]=g;c=k[l>>2]|0;b=k[a>>2]|0;break}cc(d,1,20166,m)|0;e=k[i>>2]|0;if(e){cd(e);k[i>>2]=0}cd(a);t=0;r=u;return t|0}while(0);f=k[i>>2]|0;b=f+((ha(c,b)|0)<<4)|0;if(j){q=0;c=b;do{o=k[t+(q<<2)>>2]|0;a:do if((o|0)>0){p=k[s+(q<<2)>>2]|0;if((p|0)<=0){g=o+-1|0;h=0;while(1){n=(h&1|0)!=0|(h|0)==(g|0);i=n?c:b+(p<<4)|0;c=n?c:b;h=h+1|0;if((h|0)>=(o|0)){b=i;break a}else b=i}}n=((p+2+((p|0)<2?~p:-3)|0)>>>1)+1|0;d=o+-1|0;m=0;while(1){l=p;i=c;while(1){k[f>>2]=i;g=f+16|0;h=l;l=l+-2|0;if((l|0)>-1){k[g>>2]=i;f=f+32|0}else f=g;if((h|0)<=2)break;else i=i+16|0}c=c+(n<<4)|0;l=(m&1|0)!=0|(m|0)==(d|0);g=l?c:b+(p<<4)|0;c=l?c:b;m=m+1|0;if((m|0)>=(o|0)){b=g;break}else b=g}}while(0);q=q+1|0}while((q|0)!=(j|0))}k[f>>2]=0}e=k[e>>2]|0;if(!e){t=a;r=u;return t|0}f=0;b=k[a+12>>2]|0;while(1){k[b+4>>2]=999;k[b+8>>2]=0;k[b+12>>2]=0;f=f+1|0;if((f|0)==(e|0))break;else b=b+16|0}r=u;return a|0}function wg(a){a=a|0;var b=0,c=0;if(!a)return;b=a+12|0;c=k[b>>2]|0;if(c){cd(c);k[b>>2]=0}cd(a);return}function xg(a,b,c){a=a|0;b=b|0;c=c|0;b=(k[a+12>>2]|0)+(b<<4)|0;if(!b)return;while(1){a=b+4|0;if((k[a>>2]|0)<=(c|0)){b=4;break}k[a>>2]=c;b=k[b>>2]|0;if(!b){b=4;break}}if((b|0)==4)return}function yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+128|0;h=i;c=(k[b+12>>2]|0)+(c<<4)|0;if(!(k[c>>2]|0)){e=0;f=h}else{e=c;b=h;while(1){f=b+4|0;k[b>>2]=c;c=k[e>>2]|0;if(!(k[c>>2]|0)){e=0;break}else{e=c;b=f}}}while(1){g=c+8|0;b=k[g>>2]|0;if((e|0)>(b|0)){k[g>>2]=e;b=e}a:do if((b|0)<(d|0)){e=c+4|0;while(1){if((b|0)>=(k[e>>2]|0))break;Lg(a,0,1);b=b+1|0;if((b|0)>=(d|0)){c=b;break a}}c=c+12|0;if(!(k[c>>2]|0)){Lg(a,1,1);k[c>>2]=1;c=b}else c=b}else c=b;while(0);k[g>>2]=c;if((f|0)==(h|0))break;g=f+-4|0;e=c;c=k[g>>2]|0;f=g}r=i;return}function zg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=r;r=r+128|0;h=i;c=(k[b+12>>2]|0)+(c<<4)|0;if(!(k[c>>2]|0)){b=0;f=h}else{e=c;b=h;while(1){f=b+4|0;k[b>>2]=c;c=k[e>>2]|0;if(!(k[c>>2]|0)){b=0;break}else{e=c;b=f}}}while(1){g=c+8|0;e=k[g>>2]|0;if((b|0)>(e|0))k[g>>2]=b;else b=e;c=c+4|0;a:do if((b|0)<(d|0)){while(1){if((b|0)>=(k[c>>2]|0))break a;if(Mg(a,1)|0)break;b=b+1|0;if((b|0)>=(d|0))break a}k[c>>2]=b}while(0);k[g>>2]=b;if((f|0)==(h|0))break;g=f+-4|0;c=k[g>>2]|0;f=g}r=i;return (k[c>>2]|0)<(d|0)|0}function Ag(){var a=0,b=0;a=_c(1,12)|0;if(!a){a=0;return a|0}k[a+4>>2]=10;b=_c(10,4)|0;k[a+8>>2]=b;if(b){b=a;return b|0}cd(a);b=0;return b|0}function Bg(a){a=a|0;var b=0;if(!a)return;b=k[a+8>>2]|0;if(b)cd(b);cd(a);return}function Cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;f=a+4|0;e=k[f>>2]|0;d=k[a>>2]|0;do if((e|0)==(d|0)){e=e+10|0;k[f>>2]=e;d=a+8|0;e=bd(k[d>>2]|0,e<<2)|0;if(e){k[d>>2]=e;d=k[a>>2]|0;break}cd(k[d>>2]|0);k[f>>2]=0;k[a>>2]=0;cc(c,1,20214,g)|0;a=0;r=h;return a|0}else e=k[a+8>>2]|0;while(0);k[e+(d<<2)>>2]=b;k[a>>2]=d+1;a=1;r=h;return a|0}function Dg(a){a=a|0;return k[a>>2]|0}function Eg(a){a=a|0;return k[a+8>>2]|0}function Fg(a){a=a|0;k[a>>2]=0;return}function Gg(){return Zc(20)|0}function Hg(a){a=a|0;if(!a)return;cd(a);return}function Ig(a){a=a|0;return (k[a+8>>2]|0)-(k[a>>2]|0)|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=b;k[a+4>>2]=b+c;k[a+8>>2]=b;k[a+12>>2]=0;k[a+16>>2]=8;return}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;k[a>>2]=b;k[a+4>>2]=b+c;k[a+8>>2]=b;k[a+12>>2]=0;k[a+16>>2]=0;return}function Lg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;if(!c)return;j=a+16|0;l=a+12|0;m=a+8|0;f=a+4|0;a=k[j>>2]|0;h=c+-1|0;do{g=b>>>h&1;if(!a){e=k[l>>2]|0;a=e<<8&65280;k[l>>2]=a;a=(a|0)==65280?7:8;k[j>>2]=a;d=k[m>>2]|0;if(d>>>0<(k[f>>2]|0)>>>0){k[m>>2]=d+1;i[d>>0]=e;a=k[j>>2]|0}}a=a+-1|0;k[j>>2]=a;k[l>>2]=g<<a|k[l>>2];h=h+-1|0}while(h>>>0<c>>>0);return}function Mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!b){b=0;return b|0}h=a+16|0;i=a+12|0;j=a+8|0;f=a+4|0;c=k[h>>2]|0;d=k[i>>2]|0;g=b+-1|0;a=0;do{if(!c){e=d<<8&65280;k[i>>2]=e;c=(e|0)==65280?7:8;k[h>>2]=c;d=k[j>>2]|0;if(d>>>0<(k[f>>2]|0)>>>0){k[j>>2]=d+1;d=l[d>>0]|0|e;k[i>>2]=d}else d=e}c=c+-1|0;k[h>>2]=c;a=((d>>>c&1)<<g)+a|0;g=g+-1|0}while(g>>>0<b>>>0);return a|0}function Ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=a+12|0;b=k[d>>2]|0;g=b<<8&65280;k[d>>2]=g;e=a+16|0;k[e>>2]=(g|0)==65280?7:8;g=a+8|0;c=k[g>>2]|0;f=a+4|0;if(c>>>0>=(k[f>>2]|0)>>>0){g=0;return g|0}k[g>>2]=c+1;i[c>>0]=b;if((k[e>>2]|0)!=7){g=1;return g|0}b=k[d>>2]|0;a=b<<8&65280;k[d>>2]=a;k[e>>2]=(a|0)==65280?7:8;a=k[g>>2]|0;if(a>>>0>=(k[f>>2]|0)>>>0){g=0;return g|0}k[g>>2]=a+1;i[a>>0]=b;g=1;return g|0}function Og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=a+12|0;b=k[f>>2]|0;do if((b&255|0)==255){d=b<<8&65280;k[f>>2]=d;b=a+16|0;k[b>>2]=(d|0)==65280?7:8;e=a+8|0;c=k[e>>2]|0;if(c>>>0<(k[a+4>>2]|0)>>>0){k[e>>2]=c+1;k[f>>2]=l[c>>0]|0|d;break}else{a=0;return a|0}}else b=a+16|0;while(0);k[b>>2]=0;a=1;return a|0}function Pg(a){a=a|0;return Zg(a,1)|0}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=r;r=r+32|0;B=D+16|0;C=D;i=k[a+24>>2]|0;h=(k[i+8>>2]|0)-(k[i>>2]|0)|0;g=(k[i+12>>2]|0)-(k[i+4>>2]|0)|0;A=(k[a+8>>2]|0)-(k[a>>2]|0)|0;if((b|0)==1){C=1;r=D;return C|0}f=b+-1|0;e=(f|0)==0;if(e)b=0;else{c=i;d=f;b=0;do{z=c;c=c+136|0;y=(k[z+144>>2]|0)-(k[c>>2]|0)|0;b=b>>>0<y>>>0?y:b;z=(k[z+148>>2]|0)-(k[z+140>>2]|0)|0;b=b>>>0<z>>>0?z:b;d=d+-1|0}while((d|0)!=0);b=b<<2}z=$c(b)|0;k[B>>2]=z;if(!z){C=0;r=D;return C|0}k[C>>2]=z;if(!e){s=a+32|0;t=B+8|0;u=C+8|0;v=B+4|0;w=B+12|0;x=C+4|0;y=C+12|0;do{p=k[s>>2]|0;m=i;i=i+136|0;k[t>>2]=h;k[u>>2]=g;n=k[m+144>>2]|0;o=k[i>>2]|0;d=h;h=n-o|0;b=k[m+148>>2]|0;m=m+140|0;q=k[m>>2]|0;c=g;g=b-q|0;k[v>>2]=h-d;k[w>>2]=(o|0)%2|0;q=(b|0)==(q|0);if(!q){l=h<<2;b=0;while(1){a=ha(b,A)|0;j=p+(a<<2)|0;if(d){c=j;e=z+(k[w>>2]<<2)|0;while(1){d=d+-1|0;k[e>>2]=k[c>>2];if(!d)break;else{c=c+4|0;e=e+8|0}}}c=k[v>>2]|0;if(c){d=p+((k[t>>2]|0)+a<<2)|0;e=z+(1-(k[w>>2]|0)<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+4|0;e=e+8|0}}}_g(B);cj(j|0,z|0,l|0)|0;b=b+1|0;if((b|0)==(g|0))break;d=k[t>>2]|0}c=k[u>>2]|0;b=k[m>>2]|0}k[x>>2]=g-c;k[y>>2]=(b|0)%2|0;a:do if((n|0)!=(o|0)){b=0;while(1){if(c){d=p+(b<<2)|0;e=z+(k[y>>2]<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+(A<<2)|0;e=e+8|0}}}c=k[x>>2]|0;if(c){d=p+((ha(k[u>>2]|0,A)|0)+b<<2)|0;e=z+(1-(k[y>>2]|0)<<2)|0;while(1){c=c+-1|0;k[e>>2]=k[d>>2];if(!c)break;else{d=d+(A<<2)|0;e=e+8|0}}}_g(C);if(!q){c=0;do{o=p+((ha(c,A)|0)+b<<2)|0;k[o>>2]=k[z+(c<<2)>>2];c=c+1|0}while((c|0)!=(g|0))}b=b+1|0;if((b|0)==(h|0))break a;c=k[u>>2]|0}}while(0);f=f+-1|0}while((f|0)!=0)}ad(z);C=1;r=D;return C|0}function Rg(a){a=a|0;if(!a){a=0;return a|0}a=(a+-1|0)>>>0<2?1:2;return a|0}function Sg(a,b){a=a|0;b=b|0;return +(+p[56+(b*80|0)+(a<<3)>>3])}function Tg(a){a=a|0;return Zg(a,2)|0}function Ug(a){a=a|0;return 0}function Vg(a,b){a=a|0;b=b|0;return +(+p[376+(b*80|0)+(a<<3)>>3])}function Wg(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;i=a+4|0;j=((k[i>>2]|0)*3|0)+-2|0;if(!j)return;l=a+20|0;m=a+24|0;n=0;do{if(!n){d=0;e=0}else{e=n+-1|0;d=((e>>>0)/3|0)+1|0;e=((e>>>0)%3|0)+1|0}if((e|0)==0|(k[l>>2]|0)==0)f=0;else f=(e+-1|0)>>>0<2?1:2;if(!(k[m>>2]|0))c=1.0;else c=+(1<<f|0)/+p[376+(e*80|0)+((k[i>>2]|0)+~d<<3)>>3];h=~~+V(+(c*8192.0));g=f+b|0;if((h|0)>1){d=h;e=0;while(1){d=d>>1;if((d|0)<=1)break;else e=e+1|0}f=h;d=0;do{f=f>>1;d=d+1|0}while((f|0)>1);e=e+-12|0}else{e=-13;d=0}f=11-d|0;k[a+28+(n<<3)+4>>2]=((f|0)<0?h>>0-f:h<<f)&2047;k[a+28+(n<<3)>>2]=g-e;n=n+1|0}while((n|0)!=(j|0));return}function Xg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=r;r=r+32|0;Q=T+16|0;R=T;l=k[a+24>>2]|0;m=k[l+8>>2]|0;n=k[l>>2]|0;i=k[l+12>>2]|0;j=k[l+4>>2]|0;P=a+8|0;g=k[P>>2]|0;h=k[a>>2]|0;O=g-h|0;f=b+-1|0;e=(f|0)==0;if(e)b=80;else{c=l;d=f;b=0;do{N=c;c=c+136|0;M=(k[N+144>>2]|0)-(k[c>>2]|0)|0;b=b>>>0<M>>>0?M:b;N=(k[N+148>>2]|0)-(k[N+140>>2]|0)|0;b=b>>>0<N>>>0?N:b;d=d+-1|0}while((d|0)!=0);b=(b<<4)+80|0}N=$c(b)|0;k[Q>>2]=N;if(!N){S=0;r=T;return S|0}k[R>>2]=N;a:do if(!e){y=a+32|0;z=a+12|0;A=a+4|0;B=Q+8|0;C=R+8|0;D=Q+4|0;E=Q+12|0;F=R+4|0;G=R+12|0;H=O<<1;I=O<<2;J=O*3|0;L=h<<2;M=g<<2;K=L-M|0;L=M-L|0;M=g-h<<2;b=f;c=N;f=g;d=h;q=i-j|0;e=l;g=m-n|0;while(1){s=k[y>>2]|0;d=ha((k[z>>2]|0)-(k[A>>2]|0)|0,f-d|0)|0;k[B>>2]=g;k[C>>2]=q;w=e+136|0;o=k[e+144>>2]|0;p=k[w>>2]|0;x=o-p|0;u=k[e+148>>2]|0;m=e+140|0;t=k[m>>2]|0;v=u-t|0;k[D>>2]=x-g;k[E>>2]=(p|0)%2|0;if((v|0)>3){f=(x|0)>0;g=(u+-4-t|0)>>>2;l=ha(K,g)|0;g=s+(L+(ha(M,g)|0)<<2)|0;h=s;i=d;j=v;while(1){ah(Q,h,O,i);bh(Q);if(f){e=x;do{n=e;e=e+-1|0;k[h+(e<<2)>>2]=k[N+(e<<4)>>2];k[h+(e+O<<2)>>2]=k[N+(e<<4)+4>>2];k[h+(e+H<<2)>>2]=k[N+(e<<4)+8>>2];k[h+(e+J<<2)>>2]=k[N+(e<<4)+12>>2]}while((n|0)>1)}j=j+-4|0;if((j|0)<=3)break;else{h=h+(I<<2)|0;i=i-I|0}}d=K+d+l|0}else g=s;f=v&3;b:do if(!f)S=21;else{ah(Q,g,O,d);bh(Q);if((x|0)>0)d=x;else{i=v-q|0;k[F>>2]=i;f=(k[m>>2]|0)%2|0;k[G>>2]=f;j=q;h=s;break}while(1){e=d;d=d+-1|0;switch(f|0){case 3:{k[g+(d+H<<2)>>2]=k[N+(d<<4)+8>>2];S=18;break}case 2:{S=18;break}case 1:{S=19;break}default:{}}if((S|0)==18){k[g+(d+O<<2)>>2]=k[N+(d<<4)+4>>2];S=19}if((S|0)==19){S=0;k[g+(d<<2)>>2]=k[N+(d<<4)>>2]}if((e|0)<=1){S=21;break b}}}while(0);if((S|0)==21){S=0;i=v-q|0;k[F>>2]=i;f=(k[m>>2]|0)%2|0;k[G>>2]=f;if((x|0)>3){n=(u|0)==(t|0);o=o+-4-p|0;m=k[C>>2]|0;j=(m|0)>0;h=1-f|0;l=(i|0)>0;e=s;g=x;while(1){if(j){d=0;do{q=c+((d<<1)+f<<4)|0;p=e+((ha(d,O)|0)<<2)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(m|0))}if(l){d=0;do{q=c+(h+(d<<1)<<4)|0;p=e+((ha(d+m|0,O)|0)<<2)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(i|0))}bh(R);if(!n){c=k[R>>2]|0;d=0;do{q=e+((ha(d,O)|0)<<2)|0;p=c+(d<<4)|0;k[q>>2]=k[p>>2];k[q+4>>2]=k[p+4>>2];k[q+8>>2]=k[p+8>>2];k[q+12>>2]=k[p+12>>2];d=d+1|0}while((d|0)!=(v|0))}g=g+-4|0;if((g|0)<=3)break;else e=e+16|0}j=m;h=s+((o+4&-4)<<2)|0}else{j=q;h=s}}g=x&3;if(g){c=k[R>>2]|0;if((j|0)>0){d=g<<2;e=0;do{cj(c+((e<<1)+f<<4)|0,h+((ha(e,O)|0)<<2)|0,d|0)|0;e=e+1|0}while((e|0)!=(j|0))}d=1-f|0;if((i|0)>0){e=g<<2;f=0;do{cj(c+(d+(f<<1)<<4)|0,h+((ha(f+j|0,O)|0)<<2)|0,e|0)|0;f=f+1|0}while((f|0)!=(i|0))}bh(R);if((u|0)!=(t|0)){d=g<<2;e=0;do{cj(h+((ha(e,O)|0)<<2)|0,c+(e<<4)|0,d|0)|0;e=e+1|0}while((e|0)!=(v|0))}}b=b+-1|0;if(!b)break a;f=k[P>>2]|0;d=k[a>>2]|0;q=v;e=w;g=x}}while(0);ad(N);S=1;r=T;return S|0}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!d){d=(b|0)>0;if(!(d|(c|0)>1))return;if(d){d=a+((c<<1)+-2<<2)|0;e=0;do{i=e;e=e+1|0;j=a+((i<<1|1)<<2)|0;k[j>>2]=(k[j>>2]|0)-((k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((i|0)<(c|0)?a+(i<<1<<2)|0:d)>>2]|0)>>1)}while((e|0)!=(b|0))}if((c|0)<=0)return;e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;j=a+(g<<1<<2)|0;k[j>>2]=((k[d>>2]|0)+2+(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)>>2)+(k[j>>2]|0);g=g+1|0}while((g|0)!=(c|0));return}if((b|0)==1&(c|0)==0){k[a>>2]=k[a>>2]<<1;return}if((b|0)>0){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;h=a+(h<<2)|0;k[h>>2]=(k[h>>2]|0)-((k[d>>2]|0)+i>>1);j=j+1|0}while((j|0)!=(b|0))}if((c|0)<=0)return;d=a+((b<<1)+-2<<2)|0;e=0;do{i=e;e=e+1|0;j=a+((i<<1|1)<<2)|0;k[j>>2]=((k[((i|0)<(b|0)?a+(i<<1<<2)|0:d)>>2]|0)+2+(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)>>2)+(k[j>>2]|0)}while((e|0)!=(c|0));return}function Zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=(k[a+8>>2]|0)-(k[a>>2]|0)|0;f=k[a+16>>2]|0;h=f+-1|0;x=k[a+32>>2]|0;g=k[a+24>>2]|0;e=(h|0)==0;if(e)a=0;else{c=g;d=h;a=0;do{v=c;c=c+136|0;u=(k[v+144>>2]|0)-(k[c>>2]|0)|0;a=a>>>0<u>>>0?u:a;v=(k[v+148>>2]|0)-(k[v+140>>2]|0)|0;a=a>>>0<v>>>0?v:a;d=d+-1|0}while((d|0)!=0);a=a<<2}v=Zc(a)|0;if(!((a|0)==0|(v|0)!=0)){b=0;return b|0}if(!e){t=f+-2|0;u=t;a=g+(h*136|0)|0;t=g+(t*136|0)|0;while(1){q=k[a>>2]|0;s=(k[a+8>>2]|0)-q|0;m=k[a+4>>2]|0;o=(k[a+12>>2]|0)-m|0;p=(k[t+8>>2]|0)-(k[t>>2]|0)|0;a=k[t+12>>2]|0;c=k[t+4>>2]|0;l=a-c|0;q=q&1;m=m&1;n=o-l|0;r=(s|0)>0;a:do if(r){e=(a|0)==(c|0);h=(o|0)==(l|0);i=v+((m^1)<<2)|0;j=ha(l,w)|0;g=v+(m<<2)|0;if((o|0)>0){f=0;while(1){c=x+(f<<2)|0;a=0;do{d=x+((ha(a,w)|0)+f<<2)|0;k[v+(a<<2)>>2]=k[d>>2];a=a+1|0}while((a|0)!=(o|0));kb[b&3](v,n,l,m);if(!e){d=l;a=g;while(1){d=d+-1|0;k[c>>2]=k[a>>2];if(!d)break;else{c=c+(w<<2)|0;a=a+8|0}}}if(!h){a=n;c=x+(f+j<<2)|0;d=i;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}}f=f+1|0;if((f|0)==(s|0))break a}}if(e){c=0;while(1){kb[b&3](v,n,l,m);if(!h){a=n;d=x+(c+j<<2)|0;e=i;while(1){a=a+-1|0;k[d>>2]=k[e>>2];if(!a)break;else{d=d+(w<<2)|0;e=e+8|0}}}c=c+1|0;if((c|0)==(s|0))break a}}else e=0;do{kb[b&3](v,n,l,m);a=l;c=x+(e<<2)|0;d=g;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}if(!h){a=n;c=x+(e+j<<2)|0;d=i;while(1){a=a+-1|0;k[c>>2]=k[d>>2];if(!a)break;else{c=c+(w<<2)|0;d=d+8|0}}}e=e+1|0}while((e|0)!=(s|0))}while(0);f=s-p|0;if((o|0)>0){g=(p|0)>0;h=v+(q<<2)|0;i=(f|0)>0;j=v+((q^1)<<2)|0;l=0;do{e=ha(l,w)|0;c=x+(e<<2)|0;if(r){a=0;do{k[v+(a<<2)>>2]=k[x+(a+e<<2)>>2];a=a+1|0}while((a|0)!=(s|0))}kb[b&3](v,f,p,q);if(g){d=0;a=h;while(1){k[c>>2]=k[a>>2];d=d+1|0;if((d|0)==(p|0))break;else{c=c+4|0;a=a+8|0}}}if(i){d=0;a=x+(e+p<<2)|0;c=j;while(1){k[a>>2]=k[c>>2];d=d+1|0;if((d|0)==(f|0))break;else{a=a+4|0;c=c+8|0}}}l=l+1|0}while((l|0)!=(o|0))}if(!u)break;else{a=t;u=u+-1|0;t=t+-136|0}}}cd(v);b=1;return b|0}function _g(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=k[a>>2]|0;i=k[a+4>>2]|0;j=k[a+8>>2]|0;if(!(k[a+12>>2]|0)){d=(i|0)>0;if(!(d|(j|0)>1))return;if((j|0)>0){b=h+4|0;c=(i<<1)+-1|0;e=0;do{if((e|0)<1)a=b;else a=h+((((e|0)>(i|0)?i:e)<<1)+-1<<2)|0;f=e<<1;g=h+(f<<2)|0;k[g>>2]=(k[g>>2]|0)-((k[a>>2]|0)+2+(k[h+(((e|0)<(i|0)?f|1:c)<<2)>>2]|0)>>2);e=e+1|0}while((e|0)!=(j|0))}if(!d)return;a=h+((j<<1)+-2<<2)|0;b=0;do{f=b<<1;e=b;b=b+1|0;g=h+((f|1)<<2)|0;k[g>>2]=((k[((b|0)<(j|0)?h+(b<<1<<2)|0:a)>>2]|0)+(k[((e|0)<(j|0)?h+(f<<2)|0:a)>>2]|0)>>1)+(k[g>>2]|0)}while((b|0)!=(i|0));return}if((i|0)==1&(j|0)==0){k[h>>2]=(k[h>>2]|0)/2|0;return}if((j|0)>0){a=h+((i<<1)+-2<<2)|0;b=0;do{f=b<<1;e=b;b=b+1|0;g=h+((f|1)<<2)|0;k[g>>2]=(k[g>>2]|0)-((k[((e|0)<(i|0)?h+(f<<2)|0:a)>>2]|0)+2+(k[((b|0)<(i|0)?h+(b<<1<<2)|0:a)>>2]|0)>>2)}while((b|0)!=(j|0))}if((i|0)<=0)return;b=h+4|0;c=(j<<1)+-1|0;d=h+(c<<2)|0;g=0;do{e=g<<1;f=k[h+(((g|0)<(j|0)?e|1:c)<<2)>>2]|0;if((g|0)>=1)if((g|0)>(j|0))a=d;else a=h+(e+-1<<2)|0;else a=b;e=h+(e<<2)|0;k[e>>2]=((k[a>>2]|0)+f>>1)+(k[e>>2]|0);g=g+1|0}while((g|0)!=(i|0));return}function $g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;if(!d){i=(b|0)>0;if(!(i|(c|0)>1))return;if(i){d=a+((c<<1)+-2<<2)|0;e=0;do{m=e;e=e+1|0;l=(k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((m|0)<(c|0)?a+(m<<1<<2)|0:d)>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,12993,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+((m<<1|1)<<2)|0;k[m>>2]=(k[m>>2]|0)-l}while((e|0)!=(b|0))}h=(c|0)>0;if(h){e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;l=(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)+(k[d>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,434,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+(g<<1<<2)|0;k[m>>2]=(k[m>>2]|0)-l;g=g+1|0}while((g|0)!=(c|0))}if(i){d=a+((c<<1)+-2<<2)|0;e=0;do{m=e;e=e+1|0;l=(k[((e|0)<(c|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((m|0)<(c|0)?a+(m<<1<<2)|0:d)>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,7233,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+((m<<1|1)<<2)|0;k[m>>2]=l+(k[m>>2]|0)}while((e|0)!=(b|0))}if(h){e=a+4|0;f=(b<<1)+-1|0;g=0;do{if((g|0)<1)d=e;else d=a+((((g|0)>(b|0)?b:g)<<1)+-1<<2)|0;l=(k[a+(((g|0)<(b|0)?g<<1|1:f)<<2)>>2]|0)+(k[d>>2]|0)|0;l=hj(l|0,((l|0)<0)<<31>>31|0,3633,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;m=a+(g<<1<<2)|0;k[m>>2]=l+(k[m>>2]|0);g=g+1|0}while((g|0)!=(c|0))}if(i){d=0;do{m=a+((d<<1|1)<<2)|0;l=k[m>>2]|0;l=hj(l|0,((l|0)<0)<<31>>31|0,5038,0)|0;l=aj(l|0,L|0,4096,0)|0;l=bj(l|0,L|0,13)|0;k[m>>2]=l;d=d+1|0}while((d|0)!=(b|0))}if(h)d=0;else return;do{b=a+(d<<1<<2)|0;m=k[b>>2]|0;m=hj(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;k[b>>2]=m;d=d+1|0}while((d|0)!=(c|0));return}m=(c|0)>0;if(!((b|0)>1|m))return;l=(b|0)>0;if(l){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;d=(k[d>>2]|0)+i|0;d=hj(d|0,((d|0)<0)<<31>>31|0,12993,0)|0;d=aj(d|0,L|0,4096,0)|0;d=bj(d|0,L|0,13)|0;i=a+(h<<2)|0;k[i>>2]=(k[i>>2]|0)-d;j=j+1|0}while((j|0)!=(b|0))}if(m){d=a+((b<<1)+-2<<2)|0;e=0;do{j=e;e=e+1|0;i=(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((j|0)<(b|0)?a+(j<<1<<2)|0:d)>>2]|0)|0;i=hj(i|0,((i|0)<0)<<31>>31|0,434,0)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;j=a+((j<<1|1)<<2)|0;k[j>>2]=(k[j>>2]|0)-i}while((e|0)!=(c|0))}if(l){e=a+4|0;f=(c<<1)+-1|0;g=a+(f<<2)|0;j=0;do{h=j<<1;i=k[a+(((j|0)<(c|0)?h|1:f)<<2)>>2]|0;if((j|0)>=1)if((j|0)>(c|0))d=g;else d=a+(h+-1<<2)|0;else d=e;d=(k[d>>2]|0)+i|0;d=hj(d|0,((d|0)<0)<<31>>31|0,7233,0)|0;d=aj(d|0,L|0,4096,0)|0;d=bj(d|0,L|0,13)|0;i=a+(h<<2)|0;k[i>>2]=d+(k[i>>2]|0);j=j+1|0}while((j|0)!=(b|0))}if(m){d=a+((b<<1)+-2<<2)|0;e=0;do{j=e;e=e+1|0;i=(k[((e|0)<(b|0)?a+(e<<1<<2)|0:d)>>2]|0)+(k[((j|0)<(b|0)?a+(j<<1<<2)|0:d)>>2]|0)|0;i=hj(i|0,((i|0)<0)<<31>>31|0,3633,0)|0;i=aj(i|0,L|0,4096,0)|0;i=bj(i|0,L|0,13)|0;j=a+((j<<1|1)<<2)|0;k[j>>2]=i+(k[j>>2]|0)}while((e|0)!=(c|0))}if(l){d=0;do{l=a+(d<<1<<2)|0;j=k[l>>2]|0;j=hj(j|0,((j|0)<0)<<31>>31|0,5038,0)|0;j=aj(j|0,L|0,4096,0)|0;j=bj(j|0,L|0,13)|0;k[l>>2]=j;d=d+1|0}while((d|0)!=(b|0))}if(m)d=0;else return;do{b=a+((d<<1|1)<<2)|0;m=k[b>>2]|0;m=hj(m|0,((m|0)<0)<<31>>31|0,6659,0)|0;m=aj(m|0,L|0,4096,0)|0;m=bj(m|0,L|0,13)|0;k[b>>2]=m;d=d+1|0}while((d|0)!=(c|0));return}function ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=k[a>>2]|0;h=k[a+12>>2]|0;q=k[a+8>>2]|0;n=c*3|0;l=1-h|0;j=a+4|0;i=q;a=0;while(1){g=m+(h<<4)|0;if(((i+n|0)<(d|0)?(b&15|0)==0:0)?((g|c)&15|0)==0:0){if((i|0)>0){e=0;do{g=e<<3;k[m+(h<<4)+(g<<2)>>2]=k[b+(e<<2)>>2];f=e+c|0;k[m+(h<<4)+((g|1)<<2)>>2]=k[b+(f<<2)>>2];f=f+c|0;k[m+(h<<4)+((g|2)<<2)>>2]=k[b+(f<<2)>>2];k[m+(h<<4)+((g|3)<<2)>>2]=k[b+(f+c<<2)>>2];e=e+1|0}while((e|0)!=(i|0))}}else r=3;if((r|0)==3?(r=0,(i|0)>0):0){g=0;do{e=g<<3;k[m+(h<<4)+(e<<2)>>2]=k[b+(g<<2)>>2];f=g+c|0;if(((f|0)<(d|0)?(k[m+(h<<4)+((e|1)<<2)>>2]=k[b+(f<<2)>>2],o=f+c|0,(o|0)<(d|0)):0)?(k[m+(h<<4)+((e|2)<<2)>>2]=k[b+(o<<2)>>2],p=o+c|0,(p|0)<(d|0)):0)k[m+(h<<4)+((e|3)<<2)>>2]=k[b+(p<<2)>>2];g=g+1|0}while((g|0)!=(i|0))}a=a+1|0;if((a|0)==2)break;else{b=b+(q<<2)|0;d=d-q|0;h=l;i=k[j>>2]|0}}return}function bh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0.0,j=0.0,l=0,m=0.0,n=0,p=0;do if(!(k[a+12>>2]|0)){c=k[a+8>>2]|0;if((k[a+4>>2]|0)>0){b=k[a>>2]|0;if((c|0)>0){g=0;e=1;h=9;break}else{g=0;f=1;break}}if((c|0)>1){d=0;e=1;h=7}else return}else{c=k[a+8>>2]|0;if((c|0)<=0)if((k[a+4>>2]|0)>1){b=k[a>>2]|0;g=1;f=0;break}else return;else{d=1;e=0;h=7}}while(0);if((h|0)==7){b=k[a>>2]|0;g=d;h=9}if((h|0)==9){d=0;do{h=d<<3;n=b+(g<<4)+(h<<2)|0;l=b+(g<<4)+((h|1)<<2)|0;m=+o[l>>2];f=b+(g<<4)+((h|2)<<2)|0;j=+o[f>>2];h=b+(g<<4)+((h|3)<<2)|0;i=+o[h>>2];o[n>>2]=+o[n>>2]*1.2301740646362305;o[l>>2]=m*1.2301740646362305;o[f>>2]=j*1.2301740646362305;o[h>>2]=i*1.2301740646362305;d=d+1|0}while((d|0)!=(c|0));f=e}d=k[a+4>>2]|0;if((d|0)>0){e=0;do{n=e<<3;h=b+(f<<4)+(n<<2)|0;a=b+(f<<4)+((n|1)<<2)|0;i=+o[a>>2];l=b+(f<<4)+((n|2)<<2)|0;j=+o[l>>2];n=b+(f<<4)+((n|3)<<2)|0;m=+o[n>>2];o[h>>2]=+o[h>>2]*1.625732421875;o[a>>2]=i*1.625732421875;o[l>>2]=j*1.625732421875;o[n>>2]=m*1.625732421875;e=e+1|0}while((e|0)!=(d|0))}p=b+(f<<4)|0;e=b+(g+1<<4)|0;h=d-g|0;h=(c|0)<(h|0)?c:h;ch(p,e,c,h,-.4435068666934967);a=b+(g<<4)|0;l=b+(f+1<<4)|0;n=c-f|0;n=(d|0)<(n|0)?d:n;ch(a,l,d,n,-.8829110860824585);ch(p,e,c,h,.05298011749982834);ch(a,l,d,n,1.5861343145370483);return}function ch(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0.0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0.0,p=0.0,q=0,r=0.0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0.0;if((d|0)>0){l=d<<1;k=l+-2|0;g=+o[a>>2];h=+o[a+4>>2];i=+o[a+8>>2];f=+o[a+12>>2];a=b;j=0;while(1){w=a+-16|0;t=a+-12|0;v=+o[t>>2];q=a+-8|0;s=+o[q>>2];m=a+-4|0;p=+o[m>>2];x=g;g=+o[a>>2];u=h;h=+o[a+4>>2];r=i;i=+o[a+8>>2];n=f;f=+o[a+12>>2];o[w>>2]=+o[w>>2]+(x+g)*e;o[t>>2]=v+(u+h)*e;o[q>>2]=s+(r+i)*e;o[m>>2]=p+(n+f)*e;j=j+1|0;if((j|0)==(d|0))break;else a=a+32|0}a=b+(k<<4)|0;b=b+(l<<4)|0}if((d|0)>=(c|0))return;f=e+e;g=f*+o[a>>2];h=f*+o[a+4>>2];i=f*+o[a+8>>2];f=f*+o[a+12>>2];while(1){m=b+-16|0;q=b+-12|0;u=+o[q>>2];t=b+-8|0;v=+o[t>>2];w=b+-4|0;x=+o[w>>2];o[m>>2]=g+ +o[m>>2];o[q>>2]=h+u;o[t>>2]=i+v;o[w>>2]=f+x;d=d+1|0;if((d|0)==(c|0))break;else b=b+32|0}return}function dh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,l=0,m=0,n=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;x=c<<2;y=Zc(c<<4)|0;if(!y){a=0;return a|0}z=y+x|0;_i(y|0,0,x|0)|0;v=c+-1|0;u=(c|0)==0;if(!u){d=0;e=y;while(1){k[e>>2]=d;d=d+1|0;if((d|0)==(c|0))break;else e=e+4|0}}a:do if(v){q=v;h=0;d=0;r=a;s=1;t=y;while(1){i=r+(h<<2)|0;if(h>>>0<c>>>0){g=h;e=i;f=0.0}else break;while(1){n=+o[e>>2];n=n>0.0?n:-n;w=n>f;d=w?g:d;f=w?n:f;g=g+1|0;if((g|0)==(c|0))break;else e=e+(c<<2)|0}if(f==0.0)break;if((d|0)!=(h|0)){w=d-h|0;p=t+(w<<2)|0;m=k[t>>2]|0;k[t>>2]=k[p>>2];k[p>>2]=m;w=r+((ha(w,c)|0)<<2)|0;cj(z|0,w|0,x|0)|0;cj(w|0,r|0,x|0)|0;cj(r|0,z|0,x|0)|0}e=h;p=h+1|0;n=+o[i>>2];if(s>>>0<c>>>0){j=r+(p<<2)|0;m=p+q|0;l=s;g=r+(e+c<<2)|0;while(1){f=+o[g>>2]/n;o[g>>2]=f;e=s;h=g;i=j;while(1){h=h+4|0;o[h>>2]=+o[h>>2]-f*+o[i>>2];e=e+1|0;if((e|0)==(c|0))break;else i=i+4|0}l=l+1|0;if((l|0)==(c|0))break;else g=g+(m<<2)|0}}if(p>>>0<v>>>0){q=q+-1|0;h=p;r=r+(c<<2)|0;s=s+1|0;t=t+4|0}else break a}cd(y);a=0;return a|0}while(0);d=c<<1;w=z+(d<<2)|0;if(!u){u=z+(v+c<<2)|0;q=z+(d+v<<2)|0;r=a+((ha(c,c)|0)+-1<<2)|0;s=~c;t=0;p=b;while(1){_i(z|0,0,x|0)|0;o[z+(t<<2)>>2]=1.0;h=0;i=1;j=y;l=w;m=a;while(1){if(!h)f=0.0;else{d=1;e=w;g=m;f=0.0;while(1){f=f+ +o[g>>2]*+o[e>>2];d=d+1|0;if((d|0)==(i|0))break;else{e=e+4|0;g=g+4|0}}}o[l>>2]=+o[z+(k[j>>2]<<2)>>2]-f;h=h+1|0;if((h|0)==(c|0)){h=c;i=u;j=w;l=q;m=r;break}else{i=i+1|0;j=j+4|0;l=l+4|0;m=m+(c<<2)|0}}while(1){d=h;h=h+-1|0;n=+o[m>>2];if(d>>>0<c>>>0){e=j;g=m;f=0.0;while(1){g=g+4|0;f=f+ +o[g>>2]*+o[e>>2];d=d+1|0;if((d|0)==(c|0))break;else e=e+4|0}}else f=0.0;j=j+-4|0;o[i>>2]=(+o[l>>2]-f)/n;if(!h){d=0;e=p;break}else{i=i+-4|0;l=l+-4|0;m=m+(s<<2)|0}}while(1){k[e>>2]=k[z+(d+c<<2)>>2];d=d+1|0;if((d|0)==(c|0))break;else e=e+(c<<2)|0}t=t+1|0;if((t|0)==(c|0))break;else p=p+4|0}}cd(y);a=1;return a|0}function eh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=_c(1,44)|0;if(!f){f=0;return f|0}g=rh()|0;k[f>>2]=g;if(!g){sh(0);k[f>>2]=0;g=f+4|0;Ih(k[g>>2]|0);k[g>>2]=0;if((k[f+40>>2]|0)==0?(c=f+8|0,b=k[c>>2]|0,(b|0)!=0):0){ad(b);k[c>>2]=0}b=f+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(f);g=0;return g|0}g=Hh()|0;b=f+4|0;k[b>>2]=g;if(g){k[f+40>>2]=a;g=f;return g|0}sh(k[f>>2]|0);k[f>>2]=0;Ih(k[b>>2]|0);k[b>>2]=0;if((k[f+40>>2]|0)==0?(d=f+8|0,e=k[d>>2]|0,(e|0)!=0):0){ad(e);k[d>>2]=0}b=f+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(f);g=0;return g|0}function fh(a){a=a|0;var b=0,c=0,d=0;if(!a)return;sh(k[a>>2]|0);k[a>>2]=0;d=a+4|0;Ih(k[d>>2]|0);k[d>>2]=0;if((k[a+40>>2]|0)==0?(b=a+8|0,c=k[b>>2]|0,(c|0)!=0):0){ad(c);k[b>>2]=0}b=a+12|0;c=k[b>>2]|0;if(c){ad(c);k[b>>2]=0}cd(a);return}function gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,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;ya=(k[b+8>>2]|0)-(k[b>>2]|0)|0;za=b+20|0;d=k[za>>2]|0;if(!d){a=1;return a|0}Aa=b+24|0;Ba=c+808|0;Ca=c+16|0;ta=a+4|0;va=a+8|0;wa=a+16|0;xa=a+20|0;sa=c+20|0;pa=b+32|0;qa=a+32|0;ra=a+12|0;c=d;oa=0;a:while(1){ma=k[Aa>>2]|0;na=ma+(oa*136|0)+24|0;b=k[na>>2]|0;if(b){ja=ma+(oa*136|0)+16|0;ka=ma+(oa*136|0)+20|0;la=oa+-1|0;c=k[ka>>2]|0;d=k[ja>>2]|0;ia=0;do{if(ha(c,d)|0){ca=ma+(oa*136|0)+28+(ia*36|0)+20|0;da=ma+(oa*136|0)+28+(ia*36|0)+16|0;ea=ma+(oa*136|0)+28+(ia*36|0)|0;fa=ma+(oa*136|0)+28+(ia*36|0)+4|0;ga=ma+(oa*136|0)+28+(ia*36|0)+32|0;ba=0;do{b=k[ca>>2]|0;$=b+(ba*40|0)+16|0;aa=b+(ba*40|0)+20|0;if(ha(k[aa>>2]|0,k[$>>2]|0)|0){Z=b+(ba*40|0)+24|0;_=0;do{c=k[Z>>2]|0;S=k[da>>2]|0;e=k[Ba>>2]|0;b=k[Ca>>2]|0;T=k[ta>>2]|0;U=k[a>>2]|0;V=c+(_*56|0)+8|0;Y=c+(_*56|0)+12|0;if(!(ih(a,(k[c+(_*56|0)+16>>2]|0)-(k[V>>2]|0)|0,(k[c+(_*56|0)+20>>2]|0)-(k[Y>>2]|0)|0)|0)){c=0;G=201;break a}W=c+(_*56|0)+24|0;f=k[W>>2]|0;Ah(U);Bh(U,18,0,46);Bh(U,17,0,3);Bh(U,0,0,4);X=c+(_*56|0)+48|0;d=k[X>>2]|0;if(d){N=c+(_*56|0)+4|0;O=(b&1|0)!=0;P=(b&2|0)==0;Q=(b&8|0)==0;R=S<<8;M=(b&32|0)==0;b=f+e|0;c=2;L=0;do{f=k[N>>2]|0;K=O&(c>>>0<2?(b|0)<=((k[W>>2]|0)+-4|0):0);e=k[f+(L<<5)>>2]|0;if(e){d=(k[e>>2]|0)+(k[f+(L<<5)+4>>2]|0)|0;e=k[f+(L<<5)+16>>2]|0;if(!K){if(!(Fh(U,d,e)|0)){c=0;G=201;break a}}else Jh(T,d,e);I=f+(L<<5)+12|0;b:do if(k[I>>2]|0){J=P|K;H=0;while(1){c:do switch(c|0){case 0:{if(K){w=1<<b;w=w>>1|w;e=k[xa>>2]|0;if(!e)break c;v=0-w|0;d=k[wa>>2]|0;u=0;while(1){t=u;u=u+4|0;if(!d)d=0;else{q=(t|0)==-4;r=t|3;s=0;do{d:do if(!q)if(Q){n=t;do{if(n>>>0>=(k[xa>>2]|0)>>>0)break d;h=n;n=n+1|0;d=(ha(k[qa>>2]|0,n)|0)+s|0;e=d+1|0;f=k[ra>>2]|0;g=f+(e<<1)|0;h=(ha(k[wa>>2]|0,h)|0)+s|0;h=(k[va>>2]|0)+(h<<2)|0;i=k[ta>>2]|0;G=j[g>>1]|0;if((G&255|0)!=0&(G&20480|0)==0){if(Kh(i)|0){D=Kh(i)|0;k[h>>2]=(D|0)!=0?v:w;F=k[qa>>2]|0;G=f+(e-F<<1)|0;E=f+(F+e<<1)|0;C=f+(e+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=d+2|0;C=f+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=f+(d<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[g>>1]=m[g>>1]|4096;C=f+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=f+(F+d<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=f+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[g>>1]=m[g>>1]|16384}}while(n>>>0<u>>>0)}else{p=t;do{d=k[xa>>2]|0;if(p>>>0>=d>>>0)break d;F=p;p=p+1|0;e=(ha(k[qa>>2]|0,p)|0)+s|0;f=e+1|0;g=k[ra>>2]|0;h=g+(f<<1)|0;i=(ha(k[wa>>2]|0,F)|0)+s|0;i=(k[va>>2]|0)+(i<<2)|0;n=k[ta>>2]|0;G=j[h>>1]|0;G=(F|0)==(r|0)|(F|0)==(d+-1|0)?G&-1095:G;if((G&255|0)!=0&(G&20480|0)==0){if(Kh(n)|0){D=Kh(n)|0;k[i>>2]=(D|0)!=0?v:w;F=k[qa>>2]|0;G=g+(f-F<<1)|0;E=g+(F+f<<1)|0;C=g+(f+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=e+2|0;C=g+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=g+(e<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[h>>1]=m[h>>1]|4096;C=g+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=g+(F+e<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=g+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[h>>1]=m[h>>1]|16384}}while(p>>>0<u>>>0)}while(0);s=s+1|0;d=k[wa>>2]|0}while(s>>>0<d>>>0);e=k[xa>>2]|0}if(u>>>0>=e>>>0){G=163;break c}}}if(Q){f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;r=1<<b;r=r>>1|r;d=k[xa>>2]|0;e=k[wa>>2]|0;if(d>>>0>3){n=e;i=0;while(1){if(!e){e=n;h=0}else{e=0;do{G=(k[qa>>2]|0)+e|0;jh(a,g+(G<<1)|0,f+(e<<2)|0,S,r);d=(k[wa>>2]|0)+e|0;G=(k[qa>>2]|0)+G|0;jh(a,g+(G<<1)|0,f+(d<<2)|0,S,r);d=(k[wa>>2]|0)+d|0;G=(k[qa>>2]|0)+G|0;jh(a,g+(G<<1)|0,f+(d<<2)|0,S,r);jh(a,g+((k[qa>>2]|0)+G<<1)|0,f+((k[wa>>2]|0)+d<<2)|0,S,r);e=e+1|0;d=k[wa>>2]|0}while(e>>>0<d>>>0);e=d;h=d;d=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=g+(k[qa>>2]<<2<<1)|0;i=i+4|0;if(i>>>0<(d&-4)>>>0){n=e;e=h}else{q=g;p=i;break}}}else{q=g;p=0}if(!e){G=163;break c}else n=0;while(1){if(p>>>0<d>>>0){g=f+(n<<2)|0;h=q+(n<<1)|0;i=p;while(1){h=h+(k[qa>>2]<<1)|0;jh(a,h,g,S,r);e=k[wa>>2]|0;i=i+1|0;d=k[xa>>2]|0;if(i>>>0>=d>>>0)break;else g=g+(e<<2)|0}}n=n+1|0;if(n>>>0>=e>>>0){G=163;break c}}}w=1<<b;w=w>>1|w;d=k[xa>>2]|0;if(!d){G=163;break c}x=0-w|0;e=k[wa>>2]|0;g=e;v=0;while(1){u=v;v=v+4|0;do if(!e){f=g;e=0}else{t=u|3;if((u|0)==-4){f=g;e=g;break}else s=0;do{r=u;do{d=k[xa>>2]|0;if(r>>>0>=d>>>0)break;G=r;r=r+1|0;g=(ha(k[qa>>2]|0,r)|0)+s|0;h=g+1|0;i=k[ra>>2]|0;n=i+(h<<1)|0;p=(ha(k[wa>>2]|0,G)|0)+s|0;p=(k[va>>2]|0)+(p<<2)|0;q=k[a>>2]|0;e=j[n>>1]|0;d=(G|0)==(t|0)|(G|0)==(d+-1|0)?e&-1095:e;e=d&255;if((e|0)!=0&(d&20480|0)==0){f=q+100|0;k[f>>2]=q+24+(l[20267+(e|R)>>0]<<2);if(Gh(q)|0){F=d>>>4&255;k[f>>2]=q+24+(l[21291+F>>0]<<2);G=Gh(q)|0;F=l[21547+F>>0]|0;D=F^G;k[p>>2]=(G|0)!=(F|0)?x:w;F=k[qa>>2]|0;G=i+(h-F<<1)|0;E=i+(F+h<<1)|0;C=i+(h+~F<<1)|0;j[C>>1]=m[C>>1]|2;j[G>>1]=j[G>>1]|j[3436+(D<<1)>>1];G=g+2|0;C=i+(G-F<<1)|0;j[C>>1]=m[C>>1]|4;C=i+(g<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+2<<1)>>1];j[n>>1]=m[n>>1]|4096;C=i+(G<<1)|0;j[C>>1]=j[C>>1]|j[3436+(D+4<<1)>>1];C=i+(F+g<<1)|0;j[C>>1]=m[C>>1]|1;j[E>>1]=j[E>>1]|j[3436+(D+6<<1)>>1];G=i+(F+G<<1)|0;j[G>>1]=m[G>>1]|8}j[n>>1]=m[n>>1]|16384}}while(r>>>0<v>>>0);s=s+1|0;d=k[wa>>2]|0}while(s>>>0<d>>>0);f=d;e=d;d=k[xa>>2]|0}while(0);if(v>>>0>=d>>>0){G=163;break}else g=f}break}case 1:{if(K){q=1<<b>>1;r=(b|0)>0?0-q|0:-1;e=k[xa>>2]|0;if(!e)break c;f=k[wa>>2]|0;d=f;p=0;while(1){n=p;p=p+4|0;if(!f){g=d;f=0}else{i=(n|0)==-4;h=0;do{g=h;h=h+1|0;if(!i){f=n;do{if(f>>>0>=(k[xa>>2]|0)>>>0)break;e=f;f=f+1|0;d=(ha(k[qa>>2]|0,f)|0)+h|0;d=(k[ra>>2]|0)+(d<<1)|0;e=(ha(k[wa>>2]|0,e)|0)+g|0;e=(k[va>>2]|0)+(e<<2)|0;if((j[d>>1]&20480)==4096){F=(Kh(k[ta>>2]|0)|0)!=0;F=F?q:r;G=k[e>>2]|0;k[e>>2]=((G|0)<0?0-F|0:F)+G;j[d>>1]=m[d>>1]|8192}}while(f>>>0<p>>>0);d=k[wa>>2]|0}}while(h>>>0<d>>>0);g=d;f=d;e=k[xa>>2]|0}if(p>>>0>=e>>>0){G=163;break c}else d=g}}if(!Q){t=1<<b>>1;u=(b|0)>0?0-t|0:-1;d=k[xa>>2]|0;if(!d){G=163;break c}e=k[wa>>2]|0;f=e;s=0;while(1){r=s;s=s+4|0;if(!e)e=0;else{p=(r|0)==-4;q=r|3;d=f;n=0;do{i=n;n=n+1|0;if(!p){g=r;do{d=k[xa>>2]|0;if(g>>>0>=d>>>0)break;F=g;g=g+1|0;e=(ha(k[qa>>2]|0,g)|0)+n|0;e=(k[ra>>2]|0)+(e<<1)|0;f=(ha(k[wa>>2]|0,F)|0)+i|0;f=(k[va>>2]|0)+(f<<2)|0;h=k[a>>2]|0;G=j[e>>1]|0;d=(F|0)==(q|0)|(F|0)==(d+-1|0)?G&-1095:G;if((d&20480|0)==4096){k[h+100>>2]=h+24+(((d&8192|0)!=0?16:(d&255|0)!=0?15:14)<<2);F=(Gh(h)|0)!=0;F=F?t:u;G=k[f>>2]|0;k[f>>2]=((G|0)<0?0-F|0:F)+G;j[e>>1]=m[e>>1]|8192}}while(g>>>0<s>>>0);d=k[wa>>2]|0}}while(n>>>0<d>>>0);f=d;e=d;d=k[xa>>2]|0}if(s>>>0>=d>>>0){G=163;break c}}}f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;v=1<<b>>1;w=(b|0)>0?0-v|0:-1;d=k[xa>>2]|0;e=k[wa>>2]|0;if(d>>>0>3){i=e;t=g;u=0;while(1){if(!e){e=i;h=0}else{d=i;s=0;do{e=f+(s<<2)|0;i=k[qa>>2]|0;p=i+s|0;g=t+(p<<1)|0;n=k[a>>2]|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[n+100>>2]=n+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);i=(Gh(n)|0)!=0;i=i?v:w;d=k[e>>2]|0;k[e>>2]=((d|0)<0?0-i|0:i)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}else{e=i;i=n}q=d+s|0;n=f+(q<<2)|0;r=e+p|0;g=t+(r<<1)|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);e=(Gh(i)|0)!=0;e=e?v:w;d=k[n>>2]|0;k[n>>2]=((d|0)<0?0-e|0:e)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}p=d+q|0;n=f+(p<<2)|0;q=e+r|0;g=t+(q<<1)|0;h=j[g>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);e=(Gh(i)|0)!=0;e=e?v:w;d=k[n>>2]|0;k[n>>2]=((d|0)<0?0-e|0:e)+d;j[g>>1]=m[g>>1]|8192;d=k[wa>>2]|0;e=k[qa>>2]|0;i=k[a>>2]|0}h=f+(d+p<<2)|0;e=t+(e+q<<1)|0;g=j[e>>1]|0;if((g&20480|0)==4096){k[i+100>>2]=i+24+(((g&8192|0)!=0?16:(g&255|0)!=0?15:14)<<2);G=(Gh(i)|0)!=0;G=G?v:w;d=k[h>>2]|0;k[h>>2]=((d|0)<0?0-G|0:G)+d;j[e>>1]=m[e>>1]|8192;d=k[wa>>2]|0}s=s+1|0}while(s>>>0<d>>>0);e=d;h=d;d=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=t+(k[qa>>2]<<2<<1)|0;n=u+4|0;if(n>>>0<(d&-4)>>>0){i=e;e=h;t=g;u=n}else{s=n;break}}}else s=0;if(!e){G=163;break c}else r=0;do{if(s>>>0<d>>>0){n=f+(r<<2)|0;p=g+(r<<1)|0;q=s;while(1){p=p+(k[qa>>2]<<1)|0;i=k[a>>2]|0;h=j[p>>1]|0;if((h&20480|0)==4096){k[i+100>>2]=i+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);d=(Gh(i)|0)!=0;d=d?v:w;h=k[n>>2]|0;k[n>>2]=((h|0)<0?0-d|0:d)+h;j[p>>1]=m[p>>1]|8192;h=k[wa>>2]|0;d=k[xa>>2]|0}else h=e;q=q+1|0;if(q>>>0>=d>>>0){e=h;break}else{e=h;n=n+(h<<2)|0}}}r=r+1|0}while(r>>>0<e>>>0);G=163;break}case 2:{E=k[a>>2]|0;F=1<<b;F=F>>1|F;do if(Q){f=k[va>>2]|0;g=(k[ra>>2]|0)+2|0;e=k[xa>>2]|0;if(e>>>0>3){w=E+92|0;x=E+100|0;y=E+96|0;z=0-F|0;h=k[wa>>2]|0;d=h;n=0;while(1){if(!h)h=0;else{r=n|1;s=r+1|0;t=n|3;u=r+3|0;v=0;do{d=k[qa>>2]|0;e=v;v=v+1|0;C=(ha(d,r)|0)+v|0;B=k[ra>>2]|0;A=B+((ha(d,s)|0)+v<<1)|0;D=B+((ha(d,t)|0)+v<<1)|0;G=B+((ha(d,u)|0)+v<<1)|0;e:do if(!((j[A>>1]|j[B+(C<<1)>>1]|j[D>>1]|j[G>>1])&20735)){k[x>>2]=w;if(!(Gh(E)|0))break;k[x>>2]=y;p=(Gh(E)|0)<<1;p=p|(Gh(E)|0);if(p>>>0>=4)break;q=f+((ha(k[wa>>2]|0,p)|0)+e<<2)|0;e=g+((ha(k[qa>>2]|0,p)|0)+e<<1)|0;i=p;while(1){if(i>>>0>=(k[xa>>2]|0)>>>0)break e;d=k[qa>>2]|0;h=e;e=e+(d<<1)|0;if((i|0)==(p|0)){G=k[a>>2]|0;D=(m[e>>1]|0)>>>4&255;k[G+100>>2]=G+24+(l[21291+D>>0]<<2);G=Gh(G)|0;D=l[21547+D>>0]|0;B=D^G;k[q>>2]=(G|0)!=(D|0)?z:F;D=k[qa>>2]|0;G=h+(d-D<<1)|0;C=h+(D+d<<1)|0;A=h+(d+~D<<1)|0;j[A>>1]=m[A>>1]|2;j[G>>1]=j[G>>1]|j[3436+(B<<1)>>1];G=d+1|0;A=h+(G-D<<1)|0;j[A>>1]=m[A>>1]|4;A=d+-1|0;d=h+(A<<1)|0;j[d>>1]=j[d>>1]|j[3436+(B+2<<1)>>1];j[e>>1]=m[e>>1]|4096;d=h+(G<<1)|0;j[d>>1]=j[d>>1]|j[3436+(B+4<<1)>>1];A=h+(D+A<<1)|0;j[A>>1]=m[A>>1]|1;j[C>>1]=j[C>>1]|j[3436+(B+6<<1)>>1];G=h+(D+G<<1)|0;j[G>>1]=m[G>>1]|8;j[e>>1]=m[e>>1]&49151}else kh(a,e,q,S,F);i=i+1|0;if(i>>>0>=4)break;else q=q+(k[wa>>2]<<2)|0}}else{D=d+e|0;kh(a,g+(D<<1)|0,f+(e<<2)|0,S,F);G=(k[wa>>2]|0)+e|0;D=(k[qa>>2]|0)+D|0;kh(a,g+(D<<1)|0,f+(G<<2)|0,S,F);G=(k[wa>>2]|0)+G|0;D=(k[qa>>2]|0)+D|0;kh(a,g+(D<<1)|0,f+(G<<2)|0,S,F);kh(a,g+((k[qa>>2]|0)+D<<1)|0,f+((k[wa>>2]|0)+G<<2)|0,S,F)}while(0);d=k[wa>>2]|0}while(v>>>0<d>>>0);h=d;e=k[xa>>2]|0}f=f+(h<<2<<2)|0;g=g+(k[qa>>2]<<2<<1)|0;n=n+4|0;if(n>>>0>=(e&-4)>>>0){q=f;p=g;break}}}else{d=k[wa>>2]|0;q=f;p=g;n=0}if(!d)break;else i=0;do{if(n>>>0<e>>>0){f=q+(i<<2)|0;g=p+(i<<1)|0;h=n;while(1){g=g+(k[qa>>2]<<1)|0;kh(a,g,f,S,F);d=k[wa>>2]|0;h=h+1|0;e=k[xa>>2]|0;if(h>>>0>=e>>>0)break;else f=f+(d<<2)|0}}i=i+1|0}while(i>>>0<d>>>0)}else{d=k[xa>>2]|0;if(!d)break;A=E+92|0;B=E+100|0;C=E+96|0;D=0-F|0;e=k[wa>>2]|0;z=0;while(1){if(!e){f=z+4|0;e=0}else{v=z|3;w=z|1;x=w+1|0;y=w+3|0;f=z+4|0;u=0;while(1){do if(v>>>0<d>>>0){d=k[qa>>2]|0;g=u+1|0;t=(ha(d,w)|0)+g|0;e=k[ra>>2]|0;if(j[e+(t<<1)>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,x)|0)+g<<1)|0;if(j[t>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,v)|0)+g<<1)|0;if(j[t>>1]&20735){t=0;d=0;G=127;break}t=e+((ha(d,y)|0)+g<<1)|0;if(j[t>>1]&20665){t=0;d=0;G=127;break}k[B>>2]=A;if(!(Gh(E)|0))break;k[B>>2]=C;d=(Gh(E)|0)<<1;t=1;d=d|(Gh(E)|0);G=127}else{t=0;d=0;G=127}while(0);if((G|0)==127){G=0;g=d+z|0;f:do if(g>>>0<f>>>0){s=g;do{d=k[xa>>2]|0;if(s>>>0>=d>>>0)break f;Da=s;s=s+1|0;h=(ha(k[qa>>2]|0,s)|0)+u|0;i=h+1|0;n=k[ra>>2]|0;p=n+(i<<1)|0;q=(ha(k[wa>>2]|0,Da)|0)+u|0;q=(k[va>>2]|0)+(q<<2)|0;r=k[a>>2]|0;e=j[p>>1]|0;e=(Da|0)==(v|0)|(Da|0)==(d+-1|0)?e&-1095:e;do if(!(t&(Da|0)==(g|0))){if(e&20480)break;d=r+100|0;k[d>>2]=r+24+(l[20267+(e&255|R)>>0]<<2);if(Gh(r)|0)G=133}else{d=r+100|0;G=133}while(0);if((G|0)==133){G=0;e=e>>>4&255;k[d>>2]=r+24+(l[21291+e>>0]<<2);Da=Gh(r)|0;r=l[21547+e>>0]|0;e=r^Da;k[q>>2]=(Da|0)!=(r|0)?D:F;r=k[qa>>2]|0;Da=n+(i-r<<1)|0;q=n+(r+i<<1)|0;i=n+(i+~r<<1)|0;j[i>>1]=m[i>>1]|2;j[Da>>1]=j[Da>>1]|j[3436+(e<<1)>>1];Da=h+2|0;i=n+(Da-r<<1)|0;j[i>>1]=m[i>>1]|4;i=n+(h<<1)|0;j[i>>1]=j[i>>1]|j[3436+(e+2<<1)>>1];j[p>>1]=m[p>>1]|4096;i=n+(Da<<1)|0;j[i>>1]=j[i>>1]|j[3436+(e+4<<1)>>1];i=n+(r+h<<1)|0;j[i>>1]=m[i>>1]|1;j[q>>1]=j[q>>1]|j[3436+(e+6<<1)>>1];Da=n+(r+Da<<1)|0;j[Da>>1]=m[Da>>1]|8}j[p>>1]=m[p>>1]&49151}while(s>>>0<f>>>0)}while(0);g=u+1|0}e=k[wa>>2]|0;d=k[xa>>2]|0;if(g>>>0<e>>>0)u=g;else break}}if(f>>>0<d>>>0)z=f;else break}}while(0);if(M){G=163;break c}k[E+100>>2]=E+96;Gh(E)|0;Gh(E)|0;Gh(E)|0;Gh(E)|0;G=163;break}default:G=163}while(0);do if((G|0)==163){G=0;if(J)break;Ah(U);Bh(U,18,0,46);Bh(U,17,0,3);Bh(U,0,0,4)}while(0);c=c+1|0;Da=(c|0)==3;b=(Da<<31>>31)+b|0;c=Da?0:c;H=H+1|0;if(H>>>0>=(k[I>>2]|0)>>>0)break b}}while(0);d=k[X>>2]|0}L=L+1|0}while(L>>>0<d>>>0)}c=(k[V>>2]|0)-(k[ea>>2]|0)|0;b=(k[Y>>2]|0)-(k[fa>>2]|0)|0;d=k[da>>2]|0;if(d&1){Da=k[Aa>>2]|0;c=(k[Da+(la*136|0)+8>>2]|0)+c-(k[Da+(la*136|0)>>2]|0)|0}if(d&2){Da=k[Aa>>2]|0;b=(k[Da+(la*136|0)+12>>2]|0)+b-(k[Da+(la*136|0)+4>>2]|0)|0}p=k[va>>2]|0;q=k[wa>>2]|0;r=k[xa>>2]|0;d=k[Ba>>2]|0;if((d|0)!=0?(ua=1<<d,(r|0)!=0):0){d=(q|0)==0;n=0;do{if(!d){e=ha(n,q)|0;i=0;do{f=p+(i+e<<2)|0;g=k[f>>2]|0;h=(g|0)>-1?g:0-g|0;if((h|0)>=(ua|0)){Da=h>>k[Ba>>2];k[f>>2]=(g|0)<0?0-Da|0:Da}i=i+1|0}while((i|0)!=(q|0))}n=n+1|0}while((n|0)!=(r|0))}i=(ha(b,ya)|0)+c|0;n=k[pa>>2]|0;c=(r|0)==0;if((k[sa>>2]|0)==1){if(!c){c=(q|0)==0;f=0;do{if(!c){b=ha(f,q)|0;d=(ha(f,ya)|0)+i|0;e=0;do{k[n+(d+e<<2)>>2]=(k[p+(e+b<<2)>>2]|0)/2|0;e=e+1|0}while((e|0)!=(q|0))}f=f+1|0}while((f|0)!=(r|0))}}else if(!c){h=(q|0)==0;c=p;g=0;f=n+(i<<2)|0;while(1){if(!h){b=c;d=0;e=f;while(1){o[e>>2]=+(k[b>>2]|0)*+o[ga>>2];d=d+1|0;if((d|0)==(q|0))break;else{b=b+4|0;e=e+4|0}}c=c+(q<<2)|0}g=g+1|0;if((g|0)==(r|0))break;else f=f+(ya<<2)|0}}_=_+1|0}while(_>>>0<(ha(k[aa>>2]|0,k[$>>2]|0)|0)>>>0);c=k[ka>>2]|0;d=k[ja>>2]|0}ba=ba+1|0}while(ba>>>0<(ha(c,d)|0)>>>0);b=k[na>>2]|0}ia=ia+1|0}while(ia>>>0<b>>>0);c=k[za>>2]|0}oa=oa+1|0;if(oa>>>0>=c>>>0){c=1;G=201;break}}if((G|0)==201)return c|0;return 0}function hh(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,n=0,q=0,r=0,s=0.0,t=0.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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0.0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0;Ya=b+32|0;p[Ya>>3]=0.0;Za=b+16|0;f=k[Za>>2]|0;if(!f){_a=1;return _a|0}Xa=b+20|0;Sa=c+5584|0;Ta=a+16|0;Ua=a+20|0;Va=a+8|0;Wa=a+36|0;Pa=(d|0)!=0;Qa=a+32|0;Ra=a+12|0;b=f;Oa=0;a:while(1){c=k[Xa>>2]|0;f=k[Sa>>2]|0;Ma=(k[c+(Oa*52|0)+8>>2]|0)-(k[c+(Oa*52|0)>>2]|0)|0;Na=c+(Oa*52|0)+16|0;g=k[Na>>2]|0;if(g){La=c+(Oa*52|0)+24|0;Ja=c+(Oa*52|0)+32|0;Ka=f+(Oa*1080|0)+20|0;Ga=f+(Oa*1080|0)+16|0;Ia=Pa&Oa>>>0<e>>>0;Ha=d+(Oa<<3)|0;b=g;Fa=0;do{Da=k[La>>2]|0;Ea=Da+(Fa*136|0)+24|0;c=k[Ea>>2]|0;if(c){za=Da+(Fa*136|0)+16|0;Aa=Da+(Fa*136|0)+20|0;Ba=~Fa;Ca=Fa+-1|0;b=k[Aa>>2]|0;f=k[za>>2]|0;ya=0;do{xa=Da+(Fa*136|0)+28+(ya*36|0)+32|0;if(ha(b,f)|0){ra=67108864/(~~+V(+(+o[xa>>2]*8192.0))|0)|0;sa=Da+(Fa*136|0)+28+(ya*36|0)+20|0;ta=Da+(Fa*136|0)+28+(ya*36|0)|0;ua=Da+(Fa*136|0)+28+(ya*36|0)+4|0;va=Da+(Fa*136|0)+28+(ya*36|0)+16|0;wa=((ra|0)<0)<<31>>31;qa=0;do{c=k[sa>>2]|0;oa=c+(qa*40|0)+16|0;pa=c+(qa*40|0)+20|0;if(ha(k[pa>>2]|0,k[oa>>2]|0)|0){ma=c+(qa*40|0)+24|0;na=0;do{la=k[ma>>2]|0;g=k[la+(na*52|0)+12>>2]|0;b=g-(k[ta>>2]|0)|0;h=k[la+(na*52|0)+16>>2]|0;c=h-(k[ua>>2]|0)|0;f=k[va>>2]|0;if(f&1){ka=k[La>>2]|0;b=(k[ka+(Ca*136|0)+8>>2]|0)+b-(k[ka+(Ca*136|0)>>2]|0)|0}if(f&2){ka=k[La>>2]|0;c=(k[ka+(Ca*136|0)+12>>2]|0)+c-(k[ka+(Ca*136|0)+4>>2]|0)|0}if(!(ih(a,(k[la+(na*52|0)+20>>2]|0)-g|0,(k[la+(na*52|0)+24>>2]|0)-h|0)|0)){b=0;_a=173;break a}n=k[Ta>>2]|0;q=k[Ua>>2]|0;r=Ma-n|0;u=(ha(c,Ma)|0)+b|0;v=k[Ja>>2]|0;k[Va>>2]=v+(u<<2);k[Wa>>2]=Ma;b=(q|0)==0;if((k[Ka>>2]|0)==1){if(!b){g=(n|0)==0;h=0;b=0;while(1){if(!g){c=0;f=b;while(1){ka=v+(f+u<<2)|0;k[ka>>2]=k[ka>>2]<<6;c=c+1|0;if((c|0)==(n|0))break;else f=f+1|0}b=n+b|0}h=h+1|0;if((h|0)==(q|0))break;else b=b+r|0}}}else if(!b){g=(n|0)==0;h=0;b=0;while(1){if(!g){c=0;f=b;while(1){ka=v+(f+u<<2)|0;ja=k[ka>>2]|0;ja=hj(ja|0,((ja|0)<0)<<31>>31|0,ra|0,wa|0)|0;ja=aj(ja|0,L|0,4096,0)|0;ja=bj(ja|0,L|0,18)|0;k[ka>>2]=ja;c=c+1|0;if((c|0)==(n|0))break;else f=f+1|0}b=n+b|0}h=h+1|0;if((h|0)==(q|0))break;else b=b+r|0}}fa=k[va>>2]|0;ga=(k[Na>>2]|0)+Ba|0;r=k[Ka>>2]|0;ia=+o[xa>>2];ja=k[Ga>>2]|0;ka=k[a>>2]|0;g=k[Ta>>2]|0;do if(!g)b=0;else{h=k[Ua>>2]|0;n=(h|0)==0;q=0;b=0;do{if(!n){c=k[Wa>>2]|0;f=0;do{ea=v+(u+((ha(f,c)|0)+q)<<2)|0;ea=k[ea>>2]|0;ea=(ea|0)>-1?ea:0-ea|0;b=(b|0)>(ea|0)?b:ea;f=f+1|0}while((f|0)!=(h|0))}q=q+1|0}while((q|0)!=(g|0));if(!b){b=0;break}if((b|0)>1){c=b;b=0}else{b=-5;break}while(1){c=c>>1;if((c|0)<=1)break;else b=b+1|0}b=b+-4|0}while(0);da=la+(na*52|0)+28|0;k[da>>2]=b;b=b+-1|0;Ah(ka);Bh(ka,18,0,46);Bh(ka,17,0,3);Bh(ka,0,0,4);ea=la+(na*52|0)|0;uh(ka,k[ea>>2]|0);b:do if((b|0)>-1){ba=la+(na*52|0)+8|0;W=ja&1;ca=(W|0)!=0;X=(r|0)==1;Y=(ja&4|0)==0;W=(W|0)==0;Z=(ja&2|0)==0;_=(ja&8|0)==0;$=fa<<8;aa=(ja&32|0)==0;c=0;S=b;T=0.0;b=0;U=2;while(1){R=k[ba>>2]|0;H=ca&(U>>>0<2?(S|0)<((k[da>>2]|0)+-4|0):0);c:do switch(U|0){case 0:{F=1<<S+6;c=k[Ua>>2]|0;if(!c){g=0;break c}G=(S|0)==0;h=k[Ta>>2]|0;f=h;g=0;E=0;do{D=E;E=E+4|0;if(!f)f=0;else{B=(D|0)==-4;C=D|3;f=h;A=0;do{if(!B){z=D;do{c=k[Ua>>2]|0;if(z>>>0>=c>>>0)break;do if(_)c=0;else{if((z|0)==(C|0)){c=1;break}c=(z|0)==(c+-1|0)}while(0);n=z;z=z+1|0;u=(ha(k[Qa>>2]|0,z)|0)+A|0;v=u+1|0;w=k[Ra>>2]|0;y=w+(v<<1)|0;n=(ha(k[Wa>>2]|0,n)|0)+A|0;n=(k[Va>>2]|0)+(n<<2)|0;x=k[a>>2]|0;q=j[y>>1]|0;q=c?q&-1095:q;c=q&255;if((c|0)!=0&(q&20480|0)==0){f=k[n>>2]|0;f=(((f|0)<0?0-f|0:f)&F|0)!=0;h=f&1;r=x+100|0;k[r>>2]=x+24+(l[20267+(c|$)>>0]<<2);if(H)yh(x,h);else vh(x,h);if(f){c=k[n>>2]|0;f=c>>>31;c=(c|0)<0?0-c|0:c;if(G)c=3708+((c&127)<<1)|0;else c=3452+((c>>>S&127)<<1)|0;g=(j[c>>1]|0)+g|0;c=q>>>4&255;k[r>>2]=x+24+(l[21291+c>>0]<<2);if(H)yh(x,f);else vh(x,l[21547+c>>0]^f);P=k[Qa>>2]|0;Q=w+(v-P<<1)|0;O=w+(P+v<<1)|0;N=w+(v+~P<<1)|0;j[N>>1]=m[N>>1]|2;j[Q>>1]=j[Q>>1]|j[3436+(f<<1)>>1];Q=u+2|0;N=w+(Q-P<<1)|0;j[N>>1]=m[N>>1]|4;N=w+(u<<1)|0;j[N>>1]=j[N>>1]|j[3436+((f|2)<<1)>>1];j[y>>1]=m[y>>1]|4096;N=w+(Q<<1)|0;j[N>>1]=j[N>>1]|j[3436+((f|4)<<1)>>1];N=w+(P+u<<1)|0;j[N>>1]=m[N>>1]|1;j[O>>1]=j[O>>1]|j[3436+((f|6)<<1)>>1];Q=w+(P+Q<<1)|0;j[Q>>1]=m[Q>>1]|8}j[y>>1]=m[y>>1]|16384}}while(z>>>0<E>>>0);f=k[Ta>>2]|0}A=A+1|0}while(A>>>0<f>>>0);c=k[Ua>>2]|0;h=f}}while(E>>>0<c>>>0);break}case 1:{A=1<<S+6;c=k[Ua>>2]|0;if(!c){g=0;break c}B=(S|0)==0;h=k[Ta>>2]|0;f=h;g=0;z=0;do{y=z;z=z+4|0;if(!f)f=0;else{w=(y|0)==-4;x=y|3;f=h;v=0;do{u=v;v=v+1|0;if(!w){r=y;do{c=k[Ua>>2]|0;if(r>>>0>=c>>>0)break;do if(_)c=0;else{if((r|0)==(x|0)){c=1;break}c=(r|0)==(c+-1|0)}while(0);f=r;r=r+1|0;n=(ha(k[Qa>>2]|0,r)|0)+v|0;n=(k[Ra>>2]|0)+(n<<1)|0;q=k[a>>2]|0;h=j[n>>1]|0;h=c?h&-1095:h;if((h&20480|0)==4096){f=(k[Va>>2]|0)+((ha(k[Wa>>2]|0,f)|0)+u<<2)|0;f=k[f>>2]|0;f=(f|0)<0?0-f|0:f;if(B)c=4220+((f&127)<<1)|0;else c=3964+((f>>>S&127)<<1)|0;g=(j[c>>1]|0)+g|0;c=(f&A|0)!=0&1;k[q+100>>2]=q+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);if(H)yh(q,c);else vh(q,c);j[n>>1]=m[n>>1]|8192}}while(r>>>0<z>>>0);f=k[Ta>>2]|0}}while(v>>>0<f>>>0);c=k[Ua>>2]|0;h=f}}while(z>>>0<c>>>0);break}case 2:{K=k[a>>2]|0;M=1<<S+6;f=k[Ua>>2]|0;if(!f)c=0;else{N=K+92|0;O=K+100|0;P=K+96|0;Q=(S|0)==0;g=k[Ta>>2]|0;c=0;J=0;while(1){if(!g){h=J+4|0;g=0}else{C=J|3;D=J|1;E=D+1|0;F=D+3|0;h=J+4|0;G=J+1|0;H=J+2|0;I=J+3|0;B=0;while(1){do if(C>>>0<f>>>0){f=k[Qa>>2]|0;q=B+1|0;n=(ha(f,D)|0)+q|0;g=k[Ra>>2]|0;n=j[g+(n<<1)>>1]|0;if(_){z=g+((ha(f,E)|0)+q<<1)|0;A=g+((ha(f,C)|0)+q<<1)|0;f=g+((ha(f,F)|0)+q<<1)|0;f=((j[z>>1]|n|j[A>>1]|j[f>>1])&20735)==0&1}else{do if(!(n&20735)){A=g+((ha(f,E)|0)+q<<1)|0;if(j[A>>1]&20735){f=1;break}A=g+((ha(f,C)|0)+q<<1)|0;if(j[A>>1]&20735){f=1;break}f=g+((ha(f,F)|0)+q<<1)|0;f=(j[f>>1]&20665)!=0}else f=1;while(0);f=f&1^1}if(!f){A=0;f=0;_a=109;break}f=k[Wa>>2]|0;g=k[Va>>2]|0;A=g+((ha(f,J)|0)+B<<2)|0;A=k[A>>2]|0;do if(!(((A|0)<0?0-A|0:A)&M)){A=g+((ha(f,G)|0)+B<<2)|0;A=k[A>>2]|0;if(((A|0)<0?0-A|0:A)&M){f=1;break}A=g+((ha(f,H)|0)+B<<2)|0;A=k[A>>2]|0;if(((A|0)<0?0-A|0:A)&M){f=2;break}f=g+((ha(f,I)|0)+B<<2)|0;f=k[f>>2]|0;f=(((f|0)<0?0-f|0:f)&M|0)==0?4:3}else f=0;while(0);k[O>>2]=N;vh(K,(f|0)!=4&1);if((f|0)==4){n=q;break}k[O>>2]=P;vh(K,f>>>1);vh(K,f&1);A=1;_a=109}else{A=0;f=0;_a=109}while(0);if((_a|0)==109){_a=0;z=f+J|0;d:do if(z>>>0<h>>>0){y=z;do{f=k[Ua>>2]|0;if(y>>>0>=f>>>0)break d;do if(_)f=0;else{if((y|0)==(C|0)){f=1;break}f=(y|0)==(f+-1|0)}while(0);$a=y;y=y+1|0;r=(ha(k[Qa>>2]|0,y)|0)+B|0;u=r+1|0;v=k[Ra>>2]|0;x=v+(u<<1)|0;g=(ha(k[Wa>>2]|0,$a)|0)+B|0;g=(k[Va>>2]|0)+(g<<2)|0;w=k[a>>2]|0;n=j[x>>1]|0;q=f?n&-1095:n;do if(!(A&($a|0)==(z|0))){if(n&20480)break;k[w+100>>2]=w+24+(l[20267+(q&255|$)>>0]<<2);$a=k[g>>2]|0;$a=((($a|0)<0?0-$a|0:$a)&M|0)!=0;vh(w,$a&1);if($a)_a=117}else _a=117;while(0);if((_a|0)==117){_a=0;g=k[g>>2]|0;f=(g|0)<0?0-g|0:g;if(Q)f=3708+((f&127)<<1)|0;else f=3452+((f>>>S&127)<<1)|0;c=(j[f>>1]|0)+c|0;$a=q>>>4&255;k[w+100>>2]=w+24+(l[21291+$a>>0]<<2);n=g>>>31;vh(w,l[21547+$a>>0]^n);w=k[Qa>>2]|0;$a=v+(u-w<<1)|0;q=v+(w+u<<1)|0;u=v+(u+~w<<1)|0;j[u>>1]=m[u>>1]|2;j[$a>>1]=j[$a>>1]|j[3436+(n<<1)>>1];$a=r+2|0;u=v+($a-w<<1)|0;j[u>>1]=m[u>>1]|4;u=v+(r<<1)|0;j[u>>1]=j[u>>1]|j[3436+((n|2)<<1)>>1];j[x>>1]=m[x>>1]|4096;u=v+($a<<1)|0;j[u>>1]=j[u>>1]|j[3436+((n|4)<<1)>>1];u=v+(w+r<<1)|0;j[u>>1]=m[u>>1]|1;j[q>>1]=j[q>>1]|j[3436+((n|6)<<1)>>1];$a=v+(w+$a<<1)|0;j[$a>>1]=m[$a>>1]|8}j[x>>1]=m[x>>1]&49151}while(y>>>0<h>>>0)}while(0);n=B+1|0}g=k[Ta>>2]|0;f=k[Ua>>2]|0;if(n>>>0<g>>>0)B=n;else break}}if(h>>>0<f>>>0)J=h;else break}}if(aa){g=c;break c}Eh(ka);g=c;break}default:g=c}while(0);if(Ia)s=+p[Ha>>3];else s=1.0;if(X)t=+Sg(ga,fa);else t=+Vg(ga,fa);t=+(1<<S|0)*(ia*(s*t));t=t*(+(g|0)*t*.0001220703125);T=T+t;p[Ya>>3]=+p[Ya>>3]+t;do if(Y)_a=137;else{if((S|0)<1&(U|0)==2){_a=137;break}wh(ka);f=R+(b*24|0)+20|0;c=i[f>>0]|1;i[f>>0]=c;f=1}while(0);do if((_a|0)==137){c=(k[da>>2]|0)+-4|0;if((U|0)!=0&(S|0)<(c|0))if(W)_a=141;else _a=140;else if(W|((U|0)!=2|(S|0)!=(c|0)))_a=141;else _a=140;if((_a|0)==140){_a=0;wh(ka);f=R+(b*24|0)+20|0;c=i[f>>0]|1;i[f>>0]=c;f=1;break}else if((_a|0)==141){_a=0;f=R+(b*24|0)+20|0;c=i[f>>0]&-2;i[f>>0]=c;f=3;break}}while(0);Q=U+1|0;$a=(Q|0)==3;U=$a?0:Q;S=($a<<31>>31)+S|0;do if((S|0)>0&(c&1)!=0)if(ca&(U>>>0<2?(S|0)<((k[da>>2]|0)+-4|0):0)){xh(ka);break}else{Ch(ka);break}while(0);p[R+(b*24|0)+8>>3]=T;$a=(th(ka)|0)+f|0;k[R+(b*24|0)>>2]=$a;if(!Z)zh(ka);b=b+1|0;if((S|0)<=-1)break b;else c=g}}else b=0;while(0);do if(!(ja&16)){if(ja&1)break;wh(ka)}else Dh(ka);while(0);q=la+(na*52|0)+48|0;k[q>>2]=b;if(b){g=la+(na*52|0)+8|0;n=0;do{h=k[g>>2]|0;c=h+(n*24|0)|0;$a=k[c>>2]|0;if($a>>>0>(th(ka)|0)>>>0){b=th(ka)|0;k[c>>2]=b}else b=k[c>>2]|0;do if(b>>>0>1){f=b+-1|0;if((i[(k[ea>>2]|0)+f>>0]|0)!=-1)break;k[c>>2]=f;b=f}while(0);if(!n)c=0;else c=k[(k[g>>2]|0)+((n+-1|0)*24|0)>>2]|0;k[h+(n*24|0)+16>>2]=b-c;n=n+1|0}while(n>>>0<(k[q>>2]|0)>>>0)}na=na+1|0}while(na>>>0<(ha(k[pa>>2]|0,k[oa>>2]|0)|0)>>>0);b=k[Aa>>2]|0;f=k[za>>2]|0}qa=qa+1|0}while(qa>>>0<(ha(b,f)|0)>>>0);c=k[Ea>>2]|0}ya=ya+1|0}while(ya>>>0<c>>>0);b=k[Na>>2]|0}Fa=Fa+1|0}while(Fa>>>0<b>>>0);b=k[Za>>2]|0}Oa=Oa+1|0;if(Oa>>>0>=b>>>0){b=1;_a=173;break}}if((_a|0)==173)return b|0;return 0}function ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=ha(c,b)|0;if(!(k[a+40>>2]|0)){g=a+24|0;h=a+8|0;d=k[h>>2]|0;do if(f>>>0>(k[g>>2]|0)>>>0){ad(d);e=f<<2;d=$c(e)|0;k[h>>2]=d;if(!d){b=0;return b|0}else{k[g>>2]=f;break}}else e=f<<2;while(0);_i(d|0,0,e|0)|0}f=b+2|0;k[a+32>>2]=f;f=ha(c+2|0,f)|0;g=a+28|0;h=a+12|0;d=k[h>>2]|0;do if(f>>>0>(k[g>>2]|0)>>>0){ad(d);e=f<<1;d=$c(e)|0;k[h>>2]=d;if(!d){b=0;return b|0}else{k[g>>2]=f;break}}else e=f<<1;while(0);_i(d|0,0,e|0)|0;k[a+16>>2]=b;k[a+20>>2]=c;b=1;return b|0}function jh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=k[a>>2]|0;h=j[b>>1]|0;i=h&255;if(!((i|0)!=0&(h&20480|0)==0))return;g=f+100|0;k[g>>2]=f+24+(l[20267+(i|d<<8)>>0]<<2);if(Gh(f)|0){d=h>>>4&255;k[g>>2]=f+24+(l[21291+d>>0]<<2);h=Gh(f)|0;d=l[21547+d>>0]|0;i=d^h;k[c>>2]=(h|0)!=(d|0)?0-e|0:e;a=k[a+32>>2]|0;e=b+(0-a<<1)|0;d=b+(a<<1)|0;c=b+(~a<<1)|0;j[c>>1]=m[c>>1]|2;j[e>>1]=j[e>>1]|j[3436+(i<<1)>>1];e=b+(1-a<<1)|0;j[e>>1]=m[e>>1]|4;e=b+-2|0;j[e>>1]=j[e>>1]|j[3436+(i+2<<1)>>1];j[b>>1]=m[b>>1]|4096;e=b+2|0;j[e>>1]=j[e>>1]|j[3436+(i+4<<1)>>1];e=b+(a+-1<<1)|0;j[e>>1]=m[e>>1]|1;j[d>>1]=j[d>>1]|j[3436+(i+6<<1)>>1];a=b+(a+1<<1)|0;j[a>>1]=m[a>>1]|8}j[b>>1]=m[b>>1]|16384;return}function kh(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=k[a>>2]|0;h=j[b>>1]|0;if(h&20480){a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}g=f+100|0;k[g>>2]=f+24+(l[20267+(h&255|d<<8)>>0]<<2);if(!(Gh(f)|0)){a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}d=h>>>4&255;k[g>>2]=f+24+(l[21291+d>>0]<<2);g=Gh(f)|0;d=l[21547+d>>0]|0;h=d^g;k[c>>2]=(g|0)!=(d|0)?0-e|0:e;a=k[a+32>>2]|0;e=b+(0-a<<1)|0;d=b+(a<<1)|0;c=b+(~a<<1)|0;j[c>>1]=m[c>>1]|2;j[e>>1]=j[e>>1]|j[3436+(h<<1)>>1];e=b+(1-a<<1)|0;j[e>>1]=m[e>>1]|4;e=b+-2|0;j[e>>1]=j[e>>1]|j[3436+(h+2<<1)>>1];j[b>>1]=m[b>>1]|4096;e=b+2|0;j[e>>1]=j[e>>1]|j[3436+(h+4<<1)>>1];e=b+(a+-1<<1)|0;j[e>>1]=m[e>>1]|1;j[d>>1]=j[d>>1]|j[3436+(h+6<<1)>>1];a=b+(a+1<<1)|0;j[a>>1]=m[a>>1]|8;a=j[b>>1]|0;a=a&65535;a=a&49151;a=a&65535;j[b>>1]=a;return}function lh(a,b,c,d,e,f,g,h,i,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;m=m|0;n=n|0;o=o|0;var p=0,q=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;H=r;r=r+16|0;G=H;k[G>>2]=0;p=k[a>>2]|0;C=k[a+4>>2]|0;a=k[C+76>>2]|0;E=a+(b*5640|0)|0;s=(j[C>>1]|0)==4?2:1;t=C+80|0;if(!(k[t>>2]|0))q=1;else q=k[p+16>>2]|0;F=(k[a+(b*5640|0)+420>>2]|0)+1|0;D=Vf(p,C,b,o)|0;if(!D){b=0;r=H;return b|0}k[f>>2]=0;a:do if(!o){if(q){a=0;b:while(1){o=0;n=D;p=0;while(1){Wf(D,C,b,p,a,m,0);if((k[n+80>>2]|0)==-1){a=9;break b}i=n+36|0;c:while(1){do if(!(Yf(n)|0))break c;while((k[i>>2]|0)>>>0>=d>>>0);k[G>>2]=0;if(!(ph(b,c,E,n,e,G,g,h)|0)){a=13;break b}B=k[G>>2]|0;k[f>>2]=(k[f>>2]|0)+B;g=g-B|0;o=B+o|0;e=e+B|0}B=k[t>>2]|0;if((B|0)!=0&o>>>0>B>>>0){a=17;break b}p=p+1|0;if(p>>>0<s>>>0)n=n+232|0;else break}a=a+1|0;if(a>>>0>=q>>>0)break a}if((a|0)==9){Uf(D,F);b=0;r=H;return b|0}else if((a|0)==13){Uf(D,F);b=0;r=H;return b|0}else if((a|0)==17){Uf(D,F);b=0;r=H;return b|0}}}else{Wf(D,C,b,n,i,m,o);z=D+(n*232|0)|0;if((k[D+(n*232|0)+80>>2]|0)==-1){Uf(D,F);b=0;r=H;return b|0}m=D+(n*232|0)+36|0;u=(h|0)==0;v=c+840|0;w=h+12|0;x=h+8|0;y=h+88|0;t=C+93|0;s=a+(b*5640|0)+5636|0;while(1){do if(!(Yf(z)|0))break a;while((k[m>>2]|0)>>>0>=d>>>0);k[G>>2]=0;if(!(ph(b,c,E,z,e,G,g,h)|0))break;q=k[G>>2]|0;e=e+q|0;g=g-q|0;k[f>>2]=(k[f>>2]|0)+q;if(!u){if(!(k[w>>2]|0))a=k[x>>2]|0;else{p=k[y>>2]|0;a=k[x>>2]|0;n=k[p+(b*592|0)+548>>2]|0;o=n+(a<<5)|0;if(!a){i=(k[p+(b*592|0)+12>>2]|0)+1|0;p=((i|0)<0)<<31>>31;C=o;k[C>>2]=i;k[C+4>>2]=p}else{if((((l[s>>0]|0)>>>2|(l[t>>0]|0)>>>3)&1)!=0?(B=o,A=k[B>>2]|0,B=k[B+4>>2]|0,!((A|0)==0&(B|0)==0)):0){i=A;p=B}else{i=n+(a+-1<<5)+16|0;i=aj(k[i>>2]|0,k[i+4>>2]|0,1,0)|0;p=L}C=o;k[C>>2]=i;k[C+4>>2]=p}o=aj(i|0,p|0,-1,-1)|0;i=L;q=aj(o|0,i|0,q|0,0)|0;C=n+(a<<5)+16|0;k[C>>2]=q;k[C+4>>2]=L;C=n+(a<<5)+8|0;q=C;q=aj(o|0,i|0,k[q>>2]|0,k[q+4>>2]|0)|0;k[C>>2]=q;k[C+4>>2]=L}k[x>>2]=a+1}k[v>>2]=(k[v>>2]|0)+1}Uf(D,F);b=0;r=H;return b|0}while(0);Uf(D,F);b=1;r=H;return b|0}function mh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;_=r;r=r+112|0;W=_+64|0;X=_+32|0;S=_;R=_+96|0;Q=_+92|0;i=k[a>>2]|0;M=a+4|0;Z=k[M>>2]|0;g=k[Z+76>>2]|0;O=g+(b*5640|0)|0;P=g+(b*5640|0)+420|0;Y=(k[P>>2]|0)+1|0;Z=Tf(i,Z,b)|0;if(!Z){$=0;r=_;return $|0}N=i+16|0;L=g+(b*5640|0)+12|0;K=c+20|0;J=i+24|0;b=f;a=d;H=Z;I=0;a:while(1){if((k[H+80>>2]|0)==-1){$=4;break}g=Zc(k[N>>2]<<2)|0;if(!g){$=6;break}_i(g|0,1,k[N>>2]<<2|0)|0;if(Yf(H)|0){f=H+24|0;c=H+28|0;G=H+36|0;i=H+32|0;F=b;E=a;while(1){if((k[L>>2]|0)>>>0>(k[G>>2]|0)>>>0){b=k[f>>2]|0;a=k[K>>2]|0;if((k[c>>2]|0)>>>0<(k[a+(b*52|0)+20>>2]|0)>>>0){k[g+(b<<2)>>2]=0;D=k[M>>2]|0;k[Q>>2]=0;if(!(qh(D,a,O,H,R,E,Q,F,h)|0)){$=45;break a}C=k[Q>>2]|0;if(!(k[R>>2]|0))a=C;else{B=F-C|0;z=E+C|0;k[Q>>2]=0;b=k[c>>2]|0;j=k[(k[K>>2]|0)+((k[f>>2]|0)*52|0)+24>>2]|0;x=j+(b*136|0)+24|0;a=k[x>>2]|0;b:do if(!a){a=z;$=43}else{y=E+F|0;l=a;D=0;w=j+(b*136|0)+28|0;j=z;c:while(1){a=k[i>>2]|0;b=k[w+20>>2]|0;if(((k[w+8>>2]|0)!=(k[w>>2]|0)?(k[w+12>>2]|0)!=(k[w+4>>2]|0):0)?(V=ha(k[b+(a*40|0)+20>>2]|0,k[b+(a*40|0)+16>>2]|0)|0,(V|0)!=0):0){A=0;a=k[b+(a*40|0)+24>>2]|0;o=j;while(1){u=a+40|0;if(!(k[u>>2]|0))b=o;else{v=a+44|0;b=k[v>>2]|0;do if(!b){n=k[a+4>>2]|0;k[v>>2]=1;k[a+36>>2]=0}else{j=b+-1|0;l=k[a+4>>2]|0;if((k[l+(j<<5)+8>>2]|0)!=(k[l+(j<<5)+20>>2]|0)){n=l+(j<<5)|0;break}k[v>>2]=b+1;n=l+(b<<5)|0}while(0);t=a+36|0;b=a+32|0;s=o;m=n+28|0;j=k[m>>2]|0;if((j+s|0)>>>0<s>>>0|(o+j|0)>>>0>y>>>0){b=D;a=A;break c}l=k[t>>2]|0;s=o;q=n;while(1){n=j+l|0;if(n>>>0<l>>>0){b=D;a=A;$=29;break a}o=k[a>>2]|0;if(n>>>0>(k[b>>2]|0)>>>0){j=bd(o,n)|0;if(!j){$=32;break a}l=k[t>>2]|0;p=k[m>>2]|0;k[b>>2]=p+l;k[a>>2]=j;o=j;j=p}cj(o+l|0,s|0,j|0)|0;j=q+8|0;l=k[j>>2]|0;if(!l){k[q>>2]=a;n=k[t>>2]|0;k[q+4>>2]=n}else n=k[t>>2]|0;o=k[m>>2]|0;p=s;s=s+o|0;m=k[q+24>>2]|0;l=m+l|0;k[j>>2]=l;j=k[u>>2]|0;k[u>>2]=j-m;k[q+12>>2]=l;l=o+n|0;k[t>>2]=l;n=q+16|0;k[n>>2]=(k[n>>2]|0)+o;if((j|0)==(m|0)){b=s;break}k[v>>2]=(k[v>>2]|0)+1;n=s;m=q+60|0;j=k[m>>2]|0;if((j+n|0)>>>0<n>>>0?1:(p+(j+o)|0)>>>0>y>>>0){b=D;a=A;break c}else q=q+32|0}k[a+48>>2]=k[v>>2]}A=A+1|0;if(A>>>0>=V>>>0){a=b;break}else{a=a+56|0;o=b}}b=k[x>>2]|0}else{b=l;a=j}D=D+1|0;if(D>>>0>=b>>>0){$=43;break b}else{l=b;w=w+36|0;j=a}}z=k[i>>2]|0;A=k[c>>2]|0;D=k[f>>2]|0;k[S>>2]=j;k[S+4>>2]=B;k[S+8>>2]=a;k[S+12>>2]=z;k[S+16>>2]=b;k[S+20>>2]=A;k[S+24>>2]=D;cc(h,2,21803,S)|0;a=k[Q>>2]|0}while(0);if(($|0)==43){$=0;a=a-z|0;k[Q>>2]=a}a=a+C|0}j=k[f>>2]|0;C=k[c>>2]|0;b=(k[J>>2]|0)+(j*52|0)+36|0;D=k[b>>2]|0;k[b>>2]=C>>>0>D>>>0?C:D;b=a}else $=47}else{a=k[K>>2]|0;$=47}if(($|0)==47){$=0;D=k[M>>2]|0;k[Q>>2]=0;if(!(qh(D,a,O,H,R,E,Q,F,h)|0)){$=69;break a}u=k[Q>>2]|0;if(!(k[R>>2]|0))a=u;else{j=F-u|0;w=k[c>>2]|0;x=k[f>>2]|0;a=k[(k[K>>2]|0)+(x*52|0)+24>>2]|0;k[Q>>2]=0;t=k[a+(w*136|0)+24>>2]|0;if(!t)a=0;else{v=k[i>>2]|0;b=0;s=a+(w*136|0)+28|0;while(1){l=k[s+20>>2]|0;if(((k[s+8>>2]|0)!=(k[s>>2]|0)?(k[s+12>>2]|0)!=(k[s+4>>2]|0):0)?(T=ha(k[l+(v*40|0)+20>>2]|0,k[l+(v*40|0)+16>>2]|0)|0,(T|0)!=0):0){a=0;q=k[l+(v*40|0)+24>>2]|0;while(1){o=q+40|0;d:do if(k[o>>2]|0){p=q+44|0;l=k[p>>2]|0;do if(!l){n=k[q+4>>2]|0;k[p>>2]=1;k[q+36>>2]=0}else{m=l+-1|0;n=k[q+4>>2]|0;if((k[n+(m<<5)+8>>2]|0)!=(k[n+(m<<5)+20>>2]|0)){n=n+(m<<5)|0;break}k[p>>2]=l+1;n=n+(l<<5)|0}while(0);D=k[Q>>2]|0;l=k[n+28>>2]|0;m=l+D|0;if(m>>>0<D>>>0|m>>>0>j>>>0){f=v;c=w;i=x;$=65;break a}while(1){k[Q>>2]=m;D=k[n+24>>2]|0;C=n+8|0;k[C>>2]=(k[C>>2]|0)+D;C=k[o>>2]|0;k[o>>2]=C-D;if((C|0)==(D|0))break d;k[p>>2]=(k[p>>2]|0)+1;D=k[Q>>2]|0;l=k[n+60>>2]|0;m=l+D|0;if(m>>>0<D>>>0|m>>>0>j>>>0){f=v;c=w;i=x;$=65;break a}else n=n+32|0}}while(0);a=a+1|0;if(a>>>0>=T>>>0)break;else q=q+56|0}}b=b+1|0;if(b>>>0>=t>>>0)break;else s=s+36|0}a=k[Q>>2]|0}a=a+u|0}j=k[f>>2]|0;b=a}if((k[g+(j<<2)>>2]|0)!=0?(U=(k[J>>2]|0)+(j*52|0)+36|0,(k[U>>2]|0)==0):0)k[U>>2]=(k[(k[K>>2]|0)+(j*52|0)+20>>2]|0)+-1;a=E+b|0;b=F-b|0;if(!(Yf(H)|0))break;else{F=b;E=a}}}cd(g);I=I+1|0;if(I>>>0>(k[P>>2]|0)>>>0){g=a;$=75;break}else H=H+232|0}if(($|0)==4){Uf(Z,Y);$=0;r=_;return $|0}else if(($|0)==6){Uf(Z,Y);$=0;r=_;return $|0}else if(($|0)==29){e=k[i>>2]|0;d=k[c>>2]|0;W=k[f>>2]|0;k[X>>2]=j;k[X+4>>2]=l;k[X+8>>2]=~j;k[X+12>>2]=a;k[X+16>>2]=e;k[X+20>>2]=b;k[X+24>>2]=d;k[X+28>>2]=W;cc(h,1,21888,X)|0;$=45}else if(($|0)==32){cd(k[a>>2]|0);k[a>>2]=0;k[b>>2]=0;$=45}else if(($|0)==65){k[W>>2]=l;k[W+4>>2]=j;k[W+8>>2]=a;k[W+12>>2]=f;k[W+16>>2]=b;k[W+20>>2]=c;k[W+24>>2]=i;cc(h,1,21987,W)|0;$=69}else if(($|0)==75){Uf(Z,Y);k[e>>2]=g-d;$=1;r=_;return $|0}if(($|0)==45){Uf(Z,Y);cd(g);$=0;r=_;return $|0}else if(($|0)==69){Uf(Z,Y);cd(g);$=0;r=_;return $|0}return 0}function nh(a,b){a=a|0;b=b|0;var c=0;c=_c(1,8)|0;if(!c){a=0;return a|0}k[c>>2]=a;k[c+4>>2]=b;a=c;return a|0}function oh(a){a=a|0;if(!a)return;cd(a);return}function ph(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,l=0,m=0,n=0,o=0,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.0,J=0,K=0;s=k[d+28>>2]|0;J=k[d+32>>2]|0;K=k[d+36>>2]|0;r=k[(k[b+20>>2]|0)+((k[d+24>>2]|0)*52|0)+24>>2]|0;if(!(k[c>>2]&2))G=e;else{i[e>>0]=-1;i[e+1>>0]=-111;i[e+2>>0]=0;i[e+3>>0]=4;G=b+840|0;i[e+4>>0]=(k[G>>2]|0)>>>8;i[e+5>>0]=k[G>>2];g=g+-6|0;G=e+6|0}if((K|0)==0?(q=r+(s*136|0)+24|0,(k[q>>2]|0)!=0):0){n=r+(s*136|0)+28|0;o=0;while(1){d=k[n+20>>2]|0;ug(k[d+(J*40|0)+32>>2]|0);l=d+(J*40|0)+36|0;ug(k[l>>2]|0);m=ha(k[d+(J*40|0)+20>>2]|0,k[d+(J*40|0)+16>>2]|0)|0;if(m){d=d+(J*40|0)+24|0;b=n+28|0;j=0;do{H=k[d>>2]|0;k[H+(j*52|0)+40>>2]=0;xg(k[l>>2]|0,j,(k[b>>2]|0)-(k[H+(j*52|0)+28>>2]|0)|0);j=j+1|0}while((j|0)!=(m|0))}o=o+1|0;if(o>>>0>=(k[q>>2]|0)>>>0)break;else n=n+36|0}}E=Gg()|0;if(!E){f=0;return f|0}Jg(E,G,g);Lg(E,1,1);F=r+(s*136|0)+28|0;H=r+(s*136|0)+24|0;if(k[H>>2]|0){A=K+1|0;C=F;D=0;while(1){m=k[C+20>>2]|0;B=ha(k[m+(J*40|0)+20>>2]|0,k[m+(J*40|0)+16>>2]|0)|0;n=m+(J*40|0)+24|0;d=(B|0)==0;if(!d){b=m+(J*40|0)+32|0;j=k[n>>2]|0;l=0;while(1){if((k[j+40>>2]|0)==0?(k[(k[j+4>>2]|0)+(K*24|0)>>2]|0)!=0:0)xg(k[b>>2]|0,l,K);l=l+1|0;if((l|0)==(B|0))break;else j=j+52|0}if(!d){z=m+(J*40|0)+32|0;y=m+(J*40|0)+36|0;w=k[n>>2]|0;x=0;while(1){d=(k[w+4>>2]|0)+(K*24|0)|0;v=w+40|0;if(!(k[v>>2]|0))yg(E,k[z>>2]|0,x,A);else Lg(E,(k[d>>2]|0)!=0&1,1);b=k[d>>2]|0;if(b){if(!(k[v>>2]|0)){k[w+32>>2]=3;yg(E,k[y>>2]|0,x,999);b=k[d>>2]|0}a:do switch(b|0){case 1:{Lg(E,0,1);break}case 2:{Lg(E,2,2);break}default:{if(b>>>0<6){Lg(E,b+-3|12,4);break a}if(b>>>0<37){Lg(E,b+-6|480,9);break a}if(b>>>0<165)Lg(E,b+-37|65408,16)}}while(0);n=k[v>>2]|0;b=k[d>>2]|0;u=b+n|0;t=w+8|0;if(n>>>0<u>>>0){s=w+32|0;q=n+-1+b|0;l=0;m=0;j=0;r=(k[t>>2]|0)+(n*24|0)|0;while(1){j=j+1|0;m=(k[r+16>>2]|0)+m|0;if((i[r+20>>0]&1)!=0|(n|0)==(q|0)){if((m|0)>1){b=0;do{m=m>>1;b=b+1|0}while((m|0)>1)}else b=0;o=k[s>>2]|0;if((j|0)>1){m=0;do{j=j>>1;m=m+1|0}while((j|0)>1);j=m}else j=0;m=b+1-o-j|0;l=(l|0)>(m|0)?l:m;m=0;j=0}n=n+1|0;if((n|0)==(u|0))break;else r=r+24|0}if((l|0)>0){b=l;while(1){Lg(E,1,1);if((b|0)>1)b=b+-1|0;else{b=m;break}}}else b=m}else{l=0;b=0;j=0}Lg(E,0,1);q=w+32|0;k[q>>2]=(k[q>>2]|0)+l;l=k[v>>2]|0;if(l>>>0<u>>>0){o=(k[t>>2]|0)+(l*24|0)|0;while(1){j=j+1|0;m=(k[o+16>>2]|0)+b|0;if((i[o+20>>0]&1)==0?(l|0)!=((k[v>>2]|0)+-1+(k[d>>2]|0)|0):0)b=m;else{n=k[q>>2]|0;if((j|0)>1){b=0;do{j=j>>1;b=b+1|0}while((j|0)>1)}else b=0;Lg(E,m,b+n|0);b=0;j=0}l=l+1|0;if((l|0)==(u|0))break;else o=o+24|0}}}x=x+1|0;if((x|0)==(B|0))break;else w=w+52|0}}}D=D+1|0;if(D>>>0>=(k[H>>2]|0)>>>0)break;else C=C+36|0}}if(!(Ng(E)|0)){Hg(E);f=0;return f|0}b=Ig(E)|0;d=G+b|0;g=g-b|0;Hg(E);if(k[c>>2]&4){i[d>>0]=-1;i[G+(b+1)>>0]=-110;g=g+-2|0;d=G+(b+2)|0}t=(h|0)!=0;if(t?(k[h+12>>2]|0)!=0:0){G=d-e|0;c=(k[(k[h+88>>2]|0)+(a*592|0)+548>>2]|0)+(k[h+8>>2]<<5)+8|0;k[c>>2]=G;k[c+4>>2]=((G|0)<0)<<31>>31}b=k[H>>2]|0;b:do if(b){u=h+12|0;v=h+8|0;w=h+88|0;r=F;s=0;c:while(1){j=k[r+20>>2]|0;q=ha(k[j+(J*40|0)+20>>2]|0,k[j+(J*40|0)+16>>2]|0)|0;j=k[j+(J*40|0)+24>>2]|0;if(q){if(t){o=0;while(1){n=k[j+4>>2]|0;b=n+(K*24|0)|0;if(k[b>>2]|0){l=n+(K*24|0)+4|0;m=k[l>>2]|0;if(m>>>0>g>>>0){d=0;g=81;break c}cj(d|0,k[n+(K*24|0)+16>>2]|0,m|0)|0;c=j+40|0;k[c>>2]=(k[c>>2]|0)+(k[b>>2]|0);c=k[l>>2]|0;d=d+c|0;g=g-c|0;if((k[u>>2]|0)!=0?(c=(k[(k[w>>2]|0)+(a*592|0)+548>>2]|0)+(k[v>>2]<<5)+24|0,I=+p[n+(K*24|0)+8>>3]+ +p[c>>3],p[c>>3]=I,+p[h>>3]<I):0)p[h>>3]=I}o=o+1|0;if(o>>>0>=q>>>0)break;else j=j+52|0}}else{o=0;while(1){b=k[j+4>>2]|0;l=b+(K*24|0)|0;if(k[l>>2]|0){m=b+(K*24|0)+4|0;n=k[m>>2]|0;if(n>>>0>g>>>0){d=0;g=81;break c}cj(d|0,k[b+(K*24|0)+16>>2]|0,n|0)|0;c=j+40|0;k[c>>2]=(k[c>>2]|0)+(k[l>>2]|0);c=k[m>>2]|0;g=g-c|0;d=d+c|0}o=o+1|0;if(o>>>0>=q>>>0)break;else j=j+52|0}}b=k[H>>2]|0}s=s+1|0;if(s>>>0>=b>>>0)break b;else r=r+36|0}if((g|0)==81)return d|0}while(0);k[f>>2]=d-e+(k[f>>2]|0);f=1;return f|0}function qh(a,b,c,d,e,f,g,h,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;N=r;r=r+64|0;L=N+40|0;K=N+32|0;x=N+24|0;w=N+16|0;u=N+8|0;t=N;v=N+48|0;M=N+44|0;k[M>>2]=f;z=k[d+28>>2]|0;J=d+24|0;y=k[b+((k[J>>2]|0)*52|0)+24>>2]|0;H=d+36|0;if((k[H>>2]|0)==0?(s=y+(z*136|0)+24|0,l=k[s>>2]|0,(l|0)!=0):0){q=d+32|0;o=0;p=y+(z*136|0)+28|0;while(1){b=k[q>>2]|0;m=k[p+20>>2]|0;if((k[p+8>>2]|0)!=(k[p>>2]|0)?(k[p+12>>2]|0)!=(k[p+4>>2]|0):0){ug(k[m+(b*40|0)+32>>2]|0);ug(k[m+(b*40|0)+36>>2]|0);l=ha(k[m+(b*40|0)+20>>2]|0,k[m+(b*40|0)+16>>2]|0)|0;if(l){n=0;b=k[m+(b*40|0)+24>>2]|0;while(1){k[b+44>>2]=0;k[b+48>>2]=0;n=n+1|0;if((n|0)==(l|0))break;else b=b+56|0}}l=k[s>>2]|0}o=o+1|0;if(o>>>0>=l>>>0)break;else p=p+36|0}}do if(k[c>>2]&2){if(h>>>0<6){cc(j,2,22072,t)|0;break}b=k[M>>2]|0;if((i[b>>0]|0)==-1?(i[b+1>>0]|0)==-111:0){k[M>>2]=b+6;break}cc(j,2,22114,u)|0}while(0);G=Gg()|0;if(!G){f=0;r=N;return f|0}do if(!(i[a+96>>0]&1))if(!(i[c+5636>>0]&2)){E=k[M>>2]|0;k[v>>2]=f+h-E;F=M;break}else{F=c+5168|0;E=k[F>>2]|0;v=c+5180|0;break}else{F=a+40|0;E=k[F>>2]|0;v=a+44|0}while(0);Kg(G,E,k[v>>2]|0);if(!(Mg(G,1)|0)){Og(G)|0;l=Ig(G)|0;b=E+l|0;Hg(G);do if(k[c>>2]&4){if(((k[v>>2]|0)-b+(k[F>>2]|0)|0)>>>0<2){cc(j,2,22135,w)|0;break}if((i[b>>0]|0)==-1?(i[E+(l+1)>>0]|0)==-110:0){b=E+(l+2)|0;break}cc(j,2,22177,x)|0}while(0);k[v>>2]=(k[v>>2]|0)+((k[F>>2]|0)-b);k[F>>2]=b;k[e>>2]=0;k[g>>2]=(k[M>>2]|0)-f;f=1;r=N;return f|0}D=y+(z*136|0)+24|0;b=k[D>>2]|0;a:do if(b){B=d+32|0;C=c+5584|0;A=0;y=y+(z*136|0)+28|0;b:while(1){l=k[B>>2]|0;m=k[y+20>>2]|0;if(((k[y+8>>2]|0)!=(k[y>>2]|0)?(k[y+12>>2]|0)!=(k[y+4>>2]|0):0)?(I=ha(k[m+(l*40|0)+20>>2]|0,k[m+(l*40|0)+16>>2]|0)|0,(I|0)!=0):0){a=m+(l*40|0)+32|0;d=m+(l*40|0)+36|0;w=y+28|0;x=0;h=k[m+(l*40|0)+24>>2]|0;while(1){l=h+44|0;if(!(k[l>>2]|0))b=zg(G,k[a>>2]|0,x,(k[H>>2]|0)+1|0)|0;else b=Mg(G,1)|0;c:do if(!b)k[h+40>>2]=0;else{if(!(k[l>>2]|0)){b=0;while(1)if(!(zg(G,k[d>>2]|0,x,b)|0))b=b+1|0;else break;k[h+24>>2]=1-b+(k[w>>2]|0);k[h+28>>2]=3}do if(Mg(G,1)|0)if(Mg(G,1)|0){b=Mg(G,2)|0;if((b|0)!=3){b=b+3|0;break}b=Mg(G,5)|0;if((b|0)==31){b=(Mg(G,7)|0)+37|0;break}else{b=b+6|0;break}}else b=2;else b=1;while(0);t=h+40|0;k[t>>2]=b;b=0;while(1)if(!(Mg(G,1)|0))break;else b=b+1|0;u=h+28|0;k[u>>2]=(k[u>>2]|0)+b;l=k[l>>2]|0;do if(!l){m=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;b=h+52|0;if(!(k[b>>2]|0)){k[b>>2]=10;n=h+4|0;l=bd(k[n>>2]|0,320)|0;if(!l){l=b;m=n;b=n;n=66;break b}k[n>>2]=l}else l=k[h+4>>2]|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;k[l+24>>2]=0;k[l+28>>2]=0;if(m&4){k[l+20>>2]=1;l=0;break}l=l+20|0;if(!(m&1)){k[l>>2]=109;l=0;break}else{k[l>>2]=10;l=0;break}}else{p=l+-1|0;q=h+4|0;m=k[q>>2]|0;if((k[m+(p<<5)+8>>2]|0)!=(k[m+(p<<5)+20>>2]|0)){b=h+52|0;l=p;break}o=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;b=h+52|0;n=k[b>>2]|0;if((l+1|0)>>>0>n>>>0){z=n+10|0;k[b>>2]=z;m=bd(m,z<<5)|0;if(!m){m=q;l=b;b=q;n=77;break b}k[q>>2]=m}z=m+(l<<5)|0;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;k[z+12>>2]=0;k[z+16>>2]=0;k[z+20>>2]=0;k[z+24>>2]=0;k[z+28>>2]=0;if(o&4){k[m+(l<<5)+20>>2]=1;break}if(!(o&1)){k[m+(l<<5)+20>>2]=109;break}else{z=k[m+(p<<5)+20>>2]|0;k[m+(l<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;break}}while(0);s=h+4|0;p=k[t>>2]|0;while(1){o=k[s>>2]|0;m=(k[o+(l<<5)+20>>2]|0)-(k[o+(l<<5)+8>>2]|0)|0;m=(m|0)<(p|0)?m:p;k[o+(l<<5)+24>>2]=m;o=k[u>>2]|0;if(m>>>0>1){n=0;while(1){n=n+1|0;if(m>>>0>3)m=m>>>1;else{m=n;break}}}else m=0;o=Mg(G,m+o|0)|0;m=k[s>>2]|0;k[m+(l<<5)+28>>2]=o;o=p-(k[m+(l<<5)+24>>2]|0)|0;if((o|0)<=0)break c;p=l+1|0;q=k[(k[C>>2]|0)+((k[J>>2]|0)*1080|0)+16>>2]|0;n=k[b>>2]|0;if((l+2|0)>>>0>n>>>0){z=n+10|0;k[b>>2]=z;m=bd(m,z<<5)|0;if(!m){m=s;l=s;n=90;break b}k[s>>2]=m}z=m+(p<<5)|0;k[z>>2]=0;k[z+4>>2]=0;k[z+8>>2]=0;k[z+12>>2]=0;k[z+16>>2]=0;k[z+20>>2]=0;k[z+24>>2]=0;k[z+28>>2]=0;if(q&4){k[m+(p<<5)+20>>2]=1;l=p;p=o;continue}if(!(q&1)){k[m+(p<<5)+20>>2]=109;l=p;p=o;continue}else{z=k[m+(l<<5)+20>>2]|0;k[m+(p<<5)+20>>2]=(z|0)==1|(z|0)==10?2:1;l=p;p=o;continue}}}while(0);x=x+1|0;if(x>>>0>=I>>>0)break;else h=h+56|0}b=k[D>>2]|0}A=A+1|0;if(A>>>0>=b>>>0)break a;else y=y+36|0}if((n|0)==66){cd(k[b>>2]|0);k[m>>2]=0;k[l>>2]=0;Hg(G);f=0;r=N;return f|0}else if((n|0)==77){cd(k[b>>2]|0);k[m>>2]=0;k[l>>2]=0;Hg(G);f=0;r=N;return f|0}else if((n|0)==90){cd(k[l>>2]|0);k[m>>2]=0;k[b>>2]=0;Hg(G);f=0;r=N;return f|0}}while(0);if(!(Og(G)|0)){Hg(G);f=0;r=N;return f|0}l=Ig(G)|0;b=E+l|0;Hg(G);do if(k[c>>2]&4){if(((k[v>>2]|0)-b+(k[F>>2]|0)|0)>>>0<2){cc(j,2,22135,K)|0;break}if((i[b>>0]|0)==-1?(i[E+(l+1)>>0]|0)==-110:0){b=E+(l+2)|0;break}cc(j,2,22177,L)|0}while(0);k[v>>2]=(k[v>>2]|0)+((k[F>>2]|0)-b);k[F>>2]=b;k[e>>2]=1;k[g>>2]=(k[M>>2]|0)-f;f=1;r=N;return f|0}function rh(){return Zc(104)|0}function sh(a){a=a|0;if(!a)return;cd(a);return}function th(a){a=a|0;return (k[a+12>>2]|0)-(k[a+16>>2]|0)|0}function uh(a,b){a=a|0;b=b|0;var c=0,d=0;k[a+100>>2]=a+24;k[a+4>>2]=32768;k[a>>2]=0;d=b+-1|0;k[a+12>>2]=d;c=a+8|0;k[c>>2]=12;k[c>>2]=(i[d>>0]|0)==-1?13:12;k[a+16>>2]=b;return}function vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=k[a+100>>2]|0;f=k[e>>2]|0;h=(k[f+4>>2]|0)==(b|0);d=k[f>>2]|0;j=a+4|0;b=(k[j>>2]|0)-d|0;k[j>>2]=b;if(!h){if(b>>>0<d>>>0){h=(k[a>>2]|0)+d|0;k[a>>2]=h;d=b;b=h;h=a}else{k[j>>2]=d;b=k[a>>2]|0;h=a}k[e>>2]=k[f+12>>2];g=a+8|0;f=a+12|0;e=b;b=k[g>>2]|0;while(1){d=d<<1;k[j>>2]=d;c=e<<1;k[h>>2]=c;b=b+-1|0;k[g>>2]=b;if(!b){b=k[f>>2]|0;d=i[b>>0]|0;do if(d<<24>>24!=-1){if(!(c&134217728)){c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>18;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}i[b>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){a=k[h>>2]&134217727;k[h>>2]=a;c=b+1|0;k[f>>2]=c;i[c>>0]=a>>>20;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[f>>2]=c;i[c>>0]=(k[h>>2]|0)>>>19;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}}else{c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>19;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7}while(0);d=k[j>>2]|0}if(!(d&32768))e=c;else break}return}if(b&32768){k[a>>2]=(k[a>>2]|0)+d;return}if(b>>>0<d>>>0){k[j>>2]=d;c=k[a>>2]|0;h=a}else{c=(k[a>>2]|0)+d|0;k[a>>2]=c;d=b;h=a}k[e>>2]=k[f+8>>2];g=a+8|0;f=a+12|0;e=c;b=k[g>>2]|0;while(1){d=d<<1;k[j>>2]=d;c=e<<1;k[h>>2]=c;b=b+-1|0;k[g>>2]=b;if(!b){b=k[f>>2]|0;d=i[b>>0]|0;do if(d<<24>>24!=-1){if(!(c&134217728)){c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>18;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}i[b>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){a=k[h>>2]&134217727;k[h>>2]=a;c=b+1|0;k[f>>2]=c;i[c>>0]=a>>>20;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[f>>2]=c;i[c>>0]=(k[h>>2]|0)>>>19;c=k[h>>2]&524287;k[h>>2]=c;k[g>>2]=8;b=8;break}}else{c=b+1|0;k[f>>2]=c;i[c>>0]=e>>>19;c=k[h>>2]&1048575;k[h>>2]=c;k[g>>2]=7;b=7}while(0);d=k[j>>2]|0}if(!(d&32768))e=c;else break}return}function wh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=k[a>>2]|0;d=f|65535;e=a+8|0;d=(d>>>0<((k[a+4>>2]|0)+f|0)>>>0?d:d+-32768|0)<<k[e>>2];k[a>>2]=d;f=a+12|0;b=k[f>>2]|0;c=i[b>>0]|0;do if(c<<24>>24!=-1){if(!(d&134217728)){b=b+1|0;k[f>>2]=b;i[b>>0]=d>>>19;b=k[a>>2]&524287;k[a>>2]=b;k[e>>2]=8;c=8;break}i[b>>0]=c+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){c=k[a>>2]&134217727;k[a>>2]=c;b=b+1|0;k[f>>2]=b;i[b>>0]=c>>>20;b=k[a>>2]&1048575;k[a>>2]=b;k[e>>2]=7;c=7;break}else{b=b+1|0;k[f>>2]=b;i[b>>0]=(k[a>>2]|0)>>>19;b=k[a>>2]&524287;k[a>>2]=b;k[e>>2]=8;c=8;break}}else{b=b+1|0;k[f>>2]=b;i[b>>0]=d>>>20;b=k[a>>2]&1048575;k[a>>2]=b;k[e>>2]=7;c=7}while(0);b=b<<c;k[a>>2]=b;c=k[f>>2]|0;d=i[c>>0]|0;do if(d<<24>>24!=-1){if(!(b&134217728)){d=c+1|0;k[f>>2]=d;i[d>>0]=b>>>19;k[a>>2]=k[a>>2]&524287;k[e>>2]=8;break}i[c>>0]=d+1<<24>>24;b=k[f>>2]|0;if((i[b>>0]|0)==-1){c=k[a>>2]&134217727;k[a>>2]=c;d=b+1|0;k[f>>2]=d;i[d>>0]=c>>>20;k[a>>2]=k[a>>2]&1048575;k[e>>2]=7;break}else{d=b+1|0;k[f>>2]=d;i[d>>0]=(k[a>>2]|0)>>>19;k[a>>2]=k[a>>2]&524287;k[e>>2]=8;break}}else{d=c+1|0;k[f>>2]=d;i[d>>0]=b>>>20;k[a>>2]=k[a>>2]&1048575;k[e>>2]=7}while(0);b=k[f>>2]|0;if((i[b>>0]|0)==-1)return;k[f>>2]=b+1;return}function xh(a){a=a|0;k[a>>2]=0;k[a+8>>2]=8;return}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;d=(k[c>>2]|0)+-1|0;k[c>>2]=d;b=(b<<d)+(k[a>>2]|0)|0;k[a>>2]=b;if(d)return;d=a+12|0;e=(k[d>>2]|0)+1|0;k[d>>2]=e;i[e>>0]=b;k[c>>2]=8;k[c>>2]=(i[k[d>>2]>>0]|0)==-1?7:8;k[a>>2]=0;return}function zh(a){a=a|0;k[a+28>>2]=1156;k[a+32>>2]=1156;k[a+36>>2]=1156;k[a+40>>2]=1156;k[a+44>>2]=1156;k[a+48>>2]=1156;k[a+52>>2]=1156;k[a+56>>2]=1156;k[a+60>>2]=1156;k[a+64>>2]=1156;k[a+68>>2]=1156;k[a+72>>2]=1156;k[a+76>>2]=1156;k[a+80>>2]=1156;k[a+84>>2]=1156;k[a+88>>2]=1156;k[a+96>>2]=2628;k[a+92>>2]=1252;k[a+24>>2]=1284;return}function Ah(a){a=a|0;k[a+24>>2]=1156;k[a+28>>2]=1156;k[a+32>>2]=1156;k[a+36>>2]=1156;k[a+40>>2]=1156;k[a+44>>2]=1156;k[a+48>>2]=1156;k[a+52>>2]=1156;k[a+56>>2]=1156;k[a+60>>2]=1156;k[a+64>>2]=1156;k[a+68>>2]=1156;k[a+72>>2]=1156;k[a+76>>2]=1156;k[a+80>>2]=1156;k[a+84>>2]=1156;k[a+88>>2]=1156;k[a+92>>2]=1156;k[a+96>>2]=1156;return}function Bh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[a+24+(b<<2)>>2]=1156+((d<<1)+c<<4);return}function Ch(a){a=a|0;var b=0,c=0;k[a+100>>2]=a+24;k[a+4>>2]=32768;k[a>>2]=0;b=a+8|0;k[b>>2]=12;c=a+12|0;a=(k[c>>2]|0)+-1|0;k[c>>2]=a;if((i[a>>0]|0)!=-1)return;k[b>>2]=13;return}function Dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;g=a+8|0;b=k[g>>2]|0;d=12-b|0;if((d|0)>0){e=a+12|0;c=k[a>>2]|0;do{b=c<<b;k[a>>2]=b;k[g>>2]=0;c=k[e>>2]|0;f=i[c>>0]|0;do if(f<<24>>24!=-1){if(!(b&134217728)){c=c+1|0;k[e>>2]=c;i[c>>0]=b>>>19;c=k[a>>2]&524287;k[a>>2]=c;k[g>>2]=8;b=8;break}i[c>>0]=f+1<<24>>24;b=k[e>>2]|0;if((i[b>>0]|0)==-1){f=k[a>>2]&134217727;k[a>>2]=f;c=b+1|0;k[e>>2]=c;i[c>>0]=f>>>20;c=k[a>>2]&1048575;k[a>>2]=c;k[g>>2]=7;b=7;break}else{c=b+1|0;k[e>>2]=c;i[c>>0]=(k[a>>2]|0)>>>19;c=k[a>>2]&524287;k[a>>2]=c;k[g>>2]=8;b=8;break}}else{c=c+1|0;k[e>>2]=c;i[c>>0]=b>>>20;c=k[a>>2]&1048575;k[a>>2]=c;k[g>>2]=7;b=7}while(0);d=d-b|0}while((d|0)>0)}else e=a+12|0;b=k[e>>2]|0;c=i[b>>0]|0;if(c<<24>>24==-1)return;d=k[a>>2]|0;if(!(d&134217728)){f=b+1|0;k[e>>2]=f;i[f>>0]=d>>>19;k[a>>2]=k[a>>2]&524287;k[g>>2]=8;return}i[b>>0]=c+1<<24>>24;b=k[e>>2]|0;if((i[b>>0]|0)==-1){d=k[a>>2]&134217727;k[a>>2]=d;f=b+1|0;k[e>>2]=f;i[f>>0]=d>>>20;k[a>>2]=k[a>>2]&1048575;k[g>>2]=7;return}else{f=b+1|0;k[e>>2]=f;i[f>>0]=(k[a>>2]|0)>>>19;k[a>>2]=k[a>>2]&524287;k[g>>2]=8;return}}function Eh(a){a=a|0;k[a+100>>2]=a+96;vh(a,1);vh(a,0);vh(a,1);vh(a,0);return}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;k[a+100>>2]=a+24;k[a+16>>2]=b;k[a+20>>2]=b+c;e=a+12|0;k[e>>2]=b;do if(c){f=l[b>>0]<<16;k[a>>2]=f;d=b+1|0;if((c|0)==1)c=255;else c=l[d>>0]|0;if((i[b>>0]|0)!=-1){k[e>>2]=d;d=f|c<<8;k[a>>2]=d;c=a+8|0;k[c>>2]=8;e=a;f=1;break}if(c>>>0>143){d=f|65280;k[a>>2]=d;c=a+8|0;k[c>>2]=8;e=a;f=1;break}else{k[e>>2]=d;d=f+(c<<9)|0;k[a>>2]=d;c=a+8|0;k[c>>2]=7;e=a;f=0;break}}else{k[a>>2]=16776960;c=a+8|0;k[c>>2]=8;d=16776960;e=a;f=1}while(0);k[e>>2]=d<<7;k[c>>2]=f;k[a+4>>2]=32768;return 1}function Gh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0;c=k[a+100>>2]|0;d=k[c>>2]|0;g=k[d>>2]|0;n=a+4|0;f=(k[n>>2]|0)-g|0;k[n>>2]=f;e=k[a>>2]|0;if(e>>>16>>>0<g>>>0){k[n>>2]=g;b=k[d+4>>2]|0;if(f>>>0<g>>>0)k[c>>2]=k[d+8>>2];else{k[c>>2]=k[d+12>>2];b=1-b|0}h=a+8|0;j=a+12|0;m=a+20|0;d=k[h>>2]|0;c=e;do{do if(!d){e=k[j>>2]|0;d=k[m>>2]|0;if((e|0)==(d|0)){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}f=e+1|0;if((f|0)==(d|0))d=255;else d=l[f>>0]|0;if((i[e>>0]|0)!=-1){k[j>>2]=f;c=c+(d<<8)|0;k[a>>2]=c;k[h>>2]=8;d=8;break}if(d>>>0>143){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}else{k[j>>2]=f;c=c+(d<<9)|0;k[a>>2]=c;k[h>>2]=7;d=7;break}}while(0);g=g<<1;k[n>>2]=g;c=c<<1;k[a>>2]=c;d=d+-1|0;k[h>>2]=d}while(g>>>0<32768);return b|0}e=e-(g<<16)|0;k[a>>2]=e;if(f&32768){a=k[d+4>>2]|0;return a|0}b=k[d+4>>2]|0;if(g>>>0>f>>>0){k[c>>2]=k[d+12>>2];b=1-b|0}else k[c>>2]=k[d+8>>2];h=a+8|0;j=a+12|0;m=a+20|0;d=k[h>>2]|0;c=e;g=f;do{do if(!d){e=k[j>>2]|0;d=k[m>>2]|0;if((e|0)==(d|0)){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}f=e+1|0;if((f|0)==(d|0))d=255;else d=l[f>>0]|0;if((i[e>>0]|0)!=-1){k[j>>2]=f;c=c+(d<<8)|0;k[a>>2]=c;k[h>>2]=8;d=8;break}if(d>>>0>143){c=c+65280|0;k[a>>2]=c;k[h>>2]=8;d=8;break}else{k[j>>2]=f;c=c+(d<<9)|0;k[a>>2]=c;k[h>>2]=7;d=7;break}}while(0);g=g<<1;k[n>>2]=g;c=c<<1;k[a>>2]=c;d=d+-1|0;k[h>>2]=d}while(g>>>0<32768);return b|0}function Hh(){return Zc(28)|0}function Ih(a){a=a|0;if(!a)return;cd(a);return}function Jh(a,b,c){a=a|0;b=b|0;c=c|0;k[a+20>>2]=b;k[a+8>>2]=c;k[a+12>>2]=0;i[a>>0]=0;k[a+4>>2]=0;return}function Kh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+4|0;b=k[e>>2]|0;do if(!b){k[e>>2]=8;c=a+12|0;d=k[c>>2]|0;if((d|0)==(k[a+8>>2]|0)){i[a>>0]=-1;b=8;c=-1;break}if((i[a>>0]|0)==-1){k[e>>2]=7;b=7}else b=8;f=i[(k[a+20>>2]|0)+d>>0]|0;i[a>>0]=f;k[c>>2]=d+1;c=f}else c=i[a>>0]|0;while(0);f=b+-1|0;k[e>>2]=f;return (c&255)>>>f&1|0}function Lh(){var a=0;if(!(k[665]|0))a=2712;else{a=(La()|0)+60|0;a=k[a>>2]|0}return a|0}function Mh(a){a=a|0;var b=0,c=0;b=0;while(1){if((l[22198+b>>0]|0)==(a|0)){c=2;break}b=b+1|0;if((b|0)==87){b=87;a=22286;c=5;break}}if((c|0)==2)if(!b)a=22286;else{a=22286;c=5}if((c|0)==5)while(1){c=a;while(1){a=c+1|0;if(!(i[c>>0]|0))break;else c=a}b=b+-1|0;if(!b)break;else c=5}return a|0}function Nh(a){a=a|0;var b=0;if(a>>>0>4294963200){b=Lh()|0;k[b>>2]=0-a;a=-1}return a|0}function Oh(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=bj(c|0,d|0,52)|0;e=e&2047;switch(e|0){case 0:{if(a!=0.0){a=+Oh(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=e+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;a=+p[t>>3]}}return +a}function Ph(a,b){a=+a;b=b|0;return +(+Oh(a,b))}function Qh(a,b){a=+a;b=b|0;return +(+Th(a,b))}function Rh(a){a=+a;return ~~+Sh(a)|0}function Sh(a){a=+a;var b=0;b=(o[t>>2]=a,k[t>>2]|0);if((b&2130706432)>>>0<=1249902592){b=(b|0)<0;a=b?a+-8388608.0+8388608.0:a+8388608.0+-8388608.0;if(a==0.0)a=b?-0.0:0.0}return +a}function Th(a,b){a=+a;b=b|0;var c=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;c=b+-1023|0;if((c|0)>1023){c=b+-2046|0;c=(c|0)>1023?1023:c;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;c=b+1022|0;if((c|0)<-1022){c=b+2044|0;c=(c|0)<-1022?-1022:c;a=a*2.2250738585072014e-308}}else c=b;c=$i(c+1023|0,0,52)|0;b=L;k[t>>2]=c;k[t+4>>2]=b;return +(a*+p[t>>3])}function Uh(a,b,c){a=a|0;b=b|0;c=c|0;do if(a){if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}else{a=Lh()|0;k[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function Vh(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Uh(a,b,0)|0;return a|0}function Wh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+112|0;m=n+40|0;j=n+24|0;h=n+16|0;e=n;l=n+52|0;d=i[b>>0]|0;if(Bi(24090,d<<24>>24,4)|0){c=Pi(1144)|0;if(!c)c=0;else{f=c;g=f+112|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));if(!(Di(b,43)|0))k[c>>2]=d<<24>>24==114?8:4;if(Di(b,101)|0){k[e>>2]=a;k[e+4>>2]=2;k[e+8>>2]=1;Aa(221,e|0)|0;d=i[b>>0]|0}if(d<<24>>24==97){k[h>>2]=a;k[h+4>>2]=3;d=Aa(221,h|0)|0;if(!(d&1024)){k[j>>2]=a;k[j+4>>2]=4;k[j+8>>2]=d|1024;Aa(221,j|0)|0}b=k[c>>2]|128;k[c>>2]=b}else b=k[c>>2]|0;k[c+60>>2]=a;k[c+44>>2]=c+120;k[c+48>>2]=1024;d=c+75|0;i[d>>0]=-1;if((b&8|0)==0?(k[m>>2]=a,k[m+4>>2]=21505,k[m+8>>2]=l,(Oa(54,m|0)|0)==0):0)i[d>>0]=10;k[c+32>>2]=60;k[c+36>>2]=61;k[c+40>>2]=3;k[c+12>>2]=1;if(!(k[666]|0))k[c+76>>2]=-1;Ra(2688);d=k[671]|0;k[c+56>>2]=d;if(d)k[d+52>>2]=c;k[671]=c;Pa(2688)}}else{c=Lh()|0;k[c>>2]=22;c=0}r=n;return c|0}function Xh(a){a=a|0;var b=0,c=0,d=0;c=(Di(a,43)|0)==0;b=i[a>>0]|0;c=c?b<<24>>24!=114&1:2;d=(Di(a,120)|0)==0;c=d?c:c|128;a=(Di(a,101)|0)==0;a=a?c:c|524288;a=b<<24>>24==114?a:a|64;a=b<<24>>24==119?a|512:a;return (b<<24>>24==97?a|1024:a)|0}function Yh(a){a=a|0;return 0}function Zh(a){a=a|0;return}function _h(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;g=b&255;i[h>>0]=g;d=a+16|0;e=k[d>>2]|0;if(!e)if(!(fi(a)|0)){e=k[d>>2]|0;f=4}else c=-1;else f=4;do if((f|0)==4){d=a+20|0;f=k[d>>2]|0;if(f>>>0<e>>>0?(c=b&255,(c|0)!=(i[a+75>>0]|0)):0){k[d>>2]=f+1;i[f>>0]=g;break}if(($a[k[a+36>>2]&63](a,h,1)|0)==1)c=l[h>>0]|0;else c=-1}while(0);r=j;return c|0}function $h(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=Nh(Sa(6,c|0)|0)|0;r=b;return a|0}function ai(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+48|0;f=l+16|0;e=l;d=l+32|0;k[d>>2]=b;g=d+4|0;j=a+48|0;m=k[j>>2]|0;k[g>>2]=c-((m|0)!=0&1);h=a+44|0;k[d+8>>2]=k[h>>2];k[d+12>>2]=m;if(!(k[665]|0)){k[f>>2]=k[a+60>>2];k[f+4>>2]=d;k[f+8>>2]=2;d=Nh(Wa(145,f|0)|0)|0}else{Da(5,a|0);k[e>>2]=k[a+60>>2];k[e+4>>2]=d;k[e+8>>2]=2;d=Nh(Wa(145,e|0)|0)|0;za(0)}if((d|0)>=1){g=k[g>>2]|0;if(d>>>0>g>>>0){f=k[h>>2]|0;e=a+4|0;k[e>>2]=f;k[a+8>>2]=f+(d-g);if(!(k[j>>2]|0))d=c;else{k[e>>2]=f+1;i[b+(c+-1)>>0]=i[f>>0]|0;d=c}}}else{k[a>>2]=k[a>>2]|d&48^16;k[a+8>>2]=0;k[a+4>>2]=0}r=l;return d|0}function bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;f=e;d=e+20|0;k[f>>2]=k[a+60>>2];k[f+4>>2]=0;k[f+8>>2]=b;k[f+12>>2]=d;k[f+16>>2]=c;if((Nh(Va(140,f|0)|0)|0)<0){k[d>>2]=-1;a=-1}else a=k[d>>2]|0;r=e;return a|0}function ci(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;d=p+32|0;n=a+28|0;e=k[n>>2]|0;k[d>>2]=e;o=a+20|0;e=(k[o>>2]|0)-e|0;k[d+4>>2]=e;k[d+8>>2]=b;k[d+12>>2]=c;i=a+60|0;j=a+44|0;b=2;e=e+c|0;while(1){if(!(k[665]|0)){k[m>>2]=k[i>>2];k[m+4>>2]=d;k[m+8>>2]=b;g=Nh(Xa(146,m|0)|0)|0}else{Da(6,a|0);k[l>>2]=k[i>>2];k[l+4>>2]=d;k[l+8>>2]=b;g=Nh(Xa(146,l|0)|0)|0;za(0)}if((e|0)==(g|0)){e=6;break}if((g|0)<0){e=8;break}e=e-g|0;f=k[d+4>>2]|0;if(g>>>0<=f>>>0)if((b|0)==2){k[n>>2]=(k[n>>2]|0)+g;h=f;b=2}else h=f;else{h=k[j>>2]|0;k[n>>2]=h;k[o>>2]=h;h=k[d+12>>2]|0;g=g-f|0;d=d+8|0;b=b+-1|0}k[d>>2]=(k[d>>2]|0)+g;k[d+4>>2]=h-g}if((e|0)==6){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((e|0)==8){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((b|0)==2)c=0;else c=c-(k[d+4>>2]|0)|0}r=p;return c|0}function di(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+80|0;d=e;k[a+36>>2]=61;if((k[a>>2]&64|0)==0?(k[d>>2]=k[a+60>>2],k[d+4>>2]=21505,k[d+8>>2]=e+12,(Oa(54,d|0)|0)!=0):0)i[a+75>>0]=-1;d=ci(a,b,c)|0;r=e;return d|0}function ei(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=a+20|0;c=a+44|0;if((k[b>>2]|0)>>>0>(k[c>>2]|0)>>>0)$a[k[a+36>>2]&63](a,0,0)|0;k[a+16>>2]=0;k[a+28>>2]=0;k[b>>2]=0;b=k[a>>2]|0;if(b&20)if(!(b&4))b=-1;else{k[a>>2]=b|32;b=-1}else{b=k[c>>2]|0;k[a+8>>2]=b;k[a+4>>2]=b;b=0}return b|0}function fi(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);b=0}else{k[a>>2]=b|32;b=-1}return b|0}function gi(a){a=a|0;var b=0,c=0,d=0;d=(k[a>>2]&1|0)!=0;if(!d){Ra(2688);c=k[a+52>>2]|0;b=a+56|0;if(c)k[c+56>>2]=k[b>>2];b=k[b>>2]|0;if(b)k[b+52>>2]=c;if((k[671]|0)==(a|0))k[671]=b;Pa(2688)}b=hi(a)|0;b=eb[k[a+12>>2]&15](a)|0|b;c=k[a+92>>2]|0;if(c)Qi(c);if(!d)Qi(a);return b|0}function hi(a){a=a|0;var b=0,c=0;do if(a){if((k[a+76>>2]|0)<=-1){b=Ji(a)|0;break}c=(Yh(a)|0)==0;b=Ji(a)|0;if(!c)Zh(a)}else{if(!(k[677]|0))b=0;else b=hi(k[677]|0)|0;Ra(2688);a=k[671]|0;if(a)do{if((k[a+76>>2]|0)>-1)c=Yh(a)|0;else c=0;if((k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0)b=Ji(a)|0|b;if(c)Zh(a);a=k[a+56>>2]|0}while((a|0)!=0);Pa(2688)}while(0);return b|0}function ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+32|0;d=e+16|0;c=e;if(Bi(24090,i[b>>0]|0,4)|0){f=Xh(b)|0|32768;k[c>>2]=a;k[c+4>>2]=f;k[c+8>>2]=438;c=Nh(Ta(5,c|0)|0)|0;if((c|0)>=0){a=Wh(c,b)|0;if(!a){k[d>>2]=c;Sa(6,d|0)|0;a=0}}else a=0}else{a=Lh()|0;k[a>>2]=22;a=0}r=e;return a|0}function ji(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=yi(a,b,e)|0;r=d;return c|0}function ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((k[b+76>>2]|0)>=0?(Yh(b)|0)!=0:0){if((i[b+75>>0]|0)!=(a|0)?(d=b+20|0,e=k[d>>2]|0,e>>>0<(k[b+16>>2]|0)>>>0):0){k[d>>2]=e+1;i[e>>0]=a;c=a&255}else c=_h(b,a)|0;Zh(b)}else g=3;do if((g|0)==3){if((i[b+75>>0]|0)!=(a|0)?(f=b+20|0,c=k[f>>2]|0,c>>>0<(k[b+16>>2]|0)>>>0):0){k[f>>2]=c+1;i[c>>0]=a;c=a&255;break}c=_h(b,a)|0}while(0);return c|0}function li(a,b){a=a|0;b=b|0;return (ui(a,Gi(a)|0,1,b)|0)+-1|0}function mi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;h=ha(c,b)|0;if((k[d+76>>2]|0)>-1)j=Yh(d)|0;else j=0;e=d+74|0;f=i[e>>0]|0;i[e>>0]=f+255|f;e=d+4|0;f=k[e>>2]|0;g=(k[d+8>>2]|0)-f|0;if((g|0)>0){g=g>>>0<h>>>0?g:h;cj(a|0,f|0,g|0)|0;k[e>>2]=f+g;a=a+g|0;e=h-g|0}else e=h;a:do if(!e)l=13;else{g=d+32|0;f=e;while(1){if(ei(d)|0){c=f;break}e=$a[k[g>>2]&63](d,a,f)|0;if((e+1|0)>>>0<2){c=f;break}if((f|0)==(e|0)){l=13;break a}else{a=a+e|0;f=f-e|0}}if(j)Zh(d);c=((h-c|0)>>>0)/(b>>>0)|0}while(0);if((l|0)==13)if(j)Zh(d);return c|0}function ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)==1)b=b-(k[a+8>>2]|0)+(k[a+4>>2]|0)|0;e=a+20|0;d=a+28|0;if((k[e>>2]|0)>>>0>(k[d>>2]|0)>>>0?($a[k[a+36>>2]&63](a,0,0)|0,(k[e>>2]|0)==0):0)b=-1;else{k[a+16>>2]=0;k[d>>2]=0;k[e>>2]=0;if(($a[k[a+40>>2]&63](a,b,c)|0)<0)b=-1;else{k[a+8>>2]=0;k[a+4>>2]=0;k[a>>2]=k[a>>2]&-17;b=0}}return b|0}function oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((k[a+76>>2]|0)>-1){d=(Yh(a)|0)==0;b=ni(a,b,c)|0;if(!d)Zh(a)}else b=ni(a,b,c)|0;return b|0}function pi(a,b,c){a=a|0;b=b|0;c=c|0;return oi(a,b,c)|0}function qi(a){a=a|0;var b=0;if(!(k[a>>2]&128))b=1;else b=(k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0?2:1;b=$a[k[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(k[a+8>>2]|0)+(k[a+4>>2]|0)+(k[a+20>>2]|0)-(k[a+28>>2]|0)|0;return b|0}function ri(a){a=a|0;var b=0;if((k[a+76>>2]|0)>-1){b=(Yh(a)|0)==0;a=qi(a)|0}else a=qi(a)|0;return a|0}function si(a){a=a|0;return ri(a)|0}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=c+16|0;e=k[d>>2]|0;if(!e)if(!(fi(c)|0)){e=k[d>>2]|0;f=4}else d=0;else f=4;a:do if((f|0)==4){g=c+20|0;f=k[g>>2]|0;if((e-f|0)>>>0<b>>>0){d=$a[k[c+36>>2]&63](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){d=b;while(1){if(!d){e=f;d=0;break b}e=d+-1|0;if((i[a+e>>0]|0)==10)break;else d=e}if(($a[k[c+36>>2]&63](c,a,d)|0)>>>0<d>>>0)break a;b=b-d|0;a=a+d|0;e=k[g>>2]|0}else{e=f;d=0}while(0);cj(e|0,a|0,b|0)|0;k[g>>2]=(k[g>>2]|0)+b;d=d+b|0}while(0);return d|0}function ui(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ha(c,b)|0;if((k[d+76>>2]|0)>-1){f=(Yh(d)|0)==0;a=ti(a,e,d)|0;if(!f)Zh(d)}else a=ti(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function vi(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;k[d>>2]=b;b=yi(k[676]|0,a,d)|0;r=c;return b|0}function wi(a){a=a|0;var b=0,c=0,d=0,e=0;d=k[676]|0;if((k[d+76>>2]|0)>-1)e=Yh(d)|0;else e=0;do if((li(a,d)|0)<0)b=1;else{if((i[d+75>>0]|0)!=10?(b=d+20|0,c=k[b>>2]|0,c>>>0<(k[d+16>>2]|0)>>>0):0){k[b>>2]=c+1;i[c>>0]=10;b=0;break}b=(_h(d,10)|0)<0}while(0);if(e)Zh(d);return b<<31>>31|0}function xi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Ai(a,b,e)|0;r=d;return c|0}function yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+224|0;n=s+80|0;q=s+96|0;p=s;o=s+136|0;d=q;e=d+40|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));k[n>>2]=k[c>>2];if((Ki(0,b,n,p,q)|0)<0)c=-1;else{if((k[a+76>>2]|0)>-1)l=Yh(a)|0;else l=0;c=k[a>>2]|0;m=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;c=a+48|0;if(!(k[c>>2]|0)){e=a+44|0;f=k[e>>2]|0;k[e>>2]=o;g=a+28|0;k[g>>2]=o;h=a+20|0;k[h>>2]=o;k[c>>2]=80;j=a+16|0;k[j>>2]=o+80;d=Ki(a,b,n,p,q)|0;if(f){$a[k[a+36>>2]&63](a,0,0)|0;d=(k[h>>2]|0)==0?-1:d;k[e>>2]=f;k[c>>2]=0;k[j>>2]=0;k[g>>2]=0;k[h>>2]=0}}else d=Ki(a,b,n,p,q)|0;c=k[a>>2]|0;k[a>>2]=c|m;if(l)Zh(a);c=(c&32|0)==0?d:-1}r=s;return c|0}function zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+128|0;e=m+112|0;l=m;f=l;g=2716;h=f+112|0;do{k[f>>2]=k[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if((b+-1|0)>>>0>2147483646)if(!b){b=1;j=4}else{b=Lh()|0;k[b>>2]=75;b=-1}else{e=a;j=4}if((j|0)==4){j=-2-e|0;j=b>>>0>j>>>0?j:b;k[l+48>>2]=j;a=l+20|0;k[a>>2]=e;k[l+44>>2]=e;b=e+j|0;e=l+16|0;k[e>>2]=b;k[l+28>>2]=b;b=yi(l,c,d)|0;if(j){c=k[a>>2]|0;i[c+(((c|0)==(k[e>>2]|0))<<31>>31)>>0]=0}}r=m;return b|0}function Ai(a,b,c){a=a|0;b=b|0;c=c|0;return zi(a,2147483647,b,c)|0}function Bi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24){g=6;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);if((g|0)==5)if(d)g=6;else c=0;b:do if((g|0)==6){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=ha(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}while(0);return ((c|0)!=0?a:0)|0}function Ci(a,b){a=a|0;b=b|0;var c=0,d=0;c=b;a:do if(!((c^a)&3)){if(c&3)do{c=i[b>>0]|0;i[a>>0]=c;if(!(c<<24>>24))break a;b=b+1|0;a=a+1|0}while((b&3|0)!=0);c=k[b>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009)){d=a;while(1){b=b+4|0;a=d+4|0;k[d>>2]=c;c=k[b>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009)break;else d=a}}d=8}else d=8;while(0);if((d|0)==8){d=i[b>>0]|0;i[a>>0]=d;if(d<<24>>24)do{b=b+1|0;a=a+1|0;d=i[b>>0]|0;i[a>>0]=d}while(d<<24>>24!=0)}return a|0}function Di(a,b){a=a|0;b=b|0;a=Ei(a,b)|0;return ((i[a>>0]|0)==(b&255)<<24>>24?a:0)|0}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b&255;a:do if(!d)a=a+(Gi(a)|0)|0;else{if(a&3){c=b&255;do{e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}d=ha(d,16843009)|0;c=k[a>>2]|0;b:do if(!((c&-2139062144^-2139062144)&c+-16843009))do{e=c^d;if((e&-2139062144^-2139062144)&e+-16843009)break b;a=a+4|0;c=k[a>>2]|0}while(((c&-2139062144^-2139062144)&c+-16843009|0)==0);while(0);c=b&255;while(1){e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break;else a=a+1|0}}while(0);return a|0}function Fi(a,b){a=a|0;b=b|0;Ci(a,b)|0;return a|0}function Gi(a){a=a|0;var b=0,c=0,d=0;d=a;a:do if(!(d&3))c=4;else{b=a;a=d;while(1){if(!(i[b>>0]|0))break a;b=b+1|0;a=b;if(!(a&3)){a=b;c=4;break}}}while(0);if((c|0)==4){while(1){b=k[a>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))a=a+4|0;else break}if((b&255)<<24>>24)do a=a+1|0;while((i[a>>0]|0)!=0)}return a-d|0}function Hi(a){a=a|0;if(!(k[a+68>>2]|0))Zh(a);return}function Ii(a){a=a|0;if(!(k[a+68>>2]|0))Zh(a);return}function Ji(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+20|0;f=a+28|0;if((k[b>>2]|0)>>>0>(k[f>>2]|0)>>>0?($a[k[a+36>>2]&63](a,0,0)|0,(k[b>>2]|0)==0):0)b=-1;else{g=a+4|0;c=k[g>>2]|0;d=a+8|0;e=k[d>>2]|0;if(c>>>0<e>>>0)$a[k[a+40>>2]&63](a,c-e|0,1)|0;k[a+16>>2]=0;k[f>>2]=0;k[b>>2]=0;k[d>>2]=0;k[g>>2]=0;b=0}return b|0}
|
|
1232
|
+
function Ki(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0.0,o=0,q=0,s=0,u=0,v=0.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,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;ga=r;r=r+624|0;ba=ga+24|0;da=ga+16|0;ca=ga+588|0;Y=ga+576|0;aa=ga;V=ga+536|0;fa=ga+8|0;ea=ga+528|0;M=(a|0)!=0;N=V+40|0;U=N;V=V+39|0;W=fa+4|0;X=Y+12|0;Y=Y+11|0;Z=ca;_=X;$=_-Z|0;O=-2-Z|0;P=_+2|0;Q=ba+288|0;R=ca+9|0;S=R;T=ca+8|0;f=0;w=b;g=0;b=0;a:while(1){do if((f|0)>-1)if((g|0)>(2147483647-f|0)){f=Lh()|0;k[f>>2]=75;f=-1;break}else{f=g+f|0;break}while(0);g=i[w>>0]|0;if(!(g<<24>>24)){K=245;break}else h=w;b:while(1){switch(g<<24>>24){case 37:{g=h;K=9;break b}case 0:{g=h;break b}default:{}}J=h+1|0;g=i[J>>0]|0;h=J}c:do if((K|0)==9)while(1){K=0;if((i[g+1>>0]|0)!=37)break c;h=h+1|0;g=g+2|0;if((i[g>>0]|0)==37)K=9;else break}while(0);y=h-w|0;if(M?(k[a>>2]&32|0)==0:0)ti(w,y,a)|0;if((h|0)!=(w|0)){w=g;g=y;continue}o=g+1|0;h=i[o>>0]|0;m=(h<<24>>24)+-48|0;if(m>>>0<10){J=(i[g+2>>0]|0)==36;o=J?g+3|0:o;h=i[o>>0]|0;u=J?m:-1;b=J?1:b}else u=-1;g=h<<24>>24;d:do if((g&-32|0)==32){m=0;while(1){if(!(1<<g+-32&75913)){q=m;g=o;break d}m=1<<(h<<24>>24)+-32|m;o=o+1|0;h=i[o>>0]|0;g=h<<24>>24;if((g&-32|0)!=32){q=m;g=o;break}}}else{q=0;g=o}while(0);do if(h<<24>>24==42){m=g+1|0;h=(i[m>>0]|0)+-48|0;if(h>>>0<10?(i[g+2>>0]|0)==36:0){k[e+(h<<2)>>2]=10;b=1;g=g+3|0;h=k[d+((i[m>>0]|0)+-48<<3)>>2]|0}else{if(b){f=-1;break a}if(!M){x=q;g=m;b=0;J=0;break}b=(k[c>>2]|0)+(4-1)&~(4-1);h=k[b>>2]|0;k[c>>2]=b+4;b=0;g=m}if((h|0)<0){x=q|8192;J=0-h|0}else{x=q;J=h}}else{m=(h<<24>>24)+-48|0;if(m>>>0<10){h=0;do{h=(h*10|0)+m|0;g=g+1|0;m=(i[g>>0]|0)+-48|0}while(m>>>0<10);if((h|0)<0){f=-1;break a}else{x=q;J=h}}else{x=q;J=0}}while(0);e:do if((i[g>>0]|0)==46){m=g+1|0;h=i[m>>0]|0;if(h<<24>>24!=42){o=(h<<24>>24)+-48|0;if(o>>>0<10){g=m;h=0}else{g=m;o=0;break}while(1){h=(h*10|0)+o|0;g=g+1|0;o=(i[g>>0]|0)+-48|0;if(o>>>0>=10){o=h;break e}}}m=g+2|0;h=(i[m>>0]|0)+-48|0;if(h>>>0<10?(i[g+3>>0]|0)==36:0){k[e+(h<<2)>>2]=10;g=g+4|0;o=k[d+((i[m>>0]|0)+-48<<3)>>2]|0;break}if(b){f=-1;break a}if(M){g=(k[c>>2]|0)+(4-1)&~(4-1);o=k[g>>2]|0;k[c>>2]=g+4;g=m}else{g=m;o=0}}else o=-1;while(0);s=0;while(1){h=(i[g>>0]|0)+-65|0;if(h>>>0>57){f=-1;break a}m=g+1|0;h=i[25126+(s*58|0)+h>>0]|0;q=h&255;if((q+-1|0)>>>0<8){g=m;s=q}else{I=m;break}}if(!(h<<24>>24)){f=-1;break}m=(u|0)>-1;do if(h<<24>>24==19)if(m){f=-1;break a}else K=52;else{if(m){k[e+(u<<2)>>2]=q;G=d+(u<<3)|0;H=k[G+4>>2]|0;K=aa;k[K>>2]=k[G>>2];k[K+4>>2]=H;K=52;break}if(!M){f=0;break a}Mi(aa,q,c)}while(0);if((K|0)==52?(K=0,!M):0){w=I;g=y;continue}u=i[g>>0]|0;u=(s|0)!=0&(u&15|0)==3?u&-33:u;m=x&-65537;H=(x&8192|0)==0?x:m;f:do switch(u|0){case 110:switch(s|0){case 0:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 1:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 2:{w=k[aa>>2]|0;k[w>>2]=f;k[w+4>>2]=((f|0)<0)<<31>>31;w=I;g=y;continue a}case 3:{j[k[aa>>2]>>1]=f;w=I;g=y;continue a}case 4:{i[k[aa>>2]>>0]=f;w=I;g=y;continue a}case 6:{k[k[aa>>2]>>2]=f;w=I;g=y;continue a}case 7:{w=k[aa>>2]|0;k[w>>2]=f;k[w+4>>2]=((f|0)<0)<<31>>31;w=I;g=y;continue a}default:{w=I;g=y;continue a}}case 112:{s=H|8;o=o>>>0>8?o:8;u=120;K=64;break}case 88:case 120:{s=H;K=64;break}case 111:{m=aa;h=k[m>>2]|0;m=k[m+4>>2]|0;if((h|0)==0&(m|0)==0)g=N;else{g=N;do{g=g+-1|0;i[g>>0]=h&7|48;h=bj(h|0,m|0,3)|0;m=L}while(!((h|0)==0&(m|0)==0))}if(!(H&8)){h=H;s=0;q=25606;K=77}else{s=U-g+1|0;h=H;o=(o|0)<(s|0)?s:o;s=0;q=25606;K=77}break}case 105:case 100:{h=aa;g=k[h>>2]|0;h=k[h+4>>2]|0;if((h|0)<0){g=Yi(0,0,g|0,h|0)|0;h=L;m=aa;k[m>>2]=g;k[m+4>>2]=h;m=1;q=25606;K=76;break f}if(!(H&2048)){q=H&1;m=q;q=(q|0)==0?25606:25608;K=76}else{m=1;q=25607;K=76}break}case 117:{h=aa;g=k[h>>2]|0;h=k[h+4>>2]|0;m=0;q=25606;K=76;break}case 99:{i[V>>0]=k[aa>>2];w=V;h=1;s=0;u=25606;g=N;break}case 109:{g=Lh()|0;g=Mh(k[g>>2]|0)|0;K=82;break}case 115:{g=k[aa>>2]|0;g=(g|0)!=0?g:25616;K=82;break}case 67:{k[fa>>2]=k[aa>>2];k[W>>2]=0;k[aa>>2]=fa;o=-1;K=86;break}case 83:{if(!o){Oi(a,32,J,0,H);g=0;K=98}else K=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{n=+p[aa>>3];k[da>>2]=0;p[t>>3]=n;if((k[t+4>>2]|0)>=0)if(!(H&2048)){G=H&1;F=G;G=(G|0)==0?25624:25629}else{F=1;G=25626}else{n=-n;F=1;G=25623}p[t>>3]=n;E=k[t+4>>2]&2146435072;do if(E>>>0<2146435072|(E|0)==2146435072&0<0){v=+Ph(n,da)*2.0;h=v!=0.0;if(h)k[da>>2]=(k[da>>2]|0)+-1;C=u|32;if((C|0)==97){w=u&32;y=(w|0)==0?G:G+9|0;x=F|2;g=12-o|0;do if(!(o>>>0>11|(g|0)==0)){n=8.0;do{g=g+-1|0;n=n*16.0}while((g|0)!=0);if((i[y>>0]|0)==45){n=-(n+(-v-n));break}else{n=v+n-n;break}}else n=v;while(0);h=k[da>>2]|0;g=(h|0)<0?0-h|0:h;g=Ni(g,((g|0)<0)<<31>>31,X)|0;if((g|0)==(X|0)){i[Y>>0]=48;g=Y}i[g+-1>>0]=(h>>31&2)+43;s=g+-2|0;i[s>>0]=u+15;q=(o|0)<1;m=(H&8|0)==0;h=ca;while(1){G=~~n;g=h+1|0;i[h>>0]=l[25590+G>>0]|w;n=(n-+(G|0))*16.0;do if((g-Z|0)==1){if(m&(q&n==0.0))break;i[g>>0]=46;g=h+2|0}while(0);if(!(n!=0.0))break;else h=g}o=(o|0)!=0&(O+g|0)<(o|0)?P+o-s|0:$-s+g|0;m=o+x|0;Oi(a,32,J,m,H);if(!(k[a>>2]&32))ti(y,x,a)|0;Oi(a,48,J,m,H^65536);g=g-Z|0;if(!(k[a>>2]&32))ti(ca,g,a)|0;h=_-s|0;Oi(a,48,o-(g+h)|0,0,0);if(!(k[a>>2]&32))ti(s,h,a)|0;Oi(a,32,J,m,H^8192);g=(m|0)<(J|0)?J:m;break}g=(o|0)<0?6:o;if(h){h=(k[da>>2]|0)+-28|0;k[da>>2]=h;n=v*268435456.0}else{n=v;h=k[da>>2]|0}E=(h|0)<0?ba:Q;D=E;h=E;do{B=~~n>>>0;k[h>>2]=B;h=h+4|0;n=(n-+(B>>>0))*1.0e9}while(n!=0.0);m=h;h=k[da>>2]|0;if((h|0)>0){q=E;while(1){s=(h|0)>29?29:h;o=m+-4|0;do if(o>>>0<q>>>0)o=q;else{h=0;do{B=$i(k[o>>2]|0,0,s|0)|0;B=aj(B|0,L|0,h|0,0)|0;h=L;A=jj(B|0,h|0,1e9,0)|0;k[o>>2]=A;h=ij(B|0,h|0,1e9,0)|0;o=o+-4|0}while(o>>>0>=q>>>0);if(!h){o=q;break}o=q+-4|0;k[o>>2]=h}while(0);while(1){if(m>>>0<=o>>>0)break;h=m+-4|0;if(!(k[h>>2]|0))m=h;else break}h=(k[da>>2]|0)-s|0;k[da>>2]=h;if((h|0)>0)q=o;else break}}else o=E;if((h|0)<0){y=((g+25|0)/9|0)+1|0;z=(C|0)==102;w=o;while(1){x=0-h|0;x=(x|0)>9?9:x;do if(w>>>0<m>>>0){h=(1<<x)+-1|0;q=1e9>>>x;o=0;s=w;do{B=k[s>>2]|0;k[s>>2]=(B>>>x)+o;o=ha(B&h,q)|0;s=s+4|0}while(s>>>0<m>>>0);h=(k[w>>2]|0)==0?w+4|0:w;if(!o){o=h;break}k[m>>2]=o;o=h;m=m+4|0}else o=(k[w>>2]|0)==0?w+4|0:w;while(0);h=z?E:o;m=(m-h>>2|0)>(y|0)?h+(y<<2)|0:m;h=(k[da>>2]|0)+x|0;k[da>>2]=h;if((h|0)>=0){w=o;break}else w=o}}else w=o;do if(w>>>0<m>>>0){h=(D-w>>2)*9|0;q=k[w>>2]|0;if(q>>>0<10)break;else o=10;do{o=o*10|0;h=h+1|0}while(q>>>0>=o>>>0)}else h=0;while(0);A=(C|0)==103;B=(g|0)!=0;o=g-((C|0)!=102?h:0)+((B&A)<<31>>31)|0;if((o|0)<(((m-D>>2)*9|0)+-9|0)){s=o+9216|0;z=(s|0)/9|0;o=E+(z+-1023<<2)|0;s=((s|0)%9|0)+1|0;if((s|0)<9){q=10;do{q=q*10|0;s=s+1|0}while((s|0)!=9)}else q=10;x=k[o>>2]|0;y=(x>>>0)%(q>>>0)|0;if((y|0)==0?(E+(z+-1022<<2)|0)==(m|0):0)q=w;else K=163;do if((K|0)==163){K=0;v=(((x>>>0)/(q>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;s=(q|0)/2|0;do if(y>>>0<s>>>0)n=.5;else{if((y|0)==(s|0)?(E+(z+-1022<<2)|0)==(m|0):0){n=1.0;break}n=1.5}while(0);do if(F){if((i[G>>0]|0)!=45)break;v=-v;n=-n}while(0);s=x-y|0;k[o>>2]=s;if(!(v+n!=v)){q=w;break}C=s+q|0;k[o>>2]=C;if(C>>>0>999999999){h=w;while(1){q=o+-4|0;k[o>>2]=0;if(q>>>0<h>>>0){h=h+-4|0;k[h>>2]=0}C=(k[q>>2]|0)+1|0;k[q>>2]=C;if(C>>>0>999999999)o=q;else{w=h;o=q;break}}}h=(D-w>>2)*9|0;s=k[w>>2]|0;if(s>>>0<10){q=w;break}else q=10;do{q=q*10|0;h=h+1|0}while(s>>>0>=q>>>0);q=w}while(0);C=o+4|0;w=q;m=m>>>0>C>>>0?C:m}y=0-h|0;while(1){if(m>>>0<=w>>>0){z=0;C=m;break}o=m+-4|0;if(!(k[o>>2]|0))m=o;else{z=1;C=m;break}}do if(A){g=(B&1^1)+g|0;if((g|0)>(h|0)&(h|0)>-5){u=u+-1|0;g=g+-1-h|0}else{u=u+-2|0;g=g+-1|0}m=H&8;if(m)break;do if(z){m=k[C+-4>>2]|0;if(!m){o=9;break}if(!((m>>>0)%10|0)){q=10;o=0}else{o=0;break}do{q=q*10|0;o=o+1|0}while(((m>>>0)%(q>>>0)|0|0)==0)}else o=9;while(0);m=((C-D>>2)*9|0)+-9|0;if((u|32|0)==102){m=m-o|0;m=(m|0)<0?0:m;g=(g|0)<(m|0)?g:m;m=0;break}else{m=m+h-o|0;m=(m|0)<0?0:m;g=(g|0)<(m|0)?g:m;m=0;break}}else m=H&8;while(0);x=g|m;q=(x|0)!=0&1;s=(u|32|0)==102;if(s){h=(h|0)>0?h:0;u=0}else{o=(h|0)<0?y:h;o=Ni(o,((o|0)<0)<<31>>31,X)|0;if((_-o|0)<2)do{o=o+-1|0;i[o>>0]=48}while((_-o|0)<2);i[o+-1>>0]=(h>>31&2)+43;D=o+-2|0;i[D>>0]=u;h=_-D|0;u=D}y=F+1+g+q+h|0;Oi(a,32,J,y,H);if(!(k[a>>2]&32))ti(G,F,a)|0;Oi(a,48,J,y,H^65536);do if(s){o=w>>>0>E>>>0?E:w;h=o;do{m=Ni(k[h>>2]|0,0,R)|0;do if((h|0)==(o|0)){if((m|0)!=(R|0))break;i[T>>0]=48;m=T}else{if(m>>>0<=ca>>>0)break;do{m=m+-1|0;i[m>>0]=48}while(m>>>0>ca>>>0)}while(0);if(!(k[a>>2]&32))ti(m,S-m|0,a)|0;h=h+4|0}while(h>>>0<=E>>>0);do if(x){if(k[a>>2]&32)break;ti(25658,1,a)|0}while(0);if((g|0)>0&h>>>0<C>>>0){m=h;while(1){h=Ni(k[m>>2]|0,0,R)|0;if(h>>>0>ca>>>0)do{h=h+-1|0;i[h>>0]=48}while(h>>>0>ca>>>0);if(!(k[a>>2]&32))ti(h,(g|0)>9?9:g,a)|0;m=m+4|0;h=g+-9|0;if(!((g|0)>9&m>>>0<C>>>0)){g=h;break}else g=h}}Oi(a,48,g+9|0,9,0)}else{s=z?C:w+4|0;if((g|0)>-1){q=(m|0)==0;o=w;do{h=Ni(k[o>>2]|0,0,R)|0;if((h|0)==(R|0)){i[T>>0]=48;h=T}do if((o|0)==(w|0)){m=h+1|0;if(!(k[a>>2]&32))ti(h,1,a)|0;if(q&(g|0)<1){h=m;break}if(k[a>>2]&32){h=m;break}ti(25658,1,a)|0;h=m}else{if(h>>>0<=ca>>>0)break;do{h=h+-1|0;i[h>>0]=48}while(h>>>0>ca>>>0)}while(0);m=S-h|0;if(!(k[a>>2]&32))ti(h,(g|0)>(m|0)?m:g,a)|0;g=g-m|0;o=o+4|0}while(o>>>0<s>>>0&(g|0)>-1)}Oi(a,48,g+18|0,18,0);if(k[a>>2]&32)break;ti(u,_-u|0,a)|0}while(0);Oi(a,32,J,y,H^8192);g=(y|0)<(J|0)?J:y}else{s=(u&32|0)!=0;q=n!=n|0.0!=0.0;h=q?0:F;o=h+3|0;Oi(a,32,J,o,m);g=k[a>>2]|0;if(!(g&32)){ti(G,h,a)|0;g=k[a>>2]|0}if(!(g&32))ti(q?(s?25650:25654):s?25642:25646,3,a)|0;Oi(a,32,J,o,H^8192);g=(o|0)<(J|0)?J:o}while(0);w=I;continue a}default:{m=H;h=o;s=0;u=25606;g=N}}while(0);g:do if((K|0)==64){m=aa;h=k[m>>2]|0;m=k[m+4>>2]|0;q=u&32;if(!((h|0)==0&(m|0)==0)){g=N;do{g=g+-1|0;i[g>>0]=l[25590+(h&15)>>0]|q;h=bj(h|0,m|0,4)|0;m=L}while(!((h|0)==0&(m|0)==0));K=aa;if((s&8|0)==0|(k[K>>2]|0)==0&(k[K+4>>2]|0)==0){h=s;s=0;q=25606;K=77}else{h=s;s=2;q=25606+(u>>4)|0;K=77}}else{g=N;h=s;s=0;q=25606;K=77}}else if((K|0)==76){g=Ni(g,h,N)|0;h=H;s=m;K=77}else if((K|0)==82){K=0;H=Bi(g,0,o)|0;G=(H|0)==0;w=g;h=G?o:H-g|0;s=0;u=25606;g=G?g+o|0:H}else if((K|0)==86){K=0;h=0;g=0;q=k[aa>>2]|0;while(1){m=k[q>>2]|0;if(!m)break;g=Vh(ea,m)|0;if((g|0)<0|g>>>0>(o-h|0)>>>0)break;h=g+h|0;if(o>>>0>h>>>0)q=q+4|0;else break}if((g|0)<0){f=-1;break a}Oi(a,32,J,h,H);if(!h){g=0;K=98}else{m=0;o=k[aa>>2]|0;while(1){g=k[o>>2]|0;if(!g){g=h;K=98;break g}g=Vh(ea,g)|0;m=g+m|0;if((m|0)>(h|0)){g=h;K=98;break g}if(!(k[a>>2]&32))ti(ea,g,a)|0;if(m>>>0>=h>>>0){g=h;K=98;break}else o=o+4|0}}}while(0);if((K|0)==98){K=0;Oi(a,32,J,g,H^8192);w=I;g=(J|0)>(g|0)?J:g;continue}if((K|0)==77){K=0;m=(o|0)>-1?h&-65537:h;h=aa;h=(k[h>>2]|0)!=0|(k[h+4>>2]|0)!=0;if((o|0)!=0|h){h=(h&1^1)+(U-g)|0;w=g;h=(o|0)>(h|0)?o:h;u=q;g=N}else{w=N;h=0;u=q;g=N}}q=g-w|0;h=(h|0)<(q|0)?q:h;o=s+h|0;g=(J|0)<(o|0)?o:J;Oi(a,32,g,o,m);if(!(k[a>>2]&32))ti(u,s,a)|0;Oi(a,48,g,o,m^65536);Oi(a,48,h,q,0);if(!(k[a>>2]&32))ti(w,q,a)|0;Oi(a,32,g,o,m^8192);w=I}h:do if((K|0)==245)if(!a)if(b){f=1;while(1){b=k[e+(f<<2)>>2]|0;if(!b)break;Mi(d+(f<<3)|0,b,c);f=f+1|0;if((f|0)>=10){f=1;break h}}if((f|0)<10)while(1){if(k[e+(f<<2)>>2]|0){f=-1;break h}f=f+1|0;if((f|0)>=10){f=1;break}}else f=1}else f=0;while(0);r=ga;return f|0}function Li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=k[d>>2]|0;a=(k[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;cj(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function Mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}function Ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295)while(1){d=jj(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=ij(a|0,b|0,10,0)|0;if(b>>>0>9|(b|0)==9&a>>>0>4294967295){a=d;b=L}else{a=d;break}}if(a)while(1){c=c+-1|0;i[c>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return c|0}function Oi(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;h=r;r=r+256|0;g=h;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;_i(g|0,b|0,(e>>>0>256?256:e)|0)|0;b=k[a>>2]|0;f=(b&32|0)==0;if(e>>>0>255){d=c-d|0;do{if(f){ti(g,256,a)|0;b=k[a>>2]|0}e=e+-256|0;f=(b&32|0)==0}while(e>>>0>255);if(f)e=d&255;else break}else if(!f)break;ti(g,e,a)|0}while(0);r=h;return}function Pi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;h=k[735]|0;c=h>>>a;if(c&3){a=(c&1^1)+a|0;d=a<<1;c=2980+(d<<2)|0;d=2980+(d+2<<2)|0;e=k[d>>2]|0;f=e+8|0;g=k[f>>2]|0;do if((c|0)!=(g|0)){if(g>>>0<(k[739]|0)>>>0)Ca();b=g+12|0;if((k[b>>2]|0)==(e|0)){k[b>>2]=c;k[d>>2]=g;break}else Ca()}else k[735]=h&~(1<<a);while(0);M=a<<3;k[e+4>>2]=M|3;M=e+(M|4)|0;k[M>>2]=k[M>>2]|1;M=f;return M|0}g=k[737]|0;if(o>>>0>g>>>0){if(c){d=2<<a;d=c<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;e=d>>>5&8;d=d>>>e;f=d>>>2&4;d=d>>>f;c=d>>>1&2;d=d>>>c;a=d>>>1&1;a=(e|i|f|c|a)+(d>>>a)|0;d=a<<1;c=2980+(d<<2)|0;d=2980+(d+2<<2)|0;f=k[d>>2]|0;i=f+8|0;e=k[i>>2]|0;do if((c|0)!=(e|0)){if(e>>>0<(k[739]|0)>>>0)Ca();b=e+12|0;if((k[b>>2]|0)==(f|0)){k[b>>2]=c;k[d>>2]=e;j=k[737]|0;break}else Ca()}else{k[735]=h&~(1<<a);j=g}while(0);M=a<<3;g=M-o|0;k[f+4>>2]=o|3;h=f+o|0;k[f+(o|4)>>2]=g|1;k[f+M>>2]=g;if(j){e=k[740]|0;c=j>>>3;b=c<<1;d=2980+(b<<2)|0;a=k[735]|0;c=1<<c;if(a&c){a=2980+(b+2<<2)|0;b=k[a>>2]|0;if(b>>>0<(k[739]|0)>>>0)Ca();else{l=a;m=b}}else{k[735]=a|c;l=2980+(b+2<<2)|0;m=d}k[l>>2]=e;k[m+12>>2]=e;k[e+8>>2]=m;k[e+12>>2]=d}k[737]=g;k[740]=h;M=i;return M|0}a=k[736]|0;if(a){c=(a&0-a)+-1|0;L=c>>>12&16;c=c>>>L;K=c>>>5&8;c=c>>>K;M=c>>>2&4;c=c>>>M;a=c>>>1&2;c=c>>>a;d=c>>>1&1;d=k[3244+((K|L|M|a|d)+(c>>>d)<<2)>>2]|0;c=(k[d+4>>2]&-8)-o|0;a=d;while(1){b=k[a+16>>2]|0;if(!b){b=k[a+20>>2]|0;if(!b){i=c;break}}a=(k[b+4>>2]&-8)-o|0;M=a>>>0<c>>>0;c=M?a:c;a=b;d=M?b:d}f=k[739]|0;if(d>>>0<f>>>0)Ca();h=d+o|0;if(d>>>0>=h>>>0)Ca();g=k[d+24>>2]|0;c=k[d+12>>2]|0;do if((c|0)==(d|0)){a=d+20|0;b=k[a>>2]|0;if(!b){a=d+16|0;b=k[a>>2]|0;if(!b){n=0;break}}while(1){c=b+20|0;e=k[c>>2]|0;if(e){b=e;a=c;continue}c=b+16|0;e=k[c>>2]|0;if(!e)break;else{b=e;a=c}}if(a>>>0<f>>>0)Ca();else{k[a>>2]=0;n=b;break}}else{e=k[d+8>>2]|0;if(e>>>0<f>>>0)Ca();b=e+12|0;if((k[b>>2]|0)!=(d|0))Ca();a=c+8|0;if((k[a>>2]|0)==(d|0)){k[b>>2]=c;k[a>>2]=e;n=c;break}else Ca()}while(0);do if(g){b=k[d+28>>2]|0;a=3244+(b<<2)|0;if((d|0)==(k[a>>2]|0)){k[a>>2]=n;if(!n){k[736]=k[736]&~(1<<b);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(d|0))k[b>>2]=n;else k[g+20>>2]=n;if(!n)break}a=k[739]|0;if(n>>>0<a>>>0)Ca();k[n+24>>2]=g;b=k[d+16>>2]|0;do if(b)if(b>>>0<a>>>0)Ca();else{k[n+16>>2]=b;k[b+24>>2]=n;break}while(0);b=k[d+20>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[n+20>>2]=b;k[b+24>>2]=n;break}}while(0);if(i>>>0<16){M=i+o|0;k[d+4>>2]=M|3;M=d+(M+4)|0;k[M>>2]=k[M>>2]|1}else{k[d+4>>2]=o|3;k[d+(o|4)>>2]=i|1;k[d+(i+o)>>2]=i;b=k[737]|0;if(b){f=k[740]|0;c=b>>>3;b=c<<1;e=2980+(b<<2)|0;a=k[735]|0;c=1<<c;if(a&c){b=2980+(b+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{p=b;q=a}}else{k[735]=a|c;p=2980+(b+2<<2)|0;q=e}k[p>>2]=f;k[q+12>>2]=f;k[f+8>>2]=q;k[f+12>>2]=e}k[737]=i;k[740]=h}M=d+8|0;return M|0}else q=o}else q=o}else if(a>>>0<=4294967231){a=a+11|0;m=a&-8;l=k[736]|0;if(l){c=0-m|0;a=a>>>8;if(a)if(m>>>0>16777215)j=31;else{q=(a+1048320|0)>>>16&8;v=a<<q;p=(v+520192|0)>>>16&4;v=v<<p;j=(v+245760|0)>>>16&2;j=14-(p|q|j)+(v<<j>>>15)|0;j=m>>>(j+7|0)&1|j<<1}else j=0;a=k[3244+(j<<2)>>2]|0;a:do if(!a){e=0;a=0;v=86}else{g=c;e=0;h=m<<((j|0)==31?0:25-(j>>>1)|0);i=a;a=0;while(1){f=k[i+4>>2]&-8;c=f-m|0;if(c>>>0<g>>>0)if((f|0)==(m|0)){f=i;a=i;v=90;break a}else a=i;else c=g;v=k[i+20>>2]|0;i=k[i+16+(h>>>31<<2)>>2]|0;e=(v|0)==0|(v|0)==(i|0)?e:v;if(!i){v=86;break}else{g=c;h=h<<1}}}while(0);if((v|0)==86){if((e|0)==0&(a|0)==0){a=2<<j;a=l&(a|0-a);if(!a){q=m;break}a=(a&0-a)+-1|0;n=a>>>12&16;a=a>>>n;l=a>>>5&8;a=a>>>l;p=a>>>2&4;a=a>>>p;q=a>>>1&2;a=a>>>q;e=a>>>1&1;e=k[3244+((l|n|p|q|e)+(a>>>e)<<2)>>2]|0;a=0}if(!e){h=c;i=a}else{f=e;v=90}}if((v|0)==90)while(1){v=0;q=(k[f+4>>2]&-8)-m|0;e=q>>>0<c>>>0;c=e?q:c;a=e?f:a;e=k[f+16>>2]|0;if(e){f=e;v=90;continue}f=k[f+20>>2]|0;if(!f){h=c;i=a;break}else v=90}if((i|0)!=0?h>>>0<((k[737]|0)-m|0)>>>0:0){e=k[739]|0;if(i>>>0<e>>>0)Ca();g=i+m|0;if(i>>>0>=g>>>0)Ca();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){a=i+20|0;b=k[a>>2]|0;if(!b){a=i+16|0;b=k[a>>2]|0;if(!b){o=0;break}}while(1){c=b+20|0;d=k[c>>2]|0;if(d){b=d;a=c;continue}c=b+16|0;d=k[c>>2]|0;if(!d)break;else{b=d;a=c}}if(a>>>0<e>>>0)Ca();else{k[a>>2]=0;o=b;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)Ca();b=d+12|0;if((k[b>>2]|0)!=(i|0))Ca();a=c+8|0;if((k[a>>2]|0)==(i|0)){k[b>>2]=c;k[a>>2]=d;o=c;break}else Ca()}while(0);do if(f){b=k[i+28>>2]|0;a=3244+(b<<2)|0;if((i|0)==(k[a>>2]|0)){k[a>>2]=o;if(!o){k[736]=k[736]&~(1<<b);break}}else{if(f>>>0<(k[739]|0)>>>0)Ca();b=f+16|0;if((k[b>>2]|0)==(i|0))k[b>>2]=o;else k[f+20>>2]=o;if(!o)break}a=k[739]|0;if(o>>>0<a>>>0)Ca();k[o+24>>2]=f;b=k[i+16>>2]|0;do if(b)if(b>>>0<a>>>0)Ca();else{k[o+16>>2]=b;k[b+24>>2]=o;break}while(0);b=k[i+20>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[o+20>>2]=b;k[b+24>>2]=o;break}}while(0);b:do if(h>>>0>=16){k[i+4>>2]=m|3;k[i+(m|4)>>2]=h|1;k[i+(h+m)>>2]=h;b=h>>>3;if(h>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;if(c&b){b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{s=b;t=a}}else{k[735]=c|b;s=2980+(a+2<<2)|0;t=d}k[s>>2]=g;k[t+12>>2]=g;k[i+(m+8)>>2]=t;k[i+(m+12)>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{L=(b+1048320|0)>>>16&8;M=b<<L;K=(M+520192|0)>>>16&4;M=M<<K;d=(M+245760|0)>>>16&2;d=14-(K|L|d)+(M<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=3244+(d<<2)|0;k[i+(m+28)>>2]=d;k[i+(m+20)>>2]=0;k[i+(m+16)>>2]=0;a=k[736]|0;c=1<<d;if(!(a&c)){k[736]=a|c;k[b>>2]=g;k[i+(m+24)>>2]=b;k[i+(m+12)>>2]=g;k[i+(m+8)>>2]=g;break}b=k[b>>2]|0;c:do if((k[b+4>>2]&-8|0)!=(h|0)){d=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(h|0)){y=c;break c}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=g;k[i+(m+24)>>2]=b;k[i+(m+12)>>2]=g;k[i+(m+8)>>2]=g;break b}}else y=b;while(0);b=y+8|0;a=k[b>>2]|0;M=k[739]|0;if(a>>>0>=M>>>0&y>>>0>=M>>>0){k[a+12>>2]=g;k[b>>2]=g;k[i+(m+8)>>2]=a;k[i+(m+12)>>2]=y;k[i+(m+24)>>2]=0;break}else Ca()}else{M=h+m|0;k[i+4>>2]=M|3;M=i+(M+4)|0;k[M>>2]=k[M>>2]|1}while(0);M=i+8|0;return M|0}else q=m}else q=m}else q=-1;while(0);c=k[737]|0;if(c>>>0>=q>>>0){b=c-q|0;a=k[740]|0;if(b>>>0>15){k[740]=a+q;k[737]=b;k[a+(q+4)>>2]=b|1;k[a+c>>2]=b;k[a+4>>2]=q|3}else{k[737]=0;k[740]=0;k[a+4>>2]=c|3;M=a+(c+4)|0;k[M>>2]=k[M>>2]|1}M=a+8|0;return M|0}a=k[738]|0;if(a>>>0>q>>>0){L=a-q|0;k[738]=L;M=k[741]|0;k[741]=M+q;k[M+(q+4)>>2]=L|1;k[M+4>>2]=q|3;M=M+8|0;return M|0}do if(!(k[853]|0)){a=Ia(30)|0;if(!(a+-1&a)){k[855]=a;k[854]=a;k[856]=-1;k[857]=-1;k[858]=0;k[846]=0;y=(Ua(0)|0)&-16^1431655768;k[853]=y;break}else Ca()}while(0);i=q+48|0;h=k[855]|0;j=q+47|0;g=h+j|0;h=0-h|0;l=g&h;if(l>>>0<=q>>>0){M=0;return M|0}a=k[845]|0;if((a|0)!=0?(t=k[843]|0,y=t+l|0,y>>>0<=t>>>0|y>>>0>a>>>0):0){M=0;return M|0}d:do if(!(k[846]&4)){a=k[741]|0;e:do if(a){e=3388;while(1){c=k[e>>2]|0;if(c>>>0<=a>>>0?(r=e+4|0,(c+(k[r>>2]|0)|0)>>>0>a>>>0):0){f=e;a=r;break}e=k[e+8>>2]|0;if(!e){v=174;break e}}c=g-(k[738]|0)&h;if(c>>>0<2147483647){e=Ga(c|0)|0;y=(e|0)==((k[f>>2]|0)+(k[a>>2]|0)|0);a=y?c:0;if(y){if((e|0)!=(-1|0)){w=e;p=a;v=194;break d}}else v=184}else a=0}else v=174;while(0);do if((v|0)==174){f=Ga(0)|0;if((f|0)!=(-1|0)){a=f;c=k[854]|0;e=c+-1|0;if(!(e&a))c=l;else c=l-a+(e+a&0-c)|0;a=k[843]|0;e=a+c|0;if(c>>>0>q>>>0&c>>>0<2147483647){y=k[845]|0;if((y|0)!=0?e>>>0<=a>>>0|e>>>0>y>>>0:0){a=0;break}e=Ga(c|0)|0;y=(e|0)==(f|0);a=y?c:0;if(y){w=f;p=a;v=194;break d}else v=184}else a=0}else a=0}while(0);f:do if((v|0)==184){f=0-c|0;do if(i>>>0>c>>>0&(c>>>0<2147483647&(e|0)!=(-1|0))?(u=k[855]|0,u=j-c+u&0-u,u>>>0<2147483647):0)if((Ga(u|0)|0)==(-1|0)){Ga(f|0)|0;break f}else{c=u+c|0;break}while(0);if((e|0)!=(-1|0)){w=e;p=c;v=194;break d}}while(0);k[846]=k[846]|4;v=191}else{a=0;v=191}while(0);if((((v|0)==191?l>>>0<2147483647:0)?(w=Ga(l|0)|0,x=Ga(0)|0,w>>>0<x>>>0&((w|0)!=(-1|0)&(x|0)!=(-1|0))):0)?(z=x-w|0,A=z>>>0>(q+40|0)>>>0,A):0){p=A?z:a;v=194}if((v|0)==194){a=(k[843]|0)+p|0;k[843]=a;if(a>>>0>(k[844]|0)>>>0)k[844]=a;g=k[741]|0;g:do if(g){f=3388;do{a=k[f>>2]|0;c=f+4|0;e=k[c>>2]|0;if((w|0)==(a+e|0)){B=a;C=c;D=e;E=f;v=204;break}f=k[f+8>>2]|0}while((f|0)!=0);if(((v|0)==204?(k[E+12>>2]&8|0)==0:0)?g>>>0<w>>>0&g>>>0>=B>>>0:0){k[C>>2]=D+p;M=(k[738]|0)+p|0;L=g+8|0;L=(L&7|0)==0?0:0-L&7;K=M-L|0;k[741]=g+L;k[738]=K;k[g+(L+4)>>2]=K|1;k[g+(M+4)>>2]=40;k[742]=k[857];break}a=k[739]|0;if(w>>>0<a>>>0){k[739]=w;a=w}c=w+p|0;f=3388;while(1){if((k[f>>2]|0)==(c|0)){e=f;c=f;v=212;break}f=k[f+8>>2]|0;if(!f){c=3388;break}}if((v|0)==212)if(!(k[c+12>>2]&8)){k[e>>2]=w;n=c+4|0;k[n>>2]=(k[n>>2]|0)+p;n=w+8|0;n=(n&7|0)==0?0:0-n&7;j=w+(p+8)|0;j=(j&7|0)==0?0:0-j&7;b=w+(j+p)|0;m=n+q|0;o=w+m|0;l=b-(w+n)-q|0;k[w+(n+4)>>2]=q|3;h:do if((b|0)!=(g|0)){if((b|0)==(k[740]|0)){M=(k[737]|0)+l|0;k[737]=M;k[740]=o;k[w+(m+4)>>2]=M|1;k[w+(M+m)>>2]=M;break}h=p+4|0;c=k[w+(h+j)>>2]|0;if((c&3|0)==1){i=c&-8;f=c>>>3;i:do if(c>>>0>=256){g=k[w+((j|24)+p)>>2]|0;d=k[w+(p+12+j)>>2]|0;do if((d|0)==(b|0)){e=j|16;d=w+(h+e)|0;c=k[d>>2]|0;if(!c){d=w+(e+p)|0;c=k[d>>2]|0;if(!c){J=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<a>>>0)Ca();else{k[d>>2]=0;J=c;break}}else{e=k[w+((j|8)+p)>>2]|0;if(e>>>0<a>>>0)Ca();a=e+12|0;if((k[a>>2]|0)!=(b|0))Ca();c=d+8|0;if((k[c>>2]|0)==(b|0)){k[a>>2]=d;k[c>>2]=e;J=d;break}else Ca()}while(0);if(!g)break;a=k[w+(p+28+j)>>2]|0;c=3244+(a<<2)|0;do if((b|0)!=(k[c>>2]|0)){if(g>>>0<(k[739]|0)>>>0)Ca();a=g+16|0;if((k[a>>2]|0)==(b|0))k[a>>2]=J;else k[g+20>>2]=J;if(!J)break i}else{k[c>>2]=J;if(J)break;k[736]=k[736]&~(1<<a);break i}while(0);c=k[739]|0;if(J>>>0<c>>>0)Ca();k[J+24>>2]=g;b=j|16;a=k[w+(b+p)>>2]|0;do if(a)if(a>>>0<c>>>0)Ca();else{k[J+16>>2]=a;k[a+24>>2]=J;break}while(0);b=k[w+(h+b)>>2]|0;if(!b)break;if(b>>>0<(k[739]|0)>>>0)Ca();else{k[J+20>>2]=b;k[b+24>>2]=J;break}}else{d=k[w+((j|8)+p)>>2]|0;e=k[w+(p+12+j)>>2]|0;c=2980+(f<<1<<2)|0;do if((d|0)!=(c|0)){if(d>>>0<a>>>0)Ca();if((k[d+12>>2]|0)==(b|0))break;Ca()}while(0);if((e|0)==(d|0)){k[735]=k[735]&~(1<<f);break}do if((e|0)==(c|0))F=e+8|0;else{if(e>>>0<a>>>0)Ca();a=e+8|0;if((k[a>>2]|0)==(b|0)){F=a;break}Ca()}while(0);k[d+12>>2]=e;k[F>>2]=d}while(0);b=w+((i|j)+p)|0;e=i+l|0}else e=l;b=b+4|0;k[b>>2]=k[b>>2]&-2;k[w+(m+4)>>2]=e|1;k[w+(e+m)>>2]=e;b=e>>>3;if(e>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;do if(!(c&b)){k[735]=c|b;K=2980+(a+2<<2)|0;L=d}else{b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0>=(k[739]|0)>>>0){K=b;L=a;break}Ca()}while(0);k[K>>2]=o;k[L+12>>2]=o;k[w+(m+8)>>2]=L;k[w+(m+12)>>2]=d;break}b=e>>>8;do if(!b)d=0;else{if(e>>>0>16777215){d=31;break}K=(b+1048320|0)>>>16&8;L=b<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=e>>>(d+7|0)&1|d<<1}while(0);b=3244+(d<<2)|0;k[w+(m+28)>>2]=d;k[w+(m+20)>>2]=0;k[w+(m+16)>>2]=0;a=k[736]|0;c=1<<d;if(!(a&c)){k[736]=a|c;k[b>>2]=o;k[w+(m+24)>>2]=b;k[w+(m+12)>>2]=o;k[w+(m+8)>>2]=o;break}b=k[b>>2]|0;j:do if((k[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(e|0)){M=c;break j}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=o;k[w+(m+24)>>2]=b;k[w+(m+12)>>2]=o;k[w+(m+8)>>2]=o;break h}}else M=b;while(0);b=M+8|0;a=k[b>>2]|0;L=k[739]|0;if(a>>>0>=L>>>0&M>>>0>=L>>>0){k[a+12>>2]=o;k[b>>2]=o;k[w+(m+8)>>2]=a;k[w+(m+12)>>2]=M;k[w+(m+24)>>2]=0;break}else Ca()}else{M=(k[738]|0)+l|0;k[738]=M;k[741]=o;k[w+(m+4)>>2]=M|1}while(0);M=w+(n|8)|0;return M|0}else c=3388;while(1){a=k[c>>2]|0;if(a>>>0<=g>>>0?(b=k[c+4>>2]|0,d=a+b|0,d>>>0>g>>>0):0)break;c=k[c+8>>2]|0}e=a+(b+-39)|0;a=a+(b+-47+((e&7|0)==0?0:0-e&7))|0;e=g+16|0;a=a>>>0<e>>>0?g:a;b=a+8|0;c=w+8|0;c=(c&7|0)==0?0:0-c&7;M=p+-40-c|0;k[741]=w+c;k[738]=M;k[w+(c+4)>>2]=M|1;k[w+(p+-36)>>2]=40;k[742]=k[857];c=a+4|0;k[c>>2]=27;k[b>>2]=k[847];k[b+4>>2]=k[848];k[b+8>>2]=k[849];k[b+12>>2]=k[850];k[847]=w;k[848]=p;k[850]=0;k[849]=b;b=a+28|0;k[b>>2]=7;if((a+32|0)>>>0<d>>>0)do{M=b;b=b+4|0;k[b>>2]=7}while((M+8|0)>>>0<d>>>0);if((a|0)!=(g|0)){f=a-g|0;k[c>>2]=k[c>>2]&-2;k[g+4>>2]=f|1;k[a>>2]=f;b=f>>>3;if(f>>>0<256){a=b<<1;d=2980+(a<<2)|0;c=k[735]|0;b=1<<b;if(c&b){b=2980+(a+2<<2)|0;a=k[b>>2]|0;if(a>>>0<(k[739]|0)>>>0)Ca();else{G=b;H=a}}else{k[735]=c|b;G=2980+(a+2<<2)|0;H=d}k[G>>2]=g;k[H+12>>2]=g;k[g+8>>2]=H;k[g+12>>2]=d;break}b=f>>>8;if(b)if(f>>>0>16777215)d=31;else{L=(b+1048320|0)>>>16&8;M=b<<L;K=(M+520192|0)>>>16&4;M=M<<K;d=(M+245760|0)>>>16&2;d=14-(K|L|d)+(M<<d>>>15)|0;d=f>>>(d+7|0)&1|d<<1}else d=0;c=3244+(d<<2)|0;k[g+28>>2]=d;k[g+20>>2]=0;k[e>>2]=0;b=k[736]|0;a=1<<d;if(!(b&a)){k[736]=b|a;k[c>>2]=g;k[g+24>>2]=c;k[g+12>>2]=g;k[g+8>>2]=g;break}b=k[c>>2]|0;k:do if((k[b+4>>2]&-8|0)!=(f|0)){d=f<<((d|0)==31?0:25-(d>>>1)|0);while(1){a=b+16+(d>>>31<<2)|0;c=k[a>>2]|0;if(!c)break;if((k[c+4>>2]&-8|0)==(f|0)){I=c;break k}else{d=d<<1;b=c}}if(a>>>0<(k[739]|0)>>>0)Ca();else{k[a>>2]=g;k[g+24>>2]=b;k[g+12>>2]=g;k[g+8>>2]=g;break g}}else I=b;while(0);b=I+8|0;a=k[b>>2]|0;M=k[739]|0;if(a>>>0>=M>>>0&I>>>0>=M>>>0){k[a+12>>2]=g;k[b>>2]=g;k[g+8>>2]=a;k[g+12>>2]=I;k[g+24>>2]=0;break}else Ca()}}else{M=k[739]|0;if((M|0)==0|w>>>0<M>>>0)k[739]=w;k[847]=w;k[848]=p;k[850]=0;k[744]=k[853];k[743]=-1;b=0;do{M=b<<1;L=2980+(M<<2)|0;k[2980+(M+3<<2)>>2]=L;k[2980+(M+2<<2)>>2]=L;b=b+1|0}while((b|0)!=32);M=w+8|0;M=(M&7|0)==0?0:0-M&7;L=p+-40-M|0;k[741]=w+M;k[738]=L;k[w+(M+4)>>2]=L|1;k[w+(p+-36)>>2]=40;k[742]=k[857]}while(0);b=k[738]|0;if(b>>>0>q>>>0){L=b-q|0;k[738]=L;M=k[741]|0;k[741]=M+q;k[M+(q+4)>>2]=L|1;k[M+4>>2]=q|3;M=M+8|0;return M|0}}M=Lh()|0;k[M>>2]=12;M=0;return M|0}function Qi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!a)return;b=a+-8|0;h=k[739]|0;if(b>>>0<h>>>0)Ca();c=k[a+-4>>2]|0;d=c&3;if((d|0)==1)Ca();o=c&-8;q=a+(o+-8)|0;do if(!(c&1)){b=k[b>>2]|0;if(!d)return;i=-8-b|0;l=a+i|0;m=b+o|0;if(l>>>0<h>>>0)Ca();if((l|0)==(k[740]|0)){b=a+(o+-4)|0;c=k[b>>2]|0;if((c&3|0)!=3){u=l;f=m;break}k[737]=m;k[b>>2]=c&-2;k[a+(i+4)>>2]=m|1;k[q>>2]=m;return}e=b>>>3;if(b>>>0<256){d=k[a+(i+8)>>2]|0;c=k[a+(i+12)>>2]|0;b=2980+(e<<1<<2)|0;if((d|0)!=(b|0)){if(d>>>0<h>>>0)Ca();if((k[d+12>>2]|0)!=(l|0))Ca()}if((c|0)==(d|0)){k[735]=k[735]&~(1<<e);u=l;f=m;break}if((c|0)!=(b|0)){if(c>>>0<h>>>0)Ca();b=c+8|0;if((k[b>>2]|0)==(l|0))g=b;else Ca()}else g=c+8|0;k[d+12>>2]=c;k[g>>2]=d;u=l;f=m;break}g=k[a+(i+24)>>2]|0;d=k[a+(i+12)>>2]|0;do if((d|0)==(l|0)){c=a+(i+20)|0;b=k[c>>2]|0;if(!b){c=a+(i+16)|0;b=k[c>>2]|0;if(!b){j=0;break}}while(1){d=b+20|0;e=k[d>>2]|0;if(e){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<h>>>0)Ca();else{k[c>>2]=0;j=b;break}}else{e=k[a+(i+8)>>2]|0;if(e>>>0<h>>>0)Ca();b=e+12|0;if((k[b>>2]|0)!=(l|0))Ca();c=d+8|0;if((k[c>>2]|0)==(l|0)){k[b>>2]=d;k[c>>2]=e;j=d;break}else Ca()}while(0);if(g){b=k[a+(i+28)>>2]|0;c=3244+(b<<2)|0;if((l|0)==(k[c>>2]|0)){k[c>>2]=j;if(!j){k[736]=k[736]&~(1<<b);u=l;f=m;break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(l|0))k[b>>2]=j;else k[g+20>>2]=j;if(!j){u=l;f=m;break}}c=k[739]|0;if(j>>>0<c>>>0)Ca();k[j+24>>2]=g;b=k[a+(i+16)>>2]|0;do if(b)if(b>>>0<c>>>0)Ca();else{k[j+16>>2]=b;k[b+24>>2]=j;break}while(0);b=k[a+(i+20)>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[j+20>>2]=b;k[b+24>>2]=j;u=l;f=m;break}else{u=l;f=m}}else{u=l;f=m}}else{u=b;f=o}while(0);if(u>>>0>=q>>>0)Ca();b=a+(o+-4)|0;c=k[b>>2]|0;if(!(c&1))Ca();if(!(c&2)){if((q|0)==(k[741]|0)){t=(k[738]|0)+f|0;k[738]=t;k[741]=u;k[u+4>>2]=t|1;if((u|0)!=(k[740]|0))return;k[740]=0;k[737]=0;return}if((q|0)==(k[740]|0)){t=(k[737]|0)+f|0;k[737]=t;k[740]=u;k[u+4>>2]=t|1;k[u+t>>2]=t;return}f=(c&-8)+f|0;e=c>>>3;do if(c>>>0>=256){g=k[a+(o+16)>>2]|0;b=k[a+(o|4)>>2]|0;do if((b|0)==(q|0)){c=a+(o+12)|0;b=k[c>>2]|0;if(!b){c=a+(o+8)|0;b=k[c>>2]|0;if(!b){p=0;break}}while(1){d=b+20|0;e=k[d>>2]|0;if(e){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<(k[739]|0)>>>0)Ca();else{k[c>>2]=0;p=b;break}}else{c=k[a+o>>2]|0;if(c>>>0<(k[739]|0)>>>0)Ca();d=c+12|0;if((k[d>>2]|0)!=(q|0))Ca();e=b+8|0;if((k[e>>2]|0)==(q|0)){k[d>>2]=b;k[e>>2]=c;p=b;break}else Ca()}while(0);if(g){b=k[a+(o+20)>>2]|0;c=3244+(b<<2)|0;if((q|0)==(k[c>>2]|0)){k[c>>2]=p;if(!p){k[736]=k[736]&~(1<<b);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();b=g+16|0;if((k[b>>2]|0)==(q|0))k[b>>2]=p;else k[g+20>>2]=p;if(!p)break}c=k[739]|0;if(p>>>0<c>>>0)Ca();k[p+24>>2]=g;b=k[a+(o+8)>>2]|0;do if(b)if(b>>>0<c>>>0)Ca();else{k[p+16>>2]=b;k[b+24>>2]=p;break}while(0);b=k[a+(o+12)>>2]|0;if(b)if(b>>>0<(k[739]|0)>>>0)Ca();else{k[p+20>>2]=b;k[b+24>>2]=p;break}}}else{d=k[a+o>>2]|0;c=k[a+(o|4)>>2]|0;b=2980+(e<<1<<2)|0;if((d|0)!=(b|0)){if(d>>>0<(k[739]|0)>>>0)Ca();if((k[d+12>>2]|0)!=(q|0))Ca()}if((c|0)==(d|0)){k[735]=k[735]&~(1<<e);break}if((c|0)!=(b|0)){if(c>>>0<(k[739]|0)>>>0)Ca();b=c+8|0;if((k[b>>2]|0)==(q|0))n=b;else Ca()}else n=c+8|0;k[d+12>>2]=c;k[n>>2]=d}while(0);k[u+4>>2]=f|1;k[u+f>>2]=f;if((u|0)==(k[740]|0)){k[737]=f;return}}else{k[b>>2]=c&-2;k[u+4>>2]=f|1;k[u+f>>2]=f}b=f>>>3;if(f>>>0<256){c=b<<1;e=2980+(c<<2)|0;d=k[735]|0;b=1<<b;if(d&b){b=2980+(c+2<<2)|0;c=k[b>>2]|0;if(c>>>0<(k[739]|0)>>>0)Ca();else{r=b;s=c}}else{k[735]=d|b;r=2980+(c+2<<2)|0;s=e}k[r>>2]=u;k[s+12>>2]=u;k[u+8>>2]=s;k[u+12>>2]=e;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{r=(b+1048320|0)>>>16&8;s=b<<r;q=(s+520192|0)>>>16&4;s=s<<q;e=(s+245760|0)>>>16&2;e=14-(q|r|e)+(s<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=3244+(e<<2)|0;k[u+28>>2]=e;k[u+20>>2]=0;k[u+16>>2]=0;c=k[736]|0;d=1<<e;a:do if(c&d){b=k[b>>2]|0;b:do if((k[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){c=b+16+(e>>>31<<2)|0;d=k[c>>2]|0;if(!d)break;if((k[d+4>>2]&-8|0)==(f|0)){t=d;break b}else{e=e<<1;b=d}}if(c>>>0<(k[739]|0)>>>0)Ca();else{k[c>>2]=u;k[u+24>>2]=b;k[u+12>>2]=u;k[u+8>>2]=u;break a}}else t=b;while(0);b=t+8|0;c=k[b>>2]|0;s=k[739]|0;if(c>>>0>=s>>>0&t>>>0>=s>>>0){k[c+12>>2]=u;k[b>>2]=u;k[u+8>>2]=c;k[u+12>>2]=t;k[u+24>>2]=0;break}else Ca()}else{k[736]=c|d;k[b>>2]=u;k[u+24>>2]=b;k[u+12>>2]=u;k[u+8>>2]=u}while(0);u=(k[743]|0)+-1|0;k[743]=u;if(!u)b=3396;else return;while(1){b=k[b>>2]|0;if(!b)break;else b=b+8|0}k[743]=-1;return}function Ri(a,b){a=a|0;b=b|0;var c=0;if(a){c=ha(b,a)|0;if((b|a)>>>0>65535)c=((c>>>0)/(a>>>0)|0|0)==(b|0)?c:-1}else c=0;b=Pi(c)|0;if(!b)return b|0;if(!(k[b+-4>>2]&3))return b|0;_i(b|0,0,c|0)|0;return b|0}function Si(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){a=Pi(b)|0;return a|0}if(b>>>0>4294967231){a=Lh()|0;k[a>>2]=12;a=0;return a|0}c=Ui(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c){a=c+8|0;return a|0}c=Pi(b)|0;if(!c){a=0;return a|0}d=k[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;cj(c|0,a|0,(d>>>0<b>>>0?d:b)|0)|0;Qi(a);a=c;return a|0}function Ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;do if((b|0)!=8){d=b>>>2;if((b&3|0)!=0|(d|0)==0){a=22;return a|0}if(d+1073741823&d){a=22;return a|0}if((-64-b|0)>>>0<c>>>0){a=12;return a|0}else{d=Vi(b>>>0<16?16:b,c)|0;break}}else d=Pi(c)|0;while(0);if(!d){a=12;return a|0}k[a>>2]=d;a=0;return a|0}function Ui(a,b){a=a|0;b=b|0;var 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;o=a+4|0;p=k[o>>2]|0;i=p&-8;l=a+i|0;h=k[739]|0;c=p&3;if(!((c|0)!=1&a>>>0>=h>>>0&a>>>0<l>>>0))Ca();d=a+(i|4)|0;e=k[d>>2]|0;if(!(e&1))Ca();if(!c){if(b>>>0<256){a=0;return a|0}if(i>>>0>=(b+4|0)>>>0?(i-b|0)>>>0<=k[855]<<1>>>0:0)return a|0;a=0;return a|0}if(i>>>0>=b>>>0){c=i-b|0;if(c>>>0<=15)return a|0;k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=c|3;k[d>>2]=k[d>>2]|1;Wi(a+b|0,c);return a|0}if((l|0)==(k[741]|0)){c=(k[738]|0)+i|0;if(c>>>0<=b>>>0){a=0;return a|0}n=c-b|0;k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=n|1;k[741]=a+b;k[738]=n;return a|0}if((l|0)==(k[740]|0)){d=(k[737]|0)+i|0;if(d>>>0<b>>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=c|1;k[a+d>>2]=c;d=a+(d+4)|0;k[d>>2]=k[d>>2]&-2;d=a+b|0}else{k[o>>2]=p&1|d|2;d=a+(d+4)|0;k[d>>2]=k[d>>2]|1;d=0;c=0}k[737]=c;k[740]=d;return a|0}if(e&2){a=0;return a|0}m=(e&-8)+i|0;if(m>>>0<b>>>0){a=0;return a|0}n=m-b|0;f=e>>>3;do if(e>>>0>=256){g=k[a+(i+24)>>2]|0;f=k[a+(i+12)>>2]|0;do if((f|0)==(l|0)){d=a+(i+20)|0;c=k[d>>2]|0;if(!c){d=a+(i+16)|0;c=k[d>>2]|0;if(!c){j=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<h>>>0)Ca();else{k[d>>2]=0;j=c;break}}else{e=k[a+(i+8)>>2]|0;if(e>>>0<h>>>0)Ca();c=e+12|0;if((k[c>>2]|0)!=(l|0))Ca();d=f+8|0;if((k[d>>2]|0)==(l|0)){k[c>>2]=f;k[d>>2]=e;j=f;break}else Ca()}while(0);if(g){c=k[a+(i+28)>>2]|0;d=3244+(c<<2)|0;if((l|0)==(k[d>>2]|0)){k[d>>2]=j;if(!j){k[736]=k[736]&~(1<<c);break}}else{if(g>>>0<(k[739]|0)>>>0)Ca();c=g+16|0;if((k[c>>2]|0)==(l|0))k[c>>2]=j;else k[g+20>>2]=j;if(!j)break}d=k[739]|0;if(j>>>0<d>>>0)Ca();k[j+24>>2]=g;c=k[a+(i+16)>>2]|0;do if(c)if(c>>>0<d>>>0)Ca();else{k[j+16>>2]=c;k[c+24>>2]=j;break}while(0);c=k[a+(i+20)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[j+20>>2]=c;k[c+24>>2]=j;break}}}else{e=k[a+(i+8)>>2]|0;d=k[a+(i+12)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<h>>>0)Ca();if((k[e+12>>2]|0)!=(l|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);break}if((d|0)!=(c|0)){if(d>>>0<h>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(l|0))g=c;else Ca()}else g=d+8|0;k[e+12>>2]=d;k[g>>2]=e}while(0);if(n>>>0<16){k[o>>2]=m|p&1|2;b=a+(m|4)|0;k[b>>2]=k[b>>2]|1;return a|0}else{k[o>>2]=p&1|b|2;k[a+(b+4)>>2]=n|3;p=a+(m|4)|0;k[p>>2]=k[p>>2]|1;Wi(a+b|0,n);return a|0}return 0}function Vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a=a>>>0<16?16:a;if(a+-1&a){c=16;while(1)if(c>>>0<a>>>0)c=c<<1;else{a=c;break}}if((-64-a|0)>>>0<=b>>>0){h=Lh()|0;k[h>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=Pi(g+12+a|0)|0;if(!d){h=0;return h|0}b=d+-8|0;c=a+-1|0;do if(d&c){e=d+c&0-a;c=e+-8|0;f=b;e=(c-f|0)>>>0>15?c:e+(a+-8)|0;f=e-f|0;a=d+-4|0;d=k[a>>2]|0;c=(d&-8)-f|0;if(!(d&3)){k[e>>2]=(k[b>>2]|0)+f;k[e+4>>2]=c;b=e;break}else{d=e+4|0;k[d>>2]=c|k[d>>2]&1|2;c=e+(c+4)|0;k[c>>2]=k[c>>2]|1;k[a>>2]=f|k[a>>2]&1|2;k[d>>2]=k[d>>2]|1;Wi(b,f);b=e;break}}while(0);a=b+4|0;c=k[a>>2]|0;if((c&3|0)!=0?(h=c&-8,h>>>0>(g+16|0)>>>0):0){f=h-g|0;k[a>>2]=g|c&1|2;k[b+(g|4)>>2]=f|3;h=b+(h|4)|0;k[h>>2]=k[h>>2]|1;Wi(b+g|0,f)}h=b+8|0;return h|0}function Wi(a,b){a=a|0;b=b|0;var 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;q=a+b|0;c=k[a+4>>2]|0;do if(!(c&1)){j=k[a>>2]|0;if(!(c&3))return;n=a+(0-j)|0;m=j+b|0;i=k[739]|0;if(n>>>0<i>>>0)Ca();if((n|0)==(k[740]|0)){d=a+(b+4)|0;c=k[d>>2]|0;if((c&3|0)!=3){t=n;g=m;break}k[737]=m;k[d>>2]=c&-2;k[a+(4-j)>>2]=m|1;k[q>>2]=m;return}f=j>>>3;if(j>>>0<256){e=k[a+(8-j)>>2]|0;d=k[a+(12-j)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<i>>>0)Ca();if((k[e+12>>2]|0)!=(n|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);t=n;g=m;break}if((d|0)!=(c|0)){if(d>>>0<i>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(n|0))h=c;else Ca()}else h=d+8|0;k[e+12>>2]=d;k[h>>2]=e;t=n;g=m;break}h=k[a+(24-j)>>2]|0;e=k[a+(12-j)>>2]|0;do if((e|0)==(n|0)){e=16-j|0;d=a+(e+4)|0;c=k[d>>2]|0;if(!c){d=a+e|0;c=k[d>>2]|0;if(!c){l=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<i>>>0)Ca();else{k[d>>2]=0;l=c;break}}else{f=k[a+(8-j)>>2]|0;if(f>>>0<i>>>0)Ca();c=f+12|0;if((k[c>>2]|0)!=(n|0))Ca();d=e+8|0;if((k[d>>2]|0)==(n|0)){k[c>>2]=e;k[d>>2]=f;l=e;break}else Ca()}while(0);if(h){c=k[a+(28-j)>>2]|0;d=3244+(c<<2)|0;if((n|0)==(k[d>>2]|0)){k[d>>2]=l;if(!l){k[736]=k[736]&~(1<<c);t=n;g=m;break}}else{if(h>>>0<(k[739]|0)>>>0)Ca();c=h+16|0;if((k[c>>2]|0)==(n|0))k[c>>2]=l;else k[h+20>>2]=l;if(!l){t=n;g=m;break}}e=k[739]|0;if(l>>>0<e>>>0)Ca();k[l+24>>2]=h;c=16-j|0;d=k[a+c>>2]|0;do if(d)if(d>>>0<e>>>0)Ca();else{k[l+16>>2]=d;k[d+24>>2]=l;break}while(0);c=k[a+(c+4)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[l+20>>2]=c;k[c+24>>2]=l;t=n;g=m;break}else{t=n;g=m}}else{t=n;g=m}}else{t=a;g=b}while(0);i=k[739]|0;if(q>>>0<i>>>0)Ca();c=a+(b+4)|0;d=k[c>>2]|0;if(!(d&2)){if((q|0)==(k[741]|0)){s=(k[738]|0)+g|0;k[738]=s;k[741]=t;k[t+4>>2]=s|1;if((t|0)!=(k[740]|0))return;k[740]=0;k[737]=0;return}if((q|0)==(k[740]|0)){s=(k[737]|0)+g|0;k[737]=s;k[740]=t;k[t+4>>2]=s|1;k[t+s>>2]=s;return}g=(d&-8)+g|0;f=d>>>3;do if(d>>>0>=256){h=k[a+(b+24)>>2]|0;e=k[a+(b+12)>>2]|0;do if((e|0)==(q|0)){d=a+(b+20)|0;c=k[d>>2]|0;if(!c){d=a+(b+16)|0;c=k[d>>2]|0;if(!c){p=0;break}}while(1){e=c+20|0;f=k[e>>2]|0;if(f){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<i>>>0)Ca();else{k[d>>2]=0;p=c;break}}else{f=k[a+(b+8)>>2]|0;if(f>>>0<i>>>0)Ca();c=f+12|0;if((k[c>>2]|0)!=(q|0))Ca();d=e+8|0;if((k[d>>2]|0)==(q|0)){k[c>>2]=e;k[d>>2]=f;p=e;break}else Ca()}while(0);if(h){c=k[a+(b+28)>>2]|0;d=3244+(c<<2)|0;if((q|0)==(k[d>>2]|0)){k[d>>2]=p;if(!p){k[736]=k[736]&~(1<<c);break}}else{if(h>>>0<(k[739]|0)>>>0)Ca();c=h+16|0;if((k[c>>2]|0)==(q|0))k[c>>2]=p;else k[h+20>>2]=p;if(!p)break}d=k[739]|0;if(p>>>0<d>>>0)Ca();k[p+24>>2]=h;c=k[a+(b+16)>>2]|0;do if(c)if(c>>>0<d>>>0)Ca();else{k[p+16>>2]=c;k[c+24>>2]=p;break}while(0);c=k[a+(b+20)>>2]|0;if(c)if(c>>>0<(k[739]|0)>>>0)Ca();else{k[p+20>>2]=c;k[c+24>>2]=p;break}}}else{e=k[a+(b+8)>>2]|0;d=k[a+(b+12)>>2]|0;c=2980+(f<<1<<2)|0;if((e|0)!=(c|0)){if(e>>>0<i>>>0)Ca();if((k[e+12>>2]|0)!=(q|0))Ca()}if((d|0)==(e|0)){k[735]=k[735]&~(1<<f);break}if((d|0)!=(c|0)){if(d>>>0<i>>>0)Ca();c=d+8|0;if((k[c>>2]|0)==(q|0))o=c;else Ca()}else o=d+8|0;k[e+12>>2]=d;k[o>>2]=e}while(0);k[t+4>>2]=g|1;k[t+g>>2]=g;if((t|0)==(k[740]|0)){k[737]=g;return}}else{k[c>>2]=d&-2;k[t+4>>2]=g|1;k[t+g>>2]=g}c=g>>>3;if(g>>>0<256){d=c<<1;f=2980+(d<<2)|0;e=k[735]|0;c=1<<c;if(e&c){c=2980+(d+2<<2)|0;d=k[c>>2]|0;if(d>>>0<(k[739]|0)>>>0)Ca();else{r=c;s=d}}else{k[735]=e|c;r=2980+(d+2<<2)|0;s=f}k[r>>2]=t;k[s+12>>2]=t;k[t+8>>2]=s;k[t+12>>2]=f;return}c=g>>>8;if(c)if(g>>>0>16777215)f=31;else{r=(c+1048320|0)>>>16&8;s=c<<r;q=(s+520192|0)>>>16&4;s=s<<q;f=(s+245760|0)>>>16&2;f=14-(q|r|f)+(s<<f>>>15)|0;f=g>>>(f+7|0)&1|f<<1}else f=0;c=3244+(f<<2)|0;k[t+28>>2]=f;k[t+20>>2]=0;k[t+16>>2]=0;d=k[736]|0;e=1<<f;if(!(d&e)){k[736]=d|e;k[c>>2]=t;k[t+24>>2]=c;k[t+12>>2]=t;k[t+8>>2]=t;return}c=k[c>>2]|0;a:do if((k[c+4>>2]&-8|0)!=(g|0)){f=g<<((f|0)==31?0:25-(f>>>1)|0);while(1){d=c+16+(f>>>31<<2)|0;e=k[d>>2]|0;if(!e)break;if((k[e+4>>2]&-8|0)==(g|0)){c=e;break a}else{f=f<<1;c=e}}if(d>>>0<(k[739]|0)>>>0)Ca();k[d>>2]=t;k[t+24>>2]=c;k[t+12>>2]=t;k[t+8>>2]=t;return}while(0);d=c+8|0;e=k[d>>2]|0;s=k[739]|0;if(!(e>>>0>=s>>>0&c>>>0>=s>>>0))Ca();k[e+12>>2]=t;k[d>>2]=t;k[t+8>>2]=e;k[t+12>>2]=c;k[t+24>>2]=0;return}function Xi(){}function Yi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (L=d,a-c>>>0|0)|0}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function $i(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function aj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function bj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Ha(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function dj(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=ha(e,f)|0;d=a>>>16;a=(c>>>16)+(ha(e,d)|0)|0;e=b>>>16;b=ha(e,f)|0;return (L=(a>>>16)+(ha(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=Yi(j^a,i^b,j,i)|0;g=L;a=f^j;b=e^i;return Yi((kj(h,g,Yi(f^c,e^d,f,e)|0,L,0)|0)^a,L^b,a,b)|0}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=r;r=r+16|0;h=e|0;g=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;j=d>>31|((d|0)<0?-1:0)<<1;i=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=Yi(g^a,f^b,g,f)|0;b=L;kj(a,b,Yi(j^c,i^d,j,i)|0,L,h)|0;d=Yi(k[h>>2]^g,k[h+4>>2]^f,g,f)|0;c=L;r=e;return (L=c,d)|0}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=ej(e,f)|0;a=L;return (L=(ha(b,f)|0)+(ha(d,e)|0)+a|a&0,c|0|0)|0}function ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return kj(a,b,c,d,0)|0}function jj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;kj(a,b,c,d,e)|0;r=f;return (L=k[e+4>>2]|0,k[e>>2]|0)|0}function kj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (L=n,e)|0}else{if(!f){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (L=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (L=n,e)|0}f=g-1|0;if(f&g){h=(ja(g|0)|0)+33-(ja(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (L=o,p)|0}else{p=dj(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (L=o,p)|0}}else{if(f){if(e){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (L=o,p)|0}if(!l){if(e){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (L=o,p)|0}f=h-1|0;if(!(f&h)){if(e){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((dj(h|0)|0)>>>0);return (L=o,p)|0}f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (L=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (L=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=aj(m|0,l|0,-1,-1)|0;c=L;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;Yi(j,c,d,n)|0;p=L;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=Yi(d,n,o&m,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l)|0;b=L;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (L=o,p)|0}function lj(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return _a[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function mj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $a[a&63](b|0,c|0,d|0)|0}function nj(a,b){a=a|0;b=b|0;return +ab[a&3](b|0)}function oj(a,b){a=a|0;b=b|0;bb[a&7](b|0)}function pj(a,b,c){a=a|0;b=b|0;c=c|0;cb[a&7](b|0,c|0)}function qj(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return db[a&7](b|0,c|0,d|0,e|0,f|0,g|0)|0}function rj(a,b){a=a|0;b=b|0;return eb[a&15](b|0)|0}function sj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fb[a&15](b|0,c|0,d|0)}function tj(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;return gb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function uj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return hb[a&63](b|0,c|0,d|0,e|0)|0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;return ib[a&7](b|0,c|0)|0}function wj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return jb[a&3](b|0,c|0,d|0,e|0,f|0)|0}function xj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;kb[a&3](b|0,c|0,d|0,e|0)}function yj(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;ka(0);return 0}function zj(a,b,c){a=a|0;b=b|0;c=c|0;ka(1);return 0}function Aj(a){a=a|0;ka(2);return 0.0}function Bj(a){a=a|0;ka(3)}function Cj(a,b){a=a|0;b=b|0;ka(4)}function Dj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(5);return 0}function Ej(a){a=a|0;ka(6);return 0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;ka(7)}function Gj(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;ka(8);return 0}function Hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(9);return 0}function Ij(a,b){a=a|0;b=b|0;ka(10);return 0}function Jj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(11);return 0}function Kj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(12)}
|
|
1233
|
+
|
|
1234
|
+
// EMSCRIPTEN_END_FUNCS
|
|
1235
|
+
var _a=[yj,od,ef,yj];var $a=[zj,Li,di,bi,Kb,Lb,Mb,Nb,Rc,Sc,Uc,jd,xd,Ye,lf,yd,zd,Xe,Ze,Vc,Wc,Xc,Yc,Dd,Ed,Fd,Gd,Id,Jd,Ld,Md,Nd,Od,Pd,Qd,Rd,Sd,Td,Ud,Vd,Wd,Xd,Yd,Zd,_d,$d,ae,be,ce,de,ee,fe,pf,qf,rf,sf,tf,uf,vf,wf,ai,ci,zj,zj];var ab=[Aj,ge,he,Aj];var bb=[Bj,gd,df,qg,rg,Hi,Ii,Bj];var cb=[Cj,wb,xb,yb,ec,ed,Ve,Cj];var db=[Dj,nd,cf,Bd,bf,Dj,Dj,Dj];var eb=[Ej,$h,td,ud,kf,jf,gi,Ug,Rg,Ej,Ej,Ej,Ej,Ej,Ej,Ej];var fb=[Fj,Qe,Re,Se,Te,Ke,Le,Me,Ne,Ge,He,Ie,Je,qd,hf,Fj];var gb=[Gj,md,af,Gj];var hb=[Hj,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Hf,If,Jf,Bf,Cf,Df,Ef,Ff,Gf,Gb,Hb,Ib,Jb,vd,kd,Ue,$e,Ad,hd,_e,We,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj,Hj];var ib=[Ij,Tc,xf,yf,zf,Af,Ij,Ij];var jb=[Jj,wd,ff,Jj];var kb=[Kj,Yg,$g,Kj];return{_opj_stream_destroy:Pb,_opj_stream_set_read_function:Qb,_opj_read_tile_header:wc,_opj_set_warning_handler:mc,_opj_destroy_cstr_info:Mc,_opj_image_create:gc,_opj_set_error_handler:nc,_opj_stream_set_user_data:Ub,_opj_end_decompress:Gc,_bitshift64Lshr:bj,_opj_stream_set_seek_function:Rb,_opj_decode:uc,_opj_set_decoded_resolution_factor:zc,_i64Add:aj,_opj_stream_create_default_file_stream:Pc,_opj_encode:Ec,_bitshift64Ashr:Zi,_opj_get_decoded_tile:yc,_memset:_i,_opj_version:pc,_memcpy:cj,_opj_destroy_cstr_index:Oc,_opj_stream_set_user_data_length:Vb,_opj_stream_set_skip_function:Tb,_opj_image_destroy:hc,_opj_stream_create_file_stream:Qc,_opj_setup_encoder:Cc,_opj_stream_default_create:Ob,_bitshift64Shl:$i,_opj_stream_create:Fb,_jp2_version:vb,_i64Subtract:Yi,_opj_get_cstr_index:Nc,_opj_set_default_decoder_parameters:rc,_opj_read_header:tc,_opj_get_cstr_info:Lc,_opj_set_default_encoder_parameters:Bc,_opj_set_decode_area:vc,_opj_stream_set_write_function:Sb,_opj_dump_codec:Kc,_opj_create_decompress:qc,_opj_decode_tile_data:xc,_free:Qi,_opj_image_tile_create:kc,_opj_set_MCT:Hc,_opj_set_info_handler:lc,_opj_start_compress:Dc,_opj_write_tile:Ic,_opj_setup_decoder:sc,_malloc:Pi,_opj_end_compress:Fc,_opj_destroy_codec:Jc,_jp2_decode:ub,_opj_stream_create_buffer_stream:oc,_opj_create_compress:Ac,runPostSets:Xi,_emscripten_replace_memory:Za,stackAlloc:lb,stackSave:mb,stackRestore:nb,establishStackSpace:ob,setThrew:pb,setTempRet0:sb,getTempRet0:tb,dynCall_iiiiiiii:lj,dynCall_iiii:mj,dynCall_di:nj,dynCall_vi:oj,dynCall_vii:pj,dynCall_iiiiiii:qj,dynCall_ii:rj,dynCall_viii:sj,dynCall_iiiiiiiiiiii:tj,dynCall_iiiii:uj,dynCall_iii:vj,dynCall_iiiiii:wj,dynCall_viiii:xj}})
|
|
1236
|
+
|
|
1237
|
+
|
|
1238
|
+
// EMSCRIPTEN_END_ASM
|
|
1239
|
+
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _opj_stream_destroy=Module["_opj_stream_destroy"]=asm["_opj_stream_destroy"];var _opj_stream_set_read_function=Module["_opj_stream_set_read_function"]=asm["_opj_stream_set_read_function"];var _opj_read_tile_header=Module["_opj_read_tile_header"]=asm["_opj_read_tile_header"];var _opj_set_warning_handler=Module["_opj_set_warning_handler"]=asm["_opj_set_warning_handler"];var _opj_destroy_cstr_info=Module["_opj_destroy_cstr_info"]=asm["_opj_destroy_cstr_info"];var _opj_image_create=Module["_opj_image_create"]=asm["_opj_image_create"];var _opj_set_error_handler=Module["_opj_set_error_handler"]=asm["_opj_set_error_handler"];var _opj_image_tile_create=Module["_opj_image_tile_create"]=asm["_opj_image_tile_create"];var _opj_end_decompress=Module["_opj_end_decompress"]=asm["_opj_end_decompress"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _opj_stream_set_seek_function=Module["_opj_stream_set_seek_function"]=asm["_opj_stream_set_seek_function"];var _opj_decode=Module["_opj_decode"]=asm["_opj_decode"];var _opj_set_decoded_resolution_factor=Module["_opj_set_decoded_resolution_factor"]=asm["_opj_set_decoded_resolution_factor"];var _opj_stream_create_default_file_stream=Module["_opj_stream_create_default_file_stream"]=asm["_opj_stream_create_default_file_stream"];var _opj_set_default_decoder_parameters=Module["_opj_set_default_decoder_parameters"]=asm["_opj_set_default_decoder_parameters"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _opj_get_decoded_tile=Module["_opj_get_decoded_tile"]=asm["_opj_get_decoded_tile"];var _memset=Module["_memset"]=asm["_memset"];var _opj_version=Module["_opj_version"]=asm["_opj_version"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _opj_destroy_cstr_index=Module["_opj_destroy_cstr_index"]=asm["_opj_destroy_cstr_index"];var _opj_stream_set_user_data_length=Module["_opj_stream_set_user_data_length"]=asm["_opj_stream_set_user_data_length"];var _opj_stream_set_skip_function=Module["_opj_stream_set_skip_function"]=asm["_opj_stream_set_skip_function"];var _opj_image_destroy=Module["_opj_image_destroy"]=asm["_opj_image_destroy"];var _opj_stream_create_file_stream=Module["_opj_stream_create_file_stream"]=asm["_opj_stream_create_file_stream"];var _opj_setup_encoder=Module["_opj_setup_encoder"]=asm["_opj_setup_encoder"];var _opj_stream_default_create=Module["_opj_stream_default_create"]=asm["_opj_stream_default_create"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _opj_stream_create=Module["_opj_stream_create"]=asm["_opj_stream_create"];var _jp2_version=Module["_jp2_version"]=asm["_jp2_version"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _opj_get_cstr_index=Module["_opj_get_cstr_index"]=asm["_opj_get_cstr_index"];var _opj_encode=Module["_opj_encode"]=asm["_opj_encode"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _opj_get_cstr_info=Module["_opj_get_cstr_info"]=asm["_opj_get_cstr_info"];var _opj_set_default_encoder_parameters=Module["_opj_set_default_encoder_parameters"]=asm["_opj_set_default_encoder_parameters"];var _opj_set_decode_area=Module["_opj_set_decode_area"]=asm["_opj_set_decode_area"];var _opj_stream_set_write_function=Module["_opj_stream_set_write_function"]=asm["_opj_stream_set_write_function"];var _opj_dump_codec=Module["_opj_dump_codec"]=asm["_opj_dump_codec"];var _opj_read_header=Module["_opj_read_header"]=asm["_opj_read_header"];var _opj_create_decompress=Module["_opj_create_decompress"]=asm["_opj_create_decompress"];var _opj_decode_tile_data=Module["_opj_decode_tile_data"]=asm["_opj_decode_tile_data"];var _opj_set_info_handler=Module["_opj_set_info_handler"]=asm["_opj_set_info_handler"];var _opj_stream_set_user_data=Module["_opj_stream_set_user_data"]=asm["_opj_stream_set_user_data"];var _opj_set_MCT=Module["_opj_set_MCT"]=asm["_opj_set_MCT"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _opj_start_compress=Module["_opj_start_compress"]=asm["_opj_start_compress"];var _opj_write_tile=Module["_opj_write_tile"]=asm["_opj_write_tile"];var _opj_setup_decoder=Module["_opj_setup_decoder"]=asm["_opj_setup_decoder"];var _malloc=Module["_malloc"]=asm["_malloc"];var _opj_end_compress=Module["_opj_end_compress"]=asm["_opj_end_compress"];var _opj_destroy_codec=Module["_opj_destroy_codec"]=asm["_opj_destroy_codec"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _jp2_decode=Module["_jp2_decode"]=asm["_jp2_decode"];var _opj_stream_create_buffer_stream=Module["_opj_stream_create_buffer_stream"]=asm["_opj_stream_create_buffer_stream"];var _opj_create_compress=Module["_opj_create_compress"]=asm["_opj_create_compress"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){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["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run()
|
|
1240
|
+
|
|
1241
|
+
|
|
1242
|
+
|
|
1243
|
+
|
|
1244
|
+
|
|
1245
|
+
return Module;
|
|
1246
|
+
};
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
/***/ }),
|
|
1250
|
+
|
|
1251
|
+
/***/ 497:
|
|
1266
1252
|
/***/ (() => {
|
|
1267
1253
|
|
|
1268
1254
|
/* (ignored) */
|
|
1269
1255
|
|
|
1270
1256
|
/***/ }),
|
|
1271
1257
|
|
|
1272
|
-
/***/
|
|
1258
|
+
/***/ 517:
|
|
1273
1259
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
1274
1260
|
|
|
1275
1261
|
/*! dicom-parser - 1.8.12 - 2023-02-20 | (c) 2017 Chris Hafey | https://github.com/cornerstonejs/dicomParser */
|
|
@@ -5227,6 +5213,20 @@ module.exports = __WEBPACK_EXTERNAL_MODULE_zlib__;
|
|
|
5227
5213
|
|
|
5228
5214
|
/***/ }),
|
|
5229
5215
|
|
|
5216
|
+
/***/ 559:
|
|
5217
|
+
/***/ (() => {
|
|
5218
|
+
|
|
5219
|
+
/* (ignored) */
|
|
5220
|
+
|
|
5221
|
+
/***/ }),
|
|
5222
|
+
|
|
5223
|
+
/***/ 722:
|
|
5224
|
+
/***/ (() => {
|
|
5225
|
+
|
|
5226
|
+
/* (ignored) */
|
|
5227
|
+
|
|
5228
|
+
/***/ }),
|
|
5229
|
+
|
|
5230
5230
|
/***/ 978:
|
|
5231
5231
|
/***/ (() => {
|
|
5232
5232
|
|
|
@@ -7179,10 +7179,10 @@ var Decoder = class _Decoder {
|
|
|
7179
7179
|
const external_X_ITE_X3D_DEVELOPMENT_namespaceObject = __X_ITE_X3D__ .DEVELOPMENT;
|
|
7180
7180
|
var external_X_ITE_X3D_DEVELOPMENT_default = /*#__PURE__*/__webpack_require__.n(external_X_ITE_X3D_DEVELOPMENT_namespaceObject);
|
|
7181
7181
|
;// ./src/x_ite/Browser/Texturing3D/DICOMParser.js
|
|
7182
|
-
/* provided dependency */ var dicomParser = __webpack_require__(
|
|
7183
|
-
/* provided dependency */ var jpegDecode = __webpack_require__(
|
|
7184
|
-
/* provided dependency */ var CharLS = __webpack_require__(
|
|
7185
|
-
/* provided dependency */ var OpenJPEG = __webpack_require__(
|
|
7182
|
+
/* provided dependency */ var dicomParser = __webpack_require__(517);
|
|
7183
|
+
/* provided dependency */ var jpegDecode = __webpack_require__(241);
|
|
7184
|
+
/* provided dependency */ var CharLS = __webpack_require__(119);
|
|
7185
|
+
/* provided dependency */ var OpenJPEG = __webpack_require__(345);
|
|
7186
7186
|
|
|
7187
7187
|
|
|
7188
7188
|
|